From 0cec86c8a6c2fde27be115a0de2a38632d047eb1 Mon Sep 17 00:00:00 2001 From: Anatoly Andrianov Date: Tue, 29 Sep 2020 13:43:46 -0500 Subject: [PATCH 001/593] Extracted OpenAPI definitions from Rel-17 TSs published after SA89 in September 2020 --- OpenAPI/5gcNrm.yaml | 190 ++++++++++++++++++++++++++++++++++++++++-- OpenAPI/nrNrm.yaml | 159 ++++++++++++++++++++++++++++------- OpenAPI/sliceNrm.yaml | 71 +++++++++++++--- 3 files changed, 372 insertions(+), 48 deletions(-) diff --git a/OpenAPI/5gcNrm.yaml b/OpenAPI/5gcNrm.yaml index d5adbd230..64280fa36 100644 --- a/OpenAPI/5gcNrm.yaml +++ b/OpenAPI/5gcNrm.yaml @@ -1,13 +1,13 @@ openapi: 3.0.1 info: title: 3GPP 5GC NRM - version: 16.5.0 + version: 16.6.0 description: >- OAS 3.0.1 specification of the 5GC NRM © 2020, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). All rights reserved. externalDocs: - description: 3GPP TS 28.541 V16.4.0; 5G NRM, 5GC NRM + description: 3GPP TS 28.541 V16.6.0; 5G NRM, 5GC NRM url: http://www.3gpp.org/ftp/Specs/archive/28_series/28.541/ paths: {} components: @@ -240,7 +240,7 @@ components: fiveQIValues: type: array items: - type: integer + type: integer dscp: type: integer @@ -298,7 +298,138 @@ components: thresholdRtt: type: integer - + QosData: + type: object + properties: + qosId: + type: string + fiveQIValue: + type: integer + maxbrUl: + $ref: '/rep/all/5G_APIs/raw/master/TS29571_CommonData.yaml#/components/schemas/BitRateRm' + maxbrDl: + $ref: '/rep/all/5G_APIs/raw/master/TS29571_CommonData.yaml#/components/schemas/BitRateRm' + gbrUl: + $ref: '/rep/all/5G_APIs/raw/master/TS29571_CommonData.yaml#/components/schemas/BitRateRm' + gbrDl: + $ref: '/rep/all/5G_APIs/raw/master/TS29571_CommonData.yaml#/components/schemas/BitRateRm' + arp: + $ref: '/rep/all/5G_APIs/raw/master/TS29571_CommonData.yaml#/components/schemas/Arp' + qosNotificationControl: + type: boolean + reflectiveQos: + type: boolean + sharingKeyDl: + type: string + sharingKeyUl: + type: string + maxPacketLossRateDl: + $ref: '/rep/all/5G_APIs/raw/master/TS29571_CommonData.yaml#/components/schemas/PacketLossRateRm' + maxPacketLossRateUl: + $ref: '/rep/all/5G_APIs/raw/master/TS29571_CommonData.yaml#/components/schemas/PacketLossRateRm' + extMaxDataBurstVol: + $ref: '/rep/all/5G_APIs/raw/master/TS29571_CommonData.yaml#/components/schemas/ExtMaxDataBurstVolRm' + QosDataList: + type: array + items: + $ref: '#/components/schemas/QosData' + SteeringMode: + type: object + properties: + steerModeValue: + $ref: '/rep/all/5G_APIs/raw/master/TS29512_Npcf_SMPolicyControl.yaml#/components/schemas/SteerModeValue' + active: + $ref: '/rep/all/5G_APIs/raw/master/TS29571_CommonData.yaml#/components/schemas/AccessType' + standby: + $ref: '/rep/all/5G_APIs/raw/master/TS29571_CommonData.yaml#/components/schemas/AccessTypeRm' + threeGLoad: + $ref: '/rep/all/5G_APIs/raw/master/TS29571_CommonData.yaml#/components/schemas/Uinteger' + prioAcc: + $ref: '/rep/all/5G_APIs/raw/master/TS29571_CommonData.yaml#/components/schemas/AccessType' + TrafficControlData: + type: object + properties: + tcId: + type: string + flowStatus: + $ref: '/rep/all/5G_APIs/raw/master/TS29514_Npcf_PolicyAuthorization.yaml#/components/schemas/FlowStatus' + redirectInfo: + $ref: '/rep/all/5G_APIs/raw/master/TS29512_Npcf_SMPolicyControl.yaml#/components/schemas/RedirectInformation' + addRedirectInfo: + type: array + items: + $ref: '/rep/all/5G_APIs/raw/master/TS29512_Npcf_SMPolicyControl.yaml#/components/schemas/RedirectInformation' + minItems: 1 + muteNotif: + type: boolean + trafficSteeringPolIdDl: + type: string + nullable: true + trafficSteeringPolIdUl: + type: string + nullable: true + routeToLocs: + type: array + items: + $ref: '/rep/all/5G_APIs/raw/master/TS29571_CommonData.yaml#/components/schemas/RouteToLocation' + traffCorreInd: + type: boolean + upPathChgEvent: + $ref: '/rep/all/5G_APIs/raw/master/TS29571_CommonData.yaml#/components/schemas/UpPathChgEvent' + steerFun: + $ref: '/rep/all/5G_APIs/raw/master/TS29571_CommonData.yaml#/components/schemas/SteeringFunctionality' + steerModeDl: + $ref: '#/components/schemas/SteeringMode' + steerModeUl: + $ref: '#/components/schemas/SteeringMode' + mulAccCtrl: + $ref: '/rep/all/5G_APIs/raw/master/TS29571_CommonData.yaml#/components/schemas/MulticastAccessControl' + TrafficControlDataList: + type: array + items: + $ref: '#/components/schemas/TrafficControlData' + PccRule: + type: object + properties: + pccRuleId: + type: string + description: Univocally identifies the PCC rule within a PDU session. + flowInfoList: + type: array + items: + $ref: '/rep/all/5G_APIs/raw/master/TS29512_Npcf_SMPolicyControl.yaml#/components/schemas/FlowInformation' + applicationId: + type: string + appDescriptor: + $ref: '/rep/all/5G_APIs/raw/master/TS29512_Npcf_SMPolicyControl.yaml#/components/schemas/ApplicationDescriptor' + contentVersion: + $ref: '/rep/all/5G_APIs/raw/master/TS29514_Npcf_PolicyAuthorization.yaml#/components/schemas/ContentVersion' + precedence: + $ref: '/rep/all/5G_APIs/raw/master/TS29571_CommonData.yaml#/components/schemas/Uinteger' + afSigProtocol: + $ref: '/rep/all/5G_APIs/raw/master/TS29512_Npcf_SMPolicyControl.yaml#/components/schemas/AfSigProtocol' + isAppRelocatable: + type: boolean + isUeAddrPreserved: + type: boolean + qosData: + type: array + items: + $ref: '#/components/schemas/QosDataList' + altQosParams: + type: array + items: + $ref: '#/components/schemas/QosDataList' + trafficControlData: + type: array + items: + $ref: '#/components/schemas/TrafficControlDataList' + conditionData: + $ref: '/rep/all/5G_APIs/raw/master/TS29512_Npcf_SMPolicyControl#/components/schemas/ConditionData' + tscaiInputDl: + $ref: '/rep/all/5G_APIs/raw/master/TS29514_Npcf_PolicyAuthorization.yaml#/components/schemas/TscaiInputContainer' + tscaiInputUl: + $ref: '/rep/all/5G_APIs/raw/master/TS29514_Npcf_PolicyAuthorization.yaml#/components/schemas/TscaiInputContainer' #-------- Definition of concrete IOCs -------------------------------------------- SubNetwork-Single: @@ -328,6 +459,8 @@ components: $ref: '#/components/schemas/AmfRegion-Multiple' Configurable5QISet: $ref: '#/components/schemas/Configurable5QISet-Multiple' + Dynamic5QISet: + $ref: '#/components/schemas/Dynamic5QISet-Multiple' ManagedElement-Single: allOf: @@ -378,7 +511,8 @@ components: $ref: '#/components/schemas/NefFunction-Multiple' Configurable5QISet: $ref: '#/components/schemas/Configurable5QISet-Multiple' - + Dynamic5QISet: + $ref: '#/components/schemas/Dynamic5QISet-Multiple' AmfFunction-Single: allOf: - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' @@ -490,7 +624,9 @@ components: $ref: '#/components/schemas/ManagedNFProfile' commModelList: $ref: '#/components/schemas/CommModelList' - Configurable5QISetRef: + configurable5QISetRef: + $ref: 'genericNRM.yaml#/components/schemas/Dn' + dynamic5QISetRef: $ref: 'genericNRM.yaml#/components/schemas/Dn' - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' @@ -514,6 +650,8 @@ components: $ref: '#/components/schemas/GtpUPathQoSMonitoringControl-Single' QFQoSMonitoringControl: $ref: '#/components/schemas/QFQoSMonitoringControl-Single' + PredefinedPccRuleSet: + $ref: '#/components/schemas/PredefinedPccRuleSet-Single' UpfFunction-Single: allOf: @@ -589,6 +727,10 @@ components: $ref: '#/components/schemas/ManagedNFProfile' commModelList: $ref: '#/components/schemas/CommModelList' + configurable5QISetRef: + $ref: 'genericNRM.yaml#/components/schemas/Dn' + dynamic5QISetRef: + $ref: 'genericNRM.yaml#/components/schemas/Dn' - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' - type: object properties: @@ -602,6 +744,8 @@ components: $ref: '#/components/schemas/EP_N16-Multiple' EP_Rx: $ref: '#/components/schemas/EP_Rx-Multiple' + PredefinedPccRuleSet: + $ref: '#/components/schemas/PredefinedPccRuleSet-Single' AusfFunction-Single: allOf: - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' @@ -987,6 +1131,8 @@ components: $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' remoteAddress: $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' + epTransportRefs: + $ref: 'genericNrm.yaml#/components/schemas/DnList' EP_N4-Single: allOf: - $ref: 'genericNRM.yaml#/components/schemas/Top-Attr' @@ -1404,6 +1550,19 @@ components: - type: object properties: configurable5QIs: + type: array + items: + $ref: '#/components/schemas/FiveQICharacteristics' + Dynamic5QISet-Single: + allOf: + - $ref: 'genericNRM.yaml#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + allOf: + - type: object + properties: + dynamic5QIs: type: array items: $ref: '#/components/schemas/FiveQICharacteristics' @@ -1481,6 +1640,19 @@ components: qFMeasurementPeriod: type: integer + PredefinedPccRuleSet-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + allOf: + - type: object + properties: + predefinedPccRules: + type: array + items: + $ref: '#/components/schemas/PccRule' #-------- Definition of JSON arrays for name-contained IOCs ---------------------- @@ -1715,6 +1887,10 @@ components: type: array items: $ref: '#/components/schemas/Configurable5QISet-Single' + Dynamic5QISet-Multiple: + type: array + items: + $ref: '#/components/schemas/Dynamic5QISet-Single' #------------ Definitions in TS 28.541 for TS 28.532 ----------------------------- @@ -1787,3 +1963,5 @@ components: - $ref: '#/components/schemas/EP_NLG-Single' - $ref: '#/components/schemas/Configurable5QISet-Single' - $ref: '#/components/schemas/FiveQiDscpMappingSet-Single' + - $ref: '#/components/schemas/PredefinedPccRuleSet-Single' + - $ref: '#/components/schemas/Dynamic5QISet-Single' diff --git a/OpenAPI/nrNrm.yaml b/OpenAPI/nrNrm.yaml index 2061e6940..c4a4ba807 100644 --- a/OpenAPI/nrNrm.yaml +++ b/OpenAPI/nrNrm.yaml @@ -1,13 +1,13 @@ openapi: 3.0.1 info: title: NR NRM - version: 16.5.0 + version: 16.6.0 description: >- OAS 3.0.1 specification of the NR NRM © 2020, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). All rights reserved. externalDocs: - description: 3GPP TS 28.541 V16.5.0; 5G NRM, NR NRM + description: 3GPP TS 28.541 V16.6.0; 5G NRM, NR NRM url: http://www.3gpp.org/ftp/Specs/archive/28_series/28.541/ paths: {} components: @@ -73,16 +73,22 @@ components: type: array items: $ref: '#/components/schemas/PlmnInfo' + GGnbId: + type: string + pattern: '^[0-9]{3}[0-9]{2,3}-(22|23|24|25|26|27|28|29|30|31|32)-[0-9]{1,10}' + GEnbId: + type: string + pattern: '^[0-9]{3}[0-9]{2,3}-(18|20|21|22)-[0-9]{1,7}' GGnbIdList: type: array - items: string - pattern: '^[0-9]{3}[0-9]{2,3}-(22|23|24|25|26|27|28|29|30|31|32)-[0-9]{1,10}' + items: + $ref: '#/components/schemas/GGnbId' GEnbIdList: type: array - items: string - pattern: '^[0-9]{3}[0-9]{2,3}-(18|20|21|22)-[0-9]{1,7}' + items: + $ref: '#/components/schemas/GEnbId' NrPci: type: integer @@ -262,8 +268,7 @@ components: type: array items: $ref: '#/components/schemas/RrmPolicyMember' - - LocalAddress: + AddressWithVlan: type: object properties: ipv4Address: @@ -274,6 +279,11 @@ components: type: integer minimum: 0 maximum: 4096 + LocalAddress: + type: object + properties: + addressWithVlan: + $ref: '#/components/schemas/AddressWithVlan' port: type: integer minimum: 0 @@ -541,6 +551,21 @@ components: type: array items: $ref: '#/components/schemas/RimRSReportInfo' + TceMappingInfo: + type: object + properties: + TceIPAddress: + oneOf: + - $ref: 'genericNrm.yaml#/components/schemas/Ipv4Addr' + - $ref: 'genericNrm.yaml#/components/schemas/Ipv6Addr' + TceID: + type: integer + PlmnTarget: + $ref: '#/components/schemas/PlmnId' + TceMappingInfoList: + type: array + items: + $ref: '#/components/schemas/TceMappingInfo' #-------- Definition of abstract IOCs -------------------------------------------- @@ -593,6 +618,9 @@ components: $ref: '5gcNrm.yaml#/components/schemas/Configurable5QISet-Multiple' RimRSGlobal: $ref: '#/components/schemas/RimRSGlobal-Single' + Dynamic5QISet: + $ref: '5gcNrm.yaml#/components/schemas/Dynamic5QISet-Multiple' + ManagedElement-Single: allOf: - $ref: 'genericNRM.yaml#/components/schemas/Top-Attr' @@ -623,6 +651,8 @@ components: $ref: '#/components/schemas/CESManagementFunction-Single' Configurable5QISet: $ref: '5gcNrm.yaml#/components/schemas/Configurable5QISet-Multiple' + Dynamic5QISet: + $ref: '5gcNrm.yaml#/components/schemas/Dynamic5QISet-Multiple' GnbDuFunction-Single: allOf: @@ -679,6 +709,8 @@ components: $ref: '#/components/schemas/PlmnInfoList' configurable5QISetRef: $ref: 'genericNRM.yaml#/components/schemas/Dn' + dynamic5QISetRef: + $ref: 'genericNRM.yaml#/components/schemas/Dn' - $ref: 'genericNRM.yaml#/components/schemas/ManagedFunction-ncO' - type: object properties: @@ -721,15 +753,19 @@ components: x2WhiteList: $ref: '#/components/schemas/GGnbIdList' xnWhiteList: - $ref: '#/components/schemas/GGnbIdList ' + $ref: '#/components/schemas/GGnbIdList' xnHOBlackList: - $ref: '#/components/schemas/GGnbIdList ' + $ref: '#/components/schemas/GGnbIdList' x2HOBlackList: $ref: '#/components/schemas/GEnbIdList' mappingSetIDBackhaulAddress: $ref: '#/components/schemas/MappingSetIDBackhaulAddress' + tceMappingInfoList: + $ref: '#/components/schemas/TceMappingInfoList' configurable5QISetRef: $ref: 'genericNRM.yaml#/components/schemas/Dn' + dynamic5QISetRef: + $ref: 'genericNRM.yaml#/components/schemas/Dn' - $ref: 'genericNRM.yaml#/components/schemas/ManagedFunction-ncO' - type: object properties: @@ -874,29 +910,34 @@ components: - type: object properties: attributes: - allOf: - - $ref: 'genericNRM.yaml#/components/schemas/ManagedFunction-Attr' - - type: object - properties: - absoluteFrequencySSB: - type: integer - minimum: 0 - maximum: 3279165 - ssbSubCarrierSpacing: - $ref: '#/components/schemas/SsbSubCarrierSpacing' - multiFrequencyBandListNR: - type: integer - minimum: 1 - maximum: 256 - - $ref: 'genericNRM.yaml#/components/schemas/ManagedFunction-ncO' + type: object + properties: + absoluteFrequencySSB: + type: integer + minimum: 0 + maximum: 3279165 + ssbSubCarrierSpacing: + $ref: '#/components/schemas/SsbSubCarrierSpacing' + multiFrequencyBandListNR: + type: integer + minimum: 1 + maximum: 256 EUtranFrequency-Single: allOf: - $ref: 'genericNRM.yaml#/components/schemas/Top-Attr' - type: object properties: attributes: - $ref: 'genericNRM.yaml#/components/schemas/ManagedFunction-Attr' - - $ref: 'genericNRM.yaml#/components/schemas/ManagedFunction-ncO' + type: object + properties: + earfcnDL: + type: integer + minimum: 0 + maximum: 262143 + multiBandInfoListEutra: + type: integer + minimum: 1 + maximum: 256 NrSectorCarrier-Single: allOf: @@ -1041,6 +1082,8 @@ components: $ref: '#/components/schemas/IsESCoveredBy' isENDCAllowed: type: boolean + isMLBAllowed: + type: boolean EUtranCellRelation-Single: allOf: - $ref: 'genericNRM.yaml#/components/schemas/Top-Attr' @@ -1123,13 +1166,63 @@ components: - type: object properties: attributes: - allOf: - - $ref: 'genericNRM.yaml#/components/schemas/ManagedFunction-Attr' - - type: object - properties: + type: object + properties: + cellIndividualOffset: + $ref: '#/components/schemas/CellIndividualOffset' + blackListEntry: + type: array + items: + type: integer + minimum: 0 + maximum: 1007 + blackListEntryIdleMode: + type: integer + cellReselectionPriority: + type: integer + cellReselectionSubPriority: + type: number + minimum: 0.2 + maximum: 0.8 + multipleOf: 0.2 + pMax: + type: integer + minimum: -30 + maximum: 33 + qOffsetFreq: + $ref: '#/components/schemas/QOffsetFreq' + qQualMin: + type: number + qRxLevMin: + type: integer + minimum: -140 + maximum: -44 + threshXHighP: + type: integer + minimum: 0 + maximum: 62 + threshXHighQ: + type: integer + minimum: 0 + maximum: 31 + threshXLowP: + type: integer + minimum: 0 + maximum: 62 + threshXLowQ: + type: integer + minimum: 0 + maximum: 31 + tReselectionEutran: + type: integer + minimum: 0 + maximum: 7 + tReselectionNRSfHigh: + $ref: '#/components/schemas/TReselectionNRSf' + tReselectionNRSfMedium: + $ref: '#/components/schemas/TReselectionNRSf' eUTranFrequencyRef: $ref: 'genericNRM.yaml#/components/schemas/Dn' - - $ref: 'genericNRM.yaml#/components/schemas/ManagedFunction-ncO' DANRManagementFunction-Single: allOf: - $ref: 'genericNRM.yaml#/components/schemas/Top-Attr' @@ -1538,6 +1631,8 @@ components: $ref: '#/components/schemas/LocalAddress' remoteAddress: $ref: '#/components/schemas/RemoteAddress' + epTransportRefs: + $ref: 'genericNrm.yaml#/components/schemas/DnList' EP_X2U-Single: allOf: - $ref: 'genericNRM.yaml#/components/schemas/Top-Attr' diff --git a/OpenAPI/sliceNrm.yaml b/OpenAPI/sliceNrm.yaml index 03aec3d79..750158aa7 100644 --- a/OpenAPI/sliceNrm.yaml +++ b/OpenAPI/sliceNrm.yaml @@ -1,7 +1,7 @@ openapi: 3.0.1 info: title: Slice NRM - version: 16.4.0 + version: 16.5.0 description: >- OAS 3.0.1 specification of the Slice NRM @ 2020, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). @@ -30,6 +30,48 @@ components: enum: - SHARED - NON-SHARED + PerfReqEmbb: + type: object + properties: + expDataRateDL: + type: number + expDataRateUL: + type: number + areaTrafficCapDL: + type: number + areaTrafficCapUL: + type: number + userDensity: + type: number + activityFactor: + type: number + PerfReqEmbbList: + type: array + items: + $ref: '#/components/schemas/PerfReqEmbb' + PerfReqUrllc: + type: object + properties: + cSAvailabilityTarget: + type: number + cSReliabilityMeanTime: + type: string + expDataRate: + type: number + msgSizeByte: + type: string + transferIntervalTarget: + type: string + survivalTime: + type: string + PerfReqUrllcList: + type: array + items: + $ref: '#/components/schemas/PerfReqUrllc' + PerfReq: + oneOf: + - $ref: '#/components/schemas/PerfReqEmbbList' + - $ref: '#/components/schemas/PerfReqUrllcList' Category: type: string enum: @@ -119,12 +161,12 @@ components: $ref: '#/components/schemas/ServAttrCom' maxsize: type: integer - MaxNumberofConns: + MaxNumberofPDUSessions: type: object properties: servAttrCom: $ref: '#/components/schemas/ServAttrCom' - nOofConn: + nOofPDUSessions: type: integer KPIMonitoring: type: object @@ -133,13 +175,13 @@ components: $ref: '#/components/schemas/ServAttrCom' kPIList: type: string - SupportedAccessTech: + NBIoT: type: object properties: servAttrCom: $ref: '#/components/schemas/ServAttrCom' - accTechList: - type: integer + support: + $ref: '#/components/schemas/Support' UserMgmtOpen: type: object properties: @@ -203,12 +245,12 @@ components: $ref: '#/components/schemas/ULThptPerUE' maxPktSize: $ref: '#/components/schemas/MaxPktSize' - maxNumberofConns: - $ref: '#/components/schemas/MaxNumberofConns' + maxNumberofPDUSessions: + $ref: '#/components/schemas/MaxNumberofPDUSessions' kPIMonitoring: $ref: '#/components/schemas/KPIMonitoring' - supportedAccessTech: - $ref: '#/components/schemas/SupportedAccessTech' + nBIoT: + $ref: '#/components/schemas/NBIoT' userMgmtOpen: $ref: '#/components/schemas/UserMgmtOpen' v2XModels: @@ -227,6 +269,10 @@ components: type: string reliability: type: string + maxDLDataVolume: + type: string + maxULDataVolume: + type: string SliceProfileList: type: object additionalProperties: @@ -236,6 +282,8 @@ components: $ref: 'nrNrm.yaml#/components/schemas/SnssaiList' plmnIdList: $ref: 'nrNrm.yaml#/components/schemas/PlmnIdList' + perfReq: + $ref: '#/components/schemas/PerfReq' maxNumberofUEs: type: number coverageAreaTAList: @@ -314,6 +362,8 @@ components: type: string qosProfile: type: string + epApplicationRefs: + $ref: 'genericNrm.yaml#/components/schemas/DnList' EP_Transport-Multiple: type: array @@ -326,3 +376,4 @@ components: oneOf: - $ref: '#/components/schemas/NetworkSlice' - $ref: '#/components/schemas/NetworkSliceSubnet' + - $ref: '#/components/schemas/EP_Transport-Single' -- GitLab From db279312f8ee92201447f57e883a2002cd2a1c38 Mon Sep 17 00:00:00 2001 From: "Michele Carignani (ETSI)" Date: Wed, 30 Sep 2020 17:23:46 +0200 Subject: [PATCH 002/593] Update branching information in readme --- README.md | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/README.md b/README.md index 01615e11b..3ffb11175 100644 --- a/README.md +++ b/README.md @@ -2,9 +2,7 @@ The Rel-16 branch represents the latest Rel-16 content approved and published after each TSG SA plenary. -The Rel-17 branch represents the latest Rel-17 content approved and published after each TSG SA plenary. - -Master branch represents the current working in progress release status. +Rel-17-draft branch represents the current working in progress release status. (c) 2020, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). All rights reserved. -- GitLab From 34ebf6903d3d0f2913ca6d9c78a88a6c0bd93cd1 Mon Sep 17 00:00:00 2001 From: gautamd Date: Wed, 21 Oct 2020 10:19:13 +0200 Subject: [PATCH 003/593] Update sliceNrm.yaml --- OpenAPI/sliceNrm.yaml | 87 +++++++++++++++++++++++++++++++++++++------ 1 file changed, 76 insertions(+), 11 deletions(-) diff --git a/OpenAPI/sliceNrm.yaml b/OpenAPI/sliceNrm.yaml index 750158aa7..6f4235cb8 100644 --- a/OpenAPI/sliceNrm.yaml +++ b/OpenAPI/sliceNrm.yaml @@ -30,6 +30,13 @@ components: enum: - SHARED - NON-SHARED + ServiceType: + type: string + enum: + - eMBB + - RLLC + - MIoT + - V2X PerfReqEmbb: type: object properties: @@ -210,6 +217,69 @@ components: type: string nsName: type: string + CNSliceSubnetProfile: + type: object + properties: + maxNumberofUEs: + type: Integer + latency: + type: Integer + dLThptPerSlice: + type: '#/components/schemas/DLThpt' + dLThptPerUE: + type: '#/components/schemas/DLThpt' + uLThptPerSlice: + type: '#/components/schemas/ULThpt' + uLThptPerUE: + type: '#/components/schemas/ULThpt' + maxNumberOfPDUSessions: + type: Integer + RANSliceSubnetProfile: + type: object + properties: + coverageAreaGeoPolygon: + type: String + coverageAreaTAList: + type: Integer + MobilityLevel: + $ref: '#/components/schemas/MobilityLevel' + resourceSharingLevel: + $ref: '#/components/schemas/SharingLevel' + maxNumberofUEs: + type: Integer + activityFactor: + type: Float + dLThptPerUE: + $ref: '#/components/schemas/ULThpt' + uLThptPerUE: + $ref: '#/components/schemas/ULThpt' + uESpeed: + type: Integer + reliability: + type: String + serviceType: + $ref: '#/components/schemas/ServiceType' + TopSliceSubnetProfile: + type: object + properties: + coverageArea: + type: String + latency: + type: Integer + maxNumberofUEs: + type: Integer + dLThptPerSlice: + type: '#/components/schemas/DLThpt' + dLThptPerUE: + type: '#/components/schemas/DLThpt' + uLThptPerSlice: + type: '#/components/schemas/ULThpt' + uLThptPerUE: + type: '#/components/schemas/ULThpt' + maxPktSize: + $ref: '#/components/schemas/MaxPktSize' + maxNumberofConns: + type: Integer ServiceProfileList: type: object additionalProperties: @@ -284,17 +354,12 @@ components: $ref: 'nrNrm.yaml#/components/schemas/PlmnIdList' perfReq: $ref: '#/components/schemas/PerfReq' - maxNumberofUEs: - type: number - coverageAreaTAList: - $ref: '5gcNrm.yaml#/components/schemas/TACList' - latency: - type: number - uEMobilityLevel: - $ref: '#/components/schemas/MobilityLevel' - resourceSharingLevel: - $ref: '#/components/schemas/SharingLevel' - + CNSliceSubnetProfile: + $ref: '#/components/schemas/CNSliceSubnetProfile' + RANSliceSubnetProfile: + $ref: '#/components/schemas/RANSliceSubnetProfile' + tOPSliceSubnetProfile: + $ref: '#/components/schemas/tOPSliceSubnetProfile' IpAddress: oneOf: - $ref: 'genericNrm.yaml#/components/schemas/Ipv4Addr' -- GitLab From f8cf3eb00c4957527e50ee62a0085afe4d7671e3 Mon Sep 17 00:00:00 2001 From: gautamd Date: Wed, 21 Oct 2020 10:24:17 +0200 Subject: [PATCH 004/593] Update sliceNrm.yaml --- OpenAPI/sliceNrm.yaml | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/OpenAPI/sliceNrm.yaml b/OpenAPI/sliceNrm.yaml index 6f4235cb8..5de614146 100644 --- a/OpenAPI/sliceNrm.yaml +++ b/OpenAPI/sliceNrm.yaml @@ -241,8 +241,8 @@ components: type: String coverageAreaTAList: type: Integer - MobilityLevel: - $ref: '#/components/schemas/MobilityLevel' + MobilityLevel: + $ref: '#/components/schemas/MobilityLevel resourceSharingLevel: $ref: '#/components/schemas/SharingLevel' maxNumberofUEs: @@ -354,12 +354,12 @@ components: $ref: 'nrNrm.yaml#/components/schemas/PlmnIdList' perfReq: $ref: '#/components/schemas/PerfReq' - CNSliceSubnetProfile: - $ref: '#/components/schemas/CNSliceSubnetProfile' - RANSliceSubnetProfile: - $ref: '#/components/schemas/RANSliceSubnetProfile' - tOPSliceSubnetProfile: - $ref: '#/components/schemas/tOPSliceSubnetProfile' + CNSliceSubnetProfile: + $ref: '#/components/schemas/CNSliceSubnetProfile' + RANSliceSubnetProfile + $ref: '#/components/schemas/RANSliceSubnetProfile' + tOPSliceSubnetProfile: + $ref: '#/components/schemas/tOPSliceSubnetProfile' IpAddress: oneOf: - $ref: 'genericNrm.yaml#/components/schemas/Ipv4Addr' -- GitLab From 865461f3bcc056d5e840e3b29b07c71c42137981 Mon Sep 17 00:00:00 2001 From: gautamd Date: Wed, 21 Oct 2020 10:25:28 +0200 Subject: [PATCH 005/593] Update sliceNrm.yaml --- OpenAPI/sliceNrm.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/OpenAPI/sliceNrm.yaml b/OpenAPI/sliceNrm.yaml index 5de614146..37257b7bf 100644 --- a/OpenAPI/sliceNrm.yaml +++ b/OpenAPI/sliceNrm.yaml @@ -358,7 +358,7 @@ components: $ref: '#/components/schemas/CNSliceSubnetProfile' RANSliceSubnetProfile $ref: '#/components/schemas/RANSliceSubnetProfile' - tOPSliceSubnetProfile: + TopSliceSubnetProfile: $ref: '#/components/schemas/tOPSliceSubnetProfile' IpAddress: oneOf: -- GitLab From daf56f54543b276cf3302b55e3323f7d52937628 Mon Sep 17 00:00:00 2001 From: gautamd Date: Wed, 21 Oct 2020 10:26:14 +0200 Subject: [PATCH 006/593] Update sliceNrm.yaml --- OpenAPI/sliceNrm.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/OpenAPI/sliceNrm.yaml b/OpenAPI/sliceNrm.yaml index 37257b7bf..d0d0ab956 100644 --- a/OpenAPI/sliceNrm.yaml +++ b/OpenAPI/sliceNrm.yaml @@ -359,7 +359,7 @@ components: RANSliceSubnetProfile $ref: '#/components/schemas/RANSliceSubnetProfile' TopSliceSubnetProfile: - $ref: '#/components/schemas/tOPSliceSubnetProfile' + $ref: '#/components/schemas/TopSliceSubnetProfile' IpAddress: oneOf: - $ref: 'genericNrm.yaml#/components/schemas/Ipv4Addr' -- GitLab From ac8606a73e33db4af20f6708beb5a8d4d0736c1a Mon Sep 17 00:00:00 2001 From: gautamd Date: Wed, 21 Oct 2020 10:27:00 +0200 Subject: [PATCH 007/593] Update sliceNrm.yaml --- OpenAPI/sliceNrm.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/OpenAPI/sliceNrm.yaml b/OpenAPI/sliceNrm.yaml index d0d0ab956..2e6822973 100644 --- a/OpenAPI/sliceNrm.yaml +++ b/OpenAPI/sliceNrm.yaml @@ -356,7 +356,7 @@ components: $ref: '#/components/schemas/PerfReq' CNSliceSubnetProfile: $ref: '#/components/schemas/CNSliceSubnetProfile' - RANSliceSubnetProfile + RANSliceSubnetProfile: $ref: '#/components/schemas/RANSliceSubnetProfile' TopSliceSubnetProfile: $ref: '#/components/schemas/TopSliceSubnetProfile' -- GitLab From facbe5beb90ed614a084bcf8b6392801cd828b31 Mon Sep 17 00:00:00 2001 From: gautamd Date: Thu, 22 Oct 2020 09:01:43 +0200 Subject: [PATCH 008/593] Update sliceNrm.yaml -- GitLab From 8353aedec632a59fecd2404dae77a05025617cfd Mon Sep 17 00:00:00 2001 From: gautamd Date: Thu, 22 Oct 2020 09:11:23 +0200 Subject: [PATCH 009/593] Update sliceNrm.yaml -- GitLab From 6bd7935224cd4741960ccc709bd61cd8f1acfb36 Mon Sep 17 00:00:00 2001 From: gautamd Date: Thu, 22 Oct 2020 09:24:56 +0200 Subject: [PATCH 010/593] Update sliceNrm.yaml --- OpenAPI/sliceNrm.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/OpenAPI/sliceNrm.yaml b/OpenAPI/sliceNrm.yaml index 2e6822973..894ce167a 100644 --- a/OpenAPI/sliceNrm.yaml +++ b/OpenAPI/sliceNrm.yaml @@ -242,7 +242,7 @@ components: coverageAreaTAList: type: Integer MobilityLevel: - $ref: '#/components/schemas/MobilityLevel + $ref: '#/components/schemas/MobilityLevel' resourceSharingLevel: $ref: '#/components/schemas/SharingLevel' maxNumberofUEs: -- GitLab From 903e01b9e5fd55366032293400d0e8c1d2470f9c Mon Sep 17 00:00:00 2001 From: gautamd Date: Thu, 22 Oct 2020 09:30:00 +0200 Subject: [PATCH 011/593] Update OpenAPI/sliceNrm.yaml --- OpenAPI/sliceNrm.yaml | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/OpenAPI/sliceNrm.yaml b/OpenAPI/sliceNrm.yaml index 894ce167a..f8f43f600 100644 --- a/OpenAPI/sliceNrm.yaml +++ b/OpenAPI/sliceNrm.yaml @@ -225,13 +225,13 @@ components: latency: type: Integer dLThptPerSlice: - type: '#/components/schemas/DLThpt' + type: '#/components/schemas/DLThptPerSlice' dLThptPerUE: - type: '#/components/schemas/DLThpt' + type: '#/components/schemas/DLThptPerUE' uLThptPerSlice: - type: '#/components/schemas/ULThpt' + type: '#/components/schemas/ULThptPerSlice' uLThptPerUE: - type: '#/components/schemas/ULThpt' + type: '#/components/schemas/ULThptPerUE' maxNumberOfPDUSessions: type: Integer RANSliceSubnetProfile: @@ -269,13 +269,13 @@ components: maxNumberofUEs: type: Integer dLThptPerSlice: - type: '#/components/schemas/DLThpt' + type: '#/components/schemas/DLThptPerSlice' dLThptPerUE: - type: '#/components/schemas/DLThpt' + type: '#/components/schemas/DLThptPerUE' uLThptPerSlice: - type: '#/components/schemas/ULThpt' + type: '#/components/schemas/ULThptPerSlice' uLThptPerUE: - type: '#/components/schemas/ULThpt' + type: '#/components/schemas/ULThptPerUE' maxPktSize: $ref: '#/components/schemas/MaxPktSize' maxNumberofConns: -- GitLab From 7f4530ca9684c3cfcddf9be95942b9da61de2c1c Mon Sep 17 00:00:00 2001 From: gautamd Date: Thu, 22 Oct 2020 09:32:18 +0200 Subject: [PATCH 012/593] Update sliceNrm.yaml -- GitLab From e7e7a92c772c70eecc597fb8a2e9c1e532ccd1cf Mon Sep 17 00:00:00 2001 From: gautamd Date: Thu, 22 Oct 2020 09:35:27 +0200 Subject: [PATCH 013/593] Update sliceNrm.yaml --- OpenAPI/sliceNrm.yaml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/OpenAPI/sliceNrm.yaml b/OpenAPI/sliceNrm.yaml index f8f43f600..032921983 100644 --- a/OpenAPI/sliceNrm.yaml +++ b/OpenAPI/sliceNrm.yaml @@ -250,9 +250,9 @@ components: activityFactor: type: Float dLThptPerUE: - $ref: '#/components/schemas/ULThpt' + $ref: '#/components/schemas/ULThptPerUE' uLThptPerUE: - $ref: '#/components/schemas/ULThpt' + $ref: '#/components/schemas/ULThptPerUE' uESpeed: type: Integer reliability: -- GitLab From 819f2a0fbc8047b3a388a92df14abd14447f3f24 Mon Sep 17 00:00:00 2001 From: gautamd Date: Thu, 22 Oct 2020 09:35:49 +0200 Subject: [PATCH 014/593] Update sliceNrm.yaml --- OpenAPI/sliceNrm.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/OpenAPI/sliceNrm.yaml b/OpenAPI/sliceNrm.yaml index 032921983..87f4fbb6c 100644 --- a/OpenAPI/sliceNrm.yaml +++ b/OpenAPI/sliceNrm.yaml @@ -269,7 +269,7 @@ components: maxNumberofUEs: type: Integer dLThptPerSlice: - type: '#/components/schemas/DLThptPerSlice' + type: '#/components/schemas/DLThptPetSlice' dLThptPerUE: type: '#/components/schemas/DLThptPerUE' uLThptPerSlice: -- GitLab From db597d1307bb6837142754b6262c4b27d6f87b7f Mon Sep 17 00:00:00 2001 From: gautamd Date: Thu, 22 Oct 2020 09:36:23 +0200 Subject: [PATCH 015/593] Update sliceNrm.yaml --- OpenAPI/sliceNrm.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/OpenAPI/sliceNrm.yaml b/OpenAPI/sliceNrm.yaml index 87f4fbb6c..032921983 100644 --- a/OpenAPI/sliceNrm.yaml +++ b/OpenAPI/sliceNrm.yaml @@ -269,7 +269,7 @@ components: maxNumberofUEs: type: Integer dLThptPerSlice: - type: '#/components/schemas/DLThptPetSlice' + type: '#/components/schemas/DLThptPerSlice' dLThptPerUE: type: '#/components/schemas/DLThptPerUE' uLThptPerSlice: -- GitLab From b03ca0e53f5fd4e17d4b1eb5b47c80e0a51ab312 Mon Sep 17 00:00:00 2001 From: gautamd Date: Thu, 22 Oct 2020 09:37:53 +0200 Subject: [PATCH 016/593] Update OpenAPI/sliceNrm.yaml --- OpenAPI/sliceNrm.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/OpenAPI/sliceNrm.yaml b/OpenAPI/sliceNrm.yaml index 032921983..1efeb3edf 100644 --- a/OpenAPI/sliceNrm.yaml +++ b/OpenAPI/sliceNrm.yaml @@ -407,7 +407,7 @@ components: nsInfo: $ref: '#/components/schemas/NsInfo' sliceProfileList: - $ref: '#/components/schemas/SliceProfileList' + $ref: '#/components/schemas/sliceProfileList' EPTransport: $ref: '#/components/schemas/EP_Transport-Multiple' -- GitLab From 56cde14a9da28209fb0cb84b8a0ce9940a9f784f Mon Sep 17 00:00:00 2001 From: gautamd Date: Fri, 23 Oct 2020 08:13:34 +0200 Subject: [PATCH 017/593] Update sliceNrm.yaml --- OpenAPI/sliceNrm.yaml | 44 +++++++++++++++++++++---------------------- 1 file changed, 22 insertions(+), 22 deletions(-) diff --git a/OpenAPI/sliceNrm.yaml b/OpenAPI/sliceNrm.yaml index 1efeb3edf..cbea5476e 100644 --- a/OpenAPI/sliceNrm.yaml +++ b/OpenAPI/sliceNrm.yaml @@ -221,65 +221,65 @@ components: type: object properties: maxNumberofUEs: - type: Integer + type: integer latency: - type: Integer + type: integer dLThptPerSlice: - type: '#/components/schemas/DLThptPerSlice' + $ref: '#/components/schemas/DLThptPerSlice' dLThptPerUE: - type: '#/components/schemas/DLThptPerUE' + $ref: '#/components/schemas/DLThptPerUE' uLThptPerSlice: - type: '#/components/schemas/ULThptPerSlice' + $ref: '#/components/schemas/ULThptPerSlice' uLThptPerUE: - type: '#/components/schemas/ULThptPerUE' + $ref: '#/components/schemas/ULThptPerUE' maxNumberOfPDUSessions: - type: Integer + type: integer RANSliceSubnetProfile: type: object properties: coverageAreaGeoPolygon: - type: String + type: string coverageAreaTAList: - type: Integer + type: integer MobilityLevel: $ref: '#/components/schemas/MobilityLevel' resourceSharingLevel: $ref: '#/components/schemas/SharingLevel' maxNumberofUEs: - type: Integer + type: integer activityFactor: - type: Float + type: integer dLThptPerUE: $ref: '#/components/schemas/ULThptPerUE' uLThptPerUE: $ref: '#/components/schemas/ULThptPerUE' uESpeed: - type: Integer + type: integer reliability: - type: String + type: string serviceType: $ref: '#/components/schemas/ServiceType' TopSliceSubnetProfile: type: object properties: coverageArea: - type: String + type: string latency: - type: Integer + type: integer maxNumberofUEs: - type: Integer + type: integer dLThptPerSlice: - type: '#/components/schemas/DLThptPerSlice' + $ref: '#/components/schemas/DLThptPerSlice' dLThptPerUE: - type: '#/components/schemas/DLThptPerUE' + $ref: '#/components/schemas/DLThptPerUE' uLThptPerSlice: - type: '#/components/schemas/ULThptPerSlice' + $ref: '#/components/schemas/ULThptPerSlice' uLThptPerUE: - type: '#/components/schemas/ULThptPerUE' + $ref: '#/components/schemas/ULThptPerUE' maxPktSize: $ref: '#/components/schemas/MaxPktSize' maxNumberofConns: - type: Integer + type: integer ServiceProfileList: type: object additionalProperties: @@ -407,7 +407,7 @@ components: nsInfo: $ref: '#/components/schemas/NsInfo' sliceProfileList: - $ref: '#/components/schemas/sliceProfileList' + $ref: '#/components/schemas/SliceProfileList' EPTransport: $ref: '#/components/schemas/EP_Transport-Multiple' -- GitLab From 8fea7e45805d9b70ac798400be9196b0d43c8772 Mon Sep 17 00:00:00 2001 From: gautamd Date: Fri, 23 Oct 2020 08:14:19 +0200 Subject: [PATCH 018/593] Update sliceNrm.yaml -- GitLab From b209fc1f48186e909ac8984e2f1e7cde55809d1e Mon Sep 17 00:00:00 2001 From: gautamd Date: Fri, 23 Oct 2020 09:54:35 +0200 Subject: [PATCH 019/593] Update sliceNrm.yaml --- OpenAPI/sliceNrm.yaml | 58 ++++++++++++++++++++++++++++++++----------- 1 file changed, 43 insertions(+), 15 deletions(-) diff --git a/OpenAPI/sliceNrm.yaml b/OpenAPI/sliceNrm.yaml index cbea5476e..b9d63f02e 100644 --- a/OpenAPI/sliceNrm.yaml +++ b/OpenAPI/sliceNrm.yaml @@ -161,6 +161,34 @@ components: $ref: '#/components/schemas/Float' maxThpt: $ref: '#/components/schemas/Float' + DLThptPerSliceSubnet: + type: object + properties: + guaThpt: + $ref: '#/components/schemas/Float' + maxThpt: + $ref: '#/components/schemas/Float' + DLThptPerUEPerSubnet: + type: object + properties: + guaThpt: + $ref: '#/components/schemas/Float' + maxThpt: + $ref: '#/components/schemas/Float' + ULThptPerSliceSubnet: + type: object + properties: + guaThpt: + $ref: '#/components/schemas/Float' + maxThpt: + $ref: '#/components/schemas/Float' + ULThptPerUEPerSubnet: + type: object + properties: + guaThpt: + $ref: '#/components/schemas/Float' + maxThpt: + $ref: '#/components/schemas/Float' MaxPktSize: type: object properties: @@ -225,13 +253,13 @@ components: latency: type: integer dLThptPerSlice: - $ref: '#/components/schemas/DLThptPerSlice' - dLThptPerUE: - $ref: '#/components/schemas/DLThptPerUE' - uLThptPerSlice: - $ref: '#/components/schemas/ULThptPerSlice' - uLThptPerUE: - $ref: '#/components/schemas/ULThptPerUE' + $ref: '#/components/schemas/DLThptPerSliceSubnet' + dLThptPerUEPerSubnet: + $ref: '#/components/schemas/DLThptPerUEPerSubnet' + uLThptPerSliceSubnet: + $ref: '#/components/schemas/ULThptPerSliceSubnet' + uLThptPerUEPerSubnet: + $ref: '#/components/schemas/ULThptPerUEPerSubnet' maxNumberOfPDUSessions: type: integer RANSliceSubnetProfile: @@ -250,9 +278,9 @@ components: activityFactor: type: integer dLThptPerUE: - $ref: '#/components/schemas/ULThptPerUE' + $ref: '#/components/schemas/ULThptPerUEPerSubnet' uLThptPerUE: - $ref: '#/components/schemas/ULThptPerUE' + $ref: '#/components/schemas/ULThptPerUEPerSubnet' uESpeed: type: integer reliability: @@ -269,16 +297,16 @@ components: maxNumberofUEs: type: integer dLThptPerSlice: - $ref: '#/components/schemas/DLThptPerSlice' + $ref: '#/components/schemas/DLThptPerSliceSubnet' dLThptPerUE: - $ref: '#/components/schemas/DLThptPerUE' + $ref: '#/components/schemas/DLThptPerUEPerSubnet' uLThptPerSlice: - $ref: '#/components/schemas/ULThptPerSlice' + $ref: '#/components/schemas/ULThptPerSliceSubnet' uLThptPerUE: - $ref: '#/components/schemas/ULThptPerUE' + $ref: '#/components/schemas/ULThptPerUEPerSubnet' maxPktSize: - $ref: '#/components/schemas/MaxPktSize' - maxNumberofConns: + type: integer + maxNumberOfPDUSessions: type: integer ServiceProfileList: type: object -- GitLab From cb1694c98d07214fca42166b6b2da2b674cf007d Mon Sep 17 00:00:00 2001 From: gautamd Date: Fri, 23 Oct 2020 10:54:13 +0200 Subject: [PATCH 020/593] Update sliceNrm.yaml --- OpenAPI/sliceNrm.yaml | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/OpenAPI/sliceNrm.yaml b/OpenAPI/sliceNrm.yaml index b9d63f02e..0e1d02a4c 100644 --- a/OpenAPI/sliceNrm.yaml +++ b/OpenAPI/sliceNrm.yaml @@ -382,12 +382,12 @@ components: $ref: 'nrNrm.yaml#/components/schemas/PlmnIdList' perfReq: $ref: '#/components/schemas/PerfReq' - CNSliceSubnetProfile: - $ref: '#/components/schemas/CNSliceSubnetProfile' - RANSliceSubnetProfile: - $ref: '#/components/schemas/RANSliceSubnetProfile' - TopSliceSubnetProfile: - $ref: '#/components/schemas/TopSliceSubnetProfile' + CNSliceSubnetProfile: + $ref: '#/components/schemas/CNSliceSubnetProfile' + RANSliceSubnetProfile: + $ref: '#/components/schemas/RANSliceSubnetProfile' + TopSliceSubnetProfile: + $ref: '#/components/schemas/TopSliceSubnetProfile' IpAddress: oneOf: - $ref: 'genericNrm.yaml#/components/schemas/Ipv4Addr' -- GitLab From eadde50f70b9f211de18ffa19d093596a63598bd Mon Sep 17 00:00:00 2001 From: gautamd Date: Fri, 23 Oct 2020 11:01:10 +0200 Subject: [PATCH 021/593] Update sliceNrm.yaml -- GitLab From 8c02ed1301485fae1761fdb63d86c19afd249fc0 Mon Sep 17 00:00:00 2001 From: gautamd Date: Fri, 23 Oct 2020 11:07:30 +0200 Subject: [PATCH 022/593] Update sliceNrm.yaml --- OpenAPI/sliceNrm.yaml | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/OpenAPI/sliceNrm.yaml b/OpenAPI/sliceNrm.yaml index 0e1d02a4c..b9d63f02e 100644 --- a/OpenAPI/sliceNrm.yaml +++ b/OpenAPI/sliceNrm.yaml @@ -382,12 +382,12 @@ components: $ref: 'nrNrm.yaml#/components/schemas/PlmnIdList' perfReq: $ref: '#/components/schemas/PerfReq' - CNSliceSubnetProfile: - $ref: '#/components/schemas/CNSliceSubnetProfile' - RANSliceSubnetProfile: - $ref: '#/components/schemas/RANSliceSubnetProfile' - TopSliceSubnetProfile: - $ref: '#/components/schemas/TopSliceSubnetProfile' + CNSliceSubnetProfile: + $ref: '#/components/schemas/CNSliceSubnetProfile' + RANSliceSubnetProfile: + $ref: '#/components/schemas/RANSliceSubnetProfile' + TopSliceSubnetProfile: + $ref: '#/components/schemas/TopSliceSubnetProfile' IpAddress: oneOf: - $ref: 'genericNrm.yaml#/components/schemas/Ipv4Addr' -- GitLab From c5bc48790a5bac14557b8ebb3d63090ccb866cdb Mon Sep 17 00:00:00 2001 From: gautamd Date: Fri, 23 Oct 2020 11:21:58 +0200 Subject: [PATCH 023/593] Update sliceNrm.yaml --- OpenAPI/sliceNrm.yaml | 21 ++++++++++++++++----- 1 file changed, 16 insertions(+), 5 deletions(-) diff --git a/OpenAPI/sliceNrm.yaml b/OpenAPI/sliceNrm.yaml index b9d63f02e..18a2eef92 100644 --- a/OpenAPI/sliceNrm.yaml +++ b/OpenAPI/sliceNrm.yaml @@ -189,7 +189,7 @@ components: $ref: '#/components/schemas/Float' maxThpt: $ref: '#/components/schemas/Float' - MaxPktSize: + MaxPktSize: type: object properties: servAttrCom: @@ -388,6 +388,17 @@ components: $ref: '#/components/schemas/RANSliceSubnetProfile' TopSliceSubnetProfile: $ref: '#/components/schemas/TopSliceSubnetProfile' + maxNumberofUEs: + type: number + coverageAreaTAList: + $ref: '5gcNrm.yaml#/components/schemas/TACList' + latency: + type: number + uEMobilityLevel: + $ref: '#/components/schemas/MobilityLevel' + resourceSharingLevel: + $ref: '#/components/schemas/SharingLevel' + IpAddress: oneOf: - $ref: 'genericNrm.yaml#/components/schemas/Ipv4Addr' @@ -437,7 +448,7 @@ components: sliceProfileList: $ref: '#/components/schemas/SliceProfileList' EPTransport: - $ref: '#/components/schemas/EP_Transport-Multiple' + $ref: '#/components/schemas/EP_Transport-Multiple' EP_Transport-Single: allOf: @@ -467,6 +478,6 @@ components: resources-sliceNrm: oneOf: - - $ref: '#/components/schemas/NetworkSlice' - - $ref: '#/components/schemas/NetworkSliceSubnet' - - $ref: '#/components/schemas/EP_Transport-Single' + - $ref: '#/components/schemas/NetworkSlice' + - $ref: '#/components/schemas/NetworkSliceSubnet' + - $ref: '#/components/schemas/EP_Transport-Single' -- GitLab From 39c2d4070c63c06bfc7a7637ecb16bdeea3e9511 Mon Sep 17 00:00:00 2001 From: gautamd Date: Fri, 23 Oct 2020 11:23:04 +0200 Subject: [PATCH 024/593] Update sliceNrm.yaml --- OpenAPI/sliceNrm.yaml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/OpenAPI/sliceNrm.yaml b/OpenAPI/sliceNrm.yaml index 18a2eef92..c3220fdd2 100644 --- a/OpenAPI/sliceNrm.yaml +++ b/OpenAPI/sliceNrm.yaml @@ -367,9 +367,9 @@ components: type: string reliability: type: string - maxDLDataVolume: + maxDLDataVolume: type: string - maxULDataVolume: + maxULDataVolume: type: string SliceProfileList: type: object -- GitLab From a77b5397ef9bdd35c2d23648981473c6ddc2e811 Mon Sep 17 00:00:00 2001 From: gautamd Date: Fri, 23 Oct 2020 11:31:56 +0200 Subject: [PATCH 025/593] Update sliceNrm.yaml --- OpenAPI/sliceNrm.yaml | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/OpenAPI/sliceNrm.yaml b/OpenAPI/sliceNrm.yaml index c3220fdd2..cd49b913c 100644 --- a/OpenAPI/sliceNrm.yaml +++ b/OpenAPI/sliceNrm.yaml @@ -367,9 +367,9 @@ components: type: string reliability: type: string - maxDLDataVolume: + maxDLDataVolume: type: string - maxULDataVolume: + maxULDataVolume: type: string SliceProfileList: type: object @@ -481,3 +481,4 @@ components: - $ref: '#/components/schemas/NetworkSlice' - $ref: '#/components/schemas/NetworkSliceSubnet' - $ref: '#/components/schemas/EP_Transport-Single' + -- GitLab From d05f2c92d1c643569f69c7c0b6126c33c73ca2c9 Mon Sep 17 00:00:00 2001 From: gautamd Date: Fri, 23 Oct 2020 12:14:43 +0200 Subject: [PATCH 026/593] Update sliceNrm.yaml --- OpenAPI/sliceNrm.yaml | 1 - 1 file changed, 1 deletion(-) diff --git a/OpenAPI/sliceNrm.yaml b/OpenAPI/sliceNrm.yaml index cd49b913c..18a2eef92 100644 --- a/OpenAPI/sliceNrm.yaml +++ b/OpenAPI/sliceNrm.yaml @@ -481,4 +481,3 @@ components: - $ref: '#/components/schemas/NetworkSlice' - $ref: '#/components/schemas/NetworkSliceSubnet' - $ref: '#/components/schemas/EP_Transport-Single' - -- GitLab From e2faaac53950042f5aa58cd12a6556d85db38552 Mon Sep 17 00:00:00 2001 From: carignani Date: Fri, 23 Oct 2020 17:33:28 +0200 Subject: [PATCH 027/593] fix reference to branch name --- README.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/README.md b/README.md index 3ffb11175..b35af1f91 100644 --- a/README.md +++ b/README.md @@ -2,14 +2,14 @@ The Rel-16 branch represents the latest Rel-16 content approved and published after each TSG SA plenary. -Rel-17-draft branch represents the current working in progress release status. +Rel17-draft branch represents the current working in progress release status. (c) 2020, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). All rights reserved. -Branch {+Master+} validation status: +Branch {+Rel17-draft+} validation status: -[![pipeline status](https://forge.3gpp.org/rep/SA5/data-models/badges/master/pipeline.svg)](https://forge.3gpp.org/rep/SA5/data-models/commits/master) +[![pipeline status](https://forge.3gpp.org/rep/SA5/data-models/badges/Rel17-draft/pipeline.svg)](https://forge.3gpp.org/rep/SA5/data-models/commits/master) ## Data models validation -- GitLab From 568616798c7a59a1c2af8456d0cae69a2b2a3c64 Mon Sep 17 00:00:00 2001 From: carignani Date: Fri, 6 Nov 2020 12:16:33 +0100 Subject: [PATCH 028/593] fix link on the validation badge --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index b35af1f91..d48cceab2 100644 --- a/README.md +++ b/README.md @@ -9,7 +9,7 @@ All rights reserved. Branch {+Rel17-draft+} validation status: -[![pipeline status](https://forge.3gpp.org/rep/SA5/data-models/badges/Rel17-draft/pipeline.svg)](https://forge.3gpp.org/rep/SA5/data-models/commits/master) +[![pipeline status](https://forge.3gpp.org/rep/SA5/MnS/badges/Rel17-draft/pipeline.svg)](https://forge.3gpp.org/rep/SA5/MnS/commits/Rel17-draft) ## Data models validation -- GitLab From bae997aa34c27dcc578f1237f17a6a5b606a1f04 Mon Sep 17 00:00:00 2001 From: lengyelb Date: Fri, 16 Apr 2021 17:57:13 +0200 Subject: [PATCH 029/593] Update README.md Remove the 3 files of the XSD/XML Solution set that were removed from 28.541 17.2.1. --- xsd/README.md | 8 - xsd/ngcNrm.xsd | 1716 ---------------------------------------------- xsd/nrNrm.xsd | 1244 --------------------------------- xsd/sliceNrm.xsd | 296 -------- 4 files changed, 3264 deletions(-) delete mode 100644 xsd/ngcNrm.xsd delete mode 100644 xsd/nrNrm.xsd delete mode 100644 xsd/sliceNrm.xsd diff --git a/xsd/README.md b/xsd/README.md index 1a3ad739d..ce4d0be02 100755 --- a/xsd/README.md +++ b/xsd/README.md @@ -8,14 +8,6 @@ * Generic NRM (TS 28.623) 3GPP TS 28.623 Generic Network Resources IRP Bulk CM Configuration data file NRM-specific XML schema genericNrm.xsd -* NR NRM (TS 28.541) - 3GPP TS 28.541 NR Network Resource Model XML schema definition nrNrm.xsd - -* 5GC NRM (TS 28.541) - 3GPP TS 28.541 5GC Network Resource Model XML schema definition ngcNrm.xsd - -* Slice NRM (TS 28.541) - 3GPP TS 28.541 5GC network slice Network Resource Model XML schema definition sliceNrm.xsd ## Management Services (MnS) diff --git a/xsd/ngcNrm.xsd b/xsd/ngcNrm.xsd deleted file mode 100644 index 2e877d871..000000000 --- a/xsd/ngcNrm.xsd +++ /dev/null @@ -1,1716 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/xsd/nrNrm.xsd b/xsd/nrNrm.xsd deleted file mode 100644 index 72574626d..000000000 --- a/xsd/nrNrm.xsd +++ /dev/null @@ -1,1244 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/xsd/sliceNrm.xsd b/xsd/sliceNrm.xsd deleted file mode 100644 index 168132875..000000000 --- a/xsd/sliceNrm.xsd +++ /dev/null @@ -1,296 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file -- GitLab From 525230fda27c64a2905d74e14e0b9c2853134ef1 Mon Sep 17 00:00:00 2001 From: "U-ERICSSON\\ETHBLL" Date: Fri, 16 Apr 2021 00:23:47 +0200 Subject: [PATCH 030/593] remove all YANG files --- yang-models/_3gpp-5g-common-yang-types.yang | 71 -- .../_3gpp-5gc-nrm-FiveQiDscpMappingSet.yang | 58 - ...-5gc-nrm-GtpUPathQoSMonitoringControl.yang | 136 -- .../_3gpp-5gc-nrm-QFQoSMonitoringControl.yang | 130 -- yang-models/_3gpp-5gc-nrm-affunction.yang | 38 - yang-models/_3gpp-5gc-nrm-amffunction.yang | 82 -- yang-models/_3gpp-5gc-nrm-amfregion.yang | 75 -- yang-models/_3gpp-5gc-nrm-amfset.yang | 75 -- yang-models/_3gpp-5gc-nrm-ausffunction.yang | 79 -- .../_3gpp-5gc-nrm-configurable5qiset.yang | 125 -- yang-models/_3gpp-5gc-nrm-dnfunction.yang | 39 - yang-models/_3gpp-5gc-nrm-dynamic5qiset.yang | 46 - yang-models/_3gpp-5gc-nrm-ep.yang | 646 ---------- .../_3gpp-5gc-nrm-externalnrffunction.yang | 42 - .../_3gpp-5gc-nrm-externalnssffunction.yang | 43 - .../_3gpp-5gc-nrm-externalseppfunction.yang | 55 - yang-models/_3gpp-5gc-nrm-lmffunction.yang | 63 - yang-models/_3gpp-5gc-nrm-n3iwffunction.yang | 55 - yang-models/_3gpp-5gc-nrm-neffunction.yang | 66 - yang-models/_3gpp-5gc-nrm-nfprofile.yang | 1095 ----------------- yang-models/_3gpp-5gc-nrm-nfservice.yang | 286 ----- yang-models/_3gpp-5gc-nrm-ngeirfunction.yang | 73 -- yang-models/_3gpp-5gc-nrm-nrffunction.yang | 80 -- yang-models/_3gpp-5gc-nrm-nssffunction.yang | 80 -- yang-models/_3gpp-5gc-nrm-nwdaffunction.yang | 79 -- yang-models/_3gpp-5gc-nrm-pcffunction.yang | 88 -- .../_3gpp-5gc-nrm-predefinedpccruleset.yang | 621 ---------- yang-models/_3gpp-5gc-nrm-scpfunction.yang | 50 - yang-models/_3gpp-5gc-nrm-seppfunction.yang | 70 -- yang-models/_3gpp-5gc-nrm-smffunction.yang | 95 -- yang-models/_3gpp-5gc-nrm-smsffunction.yang | 62 - yang-models/_3gpp-5gc-nrm-udmfunction.yang | 77 -- yang-models/_3gpp-5gc-nrm-udrfunction.yang | 70 -- yang-models/_3gpp-5gc-nrm-udsffunction.yang | 70 -- yang-models/_3gpp-5gc-nrm-upffunction.yang | 77 -- yang-models/_3gpp-common-ep-rp.yang | 68 - yang-models/_3gpp-common-fm.yang | 408 ------ yang-models/_3gpp-common-managed-element.yang | 223 ---- .../_3gpp-common-managed-function.yang | 305 ----- yang-models/_3gpp-common-measurements.yang | 546 -------- yang-models/_3gpp-common-subnetwork.yang | 196 --- .../_3gpp-common-subscription-control.yang | 209 ---- yang-models/_3gpp-common-top.yang | 36 - yang-models/_3gpp-common-trace.yang | 871 ------------- yang-models/_3gpp-common-yang-extensions.yang | 95 -- yang-models/_3gpp-common-yang-types.yang | 527 -------- yang-models/_3gpp-nr-nrm-beam.yang | 96 -- yang-models/_3gpp-nr-nrm-bwp.yang | 105 -- .../_3gpp-nr-nrm-cesmanagementfunction.yang | 64 - yang-models/_3gpp-nr-nrm-common.yang | 29 - ...3gpp-nr-nrm-commonbeamformingfunction.yang | 62 - ...3gpp-nr-nrm-cpciconfigurationfunction.yang | 67 - .../_3gpp-nr-nrm-danrmanagementfunction.yang | 44 - .../_3gpp-nr-nrm-desmanagementfunction.yang | 261 ---- yang-models/_3gpp-nr-nrm-dmrofunction.yang | 70 -- ...3gpp-nr-nrm-dpciconfigurationfunction.yang | 67 - ...3gpp-nr-nrm-drachoptimizationfunction.yang | 120 -- yang-models/_3gpp-nr-nrm-ep.yang | 239 ---- .../_3gpp-nr-nrm-eutrancellrelation.yang | 160 --- yang-models/_3gpp-nr-nrm-eutranetwork.yang | 61 - .../_3gpp-nr-nrm-eutranfreqrelation.yang | 208 ---- yang-models/_3gpp-nr-nrm-eutranfrequency.yang | 64 - .../_3gpp-nr-nrm-externalamffunction.yang | 69 -- .../_3gpp-nr-nrm-externalenbfunction.yang | 60 - .../_3gpp-nr-nrm-externaleutrancell.yang | 153 --- .../_3gpp-nr-nrm-externalgnbcucpfunction.yang | 76 -- .../_3gpp-nr-nrm-externalgnbcuupfunction.yang | 66 - .../_3gpp-nr-nrm-externalgnbdufunction.yang | 76 -- .../_3gpp-nr-nrm-externalnrcellcu.yang | 85 -- ...3gpp-nr-nrm-externalservinggwfunction.yang | 52 - .../_3gpp-nr-nrm-externalupffunction.yang | 51 - yang-models/_3gpp-nr-nrm-gnbcucpfunction.yang | 134 -- yang-models/_3gpp-nr-nrm-gnbcuupfunction.yang | 168 --- yang-models/_3gpp-nr-nrm-gnbdufunction.yang | 87 -- yang-models/_3gpp-nr-nrm-nrcellcu.yang | 87 -- yang-models/_3gpp-nr-nrm-nrcelldu.yang | 223 ---- yang-models/_3gpp-nr-nrm-nrcellrelation.yang | 143 --- yang-models/_3gpp-nr-nrm-nrfreqrelation.yang | 245 ---- yang-models/_3gpp-nr-nrm-nrfrequency.yang | 71 -- yang-models/_3gpp-nr-nrm-nrnetwork.yang | 39 - yang-models/_3gpp-nr-nrm-nrsectorcarrier.yang | 119 -- yang-models/_3gpp-nr-nrm-rrmpolicy.yang | 120 -- 82 files changed, 12222 deletions(-) delete mode 100755 yang-models/_3gpp-5g-common-yang-types.yang delete mode 100755 yang-models/_3gpp-5gc-nrm-FiveQiDscpMappingSet.yang delete mode 100755 yang-models/_3gpp-5gc-nrm-GtpUPathQoSMonitoringControl.yang delete mode 100755 yang-models/_3gpp-5gc-nrm-QFQoSMonitoringControl.yang delete mode 100755 yang-models/_3gpp-5gc-nrm-affunction.yang delete mode 100755 yang-models/_3gpp-5gc-nrm-amffunction.yang delete mode 100755 yang-models/_3gpp-5gc-nrm-amfregion.yang delete mode 100755 yang-models/_3gpp-5gc-nrm-amfset.yang delete mode 100755 yang-models/_3gpp-5gc-nrm-ausffunction.yang delete mode 100755 yang-models/_3gpp-5gc-nrm-configurable5qiset.yang delete mode 100755 yang-models/_3gpp-5gc-nrm-dnfunction.yang delete mode 100755 yang-models/_3gpp-5gc-nrm-dynamic5qiset.yang delete mode 100755 yang-models/_3gpp-5gc-nrm-ep.yang delete mode 100755 yang-models/_3gpp-5gc-nrm-externalnrffunction.yang delete mode 100755 yang-models/_3gpp-5gc-nrm-externalnssffunction.yang delete mode 100755 yang-models/_3gpp-5gc-nrm-externalseppfunction.yang delete mode 100755 yang-models/_3gpp-5gc-nrm-lmffunction.yang delete mode 100755 yang-models/_3gpp-5gc-nrm-n3iwffunction.yang delete mode 100755 yang-models/_3gpp-5gc-nrm-neffunction.yang delete mode 100755 yang-models/_3gpp-5gc-nrm-nfprofile.yang delete mode 100755 yang-models/_3gpp-5gc-nrm-nfservice.yang delete mode 100755 yang-models/_3gpp-5gc-nrm-ngeirfunction.yang delete mode 100755 yang-models/_3gpp-5gc-nrm-nrffunction.yang delete mode 100755 yang-models/_3gpp-5gc-nrm-nssffunction.yang delete mode 100755 yang-models/_3gpp-5gc-nrm-nwdaffunction.yang delete mode 100755 yang-models/_3gpp-5gc-nrm-pcffunction.yang delete mode 100755 yang-models/_3gpp-5gc-nrm-predefinedpccruleset.yang delete mode 100755 yang-models/_3gpp-5gc-nrm-scpfunction.yang delete mode 100755 yang-models/_3gpp-5gc-nrm-seppfunction.yang delete mode 100755 yang-models/_3gpp-5gc-nrm-smffunction.yang delete mode 100755 yang-models/_3gpp-5gc-nrm-smsffunction.yang delete mode 100755 yang-models/_3gpp-5gc-nrm-udmfunction.yang delete mode 100755 yang-models/_3gpp-5gc-nrm-udrfunction.yang delete mode 100755 yang-models/_3gpp-5gc-nrm-udsffunction.yang delete mode 100755 yang-models/_3gpp-5gc-nrm-upffunction.yang delete mode 100755 yang-models/_3gpp-common-ep-rp.yang delete mode 100755 yang-models/_3gpp-common-fm.yang delete mode 100755 yang-models/_3gpp-common-managed-element.yang delete mode 100755 yang-models/_3gpp-common-managed-function.yang delete mode 100755 yang-models/_3gpp-common-measurements.yang delete mode 100755 yang-models/_3gpp-common-subnetwork.yang delete mode 100755 yang-models/_3gpp-common-subscription-control.yang delete mode 100755 yang-models/_3gpp-common-top.yang delete mode 100755 yang-models/_3gpp-common-trace.yang delete mode 100755 yang-models/_3gpp-common-yang-extensions.yang delete mode 100755 yang-models/_3gpp-common-yang-types.yang delete mode 100755 yang-models/_3gpp-nr-nrm-beam.yang delete mode 100755 yang-models/_3gpp-nr-nrm-bwp.yang delete mode 100755 yang-models/_3gpp-nr-nrm-cesmanagementfunction.yang delete mode 100755 yang-models/_3gpp-nr-nrm-common.yang delete mode 100755 yang-models/_3gpp-nr-nrm-commonbeamformingfunction.yang delete mode 100755 yang-models/_3gpp-nr-nrm-cpciconfigurationfunction.yang delete mode 100755 yang-models/_3gpp-nr-nrm-danrmanagementfunction.yang delete mode 100755 yang-models/_3gpp-nr-nrm-desmanagementfunction.yang delete mode 100755 yang-models/_3gpp-nr-nrm-dmrofunction.yang delete mode 100755 yang-models/_3gpp-nr-nrm-dpciconfigurationfunction.yang delete mode 100755 yang-models/_3gpp-nr-nrm-drachoptimizationfunction.yang delete mode 100755 yang-models/_3gpp-nr-nrm-ep.yang delete mode 100755 yang-models/_3gpp-nr-nrm-eutrancellrelation.yang delete mode 100755 yang-models/_3gpp-nr-nrm-eutranetwork.yang delete mode 100755 yang-models/_3gpp-nr-nrm-eutranfreqrelation.yang delete mode 100755 yang-models/_3gpp-nr-nrm-eutranfrequency.yang delete mode 100755 yang-models/_3gpp-nr-nrm-externalamffunction.yang delete mode 100755 yang-models/_3gpp-nr-nrm-externalenbfunction.yang delete mode 100755 yang-models/_3gpp-nr-nrm-externaleutrancell.yang delete mode 100755 yang-models/_3gpp-nr-nrm-externalgnbcucpfunction.yang delete mode 100755 yang-models/_3gpp-nr-nrm-externalgnbcuupfunction.yang delete mode 100755 yang-models/_3gpp-nr-nrm-externalgnbdufunction.yang delete mode 100755 yang-models/_3gpp-nr-nrm-externalnrcellcu.yang delete mode 100755 yang-models/_3gpp-nr-nrm-externalservinggwfunction.yang delete mode 100755 yang-models/_3gpp-nr-nrm-externalupffunction.yang delete mode 100755 yang-models/_3gpp-nr-nrm-gnbcucpfunction.yang delete mode 100755 yang-models/_3gpp-nr-nrm-gnbcuupfunction.yang delete mode 100755 yang-models/_3gpp-nr-nrm-gnbdufunction.yang delete mode 100755 yang-models/_3gpp-nr-nrm-nrcellcu.yang delete mode 100755 yang-models/_3gpp-nr-nrm-nrcelldu.yang delete mode 100755 yang-models/_3gpp-nr-nrm-nrcellrelation.yang delete mode 100755 yang-models/_3gpp-nr-nrm-nrfreqrelation.yang delete mode 100755 yang-models/_3gpp-nr-nrm-nrfrequency.yang delete mode 100755 yang-models/_3gpp-nr-nrm-nrnetwork.yang delete mode 100755 yang-models/_3gpp-nr-nrm-nrsectorcarrier.yang delete mode 100755 yang-models/_3gpp-nr-nrm-rrmpolicy.yang diff --git a/yang-models/_3gpp-5g-common-yang-types.yang b/yang-models/_3gpp-5g-common-yang-types.yang deleted file mode 100755 index 4227463e9..000000000 --- a/yang-models/_3gpp-5g-common-yang-types.yang +++ /dev/null @@ -1,71 +0,0 @@ -module _3gpp-5g-common-yang-types { - yang-version 1.1; - namespace "urn:3gpp:sa5:_3gpp-5g-common-yang-types"; - prefix "types5g3gpp"; - - - import _3gpp-common-yang-types { prefix types3gpp; } - - organization "3GPP SA5"; - description "The model defines common types for 5G networks and - network slicing."; - reference "3GPP TS 28.541"; - - revision 2019-10-20 { - description "Initial version."; - reference "Based on - 3GPP TS 28.541 V16.X.XX"; - } - - typedef CommModelType { - reference "3GPP TS 23501"; - type enumeration { - enum DIRECT_COMMUNICATION_WO_NRF { - value 0; - description "Directly communicate to other pre-configured NF service."; - } - - enum DIRECT_COMMUNICATION_WITH_NRF { - value 1; - description "Directly communicate to other NF service discovered by NRF."; - } - - enum INDIRECT_COMMUNICATION_WO_DEDICATED_DISCOVERY { - value 2; - description "Communicate to pre-configured other NF service through SCP as a proxy."; - } - - enum INDIRECT_COMMUNICATION_WITH_DEDICATED_DISCOVERY { - value 3; - description "Communication to NF service discovered by NRF through SCP as a proxy."; - } - - } - } - - grouping CommModel { - leaf groupId { - type uint16; - } - leaf commModelType { - type CommModelType; - } - leaf-list targetNFServiceList { - - type types3gpp:DistinguishedName; - } - leaf commModelConfiguration { - type string; - } - } - - grouping SupportedFunc { - leaf function { - type string; - } - leaf policy { - type string; - } - } - -} \ No newline at end of file diff --git a/yang-models/_3gpp-5gc-nrm-FiveQiDscpMappingSet.yang b/yang-models/_3gpp-5gc-nrm-FiveQiDscpMappingSet.yang deleted file mode 100755 index fabfe4336..000000000 --- a/yang-models/_3gpp-5gc-nrm-FiveQiDscpMappingSet.yang +++ /dev/null @@ -1,58 +0,0 @@ -module _3gpp-5gc-nrm-FiveQiDscpMappingSet { - yang-version 1.1; - - namespace urn:3gpp:sa5:_3gpp-5gc-nrm-FiveQiDscpMappingSet; - prefix FiveQiDscpMapping3gpp; - - import _3gpp-common-top { prefix top3gpp; } - import _3gpp-common-managed-element { prefix me3gpp; } - import _3gpp-5gc-nrm-smffunction { prefix smf3gpp; } - - organization "3gpp SA5"; - contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; - description " This IOC represents the set of mapping between 5QIs and DSCP."; - reference "3GPP TS 28.541"; - - revision 2020-08-03 { reference "CR-0321"; } - revision 2020-05-27 { reference "CR-0287"; } - - grouping FiveQiDscpMapping { - leaf-list fiveQIValues { - type uint32 { - range 0..255 ; - } - min-elements 1; - description " Identifies the 5QI values that are mapped to a same DSCP, as specified in TS 28.541."; - } - - leaf dscp { - type uint32 { - range 0..255 ; - } - mandatory true; - } - } - - grouping FiveQiDscpMappingSetGrp { - description "Represents the FiveQiDscpMappingSet IOC."; - list FiveQiDscpMappingList { - key "dscp"; - uses FiveQiDscpMapping; - } - } - - grouping FiveQiDscpMappingSetSubtree { - list FiveQiDscpMappingSet { - description "Specifies the mapping between 5QIs and DSCPs."; - key id; - uses top3gpp:Top_Grp; - container attributes { - uses FiveQiDscpMappingSetGrp; - } - } - } - - augment "/me3gpp:ManagedElement/smf3gpp:SMFFunction" { - uses FiveQiDscpMappingSetSubtree; - } -} \ No newline at end of file diff --git a/yang-models/_3gpp-5gc-nrm-GtpUPathQoSMonitoringControl.yang b/yang-models/_3gpp-5gc-nrm-GtpUPathQoSMonitoringControl.yang deleted file mode 100755 index 491226a18..000000000 --- a/yang-models/_3gpp-5gc-nrm-GtpUPathQoSMonitoringControl.yang +++ /dev/null @@ -1,136 +0,0 @@ -module _3gpp-5gc-nrm-GtpUPathQoSMonitoringControl { - yang-version 1.1; - - namespace urn:3gpp:sa5:_3gpp-5gc-nrm-GtpUPathQoSMonitoringControl; - prefix gtpUPathQMCtrl3gpp; - - import _3gpp-common-managed-element { prefix me3gpp; } - import _3gpp-common-yang-types { prefix types3gpp; } - import _3gpp-5gc-nrm-smffunction { prefix smf3gpp; } - import _3gpp-common-top { prefix top3gpp; } - - organization "3gpp SA5"; - contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; - description "This IOC represents the capabilities and properties for control - of GTP-U path QoS monitoring defined in 3GPP TS 23.501."; - reference "3GPP TS 28.541"; - - revision 2020-08-03 { reference "CR-0321"; } - revision 2020-04-10 { reference "S5-202103"; } - - grouping GtpUPathDelayThresholdsType { - leaf n3AveragePacketDelayThreshold { - mandatory true; - type uint32; - } - leaf n3MinPacketDelayThreshold { - mandatory true; - type uint32; - } - leaf n3MaxPacketDelayThreshold { - mandatory true; - type uint32; - } - leaf n9AveragePacketDelayThreshold { - mandatory true; - type uint32; - } - leaf n9MinPacketDelayThreshold { - mandatory true; - type uint32; - } - leaf n9MaxPacketDelayThreshold { - mandatory true; - type uint32; - } - } - - grouping GtpUPathQoSMonitoringControlGrp { - description "Represents the GtpUPathQoSMonitoringControl IOC."; - - leaf gtpUPathQoSMonitoringState { - description "The state of GTP-U path QoS monitoring."; - mandatory true; - type enumeration { - enum ENABLED; - enum DISABLED; - } - } - - leaf-list gtpUPathMonitoredSNSSAIs { - description "The S-NSSAIs for which the the GTP-U path QoS monitoring is - to be performed."; - reference "3GPP TS 23.003"; - type types3gpp:SNssai; - } - - leaf-list monitoredDSCPs { - description "The DSCPs for which the GTP-U path QoS monitoring is to be - performed."; - reference "3GPP TS 29.244"; - type uint32; - } - - leaf isEventTriggeredGtpUPathMonitoringSupported { - description "It indicates whether the event triggered GTP-U path QoS - monitoring reporting based on thresholds is supported."; - mandatory true; - reference "3GPP TS 29.244"; - type boolean; - } - - leaf isPeriodicGtpUMonitoringSupported { - description "It indicates whether the periodic GTP-U path QoS monitoring - reporting is supported."; - mandatory true; - reference "3GPP TS 29.244"; - type boolean; - } - - leaf isImmediateGtpUMonitoringSupported { - description "It indicates whether the immediate GTP-U path QoS monitoring - reporting is supported."; - mandatory true; - reference "3GPP TS 29.244"; - type boolean; - } - - list gtpUPathDelayThresholds { - key n3AveragePacketDelayThreshold; - // if max-elements is increased later, the key may need to be modified - min-elements 1; - max-elements 1; - description "It specifies the thresholds for reporting the packet delay - for the GTO-U path QoS monitoring."; - uses GtpUPathDelayThresholdsType; - } - - leaf gtpUPathMinimumWaitTime { - description "It specifies the minimum waiting time (in seconds) between - two consecutive reports for event triggered GTP-U path QoS monitoring - reporting."; - type uint32; - } - - leaf gtpUPathMeasurementPeriod { - description "It specifies the period (in seconds) for reporting the packet - delay for GTP-U path QoS monitoring."; - type uint32; - } - } - - augment "/me3gpp:ManagedElement/smf3gpp:SMFFunction" { - - list GtpUPathQoSMonitoringControl { - description "Specifies the capabilities and properties for control of - GTP-U path QoS monitoring. For more information about the GTP-U path - QoS monitoring."; - reference "3GPP TS 23.501"; - key id; - uses top3gpp:Top_Grp; - container attributes { - uses GtpUPathQoSMonitoringControlGrp; - } - } - } -} \ No newline at end of file diff --git a/yang-models/_3gpp-5gc-nrm-QFQoSMonitoringControl.yang b/yang-models/_3gpp-5gc-nrm-QFQoSMonitoringControl.yang deleted file mode 100755 index 0d814b663..000000000 --- a/yang-models/_3gpp-5gc-nrm-QFQoSMonitoringControl.yang +++ /dev/null @@ -1,130 +0,0 @@ -module _3gpp-5gc-nrm-QFQoSMonitoringControl { - yang-version 1.1; - - namespace urn:3gpp:sa5:_3gpp-5gc-nrm-QFQoSMonitoringControl; - prefix qFQMCtrl3gpp; - - import _3gpp-common-managed-element { prefix me3gpp; } - import _3gpp-common-yang-types { prefix types3gpp; } - import _3gpp-5gc-nrm-smffunction { prefix smf3gpp; } - import _3gpp-common-top { prefix top3gpp; } - - organization "3gpp SA5"; contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; - description "This IOC represents the capabilities and properties for control - of QoS monitoring per QoS flow per UE for URLLC service defined - in 3GPP TS 23.501."; - reference "3GPP TS 28.541"; - - revision 2020-08-03 { reference "CR-0321"; } - revision 2020-04-10 { reference "S5-202101"; } - - grouping QFPacketDelayThresholdsTypeGrp { - leaf thresholdDl { - type uint32; - units milliseconds; - description "Downlink threshold"; - } - - leaf thresholdUl { - type uint32; - units milliseconds; - description "Uplink threshold"; - } - - leaf thresholdRtt { - type uint32; - units milliseconds; - description "Round trip threshold"; - } - } - - grouping QFQoSMonitoringControlGrp { - description "Represents the QFQoSMonitoringControl IOC."; - reference "3GPP TS 28.541"; - - leaf qFQoSMonitoringState { - description "The state of QoS monitoring per QoS flow per UE."; - mandatory true; - type enumeration { - enum ENABLED; - enum DISABLED; - } - } - - leaf-list qFMonitoredSNSSAIs { - description "The S-NSSAIs for which the QoS monitoring per QoS flow - per UE is to be performed."; - reference "3GPP TS 23.003"; - type types3gpp:SNssai; - } - - leaf-list qFMonitored5QIs { - description "The 5QIs for which the QoS monitoring per QoS flow - per UE is to be performed."; - reference "3GPP TS 23.501"; - type uint32 { - range "0..255"; - } - } - - leaf isEventTriggeredQFMonitoringSupported { - description "It indicates whether the event based QoS monitoring - reporting per QoS flow per UE is supported."; - mandatory true; - reference "3GPP TS 29.244"; - type boolean; - } - - leaf isPeriodicQFMonitoringSupported { - description "It indicates whether the periodic QoS monitoring reporting - per QoS flow per UE is supported."; - mandatory true; - reference "3GPP TS 29.244"; - type boolean; - } - - leaf isSessionReleasedQFMonitoringSupported { - description "It indicates whether the session release based QoS monitoring - reporting per QoS flow per UE is supported."; - mandatory true; - reference "3GPP TS 29.244"; - type boolean; - } - - list qFPacketDelayThresholds { - key "idx"; - min-elements 1; - max-elements 1; - description "It specifies the thresholds for reporting the packet delay - between PSA and UE for QoS monitoring per QoS flow per UE."; - - leaf idx { type uint32 ; } - uses QFPacketDelayThresholdsTypeGrp; - } - - leaf qFMinimumWaitTime { - description "It specifies the minimum waiting time (in seconds) between - two consecutive reports for event triggered QoS monitoring reporting - per QoS flow per UE."; - type uint32; - } - - leaf qFMeasurementPeriod { - description "It specifies the period (in seconds) for reporting the packet delay for QoS monitoring per QoS flow per UE."; - type uint32; - } - } - - augment "/me3gpp:ManagedElement/smf3gpp:SMFFunction" { - - list QFQoSMonitoringControl { - description "Represents the QFQoSMonitoringControl IOC."; - reference "3GPP TS 28.541"; - key id; - uses top3gpp:Top_Grp; - container attributes { - uses QFQoSMonitoringControlGrp; - } - } - } -} \ No newline at end of file diff --git a/yang-models/_3gpp-5gc-nrm-affunction.yang b/yang-models/_3gpp-5gc-nrm-affunction.yang deleted file mode 100755 index a668b8a3a..000000000 --- a/yang-models/_3gpp-5gc-nrm-affunction.yang +++ /dev/null @@ -1,38 +0,0 @@ -module _3gpp-5gc-nrm-affunction { - yang-version 1.1; - - namespace urn:3gpp:sa5:_3gpp-5gc-nrm-affunction; - prefix af3gpp; - - import _3gpp-common-managed-function { prefix mf3gpp; } - import _3gpp-common-managed-element { prefix me3gpp; } - import _3gpp-common-top { prefix top3gpp; } - - organization "3gpp SA5"; - description "This IOC is defined only to describe the IOCs representing - its interaction interface with 5GC (i.e. EP_Rx and EP_N5). - It has no attributes defined."; - reference "3GPP TS 28.541"; - - revision 2019-10-28 { reference S5-193518 ; } - - revision 2019-05-15 { - description "initial revision"; - } - - grouping AFFunctionGrp { - uses mf3gpp:ManagedFunctionGrp; - } - - augment "/me3gpp:ManagedElement" { - list AFFunction { - description "5G Core AF Function"; - reference "3GPP TS 28.541"; - key id; - uses top3gpp:Top_Grp; - container attributes { - uses AFFunctionGrp; - } - } - } -} \ No newline at end of file diff --git a/yang-models/_3gpp-5gc-nrm-amffunction.yang b/yang-models/_3gpp-5gc-nrm-amffunction.yang deleted file mode 100755 index 46eb9fbfa..000000000 --- a/yang-models/_3gpp-5gc-nrm-amffunction.yang +++ /dev/null @@ -1,82 +0,0 @@ -module _3gpp-5gc-nrm-amffunction { - yang-version 1.1; - namespace urn:3gpp:sa5:_3gpp-5gc-nrm-amffunction; - prefix amf3gpp; - - import _3gpp-common-managed-function { prefix mf3gpp; } - import _3gpp-common-managed-element { prefix me3gpp; } - import _3gpp-common-yang-types { prefix types3gpp; } - import _3gpp-5g-common-yang-types { prefix types5g3gpp; } - import ietf-inet-types { prefix inet; } - import _3gpp-common-top { prefix top3gpp; } - - description "AMFFunction derived from basic ManagedFunction."; - - revision 2019-10-25 { reference "S5-194457 S5-193518"; } - - revision 2019-05-31 { - description "Ericsson refactoring."; - } - - revision 2018-08-07 { - description "Initial revision"; - } - - grouping AMFFunctionGrp { - uses mf3gpp:ManagedFunctionGrp; - - list pLMNIdList { - min-elements 1; - description "A list of PLMN identifiers (Mobile Country Code and Mobile Network Code)."; - key "mcc mnc"; - uses types3gpp:PLMNId; - } - - container aMFIdentifier { - presence true; - description "An AMF identifier, comprising an AMF Region ID, an AMF Set ID and an AMF Pointer."; - uses types3gpp:AmfIdentifier; - } - - leaf sBIFQDN { - description "The FQDN of the registered NF instance in the service-based interface."; - type inet:domain-name; - } - - leaf-list sNSSAIList { - min-elements 0; // conditionally mandatory if network slicing feature is supported - description "List of S-NSSAIs the managed object is capable of supporting. - (Single Network Slice Selection Assistance Information) - An S-NSSAI has an SST (Slice/Service type) and an optional SD - (Slice Differentiator) field."; - reference "3GPP TS 23.003"; - type types3gpp:SNssai; - } - - list managedNFProfile { - key idx; - min-elements 1; - uses types3gpp:ManagedNFProfile; - } - - list commModelList { - min-elements 1; - key "groupId"; - uses types5g3gpp:CommModel; - } - - } - - augment "/me3gpp:ManagedElement" { - list AMFFunction { - description "5G Core AMF Function"; - reference "3GPP TS 28.541"; - key id; - uses top3gpp:Top_Grp; - container attributes { - uses AMFFunctionGrp; - } - uses mf3gpp:ManagedFunctionContainedClasses; - } - } -} \ No newline at end of file diff --git a/yang-models/_3gpp-5gc-nrm-amfregion.yang b/yang-models/_3gpp-5gc-nrm-amfregion.yang deleted file mode 100755 index 5a42f2aa7..000000000 --- a/yang-models/_3gpp-5gc-nrm-amfregion.yang +++ /dev/null @@ -1,75 +0,0 @@ -module _3gpp-5gc-nrm-amfregion { - yang-version 1.1; - namespace urn:3gpp:sa5:_3gpp-5gc-nrm-amfregion; - prefix amfr3gpp; - - import _3gpp-common-yang-types { prefix types3gpp; } - import _3gpp-common-subnetwork { prefix subnet3gpp; } - import _3gpp-common-top { prefix top3gpp; } - import _3gpp-common-managed-function { prefix mf3gpp; } - - description "This IOC represents the AMF Region which consists one or multiple AMF Sets."; - - revision 2019-10-28 { reference S5-193518 ; } - revision 2019-06-11 { - description "Ericsson refactoring."; - } - - grouping AMFRegionGrp { - uses mf3gpp:ManagedFunctionGrp; - - list pLMNIdList { - description "List of at most six entries of PLMN Identifiers, but at least one (the primary PLMN Id). - The PLMN Identifier is composed of a Mobile Country Code (MCC) and a Mobile Network Code (MNC)."; - - min-elements 1; - max-elements 6; - key "mcc mnc"; - uses types3gpp:PLMNId; - } - - leaf-list nRTACList { - description "List of Tracking Area Codes (legacy TAC or extended TAC) - where the represented management function is serving."; - reference "TS 38.413 clause 9.3.3.10"; - min-elements 1; - config false; - type types3gpp:Tac; - } - - leaf-list sNSSAIList { - description "List of S-NSSAIs the managed object is capable of supporting. - (Single Network Slice Selection Assistance Information) - An S-NSSAI has an SST (Slice/Service type) and an optional SD - (Slice Differentiator) field."; - //conditional support only if the network slicing feature is supported. - reference "3GPP TS 23.003"; - type types3gpp:SNssai; - } - - leaf aMFRegionId { - description "Represents the AMF Region ID, which identifies the region."; - mandatory true; - type types3gpp:AmfRegionId; - } - - leaf-list aMFSet { - description "The AMFSet that the AFMRegion is associated with."; - min-elements 1; - type instance-identifier; - } - } - - augment "/subnet3gpp:SubNetwork" { - list AMFRegion { - description "5G Core AMFRegion IOC"; - reference "3GPP TS 28.541"; - key id; - uses top3gpp:Top_Grp; - container attributes { - uses AMFRegionGrp; - } - uses mf3gpp:ManagedFunctionContainedClasses; - } - } -} \ No newline at end of file diff --git a/yang-models/_3gpp-5gc-nrm-amfset.yang b/yang-models/_3gpp-5gc-nrm-amfset.yang deleted file mode 100755 index 325584cfa..000000000 --- a/yang-models/_3gpp-5gc-nrm-amfset.yang +++ /dev/null @@ -1,75 +0,0 @@ -module _3gpp-5gc-nrm-amfset { - yang-version 1.1; - namespace urn:3gpp:sa5:_3gpp-5gc-nrm-amfset; - prefix amfset3gpp; - - import _3gpp-common-yang-types { prefix types3gpp; } - import _3gpp-common-subnetwork { prefix subnet3gpp; } - import _3gpp-common-top { prefix top3gpp; } - import _3gpp-common-managed-function { prefix mf3gpp; } - - description "This IOC represents the AMF Set which consists of some AMFs that serve a given area and Network Slice."; - - revision 2019-10-28 { reference S5-193518 ; } - revision 2019-06-11 { - description "Ericsson refactoring."; - } - - grouping AMFSetGrp { - uses mf3gpp:ManagedFunctionGrp; - - list pLMNIdList { - description "List of at most six entries of PLMN Identifiers, but at least one (the primary PLMN Id). - The PLMN Identifier is composed of a Mobile Country Code (MCC) and a Mobile Network Code (MNC)."; - - min-elements 1; - max-elements 6; - key "mcc mnc"; - uses types3gpp:PLMNId; - } - - leaf-list nRTACList { - description "List of Tracking Area Codes (legacy TAC or extended TAC) - where the represented management function is serving."; - reference "TS 38.413 clause 9.3.3.10"; - min-elements 1; - config false; - type types3gpp:Tac; - } - - leaf-list sNSSAIList { - description "List of S-NSSAIs the managed object is capable of supporting. - (Single Network Slice Selection Assistance Information) - An S-NSSAI has an SST (Slice/Service type) and an optional SD - (Slice Differentiator) field."; - //conditional support only if the network slicing feature is supported. - reference "3GPP TS 23.003"; - type types3gpp:SNssai; - } - - leaf aMFRegion { - description "The AMFRegion that the AFMSet is associated with."; - type instance-identifier; - } - - leaf-list aMFSetMemberList { - description "List of DNs of AMFFunction instances of the AMFSet."; - min-elements 1; - max-elements 1; - type types3gpp:DistinguishedName; - } - } - - augment "/subnet3gpp:SubNetwork" { - list AMFSet { - description "5G Core AMFSet IOC"; - reference "3GPP TS 28.541"; - key id; - uses top3gpp:Top_Grp; - container attributes { - uses AMFSetGrp; - } - uses mf3gpp:ManagedFunctionContainedClasses; - } - } -} \ No newline at end of file diff --git a/yang-models/_3gpp-5gc-nrm-ausffunction.yang b/yang-models/_3gpp-5gc-nrm-ausffunction.yang deleted file mode 100755 index 16c0b5e01..000000000 --- a/yang-models/_3gpp-5gc-nrm-ausffunction.yang +++ /dev/null @@ -1,79 +0,0 @@ -module _3gpp-5gc-nrm-ausffunction { - yang-version 1.1; - - namespace urn:3gpp:sa5:_3gpp-5gc-nrm-ausffunction; - prefix ausf3gpp; - - import _3gpp-common-managed-function { prefix mf3gpp; } - import _3gpp-common-managed-element { prefix me3gpp; } - import ietf-inet-types { prefix inet; } - import _3gpp-5g-common-yang-types { prefix types5g3gpp; } - import _3gpp-common-yang-types { prefix types3gpp; } - import _3gpp-common-top { prefix top3gpp; } - - organization "3gpp SA5"; - description "This IOC represents the AUSF function in 5GC. For more information about the AUSF, see 3GPP TS 23.501."; - reference "3GPP TS 28.541"; - - - revision 2019-10-25 { reference "S5-194457 S5-193518"; } - - revision 2019-05-22 { - description "initial revision"; - } - - grouping AUSFFuntionGrp { - uses mf3gpp:ManagedFunctionGrp; - - list pLMNIdList { - description "List of at most six entries of PLMN Identifiers, but at least one (the primary PLMN Id). - The PLMN Identifier is composed of a Mobile Country Code (MCC) and a Mobile Network Code (MNC)."; - - min-elements 1; - max-elements 6; - key "mcc mnc"; - uses types3gpp:PLMNId; - } - - leaf sBIFQDN { - description "The FQDN of the registered NF instance in the service-based interface."; - type inet:domain-name; - } - - leaf-list sNSSAIList { - description "List of S-NSSAIs the managed object is capable of supporting. - (Single Network Slice Selection Assistance Information) - An S-NSSAI has an SST (Slice/Service type) and an optional SD - (Slice Differentiator) field."; - //optional support - reference "3GPP TS 23.003"; - type types3gpp:SNssai; - } - - list managedNFProfile { - key idx; - min-elements 1; - uses types3gpp:ManagedNFProfile; - } - - - list commModelList { - min-elements 1; - key "groupId"; - uses types5g3gpp:CommModel; - } - } - - augment "/me3gpp:ManagedElement" { - list AUSFFunction { - description "5G Core AUSF Function"; - reference "3GPP TS 28.541"; - key id; - uses top3gpp:Top_Grp; - container attributes { - uses AUSFFuntionGrp; - } - uses mf3gpp:ManagedFunctionContainedClasses; - } - } -} \ No newline at end of file diff --git a/yang-models/_3gpp-5gc-nrm-configurable5qiset.yang b/yang-models/_3gpp-5gc-nrm-configurable5qiset.yang deleted file mode 100755 index 2a402a96e..000000000 --- a/yang-models/_3gpp-5gc-nrm-configurable5qiset.yang +++ /dev/null @@ -1,125 +0,0 @@ -module _3gpp-5gc-nrm-configurable5qiset { - yang-version 1.1; - - namespace urn:3gpp:sa5:_3gpp-5gc-nrm-configurable5qiset; - prefix Conf5QIs3gpp; - - import _3gpp-common-top { prefix top3gpp; } - import _3gpp-common-managed-element { prefix me3gpp; } - import _3gpp-common-subnetwork { prefix subnet3gpp; } - - organization "3gpp SA5"; - contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; - description "This IOC represents the non-standardized 5QIs, including - their QoS characteristics, that need to be pre-configured - (and configurable) to the 5G NFs."; - reference "3GPP TS 28.541"; - - revision 2020-08-03 { reference "CR-0321"; } - revision 2020-06-03 { reference "CR-0286"; } - - grouping PacketErrorRate { - leaf scalar { - type uint32 { - range 0..9 ; - } - mandatory true; - description "The Packet Error Rate of a 5QI expressed as Scalar x 10-k - where k is the Exponent."; - } - leaf exponent { - type uint32 { - range 0..9 ; - } - mandatory true; - description "The Packet Error Rate of a 5QI expressed as Scalar x 10-k, - where k is the Exponent."; - } - } - - grouping FiveQICharacteristics { - leaf fiveQIValue { - type uint32 { - range 0..255 ; - } - mandatory true; - description "Identifies the 5QI value."; - } - - leaf resourceType { - type enumeration { - enum GBR; - enum NON_GBR; - } - mandatory true; - description "It indicates the Resource Type of a 5QI, as specified - in TS 23.501 "; - } - - leaf priorityLevel { - type uint32 { - range 0..127 ; - } - } - - leaf packetDelayBudget { - type uint32 { - range 0..1023 ; - } - description "Indicates the Packet Delay Budget (in unit of 0.5ms)of a 5QI, - as specified in TS 23.501 "; - } - - list packetErrorRate { - key "scalar exponent"; - min-elements 0; - max-elements 1; - uses PacketErrorRate; - reference "TS 23.501"; - } - - leaf averagingWindow { - type uint32 { - range 0..4095 ; - } - units ms; - reference "TS 23.501"; - } - - leaf maximumDataBurstVolume { - type uint32{ - range 0..4095 ; - } - units byte; - } - } - - grouping Configurable5QISetGrp { - description "Represents the Configurable5QISet IOC."; - list configurable5QIs { - key "fiveQIValue"; - uses FiveQICharacteristics; - } - } - - grouping Configurable5QISetSubtree { - list Configurable5QISet { - description "Specifies the non-standardized 5QIs, including their QoS - characteristics, that need to be pre-configured (and configurable) to - the 5G NFs, see 3GPP TS 23.501."; - key id; - uses top3gpp:Top_Grp; - container attributes { - uses Configurable5QISetGrp; - } - } - } - - augment "/subnet3gpp:SubNetwork" { - uses Configurable5QISetSubtree; - } - - augment "/me3gpp:ManagedElement" { - uses Configurable5QISetSubtree; - } -} \ No newline at end of file diff --git a/yang-models/_3gpp-5gc-nrm-dnfunction.yang b/yang-models/_3gpp-5gc-nrm-dnfunction.yang deleted file mode 100755 index 675c3b1aa..000000000 --- a/yang-models/_3gpp-5gc-nrm-dnfunction.yang +++ /dev/null @@ -1,39 +0,0 @@ -module _3gpp-5gc-nrm-dnfunction { - yang-version 1.1; - - namespace urn:3gpp:sa5_3gpp-5gc-nrm-dnfunction; - prefix dn3gpp; - - import _3gpp-common-managed-function { prefix mf3gpp; } - import _3gpp-common-managed-element { prefix me3gpp; } - import _3gpp-common-top { prefix top3gpp; } - - organization "3gpp SA5"; - description "This IOC is defined only to describe the IOCs representing - Data Network (DN) interaction interface with 5GC (i.e. EP_N6). - It has no attributes defined."; - reference "3GPP TS 28.541"; - - revision 2019-10-28 { reference S5-193518 ; } - - revision 2019-05-15 { - description "initial revision"; - } - - grouping DNFunctionGrp { - uses mf3gpp:ManagedFunctionGrp; - } - - augment "/me3gpp:ManagedElement" { - list DNFunction { - description "5G Core DN Function"; - reference "3GPP TS 28.541"; - key id; - uses top3gpp:Top_Grp; - container attributes { - uses DNFunctionGrp; - } - uses mf3gpp:ManagedFunctionContainedClasses; - } - } -} \ No newline at end of file diff --git a/yang-models/_3gpp-5gc-nrm-dynamic5qiset.yang b/yang-models/_3gpp-5gc-nrm-dynamic5qiset.yang deleted file mode 100755 index 3668cea21..000000000 --- a/yang-models/_3gpp-5gc-nrm-dynamic5qiset.yang +++ /dev/null @@ -1,46 +0,0 @@ -module _3gpp-5gc-nrm-dynamic5qiset { - yang-version 1.1; - - namespace urn:3gpp:sa5:_3gpp-5gc-nrm-dynamic5qiset; - prefix dyn5QIs3gpp; - - import _3gpp-common-top { prefix top3gpp; } - import _3gpp-common-subnetwork { prefix subnet3gpp; } - import _3gpp-common-managed-element { prefix me3gpp; } - import _3gpp-5gc-nrm-configurable5qiset { prefix Conf5QIs3gpp; } - - organization "3gpp SA5"; - contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; - description "This IOC represents the dynamic 5QIs including their QoS characteristics."; - reference "3GPP TS 28.541"; - - revision 2020-08-06 { reference "CR-0333"; } - - grouping Dynamic5QISetGrp { - description "Represents the Dynamic5QISet IOC."; - list dynamic5QIs { - key "fiveQIValue"; - uses Conf5QIs3gpp:FiveQICharacteristics; - } - } - - grouping Dynamic5QISetSubtree { - list Dynamic5QISet { - description "Specifies the dynamic 5QIs including their QoS - characteristics, see 3GPP TS 23.501."; - key "id"; - uses top3gpp:Top_Grp; - container attributes { - uses Dynamic5QISetGrp; - } - } - } - - augment "/subnet3gpp:SubNetwork" { - uses Dynamic5QISetSubtree; - } - - augment "/me3gpp:ManagedElement" { - uses Dynamic5QISetSubtree; - } -} \ No newline at end of file diff --git a/yang-models/_3gpp-5gc-nrm-ep.yang b/yang-models/_3gpp-5gc-nrm-ep.yang deleted file mode 100755 index fdd210297..000000000 --- a/yang-models/_3gpp-5gc-nrm-ep.yang +++ /dev/null @@ -1,646 +0,0 @@ -module _3gpp-5gc-nrm-ep { - yang-version 1.1; - namespace "urn:3gpp:tsg:sa5:nrm:_3gpp-5gc-nrm-ep"; - prefix "cep3gpp"; - - import _3gpp-common-ep-rp { prefix eprp3gpp; } - import _3gpp-common-managed-element { prefix me3gpp; } - import _3gpp-5gc-nrm-affunction { prefix af3gpp; } - import _3gpp-5gc-nrm-amffunction { prefix amf3gpp; } - import _3gpp-5gc-nrm-ausffunction { prefix ausf3gpp; } - import _3gpp-5gc-nrm-dnfunction { prefix dn3gpp; } - import _3gpp-5gc-nrm-lmffunction { prefix lmf3gpp; } - import _3gpp-5gc-nrm-n3iwffunction { prefix n3iwf3gpp; } - import _3gpp-5gc-nrm-ngeirfunction { prefix ngeir3gpp; } - import _3gpp-5gc-nrm-nrffunction { prefix nrf3gpp; } - import _3gpp-5gc-nrm-nssffunction { prefix nssf3gpp; } - import _3gpp-5gc-nrm-pcffunction { prefix pcf3gpp; } - import _3gpp-5gc-nrm-seppfunction { prefix sepp3gpp; } - import _3gpp-5gc-nrm-smffunction { prefix smf3gpp; } - import _3gpp-5gc-nrm-smsffunction { prefix smsf3gpp; } - import _3gpp-5gc-nrm-udmfunction { prefix udm3gpp; } - import _3gpp-5gc-nrm-upffunction { prefix upf3gpp; } - import _3gpp-common-yang-types { prefix types3gpp; } - import _3gpp-common-top { prefix top3gpp; } - import ietf-inet-types { prefix inet; } - - organization "3GPP SA5"; - description "Defines the YANG mapping of the 5GC related endpoint - Information Object Classes (IOCs) that are part of the 5G Core - Network Resource Model."; - reference "3GPP TS 28.541"; - - revision 2019-11-18 { - description "Ericsson refactoring."; - } - - revision 2018-07-31 { - description "Initial revision"; - } - - grouping EP_N2Grp { - uses eprp3gpp:EP_Common; - } - - grouping EP_N3Grp { - uses eprp3gpp:EP_Common; - } - - grouping EP_N4Grp { - uses eprp3gpp:EP_Common; - } - - grouping EP_N5Grp { - uses eprp3gpp:EP_Common; - } - - grouping EP_N6Grp { - uses eprp3gpp:EP_Common; - } - - grouping EP_N7Grp { - uses eprp3gpp:EP_Common; - } - - grouping EP_N8Grp { - uses eprp3gpp:EP_Common; - } - - grouping EP_N9Grp { - uses eprp3gpp:EP_Common; - } - - grouping EP_N10Grp { - uses eprp3gpp:EP_Common; - } - - grouping EP_N11Grp { - uses eprp3gpp:EP_Common; - } - - grouping EP_N12Grp { - uses eprp3gpp:EP_Common; - } - - grouping EP_N13Grp { - uses eprp3gpp:EP_Common; - } - - grouping EP_N14Grp { - uses eprp3gpp:EP_Common; - } - - grouping EP_N15Grp { - uses eprp3gpp:EP_Common; - } - - grouping EP_N16Grp { - uses eprp3gpp:EP_Common; - } - - grouping EP_N17Grp { - uses eprp3gpp:EP_Common; - } - - grouping EP_N20Grp { - uses eprp3gpp:EP_Common; - } - - grouping EP_N21Grp { - uses eprp3gpp:EP_Common; - } - - grouping EP_N22Grp { - uses eprp3gpp:EP_Common; - } - - grouping EP_N26Grp { - uses eprp3gpp:EP_Common; - } - - grouping EP_N27Grp { - uses eprp3gpp:EP_Common; - } - - grouping EP_N31Grp { - uses eprp3gpp:EP_Common; - } - - grouping EP_N32Grp { - uses eprp3gpp:EP_Common; - container remotePlmnId { - description "PLMN Identifiers of the remote sepp. - The PLMN Identifier is composed of a Mobile Country Code (MCC) and a Mobile Network Code (MNC)."; - uses types3gpp:PLMNId; - } - - leaf remoteSeppAddress { - description "The host address of the SEPP."; - type inet:host; - } - - leaf remoteSeppId { - type uint16; - } - - leaf n32cParas { - type string; - } - - leaf n32fPolicy { - type string; - } - - leaf withIPX { - type boolean; - } - } - - grouping EP_S5CGrp { - uses eprp3gpp:EP_Common; - } - - grouping EP_S5UGrp { - uses eprp3gpp:EP_Common; - } - - grouping EP_RxGrp { - uses eprp3gpp:EP_Common; - } - - grouping EP_MAP_SMSCGrp { - uses eprp3gpp:EP_Common; - } - - grouping EP_NLSGrp { - uses eprp3gpp:EP_Common; - } - - grouping EP_NLGGrp { - uses eprp3gpp:EP_Common; - } - - grouping EP_SBI_IPXGrp { - uses eprp3gpp:EP_Common; - leaf-list sBIService { - min-elements 1; - config false; - type string; - } - } - - augment "/me3gpp:ManagedElement/af3gpp:AFFunction" { - list EP_N6 { - description "Represents the EP_N6 IOC."; - key id; - uses top3gpp:Top_Grp; - container attributes { - uses EP_N6Grp; - } - } - - list EP_Rx { - description "Represents the EP_Rx IOC."; - key id; - uses top3gpp:Top_Grp; - container attributes { - uses EP_RxGrp; - } - } - } - - augment "/me3gpp:ManagedElement/amf3gpp:AMFFunction" { - list EP_N2 { - description "Represents the EP_N2 IOC."; - key id; - uses top3gpp:Top_Grp; - container attributes { - uses EP_N2Grp; - } - } - - list EP_N8 { - description "Represents the EP_N8 IOC."; - key id; - uses top3gpp:Top_Grp; - container attributes { - uses EP_N8Grp; - } - } - - list EP_N11 { - description "Represents the EP_N11 IOC."; - key id; - uses top3gpp:Top_Grp; - container attributes { - uses EP_N11Grp; - } - } - - list EP_N12 { - description "Represents the EP_N12 IOC."; - key id; - uses top3gpp:Top_Grp; - container attributes { - uses EP_N12Grp; - } - } - - list EP_N14 { - description "Represents the EP_N14 IOC."; - key id; - uses top3gpp:Top_Grp; - container attributes { - uses EP_N14Grp; - } - } - - list EP_N15 { - description "Represents the EP_N15 IOC."; - key id; - uses top3gpp:Top_Grp; - container attributes { - uses EP_N15Grp; - } - } - - list EP_N17 { - description "Represents the EP_N17 IOC."; - key id; - uses top3gpp:Top_Grp; - container attributes { - uses EP_N17Grp; - } - } - - list EP_N20 { - description "Represents the EP_N20 IOC."; - key id; - uses top3gpp:Top_Grp; - container attributes { - uses EP_N20Grp; - } - } - - list EP_N22 { - description "Represents the EP_N22 IOC."; - key id; - uses top3gpp:Top_Grp; - container attributes { - uses EP_N22Grp; - } - } - - list EP_N26 { - description "Represents the EP_N26 IOC."; - key id; - uses top3gpp:Top_Grp; - container attributes { - uses EP_N26Grp; - } - } - - list EP_NLS { - description "Represents the EP_NLS IOC."; - key id; - uses top3gpp:Top_Grp; - container attributes { - uses EP_NLSGrp; - } - } - - list EP_NLG { - description "Represents the EP_NLG IOC."; - key id; - uses top3gpp:Top_Grp; - container attributes { - uses EP_NLGGrp; - } - } - } - - augment "/me3gpp:ManagedElement/ausf3gpp:AUSFFunction" { - list EP_N12 { - description "Represents the EP_N12 IOC."; - key id; - uses top3gpp:Top_Grp; - container attributes { - uses EP_N12Grp; - } - } - - list EP_N13 { - description "Represents the EP_N13 IOC."; - key id; - uses top3gpp:Top_Grp; - container attributes { - uses EP_N13Grp; - } - } - } - - augment "/me3gpp:ManagedElement/dn3gpp:DNFunction" { - list EP_N6 { - description "Represents the EP_N6 IOC."; - key id; - uses top3gpp:Top_Grp; - container attributes { - uses EP_N6Grp; - } - } - } - - augment "/me3gpp:ManagedElement/lmf3gpp:LMFFunction" { - list EP_NLS { - description "Represents the EP_NLS IOC."; - key id; - uses top3gpp:Top_Grp; - container attributes { - uses EP_NLSGrp; - } - } - } - - augment "/me3gpp:ManagedElement/n3iwf3gpp:N3IWFFunction" { - list EP_N2 { - description "Represents the EP_N2 IOC."; - key id; - uses top3gpp:Top_Grp; - container attributes { - uses EP_N2Grp; - } - } - - list EP_N3 { - description "Represents the EP_N3 IOC."; - key id; - uses top3gpp:Top_Grp; - container attributes { - uses EP_N3Grp; - } - } - } - - augment "/me3gpp:ManagedElement/ngeir3gpp:NGEIRFunction" { - list EP_N17 { - description "Represents the EP_N17 IOC."; - key id; - uses top3gpp:Top_Grp; - container attributes { - uses EP_N17Grp; - } - } - } - - augment "/me3gpp:ManagedElement/nrf3gpp:NRFFunction" { - list EP_N27 { - description "Represents the EP_N27 IOC."; - key id; - uses top3gpp:Top_Grp; - container attributes { - uses EP_N26Grp; - } - } - - } - - augment "/me3gpp:ManagedElement/nssf3gpp:NSSFFunction" { - list EP_N22 { - description "Represents the EP_N22 IOC."; - key id; - uses top3gpp:Top_Grp; - container attributes { - uses EP_N22Grp; - } - } - - list EP_N31 { - description "Represents the EP_N31 IOC."; - key id; - uses top3gpp:Top_Grp; - container attributes { - uses EP_N31Grp; - } - } - } - - augment "/me3gpp:ManagedElement/pcf3gpp:PCFFunction" { - list EP_N5 { - description "Represents the EP_N5 IOC."; - key id; - uses top3gpp:Top_Grp; - container attributes { - uses EP_N5Grp; - } - } - - list EP_N7 { - description "Represents the EP_N7 IOC."; - key id; - uses top3gpp:Top_Grp; - container attributes { - uses EP_N7Grp; - } - } - - list EP_N15 { - description "Represents the EP_N15 IOC."; - key id; - uses top3gpp:Top_Grp; - container attributes { - uses EP_N15Grp; - } - } - - list EP_N16 { - description "Represents the EP_N16 IOC."; - key id; - uses top3gpp:Top_Grp; - container attributes { - uses EP_N16Grp; - } - } - - list EP_Rx { - description "Represents the EP_Rx IOC."; - key id; - uses top3gpp:Top_Grp; - container attributes { - uses EP_RxGrp; - } - } - } - - augment "/me3gpp:ManagedElement/sepp3gpp:SEPPFunction" { - list EP_N32 { - description "Represents the EP_N32 IOC."; - key id; - uses top3gpp:Top_Grp; - container attributes { - uses EP_N32Grp; - } - } - - } - augment "/me3gpp:ManagedElement/smsf3gpp:SMSFFunction" { - list EP_N20 { - description "Represents the EP_20 IOC."; - key id; - uses top3gpp:Top_Grp; - container attributes { - uses EP_N20Grp; - } - } - - list EP_N21 { - description "Represents the EP_N21 IOC."; - key id; - uses top3gpp:Top_Grp; - container attributes { - uses EP_N21Grp; - } - } - - list EP_MAP_SMSC { - description "Represents the EP_MAP_SMSC IOC."; - key id; - uses top3gpp:Top_Grp; - container attributes { - uses EP_MAP_SMSCGrp; - } - } - } - - augment "/me3gpp:ManagedElement/smf3gpp:SMFFunction" { - list EP_N4 { - description "Represents the EP_N4 IOC."; - key id; - uses top3gpp:Top_Grp; - container attributes { - uses EP_N4Grp; - } - } - - list EP_N7 { - description "Represents the EP_N7 IOC."; - key id; - uses top3gpp:Top_Grp; - container attributes { - uses EP_N7Grp; - } - } - - list EP_N10 { - description "Represents the EP_N10 IOC."; - key id; - uses top3gpp:Top_Grp; - container attributes { - uses EP_N10Grp; - } - } - - list EP_N11 { - description "Represents the EP_N11 IOC."; - key id; - uses top3gpp:Top_Grp; - container attributes { - uses EP_N11Grp; - } - } - - list EP_N16 { - description "Represents the EP_N16 IOC."; - key id; - uses top3gpp:Top_Grp; - container attributes { - uses EP_N16Grp; - } - } - - list EP_S5C { - description "Represents the EP_S5C IOC."; - key id; - uses top3gpp:Top_Grp; - container attributes { - uses EP_S5CGrp; - } - } - } - - augment "/me3gpp:ManagedElement/udm3gpp:UDMFunction" { - list EP_N8 { - description "Represents the EP_N8 IOC."; - key id; - uses top3gpp:Top_Grp; - container attributes { - uses EP_N8Grp; - } - } - - list EP_N10 { - description "Represents the EP_N10 IOC."; - key id; - uses top3gpp:Top_Grp; - container attributes { - uses EP_N10Grp; - } - } - - list EP_N13 { - description "Represents the EP_N13 IOC."; - key id; - uses top3gpp:Top_Grp; - container attributes { - uses EP_N13Grp; - } - } - - } - - augment "/me3gpp:ManagedElement/upf3gpp:UPFFunction" { - list EP_N4 { - description "Represents the EP_N4 IOC."; - key id; - uses top3gpp:Top_Grp; - container attributes { - uses EP_N4Grp; - } - } - - list EP_N3 { - description "Represents the EP_N3 IOC."; - key id; - uses top3gpp:Top_Grp; - container attributes { - uses EP_N3Grp; - } - } - - list EP_N9 { - description "Represents the EP_N9 IOC."; - key id; - uses top3gpp:Top_Grp; - container attributes { - uses EP_N9Grp; - } - } - - list EP_S5U { - description "Represents the EP_S5U IOC."; - key id; - uses top3gpp:Top_Grp; - container attributes { - uses EP_S5UGrp; - } - } - - list EP_EP_N6 { - description "Represents the EP_N6 IOC."; - key id; - uses top3gpp:Top_Grp; - container attributes { - uses EP_N6Grp; - } - } - } -} \ No newline at end of file diff --git a/yang-models/_3gpp-5gc-nrm-externalnrffunction.yang b/yang-models/_3gpp-5gc-nrm-externalnrffunction.yang deleted file mode 100755 index 95f1cea5e..000000000 --- a/yang-models/_3gpp-5gc-nrm-externalnrffunction.yang +++ /dev/null @@ -1,42 +0,0 @@ -module _3gpp-5gc-nrm-externalnrffunction { - yang-version 1.1; - namespace urn:3gpp:sa5:_3gpp-5gc-nrm-externalnrffunction; - prefix extnrf3gpp; - - import _3gpp-common-yang-types { prefix types3gpp; } - import _3gpp-common-subnetwork { prefix subnet3gpp; } - import _3gpp-common-top { prefix top3gpp; } - import _3gpp-common-managed-function { prefix mf3gpp; } - - description "This IOC represents external NRF function controlled by another management domain."; - - revision 2019-10-28 { reference S5-193518 ; } - revision 2019-06-11 { - description "Ericsson refactoring."; - } - - grouping ExternalNRFFunctionGrp { - uses mf3gpp:ManagedFunctionGrp; - - list pLMNIdList { - description "List of at most six entries of PLMN Identifiers, but at least one (the primary PLMN Id). - The PLMN Identifier is composed of a Mobile Country Code (MCC) and a Mobile Network Code (MNC)."; - min-elements 1; - max-elements 6; - key "mcc mnc"; - uses types3gpp:PLMNId; - } - } - - augment "/subnet3gpp:SubNetwork" { - list ExternalNRFFunction { - description "5G Core External NRF Function"; - reference "3GPP TS 28.541"; - key id; - uses top3gpp:Top_Grp; - container attributes { - uses ExternalNRFFunctionGrp; - } - uses mf3gpp:ManagedFunctionContainedClasses; } - } -} \ No newline at end of file diff --git a/yang-models/_3gpp-5gc-nrm-externalnssffunction.yang b/yang-models/_3gpp-5gc-nrm-externalnssffunction.yang deleted file mode 100755 index 665977805..000000000 --- a/yang-models/_3gpp-5gc-nrm-externalnssffunction.yang +++ /dev/null @@ -1,43 +0,0 @@ -module _3gpp-5gc-nrm-externalnssffunction { - yang-version 1.1; - namespace urn:3gpp:sa5:_3gpp-5gc-nrm-externalnssffunction; - prefix extnssf3gpp; - - import _3gpp-common-yang-types { prefix types3gpp; } - import _3gpp-common-subnetwork { prefix subnet3gpp; } - import _3gpp-common-top { prefix top3gpp; } - import _3gpp-common-managed-function { prefix mf3gpp; } - - description "This IOC represents external NSSF function controlled by another management domain."; - - revision 2019-10-28 { reference S5-193518 ; } - revision 2019-06-11 { - description "Ericsson refactoring."; - } - - grouping ExternalNSSFFunctionGrp { - uses mf3gpp:ManagedFunctionGrp; - - list pLMNIdList { - description "List of at most six entries of PLMN Identifiers, but at least one (the primary PLMN Id). - The PLMN Identifier is composed of a Mobile Country Code (MCC) and a Mobile Network Code (MNC)."; - min-elements 1; - max-elements 6; - key "mcc mnc"; - uses types3gpp:PLMNId; - } - } - - augment "/subnet3gpp:SubNetwork" { - list ExternalNSSFFunction { - description "5G Core External NSSF Function"; - reference "3GPP TS 28.541"; - key id; - uses top3gpp:Top_Grp; - container attributes { - uses ExternalNSSFFunctionGrp; - } - uses mf3gpp:ManagedFunctionContainedClasses; - } - } -} \ No newline at end of file diff --git a/yang-models/_3gpp-5gc-nrm-externalseppfunction.yang b/yang-models/_3gpp-5gc-nrm-externalseppfunction.yang deleted file mode 100755 index 38496aaaa..000000000 --- a/yang-models/_3gpp-5gc-nrm-externalseppfunction.yang +++ /dev/null @@ -1,55 +0,0 @@ -module _3gpp-5gc-nrm-externalseppfunction { - yang-version 1.1; - - namespace urn:3gpp:sa5:_3gpp-5gc-nrm-extternalseppfunction; - prefix extsepp3gpp; - - import _3gpp-common-managed-function { prefix mf3gpp; } - import _3gpp-common-managed-element { prefix me3gpp; } - import _3gpp-common-yang-types { prefix types3gpp; } - import _3gpp-common-top { prefix top3gpp; } - import ietf-inet-types { prefix inet; } - - organization "3gpp SA5"; - description "This IOC represents the external SEPP function which support message filtering - and policing on inter-PLMN control plane interface. For more information about the SEPP, see 3GPP TS 23.501."; - reference "3GPP TS 28.541"; - - revision 2019-11-17 { - description "initial revision"; - reference "Based on - 3GPP TS 28.541 V16.X.XX"; - } - - grouping ExternalSEPPFunctionGrp { - uses mf3gpp:ManagedFunctionGrp; - - container pLMNId { - description "PLMN Identifiers of the sepp. - The PLMN Identifier is composed of a Mobile Country Code (MCC) and a Mobile Network Code (MNC)."; - uses types3gpp:PLMNId; - } - - leaf sEPPId { - type uint16; - } - - leaf fqdn { - description "The domain name of the SEPP."; - type inet:domain-name; - } - - } - - augment "/me3gpp:ManagedElement" { - list ExternalSEPPFunction { - description "5G Core SEPP Function"; - reference "3GPP TS 28.541"; - key id; - uses top3gpp:Top_Grp; - container attributes { - uses ExternalSEPPFunctionGrp; - } - } - } -} \ No newline at end of file diff --git a/yang-models/_3gpp-5gc-nrm-lmffunction.yang b/yang-models/_3gpp-5gc-nrm-lmffunction.yang deleted file mode 100755 index ee9ec056a..000000000 --- a/yang-models/_3gpp-5gc-nrm-lmffunction.yang +++ /dev/null @@ -1,63 +0,0 @@ -module _3gpp-5gc-nrm-lmffunction { - yang-version 1.1; - - namespace urn:3gpp:sa5:_3gpp-5gc-nrm-lmffunction; - prefix lmf3gpp; - - import _3gpp-common-managed-function { prefix mf3gpp; } - import _3gpp-common-managed-element { prefix me3gpp; } - import _3gpp-common-yang-types { prefix types3gpp; } - import _3gpp-5g-common-yang-types { prefix types5g3gpp; } - import _3gpp-common-top { prefix top3gpp; } - - organization "3gpp SA5"; - description "This IOC represents the LMF function defined in 3GPP TS 23.501."; - reference "3GPP TS 28.541"; - - revision 2019-10-25 { reference "S5-194457 S5193518"; } - - revision 2019-05-15 { - description "initial revision"; - reference "Based on - 3GPP TS 28.541 V15.X.XX"; - } - - grouping LMFFunctionGrp { - uses mf3gpp:ManagedFunctionGrp; - - list pLMNIdList { - description "List of at most six entries of PLMN Identifiers, but at least one (the primary PLMN Id). - The PLMN Identifier is composed of a Mobile Country Code (MCC) and a Mobile Network Code (MNC)."; - - min-elements 1; - max-elements 6; - key "mcc mnc"; - uses types3gpp:PLMNId; - } - - list managedNFProfile { - key idx; - min-elements 1; - uses types3gpp:ManagedNFProfile; - } - - list commModelList { - min-elements 1; - key "groupId"; - uses types5g3gpp:CommModel; - } - } - - augment "/me3gpp:ManagedElement" { - list LMFFunction { - description "5G Core LMF Function"; - reference "3GPP TS 28.541"; - key id; - uses top3gpp:Top_Grp; - container attributes { - uses LMFFunctionGrp; - } - uses mf3gpp:ManagedFunctionContainedClasses; - } - } -} \ No newline at end of file diff --git a/yang-models/_3gpp-5gc-nrm-n3iwffunction.yang b/yang-models/_3gpp-5gc-nrm-n3iwffunction.yang deleted file mode 100755 index 05ca146ca..000000000 --- a/yang-models/_3gpp-5gc-nrm-n3iwffunction.yang +++ /dev/null @@ -1,55 +0,0 @@ -module _3gpp-5gc-nrm-n3iwffunction { - yang-version 1.1; - - namespace urn:3gpp:sa5:_3gpp-5gc-nrm-n3iwffunction; - prefix n3iwf3gpp; - - import _3gpp-common-managed-function { prefix mf3gpp; } - import _3gpp-common-managed-element { prefix me3gpp; } - import _3gpp-common-yang-types { prefix types3gpp; } - import _3gpp-5g-common-yang-types { prefix types5g3gpp; } - import _3gpp-common-top { prefix top3gpp; } - - organization "3gpp SA5"; - description "This IOC represents the N3IWF function which is used to enable non-3GPP - access networks connected to the 5GC. For more information about the N3IWF, see 3GPP TS 23.501."; - reference "3GPP TS 28.541"; - - revision 2019-10-28 { reference S5-193518 ; } - revision 2019-05-22 { - description "initial revision"; - } - - grouping N3IWFFunctionGrp { - uses mf3gpp:ManagedFunctionGrp; - - list pLMNIdList { - description "List of at most six entries of PLMN Identifiers, but at least one (the primary PLMN Id). - The PLMN Identifier is composed of a Mobile Country Code (MCC) and a Mobile Network Code (MNC)."; - - min-elements 1; - max-elements 6; - key "mcc mnc"; - uses types3gpp:PLMNId; - } - - list commModelList { - min-elements 1; - key "groupId"; - uses types5g3gpp:CommModel; - } - } - - augment "/me3gpp:ManagedElement" { - list N3IWFFunction { - description "5G Core N3IWF Function"; - reference "3GPP TS 28.541"; - key id; - uses top3gpp:Top_Grp; - container attributes { - uses N3IWFFunctionGrp; - } - uses mf3gpp:ManagedFunctionContainedClasses; - } - } -} \ No newline at end of file diff --git a/yang-models/_3gpp-5gc-nrm-neffunction.yang b/yang-models/_3gpp-5gc-nrm-neffunction.yang deleted file mode 100755 index f079e568f..000000000 --- a/yang-models/_3gpp-5gc-nrm-neffunction.yang +++ /dev/null @@ -1,66 +0,0 @@ -module _3gpp-5gc-nrm-neffunction { - yang-version 1.1; - - namespace urn:3gpp:sa5:_3gpp-5gc-nrm-neffunction; - prefix nef3gpp; - - import _3gpp-common-managed-function { prefix mf3gpp; } - import _3gpp-common-managed-element { prefix me3gpp; } - import ietf-inet-types { prefix inet; } - import _3gpp-common-yang-types { prefix types3gpp; } - import _3gpp-common-top { prefix top3gpp; } - - organization "3gpp SA5"; - description "This IOC represents the NEF function in 5GC. For more information about the NEF, see 3GPP TS 23.501."; - reference "3GPP TS 28.541"; - - revision 2019-10-20 { - description "initial revision"; - reference "Based on - 3GPP TS 28.541 V16.X.XX"; - } - - grouping NEFFunctionGrp { - uses mf3gpp:ManagedFunctionGrp; - - leaf sBIFQDN { - description "The FQDN of the registered NF instance in the service-based interface."; - type inet:domain-name; - } - - leaf-list sNSSAIList { - description "List of S-NSSAIs the managed object is capable of supporting. - (Single Network Slice Selection Assistance Information) - An S-NSSAI has an SST (Slice/Service type) and an optional SD - (Slice Differentiator) field."; - type types3gpp:SNssai; - } - - leaf-list capabilityList { - description "List of supported capabilities of the NEF."; - reference "3GPP TS 23.003"; - type string; - } - - leaf isINEF { - type boolean; - } - - leaf isCAPIFSup { - type boolean; - } - - } - - augment "/me3gpp:ManagedElement" { - list NEFFunction { - description "5G Core NEF Function"; - reference "3GPP TS 28.541"; - key id; - uses top3gpp:Top_Grp; - container attributes { - uses NEFFunctionGrp; - } - } - } -} \ No newline at end of file diff --git a/yang-models/_3gpp-5gc-nrm-nfprofile.yang b/yang-models/_3gpp-5gc-nrm-nfprofile.yang deleted file mode 100755 index c5b0d609a..000000000 --- a/yang-models/_3gpp-5gc-nrm-nfprofile.yang +++ /dev/null @@ -1,1095 +0,0 @@ -module _3gpp-5gc-nrm-nfprofile { - yang-version 1.1; - - namespace urn:3gpp:sa5:_3gpp-5gc-nrm-nfprofile; - prefix nfp3gpp; - - import _3gpp-common-yang-types { prefix types3gpp; } - import ietf-inet-types { prefix inet; } - import ietf-yang-types { prefix yang; } - import _3gpp-5gc-nrm-nfservice { prefix nfs3gpp; } - - organization "3gpp SA5"; - description "NF profile class."; - reference "3GPP TS 29.510"; - - revision 2019-06-17 { - description "initial revision"; - } - - grouping NFProfileGrp { - leaf nfInstanceID { - description "String uniquely identifying a NF instance."; - mandatory true; - type string; - } - - leaf nfType { - description "Type of Network Function."; - mandatory true; - type types3gpp:NfType; - } - - leaf nfStatus { - description "Status of the NF Instance."; - mandatory true; - type NFStatus; - } - - leaf heartBeatTimer { - description "Time in seconds expected between 2 consecutive heart-beat messages from - an NF Instance to the NRF. It may be included in the registration request. - When present in the request it shall contain the heartbeat time proposed by the NF service consumer."; - //conditional support - type uint16; - } - - list plmnList { - description "PLMN(s) of the Network Function. - This IE shall be present if this information is available for the NF. - If not provided, PLMN ID(s) of the PLMN of the NRF are assumed for the NF."; - - //conditional support - min-elements 1; - key "mcc mnc"; - uses types3gpp:PLMNId; - } - - list sNssais { //is the key unique - description "S-NSSAIs of the Network Function. If not provided, the NF can serve any S-NSSAI. - When present this IE represents the list of S-NSSAIs supported in all the PLMNs listed in the plmnList IE."; - min-elements 1; - //optional support - key "sst sd"; - uses Snssai; - } - - list perPlmnSnssaiList { - description "This IE may be included when the list of S-NSSAIs supported by the NF for each PLMN it is supporting is different. - When present, this IE shall include the S-NSSAIs supported by the Network Function - for each PLMN supported by the Network Function. When present, this IE shall override sNssais IE."; - min-elements 1; - //optional support - key idx; //no obvious leaf to use as a key - leaf idx { type uint32; } - uses PlmnSnssai; - } - - leaf-list nsiList { - description "NSI identities of the Network Function. - If not provided, the NF can serve any NSI."; - //optional support - min-elements 1; - type string; - } - - leaf fqdn { - description "FQDN of the Network Function. For AMF, the FQDN registered with the NRF - shall be that of the AMF Name."; - //conditional support - type inet:domain-name; - } - - leaf interPlmnFqdn { - description "If the NF needs to be discoverable by other NFs in a different PLMN, - then an FQDN that is used for inter-PLMN routing is specified."; - //conditional support - type inet:domain-name; - } - - leaf-list ipv4Addresses { - description "IPv4 address(es) of the Network Function."; - min-elements 1; - //conditional support - type inet:ipv4-address; - } - - leaf-list ipv6Addresses { - description "IPv6 address(es) of the Network Function."; - min-elements 1; - //conditional support - type inet:ipv6-address; - } - - list allowedPlmns { - description "PLMNs allowed to access the NF instance. - If not provided, any PLMN is allowed to access the NF."; - - min-elements 1; - //optional support - key "mcc mnc"; - uses types3gpp:PLMNId; - } - - leaf-list allowedNfTypes { - description "Type of the NFs allowed to access the NF instance. - If not provided, any NF type is allowed to access the NF."; - min-elements 1; - //optional support - type types3gpp:NfType; - } - - leaf-list allowedNfDomains { - description "Pattern representing the NF domain names allowed to access the NF instance. - If not provided, any NF domain is allowed to access the NF."; - min-elements 1; - //optional support - type string; - } - - list allowedNssais { //is the key unique - description "S-NSSAI of the allowed slices to access the NF instance. - If not provided, any slice is allowed to access the NF."; - min-elements 1; - //optional support - key "sst sd"; - uses Snssai; - } - - leaf priority { - description "Priority (relative to other NFs of the same type) in the range of 0-65535, to be used for NF selection; - lower values indicate a higher priority. If priority is also present in the nfServiceList parameters, - those will have precedence over this value. The NRF may overwrite the received priority value when exposing - an NFProfile with the Nnrf_NFDiscovery service."; - //optional support - type uint16; - } - - leaf capacity { - description "Static capacity information in the range of 0-65535, expressed as a weight - relative to other NF instances of the same type; if capacity is also present - in the nfServiceList parameters, those will have precedence over this value."; - //optional support - type uint16; - } - - leaf load { - description "Dynamic load information, ranged from 0 to 100, indicates the current load percentage of the NF."; - //optional support - type types3gpp:Load; - } - - leaf locality { - description "Operator defined information about the location of the NF instance (e.g. geographic location, data center)."; - //optional support - type string; - } - - grouping udrInfo { - //optional support - - leaf groupId { - description "Identity of the UDR group that is served by the UDR instance. - If not provided, the UDR instance does not pertain to any UDR group."; - //optional support - type string; - } - - list supiRanges { - description "List of ranges of SUPI's whose profile data is available in the UDR instance."; - key "start end pattern"; - min-elements 1; - //optional support - uses SupiRange; - } - - list gpsiRanges { - description "List of ranges of GPSIs whose profile data is available in the UDR instance."; - key "start end pattern"; - min-elements 1; - //optional support - uses IdentityRange; - } - - list externalGroupIdentifiersRanges { - description "List of ranges of external groups whose profile data is available in the UDR instance."; - key "start end pattern"; - min-elements 1; - //optional support - uses IdentityRange; - } - - leaf-list supportedDataSets { - description "List of supported data sets in the UDR instance. - If not provided, the UDR supports all data sets."; - min-elements 1; - //optional support - type DataSetId; - } - } - - grouping udmInfo { - //optional support - - leaf groupId { - description "Identity of the UDM group that is served by the UDM instance. - If not provided, the UDM instance does not pertain to any UDM group."; - //optional support - type string; - } - - list supiRanges { - description "List of ranges of SUPI's whose profile data is available in the UDM instance."; - key "start end pattern"; - min-elements 1; - //optional support - uses SupiRange; - } - - list gpsiRanges { - description "List of ranges of GPSIs whose profile data is available in the UDM instance."; - key "start end pattern"; - min-elements 1; - //optional support - uses IdentityRange; - } - - list externalGroupIdentifiersRanges { - description "List of ranges of external groups whose profile data is available in the UDM instance."; - key "start end pattern"; - min-elements 1; - //optional support - uses IdentityRange; - } - - leaf-list routingIndicators { - description "List of Routing Indicator information that allows to route network signalling with SUCI - to the UDM instance. If not provided, the UDM can serve any Routing Indicator. - Pattern: '^[0-9]{1,4}$'."; - //optional support - min-elements 1; - type string; - } - } - - grouping ausfInfo { - //optional support - - leaf groupId { - description "Identity of the AUSF group. If not provided, the AUSF instance does not pertain to any AUSF group."; - //optional support - type string; - } - - list supiRanges { - description "List of ranges of SUPIs that can be served by the AUSF instance. If not provided, the AUSF can serve any SUPI."; - key "start end pattern"; - min-elements 1; - //optional support - uses SupiRange; - } - - leaf-list routingIndicators { - description "List of Routing Indicator information that allows to route network signalling with SUCI - to the AUSF instance. If not provided, the AUSF can serve any Routing Indicator. - Pattern: '^[0-9]{1,4}$'."; - //optional support - min-elements 1; - type string; - } - } - - grouping amfInfo { - //optional support - - leaf amfRegionId { - description "AMF region identifier"; - type string; - } - - leaf amfSetId { - description "AMF set identifier"; - type string; - } - - list guamiList { - description "List of supported GUAMIs."; - - key idx; //no obvious leaf to use as a key - leaf idx { type uint32; } - - min-elements 1; - uses Guami; - } - - list taiList { - description "The list of TAIs the AMF can serve. It may contain the non-3GPP access TAI. - The absence of this attribute and the taiRangeList attribute indicate that - the AMF can be selected for any TAI in the serving network."; - - key idx; //no obvious leaf to use as a key - leaf idx { type uint32; } - - //optional support - min-elements 1; - uses Tai; - } - - list taiRangeList { - description "The range of TAIs the AMF can serve. The absence of this attribute and the taiList - attribute indicate that the AMF can be selected for any TAI in the serving network."; - //optional support - min-elements 1; - key idx; //no obvious leaf to use as a key - leaf idx { type uint32; } - uses TaiRange; - } - - list backupInfoAmfFailure { - description "List of GUAMIs for which the AMF acts as a backup for AMF failure."; - - key idx; //no obvious leaf to use as a key - leaf idx { type uint32; } - - //optional support - min-elements 1; - uses Guami; - } - - list backupInfoAmfRemoval { - description "List of GUAMIs for which the AMF acts as a backup for planned AMF removal."; - - key idx; //no obvious leaf to use as a key - leaf idx { type uint32; } - - //optional support - min-elements 1; - uses Guami; - } - - list n2InterfaceAmfInfo { - description "N2 interface information of the AMF. This information needs not be sent in NF Discovery responses. - It may be used by the NRF to update the DNS for AMF discovery by the 5G Access Network."; - - //optional support - max-elements 1; - key idx; //no obvious leaf to use as a key - leaf idx { type uint32; } - uses N2InterfaceAmfInfo; - } - } - - grouping smfInfo { - //optional support - - list sNssaiSmfInfoList { - description "List of parameters supported by the SMF per S-NSSAI."; - min-elements 1; - key idx; //no obvious leaf to use as a key - leaf idx { type uint32; } - uses sNssaiSmfInfoItem; - } - - list taiList { - description "The list of TAIs the SMF can serve. It may contain the non-3GPP access TAI. - The absence of this attribute and the taiRangeList attribute indicate that - the SMF can be selected for any TAI in the serving network."; - - key idx; //no obvious leaf to use as a key - leaf idx { type uint32; } - - //optional support - min-elements 1; - uses Tai; - } - - list taiRangeList { - description "The range of TAIs the SMF can serve. The absence of this attribute and the taiList - attribute indicate that the SMF can be selected for any TAI in the serving network."; - //optional support - min-elements 1; - key idx; //no obvious leaf to use as a key - leaf idx { type uint32; } - uses TaiRange; - } - - leaf pgwFqdn { - description "The FQDN of the PGW if the SMF is a combined SMF/PGW-C."; - //optional support - type inet:domain-name; - } - - leaf-list accessType { - description "If included, this IE shall contain the access type (3GPP_ACCESS and/or NON_3GPP_ACCESS) supported by the SMF. - If not included, it shall be assumed the both access types are supported."; - - //conditional support - min-elements 1; - max-elements 2; - type AccessType; - } - } - - grouping upfInfo { - //optional support - - list sNssaiUpfInfoList { - description "List of parameters supported by the UPF per S-NSSAI."; - min-elements 1; - key idx; //no obvious leaf to use as a key - leaf idx { type uint32; } - uses SnssaiUpfInfoItem; - } - - leaf-list smfServingArea { - description "The SMF service area(s) the UPF can serve. - If not provided, the UPF can serve any SMF service area."; - - //optional support - min-elements 1; - type string; - } - - list interfaceUpfInfo { - description "List of User Plane interfaces configured on the UPF. When this IE is provided in the NF Discovery response, - the NF Service Consumer (e.g. SMF) may use this information for UPF selection."; - - key idx; //no obvious leaf to use as a key - leaf idx { type uint32; } - - //optional support - min-elements 1; - uses InterfaceUpfInfoItem; - } - - leaf iwkEpsInd { - description "Indicates whether interworking with EPS is supported by the UPF. - true: Supported - false (default): Not Supported"; - - //optional support - type boolean; - } - - leaf-list pduSessionTypes { - description "List of PDU session type(s) supported by the UPF. The absence of this attribute indicates that the UPF can be selected - for any PDU session type."; - - //optional support - min-elements 1; - type PduSessionType; - } - } - - grouping pcfInfo { - //optional support - - leaf-list dnnList { - description "DNNs supported by the PCF. - If not provided, the PCF can serve any DNN."; - - //optional support - min-elements 1; - type string; - } - - list supiRanges { - description "List of ranges of SUPIs that can be served by the PCF instance. If not provided, the PCF can serve any SUPI."; - key "start end pattern"; - min-elements 1; - //optional support - uses SupiRange; - } - - leaf rxDiamHost { - description "This IE shall be present if the PCF supports Rx interface. - When present, this IE shall indicate the Diameter host of the Rx interface for the PCF. - Pattern: '^([A-Za-z0-9]+(-[A-Za-z0-9]+).)+[a-z]{2,}$'."; - - //conditional support - type string; - } - - leaf rxDiamRealm { - description "This IE shall be present if the PCF supports Rx interface. - When present, this IE shall indicate the Diameter realm of the Rx interface for the PCF. - Pattern: '^([A-Za-z0-9]+(-[A-Za-z0-9]+).)+[a-z]{2,}$'."; - - //conditional support - type string; - } - } - - grouping bsfInfo { - //optional support - - list ipv4AddressRanges { - description "List of ranges of IPv4 addresses handled by BSF. - If not provided, the BSF can serve any IPv4 address."; - //optional support - key "start end"; - uses types3gpp:Ipv4AddressRange; - } - - leaf-list dnnList { - description "List of DNNs handled by the BSF - If not provided, the BSF can serve any DNN."; - - //optional support - min-elements 1; - type string; - } - - leaf-list ipDomainList { - description "List of IPv4 address domains, as described in subclause 6.2 of 3GPP TS 29.513, handled by the BSF. - If not provided, the BSF can serve any IP domain."; - //optional support - min-elements 1; - type string; - } - - list ipv6PrefixRanges { - description "List of ranges of IPv6 prefixes handled by the BSF. - If not provided, the BSF can serve any IPv6 prefix."; - //optional support - key "start end"; - uses types3gpp:Ipv6PrefixRange; - } - } - - grouping chfInfo { - //optional support - - list supiRangeList { - description "List of ranges of SUPIs that can be served by the CHF instance. If not provided, the CHF can serve any SUPI."; - key "start end pattern"; - min-elements 1; - //optional support - uses SupiRange; - } - - list gpsiRangeList { - description "List of ranges of GPSI that can be served by the CHF instance. If not provided, the CHF can serve any GPSI."; - key "start end pattern"; - min-elements 1; - //optional support - uses IdentityRange; - } - - list plmnRangeList { - description "List of ranges of PLMNs (including the PLMN IDs of the CHF instance) that can be served by the CHF instance. - If not provided, the CHF can serve any PLMN."; - - min-elements 1; - //optional support - key "mcc mnc"; - uses types3gpp:PLMNId; - } - } - - grouping nrfInfoGrp { - //optional support - - list servedUdrInfo { - description "This attribute contains all the udrInfo attributes locally configured in the NRF or the NRF received during NF registration."; - //optional support - - key nfInstanceID; - leaf nfInstanceID { - description "String uniquely identifying a NF instance."; - type string; - } - - min-elements 1; - uses udrInfo; - } - - list servedUdmInfo { - description "This attribute contains all the udmInfo attributes locally configured in the NRF or the NRF received during NF registration."; - //optional support - - key nfInstanceID; - leaf nfInstanceID { - description "String uniquely identifying a NF instance."; - type string; - } - - min-elements 1; - uses udmInfo; - } - - list servedAusfInfo { - description "This attribute contains all the ausfInfo attributes locally configured in the NRF or the NRF received during NF registration."; - //optional support - - key nfInstanceID; - leaf nfInstanceID { - description "String uniquely identifying a NF instance."; - type string; - } - - min-elements 1; - uses ausfInfo; - } - - list servedAmfInfo { - description "This attribute contains all the amfInfo attributes locally configured in the NRF or the NRF received during NF registration."; - //optional support - - key nfInstanceID; - leaf nfInstanceID { - description "String uniquely identifying a NF instance."; - type string; - } - - min-elements 1; - uses amfInfo; - } - - list servedSmfInfo { - description "This attribute contains all the smfInfo attributes locally configured in the NRF or the NRF received during NF registration."; - //optional support - - key nfInstanceID; - leaf nfInstanceID { - description "String uniquely identifying a NF instance."; - type string; - } - - min-elements 1; - uses smfInfo; - } - - list servedUpfInfo { - description "This attribute contains all the upfInfo attributes locally configured in the NRF or the NRF received during NF registration."; - //optional support - - key nfInstanceID; - leaf nfInstanceID { - description "String uniquely identifying a NF instance."; - type string; - } - - min-elements 1; - uses upfInfo; - } - - list servedPcfInfo { - description "This attribute contains all the pcfInfo attributes locally configured in the NRF or the NRF received during NF registration."; - //optional support - - key nfInstanceID; - leaf nfInstanceID { - description "String uniquely identifying a NF instance."; - type string; - } - - min-elements 1; - uses pcfInfo; - } - - list servedBsfInfo { - description "This attribute contains all the bsfInfo attributes locally configured in the NRF or the NRF received during NF registration."; - //optional support - - key nfInstanceID; - leaf nfInstanceID { - description "String uniquely identifying a NF instance."; - type string; - } - - min-elements 1; - uses bsfInfo; - } - - list servedChfInfo { - description "This attribute contains all the bsfInfo attributes locally configured in the NRF or the NRF received during NF registration."; - //optional support - - key nfInstanceID; - leaf nfInstanceID { - description "String uniquely identifying a NF instance."; - type string; - } - - min-elements 1; - uses chfInfo; - } - } - - list nrfInfo { - key idx; //no obvious leaf to use as a key - leaf idx { type uint32; } - max-elements 1; - uses nrfInfoGrp; - } - - leaf customInfo { - description "Specific data for custom Network Functions."; - type string; - } - - leaf recoveryTime { - description "Timestamp when the NF was (re)started."; - //optional support - type yang:date-and-time; - } - - leaf nfServicePersistence { - description "If present, and set to true, it indicates that the different service instances of a same NF Service in this NF instance, - supporting a same API version, are capable to persist their resource state in shared storage and therefore these resources - are available after a new NF service instance supporting the same API version is selected by a NF Service Consumer (see 3GPP TS 23.527). - Otherwise, it indicates that the NF Service Instances of a same NF Service are not capable to share resource state inside the NF Instance."; - - //optional support - type boolean; - } - - list nfServices { - description "List of NF Service Instances. It shall include the services produced by the NF that can be discovered by other NFs."; - key serviceInstanceID; - //optional support - min-elements 1; - uses nfs3gpp:NFServiceGrp; - } - - leaf nfProfileChangesSupportInd { - description "NF Profile Changes Support Indicator. This IE may be present in the NFRegister or NFUpdate (NF Profile Complete Replacement) request and shall be absent in the response. - true: the NF Service Consumer supports receiving NF Profile Changes in the response. - false (default): the NF Service Consumer does not support receiving NF Profile Changes in the response."; - - //optional support - type boolean; - } - - leaf nfProfileChangesInd { - description "NF Profile Changes Indicator. This IE shall be absent in the request to the NRF and may be included by the NRF in NFRegister or NFUpdate (NF Profile Complete Replacement) response. - true: the NF Profile contains NF Profile changes. - false (default): complete NF Profile."; - - //optional support - type boolean; - } - - list defaultNotificationSubscriptions { - description "Notification endpoints for different notification types."; - key notificationType; - //optional support - min-elements 1; - uses types3gpp:DefaultNotificationSubscription; - } - } - - typedef NFStatus { - type enumeration { - enum REGISTERED; - enum SUSPENDED; - } - } - - typedef DataSetId { - type enumeration { - enum SUBSCRIPTION; - enum POLICY; - enum EXPOSURE; - enum APPLICATION; - } - } - - grouping SupiRange { - leaf start { - description "First value identifying the start of a SUPI range. To be used when the range of SUPI's can be represented as a numeric range (e.g., IMSI ranges)."; - type string { - pattern '^[0-9]+$'; - } - } - - leaf end { - description "Last value identifying the end of a SUPI range. To be used when the range of SUPI's can be represented as a numeric range (e.g. IMSI ranges)."; - type string { - pattern '^[0-9]+$'; - } - } - - leaf pattern { - description "Pattern representing the set of SUPI's belonging to this range. - A SUPI value is considered part of the range if and only if the SUPI string fully matches the regular expression."; - type string; - } - } - - grouping IdentityRange { - leaf start { - description "First value identifying the start of an identity range. To be used when the range of identities can be represented as a numeric range (e.g., MSISDN ranges)."; - type string { - pattern '^[0-9]+$'; - } - } - - leaf end { - description "Last value identifying the end of an identity range. To be used when the range of identities can be represented as a numeric range (e.g. MSISDN ranges)."; - type string { - pattern '^[0-9]+$'; - } - } - - leaf pattern { - description "Pattern representing the set of identities belonging to this range. - An identity value is considered part of the range if and only if the identity string fully matches the regular expression."; - type string; - } - } - - grouping TacRange { - leaf start { - description "First value identifying the start of a TAC range, to be used when the range of TAC's can be represented as a hexadecimal range (e.g., TAC ranges)."; - type string { - pattern '^([A-Fa-f0-9]{4}|[A-Fa-f0-9]{6}$)'; - } - } - - leaf end { - description "Last value identifying the end of a TAC range, to be used when the range of TAC's can be represented as a hexadecimal range (e.g. TAC ranges)."; - type string { - pattern '^([A-Fa-f0-9]{4}|[A-Fa-f0-9]{6})$'; - } - } - - leaf pattern { - description "Pattern representing the set of TAC's belonging to this range."; - type string; - } - } - - grouping SnssaiUpfInfoItem { - list sNssai { //is the key unique - description "Supported S-NSSAI."; - min-elements 1; - max-elements 1; - key "sst sd"; - uses Snssai; - } - - list dnnUpfInfoList { - description "List of parameters supported by the UPF per DNN."; - min-elements 1; - key dnn; - uses DnnUpfInfoItem; - } - } - - grouping DnnUpfInfoItem { - leaf dnn { - description "String representing a Data Network."; - mandatory true; - type string; - } - - leaf-list dnaiList { - description "List of Data network access identifiers supported by the UPF for this DNN. - The absence of this attribute indicates that the UPF can be selected for this DNN for any DNAI."; - min-elements 1; - type string; //dnai is the type but its only a string with desc: DNAI (Data network access identifier), is this needed as its own typedef or string is ok - } - - leaf-list pduSessionTypes { - description "List of PDU session type(s) supported by the UPF for a specific DNN."; - min-elements 1; - type PduSessionType; - } - } - - grouping Snssai { - leaf sst { - description "Unsigned integer, within the range 0 to 255, representing the Slice/Service Type. - It indicates the expected Network Slice behaviour in terms of features and services."; - mandatory true; - type uint32; - } - - leaf sd { - description "3-octet string, representing the Slice Differentiator, in hexadecimal representation."; - //optional - type string { - pattern '^[A-Fa-f0-9]{6}$'; - } - } - - reference "3GPP TS 29.571"; - } - - typedef PduSessionType { - type enumeration { - enum IPV4; - enum IPV6; - enum IPV4V6; - enum UNSTRUCTURED; - enum ETHERNET; - } - } - - grouping Guami { - list plmnId { - description "PLMN Identity."; - min-elements 1; - max-elements 1; - key "mcc mnc"; - uses types3gpp:PLMNId; - } - - list amfId { - description "AMF Identity."; - min-elements 1; - max-elements 1; - key "amfRegionId amfSetId amfPointer"; - uses types3gpp:AmfIdentifier; - } - } - - grouping Tai { - list plmnId { - description "PLMN Identity."; - min-elements 1; - max-elements 1; - key "mcc mnc"; - uses types3gpp:PLMNId; - } - - leaf tac { type types3gpp:Tac; } - } - - grouping InterfaceUpfInfoItem { - leaf interfaceType { - description "User Plane interface type."; - mandatory true; - type UPInterfaceType; - } - - ////At least one of the addressing parameters (ipv4address, ipv6adress or endpointFqdn) shall be included in the InterfaceUpfInfoItem. - choice address { - case ipv4EndpointAddresses { - leaf-list ipv4EndpointAddresses { - description "Available endpoint IPv4 address(es) of the User Plane interface."; - //conditional support - min-elements 1; - type inet:ipv4-address; - } - } - - case ipv6EndpointAddresses { - leaf-list ipv6EndpointAddresses { - description "Available endpoint IPv6 address(es) of the User Plane interface."; - //conditional support - min-elements 1; - type inet:ipv6-address; - } - } - - case endpointFqdn { - leaf endpointFqdn { - description "FQDN of available endpoint of the User Plane interface."; - //conditional support - type inet:domain-name; - } - } - } - - leaf networkInstance { - description "Network Instance associated to the User Plane interface."; - //optional support - type string; - } - } - - typedef UPInterfaceType { - type enumeration { - enum N3; - enum N6; - enum N9; - } - } - - grouping TaiRange { - list plmnId { - description "PLMN ID related to the TacRange."; - min-elements 1; - max-elements 1; - key "mcc mnc"; - uses types3gpp:PLMNId; - } - - list tacRangeList { //is this key unique - description "The range of the TACs."; - min-elements 1; - key "start end"; - uses TacRange; - } - } - - typedef AccessType { - type enumeration { - enum 3GPP_ACCESS; - enum NON_3GPP_ACCESS; - } - } - - grouping N2InterfaceAmfInfo { - //At least one of the addressing parameters (ipv4address or ipv6adress) shall be included. - choice address { - case ipv4EndpointAddress { - leaf-list ipv4EndpointAddress { - description "Available AMF endpoint IPv4 address(es) for N2."; - //conditional support - min-elements 1; - type inet:ipv4-address; - } - } - - case ipv6EndpointAddress { - leaf-list ipv6EndpointAddress { - description "Available AMF endpoint IPv6 address(es) for N2."; - //conditional support - min-elements 1; - type inet:ipv6-address; - } - } - } - - leaf amfName { - description "AMF name."; - type string; - } - } - - grouping sNssaiSmfInfoItem { - list sNssai { //is the key unique - description "Supported S-NSSAI."; - min-elements 1; - max-elements 1; - key "sst sd"; - uses Snssai; - } - - list dnnSmfInfoList { //is the key unique - description "List of parameters supported by the SMF per DNN."; - min-elements 1; - key dnn; - uses DnnSmfInfoItem; - } - } - - grouping DnnSmfInfoItem { - leaf dnn { - description "Supported DNN."; - mandatory true; - type string; - } - } - - grouping PlmnSnssai { - list plmnId { - description "PLMN ID for which list of supported S-NSSAI(s) is provided."; - min-elements 1; - max-elements 1; - key "mcc mnc"; - uses types3gpp:PLMNId; - } - - list sNssaiList { //is the key unique - description "The specific list of S-NSSAIs supported by the given PLMN."; - min-elements 1; - key "sst sd"; - uses Snssai; - } - } -} \ No newline at end of file diff --git a/yang-models/_3gpp-5gc-nrm-nfservice.yang b/yang-models/_3gpp-5gc-nrm-nfservice.yang deleted file mode 100755 index 8685e8e8e..000000000 --- a/yang-models/_3gpp-5gc-nrm-nfservice.yang +++ /dev/null @@ -1,286 +0,0 @@ -module _3gpp-5gc-nrm-nfservice { - yang-version 1.1; - - namespace urn:3gpp:sa5:_3gpp-5gc-nrm-nfservice; - prefix nfs3gpp; - - import _3gpp-common-yang-types { prefix types3gpp; } - import ietf-yang-types { prefix yang; } - import ietf-inet-types { prefix inet; } - - organization "3gpp SA5"; - description "NF service class."; - reference "3GPP TS 29.510"; - - revision 2019-06-17 { - description "initial revision"; - } - - grouping NFServiceGrp { - leaf serviceInstanceID { - description "Unique ID of the service instance within a given NF Instance."; - mandatory true; - type string; - } - - leaf serviceName { - description "Name of the service instance (e.g. 'nudm-sdm')."; - mandatory true; - type ServiceName; - } - - list versions { //check in review if key is ok (unique) - description "API versions supported by the NF Service and if available, the corresponding retirement date of the NF Service."; - min-elements 1; - key "apiVersionInUri apiFullVersion"; - uses NFServiceVersion; - } - - leaf scheme { - description "URI scheme (e.g. 'http', 'https')."; - mandatory true; - type UriScheme; - } - - leaf nfServiceStatus { - description "Status of the NF Service Instance."; - mandatory true; - type NFServiceStatus; - } - - leaf fqdn { - description "FQDN of the NF Service Instance."; - //optional support - type inet:domain-name; - } - - leaf interPlmnFqdn { - description "If the NF service needs to be discoverable by other NFs in a different PLMN, - then an FQDN that is used for inter PLMN routing."; - //optional support - type inet:domain-name; - } - - list ipEndPoints { - description "IP address(es) and port information of the Network Function (including IPv4 and/or IPv6 address) - where the service is listening for incoming service requests."; - //optional support - - key idx; - leaf idx { - type string; - } - min-elements 1; - uses ipEndPoint; - } - - leaf apiPrefix { - description "Optional path segment(s) used to construct the {apiRoot} variable of the different API URIs."; - //optional support - type string; - } - - list defaultNotificationSubscriptions { - description "Notification endpoints for different notification types."; - key notificationType; - //optional support - min-elements 1; - uses types3gpp:DefaultNotificationSubscription; - } - - list allowedPlmns { - description "PLMNs allowed to access the service instance. - The absence of this attribute indicates that any PLMN is allowed to access the service instance."; - - min-elements 1; - //optional support - key "mcc mnc"; - uses types3gpp:PLMNId; - } - - leaf-list allowedNfTypes { - description "Type of the NFs allowed to access the service instance. - The absence of this attribute indicates that any NF type is allowed to access the service instance."; - - min-elements 1; - //optional support - type types3gpp:NfType; - } - - leaf-list allowedNfDomains { - description "Pattern representing the NF domain names allowed to access the service instance."; - //optional support - min-elements 1; - type string; - } - - leaf-list allowedNssais { - description "S-NSSAI of the allowed slices to access the service instance. - The absence of this attribute indicates that any slice is allowed to access the service instance."; - min-elements 1; - //optional support - type types3gpp:SNssai; - } - - leaf priority { - description "Priority (relative to other services of the same type) in the range of 0-65535, - to be used for NF Service selection; lower values indicate a higher priority."; - //optional support - type uint16; - } - - leaf capacity { - description "Static capacity information in the range of 0-65535, expressed as a weight relative to other services of the same type."; - //optional support - type uint16; - } - - leaf load { - description "Dynamic load information, ranged from 0 to 100, indicates the current load percentage of the NF Service."; - //optional support - type types3gpp:Load; - } - - leaf recoveryTime { - description "Timestamp when the NF was (re)started."; - //optional support - type yang:date-and-time; - } - - list chfServiceInfo { //is the key unique - description "Specific data for a CHF service instance."; - //optional support - max-elements 1; - key "primaryChfServiceInstance secondaryChfServiceInstance"; - uses ChfServiceInfo; - } - - leaf supportedFeatures { - description "Supported Features of the NF Service instance."; - //optional support - type SupportedFeatures; - } - } - - typedef SupportedFeatures { - type string { - pattern '[A-Fa-f0-9]*'; - } - } - - grouping ipEndPoint { - choice address { - leaf ipv4Address { - type inet:ipv4-address; - } - - leaf ipv6Address { - type inet:ipv6-address; - } - - leaf ipv6Prefix { - type inet:ipv6-prefix; - } - } - - leaf transport { - type TransportProtocol; - } - - leaf port { - type uint16; - } - } - - typedef TransportProtocol { - type enumeration { - enum TCP; - enum STCP; - enum UDP; - } - } - - grouping NFServiceVersion { - leaf apiVersionInUri { - mandatory true; - type string; - } - - leaf apiFullVersion { - mandatory true; - type string; - } - - leaf expiry { - //optional to support - type yang:date-and-time; - } - } - - typedef ServiceName { - type enumeration { - enum NNRF_NFM; - enum NNRF_DISC; - enum NUDM_SDM; - enum NUDM_UECM; - enum NUDM_UEAU; - enum NUDM_EE; - enum NUDM_PP; - enum NAMF_COMM; - enum NAMF_EVTS; - enum NAMF_MT; - enum NAMF_LOC; - enum NSMF_PDUSESSION; - enum NSMF_EVENT-EXPOSURE; - enum NAUSF_AUTH; - enum NAUSF_SORPROTECTION; - enum NNEF_PFDMANAGEMENT; - enum NPCF_AM-POLICY-CONTROL; - enum NPCF_SMPOLICYCONTROL; - enum NPCF_POLICYAUTHORIZATION; - enum NPCF_BDTPOLICYCONTROL; - enum NPCF_EVENTEXPOSURE; - enum NPCF_UE_POLICY_CONTROL; - enum NSMSF_SMS; - enum NNSSF_NSSELECTION; - enum NNSSF_NSSAIAVAILABILITY; - enum NUDR_DR; - enum NLMF_LOC; - enum N5G_EIR_EIC; - enum NBSF_MANAGEMENT; - enum NCHF_SPENDINGLIMITCONTROL; - enum NCHF_CONVERGEDCHARGING; - enum NNWDAF_EVENTSSUBSCRIPTION; - enum NNWDAF_ANALYTICSINFO; - } - } - - typedef UriScheme { - type enumeration { - enum HTTP; - enum HTTPS; - } - } - - typedef NFServiceStatus { - type enumeration { - enum REGISTERED; - enum SUSPENDED; - enum UNDISCOVERABLE; - } - } - - grouping ChfServiceInfo { - leaf primaryChfServiceInstance { - description "Shall be present if the CHF service instance serves as a secondary CHF instance of another primary CHF service instance."; - //conditional to support - type string; - } - - leaf secondaryChfServiceInstance { - description "Shall be present if the CHF service instance serves as a primary CHF instance of another secondary CHF service instance."; - //conditional to support - type string; - } - } -} \ No newline at end of file diff --git a/yang-models/_3gpp-5gc-nrm-ngeirfunction.yang b/yang-models/_3gpp-5gc-nrm-ngeirfunction.yang deleted file mode 100755 index 8f1ce2fb0..000000000 --- a/yang-models/_3gpp-5gc-nrm-ngeirfunction.yang +++ /dev/null @@ -1,73 +0,0 @@ -module _3gpp-5gc-nrm-ngeirfunction { - yang-version 1.1; - - namespace urn:3gpp:sa5:_3gpp-5gc-nrm-ngeirfunction; - prefix ngeir3gpp; - - import _3gpp-common-managed-function { prefix mf3gpp; } - import _3gpp-common-managed-element { prefix me3gpp; } - import _3gpp-common-yang-types { prefix types3gpp; } - import _3gpp-5g-common-yang-types { prefix types5g3gpp; } - import _3gpp-common-top { prefix top3gpp; } - - organization "3gpp SA5"; - description "This IOC represents the 5G-EIR function in 5GC. For more information about the 5G-EIR, see 3GPP TS 23.501."; - reference "3GPP TS 28.541"; - - revision 2019-10-25 { reference "S5-194457 S5-195427 S5-193518"; } - - revision 2019-05-15 { - description "initial revision"; - reference "Based on - 3GPP TS 28.541 V15.X.XX"; - } - - grouping NGEIRFunctionGrp { - uses mf3gpp:ManagedFunctionGrp; - - list pLMNIdList { - description "List of at most six entries of PLMN Identifiers, but at least one (the primary PLMN Id). - The PLMN Identifier is composed of a Mobile Country Code (MCC) and a Mobile Network Code (MNC)."; - - min-elements 1; - max-elements 6; - key "mcc mnc"; - uses types3gpp:PLMNId; - } - - leaf-list sNSSAIList { - description "List of S-NSSAIs the managed object is capable of supporting. - (Single Network Slice Selection Assistance Information) - An S-NSSAI has an SST (Slice/Service type) and an optional SD - (Slice Differentiator) field."; - //optional support - reference "3GPP TS 23.003"; - type types3gpp:SNssai; - } - - list managedNFProfile { - key idx; - min-elements 1; - uses types3gpp:ManagedNFProfile; - } - - list commModelList { - min-elements 1; - key "groupId"; - uses types5g3gpp:CommModel; - } - } - - augment "/me3gpp:ManagedElement" { - list NGEIRFunction { - description "5G Core NGEIR Function"; - reference "3GPP TS 28.541"; - key id; - uses top3gpp:Top_Grp; - container attributes { - uses NGEIRFunctionGrp; - } - uses mf3gpp:ManagedFunctionContainedClasses; - } - } -} \ No newline at end of file diff --git a/yang-models/_3gpp-5gc-nrm-nrffunction.yang b/yang-models/_3gpp-5gc-nrm-nrffunction.yang deleted file mode 100755 index d9754bd45..000000000 --- a/yang-models/_3gpp-5gc-nrm-nrffunction.yang +++ /dev/null @@ -1,80 +0,0 @@ -module _3gpp-5gc-nrm-nrffunction { - yang-version 1.1; - - namespace urn:3gpp:sa5:_3gpp-5gc-nrm-nrffunction; - prefix nrf3gpp; - - import _3gpp-common-managed-function { prefix mf3gpp; } - import _3gpp-common-managed-element { prefix me3gpp; } - import ietf-inet-types { prefix inet; } - import _3gpp-common-yang-types { prefix types3gpp; } - import _3gpp-5gc-nrm-nfprofile { prefix nfp3gpp; } - import _3gpp-common-top { prefix top3gpp; } - - organization "3gpp SA5"; - description "This IOC represents the NRF function in 5GC. - For more information about the NRF, see 3GPP TS 23.501 [2]."; - reference "3GPP TS 28.541"; - - revision 2020-08-03 { reference "CR-0321"; } - revision 2019-10-28 { reference S5-193518 ; } - revision 2019-05-15 { description "initial revision"; } - - grouping NRFFunctionGrp { - uses mf3gpp:ManagedFunctionGrp; - - list pLMNIdList { - description "List of at most six entries of PLMN Identifiers, but at least one (the primary PLMN Id). - The PLMN Identifier is composed of a Mobile Country Code (MCC) and a Mobile Network Code (MNC)."; - - min-elements 1; - max-elements 6; - key "mcc mnc"; - uses types3gpp:PLMNId; - } - - leaf sBIFQDN { - description "The FQDN of the registered NF instance in the service-based interface."; - type inet:domain-name; - } - - leaf-list cNSIIdList { - description "NSI ID. NSI ID is an identifier for identifying the Core - Network part of a Network Slice instance when multiple Network Slice - instances of the same Network Slice are deployed, and there is a need - to differentiate between them in the 5GC, see clause 3.1 of TS 23.501 - and subclause 6.1.6.2.7 of 3GPP TS 29.531"; - type string; - } - - leaf-list sNSSAIList { - description "List of S-NSSAIs the managed object is capable of supporting. - (Single Network Slice Selection Assistance Information) - An S-NSSAI has an SST (Slice/Service type) and an optional SD - (Slice Differentiator) field."; - //optional support - reference "3GPP TS 23.003"; - type types3gpp:SNssai; - } - - list nFProfileList { - description "Set of NFProfile(s) to be registered in the NRF instance."; - //optional support - key nfInstanceID; - uses nfp3gpp:NFProfileGrp; - } - } - - augment "/me3gpp:ManagedElement" { - list NRFFunction { - description "5G Core NRF Function"; - reference "3GPP TS 28.541"; - key id; - uses top3gpp:Top_Grp; - container attributes { - uses NRFFunctionGrp; - } - uses mf3gpp:ManagedFunctionContainedClasses; - } - } -} \ No newline at end of file diff --git a/yang-models/_3gpp-5gc-nrm-nssffunction.yang b/yang-models/_3gpp-5gc-nrm-nssffunction.yang deleted file mode 100755 index 7d9407b0f..000000000 --- a/yang-models/_3gpp-5gc-nrm-nssffunction.yang +++ /dev/null @@ -1,80 +0,0 @@ -module _3gpp-5gc-nrm-nssffunction { - yang-version 1.1; - - namespace urn:3gpp:sa5:_3gpp-5gc-nrm-nssffunction; - prefix nssf3gpp; - - import _3gpp-common-managed-function { prefix mf3gpp; } - import _3gpp-common-managed-element { prefix me3gpp; } - import ietf-inet-types { prefix inet; } - import _3gpp-common-yang-types { prefix types3gpp; } - import _3gpp-common-top { prefix top3gpp; } - - organization "3gpp SA5"; - description "This IOC represents the NSSF function in 5GC. For more - information about the NSSF, see 3GPP TS 23.501."; - reference "3GPP TS 28.541"; - - revision 2020-08-03 { reference "CR-0321"; } - revision 2019-10-25 { reference "S5-194457 S5-195427 S5-193518"; } - revision 2019-05-15 { description "initial revision"; } - - grouping NSSFFunctionGrp { - uses mf3gpp:ManagedFunctionGrp; - - list pLMNIdList { - description "List of at most six entries of PLMN Identifiers, but at least - one (the primary PLMN Id). - The PLMN Identifier is composed of a Mobile Country Code (MCC) and a - Mobile Network Code (MNC)."; - - min-elements 1; - max-elements 6; - key "mcc mnc"; - uses types3gpp:PLMNId; - } - - leaf sBIFQDN { description "The FQDN of the registered NF instance in the service-based - interface."; - type inet:domain-name; - } - - leaf-list sNSSAIList { - description "List of S-NSSAIs the managed object is capable of supporting. - (Single Network Slice Selection Assistance Information) - An S-NSSAI has an SST (Slice/Service type) and an optional SD - (Slice Differentiator) field."; - - reference "3GPP TS 23.003"; - type types3gpp:SNssai; - } - - leaf-list cNSIIdList { - description "NSI ID. NSI ID is an identifier for identifying the Core - Network part of a Network Slice instance when multiple Network Slice - instances of the same Network Slice are deployed, and there is a need - to differentiate between them in the 5GC, see clause 3.1 of TS 23.501 - and subclause 6.1.6.2.7 of 3GPP TS 29.531"; - type string; - } - - list managedNFProfile { - key idx; - min-elements 1; - uses types3gpp:ManagedNFProfile; - } - } - - augment "/me3gpp:ManagedElement" { - list NSSFFunction { - description "5G Core NSSF Function"; - reference "3GPP TS 28.541"; - key id; - uses top3gpp:Top_Grp; - container attributes { - uses NSSFFunctionGrp; - } - uses mf3gpp:ManagedFunctionContainedClasses; - } - } -} \ No newline at end of file diff --git a/yang-models/_3gpp-5gc-nrm-nwdaffunction.yang b/yang-models/_3gpp-5gc-nrm-nwdaffunction.yang deleted file mode 100755 index 813b3bdeb..000000000 --- a/yang-models/_3gpp-5gc-nrm-nwdaffunction.yang +++ /dev/null @@ -1,79 +0,0 @@ -module _3gpp-5gc-nrm-nwdaffunction { - yang-version 1.1; - - namespace urn:3gpp:sa5:_3gpp-5gc-nrm-nwdaffunction; - prefix nwdaf3gpp; - - import _3gpp-common-managed-function { prefix mf3gpp; } - import _3gpp-common-managed-element { prefix me3gpp; } - import ietf-inet-types { prefix inet; } - import _3gpp-common-yang-types { prefix types3gpp; } - import _3gpp-5g-common-yang-types { prefix types5g3gpp; } - import _3gpp-common-top { prefix top3gpp; } - - organization "3gpp SA5"; - description "This IOC represents the NWDAF function in 5GC. For more information about the NWDAF, see 3GPP TS 23.501."; - reference "3GPP TS 28.541"; - - revision 2019-10-25 { reference "S5-194457 S5-195427 S5-193518"; } - - revision 2019-05-15 { - description "initial revision"; - reference "Based on - 3GPP TS 28.541 V15.X.XX"; - } - - grouping NWDAFFunctionGrp { - uses mf3gpp:ManagedFunctionGrp; - - list pLMNIdList { - description "List of at most six entries of PLMN Identifiers, but at least one (the primary PLMN Id). - The PLMN Identifier is composed of a Mobile Country Code (MCC) and a Mobile Network Code (MNC)."; - - min-elements 1; - max-elements 6; - key "mcc mnc"; - uses types3gpp:PLMNId; - } - - leaf sBIFQDN { - description "The FQDN of the registered NF instance in the service-based interface."; - type inet:domain-name; - } - - leaf-list sNSSAIList { - description "List of S-NSSAIs the managed object is capable of supporting. - (Single Network Slice Selection Assistance Information) - An S-NSSAI has an SST (Slice/Service type) and an optional SD - (Slice Differentiator) field."; - //optional support - reference "3GPP TS 23.003"; - type types3gpp:SNssai; - } - - list managedNFProfile { - key idx; - min-elements 1; - uses types3gpp:ManagedNFProfile; - } - - list commModelList { - min-elements 1; - key "groupId"; - uses types5g3gpp:CommModel; - } - } - - augment "/me3gpp:ManagedElement" { - list NWDAFFunction { - description "5G Core NWDAF Function"; - reference "3GPP TS 28.541"; - key id; - uses top3gpp:Top_Grp; - container attributes { - uses NWDAFFunctionGrp; - } - uses mf3gpp:ManagedFunctionContainedClasses; - } - } -} \ No newline at end of file diff --git a/yang-models/_3gpp-5gc-nrm-pcffunction.yang b/yang-models/_3gpp-5gc-nrm-pcffunction.yang deleted file mode 100755 index b9eaf0e0a..000000000 --- a/yang-models/_3gpp-5gc-nrm-pcffunction.yang +++ /dev/null @@ -1,88 +0,0 @@ -module _3gpp-5gc-nrm-pcffunction { - yang-version 1.1; - - namespace urn:3gpp:sa5:_3gpp-5gc-nrm-pcffunction; - prefix pcf3gpp; - - import _3gpp-common-managed-function { prefix mf3gpp; } - import _3gpp-common-managed-element { prefix me3gpp; } - import ietf-inet-types { prefix inet; } - import _3gpp-common-yang-types { prefix types3gpp; } - import _3gpp-5g-common-yang-types { prefix types5g3gpp; } - import _3gpp-common-top { prefix top3gpp; } - - organization "3gpp SA5"; - description "This IOC represents the PCF function in 5GC. For more information about the PCF, see 3GPP TS 23.501."; - reference "3GPP TS 28.541"; - - revision 2020-08-06 { reference "CR-0333"; } - - revision 2020-08-06 {reference "CR-0331"; } - - revision 2019-10-25 {reference "S5-194457 S5-193518"; } - - revision 2019-05-22 { - description "initial revision"; - } - - grouping PCFFuntionGrp { - uses mf3gpp:ManagedFunctionGrp; - - list pLMNIdList { - description "List of at most six entries of PLMN Identifiers, but at least one (the primary PLMN Id). - The PLMN Identifier is composed of a Mobile Country Code (MCC) and a Mobile Network Code (MNC)."; - - min-elements 1; - max-elements 6; - key "mcc mnc"; - uses types3gpp:PLMNId; - } - - leaf sBIFQDN { - description "The FQDN of the registered NF instance in the service-based interface."; - type inet:domain-name; - } - - leaf-list sNSSAIList { - description "List of S-NSSAIs the managed object is capable of supporting. - (Single Network Slice Selection Assistance Information) - An S-NSSAI has an SST (Slice/Service type) and an optional SD - (Slice Differentiator) field."; - //optional support - reference "3GPP TS 23.003"; - type types3gpp:SNssai; - } - - list managedNFProfile { - key idx; - min-elements 1; - uses types3gpp:ManagedNFProfile; - } - list commModelList { - min-elements 1; - key "groupId"; - uses types5g3gpp:CommModel; - } - leaf dynamic5QISetRef { - type types3gpp:DistinguishedName; - description "DN of the Dynamic5QISet that the PCFFunction supports (is associated to)."; - } - leaf configurable5QISetRef { - type types3gpp:DistinguishedName; - description "DN of the Configurable5QISet that the PCFFunction supports (is associated to)."; - } - } - - augment "/me3gpp:ManagedElement" { - list PCFFunction { - description "5G Core PCF Function"; - reference "3GPP TS 28.541"; - key id; - uses top3gpp:Top_Grp; - container attributes { - uses PCFFuntionGrp; - } - uses mf3gpp:ManagedFunctionContainedClasses; - } - } -} \ No newline at end of file diff --git a/yang-models/_3gpp-5gc-nrm-predefinedpccruleset.yang b/yang-models/_3gpp-5gc-nrm-predefinedpccruleset.yang deleted file mode 100755 index b8ea9c800..000000000 --- a/yang-models/_3gpp-5gc-nrm-predefinedpccruleset.yang +++ /dev/null @@ -1,621 +0,0 @@ -module _3gpp-5gc-nrm-predefinedpccruleset { - yang-version 1.1; - - namespace urn:3gpp:sa5:_3gpp-5gc-nrm-predefinedpccruleset; - prefix PredPccRules3gpp; - - import _3gpp-common-managed-element { prefix me3gpp; } - import _3gpp-common-top { prefix top3gpp; } - import _3gpp-5gc-nrm-smffunction { prefix smf3gpp; } - import _3gpp-5gc-nrm-pcffunction { prefix pcf3gpp; } - import ietf-yang-types { prefix yang; } - - organization "3gpp SA5"; - contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; - description "This IOC represents the predefined PCC rules, which are configured to SMF and referenced by PCF."; - reference "3GPP TS 28.541"; - - revision 2020-08-21 { reference "CR-0330"; } - - grouping TscaiInputContainer { - description "It specifies the transports TSCAI input parameters for TSC traffic at the ingress interface of the DS-TT/UE for a PCC rule, see TS 29.512 [60]"; - leaf periodicity { - type uint32; - mandatory false; - description "It identifies the time period between the start of two bursts in reference to the TSN GM, see TS 29.571 [61]."; - } - leaf burstArrivalTime { - type yang:date-and-time; - mandatory false; - description "It Indicates the arrival time (in date-time format) of the data burst in reference to the TSN GM, see TS 29.571 [61]."; - } - } - - grouping ConditionData { - description "It specifies the specifies the condition data for a PCC rule."; - leaf condId { - type string; - mandatory true; - description "It uniquely identifies the condition data."; - } - leaf activationTime { - type yang:date-and-time; - mandatory false; - description " It indicates the time (in date-time format) when the decision data shall be activated, see TS 29.512 [60] and TS 29.571 [61]."; - } - leaf deactivationTime { - type yang:date-and-time; - mandatory false; - description "It indicates the time (in date-time format) when the decision data shall be deactivated, see TS 29.512 [60] and TS 29.571 [81]."; - } - leaf accessType { - type enumeration { - enum 3GPP_ACCESS; - enum NON_3GPP_ACCESS; - } - mandatory false; - description "It provides the condition of access type of the UE when the session AMBR shall be enforced, see TS 29.512 [60]."; - } - leaf ratType { - type enumeration { - enum NR; - enum EUTRA; - enum WLAN; - enum VIRTUAL; - enum NBIOT; - enum WIRELINE; - enum WIRELINE_CABLE; - enum WIRELINE_BBF; - enum LTE-M; - enum NR_U; - enum EUTRA_U; - enum TRUSTED_N3GA; - enum TRUSTED_WLAN; - enum UTRA; - enum GERA; - } - mandatory false; - description "It provides the condition of RAT type of the UE when the session AMBR shall be enforced, see TS 29.512 [60] and TS 29.571 [61]."; - } - } - - grouping SteeringMode { - description "It specifies the traffic distribution rule, see TS 29.512 [60]."; - leaf steerModeValue { - type enumeration { - enum ACTIVE_STANDBY; - enum LOAD_BALANCING; - enum SMALLEST_DELAY; - enum PRIORITY_BASED; - } - mandatory true; - description "It indicates the value of the steering mode, see TS 29.512 [60]."; - } - leaf active { - type enumeration { - enum 3GPP_ACCESS; - enum NON_3GPP_ACCESS; - } - mandatory false; - description "It indicates the active access, see TS 29.571 [61]."; - } - leaf standby { - type enumeration { - enum 3GPP_ACCESS; - enum NON_3GPP_ACCESS; - } - mandatory false; - description "It indicates the Standby access, see TS 29.571 [61]."; - } - leaf threeGLoad { - type uint8 { - range 0..100; - } - mandatory false; - description "It indicates the traffic load to steer to the 3GPP Access expressed in one percent."; - } - leaf prioAcc { - type enumeration { - enum 3GPP_ACCESS; - enum NON_3GPP_ACCESS; - } - mandatory false; - description "It indicates the high priority access, see TS 29.571 [61]."; - } - } - - grouping UpPathChgEvent { - description "It specifies the information about the AF subscriptions of the UP path change, see TS 29.512 [60]"; - leaf notificationUri { - type string; - mandatory true; - description "It provides notification address (Uri) of AF receiving the event notification."; - } - leaf notifCorreId { - type string; - mandatory true; - description "It is used to set the value of Notification Correlation ID in the notification sent by the SMF, see TS 29.512 [60]."; - } - leaf dnaiChgType { - type enumeration { - enum EARLY; - enum EARLY_LATE; - enum LATE; - } - mandatory true; - description "It indicates the type of DNAI change, see TS 29.512 [60]."; - } - leaf afAckInd { - type boolean; - default false; - mandatory false; - description "It identifies whether the AF acknowledgement of UP path event notification is expected."; - } - } - - grouping RouteInformation { - description "It specifies the traffic routing information."; - leaf ipv4Addr { - type string; - mandatory false; - description "It defines the Ipv4 address of the tunnel end point in the data network, formatted in the dotted decimal notation."; - } - leaf ipv6Addr { - type string; - mandatory false; - description "It defines the Ipv6 address of the tunnel end point in the data network."; - } - leaf portNumber { - type uint32; - mandatory true; - description " It defines the UDP port number of the tunnel end point in the data network, see TS 29.571 [61]."; - } - } - - grouping RouteToLocation { - description "It specifies a list of location which the traffic shall be routed to for the AF request."; - leaf dnai { - type string; - mandatory true; - description "It represents the DNAI (Data network access identifier), see 3GPP TS 23.501 [2]."; - } - container routeInfo{ - description "It provides the traffic routing information."; - uses RouteInformation; - } - leaf routeProfId { - type string; - mandatory false; - description "It identifies the routing profile."; - } - } - - grouping RedirectInformaton { - description "It specifies the redirect information for traffic control in the PCC rule."; - leaf redirectEnabled { - type boolean; - mandatory true; - description "It indicates whether the redirect instruction is enabled."; - } - leaf redirectAddressType { - type enumeration { - enum IPV4_ADDR; - enum IPV6_ADDR; - enum URL; - enum SIP_URI; - } - mandatory true; - description "It indicates the type of redirect address, see TS 29.512 [60]."; - } - leaf redirectServerAddress { - type string; - mandatory true; - description "It indicates the address of the redirect server."; - } - } - - grouping TrafficControlDataInformation { - description "It specifies the traffic control data for a service flow of a PCC rule."; - leaf tcId { - type string; - mandatory true; - description "It univocally identifies the traffic control policy data within a PDU session."; - } - leaf flowStatus { - type enumeration { - enum ENABLED-UPLINK; - enum ENABLED-DOWNLINK; - enum ENABLED; - enum DISABLED; - enum REMOVED; - } - mandatory true; - description "It represents whether the service data flow(s) are enabled or disabled."; - } - container redirectInfo { - description "It contains the redirect information indicating whether the detected application traffic should be redirected to another controlled address."; - uses RedirectInformaton; - } - container addRedirectInfo { - description "It contains the additional redirect information indicating whether the detected application traffic should be redirected to another controlled address."; - list redirectInfo { - description "The list of redirect information indicating whether the detected application traffic should be redirected to another controlled address."; - key "redirectServerAddress"; - uses RedirectInformaton; - } - } - leaf muteNotif { - type boolean; - mandatory false; - default false; - description "It indicates whether applicat'on's start or stop notification is to be muted."; - } - leaf trafficSteeringPolIdDl { - type string; - mandatory false; - description "It references to a pre-configured traffic steering policy for downlink traffic at the SMF, see TS 29.512 [60]."; - } - leaf trafficSteeringPolIdUl { - type string; - mandatory false; - description "It references to a pre-configured traffic steering policy for uplink traffic at the SMF, see TS 29.512 [60]."; - } - container routeToLocs { - description "It provides a list of location which the traffic shall be routed to for the AF request."; - list routeToLoc { - description "The list of location which the traffic shall be routed to for the AF request."; - key "dnai"; - uses RouteToLocation; - } - } - uses UpPathChgEvent; - leaf steerFun { - type enumeration { - enum MPTCP; - enum ATSSS_LL; - } - mandatory false; - description "It indicates the applicable traffic steering functionality, see TS 29.512 [60]."; - } - container steerModeDl { - description "It provides the traffic distribution rule across 3GPP and Non-3GPP accesses to apply for downlink traffic."; - uses SteeringMode; - } - container steerModeUl { - description "It provides the traffic distribution rule across 3GPP and Non-3GPP accesses to apply for uplink traffic."; - uses SteeringMode; - } - leaf mulAccCtrl { - type enumeration { - enum ALLOWED; - enum NOT_ALLOWED; - } - mandatory false; - description "It indicates whether the service data flow, corresponding to the service data flow template, is allowed or not allowed."; - } - } - - grouping ARP { - description "It specifies the allocation and retention priority of a QoS control policy."; - leaf priorityLevel { - type uint8 { - range 1..15; - } - mandatory true; - description "It defines the relative importance of a resource request."; - } - leaf preemptCap { - type enumeration { - enum NOT_PREEMPT; - enum MAY_PREEMPT; - } - mandatory true; - description "It defines whether a service data flow may get resources that were already assigned to another service data flow with a lower priority level."; - } - leaf preemptVuln { - type enumeration { - enum NOT_PREEMPTABLE; - enum PREEMPTABLE; - } - mandatory true; - description "It defines whether a service data flow may lose the resources assigned to it in order to admit a service data flow with higher priority level."; - } - } - - grouping QosDataInformation { - description "It specifies the QoS control policy data for a service flow of a PCC rule."; - leaf qosId { - type string; - mandatory true; - description "It identifies the QoS control policy data for a PCC rule."; - } - leaf fiveQIValue { - type uint8 { - range 0..255; - } - mandatory true; - description "It indicates the 5QI value."; - } - leaf maxbrUl { - type string; - mandatory false; - description "It represents the maximum uplink bandwidth."; - } - leaf maxbrDl { - type string; - mandatory false; - description "It represents the maximum downlink bandwidth."; - } - leaf gbrUl { - type string; - mandatory false; - description "It represents the guaranteed uplink bandwidth."; - } - leaf gbrDl { - type string; - mandatory false; - description "It represents the guaranteed downlink bandwidth."; - } - uses ARP; - leaf qosNotificationControl { - type boolean; - default false; - mandatory false; - description "It indicates whether notifications are requested from 3GPP NG-RAN when the GFBR can no longer (or again) be guaranteed for a QoS Flow during the lifetime of the QoS Flow."; - } - leaf reflectiveQos { - type boolean; - default false; - mandatory false; - description "Indicates whether the QoS information is reflective for the corresponding non-GBR service data flow"; - } - leaf sharingKeyDl { - type string; - mandatory false; - description "It indicates, by containing the same value, what PCC rules may share resource in downlink direction."; - } - leaf sharingKeyUl { - type string; - mandatory false; - description "It indicates, by containing the same value, what PCC rules may share resource in uplink direction."; - } - leaf maxPacketLossRateDl { - type uint16 { - range 0..1000; - } - mandatory false; - description "It indicates the downlink maximum rate for lost packets that can be tolerated for the service data flow."; - } - leaf maxPacketLossRateUl { - type uint16 { - range 0..1000; - } - mandatory false; - description "It indicates the uplink maximum rate for lost packets that can be tolerated for the service data flow."; - } - leaf extMaxDataBurstVol { - type uint32 { - range 4096..2000000; - } - mandatory false; - description "It denotes the largest amount of data that is required to be transferred within a period of 5G-AN PDB, see TS 29.512 [60]."; - } - } - - grouping EthFlowDescription { - description "It describes an Ethernet flow."; - leaf destMacAddr { - type string; - mandatory true; - description "It specifies the destination MAC address formatted in the hexadecimal notation according to clause 1.1 and clause 2.1 of IETF RFC 7042 [63]."; - } - leaf ethType { - type string; - mandatory true; - description "A two-octet string that represents the Ethertype, as described in IEEE 802.3 [64] and IETF RFC 7042 [63] in hexadecimal representation."; - } - leaf fDesc { - type string; - mandatory false; - description "It contains the flow description for the Uplink or Downlink IP flow. It shall be present when the ethtype is IP."; - } - leaf fDir { - type enumeration { - enum DOWNLINK; - enum UPLINK; - } - mandatory true; - description "It indicates the packet filter direction."; - } - leaf sourceMacAddr { - type string; - mandatory true; - description "It specifies the source MAC address formatted in the hexadecimal notation according to clause 1.1 and clause 2.1 of IETF RFC 7042 [63]."; - } - leaf-list vlanTags { - type string; - description "It specifies the Customer-VLAN and/or Service-VLAN tags containing the VID, PCP/DEI fields as defined in IEEE 802.1Q [65] and IETF RFC 7042 [63]. The first/lower instance in the array stands for the Customer-VLAN tag and the second/higher instance in the array stands for the Service-VLAN tag."; - } - leaf srcMacAddrEnd { - type string; - mandatory false; - description "It specifies the source MAC address end. If this attribute is present, the sourceMacAddr attribute specifies the source MAC address start. E.g. srcMacAddrEnd with value 00-10-A4-23-3E-FE and sourceMacAddr with value 00-10-A4-23-3E-02 means all MAC addresses from 00-10-A4-23-3E-02 up to and including 00-10-A4-23-3E-FE."; - } - leaf destMacAddrEnd { - type string; - mandatory false; - description "It specifies the destination MAC address end. If this attribute is present, the destMacAddr attribute specifies the destination MAC address start."; - } - } - - grouping FlowInformation { - description "It specifies the flow information of a PCC rule."; - leaf flowDescription { - type string; - mandatory true; - description "It defines a packet filter for an IP flow."; - } - uses EthFlowDescription; - leaf packFiltId { - type string; - mandatory true; - description "It is the identifier of the packet filter."; - } - leaf packetFilterUsage { - type boolean; - default false; - description "It indicates if the packet shall be sent to the UE."; - } - leaf tosTrafficClass { - type string; - mandatory true; - description "It contains the Ipv4 Type-of-Service and mask field or the Ipv6 Traffic-Class field and mask field."; - } - leaf spi { - type string; - mandatory true; - description "It is the security parameter index of the IPSec packet, see IETF RFC 4301 [66]"; - } - leaf flowLabel { - type string; - mandatory false; - description "It specifies the Ipv6 flow label header field."; - } - leaf flowDirection { - type enumeration { - enum DOWNLINK; - enum UPLINK; - enum BIDIRECTIONAL; - enum UNSPECIFIED; - } - mandatory true; - description "It indicates the direction/directions that a filter is applicable."; - } - } - - grouping PccRule { - description "It specifies the PCC rule, see TS 29.512 [60]."; - leaf pccRuleId { - type string; - mandatory true; - description "It identifies the PCC rule."; - } - container flowInfoList { - description "It is a list of IP flow packet filter information."; - list flowInfo { - description "The list of IP flow packet filter information."; - key "packFiltId"; - uses FlowInformation; - } - } - leaf applicationId { - type string; - default false; - mandatory false; - description "A reference to the application detection filter configured at the UPF."; - } - leaf appDescriptor { - type string; - mandatory false; - description "It is the ATSSS rule application descriptor."; - } - leaf contentVersion { - type uint8; - mandatory false; - description "Indicates the content version of the PCC rule."; - } - leaf precedence { - type uint8 { - range 0..255; - } - mandatory false; - description "It indicates the order in which this PCC rule is applied relative to other PCC rules within the same PDU session."; - } - leaf afSigProtocol { - type enumeration { - enum NO_INFORMATION; - enum SIP; - } - mandatory false; - description "Indicates the protocol used for signalling between the UE and the AF, the default value is NO_INFORMATION."; - } - leaf isAppRelocatable { - type boolean; - default false; - mandatory false; - description "It indicates the application relocation possibility, the default value is NO_INFORMATION."; - } - leaf isUeAddrPreserved { - type boolean; - default false; - mandatory false; - description "It Indicates whether UE IP address should be preserved."; - } - container qosData { - description "It contains the QoS control policy data for a PCC rule."; - list qosDataInfo { - description "The list of QoS control policy data."; - key "qosId"; - uses QosDataInformation; - } - } - container altQosParams { - description "It contains the QoS control policy data for the Alternative QoS parameter sets of the service data flow."; - list qosDataInfo { - description "The list of QoS control policy data."; - key "qosId"; - uses QosDataInformation; - } - } - container trafficControlData { - description "It contains the traffic control policy data for a PCC rule."; - list trafficControlDataInfo { - description "The list of traffic control policy data."; - key "tcId"; - uses TrafficControlDataInformation; - } - } - uses ConditionData; - container tscaiInputUl { - description "It contains transports TSCAI input parameters for TSC traffic at the ingress interface of the DS-TT/UE (uplink flow direction)."; - uses TscaiInputContainer; - - } - container tscaiInputDl { - description "It contains transports TSCAI input parameters for TSC traffic at the ingress of the NW-TT (downlink flow direction)."; - uses TscaiInputContainer; - } - } - - grouping PredefinedPccRuleSetGrp { - description "Represents the PredefinedPccRuleSet IOC."; - list PredefinedPccRules { - description "The list of predefined PCC rules."; - key "pccRuleId"; - uses PccRule; - } - } - - grouping PredefinedPccRuleSetSubtree { - description "It specifies the PredefinedPccRuleSet IOC with inherited attributes."; - list PredefinedPccRuleSet { - description "Specifies the predefined PCC rules."; - key "id"; - uses top3gpp:Top_Grp; - container attributes { - description "It contains the attributes defined specifically in the PredefinedPccRuleSet IOC."; - uses PredefinedPccRuleSetGrp; - } - } - } - - augment "/me3gpp:ManagedElement/smf3gpp:SMFFunction" { - description "It specifies the containment relation of PredefinedPccRuleSet MOI with SMFFunction MOI."; - uses PredefinedPccRuleSetSubtree; - } - - augment "/me3gpp:ManagedElement/pcf3gpp:PCFFunction" { - description "It specifies the containment relation of PredefinedPccRuleSet MOI with PCFFunction MOI."; - uses PredefinedPccRuleSetSubtree; - } -} \ No newline at end of file diff --git a/yang-models/_3gpp-5gc-nrm-scpfunction.yang b/yang-models/_3gpp-5gc-nrm-scpfunction.yang deleted file mode 100755 index aa1f98072..000000000 --- a/yang-models/_3gpp-5gc-nrm-scpfunction.yang +++ /dev/null @@ -1,50 +0,0 @@ -module _3gpp-5gc-nrm-scpfunction { - yang-version 1.1; - - namespace urn:3gpp:sa5:_3gpp-5gc-nrm-scpfunction; - prefix scp3gpp; - - import _3gpp-common-managed-function { prefix mf3gpp; } - import _3gpp-common-managed-element { prefix me3gpp; } - import ietf-inet-types { prefix inet; } - import _3gpp-5g-common-yang-types { prefix types5g3gpp; } - import _3gpp-common-top { prefix top3gpp; } - - organization "3gpp SA5"; - description "This IOC represents the SCP function in 5GC. For more information about the SCP, see 3GPP TS 23.501."; - reference "3GPP TS 28.541"; - - revision 2019-10-20 { - description "initial revision"; - reference "Based on - 3GPP TS 28.541 V16.X.XX"; - } - - grouping SCPFunctionGrp { - uses mf3gpp:ManagedFunctionGrp; - - leaf address { - description "The host address of the SCP."; - type inet:host; - } - - list supportedFuncList { - min-elements 1; - key "function"; - uses types5g3gpp:SupportedFunc; - } - - } - - augment "/me3gpp:ManagedElement" { - list SCPFunction { - description "5G Core SCP Function"; - reference "3GPP TS 28.541"; - key id; - uses top3gpp:Top_Grp; - container attributes { - uses SCPFunctionGrp; - } - } - } -} \ No newline at end of file diff --git a/yang-models/_3gpp-5gc-nrm-seppfunction.yang b/yang-models/_3gpp-5gc-nrm-seppfunction.yang deleted file mode 100755 index e4793dd3f..000000000 --- a/yang-models/_3gpp-5gc-nrm-seppfunction.yang +++ /dev/null @@ -1,70 +0,0 @@ -module _3gpp-5gc-nrm-seppfunction { - yang-version 1.1; - - namespace urn:3gpp:sa5:_3gpp-5gc-nrm-seppfunction; - prefix sepp3gpp; - - import _3gpp-common-managed-function { prefix mf3gpp; } - import _3gpp-common-managed-element { prefix me3gpp; } - import _3gpp-common-yang-types { prefix types3gpp; } - import _3gpp-common-top { prefix top3gpp; } - import ietf-inet-types { prefix inet; } - - organization "3gpp SA5"; - description "This IOC represents the SEPP function which support message filtering - and policing on inter-PLMN control plane interface. For more information about the SEPP, see 3GPP TS 23.501."; - reference "3GPP TS 28.541"; - - revision 2020-08-03 { reference "CR-0321"; } - revision 2019-10-28 { reference S5-193518 ; } - - typedef SEPPType { - reference "3GPP TS 23501"; - type enumeration { - enum CSEPP { - value 0; - description "consumer SEPP"; - } - - enum PSEPP { - value 1; - description "producer SEPP"; - } - } - } - - grouping SEPPFunctionGrp { - uses mf3gpp:ManagedFunctionGrp; - - container pLMNId { - description "PLMN Identifiers of the sepp. - The PLMN Identifier is composed of a Mobile Country Code (MCC) and a Mobile Network Code (MNC)."; - uses types3gpp:PLMNId; - } - - leaf sEPPType { - type sepp3gpp:SEPPType; - } - - leaf sEPPId { - type uint16; - } - - leaf fqdn { - description "The domain name of the SEPP."; - type inet:domain-name; - } - } - - augment "/me3gpp:ManagedElement" { - list SEPPFunction { - description "5G Core SEPP Function"; - reference "3GPP TS 28.541"; - key id; - uses top3gpp:Top_Grp; - container attributes { - uses SEPPFunctionGrp; - } - uses mf3gpp:ManagedFunctionContainedClasses; } - } -} \ No newline at end of file diff --git a/yang-models/_3gpp-5gc-nrm-smffunction.yang b/yang-models/_3gpp-5gc-nrm-smffunction.yang deleted file mode 100755 index 3fe49264d..000000000 --- a/yang-models/_3gpp-5gc-nrm-smffunction.yang +++ /dev/null @@ -1,95 +0,0 @@ -module _3gpp-5gc-nrm-smffunction { - yang-version 1.1; - namespace urn:3gpp:sa5:_3gpp-5gc-nrm-smffunction; - prefix smf3gpp; - - import _3gpp-common-managed-function { prefix mf3gpp; } - import _3gpp-common-managed-element { prefix me3gpp; } - import _3gpp-common-yang-types { prefix types3gpp; } - import _3gpp-5g-common-yang-types { prefix types5g3gpp; } - import ietf-inet-types { prefix inet; } - import _3gpp-common-top { prefix top3gpp; } - - description "SMFFunction derived from basic ManagedFunction."; - - revision 2020-08-06 { reference "CR-0333"; } - revision 2020-06-03 { reference "CR-0286"; } - revision 2019-10-25 { reference "S5-194457 S5-193518"; } - revision 2019-05-31 { - description "Ericsson refactoring."; - } - - revision 2018-08-07 { - description "Initial revision"; - } - - grouping SMFFunctionGrp { - uses mf3gpp:ManagedFunctionGrp; - - list pLMNIdList { - min-elements 1; - description "A list of PLMN identifiers (Mobile Country Code and Mobile Network Code)."; - key "mcc mnc"; - uses types3gpp:PLMNId; - } - - leaf-list nRTACList { - description "List of Tracking Area Codes (legacy TAC or extended TAC) - where the represented management function is serving."; - reference "TS 38.413 clause 9.3.3.10"; - min-elements 1; - config false; - type types3gpp:Tac; - } - - leaf sBIFQDN { - description "The FQDN of the registered NF instance in the service-based interface."; - type inet:domain-name; - } - - leaf-list sNSSAIList { - min-elements 0; - description "List of S-NSSAIs the managed object is capable of supporting. - (Single Network Slice Selection Assistance Information) - An S-NSSAI has an SST (Slice/Service type) and an optional SD - (Slice Differentiator) field."; - reference "3GPP TS 23.003"; - type types3gpp:SNssai; - } - - list managedNFProfile { - key idx; - min-elements 1; - uses types3gpp:ManagedNFProfile; - } - - list commModelList { - min-elements 1; - key "groupId"; - uses types5g3gpp:CommModel; - } - - leaf configurable5QISetRef { - type types3gpp:DistinguishedName; - description "DN of the Configurable5QISet that the SMFFunction supports (is associated to)."; - } - - leaf dynamic5QISetRef { - type types3gpp:DistinguishedName; - description "DN of the Dynamic5QISet that the SMFFunction supports (is associated to)."; - } - } - - augment "/me3gpp:ManagedElement" { - list SMFFunction { - description "5G Core SMF Function"; - reference "3GPP TS 28.541"; - key id; - uses top3gpp:Top_Grp; - container attributes { - uses SMFFunctionGrp; - } - uses mf3gpp:ManagedFunctionContainedClasses; - } - } -} \ No newline at end of file diff --git a/yang-models/_3gpp-5gc-nrm-smsffunction.yang b/yang-models/_3gpp-5gc-nrm-smsffunction.yang deleted file mode 100755 index 720d90417..000000000 --- a/yang-models/_3gpp-5gc-nrm-smsffunction.yang +++ /dev/null @@ -1,62 +0,0 @@ -module _3gpp-5gc-nrm-smsffunction { - yang-version 1.1; - - namespace urn:3gpp:sa5:_3gpp-5gc-nrm-smsffunction; - prefix smsf3gpp; - - import _3gpp-common-managed-function { prefix mf3gpp; } - import _3gpp-common-managed-element { prefix me3gpp; } - import _3gpp-common-yang-types { prefix types3gpp; } - import _3gpp-5g-common-yang-types { prefix types5g3gpp; } - import _3gpp-common-top { prefix top3gpp; } - - organization "3gpp SA5"; - description "This IOC represents the SMSF function defined in 3GPP TS 23.501."; - reference "3GPP TS 28.541"; - - revision 2019-10-25 { reference "S5-194457 S5-195427 S5-193518"; } - - revision 2019-05-15 { - description "initial revision"; - - } - - grouping SMSFFunctionGrp { - uses mf3gpp:ManagedFunctionGrp; - - list pLMNIdList { - description "List of at most six entries of PLMN Identifiers, but at least one (the primary PLMN Id). - The PLMN Identifier is composed of a Mobile Country Code (MCC) and a Mobile Network Code (MNC)."; - - min-elements 1; - max-elements 6; - key "mcc mnc"; - uses types3gpp:PLMNId; - } - - list managedNFProfile { - key idx; - min-elements 1; - uses types3gpp:ManagedNFProfile; - } - - list commModelList { - min-elements 1; - key "groupId"; - uses types5g3gpp:CommModel; - } - } - - augment "/me3gpp:ManagedElement" { - list SMSFFunction { - description "5G Core SMSF Function"; - reference "3GPP TS 28.541"; - key id; - uses top3gpp:Top_Grp; - container attributes { - uses SMSFFunctionGrp; - } - uses mf3gpp:ManagedFunctionContainedClasses; - } - } -} \ No newline at end of file diff --git a/yang-models/_3gpp-5gc-nrm-udmfunction.yang b/yang-models/_3gpp-5gc-nrm-udmfunction.yang deleted file mode 100755 index 5e2a32f82..000000000 --- a/yang-models/_3gpp-5gc-nrm-udmfunction.yang +++ /dev/null @@ -1,77 +0,0 @@ -module _3gpp-5gc-nrm-udmfunction { - yang-version 1.1; - - namespace urn:3gpp:sa5:_3gpp-5gc-nrm-udmfunction; - prefix udm3gpp; - - import _3gpp-common-managed-function { prefix mf3gpp; } - import _3gpp-common-managed-element { prefix me3gpp; } - import ietf-inet-types { prefix inet; } - import _3gpp-common-yang-types { prefix types3gpp; } - import _3gpp-5g-common-yang-types { prefix types5g3gpp; } - import _3gpp-common-top { prefix top3gpp; } - - organization "3gpp SA5"; - description "This IOC represents the UDM function in 5GC. For more information about the UDM, see 3GPP TS 23.501."; - reference "3GPP TS 28.541"; - - revision 2019-10-25 { reference "S5-194457 S5-195427 S5-193518"; } - - revision 2019-05-22 { - description "initial revision"; - } - - grouping UDMFuntionGrp { - uses mf3gpp:ManagedFunctionGrp; - - list pLMNIdList { - description "List of at most six entries of PLMN Identifiers, but at least one (the primary PLMN Id). - The PLMN Identifier is composed of a Mobile Country Code (MCC) and a Mobile Network Code (MNC)."; - - min-elements 1; - max-elements 6; - key "mcc mnc"; - uses types3gpp:PLMNId; - } - - leaf sBIFQDN { - description "The FQDN of the registered NF instance in the service-based interface."; - type inet:domain-name; - } - - leaf-list sNSSAIList { - description "List of S-NSSAIs the managed object is capable of supporting. - (Single Network Slice Selection Assistance Information) - An S-NSSAI has an SST (Slice/Service type) and an optional SD - (Slice Differentiator) field."; - //optional support - reference "3GPP TS 23.003"; - type types3gpp:SNssai; - } - - list managedNFProfile { - key idx; - min-elements 1; - uses types3gpp:ManagedNFProfile; - } - - list commModelList { - min-elements 1; - key "groupId"; - uses types5g3gpp:CommModel; - } - } - - augment "/me3gpp:ManagedElement" { - list UDMFunction { - description "5G Core UDM Function"; - reference "3GPP TS 28.541"; - key id; - uses top3gpp:Top_Grp; - container attributes { - uses UDMFuntionGrp; - } - uses mf3gpp:ManagedFunctionContainedClasses; - } - } -} \ No newline at end of file diff --git a/yang-models/_3gpp-5gc-nrm-udrfunction.yang b/yang-models/_3gpp-5gc-nrm-udrfunction.yang deleted file mode 100755 index 49e433a49..000000000 --- a/yang-models/_3gpp-5gc-nrm-udrfunction.yang +++ /dev/null @@ -1,70 +0,0 @@ -module _3gpp-5gc-nrm-udrfunction { - yang-version 1.1; - - namespace urn:3gpp:sa5:_3gpp-5gc-nrm-udrfunction; - prefix udr3gpp; - - import _3gpp-common-managed-function { prefix mf3gpp; } - import _3gpp-common-managed-element { prefix me3gpp; } - import ietf-inet-types { prefix inet; } - import _3gpp-common-yang-types { prefix types3gpp; } - import _3gpp-common-top { prefix top3gpp; } - - organization "3gpp SA5"; - description "This IOC represents the UDR function in 5GC. For more information about the UDR, see 3GPP TS 23.501."; - reference "3GPP TS 28.541"; - - revision 2019-10-25 { reference "S5-194457 S5-195427 S5-193518"; } - - revision 2019-05-22 { - description "initial revision"; - } - - grouping UDRFuntionGrp { - uses mf3gpp:ManagedFunctionGrp; - - list pLMNIdList { - description "List of at most six entries of PLMN Identifiers, but at least one (the primary PLMN Id). - The PLMN Identifier is composed of a Mobile Country Code (MCC) and a Mobile Network Code (MNC)."; - - min-elements 1; - max-elements 6; - key "mcc mnc"; - uses types3gpp:PLMNId; - } - - leaf sBIFQDN { - description "The FQDN of the registered NF instance in the service-based interface."; - type inet:domain-name; - } - - leaf-list sNSSAIList { - description "List of S-NSSAIs the managed object is capable of supporting. - (Single Network Slice Selection Assistance Information) - An S-NSSAI has an SST (Slice/Service type) and an optional SD - (Slice Differentiator) field."; - //optional support - reference "3GPP TS 23.003"; - type types3gpp:SNssai; - } - - list managedNFProfile { - key idx; - min-elements 1; - uses types3gpp:ManagedNFProfile; - } - } - - augment "/me3gpp:ManagedElement" { - list UDRFunction { - description "5G Core UDR Function"; - reference "3GPP TS 28.541"; - key id; - uses top3gpp:Top_Grp; - container attributes { - uses UDRFuntionGrp; - } - uses mf3gpp:ManagedFunctionContainedClasses; - } - } -} \ No newline at end of file diff --git a/yang-models/_3gpp-5gc-nrm-udsffunction.yang b/yang-models/_3gpp-5gc-nrm-udsffunction.yang deleted file mode 100755 index f17d130dc..000000000 --- a/yang-models/_3gpp-5gc-nrm-udsffunction.yang +++ /dev/null @@ -1,70 +0,0 @@ -module _3gpp-5gc-nrm-udsffunction { - yang-version 1.1; - - namespace urn:3gpp:sa5:_3gpp-5gc-nrm-udsffunction; - prefix udsf3gpp; - - import _3gpp-common-managed-function { prefix mf3gpp; } - import _3gpp-common-managed-element { prefix me3gpp; } - import ietf-inet-types { prefix inet; } - import _3gpp-common-yang-types { prefix types3gpp; } - import _3gpp-common-top { prefix top3gpp; } - - organization "3gpp SA5"; - description "This IOC represents the UDSF function which can be interacted with any other 5GC NF defined in 3GPP TS 23.501."; - reference "3GPP TS 28.541"; - - revision 2019-10-25 { reference "S5-194457 S5-195427 S5-193518"; } - - revision 2019-05-22 { - description "initial revision"; - - } - - grouping UDSFFuntionGrp { - uses mf3gpp:ManagedFunctionGrp; - - list pLMNIdList { - description "List of at most six entries of PLMN Identifiers, but at least one (the primary PLMN Id). - The PLMN Identifier is composed of a Mobile Country Code (MCC) and a Mobile Network Code (MNC)."; - - min-elements 1; - max-elements 6; - key "mcc mnc"; - uses types3gpp:PLMNId; - } - - leaf sBIFQDN { - description "The FQDN of the registered NF instance in the service-based interface."; - type inet:domain-name; - } - - leaf-list sNSSAIList { - description "List of S-NSSAIs the managed object is capable of supporting. - (Single Network Slice Selection Assistance Information) - An S-NSSAI has an SST (Slice/Service type) and an optional SD - (Slice Differentiator) field."; - //optional support - reference "3GPP TS 23.003"; - type types3gpp:SNssai; - } - - list managedNFProfile { - key idx; - min-elements 1; - uses types3gpp:ManagedNFProfile; - } - } - - augment "/me3gpp:ManagedElement" { - list UDSFFunction { - description "5G Core UDSF Function"; - reference "3GPP TS 28.541"; - key id; - uses top3gpp:Top_Grp; - container attributes { - uses UDSFFuntionGrp; - } - uses mf3gpp:ManagedFunctionContainedClasses; } - } -} \ No newline at end of file diff --git a/yang-models/_3gpp-5gc-nrm-upffunction.yang b/yang-models/_3gpp-5gc-nrm-upffunction.yang deleted file mode 100755 index 2ca20b923..000000000 --- a/yang-models/_3gpp-5gc-nrm-upffunction.yang +++ /dev/null @@ -1,77 +0,0 @@ -module _3gpp-5gc-nrm-upffunction { - yang-version 1.1; - namespace urn:3gpp:sa5:_3gpp-5gc-nrm-upffunction; - prefix upf3gpp; - - import _3gpp-common-managed-function { prefix mf3gpp; } - import _3gpp-common-managed-element { prefix me3gpp; } - import _3gpp-common-yang-types { prefix types3gpp; } - import _3gpp-5g-common-yang-types { prefix types5g3gpp; } - import _3gpp-common-top { prefix top3gpp; } - - description "UPFFunction derived from basic ManagedFunction."; - - revision 2019-10-25 { reference "S5-194457 S5-193518"; } - revision 2019-05-31 { - description "Ericsson refactoring."; - } - - revision 2018-08-07 { - description "Initial revision"; - } - - grouping UPFFunctionGrp { - uses mf3gpp:ManagedFunctionGrp; - - list pLMNIdList { - description "A list of PLMN identifiers (Mobile Country Code and Mobile Network Code)."; - min-elements 1; - key "mcc mnc"; - uses types3gpp:PLMNId; - } - - leaf-list nRTACList { - description "List of Tracking Area Codes (legacy TAC or extended TAC) - where the represented management function is serving."; - reference "TS 38.413 clause 9.3.3.10"; - min-elements 1; - config false; - type types3gpp:Tac; - } - - leaf-list sNSSAIList { - description "List of S-NSSAIs the managed object is capable of supporting. - (Single Network Slice Selection Assistance Information) - An S-NSSAI has an SST (Slice/Service type) and an optional SD - (Slice Differentiator) field."; - min-elements 0; - reference "3GPP TS 23.003"; - type types3gpp:SNssai; - } - - list managedNFProfile { - key idx; - min-elements 1; - uses types3gpp:ManagedNFProfile; - } - - list commModelList { - min-elements 1; - key "groupId"; - uses types5g3gpp:CommModel; - } - } - - augment /me3gpp:ManagedElement { - list UPFFunction { - description "5G Core UPF Function"; - reference "3GPP TS 28.541"; - key id; - uses top3gpp:Top_Grp; - container attributes { - uses UPFFunctionGrp; - } - uses mf3gpp:ManagedFunctionContainedClasses; - } - } -} \ No newline at end of file diff --git a/yang-models/_3gpp-common-ep-rp.yang b/yang-models/_3gpp-common-ep-rp.yang deleted file mode 100755 index 0dc1ddc30..000000000 --- a/yang-models/_3gpp-common-ep-rp.yang +++ /dev/null @@ -1,68 +0,0 @@ -module _3gpp-common-ep-rp { - yang-version 1.1; - namespace "urn:3gpp:sa5:_3gpp-common-ep-rp"; - prefix "eprp3gpp"; - - import _3gpp-common-yang-types { prefix types3gpp ; } - import ietf-inet-types { prefix inet; } - import _3gpp-common-measurements { prefix meas3gpp; } - - organization "3GPP SA5"; - contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; - description "Common/basic class/grouping to be inherited/reused. - This IOC represents an end point of a link used across a reference - point between two network entities."; - reference - "3GPP TS 28.622 - Generic Network Resource Model (NRM) - Integration Reference Point (IRP); - Information Service (IS) - - 3GPP TS 28.620 - Umbrella Information Model (UIM)"; - - revision 2020-06-08 { reference "CR-0092"; } - - revision 2019-06-17 { - description "Initial revision"; - } - - grouping EP_RPGrp { - description "Abstract class, represents an end point of a link used - across a reference point between two network entities. - - For naming the subclasses of EP_RP, the following rules shall apply: - - The name of the subclassed IOC shall have the form 'EP_', - where is a string that represents the name of the reference point. - Thus, two valid examples of EP_RP subclassed IOC names would be: - EP_S1 and EP_X2."; - - leaf userLabel { - type string; - description "A user-friendly (and user assignable) name of this object."; - } - - leaf farEndEntity { - config false; - type types3gpp:DistinguishedName; - } - } - - grouping EP_Common { - uses EP_RPGrp; - uses meas3gpp:SupportedPerfMetricGroupGrp; - list localAddress { - description "Local IP address and VLAN ID."; - key "ipAddress vlanId"; - min-elements 1; - max-elements 1; - uses types3gpp:AddressWithVlan; - } - - leaf remoteAddress { - description "Remote IP address."; - mandatory true; - type inet:ip-address; - } - } -} \ No newline at end of file diff --git a/yang-models/_3gpp-common-fm.yang b/yang-models/_3gpp-common-fm.yang deleted file mode 100755 index 10ea1a9c3..000000000 --- a/yang-models/_3gpp-common-fm.yang +++ /dev/null @@ -1,408 +0,0 @@ -module _3gpp-common-fm { - yang-version 1.1; - namespace "urn:3gpp:sa5:_3gpp-common-fm"; - prefix "fm3gpp"; - - import ietf-yang-types { prefix yang; } - import _3gpp-common-top { prefix top3gpp; } - import _3gpp-common-yang-types { prefix types3gpp; } - - organization "3GPP SA5"; - contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; - - description "Defines a Fault Management model"; - - reference "3GPP TS 28.623 - Generic Network Resource Model (NRM) - Integration Reference Point (IRP); - Solution Set (SS) definitions - - 3GPP TS 28.622 - Generic Network Resource Model (NRM) - Integration Reference Point (IRP); - Information Service (IS)"; - - revision 2020-06-03 { reference "CR-0091"; } - revision 2020-02-24 { - reference "S5-201365"; - } - - typedef eventType { - type enumeration { - enum COMMUNICATIONS_ALARM { - value 2; - } - - enum QUALITY_OF_SERVICE_ALARM { - value 3; - } - - enum PROCESSING_ERROR_ALARM { - value 4; - } - - enum EQUIPMENT_ALARM { - value 5; - } - - enum ENVIRONMENTAL_ALARM { - value 6; - } - - enum INTEGRITY_VIOLATION { - value 7; - } - - enum OPERATIONAL_VIOLATION { - value 8; - } - - enum PHYSICAL_VIOLATIONu { - value 9; - } - - enum SECURITY_SERVICE_OR_MECHANISM_VIOLATION { - value 10; - } - - enum TIME_DOMAIN_VIOLATION { - value 11; - } - } - - description "General category for the alarm."; - } - - typedef severity-level { - type enumeration { - enum CRITICAL { value 3; } - enum MAJOR { value 4; } - enum MINOR { value 5; } - enum WARNING { value 6; } - enum INDETERMINATE { value 7; } - enum CLEARED { value 8; } - } - - description "The possible alarm serverities. - Aligned with ERICSSON-ALARM-MIB."; - } - - grouping AlarmRecordGrp { - description "Contains alarm information of an alarmed object instance. - A new record is created in the alarm list when an alarmed object - instance generates an alarm and no alarm record exists with the same - values for objectInstance, alarmType, probableCause and specificProblem. - When a new record is created the MnS producer creates an alarmId, that - unambiguously identifies an alarm record in the AlarmList. - - Alarm records are maintained only for active alarms. Inactive alarms are - automatically deleted by the MnS producer from the AlarmList. - Active alarms are alarms whose - a) perceivedSeverity is not CLEARED, or whose - b) perceivedSeverity is CLEARED and its ackState is not ACKNOWLEDED."; - - leaf alarmId { - type string; - mandatory true; - description "Identifies the alarmRecord"; - } - - leaf objectInstance { - type string; - config false ; - mandatory true; - } - - leaf notificationId { - type string; - config false ; - mandatory true; - } - - leaf alarmRaisedTime { - type yang:date-and-time ; - config false ; - } - - leaf alarmChangedTime { - type yang:date-and-time ; - config false ; - description "not applicable if related alarm has not changed"; - } - - leaf alarmClearedTime { - type yang:date-and-time ; - config false ; - description "not applicable if related alarm was not cleared"; - } - - leaf alarmType { - type eventType; - config false ; - description "General category for the alarm."; - } - - leaf probableCause { - type string; - config false ; - } - - leaf specificProblem { - type string; - config false ; - reference "ITU-T Recommendation X.733 clause 8.1.2.2."; - } - - leaf perceivedSeverity { - type severity-level; - description "This is Writable only if producer supports consumer - to set perceivedSeverity to CLEARED"; - } - - leaf backedUpStatus { - type string; - config false ; - description "Indicates if an object (the MonitoredEntity) has a back - up. See definition in ITU-T Recommendation X.733 clause 8.1.2.4."; - } - - leaf backUpObject { - type string; - config false ; - } - - leaf trendIndication { - type string; - config false ; - description "Indicates if some observed condition is getting better, - worse, or not changing. "; - reference "ITU-T Recommendation X.733 clause 8.1.2.6."; - } - - grouping ThresholdPackGrp { - leaf thresholdLevel { - type string; - } - leaf thresholdValue { - type string; - } - leaf hysteresis { - type string; - description "The hysteresis has a threshold high and a threshold - low value that are different from the threshold value. - A hysteresis, therefore, defines the threshold-high and - threshold-low levels within which the measurementType value is - allowed to oscillate without triggering the threshold crossing - notification."; - } - } - - grouping ThresholdInfoGrp { - leaf measurementType { - type string; - mandatory true; - } - - leaf direction { - type enumeration { - enum INCREASING; - enum DECREASING; - } - mandatory true; - description " - If it is 'Increasing', the threshold crossing notification is - triggered when the measurement value equals or exceeds a - thresholdValue. - - If it is 'Decreasing', the threshold crossing notification is - triggered when the measurement value equals or below a - thresholdValue."; - } - - uses ThresholdPackGrp; - } - - list thresholdInfo { - config false ; - uses ThresholdInfoGrp; - } - - leaf stateChangeDefinition { - type string; - config false ; - description "Indicates MO attribute value changes. See definition - in ITU-T Recommendation X.733 clause 8.1.2.11."; - } - - leaf monitoredAttributes { - type string; - config false ; - description "Indicates MO attributes whose value changes are being - monitored. See definition in ITU-T Recommendation X.733 clause 8.1.2.11."; - } - - leaf proposedRepairActions { - type string; - config false ; - description "Indicates proposed repair actions. See definition in - ITU-T Recommendation X.733 clause 8.1.2.12."; - } - - leaf additionalText { - type string; - config false ; - } - - leaf additionalInformation { - type string; - config false ; - } - - leaf rootCauseIndicator { - type enumeration { - enum YES; - enum NO; - } - config false ; - description "It indicates that this AlarmInformation is the root cause - of the events captured by the notifications whose identifiers are in - the related CorrelatedNotification instances."; - } - - leaf ackTime { - type yang:date-and-time ; - config false ; - description "It identifies the time when the alarm has been - acknowledged or unacknowledged the last time, i.e. it registers the - time when ackState changes."; - } - - leaf ackUserId { - type string; - description "It identifies the last user who has changed the - Acknowledgement State."; - } - - leaf ackSystemId { - type string; - description "It identifies the system (Management System) that last - changed the ackState of an alarm, i.e. acknowledged or unacknowledged - the alarm."; - } - - leaf ackState { - type enumeration { - enum ACKNOWLEDGED { - description "The alarm has been acknowledged."; - } - enum UNACKNOWLEDGED { - description "The alarm has unacknowledged or the alarm has never - been acknowledged."; - } - } - } - - leaf clearUserId { - type string; - description "Carries the identity of the user who invokes the - clearAlarms operation."; - } - - leaf clearSystemId { - type string; - } - - leaf serviceUser { - type string; - config false ; - description "It identifies the service-user whose request for service - provided by the serviceProvider led to the generation of the - security alarm."; - } - - leaf serviceProvider { - type string; - config false ; - description "It identifies the service-provider whose service is - requested by the serviceUser and the service request provokes the - generation of the security alarm."; - } - - leaf securityAlarmDetector { - type string; - config false ; - } - } - - grouping AlarmListGrp { - description "Represents the AlarmList IOC."; - - leaf administrativeState { - type types3gpp:AdministrativeState ; - default LOCKED; - description "When set to UNLOCKED, the alarm list is updated. - When the set to LOCKED, the existing alarm records are not - updated, and new alarm records are not added to the alarm list."; - } - - leaf operationalState { - type types3gpp:OperationalState ; - default DISABLED; - config false; - description "The producer sets this attribute to ENABLED, indicating - that it has the resource and ability to record alarm in AlarmList - else, it sets the attribute to DISABLED."; - } - - leaf numOfAlarmRecords { - type uint32 ; - config false; - mandatory true; - description "The number of alarm records in the AlarmList"; - } - - leaf lastModification { - type yang:date-and-time ; - config false; - description "The last time when an alarm record was modified"; - } - - list alarmRecords { - key alarmId; - description "List of alarmRecords"; - uses AlarmRecordGrp; - } - } - - grouping FmSubtree { - description "Contains FM related classes. - Should be used in all classes (or classes inheriting from) - - SubNetwork - - ManagedElement - - If some YAM wants to augment these classes/list/groupings they must - augment all user classes!"; - - list AlarmList { - key id; - max-elements 1; - description "The AlarmList represents the capability to store and manage - alarm records. The management scope of an AlarmList is defined by all - descendant objects of the base managed object, which is the object - name-containing the AlarmList, and the base object itself. - - AlarmList instances are created by the system or are pre-installed. - They cannot be created nor deleted by MnS consumers. - - When the alarm list is locked or disabled, the existing alarm records - are not updated, and new alarm records are not added to the alarm list"; - - - uses top3gpp:Top_Grp ; - container attributes { - uses AlarmListGrp ; - } - } - } - -} \ No newline at end of file diff --git a/yang-models/_3gpp-common-managed-element.yang b/yang-models/_3gpp-common-managed-element.yang deleted file mode 100755 index 9c94add88..000000000 --- a/yang-models/_3gpp-common-managed-element.yang +++ /dev/null @@ -1,223 +0,0 @@ -module _3gpp-common-managed-element { - yang-version 1.1; - namespace urn:3gpp:sa5:_3gpp-common-managed-element; - prefix "me3gpp"; - - import _3gpp-common-yang-types { prefix types3gpp ; } - import _3gpp-common-top { prefix top3gpp; } - import _3gpp-common-measurements { prefix meas3gpp; } - import _3gpp-common-fm { prefix fm3gpp; } - import _3gpp-common-trace { prefix trace3gpp; } - - organization "3GPP SA5"; - contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; - description "Defines ManagedElement which will be augmented - by other IOCs"; - reference "3GPP TS 28.623 - Generic Network Resource Model (NRM) - Integration Reference Point (IRP); - Solution Set (SS) definitions - - 3GPP TS 28.622 - Generic Network Resource Model (NRM) - Integration Reference Point (IRP); - Information Service (IS) - - 3GPP TS 28.620 - Umbrella Information Model (UIM)"; - - revision 2020-08-06 { reference "CR-0102"; } - revision 2020-08-03 { reference "CR-0095"; } - revision 2020-06-08 { reference "CR-0092"; } - revision 2020-05-12 { reference "CR0084"; } - revision 2020-02-24 { reference "S5-201365"; } - revision 2019-06-17 { reference " S5-203316"; } - revision 2019-05-08 { description "Initial revision"; } - - feature MeasurementsUnderManagedElement { - description "The MeasurementSubtree shall be contained under ManagedElement"; - } - - feature FmUnderManagedElement { - description "The FmSubtree shall be contained under ManagedElement"; - } - - feature TraceUnderManagedElement { - description "The TraceSubtree shall be contained under ManageElement"; - } - - feature DESManagementFunction { - description "Classs representing Distributed SON or Domain-Centralized SON Energy Saving feature. The DESManagementFunction shall be contained under ManagedElement."; - } - - feature DMROFunction { - description "Classs representing D-SON function of MRO feature. The DMROFunction shall be contained under ManagedElement."; - } - - feature DRACHOptimizationFunction { - description "Classs representing D-SON function of RACH optimization feature. The DRACHOptimizationFunction shall be contained under ManagedElement."; - } - - feature DPCIConfigurationFunction { - description "Classs representing Distributed SON or Domain-Centralized SON function of PCI configuration feature. The DPCIConfigurationFunction shall be contained under ManagedElement."; - } - - feature CPCIConfigurationFunction { - description "Classs representing Cross Domain-Centralized SON function of PCI configuration feature. The CPCIConfigurationFunction shall be contained under ManagedElement."; - } - - feature CESManagementFunction { - description "Classs representing Cross Domain-Centralized SON Energy Saving feature. The CESManagementFunction shall be contained under ManagedElement."; - } - - grouping ManagedElement_Grp { - description "Abstract class representing telecommunications resources. - An ME communicates with a manager (directly or indirectly) for the - purpose of being monitored and/or controlled. MEs may perform element - management functionality. - An ME (and its contained Function_(s)) may or may not be geographically - distributed. An ME (and its contained Function_(s)) is often referred - to as a Network Element"; - - leaf dnPrefix { - description "Provides naming context that allows the Managed - Elements to be partitioned into logical domains. - A Distingushed Name(DN) is defined by 3GPP TS 32.300, - which splits the DN into a DN Prefix and Local DN"; - type types3gpp:DistinguishedName; - } - - leaf userLabel { - description "A user-friendly (and user assignable) name of this object."; - type string; - } - - leaf locationName { - description "The physical location (e.g. an address) of an entity - represented by a (derivative of) ManagedElement_. It may contain no - information to support the case where the derivative of - ManagedElement_ needs to represent a distributed multi-location NE."; - config false; - type string; - } - - leaf-list managedBy { - description "Relates to the role played by ManagementSystem_ in the - between ManagedSystem_ and ManagedElement_. This attribute contains - a list of the DN(s) of the related subclasses of - ManagementSystem_ instance(s)."; - - config false; - type types3gpp:DistinguishedName; - } - - leaf-list managedElementTypeList { - description "The type of functionality provided by the ManagedElement. - It may represent one ME functionality or a combination of - more than one functionality. - 1) The allowed values of this attribute are the names of the IOC(s) - that are (a) derived/subclassed from ManagedFunction and (b) directly - name-contained by ManagedElement IOC (on the first level below - ManagedElement), but with the string 'Function' excluded. - 2) If a ManagedElement contains multiple instances of a ManagedFunction - this attribute will not contain repeated values. - 3) The capitalisation (usage of upper/lower case) of characters in this - attribute is insignificant. Thus, the NodeB should be case insensitive - when reading these values. - 4) Two examples of allowed values are: - - NodeB; - - HLR, VLR."; - - config false; - min-elements 1; - type string; - } - } - - grouping ManagedElementGrp { - description "Represents telecommunications equipment or - TMN entities within the telecommunications network providing support - and/or service to the subscriber."; - - uses ManagedElement_Grp; - uses meas3gpp:SupportedPerfMetricGroupGrp { - if-feature MeasurementsUnderManagedElement ; - } - - leaf vendorName { - config false; - type string; - } - - leaf userDefinedState { - type string; - description "An operator defined state for operator specific usage"; - } - - leaf swVersion { - config false; - type string; - } - - leaf priorityLabel { - type uint32; - mandatory true; - } - } - - list ManagedElement { - description "Represents telecommunications equipment or - TMN entities within the telecommunications network providing support - and/or service to the subscriber. - An ManagedElement IOC is used to represent a Network Element defined - in TS 32.101 including virtualizeation or non-virtualization scenario. - An ManagedElement instance is used for communicating with a manager (directly or indirectly) - over one or more management interfaces for the purpose of being monitored and/or - controlled. ManagedElement may or may not additionally perform element management - functionality. - An ManagedElement contains equipment that may or may not be geographically - distributed. - A telecommunication equipment has software and hardware components. - The ManagedElement IOC described above represents following two case: - - In the case when the when the software component - is designed to run on dedicated hardware component, the ManagedElement IOC - description includes both software and hardware components. - - In the case when the Software is designed to run on ETSI NFV defined NFVI [15], the - ManagedElement - IOC description would exclude the NFVI component supporting the above - mentioned subject software. A ManagedElement may be contained in either a SubNetwork or in a - MeContext instance. A single ManagedElement may also - exist stand-alone with no parent at all. - The relation of ManagedElement IOC and ManagedFunction IOC can be described as following: - - A ManaagedElement instance may have 1..1 containment relationship to a ManagedFunction - instance. In this case, the ManagedElement IOC may be used to represent a NE with signgle - functionality. For example, a ManagedElement is used to represent the 3GPP defined RNC - node; - - A ManagedElement instance may have 1..N containment relationship to multiple - ManagedFunction IOC instances. In this case, the ManagedElement IOC may be used to represent - a NE with combined ManagedFunction funcationality (as indicated by the managedElementType - attribute and the contained - instances of different ManagedFunction IOCs).For example, a - ManagedElement is used to represent the combined functionality of 3GPP defined - gNBCUCPFuntion,gNBCUUPFunction and gNBDUFunction"; - - key id; - uses top3gpp:Top_Grp; - container attributes { - uses ManagedElementGrp; - } - - uses meas3gpp:MeasurementSubtree { - if-feature MeasurementsUnderManagedElement ; - } - - uses fm3gpp:FmSubtree { - if-feature FmUnderManagedElement ; - } - - uses trace3gpp:TraceSubtree { - if-feature TraceUnderManagedElement ; - } - - } -} \ No newline at end of file diff --git a/yang-models/_3gpp-common-managed-function.yang b/yang-models/_3gpp-common-managed-function.yang deleted file mode 100755 index 34415c24f..000000000 --- a/yang-models/_3gpp-common-managed-function.yang +++ /dev/null @@ -1,305 +0,0 @@ -module _3gpp-common-managed-function { - yang-version 1.1; - namespace urn:3gpp:sa5:_3gpp-common-managed-function; - prefix mf3gpp; - - import _3gpp-common-yang-types { prefix types3gpp; } - import _3gpp-common-top { prefix top3gpp; } - import _3gpp-common-measurements { prefix meas3gpp; } - import _3gpp-common-trace { prefix trace3gpp; } - - organization "3GPP SA5"; - contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; - description "The module defines a base class/grouping for major 3GPP functions."; - reference - "3GPP TS 28.622 - Generic Network Resource Model (NRM) - Integration Reference Point (IRP); - Information Service (IS) - - 3GPP TS 28.620 - Umbrella Information Model (UIM)"; - - revision 2020-08-06 { reference "CR-0102"; } - revision 2020-08-03 { reference "CR-0095"; } - revision 2020-06-23 { reference "CR-085"; } - revision 2020-06-08 { reference "CR-0092"; } - revision 2019-11-21 { reference "S5-197275, S5-197735"; } - revision 2019-10-28 { reference S5-193518 ; } - revision 2019-06-18 { description "Initial revision"; } - - feature MeasurementsUnderManagedFunction { - description "The MeasurementSubtree shall be contained under ManageElement"; - } - - feature TraceUnderManagedFunction { - description "The TraceSubtree shall be contained under ManagedFunction"; - } - - grouping Operation { - reference "3gpp TS 28.622"; - - leaf name { - type string; - mandatory true; - } - - leaf-list allowedNFTypes { - type string; - min-elements 1; - description "The type of the managed NF service instance - The specifc values allowed are described in TS 23.501"; - } - - leaf operationSemantics { - type enumeration { - enum REQUEST_RESPONSE; - enum SUBSCRIBE_NOTIFY; - - } - config false; - mandatory true; - description "Semantics type of the operation."; - reference "3GPP TS 23.502"; - } - } - - grouping ManagedNFServiceGrp { - description "A ManagedNFService represents a Network Function (NF) service."; - reference "Clause 7 of 3GPP TS 23.501."; - - leaf userLabel { - type string; - description "A user-friendly (and user assignable) name of this object."; - } - - leaf nFServiceType { - config false; - mandatory true; - type string; - description "The type of the managed NF service instance - The specifc values allowed are described in clause 7.2 of TS 23.501"; - } - - list sAP { - key "host port"; - min-elements 1; - max-elements 1; - description "The service access point of the managed NF service instance"; - uses types3gpp:SAP; - } - - list operations { - key name; - min-elements 1; - uses Operation ; - description "Set of operations supported by the managed NF - service instance"; - } - - leaf administrativeState { - type types3gpp:AdministrativeState; - mandatory true; - description "Permission to use or prohibition against using the instance"; - } - - leaf operationalState { - type types3gpp:OperationalState; - config false; - mandatory true; - description "Describes whether the resource is installed and working"; - } - - leaf usageState { - type types3gpp:usageState ; - config false; - mandatory true; - description "Describes whether the resource is actively in use at a - specific instant, and if so, whether or not it has spare - capacity for additional users."; - } - - leaf registrationState { - type enumeration { - enum REGISTERED; - enum DEREGISTERED; - } - config false; - } - } - - grouping Function_Grp { - description "A base grouping for 3GPP functions."; - - leaf userLabel { - type string; - description "A user-friendly (and user assignable) name of this object."; - } - } - - grouping ManagedFunctionGrp { - description "Abstract root class to be inherited/reused by classes - representing 3GPP functions. - - Anywhere this grouping is used by classes inheriting from ManagedFunction - the list representing the inheriting class needs to include all - contained classes of ManagedFunction too. Contained classes are - either - - augmented into the Function class or - - shall be included in the list representing the inheriting class - using the grouping ManagedFunctionContainedClasses: - 1) EP_RP solved using augment - 2) uses mf3gpp:ManagedFunctionContainedClasses; - "; - - uses Function_Grp; - - container vnfParametersList { - description "Contains the parameter set of the VNF - instance(s) corresponding to an NE."; - presence "The presence of this container indicates that the ManagedFunction - represented is realized by one or more VNF instance(s). Otherwise it - shall be absent."; - - leaf vnfInstanceId { - type string ; - mandatory true; - description "VNF instance identifier"; - reference "ETSI GS NFV-IFA 008 v2.1.1: - Network Functions Virtualisation (NFV); Management and Orchestration; - Ve-Vnfm reference point - Interface and Information Model Specification - section 9.4.2 - - ETSI GS NFV-IFA 015 v2.1.2: Network Functions Virtualisation (NFV); - Management and Orchestration; Report on NFV Information Model - section B2.4.2.1.2.3"; - } - - leaf vnfdId { - type string ; - description "Identifier of the VNFD on which the VNF instance is based. - The absence of the leaf or a string length of zero for vnfInstanceId - means the VNF instance(s) does not exist (e.g. has not been - instantiated yet, has already been terminated)."; - reference "ETSI GS NFV-IFA 008 v2.1.1: - Network Functions Virtualisation (NFV); Management and Orchestration; - Ve-Vnfm reference point - Interface and Information Model Specification - section 9.4.2"; - } - - leaf flavourId { - type string ; - description "Identifier of the VNF Deployment Flavour applied to this - VNF instance."; - reference "ETSI GS NFV-IFA 008 v2.1.1: - Network Functions Virtualisation (NFV); Management and Orchestration; - Ve-Vnfm reference point - Interface and Information Model Specification - section 9.4.3"; - } - - leaf autoScalable { - type boolean ; - mandatory true; - description "Indicator of whether the auto-scaling of this - VNF instance is enabled or disabled."; - } - } - - container peeParametersList { - description "Contains the parameter set for the control - and monitoring of power, energy and environmental parameters of - ManagedFunction instance(s)."; - presence "Present supported if the control and monitoring of PEE - parameters is supported by the ManagedFunction or sub-class instance."; - - leaf siteIdentification { - type string; - mandatory true; - description "The identification of the site where the - ManagedFunction resides."; - } - - leaf siteLatitude { - type decimal64 { - fraction-digits 4; - range "-90.0000..+90.0000"; - } - description "The latitude of the site where the ManagedFunction - instance resides, based on World Geodetic System (1984 version) - global reference frame (WGS 84). Positive values correspond to - the northern hemisphere. This attribute is optional in case of - BTSFunction and RNCFunction instance(s)."; - } - - leaf siteLongitude { - type decimal64 { - fraction-digits 4; - range "-180.0000..+180.0000"; - } - description "The longitude of the site where the ManagedFunction - instance resides, based on World Geodetic System (1984 version) - global reference frame (WGS 84). Positive values correspond to - degrees east of 0 degrees longitude. This attribute is optional in - case of BTSFunction and RNCFunction instance(s)."; - } - - leaf siteDescription { - type string; - mandatory true; - description "An operator defined description of the site where - the ManagedFunction instance resides."; - } - - leaf equipmentType { - type string; - mandatory true; - description "The type of equipment where the managedFunction - instance resides."; - reference "clause 4.4.1 of ETSI ES 202 336-12"; - } - - leaf environmentType { - type string; - mandatory true; - description "The type of environment where the managedFunction - instance resides."; - reference "clause 4.4.1 of ETSI ES 202 336-12"; - } - - leaf powerInterface { - type string; - mandatory true; - description "The type of power."; - reference "clause 4.4.1 of ETSI ES 202 336-12"; - } - } - - leaf priorityLabel { - mandatory true; - type uint32; - } - uses meas3gpp:SupportedPerfMetricGroupGrp; - } - - grouping ManagedFunctionContainedClasses { - description "A grouping used to containe classes (lists) contained by - the abstract IOC ManagedFunction"; - list ManagedNFService { - description "Represents a Network Function (NF)"; - reference "3GPP TS 23.501"; - key id; - uses top3gpp:Top_Grp; - container attributes { - uses ManagedNFServiceGrp; - } - } - - uses meas3gpp:MeasurementSubtree { - if-feature MeasurementsUnderManagedFunction ; - } - - uses trace3gpp:TraceSubtree { - if-feature TraceUnderManagedFunction ; - } - } -} \ No newline at end of file diff --git a/yang-models/_3gpp-common-measurements.yang b/yang-models/_3gpp-common-measurements.yang deleted file mode 100755 index b9fc0d644..000000000 --- a/yang-models/_3gpp-common-measurements.yang +++ /dev/null @@ -1,546 +0,0 @@ -module _3gpp-common-measurements { - yang-version 1.1; - namespace "urn:3gpp:sa5:_3gpp-common-measurements"; - prefix "meas3gpp"; - - import _3gpp-common-top { prefix top3gpp; } - import _3gpp-common-yang-types { prefix types3gpp; } - - organization "3GPP SA5"; - contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; - - description "Defines Measurement and KPI related groupings - Any list/class intending to use this should include 2 or 3 uses statements - controlled by a feature: - - A) -+++ feature MeasurementsUnderMyClass { -+++ description 'Indicates whether measurements and/or KPIs are supported -+++ for this class.'; -+++ } - - B) include the attribute measurementsList and/or kPIsList indicating the - supported measurment and KPI types and GPs. Note that for classes - inheriting from ManagedFunction, EP_RP or SubNetwork these attributes are - already inherited, so there is no need to include them once more. E.g. - -+++ grouping MyClassGrp { -+++ uses meas3gpp:SupportedPerfMetricGroup; -+++ } - - C) include the class PerfmetricJob to control the measurements/KPIs. E.g. - - list MyClass { - container attributes { - uses MyClassGrp; - } -+++ uses meas3gpp:MeasurementSubtree { -+++ if-feature MeasurementsUnderMyClass ; -+++ } - } - - Measurements can be contained under ManagedElement, SubNetwork, or - any list representing a class inheriting from Subnetwork or - ManagedFunction. Note: KPIs will only be supported under SubNetwork"; - - reference "3GPP TS 28.623 - Generic Network Resource Model (NRM) - Integration Reference Point (IRP); - Solution Set (SS) definitions - - 3GPP TS 28.622 - Generic Network Resource Model (NRM) - Integration Reference Point (IRP); - Information Service (IS)"; - - revision 2020-09-04 { reference "CR-000107"; } - revision 2020-06-08 { reference "CR-0092"; } - revision 2020-05-31 { reference "CR-0084"; } - revision 2020-03-11 { reference "S5-201581, SP-200229"; } - revision 2019-11-21 { reference "S5-197275, S5-197735"; } - revision 2019-10-28 { reference "S5-193516"; } - revision 2019-06-17 { } - - grouping ThresholdInfoGrp { - description "Defines a single threshold level."; - - leaf-list measurementTypes { - type string; - description "The Measurement type can be those specified in TS 28.552, - TS 32.404 and can be those specified by other SDOs or can be - vendor-specific."; - } - - leaf thresholdLevel { - type uint64; - mandatory true; - description "Number (key) for a single threshold in the threshold list - applicable to the monitored performance metric."; - } - - leaf thresholdDirection { - type enumeration { - enum UP; - enum DOWN; - enum UP_AND_DOWN; - } - must '. = "UP_AND_DOWN" or not(../hysteresis)' { - error-message "In case a threshold with hysteresis is configured, the " - +"threshold direction attribute shall be set to 'UP_AND_DOWN'."; - } - mandatory true; - description "Direction of a threshold indicating the direction for which - a threshold crossing triggers a threshold. - - When the threshold direction is configured to 'UP', the associated - treshold is triggered only when the performance metric value is going - up upon reaching or crossing the threshold value. The treshold is not - triggered, when the performance metric is going down upon reaching or - crossing the threshold value. - - Vice versa, when the threshold direction is configured to 'DOWN', the - associated treshold is triggered only when the performance metric is - going down upon reaching or crossing the threshold value. The treshold - is not triggered, when the performance metric is going up upon reaching - or crossing the threshold value. - - When the threshold direction is set to 'UP_AND_DOWN' the treshold is - active in both direcions. - - In case a threshold with hysteresis is configured, the threshold - direction attribute shall be set to 'UP_AND_DOWN'."; - } - - leaf thresholdValue { - type union { - type int64; - type decimal64 { - fraction-digits 2; - } - } - mandatory true; - description "Value against which the monitored performance metric is - compared at a threshold level in case the hysteresis is zero"; - } - - leaf hysteresis { - type union { - type uint64; - type decimal64 { - fraction-digits 2; - range "0..max"; - } - } - description "Hysteresis of a threshold. If this attribute is present - the monitored performance metric is not compared against the - threshold value as specified by the thresholdValue attribute but - against a high and low threshold value given by - - threshold-high = thresholdValue + hysteresis - threshold-low = thresholdValue - hysteresis - - When going up, the threshold is triggered when the performance metric - reaches or crosses the high threshold value. When going down, the - hreshold is triggered when the performance metric reaches or crosses - the low threshold value. - - A hysteresis may be present only when the monitored performance - metric is not of type counter that can go up only. If present - for a performance metric of type counter, it shall be ignored."; - } - } - - grouping SupportedPerfMetricGroupGrp { - list SupportedPerfMetricGroup { - config false; - description "Captures a group of supported performance metrics and - associated parameters related to their production and reporting. - A SupportedPerfMetricGroup attribute which is part of an MOI may - define performanceMetrics for any MOI under the subtree contained - under that MOI, e.g. SupportedPerfMetricGroup on a ManagedElement - can specify supported metrics for contained ManagedFunctions - like a GNBDUFunction."; - - leaf-list performanceMetrics { - type string; - min-elements 1; - description "Performance metrics include measurements defined in - TS 28.552 and KPIs defined in TS 28.554. Performance metrics can - also be those specified by other SDOs or vendor specific metrics. - Performance metrics are identfied with their names. A name can also - identify a vendor specific group of performance metrics. - - For measurements defined in TS 28.552 the name is constructed as - follows: - - 'family.measurementName.subcounter' for measurement types with - subcounters - - 'family.measurementName' for measurement types without subcounters - - 'family' for measurement families - - For KPIs defined in TS 28.554 the name is defined in the KPI - definitions template as the component designated with e)."; - } - - leaf-list granularityPeriods { - type uint32 { - range 1..max ; - } - units seconds; - } - - leaf-list reportingMethods { - type enumeration { - enum FILE_BASED_LOC_SET_BY_PRODUCER; - enum FILE_BASED_LOC_SET_BY_CONSUMER; - enum STREAM_BASED; - } - min-elements 1; - } - - leaf-list monitorGranularityPeriods { - type uint32 { - range 1..max ; - } - units seconds; - description "Granularity periods supported for the monitoring of - associated measurement types for thresholds"; - } - } - } - - grouping PerfMetricJobGrp { - description "Represents the attributtes of the IOC PerfMetricJob"; - - leaf administrativeState { - default UNLOCKED; - type types3gpp:AdministrativeState ; - description "Enable or disables production of the metrics"; - } - - leaf operationalState { - config false; - mandatory true; - type types3gpp:OperationalState ; - description "Indicates whether the PerfMetricJob is working."; - } - - leaf perfMetricJobGroupId { - type string; - description "Identifies members of a PerfMetricJob group. For the - stream based reporting method this reference shall be present."; - } - - leaf-list performanceMetrics { - type string; - min-elements 1; - description "Performance metrics include measurements defined in - TS 28.552 and KPIs defined in TS 28.554. Performance metrics can - also be those specified by other SDOs or vendor specific metrics. - Performance metrics are identfied with their names. A name can also - identify a vendor specific group of performance metrics. - - For measurements defined in TS 28.552 the name is constructed as - follows: - - 'family.measurementName.subcounter' for measurement types with - subcounters - - 'family.measurementName' for measurement types without subcounters - - 'family' for measurement families - - For KPIs defined in TS 28.554 the name is defined in the KPI - definitions template as the component designated with e)."; - } - - leaf granularityPeriod { - type uint32 { - range 1..max ; - } - units seconds; - mandatory true; - description "Granularity period used to produce measurements. The value - must be one of the supported granularity periods for the metric. - - For measurements of type counter this is the period at which samples - of the internal counter value, that is incremented with every event - occurance, are taken. - - For measurements of type gauge, this is period, over which the mean - value of the measured variable is calculated. The mean value is - then taken as sample."; - } - - leaf-list objectInstances { - type types3gpp:DistinguishedName; - } - - leaf-list rootObjectInstances { - type types3gpp:DistinguishedName; - description "Each object instance designates the root of a subtree that - contains the root object and all descendant objects."; - } - - choice reportingCtrl { - mandatory true; - description "This choice defines the method for reporting collected - performance metrics to MnS consumers as well as the parameters for - configuring the reporting function. It is a choice between the control - parameter required for the reporting methods, whose presence selects - the reporting method as follows: - - When only the fileReportingPeriod attribute is present, the MnS - producer shall store files on the MnS producer at a location selected - by the MnS producer and inform the MnS consumer about the availability - of new files and the file location using the notifyFileReady - notification. - - When only the fileReportingPeriod and fileLocation attributes are - present, the MnS producer shall store the files on the MnS consumer at - the location specified by fileLocation. No notification is emitted by - the MnS producer. - - When only the streamTarget attribute is present, the MnS producer - shall stream the data to the location specified by streamTarget. - - For the file-based reporting methods the fileReportingPeriod attribute - specifies the time window during which collected measurements are stored - into the same file before the file is closed and a new file is opened."; - - case file-based-reporting { - leaf fileReportingPeriod { - type uint32 { - range 1..max; - } - units minutes"; - must '(number(.)*"60") mod number(../granularityPeriod) = "0"' { - error-message - "The time-period must be a multiple of the granularityPeriod."; - } - mandatory true; - description "For the file-based reporting method this is the time - window during which collected measurements are stored into the same - file before the file is closed and a new file is opened. - The time-period must be a multiple of the granularityPeriod. - - Applicable when the file-based reporting method is supported"; - } - - leaf fileLocation { - type string ; - description "Applicable and must be present when the file-based - reporting method is supported, and the files are stored on the MnS - consumer."; - } - } - case stream-based-reporting { - leaf streamTarget { - type string; - mandatory true; - description "Applicable when stream-based reporting method is - supported."; - } - } - } - } - - - grouping ThresholdMonitorGrp { - description "A threshold monitor that is created by the consumer for - the monitored entities whose measurements are required by consumer - to monitor."; - - leaf administrativeState { - default UNLOCKED; - type types3gpp:AdministrativeState ; - description "Enables or disables the ThresholdMonitor."; - } - - leaf operationalState { - config false; - mandatory true; - type types3gpp:OperationalState ; - description "Indicates whether the ThresholdMonitor is working."; - } - - list thresholdInfoList { - key idx; - min-elements 1; - leaf idx { type uint32 ; } - uses ThresholdInfoGrp; - } - - leaf monitorGranularityPeriod { - type uint32 { - range "1..max"; - } - units second; - mandatory true; - description " Granularity period used to monitor measurements for - threshold crossings. "; - } - - leaf-list objectInstances { - type types3gpp:DistinguishedName; - } - - leaf-list rootObjectInstances { - type types3gpp:DistinguishedName; - description "Each object instance designates the root of a subtree that - contains the root object and all descendant objects."; - } - } - - grouping MeasurementSubtree { - description "Contains classes that define measurements. - Should be used in all classes (or classes inheriting from) - - SubNnetwork - - ManagedElement - - ManagedFunction - - If a YANG module wants to augment these classes/list/groupings they must - augment all user classes! - - If a class uses this grouping in its list it shall also use the - grouping SupportedPerfMetricGroupGrp to add SupportedPerfMetricGroup as - an attribute to its grouping"; - - list PerfMetricJob { - description "This IOC represents a performance metric production job. It - can be name-contained by SubNetwork, ManagedElement, or ManagedFunction. - - To activate the production of the specified performance metrics, a MnS - consumer needs to create a PerfMetricJob instance on the MnS producer - and ensure that the adminState is sUNLOCKED>. - For ultimate deactivation of metric production, the MnS consumer should - delete the job to free up resources on the MnS producer. - - For temporary suspension of metric production, the MnS consumer can - manipulate the value of the administrative state attribute. The MnS - producer may disable metric production as well, for example in overload - situations. This situation is indicated by the MnS producer with setting - the operational state attribute to disabled. When production is resumed - the operational state is set again to enabled. - - The perfMetricJobGroupId is a common reference across all members of a - PerfMetricJob group. A group contains related PerfMetricJob instances. - - The attribute performanceMetrics defines the performance metrics to be - produced and the attribute granularityPeriod defines the granularity - period to be applied. - - All object instances below and including the instance name-containing - the PerfMetricJob (base object instance) are scoped for performance - metric production. Performance metrics are produced only on those object - instances whose object class matches the object class associated to the - performance metrics to be produced. - - The attributes objectInstances and rootObjectInstances allow to restrict - the scope. When the attribute objectInstances is present, only the object - instances identified by this attribute are scoped. When the attribute - rootObjectInstances is present, then the subtrees whose root objects are - identified by this attribute are scoped. Both attributes may be present - at the same time meaning the total scope is equal to the sum of both - scopes. Object instances may be scoped by both the objectInstances and - rootObjectInstances attributes. This shall not be considered as an error - by the MnS producer. - - When the performance metric requires performance metric production on - multiple managed objects, which is for example the case for KPIs, the - MnS consumer needs to ensure all required objects are scoped. Otherwise - a PerfMetricJob creation request shall fail. - - The attribute reportingCtrl specifies the method and associated control - parameters for reporting the produced measurements to MnS consumers. - Three methods are available: file-based reporting with selection of the - file location by the MnS producer, file-based reporting with selection - of the file location by the MnS consumer and stream-based reporting. - - A PerfMetricJob creation request shall fail, when the requested - performance metrics, the requested granularity period, the requested - repoting method, or the requested combination thereof is not supported - by the MnS producer. - - Creation and deletion of PerfMetricJob instances by MnS consumers is - optional; when not supported, PerfMetricJob instances may be created and - deleted by the system or be pre-installed."; - - key id; - uses top3gpp:Top_Grp ; - container attributes { - uses PerfMetricJobGrp ; - } - } - - list ThresholdMonitor { - key id; - description "Represents a threshold monitor for performance metrics. - It can be contained by SubNetwork, ManagedElement, or ManagedFunction. - A threshold monitor checks for threshold crossings of performance metric - values and generates a notification when that happens. - - To activate threshold monitoring, a MnS consumer needs to create a - ThresholdMonitor instance on the MnS producer. For ultimate deactivation - of threshold monitoring, the MnS consumer should delete the monitor to - free up resources on the MnS producer. - - For temporary suspension of threshold monitoring, the MnS consumer can - manipulate the value of the administrative state attribute. The MnS - producer may disable threshold monitoring as well, for example in - overload situations. This situation is indicated by the MnS producer with - setting the operational state attribute to disabled. When monitoring is - resumed the operational state is set again to enabled. - - All object instances below and including the instance containing the - ThresholdMonitor (base object instance) are scoped for performance - metric production. Performance metrics are monitored only on those - object instances whose object class matches the object class associated - to the performance metrics to be monitored. - - The optional attributes objectInstances and rootObjectInstances allow to - restrict the scope. When the attribute objectInstances is present, only - the object instances identified by this attribute are scoped. When the - attribute rootObjectInstances is present, then the subtrees whose root - objects are identified by this attribute are scoped. Both attributes may - be present at the same time meaning the total scope is equal to the sum - of both scopes. Object instances may be scoped by both the objectInstances - and rootObjectInstances attributes. This shall not be considered as an - error by the MnS producer. - - Multiple thresholds can be defined for multiple performance metric sets - in a single monitor using thresholdInfoList. The attribute - monitorGranularityPeriod defines the granularity period to be applied. - - Each threshold is identified with a number (key) called thresholdLevel. - A threshold is defined using the attributes thresholdValue , - thresholdDirection and hysteresis. - - When hysteresis is absent or carries no information, a threshold is - triggered when the thresholdValue is reached or crossed. When hysteresis - is present, two threshold values are specified for the threshold as - follows: A high treshold value equal to the threshold value plus the - hysteresis value, and a low threshold value equal to the threshold value - minus the hysteresis value. When the monitored performance metric - increases, the threshold is triggered when the high threshold value is - reached or crossed. When the monitored performance metric decreases, the - threshold is triggered when the low threshold value is reached or crossed. - The hsyteresis ensures that the performance metric value can oscillate - around a comparison value without triggering each time the threshold when - the threshold value is crossed. - - Using the thresholdDirection attribute a threshold can be configured in - such a manner that it is triggered only when the monitored performance - metric is going up or down upon reaching or crossing the threshold. - - A ThresholdMonitor creation request shall be rejected, if the performance - metrics requested to be monitored, the requested granularity period, or - the requested combination thereof is not supported by the MnS producer. - A creation request may fail, when the performance metrics requested to be - monitored are not produced by a PerfMetricJob. - - Creation and deletion of ThresholdMonitor instances by MnS consumers is - optional; when not supported, ThresholdMonitor instances may be created - and deleted by the system or be pre-installed."; - - - uses top3gpp:Top_Grp ; - container attributes { - uses ThresholdMonitorGrp ; - } - } - } -} \ No newline at end of file diff --git a/yang-models/_3gpp-common-subnetwork.yang b/yang-models/_3gpp-common-subnetwork.yang deleted file mode 100755 index ced420739..000000000 --- a/yang-models/_3gpp-common-subnetwork.yang +++ /dev/null @@ -1,196 +0,0 @@ -module _3gpp-common-subnetwork { - yang-version 1.1; - namespace "urn:3gpp:sa5:_3gpp-common-subnetwork"; - prefix "subnet3gpp"; - - import _3gpp-common-yang-types { prefix types3gpp; } - import _3gpp-common-top { prefix top3gpp; } - import _3gpp-common-measurements { prefix meas3gpp; } - import _3gpp-common-fm { prefix fm3gpp; } - import _3gpp-common-trace { prefix trace3gpp; } - import ietf-yang-schema-mount { prefix yangmnt; } - - organization "3GPP SA5"; - contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; - - description "Defines basic SubNetwork which will be augmented by other IOCs"; - reference "3GPP TS 28.623 - Generic Network Resource Model (NRM) - Integration Reference Point (IRP); - Solution Set (SS) definitions - - 3GPP TS 28.622 - Generic Network Resource Model (NRM) - Integration Reference Point (IRP); - Information Service (IS) - - 3GPP TS 28.620 - Umbrella Information Model (UIM)"; - - revision 2020-08-06 { reference "CR-0102"; } - revision 2020-06-08 { reference "CR-0092"; } - revision 2020-05-08 { - reference "S5-203316"; - } - - - revision 2020-03-11 { - description "Added KPIs and corrections"; - reference "S5-201365, S5-201581, SP-200229"; - } - - revision 2020-02-24 { - reference "S5-201365"; - } - - revision 2019-06-17 { - description "Initial revision"; - } - - feature ExternalsUnderSubNetwork { - - description "Classes representing external entities like EUtranFrequency, - ExternalGNBCUCPFunction, ExternalENBFunction - are contained under a Subnetwork list/class."; - } - - feature MeasurementsUnderSubNetwork { - description "The MeasurementSubtree shall be contained under SubNetwork - indicating the support of Measurements and/or KPIs"; - } - - feature FmUnderSubNetwork { - description "The FmSubtree shall be contained under SubNetwork"; - } - - feature TraceUnderSubNetwork { - description "The TraceSubtree shall be contained under SubNetwork"; - } - - feature DESManagementFunction { - description "Classs representing Distributed SON or Domain-Centralized SON Energy Saving feature. The DESManagementFunction shall be contained under subnetwork."; - } - - feature DMROFunction { - description "Classs representing D-SON function of MRO feature. The DMROFunction shall be contained under subnetwork."; - } - - feature DRACHOptimizationFunction { - description "Classs representing D-SON function of RACH optimization feature. The DRACHOptimizationFunction shall be contained under subnetwork."; - } - - feature DPCIConfigurationFunction { - description "Classs representing Distributed SON or Domain-Centralized SON function of PCI configuration feature. The DPCIConfigurationFunction shall be contained under subnetwork."; - } - - feature CPCIConfigurationFunction { - description "Classs representing Cross Domain-Centralized SON function of PCI configuration feature. The CPCIConfigurationFunction shall be contained under subnetwork."; - } - - feature CESManagementFunction { - description "Classs representing Cross Domain-Centralized SON Energy Saving feature. The CESManagementFunction shall be contained under subnetwork."; - } - - grouping Domain_Grp { - description "A domain is a partition of instances of managed entities - such that : - - the group represents a topological structure which describes the - potential for connectivity - - Subject to common administration - - With common characteristics"; - - leaf dnPrefix { - type types3gpp:DistinguishedName; - reference "Annex C of 32.300 "; - } - - leaf userLabel { - type string; - description "A user-friendly (and user assignable) name of this object."; - } - - leaf userDefinedNetworkType { - type string; - description "Textual information indicating network type, e.g. 'UTRAN'."; - } - } - - grouping SubNetworkGrp { - uses Domain_Grp; - uses meas3gpp:SupportedPerfMetricGroupGrp; - - - leaf-list setOfMcc { - description "Set of Mobile Country Code (MCC). - The MCC uniquely identifies the country of domicile - of the mobile subscriber. MCC is part of the IMSI (3GPP TS 23.003) - - This list contains all the MCC values in subordinate object - instances to this SubNetwork instance. - - See clause 2.3 of 3GPP TS 23.003 for MCC allocation principles. - - It shall be supported if there is more than one value in setOfMcc - of the SubNetwork. Otherwise the support is optional."; - type types3gpp:Mcc; - } - - leaf priorityLabel { - mandatory true; - type uint32; - } - - } - - list SubNetwork { - key id; - description "Represents a set of managed entities"; - - uses top3gpp:Top_Grp; - container attributes { - uses SubNetworkGrp; - leaf-list parents { - description "Reference to all containg SubNetwork instances - in strict order from the root subnetwork down to the immediate - parent subnetwork. - If subnetworks form a containment hierarchy this is - modeled using references between the child SubNetwork and the parent - SubNetworks. - This reference MUST NOT be present for the top level SubNetwork and - MUST be present for other SubNetworks."; - type leafref { - path "../../../SubNetwork/id"; - } - } - - leaf-list containedChildren{ - description "Reference to all directly contained SubNetwork instances. - If subnetworks form a containment hierarchy this is - modeled using references between the child SubNetwork and the parent - SubNetwork."; - type leafref { - path "../../../SubNetwork/id"; - } - } - } - - uses meas3gpp:MeasurementSubtree { - if-feature MeasurementsUnderSubNetwork ; - } - - uses fm3gpp:FmSubtree { - if-feature FmUnderSubNetwork ; - } - - uses trace3gpp:TraceSubtree { - if-feature TraceUnderSubNetwork ; - } - - yangmnt:mount-point children-of-SubNetwork { - description "Mountpoint for ManagedElement"; - reference "RFC8528 YANG Schema Mount"; - } - - // augment external parts here - } -} \ No newline at end of file diff --git a/yang-models/_3gpp-common-subscription-control.yang b/yang-models/_3gpp-common-subscription-control.yang deleted file mode 100755 index d37938d28..000000000 --- a/yang-models/_3gpp-common-subscription-control.yang +++ /dev/null @@ -1,209 +0,0 @@ -module _3gpp-common-subscription-control { - yang-version 1.1; - namespace "urn:3gpp:sa5:_3gpp-common-subscription-control"; - prefix "subscr3gpp"; - - import _3gpp-common-top { prefix top3gpp; } - import _3gpp-common-subnetwork { prefix subnet3gpp; } - import _3gpp-common-managed-element { prefix me3gpp; } - - organization "3GPP SA5"; - - description "Defines IOCs for subscription and heartbeat control."; - reference "3GPP TS 28.623 - Generic Network Resource Model (NRM) - Integration Reference Point (IRP); - Solution Set (SS) definitions - 3GPP TS 28.623"; - - revision 2020-08-26 { reference "CR-0106"; } - revision 2019-11-29 { reference "S5-197648 S5-197647 S5-197829 S5-197828"; } - - grouping NtfSubscriptionControlGrp { - description "Attributes of a specific notification subscription"; - - leaf notificationRecipientAddress { - type string; - mandatory true; - } - - leaf-list notificationTypes { - type string; - description "Defines the types of notifications that are candidates - for being forwarded to the notification recipient. - If the notificationFilter attribute is not supported or not present - all candidate notifications types are forwarded to the notification; - discriminated by notificationFilter attribute."; - } - - list scope { - key "scopeType"; - min-elements 1; - max-elements 1; - description "Describes which object instances are selected with - respect to a base object instance."; - - leaf scopeType { - type enumeration { - enum BASE_ONLY; - enum BASE_ALL; - enum BASE_NTH_LEVEL; - enum BASE_SUBTREE; - } - description "If the optional scopeLevel parameter is not supported - or absent, allowed values of scopeType are BASE_ONLY and BASE_ALL. - - The value BASE_ONLY indicates only the base object is selected. - The value BASE_ALL indicates the base object and all of its - subordinate objects (incl. the leaf objects) are selected. - - If the scopeLevel parameter is supported and present, allowed - values of scopeType are BASE_ALL, BASE_ONLY, BASE_NTH_LEVEL - and BASE_SUBTREE. - - The value BASE_NTH_LEVEL indicates all objects on the level, - which is specified by the scopeLevel parameter, below the base - object are selected. The base object is at scopeLevel zero. - The value BASE_SUBTREE indicates the base object and all of its - subordinate objects down to and including the objects on the level, - which is specified by the scopeLevel parameter, are selected. - The base object is at scopeLevel zero."; - } - - leaf scopeLevel { - when '../scopeType = "BASE_NTH_LEVEL" or ../scopeType = "BASE_SUBTREE"'; - type uint16; - mandatory true; - description "See description of scopeType."; - } - } - - leaf notificationFilter { - type string; - description "Defines a filter to be applied to candidate notifications - identified by the notificationTypes attribute. - If notificationFilter is present, only notifications that pass the - filter criteria are forwarded to the notification recipient; all other - notifications are discarded. - The filter can be applied to any field of a notification."; - } - } - - grouping HeartbeatControlGrp { - description "Attributes of HeartbeatControl. Note the triggerHeartbeatNtf attribute - has no mapping in the present release."; - - leaf heartbeatNtfPeriod { - type uint32 ; - mandatory true; - units seconds; - description "Specifies the periodicity of heartbeat notification emission. - The value of zero has the special meaning of stopping the heartbeat - notification emission."; - } - } - - grouping NtfSubscriptionControlWrapper { - list NtfSubscriptionControl { - description "A NtfSubscriptionControl instance represents the - notification subscription of a particular notification recipient. - The scope attribute is used to select managed object instances. - The base object instance of the scope is the object instance - name-containing the NtfSubscriptionControl instance. - The notifications related to the selected managed object instances - are candidates to be sent to the address specified by the - notificationRecipientAddress attribute. - The notificationType attribute and notificationFilter attribute - allow MnS consumers to exercise control over which candidate - notifications are sent to the notificationRecipientAddress. - If the notificationType attribute is supported and present, its - value identifies the - types of notifications that are candidate to be sent to the - notificationRecipientAddress. If the notificationType attribute is - not supported or not present, all types of notifications are - candidate to be sent to notificationRecipientAddress. - If supported, the notificationFilter attribute defines a filter that - is applied to the set of candidate notifications. Only candidate - notifications that pass the filter criteria are sent to the - notificationRecipientAddress. If the notificationFilter attribute is - not supported all candidate notificatios are sent to the - notificationRecipientAddress. - To receive notifications, a MnS consumer has to create - NtfSubscriptionControl object instancess on the MnS producer. - A MnS consumer can create a subscription for another MnS consumer - since it is not required the notificationRecipientAddress be his own - address. - When a MnS consumer does not wish to receive notifications any more - the MnS consumer shall delete the corresponding NtfSubscriptionControl - instance. - Creation and deletion of NtfSubscriptionControl instances by MnS - consumers is optional; when not supported, the NtfSubscriptionControl - instances may be created and deleted by the system or be pre-installed."; - - key id; - uses top3gpp:Top_Grp; - container attributes { - uses NtfSubscriptionControlGrp; - } - - list HeartbeatControl { - min-elements 1; - max-elements 1; - description "MnS consumers (i.e. notification recipients) use heartbeat - notifications to monitor the communication channels between them and - data reporting MnS producers emitting notifications such as - notifyNewAlarm and notifyFileReady. - - A HeartbeatControl instance allows controlling the emission of - heartbeat notifications by MnS producers. The recipients of heartbeat - notifications are specified by the notificationRecipientAddress - attribute of the NtfSubscriptionControl instance containing the - HeartbeatControl instance. - - - Note that the MnS consumer managing the HeartbeatControl instance - and the MnS consumer receiving the heartbeat notifications may not be - the same. - - As a pre-condition for the emission of heartbeat notifications, a - HeartbeatControl instance needs to be created. Creation of an instance - with an initial non-zero value of the heartbeatNtfPeriod attribute - triggers an immediate heartbeat notification emission. Creation of an - instance with an initial zero value of the heartbeatPeriod attribute - does not trigger an emission of a heartbeat notification. Deletion of - an instance does not trigger an emission of a heartbeat notification. - - Once the instance is created, heartbeat notifications are emitted with - a periodicity defined by the value of the heartbeatNtfPeriod attribute. - No heartbeat notifications are emitted if the value is equal to zero. - Setting a zero value to a non zero value, or a non zero value to a - different non zero value, triggers an immediate heartbeat notification, - that is the base for the new heartbeat period. Setting a non zero value - to a zero value stops emitting heartbeats immediately; no final - heartbeat notification is sent. - - Creation and deletion of HeartbeatControl instances by MnS Consumers is - optional; when not supported, the HeartbeatControl instances may be - created and deleted by the system or be pre-installed. - - Whether and when to emit heartbeat notifications is controlled by - HeartbeatControl. Subscription for heartbeat is not supported via the - NtfSubscriptionControl."; - key id; - uses top3gpp:Top_Grp; - - container attributes { - uses HeartbeatControlGrp; - } - } - } - } - - augment /subnet3gpp:SubNetwork { - uses NtfSubscriptionControlWrapper; - } - - augment /me3gpp:ManagedElement { - uses NtfSubscriptionControlWrapper; - } -} \ No newline at end of file diff --git a/yang-models/_3gpp-common-top.yang b/yang-models/_3gpp-common-top.yang deleted file mode 100755 index c58adbea7..000000000 --- a/yang-models/_3gpp-common-top.yang +++ /dev/null @@ -1,36 +0,0 @@ -module _3gpp-common-top { - yang-version 1.1; - - namespace urn:3gpp:sa5:_3gpp-common-top; - prefix top3gpp; - - organization "3gpp SA5"; - description "The model defines a YANG mapping of the top level - information classes used for management of 5G networks and - network slicing."; - reference - "3GPP TS 28.622 - Generic Network Resource Model (NRM) - Integration Reference Point (IRP); - Information Service (IS) - - 3GPP TS 28.620 - Umbrella Information Model (UIM)"; - - revision 2019-06-17 { - description "Initial revision"; - } - - grouping Top_Grp { - description "Abstract class supplying a naming attribute"; - reference "3GPP TS 28.620"; - - leaf id { - type string; - description "Key leaf (namingAttribute) for a class/list. - Should be used as a key leaf for lists representing - stage 2 classes."; - reference "3GPP TS 32.300 Name convention for managed objects"; - } - } -} \ No newline at end of file diff --git a/yang-models/_3gpp-common-trace.yang b/yang-models/_3gpp-common-trace.yang deleted file mode 100755 index c2eb08f01..000000000 --- a/yang-models/_3gpp-common-trace.yang +++ /dev/null @@ -1,871 +0,0 @@ -module _3gpp-common-trace { - yang-version 1.1; - namespace "urn:3gpp:sa5:_3gpp-common-trace"; - prefix "trace3gpp"; - - import _3gpp-common-top { prefix top3gpp; } - import _3gpp-common-yang-types {prefix types3gpp; } - import ietf-inet-types { prefix inet; } - - organization "3GPP SA5"; - contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; - - description " "; - - reference "3GPP TS 28.623 - Generic Network Resource Model (NRM) - Integration Reference Point (IRP); - Solution Set (SS) definitions - - 3GPP TS 28.622 - Generic Network Resource Model (NRM) - Integration Reference Point (IRP); - Information Service (IS)"; - - revision 2020-08-06 { reference "CR-0102"; } - - grouping TraceJobGrp { - leaf tjJobType { - type enumeration { - enum IMMEDIATE_MDT_ONLY; - enum LOGGED_MDT_ONLY; - enum TRACE_ONLY; - enum IMMEDIATE_MDT_AND_TRACE; - enum RLF_REPORT_ONLY; - enum RCEF_REPORT_ONLY; - enum LOGGED_MBSFN_MDT; - } - default TRACE_ONLY; - description "Specifies the MDT mode and it specifies also whether the - TraceJob represents only MDT, Logged MBSFN MDT, Trace or a combined - Trace and MDT job. The attribute is applicable for Trace, MDT, RCEF and - RLF reporting."; - reference "Clause 5.9a of 3GPP TS 32.422 for additional details on the - allowed values."; - } - - list tjListOfInterfaces { - key idx; - must 'count(MSCServerInterfaces)+count(MGWInterfaces)+count(RNCInterfaces)' - +'+count(SGSNInterfaces)+count(GGSNInterfaces)+count(S-CSCFInterfaces)' - +'+count(P-CSCFInterfaces)+count(I-CSCFInterfaces)+count(MRFCInterfaces)' - +'+count(MGCFInterfaces)+count(IBCFInterfaces)+count(E-CSCFInterfaces)' - +'+count(BGCFInterfaces)+count(ASInterfaces)+count(HSSInterfaces)' - +'+count(EIRInterfaces)+count(BM-SCInterfaces)+count(MMEInterfaces)' - +'+count(SGWInterfaces)+count(PDN_GWInterfaces)+count(eNBInterfaces)' - +'+count(en-gNBInterfaces)+count(AMFInterfaces)+count(AUSFInterfaces)' - +'+count(NEFInterfaces)+count(NRFInterfaces)+count(NSSFInterfaces)' - +'+count(PCFInterfaces)+count(SMFInterfaces)+count(SMSFInterfaces)' - +'+count(UDMInterfaces)+count(UPFInterfaces)+count(ng-eNBInterfaces)' - +'+count(gNB-CU-CPInterfaces)+count(gNB-CU-UPInterfaces)+count(gNB-DUInterfaces)'; - - description "Specifies the interfaces that need to be traced in the given - ManagedEntityFunction.The attribute is applicable only for Trace. In - case this attribute is not used, it carries a null semantic."; - reference "Clause 5.5 of 3GPP TS 32.422 for additional details on the - allowed values."; - - leaf idx { type uint32 ; } - - leaf-list MSCServerInterfaces { - type enumeration { - enum A ; - enum Iu-CS ; - enum Mc ; - enum MAP-G ; - enum MAP-B ; - enum MAP-E ; - enum MAP-F ; - enum MAP-D ; - enum MAP-C ; - enum CAP ; - } - } - leaf-list MGWInterfaces { - type enumeration { - enum Mc ; - enum Nb-UP ; - enum Iu-UP ; - } - } - leaf-list RNCInterfaces { - type enumeration { - enum Iu-CS ; - enum Iu-PS ; - enum Iur ; - enum Iub ; - enum Uu ; - } - } - leaf-list SGSNInterfaces { - type enumeration { - enum Gb ; - enum Iu-PS ; - enum Gn ; - enum MAP-Gr ; - enum MAP-Gd ; - enum MAP-Gf ; - enum Ge ; - enum Gs ; - enum S6d ; - enum S4 ; - enum S3 ; - enum S13 ; - } - } - leaf-list GGSNInterfaces { - type enumeration { - enum Gn ; - enum Gi ; - enum Gmb ; - } - } - leaf-list S-CSCFInterfaces { - type enumeration { - enum Mw ; - enum Mg ; - enum Mr ; - enum Mi ; - } - } - leaf-list P-CSCFInterfaces { - type enumeration { - enum Gm ; - enum Mw ; - } - } - leaf-list I-CSCFInterfaces { - type enumeration { - enum Cx ; - enum Dx ; - enum Mg ; - enum Mw ; - } - } - leaf-list MRFCInterfaces { - type enumeration { - enum Mp ; - enum Mr ; - } - } - leaf-list MGCFInterfaces { - type enumeration { - enum Mg ; - enum Mj ; - enum Mn ; - } - } - leaf-list IBCFInterfaces { - type enumeration { - enum Ix ; - enum Mx ; - } - } - leaf-list E-CSCFInterfaces { - type enumeration { - enum Mw ; - enum Ml ; - enum Mm ; - enum Mi-Mg ; - } - } - leaf-list BGCFInterfaces { - type enumeration { - enum Mi ; - enum Mj ; - enum Mk ; - } - } - leaf-list ASInterfaces { - type enumeration { - enum Dh ; - enum Sh ; - enum ISC ; - enum Ut ; - } - } - leaf-list HSSInterfaces { - type enumeration { - enum MAP-C ; - enum MAP-D ; - enum Gc ; - enum Gr ; - enum Cx ; - enum S6d ; - enum S6a ; - enum Sh ; - } - } - leaf-list EIRInterfaces { - type enumeration { - enum MAP-F ; - enum S13 ; - enum MAP-Gf ; - } - } - leaf-list BM-SCInterfaces { - type enumeration { - enum Gmb ; - } - } - leaf-list MMEInterfaces { - type enumeration { - enum S1-MME ; - enum S3 ; - enum S6a ; - enum S10 ; - enum S11 ; - enum S13 ; - } - } - leaf-list SGWInterfaces { - type enumeration { - enum S4 ; - enum S5 ; - enum S8 ; - enum S11 ; - enum Gxc ; - } - } - leaf-list PDN_GWInterfaces { - type enumeration { - enum S2a ; - enum S2b ; - enum S2c ; - enum S5 ; - enum S6b ; - enum Gx ; - enum S8 ; - enum SGi ; - } - } - leaf-list eNBInterfaces { - type enumeration { - enum S1-MME ; - enum X2 ; - } - } - leaf-list en-gNBInterfaces { - type enumeration { - enum S1-MME ; - enum X2 ; - enum Uu ; - enum F1-C ; - enum E1 ; - } - } - leaf-list AMFInterfaces { - type enumeration { - enum N1 ; - enum N2 ; - enum N8 ; - enum N11 ; - enum N12 ; - enum N14 ; - enum N15 ; - enum N20 ; - enum N22 ; - enum N26 ; - } - } - leaf-list AUSFInterfaces { - type enumeration { - enum N12 ; - enum N13 ; - } - } - leaf-list NEFInterfaces { - type enumeration { - enum N29 ; - enum N30 ; - enum N33 ; - } - } - leaf-list NRFInterfaces { - type enumeration { - enum N27 ; - } - } - leaf-list NSSFInterfaces { - type enumeration { - enum N22 ; - enum N31 ; - } - } - leaf-list PCFInterfaces { - type enumeration { - enum N5 ; - enum N7 ; - enum N15 ; - } - } - leaf-list SMFInterfaces { - type enumeration { - enum N4 ; - enum N7 ; - enum N10 ; - enum N11 ; - enum S5-C ; - } - } - leaf-list SMSFInterfaces { - type enumeration { - enum N20 ; - enum N21 ; - } - } - leaf-list UDMInterfaces { - type enumeration { - enum N8 ; - enum N10 ; - enum N13 ; - enum N21 ; - } - } - leaf-list UPFInterfaces { - type enumeration { - enum N4 ; - } - } - leaf-list ng-eNBInterfaces { - type enumeration { - enum NG-C ; - enum Xn-C ; - enum Uu ; - } - } - leaf-list gNB-CU-CPInterfaces { - type enumeration { - enum NG-C ; - enum Xn-C ; - enum Uu ; - enum F1-C ; - enum E1 ; - enum X2-C ; - } - } - leaf-list gNB-CU-UPInterfaces { - type enumeration { - enum E1 ; - } - } - leaf-list gNB-DUInterfaces { - type enumeration { - enum F1-C ; - } - } - } - - leaf-list tjListOfNeTypes { - type enumeration { - enum MSC_SERVER; - enum SGSN; - enum MGW; - enum GGSN; - enum RNC; - enum BM_SC; - enum MME; - enum SGW; - enum PGW; - enum ENB; - enum EN_GNB; - enum GNB_CU_CP; - enum GNB_CU_UP; - enum GNB_DU; - } - description "Specifies in which type of ManagedFunction the trace should - be activated. The attribute is applicable only for Trace with - Signalling Based Trace activation. In case this attribute is not used, - it carries a null semantic"; - reference "Clause 5.4 of 3GPP TS 32.422 for additional details on the - allowed values"; - } - - leaf tjPLMNTarget { - type string; - mandatory true; - description "Specifies which PLMN that the subscriber of the session to - be recorded uses as selected PLMN. PLMN Target might differ from the - PLMN specified in the Trace Reference"; - reference "Clause 5.9b of 3GPP TS 32.422"; - } - - leaf tjStreamingTraceConsumerURI { - when './tjTraceReportingFormat = "STREAMING"'; - type inet:uri; - mandatory true; - description "URI of the Streaming Trace data reporting MnS consumer - (a.k.a. streaming target). - This attribute shall be present if file based trace data reporting is - supported and tjTraceReportingFormat set to 'file based' or when - tjJobType is set to Logged MDT or Logged MBSFN MDT."; - reference "Clause 5.9 of 3GPP TS 32.422"; - } - - leaf tjTraceCollectionEntityAddress { - when './tjTraceReportingFormat = "FILE_BASED" or ' - +'./tjJobType = "LOGGED_MDT_ONLY" or ./tjJobType = "LOGGED_MBSFN_MDT"'; - type union { - type inet:uri; - type inet:ip-address; - } - mandatory true; - description "Specifies the address of the Trace Collection Entity when - the attribute tjTraceReportingFormat is configured for the file-based - reporting. The attribute is applicable for both Trace and MDT."; - reference "Clause 5.9 of 3GPP TS 32.422"; - } - - leaf tjTraceDepth { - when './tjJobType = "TRACE_ONLY" or ./tjJobType = "IMMEDIATE_MDT_AND_TRACE"'; - type enumeration { - enum MINIMUM; - enum MEDIUM; - enum MAXIMUM; - enum VENDORMINIMUM; - enum VENDORMEDIUM; - enum VENDORMAXIMUM; - } - default MAXIMUM; - description "Specifies how detailed information should be recorded in the - Network Element. The Trace Depth is a paremeter for Trace Session level, - i.e., the Trace Depth is the same for all of the NEs to be traced in - the same Trace Session. - The attribute is applicable only for Trace, otherwise it carries a null - semantic."; - reference "Clause 5.3 of 3GPP TS 32.422"; - } - - leaf tjTraceReference { - type uint64; - mandatory true; - description "A globally unique identifier, which uniquely identifies the - Trace Session that is created by the TraceJob. - In case of shared network, it is the MCC and MNC of the Participating - Operator that request the trace session that shall be provided. - The attribute is applicable for both Trace and MDT."; - } - - leaf tjTraceReportingFormat { - type enumeration { - enum FILE_BASED; - enum STREAMING; - } - default FILE_BASED; - description "Specifies the trace reporting format - streaming trace - reporting or file-based trace reporting"; - reference "3GPP TS 32.422 clause 5.11"; - } - - leaf tjTraceTarget { - type enumeration { - enum IMSI; - enum IMEI; - enum IMEISV; - enum PUBLIC_ID; - enum UTRAN_CELL; - enum E_UTRAN_CELL; - enum NG_RAN_CELL; - enum ENB; - enum RNC; - enum GNB; - } - mandatory true; - description "Specifies the target object of the Trace and MDT. The - attribute is applicable for both Trace and MDT. This attribute - includes the ID type of the target as an enumeration and the ID value. - - The tjTraceTarget shall be public ID in case of a Management Based - Activation is done to an ScscfFunction. The tjTraceTarget shall be - cell only in case of the UTRAN cell traffic trace function. - - The tjTraceTarget shall be E-UtranCell only in case of E-UTRAN cell - traffic trace function.The tjTraceTarget shall be either IMSI or - IMEI(SV) if the Trace Session is activated to any of the following - ManagedEntity(ies): - - HssFunction - - MscServerFunction - - SgsnFunction - - GgsnFunction - - BmscFunction - - RncFunction - - MmeFunction - - The tjTraceTarget shall be IMSI if the Trace Session is activated to a - ManagedEntity playing a role of ServinGWFunction. - - In case of signaling based MDT, the tjTraceTarget attribute shall be - able to carry (IMSI or IMEI(SV)), the tjMDTAreaScope attribute shall be - able to carry a list of (cell or EUtranCell or TA/LA/RA). - - In case of management based Immediate MDT, the tjTraceTarget attribute - shall be null value, the tjMDTAreaScope attribute shall carry a list of - (Utrancell or E-UtranCell). - - In case of management based Logged MDT, the tjTraceTarget attribute - shall carry an eNodeBs or a RNC. The Logged MDT should be initiated on - the specified eNodeB/RNC in tjTraceTarget. The tjMDTAreaScope attribute - shall carry a list of (Utrancell or E-UtranCell or TA/LA/RA). - - In case of RLF reporting, or RCEF reporting, the tjTraceTarget attribute - shall be null value, the tjMDTAreaScope attribute shall carry one or - list of eNBs"; - reference "3GPP TS 32.422"; - } - - leaf tjTriggeringEvent { - when './tjJobType = "TRACE" or ./tjJobType = "IMMEDIATE_MDT_AND_TRACE"'; - type string ; - mandatory true; - description "Specifies the triggering event parameter of the trace session. - The attribute is applicable only for Trace. In case this attribute is - not used, it carries a null semantic."; - reference "Clause 5.1 of 3GPP TS 32.422"; - } - - leaf tjMDTAnonymizationOfData { - when ./tjMDTAreaScope ; - type enumeration { - enum NO_IDENTITY; - enum TAC_OF_IMEI; - } - default NO_IDENTITY; - description "Specifies level of MDT anonymization."; - reference "3GPP TS 32.422 clause 5.10.12."; - } - - list tjMDTAreaConfigurationForNeighCell { - when './tjJobType = "LOGGED_MDT_ONLY"'; - key "idx"; - min-elements 1; - leaf idx { type uint32 ; } - - description "It specifies the area for which UE is requested to perform - measurement logging for neighbour cells which have list of frequencies. - If it is not configured, the UE shall perform measurement logging for - all the neighbour cells. - - Applicable only to NR Logged MDT."; - reference "3GPP TS 32.422 clause 5.10.26."; - - leaf frequency { - type string; - } - - leaf cell { - type string; - } - } - - leaf-list tjMDTAreaScope { - type string; - description "specifies MDT area scope when activates an MDT job. - - For RLF and RCEF reporting it specifies the eNB or list of eNBs where the - RLF or RCEF reports should be collected. - - - List of cells/TA/LA/RA for signaling based MDT or management based Logged - MDT. - - List of cells for management based Immediate MDT. - - Cell, TA, LA, RA are mutually exclusive. - - One or list of eNBs for RLF and RCEFreporting"; - reference "Clause 5.10.2 of 3GPP TS 32.422"; - } - - leaf tjMDTCollectionPeriodRrmLte { - when './tjJobType = "IMMEDIATE_MDT_ONLY" or ./tjJobType = "IMMEDIATE_MDT_AND_TRACE"'; - type uint32 { - range "250|500|1000|2000|3000|4000|6000|8000|12000|16000|20000|" - +"24000|28000|32000|64000"; - } - units milliseconds; - description "Specifies the collection period for collecting RRM configured - measurement samples for M2, M3 in LTE. The attribute is applicable only - for Immediate MDT. In case this attribute is not used, it carries a - null semantic."; - reference "Clause 5.10.20 of 3GPP TS 32.422"; - } - - leaf tjMDTCollectionPeriodRrmUmts { - when './tjJobType = "IMMEDIATE_MDT_ONLY" or ./tjJobType = "IMMEDIATE_MDT_AND_TRACE"'; - type uint32 { - range "1024|1280|2048|2560|5120|" - +"10240|60000"; - } - units milliseconds; - description "Specifies the collection period for collecting RRM configured - measurement samples for M3, M4, M5 in UMTS. The attribute is applicable - only for Immediate MDT. In case this attribute is not used, it carries - a null semantic"; - reference "Clause 5.10.21 of 3GPP TS 32.422"; - } - - leaf tjMDTEventListForTriggeredMeasurement { - when './tjJobType = "LOGGED_MDT_ONLY"'; - type enumeration { - enum OUT_OF_COVERAGE ; - enum A2_EVENT ; - } - mandatory true; - description "Specifies event types for event triggered measurement in the - case of logged NR MDT. Each trace session may configure at most one - event. The UE shall perform logging of measurements only upon certain - condition being fulfilled: - - Out of coverage. - - A2 event."; - reference "Clause 5.10.28 of 3GPP TS 32.422"; - } - - leaf tjMDTEventThreshold { - type int64; - description "Specifies the threshold which should trigger the reporting - in case A2 event reporting in LTE or 1F/1l event in UMTS. The attribute - is applicable only for Immediate MDT and when reportingTrigger is - configured for A2 event in LTE or 1F event or 1l event in UMTS. In - case this attribute is not used, it carries a null semantic."; - reference "Clauses 5.10.7 and 5.10.7a of 3GPP TS 32.422"; - } - - leaf tjMDTListOfMeasurements { - when './tjJobType = "IMMEDIATE_MDT"'; - type int64; - mandatory true; - description "It specifies the UE measurements that shall be collected in - an Immediate MDT job. The attribute is applicable only for Immediate MDT. - In case this attribute is not used, it carries a null semantic."; - reference "3GPP TS 32.422 clause 5.10.3"; - } - - leaf tjMDTLoggingDuration { - when './tjJobType = "LOGGED_MDT_ONLY" or ./tjJobType = "LOGGED_MBSFN_MDT"'; - type uint32 { - range "600|1200|2400|3600|5400|7200"; - } - units seconds; - mandatory true; - description "Specifies how long the MDT configuration is valid at the - UE in case of Logged MDT. The attribute is applicable only for - Logged MDT and Logged MBSFN MDT. In case this attribute is not used, it - carries a null semantic."; - reference "5.10.9 of 3GPP TS 32.422"; - } - - leaf tjMDTLoggingInterval { - when './tjJobType = "LOGGED_MDT_ONLY" or ./tjJobType = "LOGGED_MBSFN_MDT"'; - type uint32 { - range "1280|2560|5120|10240|20480|" - +"30720|40960|61440"; - } - units milliseconds; - mandatory true; - description "Specifies the periodicty for Logged MDT. The attribute is - applicable only for Logged MDT and Logged MBSFN MDT. In case this - attribute is not used, it carries a null semantic"; - reference "5.10.8 of 3GPP TS 32.422"; - } - - leaf-list tjMDTMBSFNAreaList { - when './tjJobType = "LOGGED_MBSFN_MDT"'; - type string; - min-elements 1; - max-elements 8; - description "The MBSFN Area consists of a MBSFN Area ID and Carrier - Frequency (EARFCN). The target MBSFN area List can have up to 8 entries. - This parameter is applicable only if the job type is Logged MBSFN MDT."; - reference "5.10.25 of 3GPP TS 32.422"; - } - - leaf tjMDTMeasurementPeriodLTE { - when './tjJobType = "IMMEDIATE_MDT_ONLY" or ./tjJobType = "IMMEDIATE_MDT_AND_TRACE"'; - type uint32 { - range "1024|1280|2048|2560|5120|" - +"10240|60000"; - } - units milliseconds; - mandatory true; - description "It specifies the measurement period for the Data Volume and - Scheduled IP throughput measurements for MDT taken by the eNB. - The attribute is applicable only for Immediate MDT. In case this - attribute is not used, it carries a null semantic."; - reference "Clause 5.10.23 of 3GPP TS 32.422"; - } - - leaf tjMDTMeasurementPeriodUMTS { - when './tjJobType = "IMMEDIATE_MDT_ONLY" or ./tjJobType = "IMMEDIATE_MDT_AND_TRACE"'; - type uint32 { - range "250|500|1000|2000|3000|4000|6000|8000|12000|16000|20000|" - +"24000|28000|32000|64000"; - } - units milliseconds; - mandatory true; - description "It specifies the measurement period for the Data Volume and - Throughput measurements for MDT taken by RNC. - The attribute is applicable only for Immediate MDT. In case this - attribute is not used, it carries a null semantic."; - reference "Clause 5.10.22 of 3GPP TS 32.422"; - } - - leaf tjMDTMeasurementQuantity { - when './tjJobType = "IMMEDIATE_MDT_ONLY" or ./tjJobType = "IMMEDIATE_MDT_AND_TRACE"'; - type uint64 ; - mandatory true; - description "It specifies the measurements that are collected in an MDT - job for a UMTS MDT configured for event triggered reporting."; - reference "Clause 5.10.15 of 3GPP TS 32.422"; - } - - list tjMDTPLMList { - when './tjJobType = "LOGGED_MDT_ONLY"'; - key "mcc mnc"; - uses types3gpp:PLMNId; - min-elements 1; - max-elements 16; - description "It indicates the PLMNs where measurement collection, status - indication and log reporting is allowed."; - reference "Clause 5.10.24 of 3GPP TS 32.422"; - } - - leaf tjMDTPositioningMethod { - when './tjJobType = "IMMEDIATE_MDT_ONLY" or ./tjJobType = "IMMEDIATE_MDT_AND_TRACE"'; - type enumeration { - enum GNSS; - enum E_CELL_ID; - } - mandatory true; - description "It specifies what positioning method should be used in the - MDT job."; - reference "Clause 5.10.19 of 3GPP TS 32.422"; - } - - leaf tjMDTReportAmount { - when './tjJobType = "IMMEDIATE_MDT_ONLY" and ./tjMDTReportingTrigger = "PERIODICAL"'; - type union { - type uint32 { - range "1|4|8|16|32|64" ; - } - type enumeration { - enum INFINITY; - } - } - mandatory true; - description "It specifies the number of measurement reports that shall be - taken for periodic reporting while the UE is in connected. - The attribute is applicable only for Immediate MDT and when - tjMDTReportingTrigger is configured for periodical measurements. In - case this attribute is not used, it carries a null semantic."; - reference "Clause 5.10.6 of 3GPP TS 32.422"; - } - - leaf tjMDTReportingTrigger { - when './tjJobType = "IMMEDIATE_MDT_ONLY"'; - type enumeration { - enum PERIODICAL; - enum A2_FOR_LTE; - enum 1F_FOR_UMTS; - enum 1I_FOR_UMTS_MCPS_TDD; - enum A2_TRIGGERED_PERIODIC_FOR_LTE; - enum ALL_CONFIGURED_RRM_FOR_LTE; - enum ALL_CONFIGURED_RRM_FOR_UMTS; - } - description "It specifies whether periodic or event based measurements - should be collected. - The attribute is applicable only for Immediate MDT and when the - tjMDTListOfMeasurements is configured for M1 (for both UMTS and LTE) - or M2 (only for UMTS). In case this attribute is not used, it carries - a null semantic."; - reference "Clause 5.10.4 of 3GPP TS 32.422"; - } - - leaf tjMDTReportInterval { - when './tjJobType = "IMMEDIATE_MDT_ONLY" and ./tjMDTReportingTrigger = "PERIODICAL"'; - type uint32 { - range "120|240|250|480|500|640|1000|1024|2000|2048|3000|4000|" - +"5120|6000|8000|10240|12000|16000|20000|" - +"24000|28000|32000|60000|64000|" - +"360000|720000|1800000|3600000"; - } - units milliseconds; - mandatory true; - description "It specifies the interval between the periodical measurements - that shall be taken when the UE is in connected mode. - The attribute is applicable only for Immediate MDT and when - tjMDTReportingTrigger is configured for periodical measurements. In case - this attribute is not used, it carries a null semantic."; - reference "5.10.5 of 3GPP TS 32.422"; - } - - leaf tjMDTReportType { - when './tjJobType = "LOGGED_MDT_ONLY"'; - type enumeration { - enum PERIODICAL; - enum EVENT_TRIGGERED; - } - mandatory true; - description "It specifies report type for logged NR MDT"; - reference "Clause 5.10.27 of 3GPP TS 32.422"; - } - - leaf tjMDTSensorInformation { - type bits { - bit BAROMETRIC_PRESSURE; - bit UE_SPEED; - bit UE_ORIENTATION; - } - default ""; - description "It specifies which sensor information shall be included in - logged NR MDT and immediate NR MDT measurement if they are available. - The following sensor measurement can be included or excluded for the UE."; - reference "Clause 5.10.29 of 3GPP TS 32.422"; - } - - leaf tjMDTTraceCollectionEntityID { - when './tjJobType = "LOGGED_MDT_ONLY" or ./tjJobType = "LOGGED_MBSFN_MDT"'; - type uint8; - mandatory true; - description "It specifies the TCE Id which is sent to the UE in Logged MDT."; - reference "Clause 5.10.11 of 3GPP TS 32.422"; - } - } - - grouping TraceSubtree { - description "Contains classes that manage Tracing. - Should be used in all classes (or classes inheriting from) - - SubNnetwork - - ManagedElement - - ManagedFunction - - If a YANG module wants to augment these classes/list/groupings they must - augment all user classes!"; - - list TraceJob { - description "Represents the Trace Control and Configuration parameters of a - particular Trace Job (see TS 32.421 and TS 32.422 for details). - - To activate Trace Jobs, a MnS consumer has to create TraceJob object - instances on the MnS producer. A MnS consumer can activate a Trace Job - for another MnS consumer since it is not required the value of - tjTraceCollectionEntityAddress or tjStreamingTraceConsumerUri to be his - own. - - When a MnS consumer wishes to deactivate a Trace Job, the MnS consumer - shall delete the corresponding TraceJob instance. - - For details of management Trace Job activation/deactivation see clause - 4.1.1.1.2 of TS 32.422. - - Creation and deletion of TraceJob instances by MnS consumers is optional; - when not supported, the TraceJob instances may be created and deleted by - the system or be pre-installed."; - - key id; - uses top3gpp:Top_Grp ; - container attributes { - uses TraceJobGrp ; - } - } - } -} \ No newline at end of file diff --git a/yang-models/_3gpp-common-yang-extensions.yang b/yang-models/_3gpp-common-yang-extensions.yang deleted file mode 100755 index 9bc0a82be..000000000 --- a/yang-models/_3gpp-common-yang-extensions.yang +++ /dev/null @@ -1,95 +0,0 @@ -module _3gpp-common-yang-extensions { - yang-version 1.1; - namespace urn:3gpp:sa5:_3gpp-common-yang-extensions ; - prefix yext3gpp ; - - organization "3GPP SA5"; - description "The module defines YANG extensions needed - 3GPP YANG modeling. - - Copyright (c) 2019 3GPP. All rights reserved. - - Extensions MUST be defined with the following structure in the - description statement: - - What is this statement. - - Newline, - - This statement can be a substatement of the xxx statements with - cardinality x..y. - - This statement can have the following substatements with - cardinality x..y. - - Newline - - Is changing this statement an editorial, BC(backwards compatible) - or NBC(non-BC) change? - - Newline. - - The argument its meaning and type. Preferably use YANG types and - constraints to define the argument's type. - - Any extension statement can be added with a - deviation/deviate add statement. In this case the restriction about - the parent statement of the extension SHALL be evaluated based on the - target of the deviation statement. - - Support for this module does not mean that a YANG server implements - support for each of these extensions. - Implementers of each specific module using an extensions MUST check - if the server implements support for the used extension. - Note: modules use many extensions which individual - implementations MAY or MAY NOT support. - If support for an extension is missing the extension statement needs - individual handling or it SHOULD be removed from the module using - the extension e.g. with a deviation. - "; - - revision "2019-06-23" { - description "Initial version"; - } - - extension inVariant { - description - "Indicates that the value for the data node can only be set when its - parent data node is being created. To change the value after that, the - parent data node must be deleted and recreated with the data node - having the new value. - - It is unnecessary to use and MUST NOT be used for key leafs. - - The statement MUST only be a substatement of a leaf, leaf-list, list - statements that is config=true. - Zero or one inVariant statement is allowed per parent statement. - NO substatements are allowed. - - Adding this statement is an NBC change, removing it is BC."; - } - - extension initial-value { - description "Specifies a value that the system will set for a leaf - leaf-list if a value is not specified for it when its parent list - or container is created. The value has no effect in any other - modification e.g. changing or removing the value. - - The description statement of the parent statement SHOULD contain - the label 'Initial-value: ' followed by the text from the argument. - - The statement MUST only be a substatement of a leaf or leaf-list. - The statement MUST NOT be present if the leaf or the leaf-list - has a default statement or the type used for the data node - has a default value. - The statement MUST NOT be used for config=false data or in an - action, rpc or notification. - Zero or one initial-value statements are allowed for a leaf parent - statement. Zero or more initial-value statements are allowed for a - leaf-list parent statement. If the leaf-list is ordered-by user, the - initial values are stored in the order they appear in the YANG definition. - NO substatements are allowed. - - Always consider using a YANG-default statement instead. - - Modification of the initial-value is a non-backwards-compatible change. - - The argument specifies a single initial value for a leaf or leaf-list. - The value MUST be part of the valuespace of the leaf/leaf-list. - It follows the same rules as the argument of the default statement."; - - argument "initial-value"; - } -} \ No newline at end of file diff --git a/yang-models/_3gpp-common-yang-types.yang b/yang-models/_3gpp-common-yang-types.yang deleted file mode 100755 index 56ad2e978..000000000 --- a/yang-models/_3gpp-common-yang-types.yang +++ /dev/null @@ -1,527 +0,0 @@ -module _3gpp-common-yang-types { - yang-version 1.1; - namespace "urn:3gpp:sa5:_3gpp-common-yang-types"; - prefix "types3gpp"; - - import ietf-inet-types { prefix inet; } - import ietf-yang-types { prefix yang; } - - organization "3GPP SA5"; - description "The model defines a YANG mapping of the top level - information classes used for management of 5G networks and - network slicing."; - reference "3GPP TS 28.541"; - - revision 2020-03-10 { - description "Removed faulty when statements."; - reference "SP-200229"; - } - - revision 2019-10-25 { - description "Added ManagedNFProfile."; - reference "S5-194457"; - } - - revision 2019-10-16 { - description "Added SAP and usageState."; - reference "S5-193518"; - } - - revision 2019-06-23 { - description "Initial version."; - } - - grouping ManagedNFProfile { - description "Defines profile for managed NF"; - reference "3GPP TS 23.501"; - - leaf idx { type uint32 ; } - - leaf nfInstanceID { - config false; - mandatory true; - type yang:uuid ; - description "This parameter defines profile for managed NF. - The format of the NF Instance ID shall be a - Universally Unique Identifier (UUID) version 4, - as described in IETF RFC 4122 " ; - } - - leaf-list nfType { - config false; - min-elements 1; - type NfType; - description "Type of the Network Function" ; - } - - leaf hostAddr { - mandatory true; - type inet:host ; - description "Host address of a NF"; - } - - leaf authzInfo { - type string ; - description "This parameter defines NF Specific Service authorization - information. It shall include the NF type (s) and NF realms/origins - allowed to consume NF Service(s) of NF Service Producer."; - reference "See TS 23.501" ; - } - - leaf location { - type string ; - description "Information about the location of the NF instance - (e.g. geographic location, data center) defined by operator"; - reference "TS 29.510" ; - } - - leaf capacity { - mandatory true; - type uint16 ; - description "This parameter defines static capacity information - in the range of 0-65535, expressed as a weight relative to other - NF instances of the same type; if capacity is also present in the - nfServiceList parameters, those will have precedence over this value."; - reference "TS 29.510" ; - } - - leaf nFSrvGroupId { - type string ; - description "This parameter defines identity of the group that is - served by the NF instance. - May be config false or true depending on the ManagedFunction. - Config=true for Udrinfo. Config=false for UdmInfo and AusfInfo. - Shall be present if ../nfType = UDM or AUSF or UDR. "; - reference "TS 29.510" ; - } - - leaf-list supportedDataSetIds { - type enumeration { - enum SUBSCRIPTION; - enum POLICY; - enum EXPOSURE; - enum APPLICATION; - } - description "List of supported data sets in the UDR instance. - May be present if ../nfType = UDR"; - reference "TS 29.510" ; - } - - leaf-list smfServingAreas { - type string ; - description "Defines the SMF service area(s) the UPF can serve. - Shall be present if ../nfType = UPF"; - reference "TS 29.510" ; - } - - leaf priority { - type uint16; - description "This parameter defines Priority (relative to other NFs - of the same type) in the range of 0-65535, to be used for NF selection; - lower values indicate a higher priority. If priority is also present - in the nfServiceList parameters, those will have precedence over - this value. Shall be present if ../nfType = AMF "; - reference "TS 29.510" ; - } - } - - typedef usageState { - type enumeration { - enum IDLE; - enum ACTIVE; - enum BUSY; - } - description "It describes whether or not the resource is actively in - use at a specific instant, and if so, whether or not it has spare - capacity for additional users at that instant. The value is READ-ONLY."; - reference "ITU T Recommendation X.731"; - } - - grouping SAP { - leaf host { - type inet:host; - mandatory true; - } - leaf port { - type inet:port-number; - mandatory true; - } - description "Service access point."; - reference "TS 28.622"; - } - - typedef Mcc { - description "The mobile country code consists of three decimal digits, - The first digit of the mobile country code identifies the geographic - region (the digits 1 and 8 are not used):"; - type string { - pattern '[02-79][0-9][0-9]'; - } - reference "3GPP TS 23.003 subclause 2.2 and 12.1"; - } - - typedef Mnc { - description "The mobile network code consists of two or three - decimal digits (for example: MNC of 001 is not the same as MNC of 01)"; - type string { - pattern '[0-9][0-9][0-9]|[0-9][0-9]'; - } - reference "3GPP TS 23.003 subclause 2.2 and 12.1"; - } - - grouping PLMNId { - leaf mcc { - mandatory true; - type Mcc; - } - leaf mnc { - mandatory true; - type Mnc; - } - reference "TS 23.658"; - } - - typedef Nci { - description "NR Cell Identity. The NCI shall be of fixed length of 36 bits - and shall be coded using full hexadecimal representation. - The exact coding of the NCI is the responsibility of each PLMN operator"; - reference "TS 23.003"; - type union { - type string { - length 36; - pattern '[01]+'; - } - type string { - length 9; - pattern '[a-fA-F0-9]*'; - } - } - } - - typedef OperationalState { - reference "3GPP TS 28.625 and ITU-T X.731"; - type enumeration { - enum DISABLED { - value 0; - description "The resource is totally inoperable."; - } - - enum ENABLED { - value 1; - description "The resource is partially or fully operable."; - } - - } - } - - typedef AdministrativeState { - reference "3GPP TS 28.625 and ITU-T X.731"; - type enumeration { - enum LOCKED { - value 0; - description "The resource is administratively prohibited from performing - services for its users."; - } - - enum UNLOCKED { - value 1; - description "The resource is administratively permitted to perform - services for its users. This is independent of its inherent - operability."; - } - - enum SHUTTINGDOWN { - value 2; - description "Use of the resource is administratively permitted to - existing instances of use only. While the system remains in - the shutting down state the manager or the managed element - may at any time cause the resource to transition to the - locked state."; - } - } - } - - typedef AvailabilityStatus { - type enumeration { - enum IN_TEST; - enum FAILED; - enum POWER_OFF; - enum OFF_LINE; - enum OFF_DUTY; - enum DEPENDENCY; - enum DEGRADED; - enum NOT_INSTALLED; - enum LOG_FULL; - } - } - - typedef CellState { - type enumeration { - enum IDLE; - enum INACTIVE; - enum ACTIVE; - } - } - - typedef SNssai { - type union { - type Sst; - //optional support - type Sd; - } - description "Single Network Slice Selection Assistance Information."; - reference "TS 23.501 clause 5.15.2"; - } - - typedef Sst { - type uint8; - } - - typedef Sd { - type string{ - length 6; - pattern '[a-fA-F0-9]*'; - } - } - - typedef Nrpci { - type uint32; - description "Physical Cell Identity (PCI) of the NR cell."; - reference "TS 36.211 subclause 6.11"; - } - - typedef Tac { - type int32 { - range 0..16777215 ; - } - description "Tracking Area Code"; - reference "TS 23.003 clause 19.4.2.3"; - } - - typedef AmfRegionId { - type union { - type uint8 ; - type string { - length 8; - pattern '[01]*'; - } - } - reference "clause 2.10.1 of 3GPP TS 23.003"; - } - - typedef AmfSetId { - type union { - type uint16 { - range '0..1023'; - } - type string { - length 8; - pattern '[01]*'; - } - } - reference "clause 2.10.1 of 3GPP TS 23.003"; - } - - typedef AmfPointer { - type union { - type uint8 { - range '0..63'; - } - type string { - length 6; - pattern '[01]*'; - } - } - reference "clause 2.10.1 of 3GPP TS 23.003"; - } - - grouping AmfIdentifier { - leaf amfRegionId { - type AmfRegionId; - } - leaf amfSetId { - type AmfSetId; - } - leaf amfPointer { - type AmfPointer; - } - description "The AMFI is constructed from an AMF Region ID, - an AMF Set ID and an AMF Pointer. - The AMF Region ID identifies the region, - the AMF Set ID uniquely identifies the AMF Set within the AMF Region, and - the AMF Pointer uniquely identifies the AMF within the AMF Set. "; - } - -// type definitions especially for core NFs - - typedef NfType { - type enumeration { - enum NRF; - enum UDM; - enum AMF; - enum SMF; - enum AUSF; - enum NEF; - enum PCF; - enum SMSF; - enum NSSF; - enum UDR; - enum LMF; - enum GMLC; - enum 5G_EIR; - enum SEPP; - enum UPF; - enum N3IWF; - enum AF; - enum UDSF; - enum BSF; - enum CHF; - } - } - - typedef NotificationType { - type enumeration { - enum N1_MESSAGES; - enum N2_INFORMATION; - enum LOCATION_NOTIFICATION; - } - } - - typedef Load { - description "Latest known load information of the NF, percentage "; - type uint8 { - range 0..100; - } - } - - typedef N1MessageClass { - type enumeration { - enum 5GMM; - enum SM; - enum LPP; - enum SMS; - } - } - - typedef N2InformationClass { - type enumeration { - enum SM; - enum NRPPA; - enum PWS; - enum PWS_BCAL; - enum PWS_RF; - } - } - - grouping DefaultNotificationSubscription { - - leaf notificationType { - type NotificationType; - } - - leaf callbackUri { - type inet:uri; - } - - leaf n1MessageClass { - type N1MessageClass; - } - - leaf n2InformationClass { - type N2InformationClass; - } - } - - grouping Ipv4AddressRange { - leaf start { - type inet:ipv4-address; - } - leaf end { - type inet:ipv4-address; - } - } - - grouping Ipv6PrefixRange { - leaf start { - type inet:ipv6-prefix; - } - leaf end { - type inet:ipv6-prefix; - } - } - - typedef NsiId { - type string; - } - - typedef UeMobilityLevel { - type enumeration { - enum STATIONARY; - enum NOMADIC; - enum RESTRICTED_MOBILITY; - enum FULLY_MOBILITY; - } - } - - typedef ResourceSharingLevel { - type enumeration { - enum SHARED; - enum NOT_SHARED; - } - } - - typedef TxDirection { - type enumeration { - enum DL; - enum UL; - enum DL_AND_UL; - } - } - - grouping AddressWithVlan { - leaf ipAddress { - type inet:ip-address; - } - leaf vlanId { - type uint16; - } - } - - typedef DistinguishedName { // TODO is this equivalent to TS 32.300 ? - type string { - pattern '([a-zA-Z][a-zA-Z0-9-]*=(\\( |#|\\|>|<|;|"|\+|,|[a-fA-F0-9]{2})|[^\\><;"+,# ])' - + '((\\( |#|\\|>|<|;|"|\+|,|[a-fA-F0-9]{2})|[^\\><;"+,])*' - + '(\\( |#|\\|>|<|;|"|\+|,|[a-fA-F0-9]{2})|[^\\><;"+, ]))?' - + '[,\+])*[a-zA-Z][a-zA-Z0-9-]*=(\\( |#|\\|>|<|;|"|\+|,|[a-fA-F0-9]{2})|[^\\><;"+,# ])' - + '((\\( |#|\\|>|<|;|"|\+|,|[a-fA-F0-9]{2})' - + '|[^\\><;"+,])*(\\( |#|\\|>|<|;|"|\+|,|[a-fA-F0-9]{2})|[^\\><;"+, ]))?'; - } - description "Represents the international standard for the representation - of Distinguished Name (RFC 4512). - The format of the DistinguishedName REGEX is: - {AttributeType = AttributeValue} - - AttributeType consists of alphanumeric and hyphen (OIDs not allowed). - All other characters are restricted. - The Attribute value cannot contain control characters or the - following characters : \\ > < ; \" + , (Comma) and White space - The Attribute value can contain the following characters if they - are excaped : \\ > < ; \" + , (Comma) and White space - The Attribute value can contain control characters if its an escaped - double digit hex number. - Examples could be - UID=nobody@example.com,DC=example,DC=com - CN=John Smith,OU=Sales,O=ACME Limited,L=Moab,ST=Utah,C=US"; - reference "RFC 4512 Lightweight Directory Access Protocol (LDAP): - Directory Information Models"; - } // recheck regexp it doesn't handle posix [:cntrl:] - - typedef QOffsetRange { - type int8 { - range "-24 | -22 | -20 | -18 | -16 | -14 | -12 | -10 | -8 | -6 | " + - " -5 | -4 | -3 | -2 | -1 | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 8 | 10 | " + - " 12 | 14 | 16 | 18 | 20 | 22 | 24"; - } - units dB; - } -} \ No newline at end of file diff --git a/yang-models/_3gpp-nr-nrm-beam.yang b/yang-models/_3gpp-nr-nrm-beam.yang deleted file mode 100755 index 1ad715992..000000000 --- a/yang-models/_3gpp-nr-nrm-beam.yang +++ /dev/null @@ -1,96 +0,0 @@ -module _3gpp-nr-nrm-beam { - yang-version 1.1; - namespace "urn:3gpp:sa5:_3gpp-nr-nrm-nrnetwork-beam"; - prefix "beam3gpp"; - - import _3gpp-nr-nrm-commonbeamformingfunction { prefix cbeamff3gpp; } - import _3gpp-common-top { prefix top3gpp; } - import _3gpp-common-managed-function { prefix mf3gpp; } - import _3gpp-common-managed-element { prefix me3gpp; } - import _3gpp-nr-nrm-gnbdufunction { prefix gnbdu3gpp; } - import _3gpp-nr-nrm-nrsectorcarrier { prefix nrsectcarr3gpp; } - - organization "3GPP SA5"; - description "Defines the YANG mapping of the Beam Information - Object Class (IOC) that is part of the NR Network Resource Model (NRM)."; - reference "3GPP TS 28.541 5G Network Resource Model (NRM)"; - - revision 2019-11-22 { - description "Initial revision"; - reference "S5-197643"; - } - - typedef BeamType { - type enumeration { - enum SSB-BEAM; - } - } - - grouping BeamGrp { - description "Represents the Beam IOC."; - reference "3GPP TS 28.541"; - uses mf3gpp:ManagedFunctionGrp; - - leaf beamIndex { - description "Index of the beam. "; - mandatory true; - type int32; - } - - leaf beamType { - description "The type of the beam. "; - mandatory false; - type BeamType; - } - - leaf beamAzimuth { - description "The azimuth of a beam transmission, which means the horizontal beamforming pointing angle (beam peak direction) in the (Phi) f-axis in 1/10th degree resolution. The pointing angle is the direction equal to the geometric centre of the half-power contour of the beam relative to the reference plane. Zero degree implies explicit antenna bearing (boresight). Positive angle implies clockwise from the antenna bearing."; - reference "3GPP TS 38.104, TS 38.901, TS 28.662"; - mandatory false; - type int32 { range "-1800..1800"; } - units "0.1"; - } - - leaf beamTilt { - description "The tilt of a beam transmission, which means the vertical beamforming pointing angle (beam peak direction) in the (Theta) ?-axis in 1/10th degree resolution. -The pointing angle is the direction equal to the geometric centre of the half-power contour of the beam relative to the reference plane. Positive value implies downtilt."; - reference "3GPP TS 38.104, TS 38.901, TS 28.662"; - mandatory false; - type int32 { range "-900..900"; } - units "0.1"; - } - - - - leaf beamHorizWidth { - description " The Horizontal beamWidth of a beam transmission, which means the horizontal beamforming half-power (3dB down) beamwidth in the (Phi) f-axis in 1/10th degree resolution."; - reference "3GPP TS 38.104, TS 38.901"; - mandatory false; - type int32 { range "0..3599"; } - units "0.1"; - } - - leaf beamVertWidth { - description " The Vertical beamWidth of a beam transmission, which means the vertical beamforming half-power (3dB down) beamwidth in the (Theta) ?-axis in 1/10th degree resolution."; - reference "3GPP TS 38.104, TS 38.901"; - mandatory false; - type int32 { range "0..1800"; } - units "0.1"; - } - - - } - - augment "/me3gpp:ManagedElement/gnbdu3gpp:GNBDUFunction/nrsectcarr3gpp:NRSectorCarrier/cbeamff3gpp:CommonBeamformingFunction" { - - list Beam { - description "Represents the per-Beam information required for, e.g. beam performance management utilizing measurements generated in the RAN. Can have spatial attributes of horizontal/azimuth (ie: Phi f-axis) and vertical/tilt (ie: Theta ?-axis) beam pointing direction and beam width attributes."; - reference "3GPP TS 28.541"; - key id; - uses top3gpp:Top_Grp; - container attributes { - uses BeamGrp; - } - } - } -} \ No newline at end of file diff --git a/yang-models/_3gpp-nr-nrm-bwp.yang b/yang-models/_3gpp-nr-nrm-bwp.yang deleted file mode 100755 index cd28affd7..000000000 --- a/yang-models/_3gpp-nr-nrm-bwp.yang +++ /dev/null @@ -1,105 +0,0 @@ -module _3gpp-nr-nrm-bwp { - yang-version 1.1; - namespace "urn:3gpp:sa5:_3gpp-nr-nrm-bwp"; - prefix "bwp3gpp"; - - import _3gpp-common-managed-element { prefix me3gpp; } - import _3gpp-common-managed-function { prefix mf3gpp; } - import _3gpp-common-top { prefix top3gpp; } - import _3gpp-nr-nrm-gnbdufunction { prefix gnbdu3gpp; } - - organization "3GPP SA5"; - description "Defines the YANG mapping of the BWP Information Object Class - (IOC) that is part of the NR Network Resource Model (NRM)."; - reference "3GPP TS 28.541 5G Network Resource Model (NRM)"; - - revision 2019-10-28 { reference S5-193518 ; } - revision 2019-06-17 { - description "Initial revision"; - } - - typedef CyclicPrefix { - type enumeration { - enum NORMAL; - enum EXTENDED; - } - } - - typedef BwpContext { - type enumeration { - enum DL; - enum UL; - enum SUL; - } - } - - typedef IsInitialBwp { - type enumeration { - enum INITIAL; - enum OTHER; - } - } - - grouping BWPGrp { - description "Represents the BWP IOC."; - reference "3GPP TS 28.541"; - uses mf3gpp:ManagedFunctionGrp; - - leaf bwpContext { - description "Identifies whether the object is used for downlink, uplink - or supplementary uplink."; - mandatory true; - type BwpContext; - } - - leaf isInitialBwp { - description "Identifies whether the object is used for initial or other - BWP."; - mandatory true; - type IsInitialBwp; - } - - leaf subCarrierSpacing { - description "Subcarrier spacing configuration for a BWP."; - reference "3GPP TS 38.104"; - mandatory true; - type uint32 { range "5 | 30 | 60 | 120"; } - units kHz; - } - - leaf cyclicPrefix { - description "Cyclic prefix, which may be normal or extended."; - reference "3GPP TS 38.211"; - mandatory true; - type CyclicPrefix; - } - - leaf startRB { - description "Offset in common resource blocks to common resource block 0 - for the applicable subcarrier spacing for a BWP."; - reference "N_BWP_start in 3GPP TS 38.211"; - mandatory true; - type uint32; - } - - leaf numberOfRBs { - description "Number of physical resource blocks for a BWP."; - reference "N_BWP_size in 3GPP TS 38.211"; - mandatory true; - type uint32; - } - } - - augment "/me3gpp:ManagedElement/gnbdu3gpp:GNBDUFunction" { - - list BWP { - description "Represents a bandwidth part (BWP)."; - key id; - uses top3gpp:Top_Grp; - container attributes { - uses BWPGrp; - } - uses mf3gpp:ManagedFunctionContainedClasses; - } - } -} \ No newline at end of file diff --git a/yang-models/_3gpp-nr-nrm-cesmanagementfunction.yang b/yang-models/_3gpp-nr-nrm-cesmanagementfunction.yang deleted file mode 100755 index 8aa498d81..000000000 --- a/yang-models/_3gpp-nr-nrm-cesmanagementfunction.yang +++ /dev/null @@ -1,64 +0,0 @@ -module _3gpp-nr-nrm-cesmanagementfunction { - yang-version 1.1; - namespace "urn:3gpp:sa5:_3gpp-nr-nrm-cesmanagementfunction"; - prefix "cesmanagementfunction3gpp"; - - import _3gpp-common-subnetwork { prefix subnet3gpp; } - import _3gpp-common-top { prefix top3gpp; } - import _3gpp-nr-nrm-nrcellcu { prefix nrcellcu3gpp; } - import _3gpp-nr-nrm-gnbcucpfunction { prefix gnbcucp3gpp; } - import _3gpp-common-managed-element { prefix me3gpp; } - - - organization "3GPP SA5"; - contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; - description "Defines the YANG mapping of the CESManagementFunction Information Object Class - (IOC) that is part of the NR Network Resource Model (NRM)."; - reference "3GPP TS 28.541 5G Network Resource Model (NRM)"; - - revision 2020-05-08 { reference S5-203316; } - - - grouping CESManagementFunctionGrp { - description "Represents the CESManagementFunction IOC."; - reference "3GPP TS 28.541"; - uses top3gpp:Top_Grp; - - leaf cesSwitch { - description "This attribute determines whether the Cross Domain-Centralized SON energy saving function is enabled or disabled."; - type boolean; - } - - leaf energySavingState { - description "Specifies the status regarding the energy saving in the cell. If the value of energySavingControl is toBeEnergySaving, then it shall be tried to achieve the value isEnergySaving for the energySavingState. If the value of energySavingControl is toBeNotEnergySaving, then it shall be tried to achieve the value isNotEnergySaving for the energySavingState. "; - type enumeration{ - enum isNotEnergySaving; - enum isEnergySaving; - } - } - - - leaf energySavingControl { - description "This attribute allows the Cross Domain-Centralized SON energy saving function to initiate energy saving activation or deactivation."; - type enumeration{ - enum toBeEnergySaving; - enum toBeNotEnergySaving; - } - } - - - } - - augment "/me3gpp:ManagedElement/gnbcucp3gpp:GNBCUCPFunction/nrcellcu3gpp:NRCellCU" { - if-feature nrcellcu3gpp:CESManagementFunction; - uses CESManagementFunctionGrp; - } - augment "/me3gpp:ManagedElement" { - if-feature me3gpp:CESManagementFunction; - uses CESManagementFunctionGrp; - } - augment "/subnet3gpp:SubNetwork" { - if-feature subnet3gpp:CESManagementFunction; - uses CESManagementFunctionGrp; - } -} \ No newline at end of file diff --git a/yang-models/_3gpp-nr-nrm-common.yang b/yang-models/_3gpp-nr-nrm-common.yang deleted file mode 100755 index aa2343f6a..000000000 --- a/yang-models/_3gpp-nr-nrm-common.yang +++ /dev/null @@ -1,29 +0,0 @@ -module _3gpp-nr-nrm-common { - yang-version 1.1; - namespace "urn:3gpp:sa5:3gpp-nr-nrm-common"; - prefix "nrcommon3gpp"; - - import _3gpp-common-yang-types { prefix types3gpp; } - - organization "3GPP SA5"; - description "Defines the YANG mapping of comon parts for 3GPP TS 28.541."; - reference "3GPP TS 28.541 5G Network Resource Model (NRM)"; - - revision 2020-02-14 { - description "Initial revision"; - } - - - grouping PLMNInfo { - description "The PLMNInfo data type define a S-NSSAI member in a specific PLMNId, and it have - two attributes PLMNId and S-NSSAI (PLMNId, S-NSSAI). The PLMNId represents a data type that - is comprised of mcc (mobile country code) and mnc (mobile network code), (See TS 23.003 - subclause 2.2 and 12.1) and S-NSSAI represents an data type, that is comprised of an SST - (Slice/Service type) and an optional SD (Slice Differentiator) field, (See TS 23.003 [13])."; - uses types3gpp:PLMNId; - leaf sNssai { - type types3gpp:SNssai; - } - } - -} \ No newline at end of file diff --git a/yang-models/_3gpp-nr-nrm-commonbeamformingfunction.yang b/yang-models/_3gpp-nr-nrm-commonbeamformingfunction.yang deleted file mode 100755 index e900d4fc4..000000000 --- a/yang-models/_3gpp-nr-nrm-commonbeamformingfunction.yang +++ /dev/null @@ -1,62 +0,0 @@ -module _3gpp-nr-nrm-commonbeamformingfunction { - yang-version 1.1; - namespace "urn:3gpp:sa5:_3gpp-nr-nrm-nrnetwork-commonbeamformingfunction"; - prefix "combeamformfunc3gpp"; - - import _3gpp-nr-nrm-nrsectorcarrier { prefix nrsectcarr3gpp; } - import _3gpp-common-top { prefix top3gpp; } - import _3gpp-common-managed-function { prefix mf3gpp; } - import _3gpp-common-managed-element { prefix me3gpp; } - import _3gpp-nr-nrm-gnbdufunction { prefix gnbdu3gpp; } - - - organization "3GPP SA5"; - description "Defines the YANG mapping of the CommonBeamformingFuntion Information - Object Class (IOC) that is part of the NR Network Resource Model (NRM)."; - reference "3GPP TS 28.541 5G Network Resource Model (NRM)"; - - revision 2019-11-22 { - description "Initial revision"; - reference "S5-197643"; - } - - grouping CommonBeamformingFunctionGrp { - description "Represents the CommonBeamformingFunction IOC."; - reference "3GPP TS 28.541"; - uses mf3gpp:ManagedFunctionGrp; - - leaf coverageShape { - description "Identifies the sector carrier coverage shape described by the envelope of the contained SSB beams. The coverage shape is implementation dependent."; - mandatory true; - type int32 { range "0..65535"; } - } - - leaf digitalAzimuth { - description "Digitally-controlled azimuth through beamforming. It represents the horizontal pointing direction of the antenna relative to the antenna bore sight, representing the total non-mechanical horizontal pan of the selected coverageShape. Positive value gives azimuth to the right and negative value gives an azimuth to the left."; - - reference "3GPP TS 38.104, TS 38.901, TS 28.662"; - type int32 { range "-1800..1800"; } - units "0.1"; - } - - leaf digitalTilt { - description "Digitally-controlled tilt through beamforming. It represents the vertical pointing direction of the antenna relative to the antenna bore sight, representing the total non-mechanical vertical tilt of the selected coverageShape. Positive value gives downwards tilt and negative value gives upwards tilt."; - reference "3GPP TS 38.104, TS 38.901, TS 28.662"; - type int32 { range "-900..900"; } - units "0.1"; - } - } - - augment "/me3gpp:ManagedElement/gnbdu3gpp:GNBDUFunction/nrsectcarr3gpp:NRSectorCarrier" { - - list CommonBeamformingFunction { - description "Represents common beamforming functionality (eg: SSB beams) for the NRSectorCarrier."; - reference "3GPP TS 28.541"; - key id; - uses top3gpp:Top_Grp; - container attributes { - uses CommonBeamformingFunctionGrp; - } - } - } -} \ No newline at end of file diff --git a/yang-models/_3gpp-nr-nrm-cpciconfigurationfunction.yang b/yang-models/_3gpp-nr-nrm-cpciconfigurationfunction.yang deleted file mode 100755 index 1437acece..000000000 --- a/yang-models/_3gpp-nr-nrm-cpciconfigurationfunction.yang +++ /dev/null @@ -1,67 +0,0 @@ -module _3gpp-nr-nrm-cpciconfigurationfunction { - yang-version 1.1; - namespace "urn:3gpp:sa5:_3gpp-nr-nrm-cpciconfigurationfunction"; - prefix "cpciconfigurationfunction3gpp"; - - import _3gpp-common-subnetwork { prefix subnet3gpp; } - import _3gpp-common-top { prefix top3gpp; } - import _3gpp-nr-nrm-nrcelldu { prefix nrcelldu3gpp; } - import _3gpp-nr-nrm-gnbdufunction { prefix gnbdu3gpp; } - import _3gpp-common-managed-element { prefix me3gpp; } - - organization "3GPP SA5"; - contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; - description "Defines the YANG mapping of the CPCIConfigurationFunction Information Object Class - (IOC) that is part of the NR Network Resource Model (NRM)."; - reference "3GPP TS 28.541 5G Network Resource Model (NRM)"; - - revision 2020-05-08 { reference S5-203316; } - - - grouping CPCIConfigurationFunctionGrp { - description "Represents the CPCICONFIGURATIONFunction IOC."; - reference "3GPP TS 28.541"; - uses top3gpp:Top_Grp; - - - list cSonPciList { - key NRPci; - description " This holds a list of physical cell identities that can be assigned to the pci attribute by gNB. The assignment algorithm is not specified. This attribute shall be supported if and only if the C-SON PCI configuration is supported."; - leaf NRPci {type int32;} - container attributes { - uses CSonPciListGrp; - } - } - - - leaf cPciConfigurationControl { - description "This attribute determines whether the Cross Domain-Centralized SON PCI configuration function is enabled or disabled."; - type boolean; - } - - } - - grouping CSonPciListGrp { - description "Represents the C-SON PCI list for the PCI configuration function."; - - leaf NRPci { - description "This attribute determines the NR PCI."; - type int32 { range "0..1007"; } - units "1"; - } - } - - - augment "/me3gpp:ManagedElement/gnbdu3gpp:GNBDUFunction/nrcelldu3gpp:NRCellDU" { - if-feature nrcelldu3gpp:CPCIConfigurationFunction; - uses CPCIConfigurationFunctionGrp; - } - augment "/me3gpp:ManagedElement" { - if-feature me3gpp:CPCIConfigurationFunction; - uses CPCIConfigurationFunctionGrp; - } - augment "/subnet3gpp:SubNetwork" { - if-feature subnet3gpp:CPCIConfigurationFunction; - uses CPCIConfigurationFunctionGrp; - } -} \ No newline at end of file diff --git a/yang-models/_3gpp-nr-nrm-danrmanagementfunction.yang b/yang-models/_3gpp-nr-nrm-danrmanagementfunction.yang deleted file mode 100755 index 9ec94fc20..000000000 --- a/yang-models/_3gpp-nr-nrm-danrmanagementfunction.yang +++ /dev/null @@ -1,44 +0,0 @@ -module _3gpp-nr-nrm-danrmanagementfunction { - yang-version 1.1; - namespace "urn:3gpp:sa5:_3gpp-nr-nrm-danrmanagementfunction"; - prefix "danrmanagementfunction3gpp"; - - - import _3gpp-common-top { prefix top3gpp; } - import _3gpp-nr-nrm-gnbcucpfunction { prefix gnbcucp3gpp; } - import _3gpp-common-managed-element { prefix me3gpp; } - - - - organization "3GPP SA5"; - contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; - description "Defines the YANG mapping of the DANRManagementFunction Information Object Class - (IOC) that is part of the NR Network Resource Model (NRM)."; - reference "3GPP TS 28.541 5G Network Resource Model (NRM)"; - - revision 2020-05-08 { reference S5-203316; } - - - grouping DANRManagementFunctionGrp { - description "Represents the DANRManagementFunction IOC."; - reference "3GPP TS 28.541"; - uses top3gpp:Top_Grp; - - leaf intrasystemANRManagementSwitch { - description "This attribute determines whether the intra-system ANR function is activated or deactivated."; - type boolean; - } - - leaf intersystemANRManagementSwitch { - description "This attribute determines whether the inter-system ANR function is activated or deactivated."; - type boolean; - } - - - } - - augment "/me3gpp:ManagedElement/gnbcucp3gpp:GNBCUCPFunction" { - if-feature gnbcucp3gpp:DANRManagementFunction; - uses DANRManagementFunctionGrp; - } -} \ No newline at end of file diff --git a/yang-models/_3gpp-nr-nrm-desmanagementfunction.yang b/yang-models/_3gpp-nr-nrm-desmanagementfunction.yang deleted file mode 100755 index b4b86d2b0..000000000 --- a/yang-models/_3gpp-nr-nrm-desmanagementfunction.yang +++ /dev/null @@ -1,261 +0,0 @@ -module _3gpp-nr-nrm-desmanagementfunction { - yang-version 1.1; - namespace "urn:3gpp:sa5:_3gpp-nr-nrm-desmanagementfunction"; - prefix "desmanagementfunction3gpp"; - - - import _3gpp-common-top { prefix top3gpp; } - import _3gpp-nr-nrm-gnbcucpfunction { prefix gnbcucp3gpp; } - import _3gpp-common-managed-element { prefix me3gpp; } - import _3gpp-nr-nrm-nrcellcu { prefix nrcellcu3gpp; } - import _3gpp-common-subnetwork { prefix subnet3gpp; } - - - organization "3GPP SA5"; - contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; - description "Defines the YANG mapping of the DESManagementFunction Information Object Class - (IOC) that is part of the NR Network Resource Model (NRM)."; - reference "3GPP TS 28.541 5G Network Resource Model (NRM)"; - - revision 2020-05-08 { reference S5-203316; } - - - grouping DESManagementFunctionGrp { - description "Represents the DESManagementFunction IOC."; - reference "3GPP TS 28.541"; - uses top3gpp:Top_Grp; - - leaf desSwitch { - description "This attribute determines whether the Distributed SON or Domain-Centralized SON energy saving function is enabled or disabled."; - type boolean; - } - - list intraRatEsActivationOriginalCellLoadParameters { - key loadThreshold; - description "This attributes is relevant, if the cell acts as an original cell.This attribute indicates the traffic load threshold and the time duration, which are used by distributed ES algorithms to allow a cell to enter the energySaving state."; - leaf loadThreshold {type int32;} - container attributes { - uses IntraRatEsActivationOriginalCellLoadParametersGrp; - } - } - - - list intraRatEsActivationCandidateCellsLoadParameters { - key loadThreshold; - description "This attribute indicates the traffic load threshold and the time duration, which are used by distributed ES algorithms level to allow a n 'original' cell to enter the energySaving state."; - leaf loadThreshold {type int32;} - container attributes { - uses IntraRatEsActivationCandidateCellsLoadParametersGrp; - } - } - - list intraRatEsDeactivationCandidateCellsLoadParameters { - key loadThreshold; - description "This attributes is relevant, if the cell acts as a candidate cell.This attribute indicates the traffic load threshold and the time duration which is used by distributed ES algorithms to allow a cell to leave the energySaving state."; - leaf loadThreshold {type int32;} - container attributes { - uses IntraRatEsDeactivationCandidateCellsLoadParametersGrp; - } - } - - list esNotAllowedTimePeriod { - key startTimeandendTime; - description "This attribute indicates a list of time periods during which inter-RAT energy saving is not allowed."; - leaf startTimeandendTime {type string;} - container attributes { - uses EsNotAllowedTimePeriodGrp; - } - } - - list interRatEsActivationOriginalCellParameters { - key loadThreshold; - description "This attribute indicates the traffic load threshold and the time duration, which are used by distributed inter-RAT ES algorithms to allow an original cell to enter the energySaving state."; - leaf loadThreshold {type int32;} - container attributes { - uses InterRatEsActivationOriginalCellParametersGrp; - } - } - - list interRatEsActivationCandidateCellParameters { - key loadThreshold; - description "This attribute indicates the traffic load threshold and the time duration, which are used by distributed inter-RAT ES algorithms to allow an original cell to enter the energySaving state."; - leaf loadThreshold {type int32;} - container attributes { - uses InterRatEsActivationCandidateCellParametersGrp; - } - } - - list interRatEsDeactivationCandidateCellParameters { - key loadThreshold; - description "This attribute indicates the traffic load threshold and the time duration which is used by distributed inter-RAT ES algorithms to allow an original cell to leave the energySaving state."; - leaf loadThreshold {type int32;} - container attributes { - uses InterRatEsDeactivationCandidateCellParametersGrp; - } - } - - leaf energySavingState { - description "Specifies the status regarding the energy saving in the cell."; - type enumeration { - enum isNotEnergySaving; - enum isEnergySaving; - } - } - - leaf isProbingCapable { - description " This attribute indicates whether this cell is capable of performing the ES probing procedure."; - type enumeration{ - enum yes; - enum no; - } - } - - } - - grouping IntraRatEsActivationOriginalCellLoadParametersGrp { - description "Represents the the traffic load threshold and the time duration."; - - leaf loadThreshold { - description "This attribute is used by distributed ES algorithms to allow a cell to enter the energySaving state."; - type int32 { range "0..10000"; } - units "1"; - } - - - leaf timeDuration { - description " The time duration indicates how long the load needs to have been below the threshold."; - type int32 { range "0..900"; } - units "1"; - } - } - - grouping IntraRatEsActivationCandidateCellsLoadParametersGrp { - description "Represents the the traffic load threshold and the time duration."; - - leaf loadThreshold { - description "This attribute is used by distributed ES algorithms to allow a cell to enter the energySaving state."; - type int32 { range "0..10000"; } - units "1"; - } - - - leaf timeDuration { - description " The time duration indicates how long the load needs to have been below the threshold."; - type int32 { range "0..900"; } - units "1"; - } - } - - grouping IntraRatEsDeactivationCandidateCellsLoadParametersGrp { - description "Represents the the traffic load threshold and the time duration."; - - leaf loadThreshold { - description "This attribute is used by distributed ES algorithms to allow a cell to enter the energySaving state."; - type int32 { range "0..10000"; } - units "1"; - } - - - leaf timeDuration { - description " The time duration indicates how long the load needs to have been below the threshold."; - type int32 { range "0..900"; } - units "1"; - } - } - - grouping EsNotAllowedTimePeriodGrp { - description "Represents the the traffic load threshold and the time duration."; - - leaf startTimeandendTime { - description "This field indicate valid UTC time."; - type string; - } - - - leaf periodOfDay { - description "This field indicate the period of day."; - type string; - } - - leaf daysOfWeekList { - description "This field indicate the list of weekday."; - type string; - } - - leaf listoftimeperiods { - description "This field indicate the list of time periods."; - type string; - } - - } - - grouping InterRatEsActivationOriginalCellParametersGrp { - description "Represents the the traffic load threshold and the time duration."; - - leaf loadThreshold { - description "The time duration indicates how long the traffic load (both for UL and DL) needs to have been below the threshold."; - type int32 { range "0..10000"; } - units "1"; - } - - - leaf timeDuration { - description " The time duration indicates how long the load needs to have been below the threshold."; - type int32 { range "0..900"; } - units "1"; - } - } - - grouping InterRatEsActivationCandidateCellParametersGrp { - description "Represents the the traffic load threshold and the time duration."; - - leaf loadThreshold { - description "This attribute is used by distributed ES algorithms to allow a cell to enter the energySaving state."; - type int32 { range "0..10000"; } - units "1"; - } - - - leaf timeDuration { - description "The time duration indicates how long the traffic load (both for UL and DL) in the candidate cell needs to have been below the threshold before any original cells which will be provided backup coverage by the candidate cell enters energySaving state."; - type int32 { range "0..900"; } - units "1"; - } - } - - grouping InterRatEsDeactivationCandidateCellParametersGrp { - description "Represents the the traffic load threshold and the time duration."; - - leaf loadThreshold { - description "This attribute is used by distributed ES algorithms to allow a cell to enter the energySaving state."; - type int32 { range "0..10000"; } - units "1"; - } - - - leaf timeDuration { - description "The time duration indicates how long the traffic load (either for UL or DL) in the candidate cell needs to have been above the threshold to wake up one or more original cells which have been provided backup coverage by the candidate cell."; - type int32 { range "0..900"; } - units "1"; - } - } - - - augment "/me3gpp:ManagedElement/gnbcucp3gpp:GNBCUCPFunction/nrcellcu3gpp:NRCellCU" { - if-feature nrcellcu3gpp:DESManagementFunction; - uses DESManagementFunctionGrp; - } - augment "/me3gpp:ManagedElement/gnbcucp3gpp:GNBCUCPFunction" { - if-feature gnbcucp3gpp:DESManagementFunction; - uses DESManagementFunctionGrp; - } - augment "/me3gpp:ManagedElement" { - if-feature me3gpp:DESManagementFunction; - uses DESManagementFunctionGrp; - } - augment "/subnet3gpp:SubNetwork" { - if-feature subnet3gpp:DESManagementFunction; - uses DESManagementFunctionGrp; - } - -} \ No newline at end of file diff --git a/yang-models/_3gpp-nr-nrm-dmrofunction.yang b/yang-models/_3gpp-nr-nrm-dmrofunction.yang deleted file mode 100755 index c657f1587..000000000 --- a/yang-models/_3gpp-nr-nrm-dmrofunction.yang +++ /dev/null @@ -1,70 +0,0 @@ -module _3gpp-nr-nrm-dmrofunction { - yang-version 1.1; - namespace "urn:3gpp:sa5:_3gpp-nr-nrm-dmrofunction"; - prefix "dmrofunction3gpp"; - - import _3gpp-common-subnetwork { prefix subnet3gpp; } - import _3gpp-common-top { prefix top3gpp; } - import _3gpp-nr-nrm-gnbcucpfunction { prefix gnbcucp3gpp; } - import _3gpp-common-managed-element { prefix me3gpp; } - import _3gpp-nr-nrm-nrcellcu { prefix nrcellcu3gpp; } - - - organization "3GPP SA5"; - contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; - description "Defines the YANG mapping of the DMROFunction Information Object Class - (IOC) that is part of the NR Network Resource Model (NRM)."; - reference "3GPP TS 28.541 5G Network Resource Model (NRM)"; - - revision 2020-05-08 { reference S5-203316; } - - - grouping DMROFunctionGrp { - description "Represents the DMROFunction IOC."; - reference "3GPP TS 28.541"; - uses top3gpp:Top_Grp; - - leaf maximumDeviationHoTrigger { - description "This parameter defines the maximum allowed absolute deviation of the Handover Trigger, from the default point of operation."; - type int32 { range "-20..20"; } - units "0.5"; - } - - leaf minimumTimeBetweenHoTriggerChange { - description "This parameter defines the minimum allowed time interval between two Handover Trigger change performed by MRO. This is used to control the stability and convergence of the algorithm."; - type int32 { range "0..604800"; } - units "1"; - } - - leaf tstoreUEcntxt { - description "The timer used for detection of too early HO, too late HO and HO to wrong cell."; - type int32 { range "0..1023"; } - units "100"; - } - - - leaf dmroControl { - description " This attribute determines whether the MRO function is enabled or disabled."; - type boolean; - } - - } - - - augment "/me3gpp:ManagedElement/gnbcucp3gpp:GNBCUCPFunction/nrcellcu3gpp:NRCellCU" { - if-feature nrcellcu3gpp:DMROFunction; - uses DMROFunctionGrp; - } - augment "/me3gpp:ManagedElement/gnbcucp3gpp:GNBCUCPFunction" { - if-feature gnbcucp3gpp:DMROFunction; - uses DMROFunctionGrp; - } - augment "/me3gpp:ManagedElement" { - if-feature me3gpp:DMROFunction; - uses DMROFunctionGrp; - } - augment "/subnet3gpp:SubNetwork" { - if-feature subnet3gpp:DMROFunction; - uses DMROFunctionGrp; - } -} \ No newline at end of file diff --git a/yang-models/_3gpp-nr-nrm-dpciconfigurationfunction.yang b/yang-models/_3gpp-nr-nrm-dpciconfigurationfunction.yang deleted file mode 100755 index 0d25d5076..000000000 --- a/yang-models/_3gpp-nr-nrm-dpciconfigurationfunction.yang +++ /dev/null @@ -1,67 +0,0 @@ -module _3gpp-nr-nrm-dpciconfigurationfunction { - yang-version 1.1; - namespace "urn:3gpp:sa5:_3gpp-nr-nrm-dpciconfigurationfunction"; - prefix "dpciconfigurationfunction3gpp"; - - import _3gpp-common-subnetwork { prefix subnet3gpp; } - import _3gpp-common-top { prefix top3gpp; } - import _3gpp-nr-nrm-nrcelldu { prefix nrcelldu3gpp; } - import _3gpp-nr-nrm-gnbdufunction { prefix gnbdu3gpp; } - import _3gpp-common-managed-element { prefix me3gpp; } - - organization "3GPP SA5"; - contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; - description "Defines the YANG mapping of the DPCIConfigurationFunction Information Object Class - (IOC) that is part of the NR Network Resource Model (NRM)."; - reference "3GPP TS 28.541 5G Network Resource Model (NRM)"; - - revision 2020-05-08 { reference S5-203316; } - - - grouping DPCIConfigurationFunctionGrp { - description "Represents the DPCICONFIGURATIONFunction IOC."; - reference "3GPP TS 28.541"; - uses top3gpp:Top_Grp; - - - list nRPciList { - key NRPci; - description "This holds a list of physical cell identities that can be assigned to the NR cells. This attribute shall be supported if D-SON PCI configuration or domain Centralized SON PCI configuration function is supported."; - leaf NRPci {type int32;} - container attributes { - uses NRPciListGrp; - } - } - - - leaf dPciConfigurationControl { - description " This attribute determines whether the Distributed SON or Domain-Centralized SON PCI configuration Function is enabled or disabled."; - type boolean; - } - - } - - grouping NRPciListGrp { - description "Represents the NR PCI list for the PCI configuration function."; - - leaf NRPci { - description "This attribute determines the NR PCI."; - type int32 { range "0..1007"; } - units "1"; - } - } - - - augment "/me3gpp:ManagedElement/gnbdu3gpp:GNBDUFunction/nrcelldu3gpp:NRCellDU" { - if-feature nrcelldu3gpp:DPCIConfigurationFunction; - uses DPCIConfigurationFunctionGrp; - } - augment "/me3gpp:ManagedElement" { - if-feature me3gpp:DPCIConfigurationFunction; - uses DPCIConfigurationFunctionGrp; - } - augment "/subnet3gpp:SubNetwork" { - if-feature subnet3gpp:DPCIConfigurationFunction; - uses DPCIConfigurationFunctionGrp; - } -} \ No newline at end of file diff --git a/yang-models/_3gpp-nr-nrm-drachoptimizationfunction.yang b/yang-models/_3gpp-nr-nrm-drachoptimizationfunction.yang deleted file mode 100755 index 8135d1409..000000000 --- a/yang-models/_3gpp-nr-nrm-drachoptimizationfunction.yang +++ /dev/null @@ -1,120 +0,0 @@ -module _3gpp-nr-nrm-drachoptimizationfunction { - yang-version 1.1; - namespace "urn:3gpp:sa5:_3gpp-nr-nrm-drachoptimizationfunction"; - prefix "drachoptimizationfunction3gpp"; - - import _3gpp-common-subnetwork { prefix subnet3gpp; } - import _3gpp-common-top { prefix top3gpp; } - import _3gpp-nr-nrm-gnbcucpfunction { prefix gnbcucp3gpp; } - import _3gpp-common-managed-element { prefix me3gpp; } - import _3gpp-nr-nrm-nrcellcu { prefix nrcellcu3gpp; } - - - organization "3GPP SA5"; - contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; - description "Defines the YANG mapping of the DRACHOptimizationFunction Information Object Class - (IOC) that is part of the NR Network Resource Model (NRM)."; - reference "3GPP TS 28.541 5G Network Resource Model (NRM)"; - - revision 2020-05-08 { reference S5-203316; } - - - grouping DRACHOptimizationFunctionGrp { - description "Represents the DRACHOptimizationFunction IOC."; - reference "3GPP TS 28.541"; - uses top3gpp:Top_Grp; - - list ueAccProbilityDistPerSSB { - key targetProbability; - description "This is a list of target Access Probability (APn) for the RACH optimization function."; - leaf targetProbability {type TargetProbability;} - container attributes { - uses UeAccProbilityDistPerSSBGrp; - } - } - - list ueAccDelayProbilityDistPerSSB { - key targetProbability; - description "This is a list of target Access Delay probability (ADP) for the RACH optimization function."; - leaf targetProbability {type TargetProbability;} - container attributes { - uses UeAccDelayProbilityDistPerSSBGrp; - } - } - - leaf drachOptimizationControl { - description "This attribute determines whether the RACH Optimization function is enabled or disabled."; - type boolean; - } - } - typedef TargetProbability { - type enumeration { - enum 25; - enum 50; - enum 75; - enum 90; - } - } - - typedef Numberofpreamblessent { - type int32 { range "1..200"; } - units "1"; - } - - typedef Accessdelay { - type int32 { range "10..560"; } - units "1"; - } - - - grouping UeAccProbilityDistPerSSBGrp { - description "Represents the target Access Probability (APn) for the RACH optimization function."; - - leaf targetProbability { - description "This attribute determines the target Probability."; - mandatory true; - type TargetProbability; - } - - - leaf numberofpreamblessent { - description "This attribute determines the number of preambles sent."; - mandatory true; - type Numberofpreamblessent; - } - } - - grouping UeAccDelayProbilityDistPerSSBGrp { - description "Represents the target Access Delay probability (ADP) for the RACH optimization function."; - - leaf targetProbability { - description "This attribute determines the target Probability."; - mandatory true; - type TargetProbability; - } - - - leaf accessdelay { - description "This attribute determines the access delay."; - mandatory true; - type Accessdelay; - } - } - - augment "/me3gpp:ManagedElement/gnbcucp3gpp:GNBCUCPFunction/nrcellcu3gpp:NRCellCU" { - if-feature nrcellcu3gpp:DRACHOptimizationFunction; - uses DRACHOptimizationFunctionGrp; - } - augment "/me3gpp:ManagedElement/gnbcucp3gpp:GNBCUCPFunction" { - if-feature gnbcucp3gpp:DRACHOptimizationFunction; - uses DRACHOptimizationFunctionGrp; - } - augment "/me3gpp:ManagedElement" { - if-feature me3gpp:DRACHOptimizationFunction; - uses DRACHOptimizationFunctionGrp; - } - augment "/subnet3gpp:SubNetwork" { - if-feature nrcellcu3gpp:DRACHOptimizationFunction; - uses DRACHOptimizationFunctionGrp; - } -} \ No newline at end of file diff --git a/yang-models/_3gpp-nr-nrm-ep.yang b/yang-models/_3gpp-nr-nrm-ep.yang deleted file mode 100755 index 5f5187b18..000000000 --- a/yang-models/_3gpp-nr-nrm-ep.yang +++ /dev/null @@ -1,239 +0,0 @@ -module _3gpp-nr-nrm-ep { - yang-version 1.1; - namespace "urn:3gpp:sa5:_3gpp-nr-nrm-ep"; - prefix "ep3gpp"; - - import _3gpp-common-ep-rp { prefix eprp3gpp; } - import _3gpp-common-managed-element { prefix me3gpp; } - import _3gpp-common-top { prefix top3gpp; } - import _3gpp-nr-nrm-gnbcucpfunction { prefix gnbcucp3gpp; } - import _3gpp-nr-nrm-gnbcuupfunction { prefix gnbcuup3gpp; } - import _3gpp-nr-nrm-gnbdufunction { prefix gnbdu3gpp; } - - organization "3GPP SA5"; - description "Defines the YANG mapping of the NR related endpoint - Information Object Classes (IOCs) that are part of the NR Network - Resource Model (NRM)."; - reference "3GPP TS 28.541 5G Network Resource Model (NRM)"; - - revision 2020-03-02 { reference S5-201191"; } - revision 2019-06-17 { - description "Initial revision"; - } - - grouping EP_E1Grp { - description "Represents the EP_E1 IOC."; - reference "3GPP TS 28.541, 3GPP TS 38.401"; - uses eprp3gpp:EP_Common; - } - - grouping EP_F1CGrp { - description "Represents the EP_F1C IOC."; - reference "3GPP TS 28.541, 3GPP TS 38.470"; - uses eprp3gpp:EP_Common; - } - - grouping EP_F1UGrp { - description "Represents the EP_F1U IOC."; - reference "3GPP TS 28.541, 3GPP TS 38.470"; - uses eprp3gpp:EP_Common; - } - - grouping EP_XnCGrp { - description "Represents the EP_XnC IOC."; - reference "3GPP TS 28.541, 3GPP TS 38.420"; - uses eprp3gpp:EP_Common; - } - - grouping EP_XnUGrp { - description "Represents the EP_XnU IOC."; - reference "3GPP TS 28.541, 3GPP TS 38.420"; - uses eprp3gpp:EP_Common; - } - - grouping EP_NgCGrp { - description "Represents the EP_NgC IOC."; - reference "3GPP TS 28.541, 3GPP TS 38.470"; - uses eprp3gpp:EP_Common; - } - - grouping EP_NgUGrp { - description "Represents the EP_NgU IOC."; - reference "3GPP TS 28.541, 3GPP TS 38.470"; - uses eprp3gpp:EP_Common; - } - - grouping EP_X2CGrp { - description "Represents the EP_X2C IOC."; - reference "3GPP TS 28.541, 3GPP TS 36.423"; - uses eprp3gpp:EP_Common; - } - - grouping EP_X2UGrp { - description "Represents the EP_X2U IOC."; - reference "3GPP TS 28.541, 3GPP TS 36.425"; - uses eprp3gpp:EP_Common; - } - - grouping EP_S1UGrp { - description "Represents the EP_S1U IOC."; - reference "3GPP TS 28.541, 3GPP TS 36.410"; - uses eprp3gpp:EP_Common; - } - - augment "/me3gpp:ManagedElement/gnbcucp3gpp:GNBCUCPFunction" { - - list EP_E1 { - description "Represents the local end point of the logical link, - supporting E1 interface between gNB-CU-CP and gNB-CU-UP."; - reference "3GPP TS 28.541, 3GPP TS 38.401"; - key id; - uses top3gpp:Top_Grp; - container attributes { - uses EP_E1Grp; - } - } - - list EP_F1C { - description "Represents the local end point of the control plane - interface (F1-C) between the DU and CU or CU-CP."; - reference "3GPP TS 28.541, 3GPP TS 38.470"; - key id; - uses top3gpp:Top_Grp; - container attributes { - uses EP_F1CGrp; - } - } - - list EP_NgC { - description "Represents the local end point of the control plane - interface (NG-C) between the gNB and NG-Core entity."; - reference "3GPP TS 28.541, 3GPP TS 38.470"; - key id; - uses top3gpp:Top_Grp; - container attributes { - uses EP_NgCGrp; - } - } - - list EP_XnC { - description "Represents the local gNB node end point of the logical - link, supporting Xn application protocols, to a neighbour NG-RAN node - (including gNB and ng-eNB). The Xn Application PDUs are carried over - SCTP/IP/Data link layer/Physical layer stack."; - reference "3GPP TS 28.541, 3GPP TS 38.420 subclause 7"; - key id; - uses top3gpp:Top_Grp; - container attributes { - uses EP_XnCGrp; - } - } - - list EP_X2C { - description "Represents the local end point of the logical link, - supporting X2-C application protocols used in EN-DC, to a neighbour - eNB or en-gNB node."; - reference "3GPP TS 28.541, 3GPP TS 36.423"; - key id; - uses top3gpp:Top_Grp; - container attributes { - uses EP_X2CGrp; - } - } - } - - augment "/me3gpp:ManagedElement/gnbcuup3gpp:GNBCUUPFunction" { - - list EP_E1 { - description "Represents the local end point of the logical link, - supporting E1 interface between gNB-CU-CP and gNB-CU-UP."; - reference "3GPP TS 28.541, 3GPP TS 38.401"; - key id; - uses top3gpp:Top_Grp; - container attributes { - uses EP_E1Grp; - } - } - - list EP_F1U { - description "Represents the local end point of the user plane - interface (F1-U) between the DU and CU or CU-UP."; - reference "3GPP TS 28.541, 3GPP TS 38.470"; - key id; - uses top3gpp:Top_Grp; - container attributes { - uses EP_F1UGrp; - } - } - - list EP_NgU { - description "Represents the local end point of the NG user plane - (NG-U) interface between the gNB and the UPGW."; - reference "3GPP TS 28.541, 3GPP TS 38.470"; - key id; - uses top3gpp:Top_Grp; - container attributes { - uses EP_NgUGrp; - } - } - - list EP_XnU { - description "Represents the one end-point of a logical link supporting - the Xn user plane (Xn-U) interface. The Xn-U interface provides - non-guaranteed delivery of user plane PDUs between two NG-RAN nodes."; - reference "3GPP TS 28.541, 3GPP TS 38.420"; - key id; - uses top3gpp:Top_Grp; - container attributes { - uses EP_XnUGrp; - } - } - - list EP_X2U { - description "Represents the local end-point of a logical link supporting - the X2 user plane (X2-U) interface used in EN-DC."; - reference "3GPP TS 28.541, 3GPP TS 36.425"; - key id; - uses top3gpp:Top_Grp; - container attributes { - uses EP_X2UGrp; - } - } - - list EP_S1U { - description "Represents the local end point of the logical link, - supporting S1-U interface towards a S-GW node."; - reference "3GPP TS 28.541, 3GPP TS 36.410"; - key id; - uses top3gpp:Top_Grp; - container attributes { - uses EP_S1UGrp; - } - } - } - - augment "/me3gpp:ManagedElement/gnbdu3gpp:GNBDUFunction" { - - list EP_F1C { - description "Represents the local end point of the control plane - interface (F1-C) between the DU and CU or CU-CP."; - reference "3GPP TS 28.541, 3GPP TS 38.470"; - key id; - uses top3gpp:Top_Grp; - container attributes { - uses EP_F1CGrp; - } - } - - list EP_F1U { - description "Represents the local end point of the user plane - interface (F1-U) between the DU and CU or CU-UP."; - reference "3GPP TS 28.541, 3GPP TS 38.470"; - key id; - uses top3gpp:Top_Grp; - container attributes { - uses EP_F1UGrp; - } - } - } -} \ No newline at end of file diff --git a/yang-models/_3gpp-nr-nrm-eutrancellrelation.yang b/yang-models/_3gpp-nr-nrm-eutrancellrelation.yang deleted file mode 100755 index 4eee4a401..000000000 --- a/yang-models/_3gpp-nr-nrm-eutrancellrelation.yang +++ /dev/null @@ -1,160 +0,0 @@ -module _3gpp-nr-nrm-eutrancellrelation { - yang-version 1.1; - namespace "urn:3gpp:sa5:_3gpp-nr-nrm-eutrancellrelation"; - prefix "eutrancellrel3gpp"; - - import _3gpp-common-yang-types { prefix types3gpp; } - import _3gpp-common-managed-function { prefix mf3gpp; } - import _3gpp-common-managed-element { prefix me3gpp; } - import _3gpp-nr-nrm-gnbcucpfunction { prefix gnbcucp3gpp; } - import _3gpp-nr-nrm-nrcellcu { prefix nrcellcu3gpp; } - import _3gpp-common-top { prefix top3gpp; } - - organization "3GPP SA5"; - description "Defines the YANG mapping of the EUtranCellRelation Information - Object Class (IOC) that is part of the NR Network Resource Model (NRM)."; - reference "3GPP TS 28.541 5G Network Resource Model (NRM)"; - - revision 2019-10-28 { reference S5-193518 ; } - revision 2019-06-17 { - description "Initial revision"; - } - - typedef ActionAllowed { - type enumeration { - enum YES; - enum NO; - } - } - - typedef EnergySavingCoverage { - type enumeration { - enum YES; - enum NO; - enum PARTIAL; - } - } - - grouping EUtranCellRelationGrp { - description "Represents the EUtranCellRelation IOC."; - reference "3GPP TS 28.541, EUtranRelation in 3GPP TS 28.658"; - uses mf3gpp:ManagedFunctionGrp; - - leaf tCI { - description "Target Cell Identifier. Consists of E-UTRAN Cell Global - Identifier (ECGI) and Physical Cell Identifier (PCI) of the target - cell. Identifies the target cell from the perspective of the parent - cell instance."; - mandatory true; - type uint64; - } - - leaf isRemoveAllowed { - description "Indicates if the subject EUtranCellRelation can be removed - (deleted) or not. If YES, the subject EUtranCellRelation instance can - be removed (deleted). If NO, the subject EUtranCellRelation instance - shall not be removed (deleted) by any entity but an IRPManager."; - mandatory true; - type ActionAllowed; - } - - leaf isHOAllowed { - description "Indicates if handover is allowed or prohibited. If YES, - handover is allowed from source cell to target cell. Source cell is - represented by the parent cell instance. Target cell is the adjacent - cell referenced by this EUtranCellRelation instance. If NO, handover - shall not be allowed."; - mandatory true; - type ActionAllowed; - } - leaf isENDCAllowed { - description "Indicates if EN-DC is allowed or prohibited. If TRUE, - the target cell is allowed to be used for EN-DC. The target cell is - referenced by the NRCellRelation that contains this isENDCAllowed. - If FALSE, EN-DC shall not be allowed."; - mandatory true; - type ActionAllowed; - } - - - leaf isICICInformationSendAllowed { - description "Indicates if ICIC (Inter Cell Interference Coordination) - load information message sending is allowed or prohibited. If YES, - ICIC load information message sending is allowed from source cell to - target cell. Source cell is represented by the parent cell instance. - Target cell is the adjacent cell referenced by this EUtranCellRelation - instance. If NO, ICIC load information message sending shall not be - allowed."; - reference "3GPP TS 36.423"; - mandatory true; - type ActionAllowed; - } - - leaf isLBAllowed { - description "Indicates if load balancing is allowed or prohibited from - source cell to target cell. If YES, load balancing is allowed from - source cell to target cell. Source cell is represented by the parent - cell instance. Target cell is the adjacent cell referenced by this - EUtranCellRelation instance. If NO, load balancing shall be prohibited - from source cell to target cell."; - mandatory true; - type ActionAllowed; - } - - leaf isESCoveredBy { - description "Indicates whether the adjacent cell according to this - planning provides no, partial or full coverage for the parent cell - instance. Adjacent cells with this attribute equal to YES are - recommended to be considered as candidate cells to take over the - coverage when the original cell is about to be transferred to energy - saving state. The entirety of adjacent cells with this property equal - to PARTIAL are recommended to be considered as entirety of candidate - cells to take over the coverage when the original cell is about to be - transferred to energy saving state."; - mandatory true; - type EnergySavingCoverage; - } - - leaf qOffset { - description "Offset applicable to a specific neighbouring cell used for - evaluating the cell as a candidate for cell re-selection. Corresponds - to parameter q-OffsetCell broadcast in SIB4 for intra-frequency cells - and in SIB5 for inter-frequency cells. Used for Mobility Robustness - Optimization."; - reference "3GPP TS 36.331"; - mandatory true; - type types3gpp:QOffsetRange; - } - - leaf cellIndividualOffset { - description "Offset applicable to a neighbouring cell. It is used for - evaluating the neighbouring cell for handover in connected mode. Used - by the HandOver parameter Optimization (HOO) function or Load - Balancing Optimization (LBO) function."; - reference "3GPP TS 36.331"; - config false; - type types3gpp:QOffsetRange; - } - - leaf adjacentCell { - description "Reference to an EUtranCellFDD/TDD or - ExternalEUtranCellFDD/TDD instance."; - mandatory true; - type types3gpp:DistinguishedName; - } - } - - augment /me3gpp:ManagedElement/gnbcucp3gpp:GNBCUCPFunction/nrcellcu3gpp:NRCellCU { - - list EUtranCellRelation { - description "Represents a relation between an NR cell and an E-UTRAN cell."; - reference "3GPP TS 28.541"; - key id; - uses top3gpp:Top_Grp; - container attributes { - uses EUtranCellRelationGrp; - } - uses mf3gpp:ManagedFunctionContainedClasses; - } - } -} \ No newline at end of file diff --git a/yang-models/_3gpp-nr-nrm-eutranetwork.yang b/yang-models/_3gpp-nr-nrm-eutranetwork.yang deleted file mode 100755 index 068bc246c..000000000 --- a/yang-models/_3gpp-nr-nrm-eutranetwork.yang +++ /dev/null @@ -1,61 +0,0 @@ -module _3gpp-nr-nrm-eutranetwork { - yang-version 1.1; - namespace "urn:3gpp:sa5:_3gpp-nr-nrm-eutranetwork"; - prefix "eutranet3gpp"; - - import _3gpp-common-subnetwork { prefix subnet3gpp; } - import _3gpp-common-top { prefix top3gpp; } - - organization "3GPP SA5"; - description "Defines the YANG mapping of the EUtraNetwork Information Object - Class (IOC) that is part of the NR Network Resource Model (NRM)."; - reference "3GPP TS 28.541 5G Network Resource Model (NRM)"; - - revision 2019-06-17 { - description "Initial revision"; - } - - feature ExternalsUnderEUtraNetwork { - description "Classes representing external entities like EUtranFrequency, - ExternalENBFunction are contained under a EUtraNetwork list/class."; - } - - grouping EUtraNetworkGrp { - description "Represents the EUtraNetwork IOC."; - reference "3GPP TS 28.541"; - uses subnet3gpp:SubNetworkGrp; - } - - list EUtraNetwork { - description "A subnetwork containing gNB external E-UTRAN entities."; - reference "3GPP TS 28.541"; - key id; - uses top3gpp:Top_Grp; - container attributes { - uses EUtraNetworkGrp; - leaf-list parents { - description "Reference to all containg EUtraNetwork instances - in strict order from the root EUtraNetwork down to the immediate - parent EUtraNetwork. - If EUtraNetworks form a containment hierarchy this is - modeled using references between the child EUtraNetwork and the parent - EUtraNetworks. - This reference MUST NOT be present for the top level EUtraNetwork and - MUST be present for other EUtraNetworks."; - type leafref { - path "../../../EUtraNetwork/id"; - } - } - - leaf-list containedChildren{ - description "Reference to all directly contained EUtraNetwork instances. - If EUtraNetworks form a containment hierarchy this is - modeled using references between the child EUtraNetwork and the parent - EUtraNetwork."; - type leafref { - path "../../../EUtraNetwork/id"; - } - } - } - } -} \ No newline at end of file diff --git a/yang-models/_3gpp-nr-nrm-eutranfreqrelation.yang b/yang-models/_3gpp-nr-nrm-eutranfreqrelation.yang deleted file mode 100755 index fce8aa7ff..000000000 --- a/yang-models/_3gpp-nr-nrm-eutranfreqrelation.yang +++ /dev/null @@ -1,208 +0,0 @@ -module _3gpp-nr-nrm-eutranfreqrelation { - yang-version 1.1; - namespace "urn:3gpp:sa5:_3gpp-nr-nrm-eutranfreqrelation"; - prefix "eutranfreqrel3gpp"; - - import _3gpp-common-yang-types { prefix types3gpp; } - import _3gpp-common-managed-function { prefix mf3gpp; } - import _3gpp-common-managed-element { prefix me3gpp; } - import _3gpp-common-top { prefix top3gpp; } - import _3gpp-nr-nrm-gnbcucpfunction { prefix gnbcucp3gpp; } - import _3gpp-nr-nrm-nrcellcu { prefix nrcellcu3gpp; } - - organization "3GPP SA5"; - description "Defines the YANG mapping of the EUtranFreqRelation Information - Object Class (IOC) that is part of the NR Network Resource Model (NRM)."; - reference "3GPP TS 28.541 5G Network Resource Model (NRM)"; - - revision 2019-10-28 { reference S5-193518 ; } - revision 2019-06-17 { - description "Initial revision"; - } - - grouping EUtranFreqRelationGrp { - description "Represents the EUtranFreqRelation IOC."; - reference "3GPP TS 28.541"; - uses mf3gpp:ManagedFunctionGrp; - - leaf cellIndividualOffset { - description "Offset applicable to a neighbouring cell. Used for - evaluating the neighbouring cell for handover in connected mode. - Used by the HandOver parameter Optimization (HOO) function or - Load Balancing Optimization (LBO) function."; - reference "cellIndividualOffset in MeasObjectEUTRA in 3GPP TS 38.331"; - default 0; - type types3gpp:QOffsetRange; - } - - leaf-list blackListEntry { - description "A list of Physical Cell Identities (PCIs) that are - blacklisted in E-UTRAN measurements."; - reference "3GPP TS 38.331"; - min-elements 0; - type uint16 { range "0..1007"; } - } - - leaf-list blackListEntryIdleMode { - description "A list of Physical Cell Identities (PCIs) that are - blacklisted in SIB4 and SIB5."; - min-elements 0; - type uint16 { range "0..1007"; } - } - - leaf cellReselectionPriority { - description "The absolute priority of the carrier frequency used by the - cell reselection procedure. Value 0 means lowest priority. The value - must not already used by other RAT, i.e. equal priorities between RATs - are not supported. The UE behaviour when no value is entered is - specified in subclause 5.2.4.1 of 3GPP TS 38.304."; - reference "CellReselectionPriority in 3GPP TS 38.331, priority in - 3GPP TS 38.304"; - mandatory true; - type int32 { range "0..7"; } - } - - leaf cellReselectionSubPriority { - description "Indicates a fractional value to be added to the value of - cellReselectionPriority to obtain the absolute priority of the - concerned carrier frequency for E-UTRA and NR."; - reference "3GPP TS 38.331"; - type uint8 { range "2 | 4 | 6 | 8"; } - units "0.1"; - } - - leaf pMax { - description "Used for calculation of the parameter Pcompensation - (defined in 3GPP TS 38.304), at cell reselection to a cell."; - reference "PEMAX in 3GPP TS 38.101-1"; - mandatory true; - type int32 { range "-30..33"; } - units dBm; - } - - leaf qOffsetFreq { - description "The frequency specific offset applied when evaluating - candidates for cell reselection."; - type int32; - default 0; - } - - leaf qQualMin { - description "Indicates the minimum required quality level in the cell. - Value 0 means that it is not sent and UE applies in such case the - (default) value of negative infinity for Qqualmin. Sent in SIB3 or - SIB5."; - reference "qQualMin in TS 38.304"; - mandatory true; - type int32 { range "-34..-3 | 0"; } - units dB; - } - - leaf qRxLevMin { - description "Indicates the required minimum received Reference Symbol - Received Power (RSRP) level in the (E-UTRA) frequency for cell - reselection. Broadcast in SIB3 or SIB5, depending on whether the - related frequency is intra- or inter-frequency. Resolution is 2."; - reference "Qrxlevmin in 3GPP TS 38.304"; - mandatory true; - type int32 { range "-140..-44"; } - units dBm; - } - - leaf threshXHighP { - description "Specifies the Srxlev threshold used by the UE when - reselecting towards a higher priority RAT/frequency than the current - serving frequency. Each frequency of NR and E-UTRAN might have a - specific threshold. Resolution is 2."; - reference "ThreshX, HighP in 3GPP TS 38.304"; - mandatory true; - type int32 { range "0..62"; } - units dB; - } - - leaf threshXHighQ { - description "Specifies the Squal threshold used by the UE when - reselecting towards a higher priority RAT/frequency than the current - serving frequency. Each frequency of NR and E-UTRAN might have a - specific threshold."; - reference "ThreshX, HighQ in 3GPP TS 38.304"; - mandatory true; - type int32 { range 0..31; } - units dB; - } - - leaf threshXLowP { - description "Specifies the Srxlev threshold used by the UE when - reselecting towards a lower priority RAT/frequency than the current - serving frequency. Each frequency of NR and E-UTRAN might have a - specific threshold. Resolution is 2."; - reference "ThreshX, LowP in 3GPP TS 38.304"; - mandatory true; - type int32 { range "0..62"; } - units dB; - } - - leaf threshXLowQ { - description "Specifies the Squal threshold used by the UE when - reselecting towards a lower priority RAT/frequency than the current - serving frequency. Each frequency of NR and E-UTRAN might have a - specific threshold."; - reference "ThreshX, LowQ in 3GPP TS 38.304"; - mandatory false; - type int32 { range "0..31"; } - units dB; - } - - leaf tReselectionEutra { - description "Cell reselection timer for intra frequency E-UTRA cell - reselection. May be used for Mobility Robustness Optimization."; - reference "t-ReselectionEUTRA in 3GPP TS 36.331 and in 3GPP TS 23.207"; - mandatory true; - type uint8 { range "0..7"; } - units s; - } - - leaf tReselectionEutraSfHigh { - description "The attribute tReselectionEutra (parameter TreselectionEUTRA - in 3GPP TS 38.304) multiplied with this scaling factor if the UE is in - high mobility state."; - reference "Speed dependent ScalingFactor for TreselectionEUTRA for high - mobility state in 3GPP TS 38.304"; - mandatory true; - type uint8 { range "25 | 50 | 75 | 100"; } - units %; - } - - leaf tReselectionEutraSfMedium { - description "The attribute tReselectionEutra (parameter TreselectionEUTRA - in 3GPP TS 38.304) multiplied with this scaling factor if the UE is in - medium mobility state."; - reference "Speed dependent ScalingFactor for TreselectionEUTRA for medium - mobility state in 3GPP TS 38.304"; - mandatory true; - type uint8 { range "25 | 50 | 75 | 100"; } - units %; - } - - leaf eUtranFrequencyRef { - description "Reference to a corresponding EUtranFrequency instance."; - mandatory true; - type types3gpp:DistinguishedName; - } - } - - augment /me3gpp:ManagedElement/gnbcucp3gpp:GNBCUCPFunction/nrcellcu3gpp:NRCellCU { - - list EUtranFreqRelation { - description "Represents a frequency relation between an NR cell and an - E-UTRAN cell."; - reference "3GPP TS 28.541"; - key id; - uses top3gpp:Top_Grp; - container attributes { - uses EUtranFreqRelationGrp; - } - uses mf3gpp:ManagedFunctionContainedClasses; - } - } -} \ No newline at end of file diff --git a/yang-models/_3gpp-nr-nrm-eutranfrequency.yang b/yang-models/_3gpp-nr-nrm-eutranfrequency.yang deleted file mode 100755 index 2d8a4534a..000000000 --- a/yang-models/_3gpp-nr-nrm-eutranfrequency.yang +++ /dev/null @@ -1,64 +0,0 @@ -module _3gpp-nr-nrm-eutranfrequency { - yang-version 1.1; - namespace "urn:3gpp:sa5:_3gpp-nr-nrm-eutranfrequency"; - prefix "eutraneteutranfreq3gpp"; - - import _3gpp-common-managed-function { prefix mf3gpp; } - import _3gpp-nr-nrm-eutranetwork { prefix eutranet3gpp; } - import _3gpp-common-subnetwork { prefix subnet3gpp; } - import _3gpp-common-top { prefix top3gpp; } - - organization "3GPP SA5"; - description "Defines the YANG mapping of the EUtranFrequency Information - Object Class (IOC), that is part of the NR Network Resource Model (NRM)."; - reference "3GPP TS 28.541 5G Network Resource Model (NRM), - 3GPP TS 28.658 (E-UTRAN) Network Resource Model (NRM)"; - - revision 2019-10-28 { reference S5-193518 ; } - revision 2019-06-17 { - description "Initial revision"; - } - - grouping EUtranFrequencyGrp { - description "Represents the EUtranFrequency IOC."; - reference "3GPP TS 28.541"; - uses mf3gpp:ManagedFunctionGrp; - - leaf earfcnDL { - description "Specifies the channel number for the central DL frequency."; - reference "3GPP TS 36.101"; - mandatory true; - type uint32 { range "0..262143"; } - } - - leaf-list multiBandInfoListEutra { - description "List of additional frequency bands the frequency belongs to."; - config false; - min-elements 0; - type uint16 { range "1..256"; } - } - } - - grouping EUtranFrequencyWrapper { - list EUtranFrequency { - description "Represents certain E-UTRAN frequency properties."; - reference "3GPP TS 28.658"; - key id; - uses top3gpp:Top_Grp; - container attributes { - uses EUtranFrequencyGrp; - } - uses mf3gpp:ManagedFunctionContainedClasses; - } - } - - augment "/subnet3gpp:SubNetwork" { - if-feature subnet3gpp:ExternalsUnderSubNetwork ; - uses EUtranFrequencyWrapper ; - } - - augment "/eutranet3gpp:EUtraNetwork" { - if-feature eutranet3gpp:ExternalsUnderEUtraNetwork; - uses EUtranFrequencyWrapper ; - } -} \ No newline at end of file diff --git a/yang-models/_3gpp-nr-nrm-externalamffunction.yang b/yang-models/_3gpp-nr-nrm-externalamffunction.yang deleted file mode 100755 index bfd30c58a..000000000 --- a/yang-models/_3gpp-nr-nrm-externalamffunction.yang +++ /dev/null @@ -1,69 +0,0 @@ -module _3gpp-nr-nrm-externalamffunction { - yang-version 1.1; - namespace "urn:3gpp:sa5:_3gpp-nr-nrm-externalamffunction"; - prefix "extamf3gpp"; - - import _3gpp-common-managed-function { prefix mf3gpp; } - import _3gpp-common-subnetwork { prefix subnet3gpp; } - import _3gpp-nr-nrm-nrnetwork { prefix nrnet3gpp; } - import _3gpp-common-top { prefix top3gpp; } - import _3gpp-common-yang-types { prefix types3gpp; } - - organization "3GPP SA5"; - description "Defines the YANG mapping of the ExternalAMFFunction Information - Object Class (IOC) that is part of the NR Network Resource Model (NRM)."; - reference "3GPP TS 28.541 5G Network Resource Model (NRM)"; - - revision 2019-10-28 { reference S5-193518 ; } - revision 2019-06-17 { - description "Initial revision"; - } - - grouping ExternalAMFFunctionGrp { - description "Represents the ExternalAMFFunction IOC."; - reference "3GPP TS 28.541"; - uses mf3gpp:ManagedFunctionGrp; - - list pLMNIdList { - description "List of at most six entries of PLMN Identifiers, but at least - one (the primary PLMN Id). - The PLMN Identifier is composed of a Mobile Country Code (MCC) and a - Mobile Network Code (MNC)."; - min-elements 1; - max-elements 6; - key "mcc mnc"; - uses types3gpp:PLMNId; - } - - container aMFIdentifier { - presence true; - description "An AMF identifier, comprising an AMF Region ID, an AMF Set ID and an AMF Pointer."; - uses types3gpp:AmfIdentifier; - } - } - - grouping ExternalAMFFunctionWrapper { - list ExternalAMFFunction { - description "Represents the properties, known by the management - function, of a AMFFunction managed by another management - function."; - reference "3GPP TS 28.541"; - key id; - uses top3gpp:Top_Grp; - container attributes { - uses ExternalAMFFunctionGrp; - } - uses mf3gpp:ManagedFunctionContainedClasses; - } - } - - augment "/subnet3gpp:SubNetwork" { - if-feature subnet3gpp:ExternalsUnderSubNetwork ; - uses ExternalAMFFunctionWrapper; - } - - augment "/nrnet3gpp:NRNetwork" { - if-feature nrnet3gpp:ExternalsUnderNRNetwork; - uses ExternalAMFFunctionWrapper; - } -} \ No newline at end of file diff --git a/yang-models/_3gpp-nr-nrm-externalenbfunction.yang b/yang-models/_3gpp-nr-nrm-externalenbfunction.yang deleted file mode 100755 index 7dab2e970..000000000 --- a/yang-models/_3gpp-nr-nrm-externalenbfunction.yang +++ /dev/null @@ -1,60 +0,0 @@ -module _3gpp-nr-nrm-externalenbfunction { - yang-version 1.1; - namespace "urn:3gpp:sa5:_3gpp-nr-nrm-externalenbfunction"; - prefix "extenb3gpp"; - - import _3gpp-common-managed-function { prefix mf3gpp; } - import _3gpp-nr-nrm-eutranetwork { prefix eutranet3gpp; } - import _3gpp-common-subnetwork { prefix subnet3gpp; } - import _3gpp-common-top { prefix top3gpp; } - - organization "3GPP SA5"; - description "Defines the YANG mapping of the ExternalENBFunction - Information Object Class (IOC) that is part of the NR Network Resource - Model (NRM)."; - reference "3GPP TS 28.541 5G Network Resource Model (NRM), - 3GPP TS 28.658 (E-UTRAN) Network Resource Model (NRM)"; - - revision 2019-10-28 { reference S5-193518 ; } - revision 2019-06-17 { - description "Initial revision"; - } - - grouping ExternalENBFunctionGrp { - description "Represets the ExternalENBFunction IOC."; - reference "3GPP TS 28.658"; - uses mf3gpp:ManagedFunctionGrp; - - leaf eNBId { - description "Unambiguously identifies an eNodeB within a PLMN."; - reference "3GPP TS 36.413, 3GPP TS 36.300"; - mandatory true; - type int32 { range "0..268435455"; } // Representing 28 bit eNB ID. - // 18, 20 and 21 bit eNB IDs also - // allowed. - } - } - - grouping ExternalENBFunctionWrapper { - list ExternalENBFunction { - description "Represents an external eNB functionality."; - reference "3GPP TS 28.658"; - key id; - uses top3gpp:Top_Grp; - container attributes { - uses ExternalENBFunctionGrp; - } - uses mf3gpp:ManagedFunctionContainedClasses; - } - } - - augment "/subnet3gpp:SubNetwork" { - if-feature subnet3gpp:ExternalsUnderSubNetwork ; - uses ExternalENBFunctionWrapper; - } - - augment "/eutranet3gpp:EUtraNetwork" { - if-feature eutranet3gpp:ExternalsUnderEUtraNetwork; - uses ExternalENBFunctionWrapper; - } -} \ No newline at end of file diff --git a/yang-models/_3gpp-nr-nrm-externaleutrancell.yang b/yang-models/_3gpp-nr-nrm-externaleutrancell.yang deleted file mode 100755 index d3dd88802..000000000 --- a/yang-models/_3gpp-nr-nrm-externaleutrancell.yang +++ /dev/null @@ -1,153 +0,0 @@ -module _3gpp-nr-nrm-externaleutrancell { - yang-version 1.1; - namespace "urn:3gpp:sa5:_3gpp-nr-nrm-externaleutrancell"; - prefix "exteutrancell3gpp"; - - import _3gpp-common-yang-types { prefix types3gpp; } - import _3gpp-common-managed-function { prefix mf3gpp; } - import _3gpp-common-subnetwork { prefix subnet3gpp; } - import _3gpp-nr-nrm-eutranetwork { prefix eutranet3gpp; } - import _3gpp-nr-nrm-externalenbfunction { prefix extenb3gpp; } - import _3gpp-common-top { prefix top3gpp; } - - organization "3GPP SA5"; - description "Defines the YANG mapping of the ExternalEUtranCellFDD and - ExternalEUtranCellTDD Information Object Classes (IOCs) that are part - of the NR Network Resource Model (NRM)."; - reference "3GPP TS 28.541 5G Network Resource Model (NRM), - 3GPP TS 28.658 (E-UTRAN) Network Resource Model (NRM)"; - - revision 2019-10-28 { reference S5-193518 ; } - revision 2019-06-17 { - description "Initial revision"; - } - - grouping ExternalEUtranGenericCellGrp { - description "Represents the ExternalEUtranGenericCell IOC."; - reference "3GPP TS 28.658"; - uses mf3gpp:ManagedFunctionGrp; - - leaf pci { - description "The Physical Cell Identity (PCI) of the cell (for - NM-Centralized, EM-Centralized and Distributed PCI assignment cases). - In the case of NM-Centralized PCI assignment, see 3GPP TS 36.300."; - reference "3GPP TS 36.211"; - mandatory true; - type int32 { range "0..503"; } - } - - list plmnIdList { - description "List of unique identities for PLMNs. A cell can broadcast - up to 6 PLMN IDs. This is to support the case that one cell can be - used by up to 6 operator's core networks. The PLMN(s) included in this - list will use the same single tracking area code (TAC) and the same - Cell Identity (cellLocalId) for sharing the radio access network - resources. One member of plmnIdList is the primary PLMN ID. A PLMN ID - included in this list cannot be included in the cellAccessInfoList. - The PLMN ID is composed of a Mobile Country Code (MCC) and a Mobile - Network Code (MNC)."; - reference "3GPP TS 36.300, 3GPP TS 36.331, 3GPP TS 23.003"; - key "mcc mnc"; - min-elements 1; - max-elements 6; - uses types3gpp:PLMNId; - } - - leaf cellLocalId { - description "Unambiguously identifies a cell within an eNodeB."; - reference "NCI defined in 3GPP TS 38.300"; - type int32 {range "0..255"; } - } - - leaf eNBId { - description "Unambiguously identifies an eNodeB within a PLMN."; - reference "3GPP TS 36.413, 3GPP TS 36.300"; - mandatory true; - type int32 { range "0..268435455"; } // Representing 28 bit eNB ID. - // 18, 20 and 21 bit eNB IDs also - // allowed. - } - } - - grouping ExternalEUtranCellFDDGrp { - description "Represents the ExternalEUtranCellFDD IOC."; - reference "3GPP TS 28.658"; - uses ExternalEUtranGenericCellGrp; - - leaf earfcnDL { - description "The channel number for the central DL frequency."; - reference "3GPP TS 36.101"; - mandatory true; - type int32 { range "0..17999 | 46590..262143"; } - } - - leaf earfcnUL { - description "The channel number for the central UL frequency. Value 0 - means that the UL channel number is N/A for the DL-only bands."; - reference "3GPP TS 36.101"; - mandatory true; - type int32 { range "0 | 18000..35999 | 46590..262143"; } - } - } - - grouping ExternalEUtranCellTDDGrp { - description "Represents the ExternalEUtranCellTDD IOC."; - reference "3GPP TS 28.658"; - uses ExternalEUtranGenericCellGrp; - - leaf earfcn { - description "The frequency number for the central frequency."; - reference "3GPP TS 36.104"; - mandatory true; - type int32 { range "36000..262143"; } - } - } - - grouping ExternalEUtranCellFDDWrapper { - list ExternalEUtranCellFDD { - description "Represents the common properties of external E-UTRAN FDD - cell provided by eNB or NG-RAN FDD cell provided by ng-eNB."; - reference "3GPP TS 28.658"; - key id; - uses top3gpp:Top_Grp; - container attributes { - uses ExternalEUtranCellFDDGrp; - } - uses mf3gpp:ManagedFunctionContainedClasses; - } - } - - grouping ExternalEUtranCellTDDWrapper { - list ExternalEUtranCellTDD { - description "Represents the common properties of external E-UTRAN cell - TDD provided by eNB or NG-RAN TDD cell provided by ng-eNB."; - reference "3GPP TS 28.658"; - key id; - uses top3gpp:Top_Grp; - container attributes { - uses ExternalEUtranCellTDDGrp; - } - uses mf3gpp:ManagedFunctionContainedClasses; - } - } - - augment "/subnet3gpp:SubNetwork/extenb3gpp:ExternalENBFunction" { - if-feature subnet3gpp:ExternalsUnderSubNetwork; - uses ExternalEUtranCellFDDWrapper; - } - - augment "/eutranet3gpp:EUtraNetwork/extenb3gpp:ExternalENBFunction" { - if-feature eutranet3gpp:ExternalsUnderEUtraNetwork; - uses ExternalEUtranCellFDDWrapper; - } - - augment "/subnet3gpp:SubNetwork/extenb3gpp:ExternalENBFunction" { - if-feature subnet3gpp:ExternalsUnderSubNetwork; - uses ExternalEUtranCellTDDWrapper; - } - - augment "/eutranet3gpp:EUtraNetwork/extenb3gpp:ExternalENBFunction" { - if-feature eutranet3gpp:ExternalsUnderEUtraNetwork; - uses ExternalEUtranCellTDDWrapper; - } -} \ No newline at end of file diff --git a/yang-models/_3gpp-nr-nrm-externalgnbcucpfunction.yang b/yang-models/_3gpp-nr-nrm-externalgnbcucpfunction.yang deleted file mode 100755 index 531e45bed..000000000 --- a/yang-models/_3gpp-nr-nrm-externalgnbcucpfunction.yang +++ /dev/null @@ -1,76 +0,0 @@ -module _3gpp-nr-nrm-externalgnbcucpfunction { - yang-version 1.1; - namespace "urn:3gpp:sa5:_3gpp-nr-nrm-externalgnbcucpfunction"; - prefix "extgnbcucp3gpp"; - - import _3gpp-common-yang-types { prefix types3gpp; } - import _3gpp-common-managed-function { prefix mf3gpp; } - import _3gpp-nr-nrm-nrnetwork { prefix nrnet3gpp; } - import _3gpp-common-subnetwork { prefix subnet3gpp; } - import _3gpp-common-top { prefix top3gpp; } - - organization "3GPP SA5"; - description "Defines the YANG mapping of the ExternalGNBCUCPFunction - Information Object Class (IOC), that is part of the NR Network Resource - Model (NRM)."; - reference "3GPP TS 28.541 5G Network Resource Model (NRM)"; - - revision 2019-10-28 { reference S5-193518 ; } - revision 2019-06-17 { - description "Initial revision"; - } - - grouping ExternalGNBCUCPFunctionGrp { - description "Represets the ExternalGNBCUCPFunction IOC."; - reference "3GPP TS 28.541"; - uses mf3gpp:ManagedFunctionGrp; - - leaf gNBId { - description "Identifies a gNB within a PLMN."; - reference "gNB Identifier (gNB ID) in 3GPP TS 38.300, Global gNB ID - in 3GPP TS 38.413"; - mandatory true; - type int64 { range "0..4294967295"; } - } - - leaf gNBIdLength { - description "Indicates the number of bits for encoding the gNB ID."; - reference "gNB ID in 3GPP TS 38.300, Global gNB ID in 3GPP TS 38.413"; - mandatory true; - type int32 { range "22..32"; } - } - - list pLMNId { - description "Specifies the PLMN identifier to be used as part of the - global RAN node identity."; - key "mcc mnc"; - min-elements 1; - max-elements 1; - uses types3gpp:PLMNId; - } - } - - grouping ExternalGNBCUCPFunctionWrapper { - list ExternalGNBCUCPFunction { - description "Represents the properties, known by the management function, - of a GNBCUCPFunction managed by another management function."; - reference "3GPP TS 28.541"; - key id; - uses top3gpp:Top_Grp; - container attributes { - uses ExternalGNBCUCPFunctionGrp; - } - uses mf3gpp:ManagedFunctionContainedClasses; - } - } - - augment "/subnet3gpp:SubNetwork" { - if-feature subnet3gpp:ExternalsUnderSubNetwork ; - uses ExternalGNBCUCPFunctionWrapper; - } - - augment "/nrnet3gpp:NRNetwork" { - if-feature nrnet3gpp:ExternalsUnderNRNetwork; - uses ExternalGNBCUCPFunctionWrapper; - } -} \ No newline at end of file diff --git a/yang-models/_3gpp-nr-nrm-externalgnbcuupfunction.yang b/yang-models/_3gpp-nr-nrm-externalgnbcuupfunction.yang deleted file mode 100755 index bcdeecbcc..000000000 --- a/yang-models/_3gpp-nr-nrm-externalgnbcuupfunction.yang +++ /dev/null @@ -1,66 +0,0 @@ -module _3gpp-nr-nrm-externalgnbcuupfunction { - yang-version 1.1; - namespace "urn:3gpp:sa5:_3gpp-nr-nrm-externalgnbcuupfunction"; - prefix "extgnbcuup3gpp"; - - import _3gpp-common-managed-function { prefix mf3gpp; } - import _3gpp-nr-nrm-nrnetwork { prefix nrnet3gpp; } - import _3gpp-common-subnetwork { prefix subnet3gpp; } - import _3gpp-common-top { prefix top3gpp; } - - organization "3GPP SA5"; - description "Defines the YANG mapping of the ExternalGNBCUUPFunction - Information Object Class (IOC), that is part of the NR Network - Resource Model (NRM)."; - reference "3GPP TS 28.541 5G Network Resource Model (NRM)"; - - revision 2019-10-28 { reference S5-193518 ; } - revision 2019-06-17 { - description "Initial revision"; - } - - grouping ExternalGNBCUUPFunctionGrp { - description "Represets the ExternalGNBCUUPFunction IOC."; - reference "3GPP TS 28.541"; - uses mf3gpp:ManagedFunctionGrp; - - leaf gNBId { - description "Identifies a gNB within a PLMN."; - reference "gNB Identifier (gNB ID) in 3GPP TS 38.300, Global gNB ID - in 3GPP TS 38.413"; - mandatory true; - type int64 { range "0..4294967295"; } - } - - leaf gNBIdLength { - description "Indicates the number of bits for encoding the gNB ID."; - reference "gNB ID in 3GPP TS 38.300, Global gNB ID in 3GPP TS 38.413"; - mandatory true; - type int32 { range "22..32"; } - } - } - - grouping ExternalGNBCUUPFunctionWrapper { - list ExternalGNBCUUPFunction { - description "Represents the properties, known by the management function, - of a GNBCUUPFunction managed by another management function."; - reference "3GPP TS 28.541"; - key id; - uses top3gpp:Top_Grp; - container attributes { - uses ExternalGNBCUUPFunctionGrp; - } - uses mf3gpp:ManagedFunctionContainedClasses; - } - } - - augment "/subnet3gpp:SubNetwork" { - if-feature subnet3gpp:ExternalsUnderSubNetwork ; - uses ExternalGNBCUUPFunctionWrapper; - } - - augment "/nrnet3gpp:NRNetwork" { - if-feature nrnet3gpp:ExternalsUnderNRNetwork; - uses ExternalGNBCUUPFunctionWrapper; - } -} \ No newline at end of file diff --git a/yang-models/_3gpp-nr-nrm-externalgnbdufunction.yang b/yang-models/_3gpp-nr-nrm-externalgnbdufunction.yang deleted file mode 100755 index 844933025..000000000 --- a/yang-models/_3gpp-nr-nrm-externalgnbdufunction.yang +++ /dev/null @@ -1,76 +0,0 @@ -module _3gpp-nr-nrm-externalgnbdufunction { - yang-version 1.1; - namespace "urn:3gpp:sa5:_3gpp-nr-nrm-externalgnbdufunction"; - prefix "extgnbdu3gpp"; - - import _3gpp-common-yang-types { prefix types3gpp; } - import _3gpp-common-managed-function { prefix mf3gpp; } - import _3gpp-nr-nrm-nrnetwork { prefix nrnet3gpp; } - import _3gpp-common-subnetwork { prefix subnet3gpp; } - import _3gpp-common-top { prefix top3gpp; } - - organization "3GPP SA5"; - description "Defines the YANG mapping of the ExternalGNBDUFunction - Information Object Class (IOC) that is part of the NR Network Resource - Model (NRM)."; - reference "3GPP TS 28.541 5G Network Resource Model (NRM)"; - - revision 2019-10-28 { reference S5-193518 ; } - revision 2019-06-17 { - description "Initial revision"; - } - - grouping ExternalGNBDUFunctionGrp { - description "Represets the ExternalGNBDUFunction IOC."; - reference "3GPP TS 28.541"; - uses mf3gpp:ManagedFunctionGrp; - - leaf gNBId { - description "Identifies a gNB within a PLMN."; - reference "gNB Identifier (gNB ID) in 3GPP TS 38.300, Global gNB ID - in 3GPP TS 38.413"; - mandatory true; - type int64 { range "0..4294967295"; } - } - - leaf gNBIdLength { - description "Indicates the number of bits for encoding the gNB ID."; - reference "gNB ID in 3GPP TS 38.300, Global gNB ID in 3GPP TS 38.413"; - mandatory true; - type int32 { range "22..32"; } - } - - list pLMNId { - description "Specifies the PLMN identifier to be used as part of the - global RAN node identity."; - key "mcc mnc"; - min-elements 1; - max-elements 1; - uses types3gpp:PLMNId; - } - } - - grouping ExternalGNBDUFunctionWrapper { - list ExternalGNBDUFunction { - description "Represents the properties, known by the management function, - of a GNBDUFunction managed by another management function."; - reference "3GPP TS 28.541"; - key id; - uses top3gpp:Top_Grp; - container attributes { - uses ExternalGNBDUFunctionGrp; - } - uses mf3gpp:ManagedFunctionContainedClasses; - } - } - - augment "/subnet3gpp:SubNetwork" { - if-feature subnet3gpp:ExternalsUnderSubNetwork ; - uses ExternalGNBDUFunctionWrapper; - } - - augment "/nrnet3gpp:NRNetwork" { - if-feature nrnet3gpp:ExternalsUnderNRNetwork; - uses ExternalGNBDUFunctionWrapper; - } -} \ No newline at end of file diff --git a/yang-models/_3gpp-nr-nrm-externalnrcellcu.yang b/yang-models/_3gpp-nr-nrm-externalnrcellcu.yang deleted file mode 100755 index 2bfe38bb3..000000000 --- a/yang-models/_3gpp-nr-nrm-externalnrcellcu.yang +++ /dev/null @@ -1,85 +0,0 @@ -module _3gpp-nr-nrm-externalnrcellcu { - yang-version 1.1; - namespace "urn:3gpp:sa5:_3gpp-nr-nrm-externalnrcellcu"; - prefix "extnrcellcu3gpp"; - - import _3gpp-common-yang-types { prefix types3gpp; } - import _3gpp-common-managed-function { prefix mf3gpp; } - import _3gpp-nr-nrm-nrnetwork { prefix nrnet3gpp; } - import _3gpp-common-subnetwork { prefix subnet3gpp; } - import _3gpp-nr-nrm-externalgnbcucpfunction { prefix extgnbcucp3gpp; } - import _3gpp-common-top { prefix top3gpp; } - - organization "3GPP SA5"; - description "Defines the YANG mapping of the ExternalNRCellCU Information - Object Class (IOC), that is part of the NR Network Resource Model (NRM)."; - reference "3GPP TS 28.541 5G Network Resource Model (NRM)"; - - revision 2019-10-28 { reference S5-193518 ; } - - revision 2019-06-17 { - description "Initial revision"; - } - - grouping ExternalNRCellCUGrp { - description "Represents the ExternalNRCellCU IOC."; - reference "3GPP TS 28.541"; - uses mf3gpp:ManagedFunctionGrp; - - leaf cellLocalId { - description "Identifies an NR cell of a gNB. Together with corresponding - gNB ID it forms the NR Cell Identifier (NCI)."; - reference "NCI in 3GPP TS 38.300"; - mandatory true; - type int32 {range "0..16383"; } - } - - leaf nRPCI { - description "The Physical Cell Identity (PCI) of the NR cell."; - reference "3GPP TS 36.211"; - mandatory true; - type int32 { range "0..1007"; } - } - - list pLMNIdList { - description "Defines which PLMNs that are assumed to be served by the - NR cell in another gNB CU-CP. This list is either updated by the - managed element itself (e.g. due to ANR, signalling over Xn, etc.) or - by consumer over the standard interface."; - key "mcc mnc"; - min-elements 1; - max-elements 12; - uses types3gpp:PLMNId; - } - - leaf nRFrequencyRef { - description "Reference to corresponding NRFrequency instance."; - mandatory true; - type types3gpp:DistinguishedName; - } - } - - grouping ExternalNRCellCUWrapper { - list ExternalNRCellCU { - description "Represents the properties of an NRCellCU controlled by - another Management Service Provider."; - reference "3GPP TS 28.541"; - key id; - uses top3gpp:Top_Grp; - container attributes { - uses ExternalNRCellCUGrp; - } - uses mf3gpp:ManagedFunctionContainedClasses; - } - } - - augment "/subnet3gpp:SubNetwork/extgnbcucp3gpp:ExternalGNBCUCPFunction" { - if-feature subnet3gpp:ExternalsUnderSubNetwork ; - uses ExternalNRCellCUWrapper; - } - - augment "/nrnet3gpp:NRNetwork/extgnbcucp3gpp:ExternalGNBCUCPFunction" { - if-feature nrnet3gpp:ExternalsUnderNRNetwork; - uses ExternalNRCellCUWrapper; - } -} \ No newline at end of file diff --git a/yang-models/_3gpp-nr-nrm-externalservinggwfunction.yang b/yang-models/_3gpp-nr-nrm-externalservinggwfunction.yang deleted file mode 100755 index 96f51bd22..000000000 --- a/yang-models/_3gpp-nr-nrm-externalservinggwfunction.yang +++ /dev/null @@ -1,52 +0,0 @@ -module _3gpp-nr-nrm-externalservinggwfunction { - yang-version 1.1; - namespace "urn:3gpp:sa5:_3gpp-nr-nrm-externalservinggwfunction"; - prefix "extservgw3gpp"; - - import _3gpp-common-managed-function { prefix mf3gpp; } - import _3gpp-common-subnetwork { prefix subnet3gpp; } - import _3gpp-nr-nrm-eutranetwork { prefix eutranet3gpp; } - import _3gpp-common-top { prefix top3gpp; } - - organization "3GPP SA5"; - description "Defines the YANG mapping of the ExternalServingGWFunction - Information Object Class (IOC) that is part of the NR Network Resource - Model (NRM)."; - reference "3GPP TS 28.541 5G Network Resource Model (NRM)"; - - revision 2019-10-28 { reference S5-193518 ; } - revision 2019-06-17 { - description "Initial revision"; - } - - grouping ExternalServingGWFunctionGrp { - description "Represents the ExternalServingGWFunction IOC."; - reference "3GPP TS 28.541"; - uses mf3gpp:ManagedFunctionGrp; - } - - grouping ExternalServingGWFunctionWrapper { - list ExternalServingGWFunction { - description "Represents the properties, known by the management - function, of a ServingGWFunction managed by another management - function."; - reference "3GPP TS 28.658"; - key id; - uses top3gpp:Top_Grp; - container attributes { - uses ExternalServingGWFunctionGrp; - } - uses mf3gpp:ManagedFunctionContainedClasses; - } - } - - augment "/subnet3gpp:SubNetwork" { - if-feature subnet3gpp:ExternalsUnderSubNetwork ; - uses ExternalServingGWFunctionWrapper; - } - - augment "/eutranet3gpp:EUtraNetwork" { - if-feature eutranet3gpp:ExternalsUnderEUtraNetwork; - uses ExternalServingGWFunctionWrapper; - } -} \ No newline at end of file diff --git a/yang-models/_3gpp-nr-nrm-externalupffunction.yang b/yang-models/_3gpp-nr-nrm-externalupffunction.yang deleted file mode 100755 index 1175c8c60..000000000 --- a/yang-models/_3gpp-nr-nrm-externalupffunction.yang +++ /dev/null @@ -1,51 +0,0 @@ -module _3gpp-nr-nrm-externalupffunction { - yang-version 1.1; - namespace "urn:3gpp:sa5:_3gpp-nr-nrm-externalupffunction"; - prefix "extupf3gpp"; - - import _3gpp-common-managed-function { prefix mf3gpp; } - import _3gpp-common-subnetwork { prefix subnet3gpp; } - import _3gpp-nr-nrm-nrnetwork { prefix nrnet3gpp; } - import _3gpp-common-top { prefix top3gpp; } - - organization "3GPP SA5"; - description "Defines the YANG mapping of the ExternalUPFFunction Information - Object Class (IOC) that is part of the NR Network Resource Model (NRM)."; - reference "3GPP TS 28.541 5G Network Resource Model (NRM)"; - - revision 2019-10-28 { reference S5-193518 ; } - revision 2019-06-17 { - description "Initial revision"; - } - - grouping ExternalUPFFunctionGrp { - description "Represents the ExternalUPFFunction IOC."; - reference "3GPP TS 28.541"; - uses mf3gpp:ManagedFunctionGrp; - } - - grouping ExternalUPFFunctionWrapper { - list ExternalUPFFunction { - description "Represents the properties, known by the management - function, of a UPFFunction managed by another management - function."; - reference "3GPP TS 28.541"; - key id; - uses top3gpp:Top_Grp; - container attributes { - uses ExternalUPFFunctionGrp; - } - uses mf3gpp:ManagedFunctionContainedClasses; - } - } - - augment "/subnet3gpp:SubNetwork" { - if-feature subnet3gpp:ExternalsUnderSubNetwork ; - uses ExternalUPFFunctionWrapper; - } - - augment "/nrnet3gpp:NRNetwork" { - if-feature nrnet3gpp:ExternalsUnderNRNetwork; - uses ExternalUPFFunctionWrapper; - } -} \ No newline at end of file diff --git a/yang-models/_3gpp-nr-nrm-gnbcucpfunction.yang b/yang-models/_3gpp-nr-nrm-gnbcucpfunction.yang deleted file mode 100755 index 685ac9517..000000000 --- a/yang-models/_3gpp-nr-nrm-gnbcucpfunction.yang +++ /dev/null @@ -1,134 +0,0 @@ -module _3gpp-nr-nrm-gnbcucpfunction { - yang-version 1.1; - namespace "urn:3gpp:sa5:_3gpp-nr-nrm-gnbcucpfunction"; - prefix "gnbcucp3gpp"; - - import _3gpp-common-yang-types { prefix types3gpp; } - import _3gpp-common-managed-function { prefix mf3gpp; } - import _3gpp-common-managed-element { prefix me3gpp; } - import _3gpp-common-top { prefix top3gpp; } - import _3gpp-nr-nrm-rrmpolicy { prefix nrrrmpolicy3gpp; } - - organization "3GPP SA5"; - contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; - description "Defines the YANG mapping of the GNBCUCPFunction Information - Object Class (IOC) that is part of the NR Network Resource Model (NRM)."; - reference "3GPP TS 28.541 5G Network Resource Model (NRM)"; - - revision 2020-08-06 { reference "CR-0333"; } - revision 2020-08-03 { reference "CR-0321"; } - revision 2020-06-03 { reference "CR-0286"; } - revision 2020-05-08 { reference S5-203316 ; } - revision 2020-04-28 { reference "0260"; } - revision 2020-02-14 { reference S5-20XXXX ; } - revision 2019-10-28 { reference S5-193518 ; } - revision 2019-06-17 { - description "Initial revision"; - } - - feature DESManagementFunction { - description "Classs representing Distributed SON or Domain-Centralized SON Energy Saving feature"; - } - - feature DANRManagementFunction { - description "Classs representing D-SON function of ANR Management feature"; - } - - feature DRACHOptimizationFunction { - description "Classs representing D-SON function of RACH optimization feature"; - } - - feature DMROFunction { - description "Classs representing D-SON function of MRO feature"; - } - - grouping GNBCUCPFunctionGrp { - description "Represents the GNBCUCPFunction IOC."; - reference "3GPP TS 28.541"; - uses mf3gpp:ManagedFunctionGrp; - uses nrrrmpolicy3gpp:RRMPolicy_Grp; - - leaf gNBId { - description "Identifies a gNB within a PLMN. The gNB Identifier (gNB ID) - is part of the NR Cell Identifier (NCI) of the gNB cells."; - reference "gNB ID in 3GPP TS 38.300, Global gNB ID in 3GPP TS 38.413"; - mandatory true; - type int64 { range "0..4294967295"; } - } - - leaf gNBIdLength { - description "Indicates the number of bits for encoding the gNB ID."; - reference "gNB ID in 3GPP TS 38.300, Global gNB ID in 3GPP TS 38.413"; - mandatory true; - type int32 { range "22..32"; } - } - - leaf gNBCUName { - description "Identifies the Central Unit of an gNB."; - reference "3GPP TS 38.473"; - mandatory true; - type string { length "1..150"; } - } - - list pLMNId { - description "The PLMN identifier to be used as part of the global RAN - node identity."; - key "mcc mnc"; - min-elements 1; - max-elements 1; - uses types3gpp:PLMNId; - } - - leaf-list x2BlackList { - type string; - description "List of nodes to which X2 connections are prohibited."; - } - - leaf-list x2WhiteList { - type string; - description "List of nodes to which X2 connections are enforced."; - } - - leaf-list xnBlackList { - type string; - description "List of nodes to which Xn connections are prohibited."; - } - - leaf-list xnWhiteList { - type string; - description "List of nodes to which X2 connections are enforced."; - } - - leaf-list xnHOBlackList { - type string; - description "List of nodes to which handovers over Xn are prohibited."; - } - leaf configurable5QISetRef { - type types3gpp:DistinguishedName; - description "DN of the Configurable5QISet that the GNBCUCPFunction supports (is associated to)."; - } - - leaf-list x2HOBlackList { - type string; - description "List of nodes to which handovers over X2 are prohibited."; - } - leaf dynamic5QISetRef { - type types3gpp:DistinguishedName; - description "DN of the Dynamic5QISet that the GNBCUCPFunction supports (is associated to)."; - } - } - - augment "/me3gpp:ManagedElement" { - - list GNBCUCPFunction { - description "Represents the logical function CU-CP of gNB and en-gNB."; - reference "3GPP TS 28.541"; - key id; - uses top3gpp:Top_Grp; - container attributes { - uses GNBCUCPFunctionGrp; - } - uses mf3gpp:ManagedFunctionContainedClasses; - } - } -} \ No newline at end of file diff --git a/yang-models/_3gpp-nr-nrm-gnbcuupfunction.yang b/yang-models/_3gpp-nr-nrm-gnbcuupfunction.yang deleted file mode 100755 index 98b7b4a7b..000000000 --- a/yang-models/_3gpp-nr-nrm-gnbcuupfunction.yang +++ /dev/null @@ -1,168 +0,0 @@ -module _3gpp-nr-nrm-gnbcuupfunction { - yang-version 1.1; - namespace "urn:3gpp:sa5:_3gpp-nr-nrm-gnbcuupfunction"; - prefix "gnbcuup3gpp"; - - import _3gpp-common-yang-types { prefix types3gpp; } - import _3gpp-common-managed-function { prefix mf3gpp; } - import _3gpp-common-managed-element { prefix me3gpp; } - import _3gpp-common-top { prefix top3gpp; } - import _3gpp-nr-nrm-rrmpolicy { prefix nrrrmpolicy3gpp; } - import _3gpp-nr-nrm-common { prefix nrcommon3gpp; } - - organization "3GPP SA5"; - contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; - description "Defines the YANG mapping of the GNBCUUPFunction Information - Object Class (IOC) that is part of the NR Network Resource Model (NRM)."; - reference "3GPP TS 28.541 5G Network Resource Model (NRM)"; - - revision 2020-08-06 { reference "CR-0333"; } - revision 2020-08-03 { reference "CR-0321"; } - revision 2020-06-03 { reference "CR-0286"; } - revision 2020-05-28 { reference "CR-0318"; } - revision 2020-03-12 { reference "SP-200233 S5-201547"; } - revision 2020-02-14 { reference S5-20XXXX ; } - revision 2019-10-28 { reference S5-193518 ; } - revision 2019-08-21 { - description "Initial revision"; - } - - grouping TAIGrp { - description "Tracking Area Identity"; - - list pLMNId { - key "mcc mnc"; - uses types3gpp:PLMNId; - } - - leaf nRTAC { - type int64; - description "Identity of the common Tracking Area Code for the PLMNs - allowedValues: - a) It is the TAC or Extended-TAC. - b) A cell can only broadcast one TAC or Extended-TAC. - See TS 36.300, subclause 10.1.7 (PLMNID and TAC relation). - c) TAC is defined in subclause 19.4.2.3 of 3GPP TS 23.003 and - Extended-TAC is defined in subclause 9.3.1.29 of 3GPP TS 38.473. - d) For a 5G SA (Stand Alone), it has a non-null value."; - } - } - - grouping BackhaulAddressGrp { - description "Indicates the backhauladdress of gNB."; - - leaf gNBId { - type uint32 { - range "0..4294967295"; - } - description "It identifies a gNB within a PLMN. The gNB ID is part of - the NR Cell Identifier (NCI) of the gNB cells."; - reference "gNB Identifier (gNB ID) of subclause 8.2 of TS 38.300. - Global gNB ID in subclause 9.3.1.6 of TS 38.413"; - } - - list tAI { - key nRTAC; - min-elements 1; - max-elements 1; - description "Tracking Area Identity"; - reference "subclause 9.3.3.11 in TS 38.413"; - uses TAIGrp; - } - } - - grouping MappingSetIDBackhaulAddressGrp { - description "Mapping relationship between setID and backhaulAddress of gNB"; - - leaf idx { - type uint32 ; - description "ID value"; - } - - leaf setID { - type uint32; - mandatory true; - description "Indicates the setID of gNB."; - reference "Subclause 7.4.1.6 in TS 38.211"; - } - - list backhaulAddress { - key gNBId; - min-elements 1; - max-elements 1; - description "Indicates the backhauladdress of gNB."; - uses BackhaulAddressGrp; - } - } - grouping GNBCUUPFunctionGrp { - description "Represents the GNBCUUPFunction IOC."; - reference "3GPP TS 28.541"; - uses mf3gpp:ManagedFunctionGrp; - uses nrrrmpolicy3gpp:RRMPolicy_Grp; - - leaf gNBCUUPId { - type uint64 { - range "0..68719476735" ; - } - config false; - mandatory true; - description "Identifies the gNB-CU-UP at least within a gNB-CU-CP"; - reference "'gNB-CU-UP ID' in subclause 9.3.1.15 of 3GPP TS 38.463"; - } - - leaf gNBId { - type uint32; - mandatory true; - description "Identifies a gNB within a PLMN. The gNB ID is part of the - NR Cell Identifier (NCI) of the gNB cells. "; - reference "gNB Identifier (gNB ID) of subclause 8.2 of TS 38.300. - Global gNB ID in subclause 9.3.1.6 of TS 38.413"; - } - - leaf gNBIdLength { - mandatory true; - type int32 { range "22..32"; } - description "Indicates the number of bits for encoding the gNB Id."; - reference "gNB Id in 3GPP TS 38.300, Global gNB ID in 3GPP TS 38.413"; - } - - list pLMNInfoList { - description "The PLMNInfoList is a list of PLMNInfo data type. It defines which PLMNs that - can be served by the GNBCUUPFunction and which S-NSSAIs can be supported by the - GNBCUUPFunction for corresponding PLMN in case of network slicing feature is supported"; - key "mcc mnc"; - uses nrcommon3gpp:PLMNInfo; - } - - list mappingSetIDBackhaulAddressList { - key idx; - description "Specifies a list of mappingSetIDBackhaulAddress used to - retrieve the backhaul address of the victim set. - Must be present if Remote Interference Management function is supported."; - uses MappingSetIDBackhaulAddressGrp; - } - - leaf configurable5QISetRef { - type types3gpp:DistinguishedName; - description "DN of the Configurable5QISet that the GNBCUUPFunction supports (is associated to)."; - } - leaf dynamic5QISetRef { - type types3gpp:DistinguishedName; - description "DN of the Dynamic5QISet that the GNBCUUPFunction supports (is associated to)."; - } - } - - augment "/me3gpp:ManagedElement" { - - list GNBCUUPFunction { - key id; - description "Represents the logical function CU-UP of gNB or en-gNB."; - reference "3GPP TS 28.541"; - uses top3gpp:Top_Grp; - container attributes { - uses GNBCUUPFunctionGrp; - } - uses mf3gpp:ManagedFunctionContainedClasses; - } - } -} \ No newline at end of file diff --git a/yang-models/_3gpp-nr-nrm-gnbdufunction.yang b/yang-models/_3gpp-nr-nrm-gnbdufunction.yang deleted file mode 100755 index 654d99dca..000000000 --- a/yang-models/_3gpp-nr-nrm-gnbdufunction.yang +++ /dev/null @@ -1,87 +0,0 @@ -module _3gpp-nr-nrm-gnbdufunction { - yang-version 1.1; - namespace "urn:3gpp:sa5:_3gpp-nr-nrm-gnbdufunction"; - prefix "gnbdu3gpp"; - - import _3gpp-common-managed-function { prefix mf3gpp; } - import _3gpp-common-managed-element { prefix me3gpp; } - import _3gpp-common-top { prefix top3gpp; } - import _3gpp-nr-nrm-rrmpolicy { prefix nrrrmpolicy3gpp; } - - organization "3GPP SA5"; - description "Defines the YANG mapping of the GNBDUFunction Information - Object Class (IOC) that is part of the NR Network Resource Model (NRM)."; - reference "3GPP TS 28.541 5G Network Resource Model (NRM)"; - - revision 2020-03-12 { reference "SP-200233 S5-201547" ; } - revision 2020-02-14 { reference S5-20XXXX ; } - revision 2019-10-28 { reference S5-193518 ; } - revision 2019-08-21 { - description "Initial revision."; - } - - grouping GNBDUFunctionGrp { - description "Represents the GNBDUFunction IOC."; - reference "3GPP TS 28.541"; - uses mf3gpp:ManagedFunctionGrp; - uses nrrrmpolicy3gpp:RRMPolicy_Grp; - - leaf gNBId { - type int64 { range "0..4294967295"; } - config false; - mandatory true; - description "Identifies a gNB within a PLMN. The gNB Identifier (gNB ID) - is part of the NR Cell Identifier (NCI) of the gNB cells."; - reference "gNB ID in 3GPP TS 38.300, Global gNB ID in 3GPP TS 38.413"; - } - - leaf gNBIdLength { - type int32 { range "22..32"; } - mandatory true; - description "Indicates the number of bits for encoding the gNB ID."; - reference "gNB ID in 3GPP TS 38.300, Global gNB ID in 3GPP TS 38.413"; - } - - leaf gNBDUId { - type int64 { range "0..68719476735"; } - mandatory true; - description "Uniquely identifies the DU at least within a gNB."; - reference "3GPP TS 38.473"; - } - - leaf gNBDUName { - type string { length "1..150"; } - description "Identifies the Distributed Unit of an NR node"; - reference "3GPP TS 38.473"; - } - - leaf aggressorSetID { - type uint32 { range "0..4194304"; } - config false; - description "Indicates the associated aggressor gNB Set ID of the cell - Valid when Remote Interference Management function is supported."; - reference "3GPP TS 38.211 subclause 7.4.1.6"; - } - leaf victimSetID { - type uint32 { range "0..4194304"; } - config false; - description "Indicates the associated victim gNB Set ID of the cell - Valid when Remote Interference Management function is supported."; - reference "3GPP TS 38.211 subclause 7.4.1.6"; - } - } - - augment "/me3gpp:ManagedElement" { - - list GNBDUFunction { - key id; - description "Represents the logical function DU of gNB or en-gNB."; - reference "3GPP TS 28.541"; - uses top3gpp:Top_Grp; - container attributes { - uses GNBDUFunctionGrp; - } - uses mf3gpp:ManagedFunctionContainedClasses; - } - } -} \ No newline at end of file diff --git a/yang-models/_3gpp-nr-nrm-nrcellcu.yang b/yang-models/_3gpp-nr-nrm-nrcellcu.yang deleted file mode 100755 index c533ff3fa..000000000 --- a/yang-models/_3gpp-nr-nrm-nrcellcu.yang +++ /dev/null @@ -1,87 +0,0 @@ -module _3gpp-nr-nrm-nrcellcu { - yang-version 1.1; - namespace "urn:3gpp:sa5:_3gpp-nr-nrm-nrcellcu"; - prefix "nrcellcu3gpp"; - - import _3gpp-common-yang-types { prefix types3gpp; } - import _3gpp-common-managed-function { prefix mf3gpp; } - import _3gpp-common-managed-element { prefix me3gpp; } - import _3gpp-nr-nrm-gnbcucpfunction { prefix gnbcucp3gpp; } - import _3gpp-common-top { prefix top3gpp; } - import _3gpp-nr-nrm-common { prefix nrcommon3gpp; } - - organization "3GPP SA5"; - contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; - description "Defines the YANG mapping of the NRCellCU Information Object - Class (IOC) that is part of the NR Network Resource Model (NRM)."; - reference "3GPP TS 28.541 5G Network Resource Model (NRM)"; - - revision 2020-05-08 { reference S5-203316 ; } - revision 2020-02-14 { reference S5-20XXXX ; } - revision 2019-10-28 { reference S5-193518 ; } - revision 2019-06-17 { - description "Initial revision"; - } - - feature DESManagementFunction { - description "Classs representing Distributed SON or Domain-Centralized SON Energy Saving feature"; - } - - feature DRACHOptimizationFunction { - description "Classs representing D-SON function of RACH optimization feature"; - } - - feature DMROFunction { - description "Classs representing D-SON function of MRO feature"; - } - - feature CESManagementFunction { - description "Classs representing Cross Domain-Centralized SON Energy Saving feature"; - } - - grouping NRCellCUGrp { - description "Represents the NRCellCU IOC."; - reference "3GPP TS 28.541"; - uses mf3gpp:ManagedFunctionGrp; - - leaf cellLocalId { - description "Identifies an NR cell of a gNB. Together with corresponding - gNB ID it forms the NR Cell Identifier (NCI)."; - mandatory true; - type int32 { range "0..16383"; } - } - - list pLMNInfoList { - description "The PLMNInfoList is a list of PLMNInfo data type. It defines which PLMNs - that can be served by the NR cell, and which S-NSSAIs that can be supported by the - NR cell for corresponding PLMN in case of network slicing feature is supported."; - // Note: Whether the attribute pLMNId in the pLMNInfo can be writable depends on the implementation. - key "mcc mnc"; - min-elements 1; - uses nrcommon3gpp:PLMNInfo; - } - - - leaf nRFrequencyRef { - description "Reference to corresponding NRFrequency instance."; - config false; - type types3gpp:DistinguishedName; - } - } - - augment "/me3gpp:ManagedElement/gnbcucp3gpp:GNBCUCPFunction" { - - list NRCellCU { - description "Represents the information required by CU that is - responsible for the management of inter-cell mobility and neighbour - relations via ANR."; - reference "3GPP TS 28.541"; - key id; - uses top3gpp:Top_Grp; - container attributes { - uses NRCellCUGrp; - } - uses mf3gpp:ManagedFunctionContainedClasses; - } - } -} \ No newline at end of file diff --git a/yang-models/_3gpp-nr-nrm-nrcelldu.yang b/yang-models/_3gpp-nr-nrm-nrcelldu.yang deleted file mode 100755 index 6be5a2ceb..000000000 --- a/yang-models/_3gpp-nr-nrm-nrcelldu.yang +++ /dev/null @@ -1,223 +0,0 @@ -module _3gpp-nr-nrm-nrcelldu { - yang-version 1.1; - namespace "urn:3gpp:sa5:_3gpp-nr-nrm-nrcelldu"; - prefix "nrcelldu3gpp"; - - import _3gpp-common-yang-types { prefix types3gpp; } - import _3gpp-common-managed-function { prefix mf3gpp; } - import _3gpp-common-managed-element { prefix me3gpp; } - import _3gpp-common-top { prefix top3gpp; } - import _3gpp-nr-nrm-gnbdufunction { prefix gnbdu3gpp; } - import _3gpp-nr-nrm-rrmpolicy { prefix nrrrmpolicy3gpp; } - import _3gpp-nr-nrm-common { prefix nrcommon3gpp; } - - - organization "3GPP SA5"; - contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; - description "Defines the YANG mapping of the NRCellDU Information Object - Class (IOC) that is part of the NR Network Resource Model (NRM)."; - reference "3GPP TS 28.541 5G Network Resource Model (NRM)"; - - revision 2020-05-08 { reference S5-203316 ; } - revision 2020-02-14 { reference S5-20XXXX ; } - revision 2019-10-28 { reference S5-193518 ; } - revision 2019-09-03 { - description "Initial revision"; - } - - feature DPCIConfigurationFunction { - description "Classs representing Distributed SON or Domain-Centralized SON function of PCI configuration feature"; - } - - feature CPCIConfigurationFunction { - description "Classs representing Cross Domain-Centralized SON function of PCI configuration feature"; - } - - grouping NRCellDUGrp { - description "Represents the NRCellDU IOC."; - reference "3GPP TS 28.541"; - uses mf3gpp:ManagedFunctionGrp; - uses nrrrmpolicy3gpp:RRMPolicy_Grp; - - leaf cellLocalId { - description "Identifies an NR cell of a gNB. Together with the - corresponding gNB identifier in forms the NR Cell Identity (NCI)."; - reference "NCI in 3GPP TS 38.300"; - mandatory true; - type int32 { range "0..16383"; } - } - - leaf operationalState { - description "Operational state of the NRCellDU instance. Indicates - whether the resource is installed and partially or fully operable - (ENABLED) or the resource is not installed or not operable - (DISABLED)."; - config false; - type types3gpp:OperationalState; - } - - leaf administrativeState { - description "Administrative state of the NRCellDU. Indicates the - permission to use or prohibition against using the cell, imposed - through the OAM services."; - type types3gpp:AdministrativeState; - default LOCKED; - } - - leaf cellState { - description "Cell state of the NRCellDU instance. Indicates whether the - cell is not currently in use (IDLE), or currently in use but not - configured to carry traffic (INACTIVE), or currently in use and is - configured to carry traffic (ACTIVE)."; - config false; - type types3gpp:CellState; - } - - list pLMNInfoList { - description "The PLMNInfoList is a list of PLMNInfo data type. It defines which PLMNs that - can be served by the NR cell, and which S-NSSAIs that can be supported by the NR cell for - corresponding PLMN in case of network slicing feature is supported. The plMNId of the first - entry of the list is the PLMNId used to construct the nCGI for the NR cell."; - key "mcc mnc"; - min-elements 1; - uses nrcommon3gpp:PLMNInfo; - } - - - leaf nRPCI { - description "The Physical Cell Identity (PCI) of the NR cell."; - reference "3GPP TS 36.211"; - mandatory true; - type int32 { range "0..1007"; } - } - - leaf nRTAC { - description "The common 5GS Tracking Area Code for the PLMNs."; - reference "3GPP TS 23.003, 3GPP TS 38.473"; - type types3gpp:Tac; - } - - leaf arfcnDL { - description "NR Absolute Radio Frequency Channel Number (NR-ARFCN) for - downlink."; - reference "3GPP TS 38.104"; - mandatory true; - type int32; - } - - leaf arfcnUL { - description "NR Absolute Radio Frequency Channel Number (NR-ARFCN) for - uplink."; - reference "3GPP TS 38.104"; - type int32; - } - - leaf arfcnSUL { - description "NR Absolute Radio Frequency Channel Number (NR-ARFCN) for - supplementary uplink."; - reference "3GPP TS 38.104"; - type int32; - } - - leaf bSChannelBwDL { - description "Base station channel bandwidth for downlink."; - reference "3GPP TS 38.104"; - type int32; - units MHz; - } - - leaf bSChannelBwUL { - description "Base station channel bandwidth for uplink."; - reference "3GPP TS 38.104"; - type int32; - units MHz; - } - - leaf bSChannelBwSUL { - description "Base station channel bandwidth for supplementary uplink."; - reference "3GPP TS 38.104"; - mandatory false; - type int32; - units MHz; - } - - leaf ssbFrequency { - description "Indicates cell defining SSB frequency domain position. - Frequency (in terms of NR-ARFCN) of the cell defining SSB transmission. - The frequency identifies the position of resource element RE=#0 - (subcarrier #0) of resource block RB#10 of the SS block. The frequency - must be positioned on the NR global frequency raster, as defined in - 3GPP TS 38.101-1, and within bSChannelBwDL."; - mandatory true; - type int32 { range "0..3279165"; } - } - - leaf ssbPeriodicity { - description "Indicates cell defined SSB periodicity. The SSB periodicity - is used for the rate matching purpose."; - mandatory true; - type int32 { range "5 | 10 | 20 | 40 | 80 | 160"; } - units "subframes (ms)"; - } - - leaf ssbSubCarrierSpacing { - description "Subcarrier spacing of SSB. Only the values 15 kHz or 30 kHz - (< 6 GHz), 120 kHz or 240 kHz (> 6 GHz) are applicable."; - reference "3GPP TS 38.211"; - mandatory true; - type int32 { range "15 | 30 | 120 | 240"; } - units kHz; - } - - leaf ssbOffset { - description "Indicates cell defining SSB time domain position. Defined - as the offset of the measurement window, in which to receive SS/PBCH - blocks, where allowed values depend on the ssbPeriodicity - (ssbOffset < ssbPeriodicity)."; - mandatory true; - type int32 { range "0..159"; } - units "subframes (ms)"; - } - - leaf ssbDuration { - description "Duration of the measurement window in which to receive - SS/PBCH blocks."; - reference "3GPP TS 38.213"; - mandatory true; - type int32 { range "1..5"; } - units "subframes (ms)"; - } - - leaf-list nRSectorCarrierRef { - description "Reference to corresponding NRSectorCarrier instance."; - min-elements 1; - type types3gpp:DistinguishedName; - } - - leaf-list bWPRef { - description "Reference to corresponding BWP instance."; - min-elements 0; - type types3gpp:DistinguishedName; - } - - leaf-list nRFrequencyRef { - description "Reference to corresponding NRFrequency instance."; - min-elements 0; - type types3gpp:DistinguishedName; - } - } - - augment "/me3gpp:ManagedElement/gnbdu3gpp:GNBDUFunction" { - - list NRCellDU { - description "Represents the information of a cell known by DU."; - reference "3GPP TS 28.541"; - key id; - uses top3gpp:Top_Grp; - container attributes { - uses NRCellDUGrp; - } - uses mf3gpp:ManagedFunctionContainedClasses; - } - } -} \ No newline at end of file diff --git a/yang-models/_3gpp-nr-nrm-nrcellrelation.yang b/yang-models/_3gpp-nr-nrm-nrcellrelation.yang deleted file mode 100755 index f9757380e..000000000 --- a/yang-models/_3gpp-nr-nrm-nrcellrelation.yang +++ /dev/null @@ -1,143 +0,0 @@ -module _3gpp-nr-nrm-nrcellrelation { - yang-version 1.1; - namespace "urn:3gpp:sa5:_3gpp-nr-nrm-nrcellrelation"; - prefix "nrcellrel3gpp"; - - import _3gpp-common-yang-types { prefix types3gpp; } - import _3gpp-common-managed-function { prefix mf3gpp; } - import _3gpp-common-managed-element { prefix me3gpp; } - import _3gpp-common-top { prefix top3gpp; } - import _3gpp-nr-nrm-gnbcucpfunction { prefix gnbcucp3gpp; } - import _3gpp-nr-nrm-nrcellcu { prefix nrcellcu3gpp; } - - organization "3GPP SA5"; - description "Defines the YANG mapping of the NRCellRelation Information - Object Class (IOC) that is part of the NR Network Resource Model (NRM)."; - reference "3GPP TS 28.541 5G Network Resource Model (NRM)"; - - revision 2020-06-03 { reference S5-202333 ; } - revision 2020-04-23 { reference CR0281 ; } - revision 2019-10-28 { reference S5-193518 ; } - revision 2019-08-30 { - description "Initial revision"; - } - - - typedef EnergySavingCoverage { - type enumeration { - enum FULL; - enum NO; - enum PARTIAL; - } - } - - grouping NRCellRelationGrp { - description "Represents the NRCellRelation IOC."; - reference "3GPP TS 28.541"; - - leaf nRTCI { - description "Target NR Cell Identifier. It consists of NR Cell - Identifier (NCI) and Physical Cell Identifier of the target NR cell - (nRPCI)."; - type uint64; - } - - container cellIndividualOffset { - description "A set of offset values for the neighbour cell. Used when - UE is in connected mode. Defined for rsrpOffsetSSB, rsrqOffsetSSB, - sinrOffsetSSB, rsrpOffsetCSI-RS, rsrqOffsetCSI-RS and - sinrOffsetCSI-RS."; - reference "cellIndividualOffset in MeasObjectNR in 3GPP TS 38.331"; - - leaf rsrpOffsetSsb { - description "Offset value of rsrpOffsetSSB."; - default 0; - type types3gpp:QOffsetRange; - } - - leaf rsrqOffsetSsb{ - description "Offset value of rsrqOffsetSSB."; - default 0; - type types3gpp:QOffsetRange; - } - - leaf sinrOffsetSsb { - description "Offset value of sinrOffsetSSB."; - default 0; - type types3gpp:QOffsetRange; - } - - leaf rsrpOffsetCsiRs{ - description "Offset value of rsrpOffsetCSI-RS."; - default 0; - type types3gpp:QOffsetRange; - } - - leaf rsrqOffsetCsiRs { - description "Offset value of rsrqOffsetCSI-RS."; - default 0; - type types3gpp:QOffsetRange; - } - - leaf sinrOffsetCsiRs { - description "Offset value of sinrOffsetCSI-RS."; - default 0; - type types3gpp:QOffsetRange; - } - } - - leaf nRFreqRelationRef { - description "Reference to a corresponding NRFreqRelation instance."; - mandatory true; - type types3gpp:DistinguishedName; - } - - leaf adjacentNRCellRef { - description "Reference to an adjacent NR cell (NRCellCU or - ExternalNRCellCU)."; - mandatory true; - type types3gpp:DistinguishedName; - } - - leaf isRemoveAllowed { - type boolean; - default true; - description "True if the ANR function in the node is allowed to remove this relation."; - } - - leaf isHOAllowed { - type boolean; - default true; - description "True if handovers are allowed over this relation."; - } - } - - leaf isESCoveredBy { - description "Indicates whether the adjacent cell - provides no, partial or full coverage for the parent cell - instance. Adjacent cells with this attribute equal to FULL are - recommended to be considered as candidate cells to take over the - coverage when the original cell is about to be changed to energy - saving state. All adjacent cells with this property equal - to PARTIAL are recommended to be considered as entirety of candidate - cells to take over the coverage when the original cell is about to be - changed to energy saving state."; - type EnergySavingCoverage; - } - - augment /me3gpp:ManagedElement/gnbcucp3gpp:GNBCUCPFunction/nrcellcu3gpp:NRCellCU { - - list NRCellRelation { - description "Represents a neighbour cell relation from a source cell - to a target cell, where the target cell is an NRCellCU or - ExternalNRCellCU instance."; - reference "3GPP TS 28.541"; - key id; - uses top3gpp:Top_Grp; - container attributes { - uses NRCellRelationGrp; - } - uses mf3gpp:ManagedFunctionContainedClasses; - } - } -} \ No newline at end of file diff --git a/yang-models/_3gpp-nr-nrm-nrfreqrelation.yang b/yang-models/_3gpp-nr-nrm-nrfreqrelation.yang deleted file mode 100755 index 18ac8edec..000000000 --- a/yang-models/_3gpp-nr-nrm-nrfreqrelation.yang +++ /dev/null @@ -1,245 +0,0 @@ -module _3gpp-nr-nrm-nrfreqrelation { - yang-version 1.1; - namespace "urn:3gpp:sa5:_3gpp-nr-nrm-nrfreqrelation"; - prefix "nrfreqrel3gpp"; - - import _3gpp-common-yang-types { prefix types3gpp; } - import _3gpp-common-managed-function { prefix mf3gpp; } - import _3gpp-common-managed-element { prefix me3gpp; } - import _3gpp-common-top { prefix top3gpp; } - import _3gpp-nr-nrm-gnbcucpfunction { prefix gnbcucp3gpp; } - import _3gpp-nr-nrm-nrcellcu { prefix nrcellcu3gpp; } - - organization "3GPP SA5"; - description "Defines the YANG mapping of the NRFreqRelation Information - Object Class (IOC) that is part of the NR Network Resource Model (NRM)."; - reference "3GPP TS 28.541 5G Network Resource Model (NRM)"; - - revision 2020-04-23 { reference CR0281 ; } - revision 2019-10-28 { reference S5-193518 ; } - revision 2019-06-17 { - description "Initial revision"; - } - - grouping NRFreqRelationGrp { - description "Represents the NRFreqRelation IOC."; - reference "3GPP TS 28.541"; - - container offsetMO { - description "A set of offset values applicable to all measured cells - with reference signal(s) indicated in corresponding MeasObjectNR. It - is used to indicate a cell, beam or measurement object specific offset - to be applied when evaluating candidates for cell re-selection or when - evaluating triggering conditions for measurement reporting. It is - defined for rsrpOffsetSSB, rsrqOffsetSSB, sinrOffsetSSB, - rsrpOffsetCSI-RS, rsrqOffsetCSI-RS and sinrOffsetCSI-RS."; - reference "offsetMO in MeasObjectNR in 3GPP TS 38.331"; - - leaf rsrpOffsetSsb { - description "Offset value of rsrpOffsetSSB."; - default 0; - type types3gpp:QOffsetRange; - } - - leaf rsrqOffsetSsb { - description "Offset value of rsrqOffsetSSB."; - default 0; - type types3gpp:QOffsetRange; - } - - leaf sinrOffsetSsb { - description "Offset value of sinrOffsetSSB."; - default 0; - type types3gpp:QOffsetRange; - } - - leaf rsrpOffsetCsiRs { - description "Offset value of rsrpOffsetCSI-RS."; - default 0; - type types3gpp:QOffsetRange; - } - - leaf rsrqOffsetCsiRs { - description "Offset value of rsrqOffsetCSI-RS."; - default 0; - type types3gpp:QOffsetRange; - } - - leaf sinrOffsetCsiRs { - description "Offset value of sinrOffsetCSI-RS."; - default 0; - type types3gpp:QOffsetRange; - } - } - - leaf-list blackListEntry { - description "A list of Physical Cell Identities (PCIs) that are - blacklisted in NR measurements."; - reference "3GPP TS 38.331"; - min-elements 0; - type uint16 { range "0..1007"; } - } - - leaf-list blackListEntryIdleMode { - description "A list of Physical Cell Identities (PCIs) that are - blacklisted in SIB4 and SIB5."; - min-elements 0; - type uint16 { range "0..1007"; } - } - - leaf cellReselectionPriority { - description "The absolute priority of the carrier frequency used by the - cell reselection procedure. Value 0 means lowest priority. The value - must not already used by other RAT, i.e. equal priorities between RATs - are not supported. The UE behaviour when no value is entered is - specified in subclause 5.2.4.1 of 3GPP TS 38.304."; - reference "CellReselectionPriority in 3GPP TS 38.331, priority in - 3GPP TS 38.304"; - type uint32; - default 0; - } - - leaf cellReselectionSubPriority { - description "Indicates a fractional value to be added to the value of - cellReselectionPriority to obtain the absolute priority of the - concerned carrier frequency for E-UTRA and NR."; - reference "3GPP TS 38.331"; - type uint8 { range "2 | 4 | 6 | 8"; } - units "0.1"; - } - - leaf pMax { - description "Used for calculation of the parameter Pcompensation - (defined in 3GPP TS 38.304), at cell reselection to a cell."; - reference "PEMAX in 3GPP TS 38.101-1"; - mandatory false; - type int32 { range "-30..33"; } - units dBm; - } - - leaf qOffsetFreq { - description "The frequency specific offset applied when evaluating - candidates for cell reselection."; - mandatory false; - type types3gpp:QOffsetRange; - default 0; - } - - leaf qQualMin { - description "Indicates the minimum required quality level in the cell. - Value 0 means that it is not sent and UE applies in such case the - (default) value of negative infinity for Qqualmin. Sent in SIB3 or - SIB5."; - reference "3GPP TS 38.304"; - type int32 { range "-34..-3 | 0"; } - units dB; - default 0; - } - - leaf qRxLevMin { - description "Indicates the required minimum received Reference Symbol - Received Power (RSRP) level in the NR frequency for cell reselection. - Broadcast in SIB3 or SIB5, depending on whether the related frequency - is intra- or inter-frequency. Resolution is 2."; - reference "3GPP TS 38.304"; - mandatory true; - type int32 { range "-140..-44"; } - units dBm; - } - - leaf threshXHighP { - description "Specifies the Srxlev threshold used by the UE when - reselecting towards a higher priority RAT/frequency than the current - serving frequency. Each frequency of NR and E-UTRAN might have a - specific threshold. Resolution is 2."; - reference "ThreshX, HighP in 3GPP TS 38.304"; - mandatory true; - type int32 { range "0..62"; } - units dB; - } - - leaf threshXHighQ { - description "Specifies the Squal threshold used by the UE when - reselecting towards a higher priority RAT/frequency than the current - serving frequency. Each frequency of NR and E-UTRAN might have a - specific threshold."; - reference "ThreshX, HighQ in 3GPP TS 38.304"; - mandatory true; - type int32 { range "0..31"; } - units dB; - } - - leaf threshXLowP { - description "Specifies the Srxlev threshold used by the UE when - reselecting towards a lower priority RAT/frequency than the current - serving frequency. Each frequency of NR and E-UTRAN might have a - specific threshold. Resolution is 2."; - reference "ThreshX, LowP in 3GPP TS 38.304"; - mandatory true; - type int32 { range "0..62"; } - units dB; - } - - leaf threshXLowQ { - description "Specifies the Squal threshold used by the UE when - reselecting towards a lower priority RAT/frequency than the current - serving frequency. Each frequency of NR and E-UTRAN might have a - specific threshold."; - reference "ThreshX, LowQ in 3GPP TS 38.304"; - mandatory true; - type int32 { range "0..31"; } - units dB; - } - - leaf tReselectionNR { - description "Cell reselection timer for NR."; - reference "TreselectionRAT for NR in 3GPP TS 38.331"; - mandatory true; - type int32 { range "0..7"; } - units s; - } - - leaf tReselectionNRSfHigh { - description "The attribute tReselectionNr (parameter TreselectionNR in - 3GPP TS 38.304) is multiplied with this scaling factor if the UE is - in high mobility state."; - reference "Speed dependent ScalingFactor for TreselectionNR for high - mobility state in 3GPP TS 38.304"; - mandatory true; - type uint8 { range "25 | 50 | 75 | 100"; } - units %; - } - - leaf tReselectionNRSfMedium { - description "The attribute tReselectionNr (parameter TreselectionNR in - 3GPP TS 38.304) multiplied with this scaling factor if the UE is in - medium mobility state."; - reference "Speed dependent ScalingFactor for TreselectionNR for medium - mobility state in 3GPP TS 38.304"; - mandatory true; - type uint8 { range "25 | 50 | 75 | 100"; } - units %; - } - - leaf nRFrequencyRef { - description "Reference to a corresponding NRFrequency instance."; - mandatory true; - type types3gpp:DistinguishedName; - } - } - - augment /me3gpp:ManagedElement/gnbcucp3gpp:GNBCUCPFunction/nrcellcu3gpp:NRCellCU { - - list NRFreqRelation { - description "Together with the target NRFrequency, it represents the - frequency properties applicable to the referencing NRFreqRelation."; - reference "3GPP TS 28.541"; - key id; - uses top3gpp:Top_Grp; - container attributes { - uses NRFreqRelationGrp; - } - uses mf3gpp:ManagedFunctionContainedClasses; - } - } -} \ No newline at end of file diff --git a/yang-models/_3gpp-nr-nrm-nrfrequency.yang b/yang-models/_3gpp-nr-nrm-nrfrequency.yang deleted file mode 100755 index 77c905ead..000000000 --- a/yang-models/_3gpp-nr-nrm-nrfrequency.yang +++ /dev/null @@ -1,71 +0,0 @@ -module _3gpp-nr-nrm-nrfrequency { - yang-version 1.1; - namespace "urn:3gpp:sa5:_3gpp-nr-nrm-nrnetwork-nrfrequency"; - prefix "nrfreq3gpp"; - - import _3gpp-common-managed-function { prefix mf3gpp; } - import _3gpp-nr-nrm-nrnetwork { prefix nrnet3gpp; } - import _3gpp-common-subnetwork { prefix subnet3gpp; } - import _3gpp-common-top { prefix top3gpp; } - - organization "3GPP SA5"; - description "Defines the YANG mapping of the NRFrequency Information Object - Class (IOC) that is part of the NR Network Resource Model (NRM)."; - reference "3GPP TS 28.541 5G Network Resource Model (NRM)"; - - revision 2019-10-28 { reference S5-193518 ; } - revision 2019-06-17 { - description "Initial revision"; - } - - grouping NRFrequencyGrp { - description "Represents the NRFrequency IOC."; - reference "3GPP TS 28.541"; - uses mf3gpp:ManagedFunctionGrp; - - leaf absoluteFrequencySSB { - description "The absolute frequency applicable for a downlink NR carrier - frequency associated with the SSB, in terms of NR-ARFCN."; - mandatory true; - type uint32 { range "0.. 3279165"; } - } - - leaf sSBSubCarrierSpacing { - description "Sub-carrier spacing of the SSB."; - mandatory true; - type uint8 { range "15 | 30 | 60 | 120"; } - units "kHz"; - } - - leaf-list multiFrequencyBandListNR { - description "List of additional frequency bands the frequency belongs to. - The list is automatically set by the gNB."; - config false; - min-elements 0; - type uint16 { range "1..256"; } - } - } - - grouping NRFrequencyWrapper { - list NRFrequency { - description "Represents certain NR frequency properties."; - reference "3GPP TS 28.541"; - key id; - uses top3gpp:Top_Grp; - container attributes { - uses NRFrequencyGrp; - } - uses mf3gpp:ManagedFunctionContainedClasses; - } - } - - augment "/subnet3gpp:SubNetwork" { - if-feature subnet3gpp:ExternalsUnderSubNetwork ; - uses NRFrequencyWrapper; - } - - augment "/nrnet3gpp:NRNetwork" { - if-feature nrnet3gpp:ExternalsUnderNRNetwork; - uses NRFrequencyWrapper; - } -} \ No newline at end of file diff --git a/yang-models/_3gpp-nr-nrm-nrnetwork.yang b/yang-models/_3gpp-nr-nrm-nrnetwork.yang deleted file mode 100755 index 0e0bfc559..000000000 --- a/yang-models/_3gpp-nr-nrm-nrnetwork.yang +++ /dev/null @@ -1,39 +0,0 @@ -module _3gpp-nr-nrm-nrnetwork { - yang-version 1.1; - namespace "urn:3gpp:sa5:_3gpp-nr-nrm-nrnetwork"; - prefix "nrnet3gpp"; - - import _3gpp-common-subnetwork { prefix subnet3gpp; } - import _3gpp-common-top { prefix top3gpp; } - - organization "3GPP SA5"; - description "Defines the YANG mapping of the NRNetwork Information Object - Class (IOC) that is part of the NR Network Resource Model (NRM)."; - reference "3GPP TS 28.541 5G Network Resource Model (NRM)"; - - revision 2019-06-17 { - description "Initial revision"; - } - - feature ExternalsUnderNRNetwork { - description "Classes representing external entities like NRFrequency, - ExternalGNBCUCPFunction, ExternalGNBDUFunction - are contained under a NRNetwork list/class."; - } - - grouping NRNetworkGrp { - description "Represents the NRNetwork IOC."; - reference "3GPP TS 28.541"; - uses subnet3gpp:SubNetworkGrp; - } - - list NRNetwork { - description "A subnetwork containing gNB external NR entities."; - reference "3GPP TS 28.541"; - key id; - uses top3gpp:Top_Grp; - container attributes { - uses NRNetworkGrp; - } - } -} \ No newline at end of file diff --git a/yang-models/_3gpp-nr-nrm-nrsectorcarrier.yang b/yang-models/_3gpp-nr-nrm-nrsectorcarrier.yang deleted file mode 100755 index 6153b0458..000000000 --- a/yang-models/_3gpp-nr-nrm-nrsectorcarrier.yang +++ /dev/null @@ -1,119 +0,0 @@ -module _3gpp-nr-nrm-nrsectorcarrier { - yang-version 1.1; - namespace "urn:3gpp:sa5:_3gpp-nr-nrm-nrnetwork-nrsectorcarrier"; - prefix "nrsectcarr3gpp"; - - import _3gpp-common-yang-types { prefix types3gpp; } - import _3gpp-common-managed-function { prefix mf3gpp; } - import _3gpp-common-managed-element { prefix me3gpp; } - import _3gpp-nr-nrm-gnbdufunction { prefix gnbdu3gpp; } - import _3gpp-common-top { prefix top3gpp; } - - organization "3GPP SA5"; - contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; - description "Defines the YANG mapping of the NRSectorCarrier Information - Object Class (IOC) that is part of the NR Network Resource Model (NRM)."; - reference "3GPP TS 28.541 5G Network Resource Model (NRM)"; - - revision 2020-05-28 { reference CR-0316 ; } - revision 2019-10-28 { reference S5-193518 ; } - revision 2019-06-17 { - description "Initial revision"; - } - - grouping NRSectorCarrierGrp { - description "Represents the NRSectorCarrier IOC."; - reference "3GPP TS 28.541"; - uses mf3gpp:ManagedFunctionGrp; - - leaf txDirection { - description "Indicates if the transmission direction is downlink, - uplink, or both downlink and uplink."; - mandatory true; - type types3gpp:TxDirection; - } - - leaf configuredMaxTxPower { - description "Maximum transmisssion power at the antenna port for all - downlink channels, used simultaneously in a cell, added together. - Condition: The sector-carrier has a downlink and the - configuration of Tx power at antenna port reference point is supported."; - mandatory true; - type int32; - units mW; - } - - leaf configuredMaxTxEIRP { - type int64; - units dBm; - mandatory true; - description "The maximum emitted isotroptic radiated power (EIRP) in dBm - for all downlink channels, used simultaneously in a cell, added together. - Condition: the sector-carrier has a downlink and the - configuration of emitted isotropic radiated power is supported"; - } - - leaf arfcnDL { - description "NR Absolute Radio Frequency Channel Number (NR-ARFCN) - for downlink. - Condition: The sector-carrier has a downlink AND the value - differs from the referring cell's value of arfcnDL."; - reference "3GPP TS 38.104"; - mandatory true; - type int32 { range "0..3279165"; } - } - - leaf arfcnUL { - description "NR Absolute Radio Frequency Channel Number (NR-ARFCN) - for uplink. - Condition: The sector-carrier has an uplink AND the value - differs from the referring cell's value of arfcnUL."; - reference "3GPP TS 38.104"; - mandatory true; - type int32 { range "0..3279165"; } - } - - leaf bSChannelBwDL { - description "Base station channel bandwitdth for downlink. - Condition: The sector-carrier has a downlink AND the value - differs from the referring cell's value of bSChannelBwDL."; - reference "3GPP TS 38.104"; - mandatory true; - type int32 { range "5 | 10 | 15 | 20 | 30 | 40 | 50 | 60 | 70 | 80 | - 90 | 100"; } - units MHz; - } - - leaf bSChannelBwUL { - description "Base station channel bandwitdth for uplink."; - reference "3GPP TS 38.104"; - mandatory true; - type int32 { range "5 | 10 | 15 | 20 | 30 | 40 | 50 | 60 | 70 | 80 | - 90 | 100"; } - units MHz; - } - - leaf sectorEquipmentFunctionRef { - description "Reference to corresponding SectorEquipmentFunction - instance."; - reference "3GPP TS 23.622"; - mandatory true; - type types3gpp:DistinguishedName; - } - } - - augment "/me3gpp:ManagedElement/gnbdu3gpp:GNBDUFunction" { - - list NRSectorCarrier { - description "Represents the resources of each transmission point - included in the cell."; - reference "3GPP TS 28.541"; - key id; - uses top3gpp:Top_Grp; - container attributes { - uses NRSectorCarrierGrp; - } - uses mf3gpp:ManagedFunctionContainedClasses; - } - } -} \ No newline at end of file diff --git a/yang-models/_3gpp-nr-nrm-rrmpolicy.yang b/yang-models/_3gpp-nr-nrm-rrmpolicy.yang deleted file mode 100755 index 5a90b9163..000000000 --- a/yang-models/_3gpp-nr-nrm-rrmpolicy.yang +++ /dev/null @@ -1,120 +0,0 @@ -module _3gpp-nr-nrm-rrmpolicy { - yang-version 1.1; - namespace "urn:3gpp:sa5:3gpp-nr-nrm-nrnetwork-rrmpolicy"; - prefix "nrrrmpolicy3gpp"; - - import _3gpp-common-yang-types { prefix types3gpp; } - import _3gpp-common-top { prefix top3gpp; } - - organization "3GPP SA5"; - description "Defines the YANG mapping of the RRMPolicy abstract class that is part of the NR Network Resource Model (NRM)."; - reference "3GPP TS 28.541 5G Network Resource Model (NRM)"; - - revision 2020-04-28 { - reference "CR0285"; - } - revision 2020-02-14 { - description "Initial revision"; - } - - grouping rRMPolicyMemberGrp { - description "This data type represents an RRM Policy member that will be part of a - rRMPolicyMemberList. A RRMPolicyMember is defined by its pLMNId and sNSSAI (S-NSSAI). - The members in a rRMPolicyMemberList are assigned a specific amount of RRM resources - based on settings in RRMPolicy."; - uses types3gpp:PLMNId; - leaf sNSSAI { - type types3gpp:SNssai; - } - } - - typedef CyclicPrefix { - type enumeration { - enum NORMAL; - enum EXTENDED; - } - } - - grouping RRMPolicy_Grp { - description "This IOC represents the properties of an abstract RRMPolicy. The RRMPolicy_ IOC - needs to be subclassed to be instantiated. It defines two attributes apart from those - inherited from Top IOC, the resourceType attribute defines type of resource (PRB, RRC - connected users, DRB usage etc.) and the rRMPolicyMemberList attribute defines the - RRMPolicyMember(s)that are subject to this policy. An RRM resource (defined in resourceType - attribute) is located in NRCellDU, NRCellCU, GNBDUFunction, GNBCUCPFunction or in - GNBCUUPFunction. The RRMPolicyRatio IOC is one realization of a RRMPolicy_ IOC, see the - inheritance in TS 28.541 Figure 4.2.1.2-1. This RRM framework allows adding new policies, - both standardized (like RRMPolicyRatio) or as vendor specific, by inheriting from the - abstract RRMPolicy_ IOC."; - leaf resourceType { - description "The resourceType attribute defines type of resource (PRB, RRC connected users, - DRB usage etc.) that is subject to policy. Valid values are 'PRB', 'RRC' or 'DRB'"; - mandatory true; - type string; - } - - list rRMPolicyMemberList{ - description "It represents the list of RRMPolicyMember (s) that the managed object - is supporting. A RRMPolicyMember <> include the PLMNId <> - and S-NSSAI <>." ; - min-elements 1; - key "idx"; - leaf idx { type uint32; } - uses rRMPolicyMemberGrp; - } - } // grouping - - - grouping RRMPolicyRatioGrp { - description "Represents the RRMPolicyRatio concrete IOC."; - - uses RRMPolicy_Grp; // Inherits RRMPolicy_ - - - leaf rRMPolicyMaxRatio { - description " This attribute specifies the maximum percentage of radio - resource that can be used by the associated rRMPolicyMemberList. - The maximum percentage of radio resource include at least one of - the shared resources, prioritized resources and dedicated resources. - The sum of the rRMPolicyMaxRatio values assigned to all RRMPolicyRatio(s) - name-contained by same ManagedEntity can be greater that 100."; - default 100; - type uint8 { range "0..100"; } - units percent; - } - - leaf rRMPolicyMinRatio { - description " This attribute specifies the minimum percentage of radio resources - that can be used by the associated rRMPolicyMemberList. The minimum percentage - of radio resources including at least one of prioritized resources and dedicated - resources. The sum of the rRMPolicyMinRatio values assigned to all RRM PolicyRatio(s) - name-contained by same ManagedEntity shall be less or equal 100."; - default 0; - type uint8 { range "0..100"; } - units percent; - } - - leaf rRMPolicyDedicatedRatio { - description " This attribute specifies the percentage of radio resource - that dedicatedly used by the associated rRMPolicyMemberList. The sum of - the rRMPolicyDeidctaedRatio values assigned to all RRMPolicyRatio(s) - name-contained by same ManagedEntity shall be less or equal 100. "; - default 0; - type uint8 { range "0..100"; } - units percent; - } - } - - list RRMPolicyRatio { - description " The RRMPolicyRatio IOC is one realization of a RRMPolicy_ IOC, see the - inheritance in Figure 4.2.1.2-1. This RRM framework allows adding new policies, both - standardized (like RRMPolicyRatio) or as vendor specific, by inheriting from the - abstract RRMPolicy_ IOC. For details see subclause 4.3.36."; - key id; - uses top3gpp:Top_Grp; - container attributes { - uses RRMPolicyRatioGrp; - } - } - -} \ No newline at end of file -- GitLab From c3d86676f2bf066c1fea74df0c0e017e92caf7d5 Mon Sep 17 00:00:00 2001 From: "U-ERICSSON\\ETHBLL" Date: Fri, 16 Apr 2021 00:28:35 +0200 Subject: [PATCH 031/593] Add YANG files valid after SA91 --- yang-models/_3gpp-5g-common-yang-types.yang | 105 ++ .../_3gpp-5gc-nrm-FiveQiDscpMappingSet.yang | 58 + ...-5gc-nrm-GtpUPathQoSMonitoringControl.yang | 142 +++ .../_3gpp-5gc-nrm-QFQoSMonitoringControl.yang | 134 ++ yang-models/_3gpp-5gc-nrm-affunction.yang | 38 + yang-models/_3gpp-5gc-nrm-amffunction.yang | 89 ++ yang-models/_3gpp-5gc-nrm-amfregion.yang | 83 ++ yang-models/_3gpp-5gc-nrm-amfset.yang | 81 ++ yang-models/_3gpp-5gc-nrm-ausffunction.yang | 89 ++ .../_3gpp-5gc-nrm-configurable5qiset.yang | 125 ++ yang-models/_3gpp-5gc-nrm-dnfunction.yang | 39 + yang-models/_3gpp-5gc-nrm-dynamic5qiset.yang | 50 + yang-models/_3gpp-5gc-nrm-ep.yang | 646 ++++++++++ .../_3gpp-5gc-nrm-externalnrffunction.yang | 42 + .../_3gpp-5gc-nrm-externalnssffunction.yang | 43 + .../_3gpp-5gc-nrm-externalseppfunction.yang | 55 + yang-models/_3gpp-5gc-nrm-lmffunction.yang | 63 + yang-models/_3gpp-5gc-nrm-n3iwffunction.yang | 55 + yang-models/_3gpp-5gc-nrm-neffunction.yang | 68 + yang-models/_3gpp-5gc-nrm-nfprofile.yang | 1095 +++++++++++++++++ yang-models/_3gpp-5gc-nrm-nfservice.yang | 302 +++++ yang-models/_3gpp-5gc-nrm-ngeirfunction.yang | 80 ++ yang-models/_3gpp-5gc-nrm-nrffunction.yang | 88 ++ yang-models/_3gpp-5gc-nrm-nssffunction.yang | 87 ++ yang-models/_3gpp-5gc-nrm-nwdaffunction.yang | 86 ++ yang-models/_3gpp-5gc-nrm-pcffunction.yang | 97 ++ .../_3gpp-5gc-nrm-predefinedpccruleset.yang | 642 ++++++++++ yang-models/_3gpp-5gc-nrm-scpfunction.yang | 50 + yang-models/_3gpp-5gc-nrm-seppfunction.yang | 70 ++ yang-models/_3gpp-5gc-nrm-smffunction.yang | 102 ++ yang-models/_3gpp-5gc-nrm-smsffunction.yang | 62 + yang-models/_3gpp-5gc-nrm-udmfunction.yang | 86 ++ yang-models/_3gpp-5gc-nrm-udrfunction.yang | 78 ++ yang-models/_3gpp-5gc-nrm-udsffunction.yang | 79 ++ yang-models/_3gpp-5gc-nrm-upffunction.yang | 80 ++ yang-models/_3gpp-common-ep-rp.yang | 68 + yang-models/_3gpp-common-fm.yang | 408 ++++++ yang-models/_3gpp-common-managed-element.yang | 248 ++++ .../_3gpp-common-managed-function.yang | 311 +++++ yang-models/_3gpp-common-measurements.yang | 542 ++++++++ yang-models/_3gpp-common-subnetwork.yang | 214 ++++ .../_3gpp-common-subscription-control.yang | 209 ++++ yang-models/_3gpp-common-top.yang | 36 + yang-models/_3gpp-common-trace.yang | 895 ++++++++++++++ yang-models/_3gpp-common-yang-extensions.yang | 95 ++ yang-models/_3gpp-common-yang-types.yang | 512 ++++++++ yang-models/_3gpp-nr-nrm-beam.yang | 96 ++ yang-models/_3gpp-nr-nrm-bwp.yang | 104 ++ .../_3gpp-nr-nrm-cesmanagementfunction.yang | 64 + ...3gpp-nr-nrm-commonbeamformingfunction.yang | 62 + ...3gpp-nr-nrm-cpciconfigurationfunction.yang | 67 + .../_3gpp-nr-nrm-danrmanagementfunction.yang | 44 + .../_3gpp-nr-nrm-desmanagementfunction.yang | 261 ++++ yang-models/_3gpp-nr-nrm-dmrofunction.yang | 70 ++ ...3gpp-nr-nrm-dpciconfigurationfunction.yang | 69 ++ ...3gpp-nr-nrm-drachoptimizationfunction.yang | 120 ++ yang-models/_3gpp-nr-nrm-ep.yang | 256 ++++ .../_3gpp-nr-nrm-eutrancellrelation.yang | 160 +++ yang-models/_3gpp-nr-nrm-eutranetwork.yang | 61 + .../_3gpp-nr-nrm-eutranfreqrelation.yang | 208 ++++ yang-models/_3gpp-nr-nrm-eutranfrequency.yang | 64 + .../_3gpp-nr-nrm-externalamffunction.yang | 69 ++ .../_3gpp-nr-nrm-externalenbfunction.yang | 60 + .../_3gpp-nr-nrm-externaleutrancell.yang | 153 +++ .../_3gpp-nr-nrm-externalgnbcucpfunction.yang | 76 ++ .../_3gpp-nr-nrm-externalgnbcuupfunction.yang | 66 + .../_3gpp-nr-nrm-externalgnbdufunction.yang | 76 ++ .../_3gpp-nr-nrm-externalnrcellcu.yang | 85 ++ ...3gpp-nr-nrm-externalservinggwfunction.yang | 52 + .../_3gpp-nr-nrm-externalupffunction.yang | 51 + yang-models/_3gpp-nr-nrm-gnbcucpfunction.yang | 132 ++ yang-models/_3gpp-nr-nrm-gnbcuupfunction.yang | 172 +++ yang-models/_3gpp-nr-nrm-gnbdufunction.yang | 93 ++ yang-models/_3gpp-nr-nrm-nrcellcu.yang | 93 ++ yang-models/_3gpp-nr-nrm-nrcelldu.yang | 226 ++++ yang-models/_3gpp-nr-nrm-nrcellrelation.yang | 144 +++ yang-models/_3gpp-nr-nrm-nrfreqrelation.yang | 245 ++++ yang-models/_3gpp-nr-nrm-nrfrequency.yang | 71 ++ yang-models/_3gpp-nr-nrm-nrnetwork.yang | 39 + yang-models/_3gpp-nr-nrm-nrsectorcarrier.yang | 119 ++ yang-models/_3gpp-nr-nrm-rrmpolicy.yang | 122 ++ yang-models/_3gpp-ns-nrm-networkslice.yang | 74 ++ .../_3gpp-ns-nrm-networkslicesubnet.yang | 206 ++++ yang-models/_3gpp-ns-nrm-perfreq.yang | 170 +++ yang-models/_3gpp-ns-nrm-serviceprofile.yang | 569 +++++++++ yang-models/_3gpp-ns-nrm-sliceprofile.yang | 124 ++ 86 files changed, 13620 insertions(+) create mode 100755 yang-models/_3gpp-5g-common-yang-types.yang create mode 100755 yang-models/_3gpp-5gc-nrm-FiveQiDscpMappingSet.yang create mode 100755 yang-models/_3gpp-5gc-nrm-GtpUPathQoSMonitoringControl.yang create mode 100755 yang-models/_3gpp-5gc-nrm-QFQoSMonitoringControl.yang create mode 100755 yang-models/_3gpp-5gc-nrm-affunction.yang create mode 100755 yang-models/_3gpp-5gc-nrm-amffunction.yang create mode 100755 yang-models/_3gpp-5gc-nrm-amfregion.yang create mode 100755 yang-models/_3gpp-5gc-nrm-amfset.yang create mode 100755 yang-models/_3gpp-5gc-nrm-ausffunction.yang create mode 100755 yang-models/_3gpp-5gc-nrm-configurable5qiset.yang create mode 100755 yang-models/_3gpp-5gc-nrm-dnfunction.yang create mode 100755 yang-models/_3gpp-5gc-nrm-dynamic5qiset.yang create mode 100755 yang-models/_3gpp-5gc-nrm-ep.yang create mode 100755 yang-models/_3gpp-5gc-nrm-externalnrffunction.yang create mode 100755 yang-models/_3gpp-5gc-nrm-externalnssffunction.yang create mode 100755 yang-models/_3gpp-5gc-nrm-externalseppfunction.yang create mode 100755 yang-models/_3gpp-5gc-nrm-lmffunction.yang create mode 100755 yang-models/_3gpp-5gc-nrm-n3iwffunction.yang create mode 100755 yang-models/_3gpp-5gc-nrm-neffunction.yang create mode 100755 yang-models/_3gpp-5gc-nrm-nfprofile.yang create mode 100755 yang-models/_3gpp-5gc-nrm-nfservice.yang create mode 100755 yang-models/_3gpp-5gc-nrm-ngeirfunction.yang create mode 100755 yang-models/_3gpp-5gc-nrm-nrffunction.yang create mode 100755 yang-models/_3gpp-5gc-nrm-nssffunction.yang create mode 100755 yang-models/_3gpp-5gc-nrm-nwdaffunction.yang create mode 100755 yang-models/_3gpp-5gc-nrm-pcffunction.yang create mode 100755 yang-models/_3gpp-5gc-nrm-predefinedpccruleset.yang create mode 100755 yang-models/_3gpp-5gc-nrm-scpfunction.yang create mode 100755 yang-models/_3gpp-5gc-nrm-seppfunction.yang create mode 100755 yang-models/_3gpp-5gc-nrm-smffunction.yang create mode 100755 yang-models/_3gpp-5gc-nrm-smsffunction.yang create mode 100755 yang-models/_3gpp-5gc-nrm-udmfunction.yang create mode 100755 yang-models/_3gpp-5gc-nrm-udrfunction.yang create mode 100755 yang-models/_3gpp-5gc-nrm-udsffunction.yang create mode 100755 yang-models/_3gpp-5gc-nrm-upffunction.yang create mode 100755 yang-models/_3gpp-common-ep-rp.yang create mode 100755 yang-models/_3gpp-common-fm.yang create mode 100755 yang-models/_3gpp-common-managed-element.yang create mode 100755 yang-models/_3gpp-common-managed-function.yang create mode 100755 yang-models/_3gpp-common-measurements.yang create mode 100755 yang-models/_3gpp-common-subnetwork.yang create mode 100755 yang-models/_3gpp-common-subscription-control.yang create mode 100755 yang-models/_3gpp-common-top.yang create mode 100755 yang-models/_3gpp-common-trace.yang create mode 100755 yang-models/_3gpp-common-yang-extensions.yang create mode 100755 yang-models/_3gpp-common-yang-types.yang create mode 100755 yang-models/_3gpp-nr-nrm-beam.yang create mode 100755 yang-models/_3gpp-nr-nrm-bwp.yang create mode 100755 yang-models/_3gpp-nr-nrm-cesmanagementfunction.yang create mode 100755 yang-models/_3gpp-nr-nrm-commonbeamformingfunction.yang create mode 100755 yang-models/_3gpp-nr-nrm-cpciconfigurationfunction.yang create mode 100755 yang-models/_3gpp-nr-nrm-danrmanagementfunction.yang create mode 100755 yang-models/_3gpp-nr-nrm-desmanagementfunction.yang create mode 100755 yang-models/_3gpp-nr-nrm-dmrofunction.yang create mode 100755 yang-models/_3gpp-nr-nrm-dpciconfigurationfunction.yang create mode 100755 yang-models/_3gpp-nr-nrm-drachoptimizationfunction.yang create mode 100755 yang-models/_3gpp-nr-nrm-ep.yang create mode 100755 yang-models/_3gpp-nr-nrm-eutrancellrelation.yang create mode 100755 yang-models/_3gpp-nr-nrm-eutranetwork.yang create mode 100755 yang-models/_3gpp-nr-nrm-eutranfreqrelation.yang create mode 100755 yang-models/_3gpp-nr-nrm-eutranfrequency.yang create mode 100755 yang-models/_3gpp-nr-nrm-externalamffunction.yang create mode 100755 yang-models/_3gpp-nr-nrm-externalenbfunction.yang create mode 100755 yang-models/_3gpp-nr-nrm-externaleutrancell.yang create mode 100755 yang-models/_3gpp-nr-nrm-externalgnbcucpfunction.yang create mode 100755 yang-models/_3gpp-nr-nrm-externalgnbcuupfunction.yang create mode 100755 yang-models/_3gpp-nr-nrm-externalgnbdufunction.yang create mode 100755 yang-models/_3gpp-nr-nrm-externalnrcellcu.yang create mode 100755 yang-models/_3gpp-nr-nrm-externalservinggwfunction.yang create mode 100755 yang-models/_3gpp-nr-nrm-externalupffunction.yang create mode 100755 yang-models/_3gpp-nr-nrm-gnbcucpfunction.yang create mode 100755 yang-models/_3gpp-nr-nrm-gnbcuupfunction.yang create mode 100755 yang-models/_3gpp-nr-nrm-gnbdufunction.yang create mode 100755 yang-models/_3gpp-nr-nrm-nrcellcu.yang create mode 100755 yang-models/_3gpp-nr-nrm-nrcelldu.yang create mode 100755 yang-models/_3gpp-nr-nrm-nrcellrelation.yang create mode 100755 yang-models/_3gpp-nr-nrm-nrfreqrelation.yang create mode 100755 yang-models/_3gpp-nr-nrm-nrfrequency.yang create mode 100755 yang-models/_3gpp-nr-nrm-nrnetwork.yang create mode 100755 yang-models/_3gpp-nr-nrm-nrsectorcarrier.yang create mode 100755 yang-models/_3gpp-nr-nrm-rrmpolicy.yang create mode 100755 yang-models/_3gpp-ns-nrm-networkslice.yang create mode 100755 yang-models/_3gpp-ns-nrm-networkslicesubnet.yang create mode 100755 yang-models/_3gpp-ns-nrm-perfreq.yang create mode 100755 yang-models/_3gpp-ns-nrm-serviceprofile.yang create mode 100755 yang-models/_3gpp-ns-nrm-sliceprofile.yang diff --git a/yang-models/_3gpp-5g-common-yang-types.yang b/yang-models/_3gpp-5g-common-yang-types.yang new file mode 100755 index 000000000..9c07b5cf8 --- /dev/null +++ b/yang-models/_3gpp-5g-common-yang-types.yang @@ -0,0 +1,105 @@ +module _3gpp-5g-common-yang-types { + yang-version 1.1; + namespace "urn:3gpp:sa5:_3gpp-5g-common-yang-types"; + prefix "types5g3gpp"; + + + import _3gpp-common-yang-types { prefix types3gpp; } + + organization "3GPP SA5"; + contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; + description "The model defines common types for 5G networks and + network slicing."; + reference "3GPP TS 28.541"; + + revision 2020-11-05 { reference CR-0412 ; } + revision 2019-10-20 { reference "Initial version."; } + + grouping SNssai { + description + "Single Network Slice Selection Assistance Information(S-NSSAI)"; + reference "3GPP TS 23.003"; + + leaf sd { + description "Slice Differentiator + If not needed, the value can be set to FFFFFF."; + type string{ + length 6; + pattern '[a-fA-F0-9]*'; + } + reference "3GPP TS 23.003"; + } + + leaf sst { + type uint8; + description "Slice/Service Type. + Values 0 to 127 belong to standardized SST range and are defined in + 3GPP TS 23.501. Values 128 to 255 belong to operator-specific range."; + } + } + + grouping PLMNInfo { + description "The PLMNInfo data type define a S-NSSAI member in a specific + PLMNId, and it have two attributes PLMNId and S-NSSAI (PLMNId, S-NSSAI). + The PLMNId represents a data type that is comprised of mcc + (mobile country code) and mnc (mobile network code), (See TS 23.003 + subclause 2.2 and 12.1) and S-NSSAI represents an data type, that is + comprised of an SST (Slice/Service type) and an optional + SD (Slice Differentiator) field"; + uses types3gpp:PLMNId; + uses SNssai; + } + + typedef CommModelType { + reference "3GPP TS 23501"; + type enumeration { + enum DIRECT_COMMUNICATION_WO_NRF { + value 0; + description "Directly communicate to other pre-configured NF service."; + } + + enum DIRECT_COMMUNICATION_WITH_NRF { + value 1; + description "Directly communicate to other NF service discovered + by NRF."; + } + + enum INDIRECT_COMMUNICATION_WO_DEDICATED_DISCOVERY { + value 2; + description "Communicate to pre-configured other NF service through + SCP as a proxy."; + } + + enum INDIRECT_COMMUNICATION_WITH_DEDICATED_DISCOVERY { + value 3; + description "Communication to NF service discovered by NRF through SCP as a proxy."; + } + + } + } + + grouping CommModel { + leaf groupId { + type uint16; + } + leaf commModelType { + type CommModelType; + } + leaf-list targetNFServiceList { + type types3gpp:DistinguishedName; + } + leaf commModelConfiguration { + type string; + } + } + + grouping SupportedFunc { + leaf function { + type string; + } + leaf policy { + type string; + } + } + +} \ No newline at end of file diff --git a/yang-models/_3gpp-5gc-nrm-FiveQiDscpMappingSet.yang b/yang-models/_3gpp-5gc-nrm-FiveQiDscpMappingSet.yang new file mode 100755 index 000000000..fabfe4336 --- /dev/null +++ b/yang-models/_3gpp-5gc-nrm-FiveQiDscpMappingSet.yang @@ -0,0 +1,58 @@ +module _3gpp-5gc-nrm-FiveQiDscpMappingSet { + yang-version 1.1; + + namespace urn:3gpp:sa5:_3gpp-5gc-nrm-FiveQiDscpMappingSet; + prefix FiveQiDscpMapping3gpp; + + import _3gpp-common-top { prefix top3gpp; } + import _3gpp-common-managed-element { prefix me3gpp; } + import _3gpp-5gc-nrm-smffunction { prefix smf3gpp; } + + organization "3gpp SA5"; + contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; + description " This IOC represents the set of mapping between 5QIs and DSCP."; + reference "3GPP TS 28.541"; + + revision 2020-08-03 { reference "CR-0321"; } + revision 2020-05-27 { reference "CR-0287"; } + + grouping FiveQiDscpMapping { + leaf-list fiveQIValues { + type uint32 { + range 0..255 ; + } + min-elements 1; + description " Identifies the 5QI values that are mapped to a same DSCP, as specified in TS 28.541."; + } + + leaf dscp { + type uint32 { + range 0..255 ; + } + mandatory true; + } + } + + grouping FiveQiDscpMappingSetGrp { + description "Represents the FiveQiDscpMappingSet IOC."; + list FiveQiDscpMappingList { + key "dscp"; + uses FiveQiDscpMapping; + } + } + + grouping FiveQiDscpMappingSetSubtree { + list FiveQiDscpMappingSet { + description "Specifies the mapping between 5QIs and DSCPs."; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses FiveQiDscpMappingSetGrp; + } + } + } + + augment "/me3gpp:ManagedElement/smf3gpp:SMFFunction" { + uses FiveQiDscpMappingSetSubtree; + } +} \ No newline at end of file diff --git a/yang-models/_3gpp-5gc-nrm-GtpUPathQoSMonitoringControl.yang b/yang-models/_3gpp-5gc-nrm-GtpUPathQoSMonitoringControl.yang new file mode 100755 index 000000000..d29d6d21a --- /dev/null +++ b/yang-models/_3gpp-5gc-nrm-GtpUPathQoSMonitoringControl.yang @@ -0,0 +1,142 @@ +module _3gpp-5gc-nrm-GtpUPathQoSMonitoringControl { + yang-version 1.1; + + namespace urn:3gpp:sa5:_3gpp-5gc-nrm-GtpUPathQoSMonitoringControl; + prefix gtpUPathQMCtrl3gpp; + + import _3gpp-common-managed-element { prefix me3gpp; } + import _3gpp-5g-common-yang-types { prefix types5g3gpp; } + import _3gpp-5gc-nrm-smffunction { prefix smf3gpp; } + import _3gpp-common-top { prefix top3gpp; } + + organization "3gpp SA5"; + contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; + description "This IOC represents the capabilities and properties for control + of GTP-U path QoS monitoring defined in 3GPP TS 23.501."; + reference "3GPP TS 28.541"; + + revision 2020-11-05 { reference CR-0412 ; } + revision 2020-09-30 { reference "CR-0393"; } + revision 2020-08-03 { reference "CR-0321"; } + revision 2020-04-10 { reference "S5-202103"; } + + grouping GtpUPathDelayThresholdsType { + description "Thresholds for reporting the packet delay for GTP-U path QoS + monitoring "; + reference "3GPP TS 29.244"; + leaf n3AveragePacketDelayThreshold { + mandatory true; + type uint32; + } + leaf n3MinPacketDelayThreshold { + mandatory true; + type uint32; + } + leaf n3MaxPacketDelayThreshold { + mandatory true; + type uint32; + } + leaf n9AveragePacketDelayThreshold { + mandatory true; + type uint32; + } + leaf n9MinPacketDelayThreshold { + mandatory true; + type uint32; + } + leaf n9MaxPacketDelayThreshold { + mandatory true; + type uint32; + } + } + + grouping GtpUPathQoSMonitoringControlGrp { + description "Represents the GtpUPathQoSMonitoringControl IOC."; + + leaf gtpUPathQoSMonitoringState { + description "The state of GTP-U path QoS monitoring."; + mandatory true; + type enumeration { + enum ENABLED; + enum DISABLED; + } + } + + list gtpUPathMonitoredSNSSAIs { + key "sd sst"; + description "The S-NSSAIs for which the the GTP-U path QoS monitoring is + to be performed."; + reference "3GPP TS 23.003"; + uses types5g3gpp:SNssai; + } + + leaf-list monitoredDSCPs { + description "The DSCPs for which the GTP-U path QoS monitoring is to be + performed."; + reference "3GPP TS 29.244"; + type uint32; + } + + leaf isEventTriggeredGtpUPathMonitoringSupported { + description "It indicates whether the event triggered GTP-U path QoS + monitoring reporting based on thresholds is supported."; + mandatory true; + reference "3GPP TS 29.244"; + type boolean; + } + + leaf isPeriodicGtpUMonitoringSupported { + description "It indicates whether the periodic GTP-U path QoS monitoring + reporting is supported."; + mandatory true; + reference "3GPP TS 29.244"; + type boolean; + } + + leaf isImmediateGtpUMonitoringSupported { + description "It indicates whether the immediate GTP-U path QoS monitoring + reporting is supported."; + mandatory true; + reference "3GPP TS 29.244"; + type boolean; + } + + list gtpUPathDelayThresholds { + key n3AveragePacketDelayThreshold; + // if max-elements is increased later, the key may need to be modified + min-elements 1; + max-elements 1; + description "It specifies the thresholds for reporting the packet delay + for the GTO-U path QoS monitoring."; + uses GtpUPathDelayThresholdsType; + } + + leaf gtpUPathMinimumWaitTime { + description "It specifies the minimum waiting time (in seconds) between + two consecutive reports for event triggered GTP-U path QoS monitoring + reporting."; + type uint32; + } + + leaf gtpUPathMeasurementPeriod { + description "It specifies the period (in seconds) for reporting the packet + delay for GTP-U path QoS monitoring."; + type uint32; + } + } + + augment "/me3gpp:ManagedElement/smf3gpp:SMFFunction" { + + list GtpUPathQoSMonitoringControl { + description "Specifies the capabilities and properties for control of + GTP-U path QoS monitoring. For more information about the GTP-U path + QoS monitoring."; + reference "3GPP TS 23.501"; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses GtpUPathQoSMonitoringControlGrp; + } + } + } +} \ No newline at end of file diff --git a/yang-models/_3gpp-5gc-nrm-QFQoSMonitoringControl.yang b/yang-models/_3gpp-5gc-nrm-QFQoSMonitoringControl.yang new file mode 100755 index 000000000..a7290eb81 --- /dev/null +++ b/yang-models/_3gpp-5gc-nrm-QFQoSMonitoringControl.yang @@ -0,0 +1,134 @@ +module _3gpp-5gc-nrm-QFQoSMonitoringControl { + yang-version 1.1; + + namespace urn:3gpp:sa5:_3gpp-5gc-nrm-QFQoSMonitoringControl; + prefix qFQMCtrl3gpp; + + import _3gpp-common-managed-element { prefix me3gpp; } + import _3gpp-5gc-nrm-smffunction { prefix smf3gpp; } + import _3gpp-common-top { prefix top3gpp; } + import _3gpp-5g-common-yang-types { prefix types5g3gpp; } + + organization "3gpp SA5"; contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; + description "This IOC represents the capabilities and properties for control + of QoS monitoring per QoS flow per UE for URLLC service defined + +in 3GPP TS 23.501."; + reference "3GPP TS 28.541"; + + revision 2020-11-05 { reference CR-0412 ; } + revision 2020-08-03 { reference "CR-0321"; } + revision 2020-04-10 { reference "S5-202101"; } + + grouping QFPacketDelayThresholdsTypeGrp { + description "Represents the QFPacketDelayThresholdsType"; + leaf thresholdDl { + type uint32; + units milliseconds; + description "Downlink threshold"; + } + + leaf thresholdUl { + type uint32; + units milliseconds; + description "Uplink threshold"; + } + + leaf thresholdRtt { + type uint32; + units milliseconds; + description "Round trip threshold"; + } + } + + grouping QFQoSMonitoringControlGrp { + description "Represents the QFQoSMonitoringControl IOC."; + reference "3GPP TS 28.541"; + + leaf qFQoSMonitoringState { + description "The state of QoS monitoring per QoS flow per UE."; + mandatory true; + type enumeration { + enum ENABLED; + enum DISABLED; + } + } + + list qFMonitoredSNSSAIs { + description "The S-NSSAIs for which the QoS monitoring per QoS flow + per UE is to be performed."; + reference "3GPP TS 23.003"; + key "sd sst"; + uses types5g3gpp:SNssai;} + + leaf-list qFMonitored5QIs { + description "The 5QIs for which the QoS monitoring per QoS flow + per UE is to be performed."; + reference "3GPP TS 23.501"; + type uint32 { + range "0..255"; + } + } + + leaf isEventTriggeredQFMonitoringSupported { + description "It indicates whether the event based QoS monitoring + reporting per QoS flow per UE is supported."; + mandatory true; + reference "3GPP TS 29.244"; + type boolean; + } + + leaf isPeriodicQFMonitoringSupported { + description "It indicates whether the periodic QoS monitoring reporting + per QoS flow per UE is supported."; + mandatory true; + reference "3GPP TS 29.244"; + type boolean; + } + + leaf isSessionReleasedQFMonitoringSupported { + description "It indicates whether the session release based QoS monitoring + reporting per QoS flow per UE is supported."; + mandatory true; + reference "3GPP TS 29.244"; + type boolean; + } + + list qFPacketDelayThresholds { + key "idx"; + min-elements 1; + max-elements 1; + description "It specifies the thresholds for reporting the packet delay + between PSA and UE for QoS monitoring per QoS flow per UE."; + + leaf idx { type uint32 ; } + uses QFPacketDelayThresholdsTypeGrp; + } + + leaf qFMinimumWaitTime { + description "It specifies the minimum waiting time (in seconds) between + two consecutive reports for event triggered QoS monitoring reporting + per QoS flow per UE."; + type uint32; + } + + leaf qFMeasurementPeriod { + description "It specifies the period (in seconds) for reporting the + packet delay for QoS monitoring per QoS flow per UE."; + type uint32; + } + } + + augment "/me3gpp:ManagedElement/smf3gpp:SMFFunction" { + + list QFQoSMonitoringControl { + description "Represents the QFQoSMonitoringControl IOC."; + reference "3GPP TS 28.541"; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses QFQoSMonitoringControlGrp; + } + } + } +} \ No newline at end of file diff --git a/yang-models/_3gpp-5gc-nrm-affunction.yang b/yang-models/_3gpp-5gc-nrm-affunction.yang new file mode 100755 index 000000000..a668b8a3a --- /dev/null +++ b/yang-models/_3gpp-5gc-nrm-affunction.yang @@ -0,0 +1,38 @@ +module _3gpp-5gc-nrm-affunction { + yang-version 1.1; + + namespace urn:3gpp:sa5:_3gpp-5gc-nrm-affunction; + prefix af3gpp; + + import _3gpp-common-managed-function { prefix mf3gpp; } + import _3gpp-common-managed-element { prefix me3gpp; } + import _3gpp-common-top { prefix top3gpp; } + + organization "3gpp SA5"; + description "This IOC is defined only to describe the IOCs representing + its interaction interface with 5GC (i.e. EP_Rx and EP_N5). + It has no attributes defined."; + reference "3GPP TS 28.541"; + + revision 2019-10-28 { reference S5-193518 ; } + + revision 2019-05-15 { + description "initial revision"; + } + + grouping AFFunctionGrp { + uses mf3gpp:ManagedFunctionGrp; + } + + augment "/me3gpp:ManagedElement" { + list AFFunction { + description "5G Core AF Function"; + reference "3GPP TS 28.541"; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses AFFunctionGrp; + } + } + } +} \ No newline at end of file diff --git a/yang-models/_3gpp-5gc-nrm-amffunction.yang b/yang-models/_3gpp-5gc-nrm-amffunction.yang new file mode 100755 index 000000000..1ab54a9d3 --- /dev/null +++ b/yang-models/_3gpp-5gc-nrm-amffunction.yang @@ -0,0 +1,89 @@ +module _3gpp-5gc-nrm-amffunction { + yang-version 1.1; + namespace urn:3gpp:sa5:_3gpp-5gc-nrm-amffunction; + prefix amf3gpp; + + import _3gpp-common-managed-function { prefix mf3gpp; } + import _3gpp-common-managed-element { prefix me3gpp; } + import _3gpp-common-yang-types { prefix types3gpp; } + import _3gpp-5g-common-yang-types { prefix types5g3gpp; } + import ietf-inet-types { prefix inet; } + import _3gpp-common-top { prefix top3gpp; } + + organization "3gpp SA5"; + contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; + description "AMFFunction derived from basic ManagedFunction."; + + revision 2020-11-05 { reference CR-0412 ; } + revision 2019-10-25 { reference "S5-194457 S5-193518"; } + + revision 2019-05-31 { reference "Ericsson refactoring."; } + revision 2018-08-07 { reference "Initial revision"; } + + grouping AMFFunctionGrp { + description "Represents the AMFFunction IOC"; + uses mf3gpp:ManagedFunctionGrp; + + list pLMNIdList { + min-elements 1; + description "A list of PLMN identifiers (Mobile Country Code and Mobile + Network Code)."; + key "mcc mnc"; + uses types3gpp:PLMNId; + } + + container aMFIdentifier { + presence true; + description "An AMF identifier, comprising an AMF Region ID, an + AMF Set ID and an AMF Pointer."; + uses types3gpp:AmfIdentifier; + } + + leaf sBIFQDN { + description "The FQDN of the registered NF instance in the + service-based interface."; + type inet:domain-name; + } + + list sNSSAIList { + min-elements 1; + description "List of S-NSSAIs the managed object is capable of supporting. + (Single Network Slice Selection Assistance Information) + An S-NSSAI has an SST (Slice/Service type) and an optional SD + (Slice Differentiator) field."; + reference "3GPP TS 23.003"; + key "sd sst"; + uses types5g3gpp:SNssai; + } + + list managedNFProfile { + key idx; + min-elements 1; + max-elements 1; + uses types3gpp:ManagedNFProfile; + } + + list commModelList { + min-elements 1; + key "groupId"; + description "Specifies a list of commModel. It can be used by NF and + NF services to interact with each other in 5G Core network "; + reference "3GPP TS 23.501"; + uses types5g3gpp:CommModel; + } + + } + + augment "/me3gpp:ManagedElement" { + list AMFFunction { + description "5G Core AMF Function"; + reference "3GPP TS 28.541"; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses AMFFunctionGrp; + } + uses mf3gpp:ManagedFunctionContainedClasses; + } + } +} \ No newline at end of file diff --git a/yang-models/_3gpp-5gc-nrm-amfregion.yang b/yang-models/_3gpp-5gc-nrm-amfregion.yang new file mode 100755 index 000000000..3746a58a6 --- /dev/null +++ b/yang-models/_3gpp-5gc-nrm-amfregion.yang @@ -0,0 +1,83 @@ +module _3gpp-5gc-nrm-amfregion { + yang-version 1.1; + namespace urn:3gpp:sa5:_3gpp-5gc-nrm-amfregion; + prefix amfr3gpp; + + import _3gpp-common-yang-types { prefix types3gpp; } + import _3gpp-common-subnetwork { prefix subnet3gpp; } + import _3gpp-common-top { prefix top3gpp; } + import _3gpp-common-managed-function { prefix mf3gpp; } + import _3gpp-5g-common-yang-types { prefix types5g3gpp; } + + organization "3gpp SA5"; + contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; + description "This IOC represents the AMF Region which consists one or + multiple AMF Sets."; + + revision 2020-11-05 { reference CR-0412 ; } + revision 2019-10-28 { reference S5-193518 ; } + revision 2019-06-11 { + reference "Ericsson refactoring."; } + + grouping AMFRegionGrp { + description "Represents the AMFRegion IOC"; + uses mf3gpp:ManagedFunctionGrp; + + list pLMNIdList { + description "List of at most six entries of PLMN Identifiers, but at + least one (the primary PLMN Id). + The PLMN Identifier is composed of a Mobile Country Code (MCC) + and a Mobile Network Code (MNC)."; + + min-elements 1; + max-elements 6; + key "mcc mnc"; + uses types3gpp:PLMNId; + } + + leaf-list nRTACList { + description "List of Tracking Area Codes (legacy TAC or extended TAC) + where the represented management function is serving."; + reference "TS 38.413 clause 9.3.3.10"; + min-elements 1; + config false; + type types3gpp:Tac; + } + + list sNSSAIList { + description "List of S-NSSAIs the managed object is capable of supporting. + (Single Network Slice Selection Assistance Information) + An S-NSSAI has an SST (Slice/Service type) and an optional SD + (Slice Differentiator) field."; + //conditional support only if the network slicing feature is supported. + reference "3GPP TS 23.003"; + key "sd sst"; + uses types5g3gpp:SNssai; + } + + leaf aMFRegionId { + description "Represents the AMF Region ID, which identifies the region."; + mandatory true; + type types3gpp:AmfRegionId; + } + + leaf-list aMFSet { + description "The AMFSet that the AFMRegion is associated with."; + min-elements 1; + type instance-identifier; + } + } + + augment "/subnet3gpp:SubNetwork" { + list AMFRegion { + description "5G Core AMFRegion IOC"; + reference "3GPP TS 28.541"; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses AMFRegionGrp; + } + uses mf3gpp:ManagedFunctionContainedClasses; + } + } +} \ No newline at end of file diff --git a/yang-models/_3gpp-5gc-nrm-amfset.yang b/yang-models/_3gpp-5gc-nrm-amfset.yang new file mode 100755 index 000000000..8b978160e --- /dev/null +++ b/yang-models/_3gpp-5gc-nrm-amfset.yang @@ -0,0 +1,81 @@ +module _3gpp-5gc-nrm-amfset { + yang-version 1.1; + namespace urn:3gpp:sa5:_3gpp-5gc-nrm-amfset; + prefix amfset3gpp; + + import _3gpp-common-yang-types { prefix types3gpp; } + import _3gpp-common-subnetwork { prefix subnet3gpp; } + import _3gpp-common-top { prefix top3gpp; } + import _3gpp-common-managed-function { prefix mf3gpp; } + import _3gpp-5g-common-yang-types { prefix types5g3gpp; } + + organization "3gpp SA5"; + contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; + description "This IOC represents the AMF Set which consists of some AMFs + that serve a given area and Network Slice."; + + revision 2020-11-05 { reference CR-0412 ; } + revision 2019-10-28 { reference S5-193518 ; } + revision 2019-06-11 { reference "Ericsson refactoring."; } + + grouping AMFSetGrp { + description "Represents the AMFSet IOC"; + uses mf3gpp:ManagedFunctionGrp; + + list pLMNIdList { + description "List of at most six entries of PLMN Identifiers, but at + least one (the primary PLMN Id). The PLMN Identifier is composed + of a Mobile Country Code (MCC) and a Mobile Network Code (MNC)."; + + min-elements 1; + max-elements 6; + key "mcc mnc"; + uses types3gpp:PLMNId; + } + + leaf-list nRTACList { + description "List of Tracking Area Codes (legacy TAC or extended TAC) + where the represented management function is serving."; + reference "TS 38.413 clause 9.3.3.10"; + min-elements 1; + config false; + type types3gpp:Tac; + } + + list sNSSAIList { + description "List of S-NSSAIs the managed object is capable of supporting. + (Single Network Slice Selection Assistance Information) + An S-NSSAI has an SST (Slice/Service type) and an optional SD + (Slice Differentiator) field."; + //conditional support only if the network slicing feature is supported. + reference "3GPP TS 23.003"; + key "sd sst"; + uses types5g3gpp:SNssai; + } + + leaf aMFRegion { + description "The AMFRegion that the AFMSet is associated with."; + type instance-identifier; + } + + leaf-list aMFSetMemberList { + description "List of DNs of AMFFunction instances of the AMFSet."; + min-elements 1; + max-elements 1; + type types3gpp:DistinguishedName; + } + } + + augment "/subnet3gpp:SubNetwork" { + list AMFSet { + description "5G Core AMFSet IOC"; + reference "3GPP TS 28.541"; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses AMFSetGrp; + } + uses mf3gpp:ManagedFunctionContainedClasses; + } + } +} \ No newline at end of file diff --git a/yang-models/_3gpp-5gc-nrm-ausffunction.yang b/yang-models/_3gpp-5gc-nrm-ausffunction.yang new file mode 100755 index 000000000..f94b6505e --- /dev/null +++ b/yang-models/_3gpp-5gc-nrm-ausffunction.yang @@ -0,0 +1,89 @@ +module _3gpp-5gc-nrm-ausffunction { + yang-version 1.1; + + namespace urn:3gpp:sa5:_3gpp-5gc-nrm-ausffunction; + prefix ausf3gpp; + + import _3gpp-common-managed-function { prefix mf3gpp; } + import _3gpp-common-managed-element { prefix me3gpp; } + import ietf-inet-types { prefix inet; } + import _3gpp-5g-common-yang-types { prefix types5g3gpp; } + import _3gpp-common-yang-types { prefix types3gpp; } + import _3gpp-common-top { prefix top3gpp; } + + organization "3gpp SA5"; + contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; + description "This IOC represents the AUSF function in 5GC. For more + information about the AUSF, see 3GPP TS 23.501."; + reference "3GPP TS 28.541"; + + + revision 2020-11-05 { reference CR-0412 ; } + revision 2019-10-25 { reference "S5-194457 S5-193518"; } + + revision 2019-05-22 {reference "initial revision"; } + + grouping AUSFFuntionGrp { + description "Represents the AUSFFuntion IOC"; + uses mf3gpp:ManagedFunctionGrp; + + list pLMNIdList { + description "List of at most six entries of PLMN Identifiers, but at + least one (the primary PLMN Id). + The PLMN Identifier is composed of a Mobile Country Code (MCC) and + a Mobile Network Code (MNC)."; + + min-elements 1; + max-elements 6; + key "mcc mnc"; + uses types3gpp:PLMNId; + } + + leaf sBIFQDN { + description "The FQDN of the registered NF instance in the + service-based interface."; + type inet:domain-name; + } + + list sNSSAIList { + description "List of S-NSSAIs the managed object is capable of supporting. + (Single Network Slice Selection Assistance Information) + An S-NSSAI has an SST (Slice/Service type) and an optional SD + (Slice Differentiator) field."; + //optional support + reference "3GPP TS 23.003"; + key "sd sst"; + uses types5g3gpp:SNssai; + } + + list managedNFProfile { + key idx; + min-elements 1; + max-elements 1; + uses types3gpp:ManagedNFProfile; + } + + + list commModelList { + min-elements 1; + key "groupId"; + description "Specifies a list of commModel. It can be used by NF and + NF services to interact with each other in 5G Core network "; + reference "3GPP TS 23.501"; + uses types5g3gpp:CommModel; + } + } + + augment "/me3gpp:ManagedElement" { + list AUSFFunction { + description "5G Core AUSF Function"; + reference "3GPP TS 28.541"; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses AUSFFuntionGrp; + } + uses mf3gpp:ManagedFunctionContainedClasses; + } + } +} \ No newline at end of file diff --git a/yang-models/_3gpp-5gc-nrm-configurable5qiset.yang b/yang-models/_3gpp-5gc-nrm-configurable5qiset.yang new file mode 100755 index 000000000..2a402a96e --- /dev/null +++ b/yang-models/_3gpp-5gc-nrm-configurable5qiset.yang @@ -0,0 +1,125 @@ +module _3gpp-5gc-nrm-configurable5qiset { + yang-version 1.1; + + namespace urn:3gpp:sa5:_3gpp-5gc-nrm-configurable5qiset; + prefix Conf5QIs3gpp; + + import _3gpp-common-top { prefix top3gpp; } + import _3gpp-common-managed-element { prefix me3gpp; } + import _3gpp-common-subnetwork { prefix subnet3gpp; } + + organization "3gpp SA5"; + contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; + description "This IOC represents the non-standardized 5QIs, including + their QoS characteristics, that need to be pre-configured + (and configurable) to the 5G NFs."; + reference "3GPP TS 28.541"; + + revision 2020-08-03 { reference "CR-0321"; } + revision 2020-06-03 { reference "CR-0286"; } + + grouping PacketErrorRate { + leaf scalar { + type uint32 { + range 0..9 ; + } + mandatory true; + description "The Packet Error Rate of a 5QI expressed as Scalar x 10-k + where k is the Exponent."; + } + leaf exponent { + type uint32 { + range 0..9 ; + } + mandatory true; + description "The Packet Error Rate of a 5QI expressed as Scalar x 10-k, + where k is the Exponent."; + } + } + + grouping FiveQICharacteristics { + leaf fiveQIValue { + type uint32 { + range 0..255 ; + } + mandatory true; + description "Identifies the 5QI value."; + } + + leaf resourceType { + type enumeration { + enum GBR; + enum NON_GBR; + } + mandatory true; + description "It indicates the Resource Type of a 5QI, as specified + in TS 23.501 "; + } + + leaf priorityLevel { + type uint32 { + range 0..127 ; + } + } + + leaf packetDelayBudget { + type uint32 { + range 0..1023 ; + } + description "Indicates the Packet Delay Budget (in unit of 0.5ms)of a 5QI, + as specified in TS 23.501 "; + } + + list packetErrorRate { + key "scalar exponent"; + min-elements 0; + max-elements 1; + uses PacketErrorRate; + reference "TS 23.501"; + } + + leaf averagingWindow { + type uint32 { + range 0..4095 ; + } + units ms; + reference "TS 23.501"; + } + + leaf maximumDataBurstVolume { + type uint32{ + range 0..4095 ; + } + units byte; + } + } + + grouping Configurable5QISetGrp { + description "Represents the Configurable5QISet IOC."; + list configurable5QIs { + key "fiveQIValue"; + uses FiveQICharacteristics; + } + } + + grouping Configurable5QISetSubtree { + list Configurable5QISet { + description "Specifies the non-standardized 5QIs, including their QoS + characteristics, that need to be pre-configured (and configurable) to + the 5G NFs, see 3GPP TS 23.501."; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses Configurable5QISetGrp; + } + } + } + + augment "/subnet3gpp:SubNetwork" { + uses Configurable5QISetSubtree; + } + + augment "/me3gpp:ManagedElement" { + uses Configurable5QISetSubtree; + } +} \ No newline at end of file diff --git a/yang-models/_3gpp-5gc-nrm-dnfunction.yang b/yang-models/_3gpp-5gc-nrm-dnfunction.yang new file mode 100755 index 000000000..675c3b1aa --- /dev/null +++ b/yang-models/_3gpp-5gc-nrm-dnfunction.yang @@ -0,0 +1,39 @@ +module _3gpp-5gc-nrm-dnfunction { + yang-version 1.1; + + namespace urn:3gpp:sa5_3gpp-5gc-nrm-dnfunction; + prefix dn3gpp; + + import _3gpp-common-managed-function { prefix mf3gpp; } + import _3gpp-common-managed-element { prefix me3gpp; } + import _3gpp-common-top { prefix top3gpp; } + + organization "3gpp SA5"; + description "This IOC is defined only to describe the IOCs representing + Data Network (DN) interaction interface with 5GC (i.e. EP_N6). + It has no attributes defined."; + reference "3GPP TS 28.541"; + + revision 2019-10-28 { reference S5-193518 ; } + + revision 2019-05-15 { + description "initial revision"; + } + + grouping DNFunctionGrp { + uses mf3gpp:ManagedFunctionGrp; + } + + augment "/me3gpp:ManagedElement" { + list DNFunction { + description "5G Core DN Function"; + reference "3GPP TS 28.541"; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses DNFunctionGrp; + } + uses mf3gpp:ManagedFunctionContainedClasses; + } + } +} \ No newline at end of file diff --git a/yang-models/_3gpp-5gc-nrm-dynamic5qiset.yang b/yang-models/_3gpp-5gc-nrm-dynamic5qiset.yang new file mode 100755 index 000000000..9b19f6a32 --- /dev/null +++ b/yang-models/_3gpp-5gc-nrm-dynamic5qiset.yang @@ -0,0 +1,50 @@ +module _3gpp-5gc-nrm-dynamic5qiset { + yang-version 1.1; + + namespace urn:3gpp:sa5:_3gpp-5gc-nrm-dynamic5qiset; + prefix dyn5QIs3gpp; + + import _3gpp-common-top { prefix top3gpp; } + import _3gpp-common-subnetwork { prefix subnet3gpp; } + import _3gpp-common-managed-element { prefix me3gpp; } + import _3gpp-5gc-nrm-configurable5qiset { prefix Conf5QIs3gpp; } + + organization "3gpp SA5"; + contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; + description "This IOC represents the dynamic 5QIs including their QoS + characteristics."; + reference "3GPP TS 28.541"; + + revision 2020-09-30 { reference "CR-0393"; } + revision 2020-08-06 { reference "CR-0333"; } + + grouping Dynamic5QISetGrp { + description "Represents the Dynamic5QISet IOC."; + list dynamic5QIs { + key "fiveQIValue"; + description "Represents the Dynamic5QISet IOC."; + uses Conf5QIs3gpp:FiveQICharacteristics; + } + } + + grouping Dynamic5QISetSubtree { + description "Helps augmenting Dynamic5QISet into multiple places."; + list Dynamic5QISet { + description "Specifies the dynamic 5QIs including their QoS + characteristics, see 3GPP TS 23.501."; + key "id"; + uses top3gpp:Top_Grp; + container attributes { + uses Dynamic5QISetGrp; + } + } + } + + augment "/subnet3gpp:SubNetwork" { + uses Dynamic5QISetSubtree; + } + + augment "/me3gpp:ManagedElement" { + uses Dynamic5QISetSubtree; + } +} \ No newline at end of file diff --git a/yang-models/_3gpp-5gc-nrm-ep.yang b/yang-models/_3gpp-5gc-nrm-ep.yang new file mode 100755 index 000000000..fdd210297 --- /dev/null +++ b/yang-models/_3gpp-5gc-nrm-ep.yang @@ -0,0 +1,646 @@ +module _3gpp-5gc-nrm-ep { + yang-version 1.1; + namespace "urn:3gpp:tsg:sa5:nrm:_3gpp-5gc-nrm-ep"; + prefix "cep3gpp"; + + import _3gpp-common-ep-rp { prefix eprp3gpp; } + import _3gpp-common-managed-element { prefix me3gpp; } + import _3gpp-5gc-nrm-affunction { prefix af3gpp; } + import _3gpp-5gc-nrm-amffunction { prefix amf3gpp; } + import _3gpp-5gc-nrm-ausffunction { prefix ausf3gpp; } + import _3gpp-5gc-nrm-dnfunction { prefix dn3gpp; } + import _3gpp-5gc-nrm-lmffunction { prefix lmf3gpp; } + import _3gpp-5gc-nrm-n3iwffunction { prefix n3iwf3gpp; } + import _3gpp-5gc-nrm-ngeirfunction { prefix ngeir3gpp; } + import _3gpp-5gc-nrm-nrffunction { prefix nrf3gpp; } + import _3gpp-5gc-nrm-nssffunction { prefix nssf3gpp; } + import _3gpp-5gc-nrm-pcffunction { prefix pcf3gpp; } + import _3gpp-5gc-nrm-seppfunction { prefix sepp3gpp; } + import _3gpp-5gc-nrm-smffunction { prefix smf3gpp; } + import _3gpp-5gc-nrm-smsffunction { prefix smsf3gpp; } + import _3gpp-5gc-nrm-udmfunction { prefix udm3gpp; } + import _3gpp-5gc-nrm-upffunction { prefix upf3gpp; } + import _3gpp-common-yang-types { prefix types3gpp; } + import _3gpp-common-top { prefix top3gpp; } + import ietf-inet-types { prefix inet; } + + organization "3GPP SA5"; + description "Defines the YANG mapping of the 5GC related endpoint + Information Object Classes (IOCs) that are part of the 5G Core + Network Resource Model."; + reference "3GPP TS 28.541"; + + revision 2019-11-18 { + description "Ericsson refactoring."; + } + + revision 2018-07-31 { + description "Initial revision"; + } + + grouping EP_N2Grp { + uses eprp3gpp:EP_Common; + } + + grouping EP_N3Grp { + uses eprp3gpp:EP_Common; + } + + grouping EP_N4Grp { + uses eprp3gpp:EP_Common; + } + + grouping EP_N5Grp { + uses eprp3gpp:EP_Common; + } + + grouping EP_N6Grp { + uses eprp3gpp:EP_Common; + } + + grouping EP_N7Grp { + uses eprp3gpp:EP_Common; + } + + grouping EP_N8Grp { + uses eprp3gpp:EP_Common; + } + + grouping EP_N9Grp { + uses eprp3gpp:EP_Common; + } + + grouping EP_N10Grp { + uses eprp3gpp:EP_Common; + } + + grouping EP_N11Grp { + uses eprp3gpp:EP_Common; + } + + grouping EP_N12Grp { + uses eprp3gpp:EP_Common; + } + + grouping EP_N13Grp { + uses eprp3gpp:EP_Common; + } + + grouping EP_N14Grp { + uses eprp3gpp:EP_Common; + } + + grouping EP_N15Grp { + uses eprp3gpp:EP_Common; + } + + grouping EP_N16Grp { + uses eprp3gpp:EP_Common; + } + + grouping EP_N17Grp { + uses eprp3gpp:EP_Common; + } + + grouping EP_N20Grp { + uses eprp3gpp:EP_Common; + } + + grouping EP_N21Grp { + uses eprp3gpp:EP_Common; + } + + grouping EP_N22Grp { + uses eprp3gpp:EP_Common; + } + + grouping EP_N26Grp { + uses eprp3gpp:EP_Common; + } + + grouping EP_N27Grp { + uses eprp3gpp:EP_Common; + } + + grouping EP_N31Grp { + uses eprp3gpp:EP_Common; + } + + grouping EP_N32Grp { + uses eprp3gpp:EP_Common; + container remotePlmnId { + description "PLMN Identifiers of the remote sepp. + The PLMN Identifier is composed of a Mobile Country Code (MCC) and a Mobile Network Code (MNC)."; + uses types3gpp:PLMNId; + } + + leaf remoteSeppAddress { + description "The host address of the SEPP."; + type inet:host; + } + + leaf remoteSeppId { + type uint16; + } + + leaf n32cParas { + type string; + } + + leaf n32fPolicy { + type string; + } + + leaf withIPX { + type boolean; + } + } + + grouping EP_S5CGrp { + uses eprp3gpp:EP_Common; + } + + grouping EP_S5UGrp { + uses eprp3gpp:EP_Common; + } + + grouping EP_RxGrp { + uses eprp3gpp:EP_Common; + } + + grouping EP_MAP_SMSCGrp { + uses eprp3gpp:EP_Common; + } + + grouping EP_NLSGrp { + uses eprp3gpp:EP_Common; + } + + grouping EP_NLGGrp { + uses eprp3gpp:EP_Common; + } + + grouping EP_SBI_IPXGrp { + uses eprp3gpp:EP_Common; + leaf-list sBIService { + min-elements 1; + config false; + type string; + } + } + + augment "/me3gpp:ManagedElement/af3gpp:AFFunction" { + list EP_N6 { + description "Represents the EP_N6 IOC."; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses EP_N6Grp; + } + } + + list EP_Rx { + description "Represents the EP_Rx IOC."; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses EP_RxGrp; + } + } + } + + augment "/me3gpp:ManagedElement/amf3gpp:AMFFunction" { + list EP_N2 { + description "Represents the EP_N2 IOC."; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses EP_N2Grp; + } + } + + list EP_N8 { + description "Represents the EP_N8 IOC."; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses EP_N8Grp; + } + } + + list EP_N11 { + description "Represents the EP_N11 IOC."; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses EP_N11Grp; + } + } + + list EP_N12 { + description "Represents the EP_N12 IOC."; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses EP_N12Grp; + } + } + + list EP_N14 { + description "Represents the EP_N14 IOC."; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses EP_N14Grp; + } + } + + list EP_N15 { + description "Represents the EP_N15 IOC."; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses EP_N15Grp; + } + } + + list EP_N17 { + description "Represents the EP_N17 IOC."; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses EP_N17Grp; + } + } + + list EP_N20 { + description "Represents the EP_N20 IOC."; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses EP_N20Grp; + } + } + + list EP_N22 { + description "Represents the EP_N22 IOC."; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses EP_N22Grp; + } + } + + list EP_N26 { + description "Represents the EP_N26 IOC."; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses EP_N26Grp; + } + } + + list EP_NLS { + description "Represents the EP_NLS IOC."; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses EP_NLSGrp; + } + } + + list EP_NLG { + description "Represents the EP_NLG IOC."; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses EP_NLGGrp; + } + } + } + + augment "/me3gpp:ManagedElement/ausf3gpp:AUSFFunction" { + list EP_N12 { + description "Represents the EP_N12 IOC."; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses EP_N12Grp; + } + } + + list EP_N13 { + description "Represents the EP_N13 IOC."; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses EP_N13Grp; + } + } + } + + augment "/me3gpp:ManagedElement/dn3gpp:DNFunction" { + list EP_N6 { + description "Represents the EP_N6 IOC."; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses EP_N6Grp; + } + } + } + + augment "/me3gpp:ManagedElement/lmf3gpp:LMFFunction" { + list EP_NLS { + description "Represents the EP_NLS IOC."; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses EP_NLSGrp; + } + } + } + + augment "/me3gpp:ManagedElement/n3iwf3gpp:N3IWFFunction" { + list EP_N2 { + description "Represents the EP_N2 IOC."; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses EP_N2Grp; + } + } + + list EP_N3 { + description "Represents the EP_N3 IOC."; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses EP_N3Grp; + } + } + } + + augment "/me3gpp:ManagedElement/ngeir3gpp:NGEIRFunction" { + list EP_N17 { + description "Represents the EP_N17 IOC."; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses EP_N17Grp; + } + } + } + + augment "/me3gpp:ManagedElement/nrf3gpp:NRFFunction" { + list EP_N27 { + description "Represents the EP_N27 IOC."; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses EP_N26Grp; + } + } + + } + + augment "/me3gpp:ManagedElement/nssf3gpp:NSSFFunction" { + list EP_N22 { + description "Represents the EP_N22 IOC."; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses EP_N22Grp; + } + } + + list EP_N31 { + description "Represents the EP_N31 IOC."; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses EP_N31Grp; + } + } + } + + augment "/me3gpp:ManagedElement/pcf3gpp:PCFFunction" { + list EP_N5 { + description "Represents the EP_N5 IOC."; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses EP_N5Grp; + } + } + + list EP_N7 { + description "Represents the EP_N7 IOC."; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses EP_N7Grp; + } + } + + list EP_N15 { + description "Represents the EP_N15 IOC."; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses EP_N15Grp; + } + } + + list EP_N16 { + description "Represents the EP_N16 IOC."; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses EP_N16Grp; + } + } + + list EP_Rx { + description "Represents the EP_Rx IOC."; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses EP_RxGrp; + } + } + } + + augment "/me3gpp:ManagedElement/sepp3gpp:SEPPFunction" { + list EP_N32 { + description "Represents the EP_N32 IOC."; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses EP_N32Grp; + } + } + + } + augment "/me3gpp:ManagedElement/smsf3gpp:SMSFFunction" { + list EP_N20 { + description "Represents the EP_20 IOC."; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses EP_N20Grp; + } + } + + list EP_N21 { + description "Represents the EP_N21 IOC."; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses EP_N21Grp; + } + } + + list EP_MAP_SMSC { + description "Represents the EP_MAP_SMSC IOC."; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses EP_MAP_SMSCGrp; + } + } + } + + augment "/me3gpp:ManagedElement/smf3gpp:SMFFunction" { + list EP_N4 { + description "Represents the EP_N4 IOC."; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses EP_N4Grp; + } + } + + list EP_N7 { + description "Represents the EP_N7 IOC."; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses EP_N7Grp; + } + } + + list EP_N10 { + description "Represents the EP_N10 IOC."; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses EP_N10Grp; + } + } + + list EP_N11 { + description "Represents the EP_N11 IOC."; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses EP_N11Grp; + } + } + + list EP_N16 { + description "Represents the EP_N16 IOC."; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses EP_N16Grp; + } + } + + list EP_S5C { + description "Represents the EP_S5C IOC."; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses EP_S5CGrp; + } + } + } + + augment "/me3gpp:ManagedElement/udm3gpp:UDMFunction" { + list EP_N8 { + description "Represents the EP_N8 IOC."; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses EP_N8Grp; + } + } + + list EP_N10 { + description "Represents the EP_N10 IOC."; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses EP_N10Grp; + } + } + + list EP_N13 { + description "Represents the EP_N13 IOC."; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses EP_N13Grp; + } + } + + } + + augment "/me3gpp:ManagedElement/upf3gpp:UPFFunction" { + list EP_N4 { + description "Represents the EP_N4 IOC."; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses EP_N4Grp; + } + } + + list EP_N3 { + description "Represents the EP_N3 IOC."; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses EP_N3Grp; + } + } + + list EP_N9 { + description "Represents the EP_N9 IOC."; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses EP_N9Grp; + } + } + + list EP_S5U { + description "Represents the EP_S5U IOC."; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses EP_S5UGrp; + } + } + + list EP_EP_N6 { + description "Represents the EP_N6 IOC."; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses EP_N6Grp; + } + } + } +} \ No newline at end of file diff --git a/yang-models/_3gpp-5gc-nrm-externalnrffunction.yang b/yang-models/_3gpp-5gc-nrm-externalnrffunction.yang new file mode 100755 index 000000000..95f1cea5e --- /dev/null +++ b/yang-models/_3gpp-5gc-nrm-externalnrffunction.yang @@ -0,0 +1,42 @@ +module _3gpp-5gc-nrm-externalnrffunction { + yang-version 1.1; + namespace urn:3gpp:sa5:_3gpp-5gc-nrm-externalnrffunction; + prefix extnrf3gpp; + + import _3gpp-common-yang-types { prefix types3gpp; } + import _3gpp-common-subnetwork { prefix subnet3gpp; } + import _3gpp-common-top { prefix top3gpp; } + import _3gpp-common-managed-function { prefix mf3gpp; } + + description "This IOC represents external NRF function controlled by another management domain."; + + revision 2019-10-28 { reference S5-193518 ; } + revision 2019-06-11 { + description "Ericsson refactoring."; + } + + grouping ExternalNRFFunctionGrp { + uses mf3gpp:ManagedFunctionGrp; + + list pLMNIdList { + description "List of at most six entries of PLMN Identifiers, but at least one (the primary PLMN Id). + The PLMN Identifier is composed of a Mobile Country Code (MCC) and a Mobile Network Code (MNC)."; + min-elements 1; + max-elements 6; + key "mcc mnc"; + uses types3gpp:PLMNId; + } + } + + augment "/subnet3gpp:SubNetwork" { + list ExternalNRFFunction { + description "5G Core External NRF Function"; + reference "3GPP TS 28.541"; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses ExternalNRFFunctionGrp; + } + uses mf3gpp:ManagedFunctionContainedClasses; } + } +} \ No newline at end of file diff --git a/yang-models/_3gpp-5gc-nrm-externalnssffunction.yang b/yang-models/_3gpp-5gc-nrm-externalnssffunction.yang new file mode 100755 index 000000000..665977805 --- /dev/null +++ b/yang-models/_3gpp-5gc-nrm-externalnssffunction.yang @@ -0,0 +1,43 @@ +module _3gpp-5gc-nrm-externalnssffunction { + yang-version 1.1; + namespace urn:3gpp:sa5:_3gpp-5gc-nrm-externalnssffunction; + prefix extnssf3gpp; + + import _3gpp-common-yang-types { prefix types3gpp; } + import _3gpp-common-subnetwork { prefix subnet3gpp; } + import _3gpp-common-top { prefix top3gpp; } + import _3gpp-common-managed-function { prefix mf3gpp; } + + description "This IOC represents external NSSF function controlled by another management domain."; + + revision 2019-10-28 { reference S5-193518 ; } + revision 2019-06-11 { + description "Ericsson refactoring."; + } + + grouping ExternalNSSFFunctionGrp { + uses mf3gpp:ManagedFunctionGrp; + + list pLMNIdList { + description "List of at most six entries of PLMN Identifiers, but at least one (the primary PLMN Id). + The PLMN Identifier is composed of a Mobile Country Code (MCC) and a Mobile Network Code (MNC)."; + min-elements 1; + max-elements 6; + key "mcc mnc"; + uses types3gpp:PLMNId; + } + } + + augment "/subnet3gpp:SubNetwork" { + list ExternalNSSFFunction { + description "5G Core External NSSF Function"; + reference "3GPP TS 28.541"; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses ExternalNSSFFunctionGrp; + } + uses mf3gpp:ManagedFunctionContainedClasses; + } + } +} \ No newline at end of file diff --git a/yang-models/_3gpp-5gc-nrm-externalseppfunction.yang b/yang-models/_3gpp-5gc-nrm-externalseppfunction.yang new file mode 100755 index 000000000..38496aaaa --- /dev/null +++ b/yang-models/_3gpp-5gc-nrm-externalseppfunction.yang @@ -0,0 +1,55 @@ +module _3gpp-5gc-nrm-externalseppfunction { + yang-version 1.1; + + namespace urn:3gpp:sa5:_3gpp-5gc-nrm-extternalseppfunction; + prefix extsepp3gpp; + + import _3gpp-common-managed-function { prefix mf3gpp; } + import _3gpp-common-managed-element { prefix me3gpp; } + import _3gpp-common-yang-types { prefix types3gpp; } + import _3gpp-common-top { prefix top3gpp; } + import ietf-inet-types { prefix inet; } + + organization "3gpp SA5"; + description "This IOC represents the external SEPP function which support message filtering + and policing on inter-PLMN control plane interface. For more information about the SEPP, see 3GPP TS 23.501."; + reference "3GPP TS 28.541"; + + revision 2019-11-17 { + description "initial revision"; + reference "Based on + 3GPP TS 28.541 V16.X.XX"; + } + + grouping ExternalSEPPFunctionGrp { + uses mf3gpp:ManagedFunctionGrp; + + container pLMNId { + description "PLMN Identifiers of the sepp. + The PLMN Identifier is composed of a Mobile Country Code (MCC) and a Mobile Network Code (MNC)."; + uses types3gpp:PLMNId; + } + + leaf sEPPId { + type uint16; + } + + leaf fqdn { + description "The domain name of the SEPP."; + type inet:domain-name; + } + + } + + augment "/me3gpp:ManagedElement" { + list ExternalSEPPFunction { + description "5G Core SEPP Function"; + reference "3GPP TS 28.541"; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses ExternalSEPPFunctionGrp; + } + } + } +} \ No newline at end of file diff --git a/yang-models/_3gpp-5gc-nrm-lmffunction.yang b/yang-models/_3gpp-5gc-nrm-lmffunction.yang new file mode 100755 index 000000000..ee9ec056a --- /dev/null +++ b/yang-models/_3gpp-5gc-nrm-lmffunction.yang @@ -0,0 +1,63 @@ +module _3gpp-5gc-nrm-lmffunction { + yang-version 1.1; + + namespace urn:3gpp:sa5:_3gpp-5gc-nrm-lmffunction; + prefix lmf3gpp; + + import _3gpp-common-managed-function { prefix mf3gpp; } + import _3gpp-common-managed-element { prefix me3gpp; } + import _3gpp-common-yang-types { prefix types3gpp; } + import _3gpp-5g-common-yang-types { prefix types5g3gpp; } + import _3gpp-common-top { prefix top3gpp; } + + organization "3gpp SA5"; + description "This IOC represents the LMF function defined in 3GPP TS 23.501."; + reference "3GPP TS 28.541"; + + revision 2019-10-25 { reference "S5-194457 S5193518"; } + + revision 2019-05-15 { + description "initial revision"; + reference "Based on + 3GPP TS 28.541 V15.X.XX"; + } + + grouping LMFFunctionGrp { + uses mf3gpp:ManagedFunctionGrp; + + list pLMNIdList { + description "List of at most six entries of PLMN Identifiers, but at least one (the primary PLMN Id). + The PLMN Identifier is composed of a Mobile Country Code (MCC) and a Mobile Network Code (MNC)."; + + min-elements 1; + max-elements 6; + key "mcc mnc"; + uses types3gpp:PLMNId; + } + + list managedNFProfile { + key idx; + min-elements 1; + uses types3gpp:ManagedNFProfile; + } + + list commModelList { + min-elements 1; + key "groupId"; + uses types5g3gpp:CommModel; + } + } + + augment "/me3gpp:ManagedElement" { + list LMFFunction { + description "5G Core LMF Function"; + reference "3GPP TS 28.541"; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses LMFFunctionGrp; + } + uses mf3gpp:ManagedFunctionContainedClasses; + } + } +} \ No newline at end of file diff --git a/yang-models/_3gpp-5gc-nrm-n3iwffunction.yang b/yang-models/_3gpp-5gc-nrm-n3iwffunction.yang new file mode 100755 index 000000000..05ca146ca --- /dev/null +++ b/yang-models/_3gpp-5gc-nrm-n3iwffunction.yang @@ -0,0 +1,55 @@ +module _3gpp-5gc-nrm-n3iwffunction { + yang-version 1.1; + + namespace urn:3gpp:sa5:_3gpp-5gc-nrm-n3iwffunction; + prefix n3iwf3gpp; + + import _3gpp-common-managed-function { prefix mf3gpp; } + import _3gpp-common-managed-element { prefix me3gpp; } + import _3gpp-common-yang-types { prefix types3gpp; } + import _3gpp-5g-common-yang-types { prefix types5g3gpp; } + import _3gpp-common-top { prefix top3gpp; } + + organization "3gpp SA5"; + description "This IOC represents the N3IWF function which is used to enable non-3GPP + access networks connected to the 5GC. For more information about the N3IWF, see 3GPP TS 23.501."; + reference "3GPP TS 28.541"; + + revision 2019-10-28 { reference S5-193518 ; } + revision 2019-05-22 { + description "initial revision"; + } + + grouping N3IWFFunctionGrp { + uses mf3gpp:ManagedFunctionGrp; + + list pLMNIdList { + description "List of at most six entries of PLMN Identifiers, but at least one (the primary PLMN Id). + The PLMN Identifier is composed of a Mobile Country Code (MCC) and a Mobile Network Code (MNC)."; + + min-elements 1; + max-elements 6; + key "mcc mnc"; + uses types3gpp:PLMNId; + } + + list commModelList { + min-elements 1; + key "groupId"; + uses types5g3gpp:CommModel; + } + } + + augment "/me3gpp:ManagedElement" { + list N3IWFFunction { + description "5G Core N3IWF Function"; + reference "3GPP TS 28.541"; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses N3IWFFunctionGrp; + } + uses mf3gpp:ManagedFunctionContainedClasses; + } + } +} \ No newline at end of file diff --git a/yang-models/_3gpp-5gc-nrm-neffunction.yang b/yang-models/_3gpp-5gc-nrm-neffunction.yang new file mode 100755 index 000000000..fdb701ed4 --- /dev/null +++ b/yang-models/_3gpp-5gc-nrm-neffunction.yang @@ -0,0 +1,68 @@ +module _3gpp-5gc-nrm-neffunction { + yang-version 1.1; + + namespace urn:3gpp:sa5:_3gpp-5gc-nrm-neffunction; + prefix nef3gpp; + + import _3gpp-common-managed-function { prefix mf3gpp; } + import _3gpp-common-managed-element { prefix me3gpp; } + import ietf-inet-types { prefix inet; } + import _3gpp-common-top { prefix top3gpp; } + import _3gpp-5g-common-yang-types { prefix types5g3gpp; } + + organization "3gpp SA5"; + contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; + description "This IOC represents the NEF function in 5GC. For more + information about the NEF, see 3GPP TS 23.501."; + reference "3GPP TS 28.541"; + + revision 2020-11-05 { reference CR-0412 ; } + revision 2019-10-20 { reference "initial revision"; } + + grouping NEFFunctionGrp { + description "Represents the NEFFunction IOC"; + uses mf3gpp:ManagedFunctionGrp; + + leaf sBIFQDN { + description "The FQDN of the registered NF instance in the + service-based interface."; + type inet:domain-name; + } + + list sNSSAIList { + description "List of S-NSSAIs the managed object is capable of supporting. + (Single Network Slice Selection Assistance Information) + An S-NSSAI has an SST (Slice/Service type) and an optional SD + (Slice Differentiator) field."; + key "sd sst"; + uses types5g3gpp:SNssai; + } + + leaf-list capabilityList { + description "List of supported capabilities of the NEF."; + reference "3GPP TS 23.003"; + type string; + } + + leaf isINEF { + type boolean; + } + + leaf isCAPIFSup { + type boolean; + } + + } + + augment "/me3gpp:ManagedElement" { + list NEFFunction { + description "5G Core NEF Function"; + reference "3GPP TS 28.541"; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses NEFFunctionGrp; + } + } + } +} \ No newline at end of file diff --git a/yang-models/_3gpp-5gc-nrm-nfprofile.yang b/yang-models/_3gpp-5gc-nrm-nfprofile.yang new file mode 100755 index 000000000..c5b0d609a --- /dev/null +++ b/yang-models/_3gpp-5gc-nrm-nfprofile.yang @@ -0,0 +1,1095 @@ +module _3gpp-5gc-nrm-nfprofile { + yang-version 1.1; + + namespace urn:3gpp:sa5:_3gpp-5gc-nrm-nfprofile; + prefix nfp3gpp; + + import _3gpp-common-yang-types { prefix types3gpp; } + import ietf-inet-types { prefix inet; } + import ietf-yang-types { prefix yang; } + import _3gpp-5gc-nrm-nfservice { prefix nfs3gpp; } + + organization "3gpp SA5"; + description "NF profile class."; + reference "3GPP TS 29.510"; + + revision 2019-06-17 { + description "initial revision"; + } + + grouping NFProfileGrp { + leaf nfInstanceID { + description "String uniquely identifying a NF instance."; + mandatory true; + type string; + } + + leaf nfType { + description "Type of Network Function."; + mandatory true; + type types3gpp:NfType; + } + + leaf nfStatus { + description "Status of the NF Instance."; + mandatory true; + type NFStatus; + } + + leaf heartBeatTimer { + description "Time in seconds expected between 2 consecutive heart-beat messages from + an NF Instance to the NRF. It may be included in the registration request. + When present in the request it shall contain the heartbeat time proposed by the NF service consumer."; + //conditional support + type uint16; + } + + list plmnList { + description "PLMN(s) of the Network Function. + This IE shall be present if this information is available for the NF. + If not provided, PLMN ID(s) of the PLMN of the NRF are assumed for the NF."; + + //conditional support + min-elements 1; + key "mcc mnc"; + uses types3gpp:PLMNId; + } + + list sNssais { //is the key unique + description "S-NSSAIs of the Network Function. If not provided, the NF can serve any S-NSSAI. + When present this IE represents the list of S-NSSAIs supported in all the PLMNs listed in the plmnList IE."; + min-elements 1; + //optional support + key "sst sd"; + uses Snssai; + } + + list perPlmnSnssaiList { + description "This IE may be included when the list of S-NSSAIs supported by the NF for each PLMN it is supporting is different. + When present, this IE shall include the S-NSSAIs supported by the Network Function + for each PLMN supported by the Network Function. When present, this IE shall override sNssais IE."; + min-elements 1; + //optional support + key idx; //no obvious leaf to use as a key + leaf idx { type uint32; } + uses PlmnSnssai; + } + + leaf-list nsiList { + description "NSI identities of the Network Function. + If not provided, the NF can serve any NSI."; + //optional support + min-elements 1; + type string; + } + + leaf fqdn { + description "FQDN of the Network Function. For AMF, the FQDN registered with the NRF + shall be that of the AMF Name."; + //conditional support + type inet:domain-name; + } + + leaf interPlmnFqdn { + description "If the NF needs to be discoverable by other NFs in a different PLMN, + then an FQDN that is used for inter-PLMN routing is specified."; + //conditional support + type inet:domain-name; + } + + leaf-list ipv4Addresses { + description "IPv4 address(es) of the Network Function."; + min-elements 1; + //conditional support + type inet:ipv4-address; + } + + leaf-list ipv6Addresses { + description "IPv6 address(es) of the Network Function."; + min-elements 1; + //conditional support + type inet:ipv6-address; + } + + list allowedPlmns { + description "PLMNs allowed to access the NF instance. + If not provided, any PLMN is allowed to access the NF."; + + min-elements 1; + //optional support + key "mcc mnc"; + uses types3gpp:PLMNId; + } + + leaf-list allowedNfTypes { + description "Type of the NFs allowed to access the NF instance. + If not provided, any NF type is allowed to access the NF."; + min-elements 1; + //optional support + type types3gpp:NfType; + } + + leaf-list allowedNfDomains { + description "Pattern representing the NF domain names allowed to access the NF instance. + If not provided, any NF domain is allowed to access the NF."; + min-elements 1; + //optional support + type string; + } + + list allowedNssais { //is the key unique + description "S-NSSAI of the allowed slices to access the NF instance. + If not provided, any slice is allowed to access the NF."; + min-elements 1; + //optional support + key "sst sd"; + uses Snssai; + } + + leaf priority { + description "Priority (relative to other NFs of the same type) in the range of 0-65535, to be used for NF selection; + lower values indicate a higher priority. If priority is also present in the nfServiceList parameters, + those will have precedence over this value. The NRF may overwrite the received priority value when exposing + an NFProfile with the Nnrf_NFDiscovery service."; + //optional support + type uint16; + } + + leaf capacity { + description "Static capacity information in the range of 0-65535, expressed as a weight + relative to other NF instances of the same type; if capacity is also present + in the nfServiceList parameters, those will have precedence over this value."; + //optional support + type uint16; + } + + leaf load { + description "Dynamic load information, ranged from 0 to 100, indicates the current load percentage of the NF."; + //optional support + type types3gpp:Load; + } + + leaf locality { + description "Operator defined information about the location of the NF instance (e.g. geographic location, data center)."; + //optional support + type string; + } + + grouping udrInfo { + //optional support + + leaf groupId { + description "Identity of the UDR group that is served by the UDR instance. + If not provided, the UDR instance does not pertain to any UDR group."; + //optional support + type string; + } + + list supiRanges { + description "List of ranges of SUPI's whose profile data is available in the UDR instance."; + key "start end pattern"; + min-elements 1; + //optional support + uses SupiRange; + } + + list gpsiRanges { + description "List of ranges of GPSIs whose profile data is available in the UDR instance."; + key "start end pattern"; + min-elements 1; + //optional support + uses IdentityRange; + } + + list externalGroupIdentifiersRanges { + description "List of ranges of external groups whose profile data is available in the UDR instance."; + key "start end pattern"; + min-elements 1; + //optional support + uses IdentityRange; + } + + leaf-list supportedDataSets { + description "List of supported data sets in the UDR instance. + If not provided, the UDR supports all data sets."; + min-elements 1; + //optional support + type DataSetId; + } + } + + grouping udmInfo { + //optional support + + leaf groupId { + description "Identity of the UDM group that is served by the UDM instance. + If not provided, the UDM instance does not pertain to any UDM group."; + //optional support + type string; + } + + list supiRanges { + description "List of ranges of SUPI's whose profile data is available in the UDM instance."; + key "start end pattern"; + min-elements 1; + //optional support + uses SupiRange; + } + + list gpsiRanges { + description "List of ranges of GPSIs whose profile data is available in the UDM instance."; + key "start end pattern"; + min-elements 1; + //optional support + uses IdentityRange; + } + + list externalGroupIdentifiersRanges { + description "List of ranges of external groups whose profile data is available in the UDM instance."; + key "start end pattern"; + min-elements 1; + //optional support + uses IdentityRange; + } + + leaf-list routingIndicators { + description "List of Routing Indicator information that allows to route network signalling with SUCI + to the UDM instance. If not provided, the UDM can serve any Routing Indicator. + Pattern: '^[0-9]{1,4}$'."; + //optional support + min-elements 1; + type string; + } + } + + grouping ausfInfo { + //optional support + + leaf groupId { + description "Identity of the AUSF group. If not provided, the AUSF instance does not pertain to any AUSF group."; + //optional support + type string; + } + + list supiRanges { + description "List of ranges of SUPIs that can be served by the AUSF instance. If not provided, the AUSF can serve any SUPI."; + key "start end pattern"; + min-elements 1; + //optional support + uses SupiRange; + } + + leaf-list routingIndicators { + description "List of Routing Indicator information that allows to route network signalling with SUCI + to the AUSF instance. If not provided, the AUSF can serve any Routing Indicator. + Pattern: '^[0-9]{1,4}$'."; + //optional support + min-elements 1; + type string; + } + } + + grouping amfInfo { + //optional support + + leaf amfRegionId { + description "AMF region identifier"; + type string; + } + + leaf amfSetId { + description "AMF set identifier"; + type string; + } + + list guamiList { + description "List of supported GUAMIs."; + + key idx; //no obvious leaf to use as a key + leaf idx { type uint32; } + + min-elements 1; + uses Guami; + } + + list taiList { + description "The list of TAIs the AMF can serve. It may contain the non-3GPP access TAI. + The absence of this attribute and the taiRangeList attribute indicate that + the AMF can be selected for any TAI in the serving network."; + + key idx; //no obvious leaf to use as a key + leaf idx { type uint32; } + + //optional support + min-elements 1; + uses Tai; + } + + list taiRangeList { + description "The range of TAIs the AMF can serve. The absence of this attribute and the taiList + attribute indicate that the AMF can be selected for any TAI in the serving network."; + //optional support + min-elements 1; + key idx; //no obvious leaf to use as a key + leaf idx { type uint32; } + uses TaiRange; + } + + list backupInfoAmfFailure { + description "List of GUAMIs for which the AMF acts as a backup for AMF failure."; + + key idx; //no obvious leaf to use as a key + leaf idx { type uint32; } + + //optional support + min-elements 1; + uses Guami; + } + + list backupInfoAmfRemoval { + description "List of GUAMIs for which the AMF acts as a backup for planned AMF removal."; + + key idx; //no obvious leaf to use as a key + leaf idx { type uint32; } + + //optional support + min-elements 1; + uses Guami; + } + + list n2InterfaceAmfInfo { + description "N2 interface information of the AMF. This information needs not be sent in NF Discovery responses. + It may be used by the NRF to update the DNS for AMF discovery by the 5G Access Network."; + + //optional support + max-elements 1; + key idx; //no obvious leaf to use as a key + leaf idx { type uint32; } + uses N2InterfaceAmfInfo; + } + } + + grouping smfInfo { + //optional support + + list sNssaiSmfInfoList { + description "List of parameters supported by the SMF per S-NSSAI."; + min-elements 1; + key idx; //no obvious leaf to use as a key + leaf idx { type uint32; } + uses sNssaiSmfInfoItem; + } + + list taiList { + description "The list of TAIs the SMF can serve. It may contain the non-3GPP access TAI. + The absence of this attribute and the taiRangeList attribute indicate that + the SMF can be selected for any TAI in the serving network."; + + key idx; //no obvious leaf to use as a key + leaf idx { type uint32; } + + //optional support + min-elements 1; + uses Tai; + } + + list taiRangeList { + description "The range of TAIs the SMF can serve. The absence of this attribute and the taiList + attribute indicate that the SMF can be selected for any TAI in the serving network."; + //optional support + min-elements 1; + key idx; //no obvious leaf to use as a key + leaf idx { type uint32; } + uses TaiRange; + } + + leaf pgwFqdn { + description "The FQDN of the PGW if the SMF is a combined SMF/PGW-C."; + //optional support + type inet:domain-name; + } + + leaf-list accessType { + description "If included, this IE shall contain the access type (3GPP_ACCESS and/or NON_3GPP_ACCESS) supported by the SMF. + If not included, it shall be assumed the both access types are supported."; + + //conditional support + min-elements 1; + max-elements 2; + type AccessType; + } + } + + grouping upfInfo { + //optional support + + list sNssaiUpfInfoList { + description "List of parameters supported by the UPF per S-NSSAI."; + min-elements 1; + key idx; //no obvious leaf to use as a key + leaf idx { type uint32; } + uses SnssaiUpfInfoItem; + } + + leaf-list smfServingArea { + description "The SMF service area(s) the UPF can serve. + If not provided, the UPF can serve any SMF service area."; + + //optional support + min-elements 1; + type string; + } + + list interfaceUpfInfo { + description "List of User Plane interfaces configured on the UPF. When this IE is provided in the NF Discovery response, + the NF Service Consumer (e.g. SMF) may use this information for UPF selection."; + + key idx; //no obvious leaf to use as a key + leaf idx { type uint32; } + + //optional support + min-elements 1; + uses InterfaceUpfInfoItem; + } + + leaf iwkEpsInd { + description "Indicates whether interworking with EPS is supported by the UPF. + true: Supported + false (default): Not Supported"; + + //optional support + type boolean; + } + + leaf-list pduSessionTypes { + description "List of PDU session type(s) supported by the UPF. The absence of this attribute indicates that the UPF can be selected + for any PDU session type."; + + //optional support + min-elements 1; + type PduSessionType; + } + } + + grouping pcfInfo { + //optional support + + leaf-list dnnList { + description "DNNs supported by the PCF. + If not provided, the PCF can serve any DNN."; + + //optional support + min-elements 1; + type string; + } + + list supiRanges { + description "List of ranges of SUPIs that can be served by the PCF instance. If not provided, the PCF can serve any SUPI."; + key "start end pattern"; + min-elements 1; + //optional support + uses SupiRange; + } + + leaf rxDiamHost { + description "This IE shall be present if the PCF supports Rx interface. + When present, this IE shall indicate the Diameter host of the Rx interface for the PCF. + Pattern: '^([A-Za-z0-9]+(-[A-Za-z0-9]+).)+[a-z]{2,}$'."; + + //conditional support + type string; + } + + leaf rxDiamRealm { + description "This IE shall be present if the PCF supports Rx interface. + When present, this IE shall indicate the Diameter realm of the Rx interface for the PCF. + Pattern: '^([A-Za-z0-9]+(-[A-Za-z0-9]+).)+[a-z]{2,}$'."; + + //conditional support + type string; + } + } + + grouping bsfInfo { + //optional support + + list ipv4AddressRanges { + description "List of ranges of IPv4 addresses handled by BSF. + If not provided, the BSF can serve any IPv4 address."; + //optional support + key "start end"; + uses types3gpp:Ipv4AddressRange; + } + + leaf-list dnnList { + description "List of DNNs handled by the BSF + If not provided, the BSF can serve any DNN."; + + //optional support + min-elements 1; + type string; + } + + leaf-list ipDomainList { + description "List of IPv4 address domains, as described in subclause 6.2 of 3GPP TS 29.513, handled by the BSF. + If not provided, the BSF can serve any IP domain."; + //optional support + min-elements 1; + type string; + } + + list ipv6PrefixRanges { + description "List of ranges of IPv6 prefixes handled by the BSF. + If not provided, the BSF can serve any IPv6 prefix."; + //optional support + key "start end"; + uses types3gpp:Ipv6PrefixRange; + } + } + + grouping chfInfo { + //optional support + + list supiRangeList { + description "List of ranges of SUPIs that can be served by the CHF instance. If not provided, the CHF can serve any SUPI."; + key "start end pattern"; + min-elements 1; + //optional support + uses SupiRange; + } + + list gpsiRangeList { + description "List of ranges of GPSI that can be served by the CHF instance. If not provided, the CHF can serve any GPSI."; + key "start end pattern"; + min-elements 1; + //optional support + uses IdentityRange; + } + + list plmnRangeList { + description "List of ranges of PLMNs (including the PLMN IDs of the CHF instance) that can be served by the CHF instance. + If not provided, the CHF can serve any PLMN."; + + min-elements 1; + //optional support + key "mcc mnc"; + uses types3gpp:PLMNId; + } + } + + grouping nrfInfoGrp { + //optional support + + list servedUdrInfo { + description "This attribute contains all the udrInfo attributes locally configured in the NRF or the NRF received during NF registration."; + //optional support + + key nfInstanceID; + leaf nfInstanceID { + description "String uniquely identifying a NF instance."; + type string; + } + + min-elements 1; + uses udrInfo; + } + + list servedUdmInfo { + description "This attribute contains all the udmInfo attributes locally configured in the NRF or the NRF received during NF registration."; + //optional support + + key nfInstanceID; + leaf nfInstanceID { + description "String uniquely identifying a NF instance."; + type string; + } + + min-elements 1; + uses udmInfo; + } + + list servedAusfInfo { + description "This attribute contains all the ausfInfo attributes locally configured in the NRF or the NRF received during NF registration."; + //optional support + + key nfInstanceID; + leaf nfInstanceID { + description "String uniquely identifying a NF instance."; + type string; + } + + min-elements 1; + uses ausfInfo; + } + + list servedAmfInfo { + description "This attribute contains all the amfInfo attributes locally configured in the NRF or the NRF received during NF registration."; + //optional support + + key nfInstanceID; + leaf nfInstanceID { + description "String uniquely identifying a NF instance."; + type string; + } + + min-elements 1; + uses amfInfo; + } + + list servedSmfInfo { + description "This attribute contains all the smfInfo attributes locally configured in the NRF or the NRF received during NF registration."; + //optional support + + key nfInstanceID; + leaf nfInstanceID { + description "String uniquely identifying a NF instance."; + type string; + } + + min-elements 1; + uses smfInfo; + } + + list servedUpfInfo { + description "This attribute contains all the upfInfo attributes locally configured in the NRF or the NRF received during NF registration."; + //optional support + + key nfInstanceID; + leaf nfInstanceID { + description "String uniquely identifying a NF instance."; + type string; + } + + min-elements 1; + uses upfInfo; + } + + list servedPcfInfo { + description "This attribute contains all the pcfInfo attributes locally configured in the NRF or the NRF received during NF registration."; + //optional support + + key nfInstanceID; + leaf nfInstanceID { + description "String uniquely identifying a NF instance."; + type string; + } + + min-elements 1; + uses pcfInfo; + } + + list servedBsfInfo { + description "This attribute contains all the bsfInfo attributes locally configured in the NRF or the NRF received during NF registration."; + //optional support + + key nfInstanceID; + leaf nfInstanceID { + description "String uniquely identifying a NF instance."; + type string; + } + + min-elements 1; + uses bsfInfo; + } + + list servedChfInfo { + description "This attribute contains all the bsfInfo attributes locally configured in the NRF or the NRF received during NF registration."; + //optional support + + key nfInstanceID; + leaf nfInstanceID { + description "String uniquely identifying a NF instance."; + type string; + } + + min-elements 1; + uses chfInfo; + } + } + + list nrfInfo { + key idx; //no obvious leaf to use as a key + leaf idx { type uint32; } + max-elements 1; + uses nrfInfoGrp; + } + + leaf customInfo { + description "Specific data for custom Network Functions."; + type string; + } + + leaf recoveryTime { + description "Timestamp when the NF was (re)started."; + //optional support + type yang:date-and-time; + } + + leaf nfServicePersistence { + description "If present, and set to true, it indicates that the different service instances of a same NF Service in this NF instance, + supporting a same API version, are capable to persist their resource state in shared storage and therefore these resources + are available after a new NF service instance supporting the same API version is selected by a NF Service Consumer (see 3GPP TS 23.527). + Otherwise, it indicates that the NF Service Instances of a same NF Service are not capable to share resource state inside the NF Instance."; + + //optional support + type boolean; + } + + list nfServices { + description "List of NF Service Instances. It shall include the services produced by the NF that can be discovered by other NFs."; + key serviceInstanceID; + //optional support + min-elements 1; + uses nfs3gpp:NFServiceGrp; + } + + leaf nfProfileChangesSupportInd { + description "NF Profile Changes Support Indicator. This IE may be present in the NFRegister or NFUpdate (NF Profile Complete Replacement) request and shall be absent in the response. + true: the NF Service Consumer supports receiving NF Profile Changes in the response. + false (default): the NF Service Consumer does not support receiving NF Profile Changes in the response."; + + //optional support + type boolean; + } + + leaf nfProfileChangesInd { + description "NF Profile Changes Indicator. This IE shall be absent in the request to the NRF and may be included by the NRF in NFRegister or NFUpdate (NF Profile Complete Replacement) response. + true: the NF Profile contains NF Profile changes. + false (default): complete NF Profile."; + + //optional support + type boolean; + } + + list defaultNotificationSubscriptions { + description "Notification endpoints for different notification types."; + key notificationType; + //optional support + min-elements 1; + uses types3gpp:DefaultNotificationSubscription; + } + } + + typedef NFStatus { + type enumeration { + enum REGISTERED; + enum SUSPENDED; + } + } + + typedef DataSetId { + type enumeration { + enum SUBSCRIPTION; + enum POLICY; + enum EXPOSURE; + enum APPLICATION; + } + } + + grouping SupiRange { + leaf start { + description "First value identifying the start of a SUPI range. To be used when the range of SUPI's can be represented as a numeric range (e.g., IMSI ranges)."; + type string { + pattern '^[0-9]+$'; + } + } + + leaf end { + description "Last value identifying the end of a SUPI range. To be used when the range of SUPI's can be represented as a numeric range (e.g. IMSI ranges)."; + type string { + pattern '^[0-9]+$'; + } + } + + leaf pattern { + description "Pattern representing the set of SUPI's belonging to this range. + A SUPI value is considered part of the range if and only if the SUPI string fully matches the regular expression."; + type string; + } + } + + grouping IdentityRange { + leaf start { + description "First value identifying the start of an identity range. To be used when the range of identities can be represented as a numeric range (e.g., MSISDN ranges)."; + type string { + pattern '^[0-9]+$'; + } + } + + leaf end { + description "Last value identifying the end of an identity range. To be used when the range of identities can be represented as a numeric range (e.g. MSISDN ranges)."; + type string { + pattern '^[0-9]+$'; + } + } + + leaf pattern { + description "Pattern representing the set of identities belonging to this range. + An identity value is considered part of the range if and only if the identity string fully matches the regular expression."; + type string; + } + } + + grouping TacRange { + leaf start { + description "First value identifying the start of a TAC range, to be used when the range of TAC's can be represented as a hexadecimal range (e.g., TAC ranges)."; + type string { + pattern '^([A-Fa-f0-9]{4}|[A-Fa-f0-9]{6}$)'; + } + } + + leaf end { + description "Last value identifying the end of a TAC range, to be used when the range of TAC's can be represented as a hexadecimal range (e.g. TAC ranges)."; + type string { + pattern '^([A-Fa-f0-9]{4}|[A-Fa-f0-9]{6})$'; + } + } + + leaf pattern { + description "Pattern representing the set of TAC's belonging to this range."; + type string; + } + } + + grouping SnssaiUpfInfoItem { + list sNssai { //is the key unique + description "Supported S-NSSAI."; + min-elements 1; + max-elements 1; + key "sst sd"; + uses Snssai; + } + + list dnnUpfInfoList { + description "List of parameters supported by the UPF per DNN."; + min-elements 1; + key dnn; + uses DnnUpfInfoItem; + } + } + + grouping DnnUpfInfoItem { + leaf dnn { + description "String representing a Data Network."; + mandatory true; + type string; + } + + leaf-list dnaiList { + description "List of Data network access identifiers supported by the UPF for this DNN. + The absence of this attribute indicates that the UPF can be selected for this DNN for any DNAI."; + min-elements 1; + type string; //dnai is the type but its only a string with desc: DNAI (Data network access identifier), is this needed as its own typedef or string is ok + } + + leaf-list pduSessionTypes { + description "List of PDU session type(s) supported by the UPF for a specific DNN."; + min-elements 1; + type PduSessionType; + } + } + + grouping Snssai { + leaf sst { + description "Unsigned integer, within the range 0 to 255, representing the Slice/Service Type. + It indicates the expected Network Slice behaviour in terms of features and services."; + mandatory true; + type uint32; + } + + leaf sd { + description "3-octet string, representing the Slice Differentiator, in hexadecimal representation."; + //optional + type string { + pattern '^[A-Fa-f0-9]{6}$'; + } + } + + reference "3GPP TS 29.571"; + } + + typedef PduSessionType { + type enumeration { + enum IPV4; + enum IPV6; + enum IPV4V6; + enum UNSTRUCTURED; + enum ETHERNET; + } + } + + grouping Guami { + list plmnId { + description "PLMN Identity."; + min-elements 1; + max-elements 1; + key "mcc mnc"; + uses types3gpp:PLMNId; + } + + list amfId { + description "AMF Identity."; + min-elements 1; + max-elements 1; + key "amfRegionId amfSetId amfPointer"; + uses types3gpp:AmfIdentifier; + } + } + + grouping Tai { + list plmnId { + description "PLMN Identity."; + min-elements 1; + max-elements 1; + key "mcc mnc"; + uses types3gpp:PLMNId; + } + + leaf tac { type types3gpp:Tac; } + } + + grouping InterfaceUpfInfoItem { + leaf interfaceType { + description "User Plane interface type."; + mandatory true; + type UPInterfaceType; + } + + ////At least one of the addressing parameters (ipv4address, ipv6adress or endpointFqdn) shall be included in the InterfaceUpfInfoItem. + choice address { + case ipv4EndpointAddresses { + leaf-list ipv4EndpointAddresses { + description "Available endpoint IPv4 address(es) of the User Plane interface."; + //conditional support + min-elements 1; + type inet:ipv4-address; + } + } + + case ipv6EndpointAddresses { + leaf-list ipv6EndpointAddresses { + description "Available endpoint IPv6 address(es) of the User Plane interface."; + //conditional support + min-elements 1; + type inet:ipv6-address; + } + } + + case endpointFqdn { + leaf endpointFqdn { + description "FQDN of available endpoint of the User Plane interface."; + //conditional support + type inet:domain-name; + } + } + } + + leaf networkInstance { + description "Network Instance associated to the User Plane interface."; + //optional support + type string; + } + } + + typedef UPInterfaceType { + type enumeration { + enum N3; + enum N6; + enum N9; + } + } + + grouping TaiRange { + list plmnId { + description "PLMN ID related to the TacRange."; + min-elements 1; + max-elements 1; + key "mcc mnc"; + uses types3gpp:PLMNId; + } + + list tacRangeList { //is this key unique + description "The range of the TACs."; + min-elements 1; + key "start end"; + uses TacRange; + } + } + + typedef AccessType { + type enumeration { + enum 3GPP_ACCESS; + enum NON_3GPP_ACCESS; + } + } + + grouping N2InterfaceAmfInfo { + //At least one of the addressing parameters (ipv4address or ipv6adress) shall be included. + choice address { + case ipv4EndpointAddress { + leaf-list ipv4EndpointAddress { + description "Available AMF endpoint IPv4 address(es) for N2."; + //conditional support + min-elements 1; + type inet:ipv4-address; + } + } + + case ipv6EndpointAddress { + leaf-list ipv6EndpointAddress { + description "Available AMF endpoint IPv6 address(es) for N2."; + //conditional support + min-elements 1; + type inet:ipv6-address; + } + } + } + + leaf amfName { + description "AMF name."; + type string; + } + } + + grouping sNssaiSmfInfoItem { + list sNssai { //is the key unique + description "Supported S-NSSAI."; + min-elements 1; + max-elements 1; + key "sst sd"; + uses Snssai; + } + + list dnnSmfInfoList { //is the key unique + description "List of parameters supported by the SMF per DNN."; + min-elements 1; + key dnn; + uses DnnSmfInfoItem; + } + } + + grouping DnnSmfInfoItem { + leaf dnn { + description "Supported DNN."; + mandatory true; + type string; + } + } + + grouping PlmnSnssai { + list plmnId { + description "PLMN ID for which list of supported S-NSSAI(s) is provided."; + min-elements 1; + max-elements 1; + key "mcc mnc"; + uses types3gpp:PLMNId; + } + + list sNssaiList { //is the key unique + description "The specific list of S-NSSAIs supported by the given PLMN."; + min-elements 1; + key "sst sd"; + uses Snssai; + } + } +} \ No newline at end of file diff --git a/yang-models/_3gpp-5gc-nrm-nfservice.yang b/yang-models/_3gpp-5gc-nrm-nfservice.yang new file mode 100755 index 000000000..3d3856931 --- /dev/null +++ b/yang-models/_3gpp-5gc-nrm-nfservice.yang @@ -0,0 +1,302 @@ +module _3gpp-5gc-nrm-nfservice { + yang-version 1.1; + + namespace urn:3gpp:sa5:_3gpp-5gc-nrm-nfservice; + prefix nfs3gpp; + + import _3gpp-common-yang-types { prefix types3gpp; } + import ietf-yang-types { prefix yang; } + import ietf-inet-types { prefix inet; } + import _3gpp-5g-common-yang-types { prefix types5g3gpp; } + + organization "3gpp SA5"; + contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; + description "NF service class."; + reference "3GPP TS 29.510"; + + revision 2021-01-25 { reference CR-0454 ; } + revision 2020-11-05 { reference CR-0412 ; } + revision 2019-06-17 { reference "initial revision"; } + + grouping NFServiceGrp { + description "Represents the NFService IOC"; + leaf serviceInstanceID { + description + "Unique ID of the service instance within a given NF Instance."; + mandatory true; + type string; + } + + leaf serviceName { + description "Name of the service instance (e.g. 'nudm-sdm')."; + mandatory true; + type ServiceName; + } + + list versions { //check in review if key is ok (unique) + description "API versions supported by the NF Service and if available, + the corresponding retirement date of the NF Service."; + min-elements 1; + key "apiVersionInUri apiFullVersion"; + uses NFServiceVersion; + } + + leaf scheme { + description "URI scheme (e.g. 'http', 'https')."; + mandatory true; + type UriScheme; + } + + leaf nfServiceStatus { + description "Status of the NF Service Instance."; + mandatory true; + type NFServiceStatus; + } + + leaf fqdn { + description "FQDN of the NF Service Instance."; + //optional support + type inet:domain-name; + } + + leaf interPlmnFqdn { + description "If the NF service needs to be discoverable by other NFs in a + different PLMN, then an FQDN that is used for inter PLMN routing."; + //optional support + type inet:domain-name; + } + + list ipEndPoints { + description "IP address(es) and port information of the Network Function + (including IPv4 and/or IPv6 address)where the service is listening + for incoming service requests."; + //optional support + + key idx; + leaf idx { + type string; + } + min-elements 1; + uses ipEndPoint; + } + + leaf apiPrefix { + description "Optional path segment(s) used to construct the {apiRoot} + variable of the different API URIs."; + //optional support + type string; + } + + list defaultNotificationSubscriptions { + description "Notification endpoints for different notification types."; + key notificationType; + //optional support + min-elements 1; + uses types3gpp:DefaultNotificationSubscription; + } + + list allowedPlmns { + description "PLMNs allowed to access the service instance. + The absence of this attribute indicates that any PLMN is allowed to + access the service instance."; + + min-elements 1; + //optional support + key "mcc mnc"; + uses types3gpp:PLMNId; + } + + leaf-list allowedNfTypes { + description "Type of the NFs allowed to access the service instance. + The absence of this attribute indicates that any NF type is allowed + to access the service instance."; + + min-elements 1; + //optional support + type types3gpp:NfType; + } + + leaf-list allowedNfDomains { + description "Pattern representing the NF domain names allowed to access the service instance."; + //optional support + min-elements 1; + type string; + } + + list allowedNssais { + description "S-NSSAI of the allowed slices to access the service instance. + The absence of this attribute indicates that any slice is allowed to + access the service instance."; + min-elements 1; + //optional support + key "sd sst"; + uses types5g3gpp:SNssai; + } + + leaf priority { + description "Priority (relative to other services of the same type) + in the range of 0-65535, to be used for NF Service selection; lower + values indicate a higher priority."; + //optional support + type uint16; + } + + leaf capacity { + description "Static capacity information in the range of 0-65535, + expressed as a weight relative to other services of the same type."; + //optional support + type uint16; + } + + leaf load { + description "Dynamic load information, ranged from 0 to 100, indicates + the current load percentage of the NF Service."; + //optional support + type types3gpp:Load; + } + + leaf recoveryTime { + description "Timestamp when the NF was (re)started."; + //optional support + type yang:date-and-time; + } + + list chfServiceInfo { //is the key unique + description "Specific data for a CHF service instance."; + //optional support + max-elements 1; + key "primaryChfServiceInstance secondaryChfServiceInstance"; + uses ChfServiceInfo; + } + + leaf supportedFeatures { + description "Supported Features of the NF Service instance."; + //optional support + type SupportedFeatures; + } + } + + typedef SupportedFeatures { + type string { + pattern '[A-Fa-f0-9]*'; + } + } + + grouping ipEndPoint { + choice address { + leaf ipv4Address { + type inet:ipv4-address; + } + + leaf ipv6Address { + type inet:ipv6-address; + } + + leaf ipv6Prefix { + type inet:ipv6-prefix; + } + } + + leaf transport { + type TransportProtocol; + } + + leaf port { + type uint16; + } + } + + typedef TransportProtocol { + type enumeration { + enum TCP; + enum STCP; + enum UDP; + } + } + + grouping NFServiceVersion { + leaf apiVersionInUri { + mandatory true; + type string; + } + + leaf apiFullVersion { + mandatory true; + type string; + } + + leaf expiry { + //optional to support + type yang:date-and-time; + } + } + + typedef ServiceName { + type enumeration { + enum NNRF_NFM; + enum NNRF_DISC; + enum NUDM_SDM; + enum NUDM_UECM; + enum NUDM_UEAU; + enum NUDM_EE; + enum NUDM_PP; + enum NAMF_COMM; + enum NAMF_EVTS; + enum NAMF_MT; + enum NAMF_LOC; + enum NSMF_PDUSESSION; + enum NSMF_EVENT-EXPOSURE; + enum NAUSF_AUTH; + enum NAUSF_SORPROTECTION; + enum NNEF_PFDMANAGEMENT; + enum NPCF_AM-POLICY-CONTROL; + enum NPCF_SMPOLICYCONTROL; + enum NPCF_POLICYAUTHORIZATION; + enum NPCF_BDTPOLICYCONTROL; + enum NPCF_EVENTEXPOSURE; + enum NPCF_UE_POLICY_CONTROL; + enum NSMSF_SMS; + enum NNSSF_NSSELECTION; + enum NNSSF_NSSAIAVAILABILITY; + enum NUDR_DR; + enum NLMF_LOC; + enum N5G_EIR_EIC; + enum NBSF_MANAGEMENT; + enum NCHF_SPENDINGLIMITCONTROL; + enum NCHF_CONVERGEDCHARGING; + enum NNWDAF_EVENTSSUBSCRIPTION; + enum NNWDAF_ANALYTICSINFO; + } + } + + typedef UriScheme { + type enumeration { + enum HTTP; + enum HTTPS; + } + } + + typedef NFServiceStatus { + type enumeration { + enum REGISTERED; + enum SUSPENDED; + enum UNDISCOVERABLE; + } + } + + grouping ChfServiceInfo { + leaf primaryChfServiceInstance { + description "Shall be present if the CHF service instance serves as a + secondary CHF instance of another primary CHF service instance."; + //conditional to support + type string; + } + + leaf secondaryChfServiceInstance { + description "Shall be present if the CHF service instance serves as a + primary CHF instance of another secondary CHF service instance."; + //conditional to support + type string; + } + } +} \ No newline at end of file diff --git a/yang-models/_3gpp-5gc-nrm-ngeirfunction.yang b/yang-models/_3gpp-5gc-nrm-ngeirfunction.yang new file mode 100755 index 000000000..9edbd01f0 --- /dev/null +++ b/yang-models/_3gpp-5gc-nrm-ngeirfunction.yang @@ -0,0 +1,80 @@ +module _3gpp-5gc-nrm-ngeirfunction { + yang-version 1.1; + + namespace urn:3gpp:sa5:_3gpp-5gc-nrm-ngeirfunction; + prefix ngeir3gpp; + + import _3gpp-common-managed-function { prefix mf3gpp; } + import _3gpp-common-managed-element { prefix me3gpp; } + import _3gpp-common-yang-types { prefix types3gpp; } + import _3gpp-5g-common-yang-types { prefix types5g3gpp; } + import _3gpp-common-top { prefix top3gpp; } + + organization "3gpp SA5"; + contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; + description "This IOC represents the 5G-EIR function in 5GC. For more + information about the 5G-EIR, see 3GPP TS 23.501."; + reference "3GPP TS 28.541"; + + revision 2020-11-05 { reference CR-0412 ; } + revision 2019-10-25 { reference "S5-194457 S5-195427 S5-193518"; } + + revision 2019-05-15 {reference "initial revision"; } + + grouping NGEIRFunctionGrp { + description "Represents the NGEIRFunction IOC"; + uses mf3gpp:ManagedFunctionGrp; + + list pLMNIdList { + description "List of at most six entries of PLMN Identifiers, but at + least one (the primary PLMN Id). + The PLMN Identifier is composed of a Mobile Country Code (MCC) and + a Mobile Network Code (MNC)."; + + min-elements 1; + max-elements 6; + key "mcc mnc"; + uses types3gpp:PLMNId; + } + + list sNSSAIList { + description "List of S-NSSAIs the managed object is capable of supporting. + (Single Network Slice Selection Assistance Information) + An S-NSSAI has an SST (Slice/Service type) and an optional SD + (Slice Differentiator) field."; + //optional support + reference "3GPP TS 23.003"; + key "sd sst"; + uses types5g3gpp:SNssai; + } + + list managedNFProfile { + key idx; + min-elements 1; + max-elements 1; + uses types3gpp:ManagedNFProfile; + } + + list commModelList { + min-elements 1; + key "groupId"; + description "Specifies a list of commModel. It can be used by NF and + NF services to interact with each other in 5G Core network "; + reference "3GPP TS 23.501"; + uses types5g3gpp:CommModel; + } + } + + augment "/me3gpp:ManagedElement" { + list NGEIRFunction { + description "5G Core NGEIR Function"; + reference "3GPP TS 28.541"; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses NGEIRFunctionGrp; + } + uses mf3gpp:ManagedFunctionContainedClasses; + } + } +} \ No newline at end of file diff --git a/yang-models/_3gpp-5gc-nrm-nrffunction.yang b/yang-models/_3gpp-5gc-nrm-nrffunction.yang new file mode 100755 index 000000000..62e0ca74c --- /dev/null +++ b/yang-models/_3gpp-5gc-nrm-nrffunction.yang @@ -0,0 +1,88 @@ +module _3gpp-5gc-nrm-nrffunction { + yang-version 1.1; + + namespace urn:3gpp:sa5:_3gpp-5gc-nrm-nrffunction; + prefix nrf3gpp; + + import _3gpp-common-managed-function { prefix mf3gpp; } + import _3gpp-common-managed-element { prefix me3gpp; } + import ietf-inet-types { prefix inet; } + import _3gpp-common-yang-types { prefix types3gpp; } + import _3gpp-5gc-nrm-nfprofile { prefix nfp3gpp; } + import _3gpp-common-top { prefix top3gpp; } + import _3gpp-5g-common-yang-types { prefix types5g3gpp; } + + organization "3gpp SA5"; + contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; + description "This IOC represents the NRF function in 5GC. + For more information about the NRF, see 3GPP TS 23.501 [2]."; + reference "3GPP TS 28.541"; + + revision 2020-11-05 { reference CR-0412 ; } + revision 2020-08-03 { reference "CR-0321"; } + revision 2019-10-28 { reference S5-193518 ; } + revision 2019-05-15 { reference "initial revision"; } + + grouping NRFFunctionGrp { + description "Represents the NRFFunction IOC"; + uses mf3gpp:ManagedFunctionGrp; + + list pLMNIdList { + description "List of at most six entries of PLMN Identifiers, but at + least one (the primary PLMN Id). + The PLMN Identifier is composed of a Mobile Country Code (MCC) and a + Mobile Network Code (MNC)."; + + min-elements 1; + max-elements 6; + key "mcc mnc"; + uses types3gpp:PLMNId; + } + + leaf sBIFQDN { + description "The FQDN of the registered NF instance in the service-based + interface."; + type inet:domain-name; + } + + leaf-list cNSIIdList { + description "NSI ID. NSI ID is an identifier for identifying the Core + Network part of a Network Slice instance when multiple Network Slice + instances of the same Network Slice are deployed, and there is a need + to differentiate between them in the 5GC, see clause 3.1 of TS 23.501 + and subclause 6.1.6.2.7 of 3GPP TS 29.531"; + type string; + } + + list sNSSAIList { + description "List of S-NSSAIs the managed object is capable of supporting. + (Single Network Slice Selection Assistance Information) + An S-NSSAI has an SST (Slice/Service type) and an optional SD + (Slice Differentiator) field."; + //optional support + reference "3GPP TS 23.003"; + key "sd sst"; + uses types5g3gpp:SNssai; + } + + list nFProfileList { + description "Set of NFProfile(s) to be registered in the NRF instance."; + //optional support + key nfInstanceID; + uses nfp3gpp:NFProfileGrp; + } + } + + augment "/me3gpp:ManagedElement" { + list NRFFunction { + description "5G Core NRF Function"; + reference "3GPP TS 28.541"; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses NRFFunctionGrp; + } + uses mf3gpp:ManagedFunctionContainedClasses; + } + } +} \ No newline at end of file diff --git a/yang-models/_3gpp-5gc-nrm-nssffunction.yang b/yang-models/_3gpp-5gc-nrm-nssffunction.yang new file mode 100755 index 000000000..b68d988ec --- /dev/null +++ b/yang-models/_3gpp-5gc-nrm-nssffunction.yang @@ -0,0 +1,87 @@ +module _3gpp-5gc-nrm-nssffunction { + yang-version 1.1; + + namespace urn:3gpp:sa5:_3gpp-5gc-nrm-nssffunction; + prefix nssf3gpp; + + import _3gpp-common-managed-function { prefix mf3gpp; } + import _3gpp-common-managed-element { prefix me3gpp; } + import ietf-inet-types { prefix inet; } + import _3gpp-common-yang-types { prefix types3gpp; } + import _3gpp-common-top { prefix top3gpp; } + import _3gpp-5g-common-yang-types { prefix types5g3gpp; } + + organization "3gpp SA5"; + contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; + description "This IOC represents the NSSF function in 5GC. For more + information about the NSSF, see 3GPP TS 23.501."; + reference "3GPP TS 28.541"; + + revision 2020-11-05 { reference CR-0412 ; } + revision 2020-08-03 { reference "CR-0321"; } + revision 2019-10-25 { reference "S5-194457 S5-195427 S5-193518"; } + revision 2019-05-15 { reference "initial revision"; } + + grouping NSSFFunctionGrp { + description "Represents the NSSFFunction IOC"; + uses mf3gpp:ManagedFunctionGrp; + + list pLMNIdList { + description "List of at most six entries of PLMN Identifiers, but at least + one (the primary PLMN Id). + The PLMN Identifier is composed of a Mobile Country Code (MCC) and a + Mobile Network Code (MNC)."; + + min-elements 1; + max-elements 6; + key "mcc mnc"; + uses types3gpp:PLMNId; + } + + leaf sBIFQDN { + description "The FQDN of the registered NF instance in the service-based + interface."; + type inet:domain-name; + } + + list sNSSAIList { + description "List of S-NSSAIs the managed object is capable of supporting. + (Single Network Slice Selection Assistance Information) + An S-NSSAI has an SST (Slice/Service type) and an optional SD + (Slice Differentiator) field."; + + reference "3GPP TS 23.003"; + key "sd sst"; + uses types5g3gpp:SNssai; + } + + leaf-list cNSIIdList { + description "NSI ID. NSI ID is an identifier for identifying the Core + Network part of a Network Slice instance when multiple Network Slice + instances of the same Network Slice are deployed, and there is a need + to differentiate between them in the 5GC, see clause 3.1 of TS 23.501 + and subclause 6.1.6.2.7 of 3GPP TS 29.531"; + type string; + } + + list managedNFProfile { + key idx; + min-elements 1; + max-elements 1; + uses types3gpp:ManagedNFProfile; + } + } + + augment "/me3gpp:ManagedElement" { + list NSSFFunction { + description "5G Core NSSF Function"; + reference "3GPP TS 28.541"; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses NSSFFunctionGrp; + } + uses mf3gpp:ManagedFunctionContainedClasses; + } + } +} \ No newline at end of file diff --git a/yang-models/_3gpp-5gc-nrm-nwdaffunction.yang b/yang-models/_3gpp-5gc-nrm-nwdaffunction.yang new file mode 100755 index 000000000..bf143ba35 --- /dev/null +++ b/yang-models/_3gpp-5gc-nrm-nwdaffunction.yang @@ -0,0 +1,86 @@ +module _3gpp-5gc-nrm-nwdaffunction { + yang-version 1.1; + + namespace urn:3gpp:sa5:_3gpp-5gc-nrm-nwdaffunction; + prefix nwdaf3gpp; + + import _3gpp-common-managed-function { prefix mf3gpp; } + import _3gpp-common-managed-element { prefix me3gpp; } + import ietf-inet-types { prefix inet; } + import _3gpp-common-yang-types { prefix types3gpp; } + import _3gpp-5g-common-yang-types { prefix types5g3gpp; } + import _3gpp-common-top { prefix top3gpp; } + + organization "3gpp SA5"; + contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; + description "This IOC represents the NWDAF function in 5GC. For more information about the NWDAF, see 3GPP TS 23.501."; + reference "3GPP TS 28.541"; + + revision 2020-11-05 { reference CR-0412 ; } + revision 2019-10-25 { reference "S5-194457 S5-195427 S5-193518"; } + + revision 2019-05-15 {reference "initial revision"; } + + grouping NWDAFFunctionGrp { + description "Represents the NWDAFFunction IOC"; + uses mf3gpp:ManagedFunctionGrp; + + list pLMNIdList { + description "List of at most six entries of PLMN Identifiers, but at + least one (the primary PLMN Id). + The PLMN Identifier is composed of a Mobile Country Code (MCC) and a + Mobile Network Code (MNC)."; + + min-elements 1; + max-elements 6; + key "mcc mnc"; + uses types3gpp:PLMNId; + } + + leaf sBIFQDN { + description "The FQDN of the registered NF instance in the service-based + interface."; + type inet:domain-name; + } + + list sNSSAIList { + description "List of S-NSSAIs the managed object is capable of supporting. + (Single Network Slice Selection Assistance Information) + An S-NSSAI has an SST (Slice/Service type) and an optional SD + (Slice Differentiator) field."; + //optional support + reference "3GPP TS 23.003"; + key "sd sst"; + uses types5g3gpp:SNssai; + } + + list managedNFProfile { + key idx; + min-elements 1; + max-elements 1; + uses types3gpp:ManagedNFProfile; + } + + list commModelList { + min-elements 1; + key "groupId"; + description "Specifies a list of commModel. It can be used by NF and + NF services to interact with each other in 5G Core network "; + reference "3GPP TS 23.501"; + uses types5g3gpp:CommModel; + } + } + + augment "/me3gpp:ManagedElement" { + list NWDAFFunction { + description "5G Core NWDAF Function"; + reference "3GPP TS 28.541"; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses NWDAFFunctionGrp; + } + uses mf3gpp:ManagedFunctionContainedClasses; + } + } +} \ No newline at end of file diff --git a/yang-models/_3gpp-5gc-nrm-pcffunction.yang b/yang-models/_3gpp-5gc-nrm-pcffunction.yang new file mode 100755 index 000000000..a7f9bd152 --- /dev/null +++ b/yang-models/_3gpp-5gc-nrm-pcffunction.yang @@ -0,0 +1,97 @@ +module _3gpp-5gc-nrm-pcffunction { + yang-version 1.1; + + namespace urn:3gpp:sa5:_3gpp-5gc-nrm-pcffunction; + prefix pcf3gpp; + + import _3gpp-common-managed-function { prefix mf3gpp; } + import _3gpp-common-managed-element { prefix me3gpp; } + import ietf-inet-types { prefix inet; } + import _3gpp-common-yang-types { prefix types3gpp; } + import _3gpp-5g-common-yang-types { prefix types5g3gpp; } + import _3gpp-common-top { prefix top3gpp; } + + organization "3gpp SA5"; + contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; + description "This IOC represents the PCF function in 5GC. For more + information about the PCF, see 3GPP TS 23.501."; + reference "3GPP TS 28.541"; + + revision 2020-11-05 { reference CR-0412 ; } + revision 2020-08-06 { reference "CR-0333"; } + revision 2020-08-06 { reference "CR-0331"; } + revision 2019-10-25 { reference "S5-194457 S5-193518"; } + revision 2019-05-22 { reference "initial revision"; } + + grouping PCFFuntionGrp { + description "Represents the PCFFuntion IOC"; + uses mf3gpp:ManagedFunctionGrp; + + list pLMNIdList { + description "List of at most six entries of PLMN Identifiers, but at + least one (the primary PLMN Id). + The PLMN Identifier is composed of a Mobile Country Code (MCC) and a + Mobile Network Code (MNC)."; + + min-elements 1; + max-elements 6; + key "mcc mnc"; + uses types3gpp:PLMNId; + } + + leaf sBIFQDN { + description "The FQDN of the registered NF instance in the service-based + interface."; + type inet:domain-name; + } + + list sNSSAIList { + description "List of S-NSSAIs the managed object is capable of supporting. + (Single Network Slice Selection Assistance Information) + An S-NSSAI has an SST (Slice/Service type) and an optional SD + (Slice Differentiator) field."; + //optional support + reference "3GPP TS 23.003"; + key "sd sst"; + uses types5g3gpp:SNssai; + } + + list managedNFProfile { + key idx; + min-elements 1; + max-elements 1; + uses types3gpp:ManagedNFProfile; + } + list commModelList { + min-elements 1; + key "groupId"; + description "Specifies a list of commModel. It can be used by NF and + NF services to interact with each other in 5G Core network "; + reference "3GPP TS 23.501"; + uses types5g3gpp:CommModel; + } + leaf dynamic5QISetRef { + type types3gpp:DistinguishedName; + description "DN of the Dynamic5QISet that the PCFFunction supports + (is associated to)."; + } + leaf configurable5QISetRef { + type types3gpp:DistinguishedName; + description "DN of the Configurable5QISet that the PCFFunction supports + (is associated to)."; + } + } + + augment "/me3gpp:ManagedElement" { + list PCFFunction { + description "5G Core PCF Function"; + reference "3GPP TS 28.541"; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses PCFFuntionGrp; + } + uses mf3gpp:ManagedFunctionContainedClasses; + } + } +} \ No newline at end of file diff --git a/yang-models/_3gpp-5gc-nrm-predefinedpccruleset.yang b/yang-models/_3gpp-5gc-nrm-predefinedpccruleset.yang new file mode 100755 index 000000000..ac3faf5c6 --- /dev/null +++ b/yang-models/_3gpp-5gc-nrm-predefinedpccruleset.yang @@ -0,0 +1,642 @@ +module _3gpp-5gc-nrm-predefinedpccruleset { + yang-version 1.1; + + namespace urn:3gpp:sa5:_3gpp-5gc-nrm-predefinedpccruleset; + prefix PredPccRules3gpp; + + import _3gpp-common-managed-element { prefix me3gpp; } + import _3gpp-common-top { prefix top3gpp; } + import _3gpp-5gc-nrm-smffunction { prefix smf3gpp; } + import _3gpp-5gc-nrm-pcffunction { prefix pcf3gpp; } + import ietf-yang-types { prefix yang; } + + organization "3gpp SA5"; + contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; + description "This IOC represents the predefined PCC rules, which are + configured to SMF and referenced by PCF."; + reference "3GPP TS 28.541"; + + revision 2020-09-30 { reference "CR-0393"; } + revision 2020-08-21 { reference "CR-0330"; } + + grouping TscaiInputContainer { + description "It specifies the transports TSCAI input parameters for TSC + traffic at the ingress interface of the DS-TT/UE for a PCC rule."; + reference " 3GPP TS 29.512"; + leaf periodicity { + type uint32; + description "It identifies the time period between the start of two bursts + in reference to the TSN GM."; + reference "3GPP TS 29.571."; + } + leaf burstArrivalTime { + type yang:date-and-time; + description "It Indicates the arrival time (in date-time format) of the + data burst in reference to the TSN GM."; + reference "3GPP,TS 29.571."; + } + } + + grouping ConditionData { + description "It specifies the specifies the condition data for a PCC rule."; + leaf condId { + type string; + mandatory true; + description "It uniquely identifies the condition data."; + } + leaf activationTime { + type yang:date-and-time; + description " It indicates the time (in date-time format) when the decision + data shall be activated."; + reference "3GPP29.512 and TS 29.571."; + } + leaf deactivationTime { + type yang:date-and-time; + description "It indicates the time (in date-time format) when the decision + data shall be deactivated."; + reference "3GPPTS 29.512 and TS 29.571."; + } + leaf accessType { + type enumeration { + enum 3GPP_ACCESS; + enum NON_3GPP_ACCESS; + } + description "It provides the condition of access type of the UE when the + session AMBR shall be enforced."; + reference "3GPPTS 29.512."; + } + leaf ratType { + type enumeration { + enum NR; + enum EUTRA; + enum WLAN; + enum VIRTUAL; + enum NBIOT; + enum WIRELINE; + enum WIRELINE_CABLE; + enum WIRELINE_BBF; + enum LTE-M; + enum NR_U; + enum EUTRA_U; + enum TRUSTED_N3GA; + enum TRUSTED_WLAN; + enum UTRA; + enum GERA; + } + description "It provides the condition of RAT type of the UE when the + session AMBR shall be enforced."; + reference "3GPPTS 29.512 and TS 29.571."; + } + } + + grouping SteeringMode { + description "It specifies the traffic distribution rule, see TS 29.512."; + leaf steerModeValue { + type enumeration { + enum ACTIVE_STANDBY; + enum LOAD_BALANCING; + enum SMALLEST_DELAY; + enum PRIORITY_BASED; + } + mandatory true; + description "It indicates the value of the steering mode, see TS 29.512."; + } + leaf active { + type enumeration { + enum 3GPP_ACCESS; + enum NON_3GPP_ACCESS; + } + description "It indicates the active access, see TS 29.571."; + } + leaf standby { + type enumeration { + enum 3GPP_ACCESS; + enum NON_3GPP_ACCESS; + } + description "It indicates the Standby access, see TS 29.571."; + } + leaf threeGLoad { + type uint8 { + range 0..100; + } + description "It indicates the traffic load to steer to the 3GPP Access + expressed in one percent."; + } + leaf prioAcc { + type enumeration { + enum 3GPP_ACCESS; + enum NON_3GPP_ACCESS; + } + description "It indicates the high priority access."; + reference "3GPPTS 29.571"; + } + } + + grouping UpPathChgEvent { + description "It specifies the information about the AF subscriptions of the + UP path change."; + reference "3GPPTS 29.512"; + leaf notificationUri { + type string; + mandatory true; + description "It provides notification address (Uri) of AF receiving the + event notification."; + } + leaf notifCorreId { + type string; + mandatory true; + description "It is used to set the value of Notification Correlation ID in + the notification sent by the SMF, see TS 29.512"; + } + leaf dnaiChgType { + type enumeration { + enum EARLY; + enum EARLY_LATE; + enum LATE; + } + mandatory true; + description "It indicates the type of DNAI change, see TS 29.512"; + } + leaf afAckInd { + type boolean; + default false; + description "It identifies whether the AF acknowledgement of UP path + event notification is expected."; + } + } + + grouping RouteInformation { + description "It specifies the traffic routing information."; + leaf ipv4Addr { + type string; + description "It defines the Ipv4 address of the tunnel end point in the + data network, formatted in the dotted decimal notation."; + } + leaf ipv6Addr { + type string; + description "It defines the Ipv6 address of the tunnel end point in the + data network."; + } + leaf portNumber { + type uint32; + mandatory true; + description " It defines the UDP port number of the tunnel end point in + the data network, see TS 29.571"; + } + } + + grouping RouteToLocation { + description "It specifies a list of location which the traffic shall be + routed to for the AF request."; + leaf dnai { + type string; + mandatory true; + description "It represents the DNAI (Data network access identifier)."; + reference "3GPP 3GPP TS 23.501"; + } + container routeInfo{ + description "It provides the traffic routing information."; + uses RouteInformation; + } + leaf routeProfId { + type string; + description "It identifies the routing profile."; + } + } + + grouping RedirectInformaton { + description "It specifies the redirect information for traffic control in + the PCC rule."; + leaf redirectEnabled { + type boolean; + mandatory true; + description "It indicates whether the redirect instruction is enabled."; + } + leaf redirectAddressType { + type enumeration { + enum IPV4_ADDR; + enum IPV6_ADDR; + enum URL; + enum SIP_URI; + } + mandatory true; + description "It indicates the type of redirect address."; + reference "3GPPTS 29.512"; + } + leaf redirectServerAddress { + type string; + mandatory true; + description "It indicates the address of the redirect server."; + } + } + + grouping TrafficControlDataInformation { + description "It specifies the traffic control data for a service + flow of a PCC rule."; + leaf tcId { + type string; + mandatory true; + description "It univocally identifies the traffic control policy data + within a PDU session."; + } + leaf flowStatus { + type enumeration { + enum ENABLED-UPLINK; + enum ENABLED-DOWNLINK; + enum ENABLED; + enum DISABLED; + enum REMOVED; + } + mandatory true; + description "It represents whether the service data flow(s) are enabled + or disabled."; + } + container redirectInfo { + description "It contains the redirect information indicating whether the + detected application traffic should be redirected to another controlled + address."; + uses RedirectInformaton; + } + container addRedirectInfo { + description "It contains the additional redirect information indicating + whether the detected application traffic should be redirected to another + controlled address."; + list redirectInfo { + description "The list of redirect information indicating whether the + detected application traffic should be redirected to another + controlled address."; + key "redirectServerAddress"; + uses RedirectInformaton; + } + } + leaf muteNotif { + type boolean; + default false; + description "It indicates whether applicat'on's start or stop notification + is to be muted."; + } + leaf trafficSteeringPolIdDl { + type string; + description "It references to a pre-configured traffic steering policy for downlink traffic at the SMF, see TS 29.512"; + } + leaf trafficSteeringPolIdUl { + type string; + mandatory false; + description "It references to a pre-configured traffic steering policy for + uplink traffic at the SMF, see TS 29.512"; + } + container routeToLocs { + description "It provides a list of location which the traffic shall be + routed to for the AF request."; + list routeToLoc { + description "The list of location which the traffic shall be routed to + for the AF request."; + key "dnai"; + uses RouteToLocation; + } + } + uses UpPathChgEvent; + leaf steerFun { + type enumeration { + enum MPTCP; + enum ATSSS_LL; + } + description "It indicates the applicable traffic steering functionality."; + reference "3GPPTS 29.512"; + } + container steerModeDl { + description "It provides the traffic distribution rule across 3GPP and + Non-3GPP accesses to apply for downlink traffic."; + uses SteeringMode; + } + container steerModeUl { + description "It provides the traffic distribution rule across 3GPP and Non-3GPP accesses to apply for uplink traffic."; + uses SteeringMode; + } + leaf mulAccCtrl { + type enumeration { + enum ALLOWED; + enum NOT_ALLOWED; + } + description "It indicates whether the service data flow, corresponding to the service data flow template, is allowed or not allowed."; + } + } + + grouping ARP { + description "It specifies the allocation and retention priority of a QoS control policy."; + leaf priorityLevel { + type uint8 { + range 1..15; + } + mandatory true; + description "It defines the relative importance of a resource request."; + } + leaf preemptCap { + type enumeration { + enum NOT_PREEMPT; + enum MAY_PREEMPT; + } + mandatory true; + description "It defines whether a service data flow may get resources that were already assigned to another service data flow with a lower priority level."; + } + leaf preemptVuln { + type enumeration { + enum NOT_PREEMPTABLE; + enum PREEMPTABLE; + } + mandatory true; + description "It defines whether a service data flow may lose the resources assigned to it in order to admit a service data flow with higher priority level."; + } + } + + grouping QosDataInformation { + description "It specifies the QoS control policy data for a service flow of a PCC rule."; + leaf qosId { + type string; + mandatory true; + description "It identifies the QoS control policy data for a PCC rule."; + } + leaf fiveQIValue { + type uint8 { + range 0..255; + } + mandatory true; + description "It indicates the 5QI value."; + } + leaf maxbrUl { + type string; + description "It represents the maximum uplink bandwidth."; + } + leaf maxbrDl { + type string; + description "It represents the maximum downlink bandwidth."; + } + leaf gbrUl { + type string; + description "It represents the guaranteed uplink bandwidth."; + } + leaf gbrDl { + type string; + description "It represents the guaranteed downlink bandwidth."; + } + uses ARP; + leaf qosNotificationControl { + type boolean; + default false; + description "It indicates whether notifications are requested from 3GPP NG-RAN when the GFBR can no longer (or again) be guaranteed for a QoS Flow during the lifetime of the QoS Flow."; + } + leaf reflectiveQos { + type boolean; + default false; + description "Indicates whether the QoS information is reflective for the corresponding non-GBR service data flow"; + } + leaf sharingKeyDl { + type string; + description "It indicates, by containing the same value, what PCC rules may share resource in downlink direction."; + } + leaf sharingKeyUl { + type string; + description "It indicates, by containing the same value, what PCC rules may share resource in uplink direction."; + } + leaf maxPacketLossRateDl { + type uint16 { + range 0..1000; + } + description "It indicates the downlink maximum rate for lost packets that can be tolerated for the service data flow."; + } + leaf maxPacketLossRateUl { + type uint16 { + range 0..1000; + } + description "It indicates the uplink maximum rate for lost packets that can be tolerated for the service data flow."; + } + leaf extMaxDataBurstVol { + type uint32 { + range 4096..2000000; + } + description "It denotes the largest amount of data that is required to be transferred within a period of 5G-AN PDB, see TS 29.512"; + } + } + + grouping EthFlowDescription { + description "It describes an Ethernet flow."; + leaf destMacAddr { + type string; + mandatory true; + description "It specifies the destination MAC address formatted in the + hexadecimal ."; + reference "clause 1.1 and clause 2.1 of IETF RFC"; + } + leaf ethType { + type string; + mandatory true; + description "A two-octet string that represents the Ethertype."; + reference "IEEE 802.3 and IETF RFC 7042 in hexadecimal representation."; + } + leaf fDesc { + type string; + description "It contains the flow description for the Uplink or Downlink IP flow. It shall be present when the ethtype is IP."; + } + leaf fDir { + type enumeration { + enum DOWNLINK; + enum UPLINK; + } + mandatory true; + description "It indicates the packet filter direction."; + } + leaf sourceMacAddr { + type string; + mandatory true; + description "It specifies the source MAC address formatted in the + hexadecimal notation."; + reference "clause 1.1 and clause 2.1 of IETF RFC 7042"; + } + leaf-list vlanTags { + type string; + description "It specifies the Customer-VLAN and/or Service-VLAN tags + containing the VID, PCP/DEI fields as defined in IEEE 802.1Q and + IETF RFC 7042. The first/lower instance in the array stands for the + Customer-VLAN tag and the second/higher instance in the array stands + for the Service-VLAN tag."; + } + leaf srcMacAddrEnd { + type string; + description "It specifies the source MAC address end. If this attribute is present, the sourceMacAddr attribute specifies the source MAC address start. E.g. srcMacAddrEnd with value 00-10-A4-23-3E-FE and sourceMacAddr with value 00-10-A4-23-3E-02 means all MAC addresses from 00-10-A4-23-3E-02 up to and including 00-10-A4-23-3E-FE."; + } + leaf destMacAddrEnd { + type string; + description "It specifies the destination MAC address end. If this attribute is present, the destMacAddr attribute specifies the destination MAC address start."; + } + } + + grouping FlowInformation { + description "It specifies the flow information of a PCC rule."; + leaf flowDescription { + type string; + mandatory true; + description "It defines a packet filter for an IP flow."; + } + uses EthFlowDescription; + leaf packFiltId { + type string; + mandatory true; + description "It is the identifier of the packet filter."; + } + leaf packetFilterUsage { + type boolean; + default false; + description "It indicates if the packet shall be sent to the UE."; + } + leaf tosTrafficClass { + type string; + mandatory true; + description "It contains the Ipv4 Type-of-Service and mask field or the Ipv6 Traffic-Class field and mask field."; + } + leaf spi { + type string; + mandatory true; + description "It is the security parameter index of the IPSec packet."; + reference "IETF RFC 4301"; + } + leaf flowLabel { + type string; + description "It specifies the Ipv6 flow label header field."; + } + leaf flowDirection { + type enumeration { + enum DOWNLINK; + enum UPLINK; + enum BIDIRECTIONAL; + enum UNSPECIFIED; + } + mandatory true; + description "It indicates the direction/directions that a filter is applicable."; + } + } + + grouping PccRule { + description "It specifies the PCC rule, see TS 29.512"; + leaf pccRuleId { + type string; + mandatory true; + description "It identifies the PCC rule."; + } + container flowInfoList { + description "It is a list of IP flow packet filter information."; + list flowInfo { + description "The list of IP flow packet filter information."; + key "packFiltId"; + uses FlowInformation; + } + } + leaf applicationId { + type string; + default false; + description "A reference to the application detection filter configured + at the UPF."; + } + leaf appDescriptor { + type string; + description "It is the ATSSS rule application descriptor."; + } + leaf contentVersion { + type uint8; + description "Indicates the content version of the PCC rule."; + } + leaf precedence { + type uint8 { + range 0..255; + } + description "It indicates the order in which this PCC rule is applied + relative to other PCC rules within the same PDU session."; + } + leaf afSigProtocol { + type enumeration { + enum NO_INFORMATION; + enum SIP; + } + description "Indicates the protocol used for signalling between the UE + and the AF, the default value is NO_INFORMATION."; + } + leaf isAppRelocatable { + type boolean; + default false; + mandatory false; + description "It indicates the application relocation possibility, the + default value is NO_INFORMATION."; + } + leaf isUeAddrPreserved { + type boolean; + default false; + description "It Indicates whether UE IP address should be preserved."; + } + container qosData { + description "It contains the QoS control policy data for a PCC rule."; + list qosDataInfo { + description "The list of QoS control policy data."; + key "qosId"; + uses QosDataInformation; + } + } + container altQosParams { + description "It contains the QoS control policy data for the Alternative + QoS parameter sets of the service data flow."; + list qosDataInfo { + description "The list of QoS control policy data."; + key "qosId"; + uses QosDataInformation; + } + } + container trafficControlData { + description "It contains the traffic control policy data for a PCC rule."; + list trafficControlDataInfo { + description "The list of traffic control policy data."; + key "tcId"; + uses TrafficControlDataInformation; + } + } + uses ConditionData; + container tscaiInputUl { + description "It contains transports TSCAI input parameters for TSC traffic at the ingress interface of the DS-TT/UE (uplink flow direction)."; + uses TscaiInputContainer; + + } + container tscaiInputDl { + description "It contains transports TSCAI input parameters for TSC traffic at the ingress of the NW-TT (downlink flow direction)."; + uses TscaiInputContainer; + } + } + + grouping PredefinedPccRuleSetGrp { + description "Represents the PredefinedPccRuleSet IOC."; + list PredefinedPccRules { + description "The list of predefined PCC rules."; + key "pccRuleId"; + uses PccRule; + } + } + + grouping PredefinedPccRuleSetSubtree { + description "It specifies the PredefinedPccRuleSet IOC with inherited attributes."; + list PredefinedPccRuleSet { + description "Specifies the predefined PCC rules."; + key "id"; + uses top3gpp:Top_Grp; + container attributes { + description "It contains the attributes defined specifically in the PredefinedPccRuleSet IOC."; + uses PredefinedPccRuleSetGrp; + } + } + } + + augment "/me3gpp:ManagedElement/smf3gpp:SMFFunction" { + description "It specifies the containment relation of PredefinedPccRuleSet MOI with SMFFunction MOI."; + uses PredefinedPccRuleSetSubtree; + } + + augment "/me3gpp:ManagedElement/pcf3gpp:PCFFunction" { + description "It specifies the containment relation of PredefinedPccRuleSet MOI with PCFFunction MOI."; + uses PredefinedPccRuleSetSubtree; + } +} \ No newline at end of file diff --git a/yang-models/_3gpp-5gc-nrm-scpfunction.yang b/yang-models/_3gpp-5gc-nrm-scpfunction.yang new file mode 100755 index 000000000..aa1f98072 --- /dev/null +++ b/yang-models/_3gpp-5gc-nrm-scpfunction.yang @@ -0,0 +1,50 @@ +module _3gpp-5gc-nrm-scpfunction { + yang-version 1.1; + + namespace urn:3gpp:sa5:_3gpp-5gc-nrm-scpfunction; + prefix scp3gpp; + + import _3gpp-common-managed-function { prefix mf3gpp; } + import _3gpp-common-managed-element { prefix me3gpp; } + import ietf-inet-types { prefix inet; } + import _3gpp-5g-common-yang-types { prefix types5g3gpp; } + import _3gpp-common-top { prefix top3gpp; } + + organization "3gpp SA5"; + description "This IOC represents the SCP function in 5GC. For more information about the SCP, see 3GPP TS 23.501."; + reference "3GPP TS 28.541"; + + revision 2019-10-20 { + description "initial revision"; + reference "Based on + 3GPP TS 28.541 V16.X.XX"; + } + + grouping SCPFunctionGrp { + uses mf3gpp:ManagedFunctionGrp; + + leaf address { + description "The host address of the SCP."; + type inet:host; + } + + list supportedFuncList { + min-elements 1; + key "function"; + uses types5g3gpp:SupportedFunc; + } + + } + + augment "/me3gpp:ManagedElement" { + list SCPFunction { + description "5G Core SCP Function"; + reference "3GPP TS 28.541"; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses SCPFunctionGrp; + } + } + } +} \ No newline at end of file diff --git a/yang-models/_3gpp-5gc-nrm-seppfunction.yang b/yang-models/_3gpp-5gc-nrm-seppfunction.yang new file mode 100755 index 000000000..e4793dd3f --- /dev/null +++ b/yang-models/_3gpp-5gc-nrm-seppfunction.yang @@ -0,0 +1,70 @@ +module _3gpp-5gc-nrm-seppfunction { + yang-version 1.1; + + namespace urn:3gpp:sa5:_3gpp-5gc-nrm-seppfunction; + prefix sepp3gpp; + + import _3gpp-common-managed-function { prefix mf3gpp; } + import _3gpp-common-managed-element { prefix me3gpp; } + import _3gpp-common-yang-types { prefix types3gpp; } + import _3gpp-common-top { prefix top3gpp; } + import ietf-inet-types { prefix inet; } + + organization "3gpp SA5"; + description "This IOC represents the SEPP function which support message filtering + and policing on inter-PLMN control plane interface. For more information about the SEPP, see 3GPP TS 23.501."; + reference "3GPP TS 28.541"; + + revision 2020-08-03 { reference "CR-0321"; } + revision 2019-10-28 { reference S5-193518 ; } + + typedef SEPPType { + reference "3GPP TS 23501"; + type enumeration { + enum CSEPP { + value 0; + description "consumer SEPP"; + } + + enum PSEPP { + value 1; + description "producer SEPP"; + } + } + } + + grouping SEPPFunctionGrp { + uses mf3gpp:ManagedFunctionGrp; + + container pLMNId { + description "PLMN Identifiers of the sepp. + The PLMN Identifier is composed of a Mobile Country Code (MCC) and a Mobile Network Code (MNC)."; + uses types3gpp:PLMNId; + } + + leaf sEPPType { + type sepp3gpp:SEPPType; + } + + leaf sEPPId { + type uint16; + } + + leaf fqdn { + description "The domain name of the SEPP."; + type inet:domain-name; + } + } + + augment "/me3gpp:ManagedElement" { + list SEPPFunction { + description "5G Core SEPP Function"; + reference "3GPP TS 28.541"; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses SEPPFunctionGrp; + } + uses mf3gpp:ManagedFunctionContainedClasses; } + } +} \ No newline at end of file diff --git a/yang-models/_3gpp-5gc-nrm-smffunction.yang b/yang-models/_3gpp-5gc-nrm-smffunction.yang new file mode 100755 index 000000000..04659fb71 --- /dev/null +++ b/yang-models/_3gpp-5gc-nrm-smffunction.yang @@ -0,0 +1,102 @@ +module _3gpp-5gc-nrm-smffunction { + yang-version 1.1; + namespace urn:3gpp:sa5:_3gpp-5gc-nrm-smffunction; + prefix smf3gpp; + + import _3gpp-common-managed-function { prefix mf3gpp; } + import _3gpp-common-managed-element { prefix me3gpp; } + import _3gpp-common-yang-types { prefix types3gpp; } + import _3gpp-5g-common-yang-types { prefix types5g3gpp; } + import ietf-inet-types { prefix inet; } + import _3gpp-common-top { prefix top3gpp; } + + organization "3gpp SA5"; + contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; + description "SMFFunction derived from basic ManagedFunction."; + + revision 2020-11-05 { reference CR-0412 ; } + revision 2020-08-06 { reference "CR-0333"; } + revision 2020-06-03 { reference "CR-0286"; } + revision 2019-10-25 { reference "S5-194457 S5-193518"; } + revision 2019-05-31 {reference "Ericsson refactoring."; } + revision 2018-08-07 { reference "Initial revision";} + + grouping SMFFunctionGrp { + description "Represents the SMFFuntion IOC"; + uses mf3gpp:ManagedFunctionGrp; + + list pLMNIdList { + min-elements 1; + description "A list of PLMN identifiers (Mobile Country Code and Mobile + Network Code)."; + key "mcc mnc"; + uses types3gpp:PLMNId; + } + + leaf-list nRTACList { + description "List of Tracking Area Codes (legacy TAC or extended TAC) + where the represented management function is serving."; + reference "TS 38.413 clause 9.3.3.10"; + min-elements 1; + config false; + type types3gpp:Tac; + } + + leaf sBIFQDN { + description "The FQDN of the registered NF instance in the service-based + interface."; + type inet:domain-name; + } + + list sNSSAIList { + description "List of S-NSSAIs the managed object is capable of supporting. + (Single Network Slice Selection Assistance Information) + An S-NSSAI has an SST (Slice/Service type) and an optional SD + (Slice Differentiator) field."; + reference "3GPP TS 23.003"; + key "sd sst"; + uses types5g3gpp:SNssai; + } + + list managedNFProfile { + key idx; + min-elements 1; + max-elements 1; + uses types3gpp:ManagedNFProfile; + } + + list commModelList { + min-elements 1; + key "groupId"; + description "Specifies a list of commModel. It can be used by NF and + NF services to interact with each other in 5G Core network "; + reference "3GPP TS 23.501"; + uses types5g3gpp:CommModel; + } + + leaf configurable5QISetRef { + type types3gpp:DistinguishedName; + description "DN of the Configurable5QISet that the SMFFunction supports + (is associated to)."; + } + + leaf dynamic5QISetRef { + type types3gpp:DistinguishedName; + description "DN of the Dynamic5QISet that the SMFFunction supports + (is associated to)."; + } + } + + augment "/me3gpp:ManagedElement" { + list SMFFunction { + description "5G Core SMF Function"; + reference "3GPP TS 28.541"; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses SMFFunctionGrp; + } + uses mf3gpp:ManagedFunctionContainedClasses; + } + } +} \ No newline at end of file diff --git a/yang-models/_3gpp-5gc-nrm-smsffunction.yang b/yang-models/_3gpp-5gc-nrm-smsffunction.yang new file mode 100755 index 000000000..720d90417 --- /dev/null +++ b/yang-models/_3gpp-5gc-nrm-smsffunction.yang @@ -0,0 +1,62 @@ +module _3gpp-5gc-nrm-smsffunction { + yang-version 1.1; + + namespace urn:3gpp:sa5:_3gpp-5gc-nrm-smsffunction; + prefix smsf3gpp; + + import _3gpp-common-managed-function { prefix mf3gpp; } + import _3gpp-common-managed-element { prefix me3gpp; } + import _3gpp-common-yang-types { prefix types3gpp; } + import _3gpp-5g-common-yang-types { prefix types5g3gpp; } + import _3gpp-common-top { prefix top3gpp; } + + organization "3gpp SA5"; + description "This IOC represents the SMSF function defined in 3GPP TS 23.501."; + reference "3GPP TS 28.541"; + + revision 2019-10-25 { reference "S5-194457 S5-195427 S5-193518"; } + + revision 2019-05-15 { + description "initial revision"; + + } + + grouping SMSFFunctionGrp { + uses mf3gpp:ManagedFunctionGrp; + + list pLMNIdList { + description "List of at most six entries of PLMN Identifiers, but at least one (the primary PLMN Id). + The PLMN Identifier is composed of a Mobile Country Code (MCC) and a Mobile Network Code (MNC)."; + + min-elements 1; + max-elements 6; + key "mcc mnc"; + uses types3gpp:PLMNId; + } + + list managedNFProfile { + key idx; + min-elements 1; + uses types3gpp:ManagedNFProfile; + } + + list commModelList { + min-elements 1; + key "groupId"; + uses types5g3gpp:CommModel; + } + } + + augment "/me3gpp:ManagedElement" { + list SMSFFunction { + description "5G Core SMSF Function"; + reference "3GPP TS 28.541"; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses SMSFFunctionGrp; + } + uses mf3gpp:ManagedFunctionContainedClasses; + } + } +} \ No newline at end of file diff --git a/yang-models/_3gpp-5gc-nrm-udmfunction.yang b/yang-models/_3gpp-5gc-nrm-udmfunction.yang new file mode 100755 index 000000000..74965272a --- /dev/null +++ b/yang-models/_3gpp-5gc-nrm-udmfunction.yang @@ -0,0 +1,86 @@ +module _3gpp-5gc-nrm-udmfunction { + yang-version 1.1; + + namespace urn:3gpp:sa5:_3gpp-5gc-nrm-udmfunction; + prefix udm3gpp; + + import _3gpp-common-managed-function { prefix mf3gpp; } + import _3gpp-common-managed-element { prefix me3gpp; } + import ietf-inet-types { prefix inet; } + import _3gpp-common-yang-types { prefix types3gpp; } + import _3gpp-5g-common-yang-types { prefix types5g3gpp; } + import _3gpp-common-top { prefix top3gpp; } + + organization "3gpp SA5"; + contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; + description "This IOC represents the UDM function in 5GC. For more + information about the UDM, see 3GPP TS 23.501."; + reference "3GPP TS 28.541"; + + revision 2020-11-05 { reference CR-0412 ; } + revision 2019-10-25 { reference "S5-194457 S5-195427 S5-193518"; } + revision 2019-05-22 { reference "initial revision";} + + grouping UDMFuntionGrp { + description "Represents the UDMFuntion IOC"; + uses mf3gpp:ManagedFunctionGrp; + + list pLMNIdList { + description "List of at most six entries of PLMN Identifiers, but at + least one (the primary PLMN Id). + The PLMN Identifier is composed of a Mobile Country Code (MCC) and a + Mobile Network Code (MNC)."; + + min-elements 1; + max-elements 6; + key "mcc mnc"; + uses types3gpp:PLMNId; + } + + leaf sBIFQDN { + description "The FQDN of the registered NF instance in the service-based + interface."; + type inet:domain-name; + } + + list sNSSAIList { + description "List of S-NSSAIs the managed object is capable of supporting. + (Single Network Slice Selection Assistance Information) + An S-NSSAI has an SST (Slice/Service type) and an optional SD + (Slice Differentiator) field."; + //optional support + reference "3GPP TS 23.003"; + key "sd sst"; + uses types5g3gpp:SNssai; + } + + list managedNFProfile { + key idx; + min-elements 1; + max-elements 1; + uses types3gpp:ManagedNFProfile; + } + + list commModelList { + min-elements 1; + key "groupId"; + description "Specifies a list of commModel. It can be used by NF and + NF services to interact with each other in 5G Core network "; + reference "3GPP TS 23.501"; + uses types5g3gpp:CommModel; + } + } + + augment "/me3gpp:ManagedElement" { + list UDMFunction { + description "5G Core UDM Function"; + reference "3GPP TS 28.541"; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses UDMFuntionGrp; + } + uses mf3gpp:ManagedFunctionContainedClasses; + } + } +} \ No newline at end of file diff --git a/yang-models/_3gpp-5gc-nrm-udrfunction.yang b/yang-models/_3gpp-5gc-nrm-udrfunction.yang new file mode 100755 index 000000000..5eabaac8b --- /dev/null +++ b/yang-models/_3gpp-5gc-nrm-udrfunction.yang @@ -0,0 +1,78 @@ +module _3gpp-5gc-nrm-udrfunction { + yang-version 1.1; + + namespace urn:3gpp:sa5:_3gpp-5gc-nrm-udrfunction; + prefix udr3gpp; + + import _3gpp-common-managed-function { prefix mf3gpp; } + import _3gpp-common-managed-element { prefix me3gpp; } + import ietf-inet-types { prefix inet; } + import _3gpp-common-yang-types { prefix types3gpp; } + import _3gpp-common-top { prefix top3gpp; } + import _3gpp-5g-common-yang-types { prefix types5g3gpp; } + + organization "3gpp SA5"; + contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; + description "This IOC represents the UDR function in 5GC. For more information + about the UDR, see 3GPP TS 23.501."; + reference "3GPP TS 28.541"; + + revision 2020-11-05 { reference CR-0412 ; } + revision 2019-10-25 { reference "S5-194457 S5-195427 S5-193518"; } + + revision 2019-05-22 {reference "initial revision"; } + + grouping UDRFuntionGrp { + description "Representse the UDRFuntion IOC"; + uses mf3gpp:ManagedFunctionGrp; + + list pLMNIdList { + description "List of at most six entries of PLMN Identifiers, but at + least one (the primary PLMN Id). + The PLMN Identifier is composed of a Mobile Country Code (MCC) and a + Mobile Network Code (MNC)."; + + min-elements 1; + max-elements 6; + key "mcc mnc"; + uses types3gpp:PLMNId; + } + + leaf sBIFQDN { + description "The FQDN of the registered NF instance in the service-based + interface."; + type inet:domain-name; + } + + list sNSSAIList { + description "List of S-NSSAIs the managed object is capable of supporting. + (Single Network Slice Selection Assistance Information) + An S-NSSAI has an SST (Slice/Service type) and an optional SD + (Slice Differentiator) field."; + //optional support + reference "3GPP TS 23.003"; + key "sd sst"; + uses types5g3gpp:SNssai; + } + + list managedNFProfile { + key idx; + min-elements 1; + max-elements 1; + uses types3gpp:ManagedNFProfile; + } + } + + augment "/me3gpp:ManagedElement" { + list UDRFunction { + description "5G Core UDR Function"; + reference "3GPP TS 28.541"; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses UDRFuntionGrp; + } + uses mf3gpp:ManagedFunctionContainedClasses; + } + } +} \ No newline at end of file diff --git a/yang-models/_3gpp-5gc-nrm-udsffunction.yang b/yang-models/_3gpp-5gc-nrm-udsffunction.yang new file mode 100755 index 000000000..c0ef6f217 --- /dev/null +++ b/yang-models/_3gpp-5gc-nrm-udsffunction.yang @@ -0,0 +1,79 @@ +module _3gpp-5gc-nrm-udsffunction { + yang-version 1.1; + + namespace urn:3gpp:sa5:_3gpp-5gc-nrm-udsffunction; + prefix udsf3gpp; + + import _3gpp-common-managed-function { prefix mf3gpp; } + import _3gpp-common-managed-element { prefix me3gpp; } + import ietf-inet-types { prefix inet; } + import _3gpp-common-yang-types { prefix types3gpp; } + import _3gpp-common-top { prefix top3gpp; } + import _3gpp-5g-common-yang-types { prefix types5g3gpp; } + + organization "3gpp SA5"; + contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; + description "This IOC represents the UDSF function which can be interacted + with any other 5GC NF defined in 3GPP TS 23.501."; + reference "3GPP TS 28.541"; + + revision 2020-11-05 { reference CR-0412 ; } + revision 2019-10-25 { reference "S5-194457 S5-195427 S5-193518"; } + + revision 2019-05-22 { reference "initial revision"; } + + grouping UDSFFuntionGrp { + description "Represents the UDSFFuntion IOC"; + uses mf3gpp:ManagedFunctionGrp; + + list pLMNIdList { + description "List of at most six entries of PLMN Identifiers, but at + least one (the primary PLMN Id). + The PLMN Identifier is composed of a Mobile Country Code (MCC) and a + Mobile Network Code (MNC)."; + + min-elements 1; + max-elements 6; + key "mcc mnc"; + uses types3gpp:PLMNId; + } + + leaf sBIFQDN { + description "The FQDN of the registered NF instance in the + service-based interface."; + type inet:domain-name; + } + + list sNSSAIList { + description "List of S-NSSAIs the managed object is capable of supporting. + (Single Network Slice Selection Assistance Information) + An S-NSSAI has an SST (Slice/Service type) and an optional SD + (Slice Differentiator) field."; + //optional support + reference "3GPP TS 23.003"; + key "sd sst"; + uses types5g3gpp:SNssai; + } + + list managedNFProfile { + key idx; + min-elements 1; + max-elements 1; + description "Managed Network Function profile"; + reference "3GPP TS 23.501"; + uses types3gpp:ManagedNFProfile; + } + } + + augment "/me3gpp:ManagedElement" { + list UDSFFunction { + description "5G Core UDSF Function"; + reference "3GPP TS 28.541"; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses UDSFFuntionGrp; + } + uses mf3gpp:ManagedFunctionContainedClasses; } + } +} \ No newline at end of file diff --git a/yang-models/_3gpp-5gc-nrm-upffunction.yang b/yang-models/_3gpp-5gc-nrm-upffunction.yang new file mode 100755 index 000000000..1443942e5 --- /dev/null +++ b/yang-models/_3gpp-5gc-nrm-upffunction.yang @@ -0,0 +1,80 @@ +module _3gpp-5gc-nrm-upffunction { + yang-version 1.1; + namespace urn:3gpp:sa5:_3gpp-5gc-nrm-upffunction; + prefix upf3gpp; + + import _3gpp-common-managed-function { prefix mf3gpp; } + import _3gpp-common-managed-element { prefix me3gpp; } + import _3gpp-common-yang-types { prefix types3gpp; } + import _3gpp-5g-common-yang-types { prefix types5g3gpp; } + import _3gpp-common-top { prefix top3gpp; } + + organization "3GPP SA5"; + contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; + description "UPFFunction derived from basic ManagedFunction."; + reference "3GPP TS 28.541 5G Network Resource Model (NRM)"; + + revision 2020-11-05 { reference CR-0412 ; } + revision 2019-10-25 { reference "S5-194457 S5-193518"; } + revision 2019-05-31 { reference "Ericsson refactoring."; } + revision 2018-08-07 { reference "Initial revision"; } + + grouping UPFFunctionGrp { + description "Represents the UPFFunction IOC"; + uses mf3gpp:ManagedFunctionGrp; + + list pLMNIdList { + description "A list of PLMN identifiers (Mobile Country Code and Mobile + Network Code)."; + min-elements 1; + key "mcc mnc"; + uses types3gpp:PLMNId; + } + + leaf-list nRTACList { + description "List of Tracking Area Codes (legacy TAC or extended TAC) + where the represented management function is serving."; + reference "TS 38.413 clause 9.3.3.10"; + min-elements 1; + config false; + type types3gpp:Tac; + } + + list sNSSAIList { + description "List of S-NSSAIs the managed object is capable of supporting. + (Single Network Slice Selection Assistance Information) + An S-NSSAI has an SST (Slice/Service type) and an optional SD + (Slice Differentiator) field."; + reference "3GPP TS 23.003"; + key "sd sst"; + uses types5g3gpp:SNssai; + } + + list managedNFProfile { + key idx; + min-elements 1; + max-elements 1; + reference "3GPP TS 23.003"; + uses types3gpp:ManagedNFProfile; + } + + leaf-list supportedBMOList { + type string; + description "List of supported BMOs (Bridge Managed Objects) required + for integration with TSN system."; + } + } + + augment /me3gpp:ManagedElement { + list UPFFunction { + description "5G Core UPF Function"; + reference "3GPP TS 28.541"; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses UPFFunctionGrp; + } + uses mf3gpp:ManagedFunctionContainedClasses; + } + } +} \ No newline at end of file diff --git a/yang-models/_3gpp-common-ep-rp.yang b/yang-models/_3gpp-common-ep-rp.yang new file mode 100755 index 000000000..0dc1ddc30 --- /dev/null +++ b/yang-models/_3gpp-common-ep-rp.yang @@ -0,0 +1,68 @@ +module _3gpp-common-ep-rp { + yang-version 1.1; + namespace "urn:3gpp:sa5:_3gpp-common-ep-rp"; + prefix "eprp3gpp"; + + import _3gpp-common-yang-types { prefix types3gpp ; } + import ietf-inet-types { prefix inet; } + import _3gpp-common-measurements { prefix meas3gpp; } + + organization "3GPP SA5"; + contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; + description "Common/basic class/grouping to be inherited/reused. + This IOC represents an end point of a link used across a reference + point between two network entities."; + reference + "3GPP TS 28.622 + Generic Network Resource Model (NRM) + Integration Reference Point (IRP); + Information Service (IS) + + 3GPP TS 28.620 + Umbrella Information Model (UIM)"; + + revision 2020-06-08 { reference "CR-0092"; } + + revision 2019-06-17 { + description "Initial revision"; + } + + grouping EP_RPGrp { + description "Abstract class, represents an end point of a link used + across a reference point between two network entities. + + For naming the subclasses of EP_RP, the following rules shall apply: + - The name of the subclassed IOC shall have the form 'EP_', + where is a string that represents the name of the reference point. + Thus, two valid examples of EP_RP subclassed IOC names would be: + EP_S1 and EP_X2."; + + leaf userLabel { + type string; + description "A user-friendly (and user assignable) name of this object."; + } + + leaf farEndEntity { + config false; + type types3gpp:DistinguishedName; + } + } + + grouping EP_Common { + uses EP_RPGrp; + uses meas3gpp:SupportedPerfMetricGroupGrp; + list localAddress { + description "Local IP address and VLAN ID."; + key "ipAddress vlanId"; + min-elements 1; + max-elements 1; + uses types3gpp:AddressWithVlan; + } + + leaf remoteAddress { + description "Remote IP address."; + mandatory true; + type inet:ip-address; + } + } +} \ No newline at end of file diff --git a/yang-models/_3gpp-common-fm.yang b/yang-models/_3gpp-common-fm.yang new file mode 100755 index 000000000..10ea1a9c3 --- /dev/null +++ b/yang-models/_3gpp-common-fm.yang @@ -0,0 +1,408 @@ +module _3gpp-common-fm { + yang-version 1.1; + namespace "urn:3gpp:sa5:_3gpp-common-fm"; + prefix "fm3gpp"; + + import ietf-yang-types { prefix yang; } + import _3gpp-common-top { prefix top3gpp; } + import _3gpp-common-yang-types { prefix types3gpp; } + + organization "3GPP SA5"; + contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; + + description "Defines a Fault Management model"; + + reference "3GPP TS 28.623 + Generic Network Resource Model (NRM) + Integration Reference Point (IRP); + Solution Set (SS) definitions + + 3GPP TS 28.622 + Generic Network Resource Model (NRM) + Integration Reference Point (IRP); + Information Service (IS)"; + + revision 2020-06-03 { reference "CR-0091"; } + revision 2020-02-24 { + reference "S5-201365"; + } + + typedef eventType { + type enumeration { + enum COMMUNICATIONS_ALARM { + value 2; + } + + enum QUALITY_OF_SERVICE_ALARM { + value 3; + } + + enum PROCESSING_ERROR_ALARM { + value 4; + } + + enum EQUIPMENT_ALARM { + value 5; + } + + enum ENVIRONMENTAL_ALARM { + value 6; + } + + enum INTEGRITY_VIOLATION { + value 7; + } + + enum OPERATIONAL_VIOLATION { + value 8; + } + + enum PHYSICAL_VIOLATIONu { + value 9; + } + + enum SECURITY_SERVICE_OR_MECHANISM_VIOLATION { + value 10; + } + + enum TIME_DOMAIN_VIOLATION { + value 11; + } + } + + description "General category for the alarm."; + } + + typedef severity-level { + type enumeration { + enum CRITICAL { value 3; } + enum MAJOR { value 4; } + enum MINOR { value 5; } + enum WARNING { value 6; } + enum INDETERMINATE { value 7; } + enum CLEARED { value 8; } + } + + description "The possible alarm serverities. + Aligned with ERICSSON-ALARM-MIB."; + } + + grouping AlarmRecordGrp { + description "Contains alarm information of an alarmed object instance. + A new record is created in the alarm list when an alarmed object + instance generates an alarm and no alarm record exists with the same + values for objectInstance, alarmType, probableCause and specificProblem. + When a new record is created the MnS producer creates an alarmId, that + unambiguously identifies an alarm record in the AlarmList. + + Alarm records are maintained only for active alarms. Inactive alarms are + automatically deleted by the MnS producer from the AlarmList. + Active alarms are alarms whose + a) perceivedSeverity is not CLEARED, or whose + b) perceivedSeverity is CLEARED and its ackState is not ACKNOWLEDED."; + + leaf alarmId { + type string; + mandatory true; + description "Identifies the alarmRecord"; + } + + leaf objectInstance { + type string; + config false ; + mandatory true; + } + + leaf notificationId { + type string; + config false ; + mandatory true; + } + + leaf alarmRaisedTime { + type yang:date-and-time ; + config false ; + } + + leaf alarmChangedTime { + type yang:date-and-time ; + config false ; + description "not applicable if related alarm has not changed"; + } + + leaf alarmClearedTime { + type yang:date-and-time ; + config false ; + description "not applicable if related alarm was not cleared"; + } + + leaf alarmType { + type eventType; + config false ; + description "General category for the alarm."; + } + + leaf probableCause { + type string; + config false ; + } + + leaf specificProblem { + type string; + config false ; + reference "ITU-T Recommendation X.733 clause 8.1.2.2."; + } + + leaf perceivedSeverity { + type severity-level; + description "This is Writable only if producer supports consumer + to set perceivedSeverity to CLEARED"; + } + + leaf backedUpStatus { + type string; + config false ; + description "Indicates if an object (the MonitoredEntity) has a back + up. See definition in ITU-T Recommendation X.733 clause 8.1.2.4."; + } + + leaf backUpObject { + type string; + config false ; + } + + leaf trendIndication { + type string; + config false ; + description "Indicates if some observed condition is getting better, + worse, or not changing. "; + reference "ITU-T Recommendation X.733 clause 8.1.2.6."; + } + + grouping ThresholdPackGrp { + leaf thresholdLevel { + type string; + } + leaf thresholdValue { + type string; + } + leaf hysteresis { + type string; + description "The hysteresis has a threshold high and a threshold + low value that are different from the threshold value. + A hysteresis, therefore, defines the threshold-high and + threshold-low levels within which the measurementType value is + allowed to oscillate without triggering the threshold crossing + notification."; + } + } + + grouping ThresholdInfoGrp { + leaf measurementType { + type string; + mandatory true; + } + + leaf direction { + type enumeration { + enum INCREASING; + enum DECREASING; + } + mandatory true; + description " + If it is 'Increasing', the threshold crossing notification is + triggered when the measurement value equals or exceeds a + thresholdValue. + + If it is 'Decreasing', the threshold crossing notification is + triggered when the measurement value equals or below a + thresholdValue."; + } + + uses ThresholdPackGrp; + } + + list thresholdInfo { + config false ; + uses ThresholdInfoGrp; + } + + leaf stateChangeDefinition { + type string; + config false ; + description "Indicates MO attribute value changes. See definition + in ITU-T Recommendation X.733 clause 8.1.2.11."; + } + + leaf monitoredAttributes { + type string; + config false ; + description "Indicates MO attributes whose value changes are being + monitored. See definition in ITU-T Recommendation X.733 clause 8.1.2.11."; + } + + leaf proposedRepairActions { + type string; + config false ; + description "Indicates proposed repair actions. See definition in + ITU-T Recommendation X.733 clause 8.1.2.12."; + } + + leaf additionalText { + type string; + config false ; + } + + leaf additionalInformation { + type string; + config false ; + } + + leaf rootCauseIndicator { + type enumeration { + enum YES; + enum NO; + } + config false ; + description "It indicates that this AlarmInformation is the root cause + of the events captured by the notifications whose identifiers are in + the related CorrelatedNotification instances."; + } + + leaf ackTime { + type yang:date-and-time ; + config false ; + description "It identifies the time when the alarm has been + acknowledged or unacknowledged the last time, i.e. it registers the + time when ackState changes."; + } + + leaf ackUserId { + type string; + description "It identifies the last user who has changed the + Acknowledgement State."; + } + + leaf ackSystemId { + type string; + description "It identifies the system (Management System) that last + changed the ackState of an alarm, i.e. acknowledged or unacknowledged + the alarm."; + } + + leaf ackState { + type enumeration { + enum ACKNOWLEDGED { + description "The alarm has been acknowledged."; + } + enum UNACKNOWLEDGED { + description "The alarm has unacknowledged or the alarm has never + been acknowledged."; + } + } + } + + leaf clearUserId { + type string; + description "Carries the identity of the user who invokes the + clearAlarms operation."; + } + + leaf clearSystemId { + type string; + } + + leaf serviceUser { + type string; + config false ; + description "It identifies the service-user whose request for service + provided by the serviceProvider led to the generation of the + security alarm."; + } + + leaf serviceProvider { + type string; + config false ; + description "It identifies the service-provider whose service is + requested by the serviceUser and the service request provokes the + generation of the security alarm."; + } + + leaf securityAlarmDetector { + type string; + config false ; + } + } + + grouping AlarmListGrp { + description "Represents the AlarmList IOC."; + + leaf administrativeState { + type types3gpp:AdministrativeState ; + default LOCKED; + description "When set to UNLOCKED, the alarm list is updated. + When the set to LOCKED, the existing alarm records are not + updated, and new alarm records are not added to the alarm list."; + } + + leaf operationalState { + type types3gpp:OperationalState ; + default DISABLED; + config false; + description "The producer sets this attribute to ENABLED, indicating + that it has the resource and ability to record alarm in AlarmList + else, it sets the attribute to DISABLED."; + } + + leaf numOfAlarmRecords { + type uint32 ; + config false; + mandatory true; + description "The number of alarm records in the AlarmList"; + } + + leaf lastModification { + type yang:date-and-time ; + config false; + description "The last time when an alarm record was modified"; + } + + list alarmRecords { + key alarmId; + description "List of alarmRecords"; + uses AlarmRecordGrp; + } + } + + grouping FmSubtree { + description "Contains FM related classes. + Should be used in all classes (or classes inheriting from) + - SubNetwork + - ManagedElement + + If some YAM wants to augment these classes/list/groupings they must + augment all user classes!"; + + list AlarmList { + key id; + max-elements 1; + description "The AlarmList represents the capability to store and manage + alarm records. The management scope of an AlarmList is defined by all + descendant objects of the base managed object, which is the object + name-containing the AlarmList, and the base object itself. + + AlarmList instances are created by the system or are pre-installed. + They cannot be created nor deleted by MnS consumers. + + When the alarm list is locked or disabled, the existing alarm records + are not updated, and new alarm records are not added to the alarm list"; + + + uses top3gpp:Top_Grp ; + container attributes { + uses AlarmListGrp ; + } + } + } + +} \ No newline at end of file diff --git a/yang-models/_3gpp-common-managed-element.yang b/yang-models/_3gpp-common-managed-element.yang new file mode 100755 index 000000000..33acde382 --- /dev/null +++ b/yang-models/_3gpp-common-managed-element.yang @@ -0,0 +1,248 @@ +module _3gpp-common-managed-element { + yang-version 1.1; + namespace urn:3gpp:sa5:_3gpp-common-managed-element; + prefix "me3gpp"; + + import _3gpp-common-yang-types { prefix types3gpp ; } + import _3gpp-common-top { prefix top3gpp; } + import _3gpp-common-measurements { prefix meas3gpp; } + import _3gpp-common-subscription-control { prefix subscr3gpp; } + import _3gpp-common-fm { prefix fm3gpp; } + import _3gpp-common-trace { prefix trace3gpp; } + + organization "3GPP SA5"; + contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; + + description "Defines ManagedElement which will be augmented + by other IOCs"; + reference "3GPP TS 28.623 + Generic Network Resource Model (NRM) + Integration Reference Point (IRP); + Solution Set (SS) definitions + + 3GPP TS 28.622 + Generic Network Resource Model (NRM) + Integration Reference Point (IRP); + Information Service (IS) + + 3GPP TS 28.620 + Umbrella Information Model (UIM)"; + + revision 2021-01-16 { reference "CR-0120"; } + revision 2020-08-06 { reference "CR-0102"; } + revision 2020-08-03 { reference "CR-0095"; } + revision 2020-06-08 { reference "CR-0092"; } + revision 2020-05-12 { reference "CR0084"; } + revision 2020-02-24 { reference "S5-201365"; } + revision 2019-06-17 { reference " S5-203316"; } + revision 2019-05-08 { reference "Initial revision"; } + + feature MeasurementsUnderManagedElement { + description "The MeasurementSubtree shall be contained under + ManagedElement"; + } + + feature SubscriptionControlUnderManagedElement { + description "The SubscriptionControlSubtree shall be contained under + ManagedElement"; + } + + feature FmUnderManagedElement { + description "The FmSubtree shall be contained under ManagedElement"; + } + + feature TraceUnderManagedElement { + description "The TraceSubtree shall be contained under ManageElement"; + } + + feature DESManagementFunction { + description "Class representing Distributed SON or Domain-Centralized SON + Energy Saving feature. The DESManagementFunction shall be contained under + ManagedElement."; + } + + feature DMROFunction { + description "Class representing D-SON function of MRO feature. The + DMROFunction shall be contained under ManagedElement."; + } + + feature DRACHOptimizationFunction { + description "Class representing D-SON function of RACH optimization + feature. The DRACHOptimizationFunction shall be contained under + ManagedElement."; + } + + feature DPCIConfigurationFunction { + description "Class representing Distributed SON or Domain-Centralized SON + function of PCI configuration feature. The DPCIConfigurationFunction shall + be contained under ManagedElement."; + } + + feature CPCIConfigurationFunction { + description "Class representing Cross Domain-Centralized SON function of PCI + configuration feature. The CPCIConfigurationFunction shall be contained + under ManagedElement."; + } + + feature CESManagementFunction { + description "Class representing Cross Domain-Centralized SON Energy Saving + feature. The CESManagementFunction shall be contained under + ManagedElement."; + } + + grouping ManagedElement_Grp { + description "Abstract class representing telecommunications resources. + An ME communicates with a manager (directly or indirectly) for the + purpose of being monitored and/or controlled. MEs may perform element + management functionality. + An ME (and its contained Function_(s)) may or may not be geographically + distributed. An ME (and its contained Function_(s)) is often referred + to as a Network Element"; + + leaf dnPrefix { + description "Provides naming context that allows the Managed + Elements to be partitioned into logical domains. + A Distingushed Name(DN) is defined by 3GPP TS 32.300, + which splits the DN into a DN Prefix and Local DN"; + type types3gpp:DistinguishedName; + } + + leaf userLabel { + description "A user-friendly (and user assignable) name of this object."; + type string; + } + + leaf locationName { + description "The physical location (e.g. an address) of an entity + represented by a (derivative of) ManagedElement_. It may contain no + information to support the case where the derivative of + ManagedElement_ needs to represent a distributed multi-location NE."; + config false; + type string; + } + + leaf-list managedBy { + description "Relates to the role played by ManagementSystem_ in the + between ManagedSystem_ and ManagedElement_. This attribute contains + a list of the DN(s) of the related subclasses of + ManagementSystem_ instance(s)."; + + config false; + type types3gpp:DistinguishedName; + } + + leaf-list managedElementTypeList { + description "The type of functionality provided by the ManagedElement. + It may represent one ME functionality or a combination of + more than one functionality. + 1) The allowed values of this attribute are the names of the IOC(s) + that are (a) derived/subclassed from ManagedFunction and (b) directly + name-contained by ManagedElement IOC (on the first level below + ManagedElement), but with the string 'Function' excluded. + 2) If a ManagedElement contains multiple instances of a ManagedFunction + this attribute will not contain repeated values. + 3) The capitalisation (usage of upper/lower case) of characters in this + attribute is insignificant. Thus, the NodeB should be case insensitive + when reading these values. + 4) Two examples of allowed values are: + - NodeB; + - HLR, VLR."; + + config false; + min-elements 1; + type string; + } + } + + grouping ManagedElementGrp { + description "Represents telecommunications equipment or + TMN entities within the telecommunications network providing support + and/or service to the subscriber."; + + uses ManagedElement_Grp; + uses meas3gpp:SupportedPerfMetricGroupGrp; + + leaf vendorName { + config false; + type string; + } + + leaf userDefinedState { + type string; + description "An operator defined state for operator specific usage"; + } + + leaf swVersion { + config false; + type string; + } + + leaf priorityLabel { + type uint32; + mandatory true; + } + } + + list ManagedElement { + description "Represents telecommunications equipment or TMN entities within + the telecommunications network providing support and/or service to the + subscriber. An ManagedElement IOC is used to represent a Network Element + defined in TS 32.101 including virtualizeation or non-virtualization + scenario. An ManagedElement instance is used for communicating with a + manager (directly or indirectly) over one or more management interfaces + for the purpose of being monitored and/or controlled. ManagedElement may + or may not additionally perform element management functionality. + An ManagedElement contains equipment that may or may not be geographically + distributed. + + A telecommunication equipment has software and hardware components. The + ManagedElement IOC described above represents following two case: + - In the case when the software component is designed to run on dedicated + hardware component, the ManagedElement IOC description includes both + software and hardware components. + - In the case when the software is designed to run on ETSI NFV defined + NFVI [15], the ManagedElement IOC description would exclude the NFVI + component supporting the above mentioned subject software. + + A ManagedElement may be contained in either a SubNetwork or in a MeContext + instance. A single ManagedElement may also exist stand-alone with no + parent at all. + + The relation of ManagedElement IOC and ManagedFunction IOC can be + described as following: + - A ManaagedElement instance may have 1..1 containment relationship to a + ManagedFunction instance. In this case, the ManagedElement IOC may be + used to represent a NE with single functionality. For example, a + ManagedElement is used to represent the 3GPP defined RNC node; + - A ManagedElement instance may have 1..N containment relationship to + multiple ManagedFunction IOC instances. In this case, the ManagedElement + IOC may be used to represent a NE with combined ManagedFunction + funcationality (as indicated by the managedElementType attribute and the + contained instances of different ManagedFunction IOCs).For example, a + ManagedElement is used to represent the combined functionality of 3GPP + defined gNBCUCPFuntion, gNBCUUPFunction and gNBDUFunction"; + + key id; + uses top3gpp:Top_Grp; + container attributes { + uses ManagedElementGrp; + } + + uses meas3gpp:MeasurementSubtree { + if-feature MeasurementsUnderManagedElement; + } + + uses subscr3gpp:SubscriptionControlSubtree { + if-feature SubscriptionControlUnderManagedElement; + } + + uses fm3gpp:FmSubtree { + if-feature FmUnderManagedElement; + } + + uses trace3gpp:TraceSubtree { + if-feature TraceUnderManagedElement; + } + + } +} \ No newline at end of file diff --git a/yang-models/_3gpp-common-managed-function.yang b/yang-models/_3gpp-common-managed-function.yang new file mode 100755 index 000000000..a46d86482 --- /dev/null +++ b/yang-models/_3gpp-common-managed-function.yang @@ -0,0 +1,311 @@ +module _3gpp-common-managed-function { + yang-version 1.1; + namespace urn:3gpp:sa5:_3gpp-common-managed-function; + prefix mf3gpp; + + import _3gpp-common-yang-types { prefix types3gpp; } + import _3gpp-common-top { prefix top3gpp; } + import _3gpp-common-measurements { prefix meas3gpp; } + import _3gpp-common-trace { prefix trace3gpp; } + + organization "3GPP SA5"; + contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; + description "The module defines a base class/grouping for major 3GPP + functions."; + reference + "3GPP TS 28.622 + Generic Network Resource Model (NRM) + Integration Reference Point (IRP); + Information Service (IS) + + 3GPP TS 28.620 + Umbrella Information Model (UIM)"; + + revision 2021-01-25 { reference "CR-0122"; } + revision 2020-09-30 { reference "CR-bbbb"; } + revision 2020-08-06 { reference "CR-0102"; } + revision 2020-08-03 { reference "CR-0095"; } + revision 2020-06-23 { reference "CR-085"; } + revision 2020-06-08 { reference "CR-0092"; } + revision 2019-11-21 { reference "S5-197275, S5-197735"; } + revision 2019-10-28 { reference S5-193518 ; } + revision 2019-06-18 { reference "Initial revision"; } + + feature MeasurementsUnderManagedFunction { + description "The MeasurementSubtree shall be contained under ManageElement"; + } + + feature TraceUnderManagedFunction { + description "The TraceSubtree shall be contained under ManagedFunction"; + } + + grouping Operation { + description "This data type represents an Operation."; + reference "3gpp TS 28.622"; + + leaf name { + type string; + mandatory true; + } + + leaf-list allowedNFTypes { + type string; + min-elements 1; + description "The type of the managed NF service instance + The specifc values allowed are described in TS 23.501"; + } + + leaf operationSemantics { + type enumeration { + enum REQUEST_RESPONSE; + enum SUBSCRIBE_NOTIFY; + + } + config false; + mandatory true; + description "Semantics type of the operation."; + reference "3GPP TS 23.502"; + } + } + + grouping ManagedNFServiceGrp { + description "A ManagedNFService represents a Network Function (NF) service."; + reference "Clause 7 of 3GPP TS 23.501."; + + leaf userLabel { + type string; + description "A user-friendly (and user assignable) name of this object."; + } + + leaf nFServiceType { + config false; + mandatory true; + type string; + description "The type of the managed NF service instance + The specifc values allowed are described in clause 7.2 of TS 23.501"; + } + + list sAP { + key "host port"; + min-elements 1; + max-elements 1; + description "The service access point of the managed NF service instance"; + uses types3gpp:SAP; + } + + list operations { + key name; + min-elements 1; + uses Operation ; + description "Set of operations supported by the managed NF + service instance"; + } + + leaf administrativeState { + type types3gpp:AdministrativeState; + mandatory true; + description "Permission to use or prohibition against using the instance"; + } + + leaf operationalState { + type types3gpp:OperationalState; + config false; + mandatory true; + description "Describes whether the resource is installed and working"; + } + + leaf usageState { + type types3gpp:usageState ; + config false; + mandatory true; + description "Describes whether the resource is actively in use at a + specific instant, and if so, whether or not it has spare + capacity for additional users."; + } + + leaf registrationState { + type enumeration { + enum REGISTERED; + enum DEREGISTERED; + } + config false; + } + } + + grouping Function_Grp { + description "A base grouping for 3GPP functions."; + + leaf userLabel { + type string; + description "A user-friendly (and user assignable) name of this object."; + } + } + + grouping ManagedFunctionGrp { + description "Abstract root class to be inherited/reused by classes + representing 3GPP functions. + + Anywhere this grouping is used by classes inheriting from ManagedFunction + the list representing the inheriting class needs to include all + contained classes of ManagedFunction too. Contained classes are + either + - augmented into the Function class or + - shall be included in the list representing the inheriting class + using the grouping ManagedFunctionContainedClasses: + 1) EP_RP solved using augment + 2) uses mf3gpp:ManagedFunctionContainedClasses; + "; + + uses Function_Grp; + + list vnfParametersList { + key vnfInstanceId; + description "Contains the parameter set of the VNF + instance(s) corresponding to an NE. + The presence of this list indicates that the ManagedFunction + represented is realized by one or more VNF instance(s). Otherwise it + shall be absent. + The presence of a vnfParametersList entry, whose vnfInstanceId with a + string length of zero, in createMO operation can trigger the + instantiation of the related VNF/VNFC instances."; + + leaf vnfInstanceId { + type string ; + description "VNF instance identifier"; + reference "ETSI GS NFV-IFA 008 v2.1.1: + Network Functions Virtualisation (NFV); Management and Orchestration; + Ve-Vnfm reference point - Interface and Information Model Specification + section 9.4.2 + + ETSI GS NFV-IFA 015 v2.1.2: Network Functions Virtualisation (NFV); + Management and Orchestration; Report on NFV Information Model + section B2.4.2.1.2.3"; + } + + leaf vnfdId { + type string ; + description "Identifier of the VNFD on which the VNF instance is based. + The absence of the leaf or a string length of zero for vnfInstanceId + means the VNF instance(s) does not exist (e.g. has not been + instantiated yet, has already been terminated)."; + reference "ETSI GS NFV-IFA 008 v2.1.1: + Network Functions Virtualisation (NFV); Management and Orchestration; + Ve-Vnfm reference point - Interface and Information Model Specification + section 9.4.2"; + } + + leaf flavourId { + type string ; + description "Identifier of the VNF Deployment Flavour applied to this + VNF instance."; + reference "ETSI GS NFV-IFA 008 v2.1.1: + Network Functions Virtualisation (NFV) Management and Orchestration"; + } + + leaf autoScalable { + type boolean ; + mandatory true; + description "Indicator of whether the auto-scaling of this + VNF instance is enabled or disabled."; + } + } + + list peeParametersList { + key idx; + description "Contains the parameter set for the control + and monitoring of power, energy and environmental parameters of + ManagedFunction instance(s)."; + + leaf idx { type uint32; } + + leaf siteIdentification { + type string; + mandatory true; + description "The identification of the site where the + ManagedFunction resides."; + } + + leaf siteLatitude { + type decimal64 { + fraction-digits 4; + range "-90.0000..+90.0000"; + } + description "The latitude of the site where the ManagedFunction + instance resides, based on World Geodetic System (1984 version) + global reference frame (WGS 84). Positive values correspond to + the northern hemisphere. This attribute is optional in case of + BTSFunction and RNCFunction instance(s)."; + } + + leaf siteLongitude { + type decimal64 { + fraction-digits 4; + range "-180.0000..+180.0000"; + } + description "The longitude of the site where the ManagedFunction + instance resides, based on World Geodetic System (1984 version) + global reference frame (WGS 84). Positive values correspond to + degrees east of 0 degrees longitude. This attribute is optional in + case of BTSFunction and RNCFunction instance(s)."; + } + + leaf siteDescription { + type string; + mandatory true; + description "An operator defined description of the site where + the ManagedFunction instance resides."; + } + + leaf equipmentType { + type string; + mandatory true; + description "The type of equipment where the managedFunction + instance resides."; + reference "clause 4.4.1 of ETSI ES 202 336-12"; + } + + leaf environmentType { + type string; + mandatory true; + description "The type of environment where the managedFunction + instance resides."; + reference "clause 4.4.1 of ETSI ES 202 336-12"; + } + + leaf powerInterface { + type string; + mandatory true; + description "The type of power."; + reference "clause 4.4.1 of ETSI ES 202 336-12"; + } + } + + leaf priorityLabel { + mandatory true; + type uint32; + } + uses meas3gpp:SupportedPerfMetricGroupGrp; + } + + grouping ManagedFunctionContainedClasses { + description "A grouping used to containe classes (lists) contained by + the abstract IOC ManagedFunction"; + list ManagedNFService { + description "Represents a Network Function (NF)"; + reference "3GPP TS 23.501"; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses ManagedNFServiceGrp; + } + } + + uses meas3gpp:MeasurementSubtree { + if-feature MeasurementsUnderManagedFunction ; + } + + uses trace3gpp:TraceSubtree { + if-feature TraceUnderManagedFunction ; + } + } +} \ No newline at end of file diff --git a/yang-models/_3gpp-common-measurements.yang b/yang-models/_3gpp-common-measurements.yang new file mode 100755 index 000000000..30627565c --- /dev/null +++ b/yang-models/_3gpp-common-measurements.yang @@ -0,0 +1,542 @@ +module _3gpp-common-measurements { + yang-version 1.1; + namespace "urn:3gpp:sa5:_3gpp-common-measurements"; + prefix "meas3gpp"; + + import _3gpp-common-top { prefix top3gpp; } + import _3gpp-common-yang-types { prefix types3gpp; } + + organization "3GPP SA5"; + contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; + + description "Defines Measurement and KPI related groupings + Any list/class intending to use this should include 2 or 3 uses statements + controlled by a feature: + + A) ++++ feature MeasurementsUnderMyClass { ++++ description 'Indicates whether measurements and/or KPIs are supported ++++ for this class.'; ++++ } + + B) include the attribute measurementsList and/or kPIsList indicating the + supported measurment and KPI types and GPs. Note that for classes + inheriting from ManagedFunction, EP_RP or SubNetwork these attributes are + already inherited, so there is no need to include them once more. E.g. + ++++ grouping MyClassGrp { ++++ uses meas3gpp:SupportedPerfMetricGroup; ++++ } + + C) include the class PerfmetricJob to control the measurements/KPIs. E.g. + + list MyClass { + container attributes { + uses MyClassGrp; + } ++++ uses meas3gpp:MeasurementSubtree { ++++ if-feature MeasurementsUnderMyClass ; ++++ } + } + + Measurements can be contained under ManagedElement, SubNetwork, or + any list representing a class inheriting from Subnetwork or + ManagedFunction. Note: KPIs will only be supported under SubNetwork"; + + reference "3GPP TS 28.623 + Generic Network Resource Model (NRM) + Integration Reference Point (IRP); + Solution Set (SS) definitions + + 3GPP TS 28.622 + Generic Network Resource Model (NRM) + Integration Reference Point (IRP); + Information Service (IS)"; + + revision 2020-11-06 { reference "CR-0118"; } + revision 2020-09-04 { reference "CR-000107"; } + revision 2020-06-08 { reference "CR-0092"; } + revision 2020-05-31 { reference "CR-0084"; } + revision 2020-03-11 { reference "S5-201581, SP-200229"; } + revision 2019-11-21 { reference "S5-197275, S5-197735"; } + revision 2019-10-28 { reference "S5-193516"; } + revision 2019-06-17 { } + + grouping ThresholdInfoGrp { + description "Defines a single threshold level."; + + leaf-list measurementTypes { + type string; + description "The Measurement type can be those specified in TS 28.552, + TS 32.404 and can be those specified by other SDOs or can be + vendor-specific."; + } + + leaf thresholdLevel { + type uint64; + mandatory true; + description "Number (key) for a single threshold in the threshold list + applicable to the monitored performance metric."; + } + + leaf thresholdDirection { + type enumeration { + enum UP; + enum DOWN; + enum UP_AND_DOWN; + } + must '. = "UP_AND_DOWN" or not(../hysteresis)' { + error-message "In case a threshold with hysteresis is configured, the " + +"threshold direction attribute shall be set to 'UP_AND_DOWN'."; + } + mandatory true; + description "Direction of a threshold indicating the direction for which + a threshold crossing triggers a threshold. + + When the threshold direction is configured to 'UP', the associated + treshold is triggered only when the performance metric value is going + up upon reaching or crossing the threshold value. The treshold is not + triggered, when the performance metric is going down upon reaching or + crossing the threshold value. + + Vice versa, when the threshold direction is configured to 'DOWN', the + associated treshold is triggered only when the performance metric is + going down upon reaching or crossing the threshold value. The treshold + is not triggered, when the performance metric is going up upon reaching + or crossing the threshold value. + + When the threshold direction is set to 'UP_AND_DOWN' the treshold is + active in both direcions. + + In case a threshold with hysteresis is configured, the threshold + direction attribute shall be set to 'UP_AND_DOWN'."; + } + + leaf thresholdValue { + type union { + type int64; + type decimal64 { + fraction-digits 2; + } + } + mandatory true; + description "Value against which the monitored performance metric is + compared at a threshold level in case the hysteresis is zero"; + } + + leaf hysteresis { + type union { + type uint64; + type decimal64 { + fraction-digits 2; + range "0..max"; + } + } + description "Hysteresis of a threshold. If this attribute is present + the monitored performance metric is not compared against the + threshold value as specified by the thresholdValue attribute but + against a high and low threshold value given by + + threshold-high = thresholdValue + hysteresis + threshold-low = thresholdValue - hysteresis + + When going up, the threshold is triggered when the performance metric + reaches or crosses the high threshold value. When going down, the + hreshold is triggered when the performance metric reaches or crosses + the low threshold value. + + A hysteresis may be present only when the monitored performance + metric is not of type counter that can go up only. If present + for a performance metric of type counter, it shall be ignored."; + } + } + + grouping SupportedPerfMetricGroupGrp { + list SupportedPerfMetricGroup { + config false; + description "Captures a group of supported performance metrics and + associated parameters related to their production and reporting. + A SupportedPerfMetricGroup attribute which is part of an MOI may + define performanceMetrics for any MOI under the subtree contained + under that MOI, e.g. SupportedPerfMetricGroup on a ManagedElement + can specify supported metrics for contained ManagedFunctions + like a GNBDUFunction."; + + leaf-list performanceMetrics { + type string; + min-elements 1; + description "Performance metrics include measurements defined in + TS 28.552 and KPIs defined in TS 28.554. Performance metrics can + also be those specified by other SDOs or vendor specific metrics. + Performance metrics are identfied with their names. A name can also + identify a vendor specific group of performance metrics. + + For measurements defined in TS 28.552 the name is constructed as + follows: + - 'family.measurementName.subcounter' for measurement types with + subcounters + - 'family.measurementName' for measurement types without subcounters + - 'family' for measurement families + + For KPIs defined in TS 28.554 the name is defined in the KPI + definitions template as the component designated with e)."; + } + + leaf-list granularityPeriods { + type uint32 { + range 1..max ; + } + units seconds; + } + + leaf-list reportingMethods { + type enumeration { + enum FILE_BASED_LOC_SET_BY_PRODUCER; + enum FILE_BASED_LOC_SET_BY_CONSUMER; + enum STREAM_BASED; + } + min-elements 1; + } + + leaf-list monitorGranularityPeriods { + type uint32 { + range 1..max ; + } + units seconds; + description "Granularity periods supported for the monitoring of + associated measurement types for thresholds"; + } + } + } + + grouping PerfMetricJobGrp { + description "Represents the attributtes of the IOC PerfMetricJob"; + + leaf administrativeState { + default UNLOCKED; + type types3gpp:AdministrativeState ; + description "Enable or disables production of the metrics"; + } + + leaf operationalState { + config false; + mandatory true; + type types3gpp:OperationalState ; + description "Indicates whether the PerfMetricJob is working."; + } + + leaf jobId { + type string; + description "Id for a PerfMetricJob job."; + } + + leaf-list performanceMetrics { + type string; + min-elements 1; + description "Performance metrics include measurements defined in + TS 28.552 and KPIs defined in TS 28.554. Performance metrics can + also be those specified by other SDOs or vendor specific metrics. + Performance metrics are identfied with their names. A name can also + identify a vendor specific group of performance metrics. + + For measurements defined in TS 28.552 the name is constructed as + follows: + - 'family.measurementName.subcounter' for measurement types with + subcounters + - 'family.measurementName' for measurement types without subcounters + - 'family' for measurement families + + For KPIs defined in TS 28.554 the name is defined in the KPI + definitions template as the component designated with e)."; + } + + leaf granularityPeriod { + type uint32 { + range 1..max ; + } + units seconds; + mandatory true; + description "Granularity period used to produce measurements. The value + must be one of the supported granularity periods for the metric."; + } + + leaf-list objectInstances { + type types3gpp:DistinguishedName; + } + + leaf-list rootObjectInstances { + type types3gpp:DistinguishedName; + description "Each object instance designates the root of a subtree that + contains the root object and all descendant objects."; + } + + choice reportingCtrl { + mandatory true; + description "This choice defines the method for reporting collected + performance metrics to MnS consumers as well as the parameters for + configuring the reporting function. It is a choice between the control + parameter required for the reporting methods, whose presence selects + the reporting method as follows: + - When only the fileReportingPeriod attribute is present, the MnS + producer shall store files on the MnS producer at a location selected + by the MnS producer and inform the MnS consumer about the availability + of new files and the file location using the notifyFileReady + notification. + - When only the fileReportingPeriod and fileLocation attributes are + present, the MnS producer shall store the files on the MnS consumer at + the location specified by fileLocation. No notification is emitted by + the MnS producer. + - When only the streamTarget attribute is present, the MnS producer + shall stream the data to the location specified by streamTarget. + + For the file-based reporting methods the fileReportingPeriod attribute + specifies the time window during which collected measurements are stored + into the same file before the file is closed and a new file is opened."; + + case file-based-reporting { + leaf fileReportingPeriod { + type uint32 { + range 1..max; + } + units minutes; + must '(number(.)*"60") mod number(../granularityPeriod) = "0"' { + error-message + "The time-period must be a multiple of the granularityPeriod."; + } + mandatory true; + description "For the file-based reporting method this is the time + window during which collected measurements are stored into the same + file before the file is closed and a new file is opened. + The time-period must be a multiple of the granularityPeriod. + + Applicable when the file-based reporting method is supported"; + } + + leaf fileLocation { + type string ; + description "Applicable and must be present when the file-based + reporting method is supported, and the files are stored on the MnS + consumer."; + } + } + case stream-based-reporting { + leaf streamTarget { + type string; + mandatory true; + description "Applicable when stream-based reporting method is + supported."; + } + } + } + } + + + grouping ThresholdMonitorGrp { + description "A threshold monitor that is created by the consumer for + the monitored entities whose measurements are required by consumer + to monitor."; + + leaf administrativeState { + default UNLOCKED; + type types3gpp:AdministrativeState ; + description "Enables or disables the ThresholdMonitor."; + } + + leaf operationalState { + config false; + mandatory true; + type types3gpp:OperationalState ; + description "Indicates whether the ThresholdMonitor is working."; + } + + list thresholdInfoList { + key idx; + min-elements 1; + leaf idx { type uint32 ; } + uses ThresholdInfoGrp; + } + + leaf monitorGranularityPeriod { + type uint32 { + range "1..max"; + } + units second; + mandatory true; + description " Granularity period used to monitor measurements for + threshold crossings. "; + } + + leaf-list objectInstances { + type types3gpp:DistinguishedName; + } + + leaf-list rootObjectInstances { + type types3gpp:DistinguishedName; + description "Each object instance designates the root of a subtree that + contains the root object and all descendant objects."; + } + } + + grouping MeasurementSubtree { + description "Contains classes that define measurements. + Should be used in all classes (or classes inheriting from) + - SubNnetwork + - ManagedElement + - ManagedFunction + + If a YANG module wants to augment these classes/list/groupings they must + augment all user classes! + + If a class uses this grouping in its list it shall also use the + grouping SupportedPerfMetricGroupGrp to add SupportedPerfMetricGroup as + an attribute to its grouping"; + + list PerfMetricJob { + description "This IOC represents a performance metric production job. It + can be name-contained by SubNetwork, ManagedElement, or ManagedFunction. + + To activate the production of the specified performance metrics, a MnS + consumer needs to create a PerfMetricJob instance on the MnS producer + and ensure that the adminState is sUNLOCKED>. + For ultimate deactivation of metric production, the MnS consumer should + delete the job to free up resources on the MnS producer. + + For temporary suspension of metric production, the MnS consumer can + manipulate the value of the administrative state attribute. The MnS + producer may disable metric production as well, for example in overload + situations. This situation is indicated by the MnS producer with setting + the operational state attribute to disabled. When production is resumed + the operational state is set again to enabled. + + The jobId attribute can be used to associate metrics from multiple + PerfMetricJob instances. The jobId can be included when reporting + performance metrics to allow a MnS consumer to associate received + metrics for the same purpose. For example, it is possible to configure + the same jobId value for multiple PerfMetricJob instances required to + produce the measurements for a specific KPI. + + The attribute performanceMetrics defines the performance metrics to be + produced and the attribute granularityPeriod defines the granularity + period to be applied. + + All object instances below and including the instance name-containing + the PerfMetricJob (base object instance) are scoped for performance + metric production. Performance metrics are produced only on those object + instances whose object class matches the object class associated to the + performance metrics to be produced. + + The attributes objectInstances and rootObjectInstances allow to restrict + the scope. When the attribute objectInstances is present, only the object + instances identified by this attribute are scoped. When the attribute + rootObjectInstances is present, then the subtrees whose root objects are + identified by this attribute are scoped. Both attributes may be present + at the same time meaning the total scope is equal to the sum of both + scopes. Object instances may be scoped by both the objectInstances and + rootObjectInstances attributes. This shall not be considered as an error + by the MnS producer. + + When the performance metric requires performance metric production on + multiple managed objects, which is for example the case for KPIs, the + MnS consumer needs to ensure all required objects are scoped. Otherwise + a PerfMetricJob creation request shall fail. + + The attribute reportingCtrl specifies the method and associated control + parameters for reporting the produced measurements to MnS consumers. + Three methods are available: file-based reporting with selection of the + file location by the MnS producer, file-based reporting with selection + of the file location by the MnS consumer and stream-based reporting. + + A PerfMetricJob creation request shall fail, when the requested + performance metrics, the requested granularity period, the requested + repoting method, or the requested combination thereof is not supported + by the MnS producer. + + Creation and deletion of PerfMetricJob instances by MnS consumers is + optional; when not supported, PerfMetricJob instances may be created and + deleted by the system or be pre-installed."; + + key id; + uses top3gpp:Top_Grp ; + container attributes { + uses PerfMetricJobGrp ; + } + } + + list ThresholdMonitor { + key id; + description "Represents a threshold monitor for performance metrics. + It can be contained by SubNetwork, ManagedElement, or ManagedFunction. + A threshold monitor checks for threshold crossings of performance metric + values and generates a notification when that happens. + + To activate threshold monitoring, a MnS consumer needs to create a + ThresholdMonitor instance on the MnS producer. For ultimate deactivation + of threshold monitoring, the MnS consumer should delete the monitor to + free up resources on the MnS producer. + + For temporary suspension of threshold monitoring, the MnS consumer can + manipulate the value of the administrative state attribute. The MnS + producer may disable threshold monitoring as well, for example in + overload situations. This situation is indicated by the MnS producer with + setting the operational state attribute to disabled. When monitoring is + resumed the operational state is set again to enabled. + + All object instances below and including the instance containing the + ThresholdMonitor (base object instance) are scoped for performance + metric production. Performance metrics are monitored only on those + object instances whose object class matches the object class associated + to the performance metrics to be monitored. + + The optional attributes objectInstances and rootObjectInstances allow to + restrict the scope. When the attribute objectInstances is present, only + the object instances identified by this attribute are scoped. When the + attribute rootObjectInstances is present, then the subtrees whose root + objects are identified by this attribute are scoped. Both attributes may + be present at the same time meaning the total scope is equal to the sum + of both scopes. Object instances may be scoped by both the objectInstances + and rootObjectInstances attributes. This shall not be considered as an + error by the MnS producer. + + Multiple thresholds can be defined for multiple performance metric sets + in a single monitor using thresholdInfoList. The attribute + monitorGranularityPeriod defines the granularity period to be applied. + + Each threshold is identified with a number (key) called thresholdLevel. + A threshold is defined using the attributes thresholdValue , + thresholdDirection and hysteresis. + + When hysteresis is absent or carries no information, a threshold is + triggered when the thresholdValue is reached or crossed. When hysteresis + is present, two threshold values are specified for the threshold as + follows: A high treshold value equal to the threshold value plus the + hysteresis value, and a low threshold value equal to the threshold value + minus the hysteresis value. When the monitored performance metric + increases, the threshold is triggered when the high threshold value is + reached or crossed. When the monitored performance metric decreases, the + threshold is triggered when the low threshold value is reached or crossed. + The hsyteresis ensures that the performance metric value can oscillate + around a comparison value without triggering each time the threshold when + the threshold value is crossed. + + Using the thresholdDirection attribute a threshold can be configured in + such a manner that it is triggered only when the monitored performance + metric is going up or down upon reaching or crossing the threshold. + + A ThresholdMonitor creation request shall be rejected, if the performance + metrics requested to be monitored, the requested granularity period, or + the requested combination thereof is not supported by the MnS producer. + A creation request may fail, when the performance metrics requested to be + monitored are not produced by a PerfMetricJob. + + Creation and deletion of ThresholdMonitor instances by MnS consumers is + optional; when not supported, ThresholdMonitor instances may be created + and deleted by the system or be pre-installed."; + + + uses top3gpp:Top_Grp ; + container attributes { + uses ThresholdMonitorGrp ; + } + } + } +} \ No newline at end of file diff --git a/yang-models/_3gpp-common-subnetwork.yang b/yang-models/_3gpp-common-subnetwork.yang new file mode 100755 index 000000000..36776b38a --- /dev/null +++ b/yang-models/_3gpp-common-subnetwork.yang @@ -0,0 +1,214 @@ +module _3gpp-common-subnetwork { + yang-version 1.1; + namespace "urn:3gpp:sa5:_3gpp-common-subnetwork"; + prefix "subnet3gpp"; + + import _3gpp-common-yang-types { prefix types3gpp; } + import _3gpp-common-top { prefix top3gpp; } + import _3gpp-common-measurements { prefix meas3gpp; } + import _3gpp-common-subscription-control { prefix subscr3gpp; } + import _3gpp-common-fm { prefix fm3gpp; } + import _3gpp-common-trace { prefix trace3gpp; } + import ietf-yang-schema-mount { prefix yangmnt; } + + organization "3GPP SA5"; + contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; + + description "Defines basic SubNetwork which will be augmented by other IOCs"; + reference "3GPP TS 28.623 + Generic Network Resource Model (NRM) + Integration Reference Point (IRP); + Solution Set (SS) definitions + + 3GPP TS 28.622 + Generic Network Resource Model (NRM) + Integration Reference Point (IRP); + Information Service (IS) + + 3GPP TS 28.620 + Umbrella Information Model (UIM)"; + + revision 2021-01-16 { reference "CR-0120"; } + revision 2020-08-06 { reference "CR-0102"; } + revision 2020-06-08 { reference "CR-0092"; } + revision 2020-05-08 { + reference "S5-203316"; + } + + + revision 2020-03-11 { + description "Added KPIs and corrections"; + reference "S5-201365, S5-201581, SP-200229"; + } + + revision 2020-02-24 { + reference "S5-201365"; + } + + revision 2019-06-17 { + reference "Initial revision"; + } + + feature ExternalsUnderSubNetwork { + description "Classes representing external entities like EUtranFrequency, + ExternalGNBCUCPFunction, ExternalENBFunction + are contained under a Subnetwork list/class."; + } + + feature MeasurementsUnderSubNetwork { + description "The MeasurementSubtree shall be contained under SubNetwork"; + } + + feature SubscriptionControlUnderSubNetwork { + description "The SubscriptionControlSubtree shall be contained under + SubNetwork"; + } + + feature FmUnderSubNetwork { + description "The FmSubtree shall be contained under SubNetwork"; + } + + feature TraceUnderSubNetwork { + description "The TraceSubtree shall be contained under SubNetwork"; + } + + feature DESManagementFunction { + description "Class representing Distributed SON or Domain-Centralized SON + Energy Saving feature. The DESManagementFunction shall be contained under + SubNetwork."; + } + + feature DMROFunction { + description "Class representing D-SON function of MRO feature. The + DMROFunction shall be contained under SubNetwork."; + } + + feature DRACHOptimizationFunction { + description "Class representing D-SON function of RACH optimization feature. + The DRACHOptimizationFunction shall be contained under SubNetwork."; + } + + feature DPCIConfigurationFunction { + description "Class representing Distributed SON or Domain-Centralized SON + function of PCI configuration feature. The DPCIConfigurationFunction shall + be contained under SubNetwork."; + } + + feature CPCIConfigurationFunction { + description "Class representing Cross Domain-Centralized SON function of PCI + configuration feature. The CPCIConfigurationFunction shall be contained + under SubNetwork."; + } + + feature CESManagementFunction { + description "Class representing Cross Domain-Centralized SON Energy Saving + feature. The CESManagementFunction shall be contained under SubNetwork."; + } + + grouping Domain_Grp { + description "A domain is a partition of instances of managed entities + such that : + - the group represents a topological structure which describes the + potential for connectivity + - Subject to common administration + - With common characteristics"; + + leaf dnPrefix { + type types3gpp:DistinguishedName; + reference "Annex C of 32.300 "; + } + + leaf userLabel { + type string; + description "A user-friendly (and user assignable) name of this object."; + } + + leaf userDefinedNetworkType { + type string; + description "Textual information indicating network type, e.g. 'UTRAN'."; + } + } + + grouping SubNetworkGrp { + uses Domain_Grp; + uses meas3gpp:SupportedPerfMetricGroupGrp; + + + leaf-list setOfMcc { + description "Set of Mobile Country Code (MCC). + The MCC uniquely identifies the country of domicile + of the mobile subscriber. MCC is part of the IMSI (3GPP TS 23.003) + + This list contains all the MCC values in subordinate object + instances to this SubNetwork instance. + + See clause 2.3 of 3GPP TS 23.003 for MCC allocation principles. + + It shall be supported if there is more than one value in setOfMcc + of the SubNetwork. Otherwise the support is optional."; + type types3gpp:Mcc; + } + + leaf priorityLabel { + mandatory true; + type uint32; + } + + } + + list SubNetwork { + key id; + description "Represents a set of managed entities"; + + uses top3gpp:Top_Grp; + container attributes { + uses SubNetworkGrp; + leaf-list parents { + description "Reference to all containg SubNetwork instances + in strict order from the root subnetwork down to the immediate + parent subnetwork. + If subnetworks form a containment hierarchy this is + modeled using references between the child SubNetwork and the parent + SubNetworks. + This reference MUST NOT be present for the top level SubNetwork and + MUST be present for other SubNetworks."; + type leafref { + path "../../../SubNetwork/id"; + } + } + + leaf-list containedChildren{ + description "Reference to all directly contained SubNetwork instances. + If subnetworks form a containment hierarchy this is + modeled using references between the child SubNetwork and the parent + SubNetwork."; + type leafref { + path "../../../SubNetwork/id"; + } + } + } + + uses meas3gpp:MeasurementSubtree { + if-feature MeasurementsUnderSubNetwork; + } + + uses subscr3gpp:SubscriptionControlSubtree { + if-feature SubscriptionControlUnderSubNetwork; + } + + uses fm3gpp:FmSubtree { + if-feature FmUnderSubNetwork; + } + + uses trace3gpp:TraceSubtree { + if-feature TraceUnderSubNetwork; + } + + yangmnt:mount-point children-of-SubNetwork { + description "Mountpoint for ManagedElement"; + reference "RFC8528 YANG Schema Mount"; + } + + // augment external parts here + } +} \ No newline at end of file diff --git a/yang-models/_3gpp-common-subscription-control.yang b/yang-models/_3gpp-common-subscription-control.yang new file mode 100755 index 000000000..25bde6927 --- /dev/null +++ b/yang-models/_3gpp-common-subscription-control.yang @@ -0,0 +1,209 @@ +module _3gpp-common-subscription-control { + yang-version 1.1; + namespace "urn:3gpp:sa5:_3gpp-common-subscription-control"; + prefix "subscr3gpp"; + + import _3gpp-common-top { prefix top3gpp; } + + organization "3GPP SA5"; + contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; + + description "Defines IOCs for subscription and heartbeat control."; + reference "3GPP TS 28.623 + Generic Network Resource Model (NRM) + Integration Reference Point (IRP); + Solution Set (SS) definitions + 3GPP TS 28.623"; + + revision 2021-01-16 { reference "CR-0120"; } + revision 2020-08-26 { reference "CR-0106"; } + revision 2019-11-29 { reference "S5-197648 S5-197647 S5-197829 S5-197828"; } + + grouping NtfSubscriptionControlGrp { + description "Attributes of a specific notification subscription"; + + leaf notificationRecipientAddress { + type string; + mandatory true; + } + + leaf-list notificationTypes { + type string; + description "Defines the types of notifications that are candidates + for being forwarded to the notification recipient. + If the notificationFilter attribute is not supported or not present + all candidate notifications types are forwarded to the notification; + discriminated by notificationFilter attribute."; + } + + list scope { + key "scopeType"; + min-elements 1; + max-elements 1; + description "Describes which object instances are selected with + respect to a base object instance."; + + leaf scopeType { + type enumeration { + enum BASE_ONLY; + enum BASE_ALL; + enum BASE_NTH_LEVEL; + enum BASE_SUBTREE; + } + description "If the optional scopeLevel parameter is not supported + or absent, allowed values of scopeType are BASE_ONLY and BASE_ALL. + + The value BASE_ONLY indicates only the base object is selected. + The value BASE_ALL indicates the base object and all of its + subordinate objects (incl. the leaf objects) are selected. + + If the scopeLevel parameter is supported and present, allowed + values of scopeType are BASE_ALL, BASE_ONLY, BASE_NTH_LEVEL + and BASE_SUBTREE. + + The value BASE_NTH_LEVEL indicates all objects on the level, + which is specified by the scopeLevel parameter, below the base + object are selected. The base object is at scopeLevel zero. + The value BASE_SUBTREE indicates the base object and all of its + subordinate objects down to and including the objects on the level, + which is specified by the scopeLevel parameter, are selected. + The base object is at scopeLevel zero."; + } + + leaf scopeLevel { + when '../scopeType = "BASE_NTH_LEVEL" or ../scopeType = "BASE_SUBTREE"'; + type uint16; + mandatory true; + description "See description of scopeType."; + } + } + + leaf notificationFilter { + type string; + description "Defines a filter to be applied to candidate notifications + identified by the notificationTypes attribute. + If notificationFilter is present, only notifications that pass the + filter criteria are forwarded to the notification recipient; all other + notifications are discarded. + The filter can be applied to any field of a notification."; + } + } + + grouping HeartbeatControlGrp { + description "Attributes of HeartbeatControl. Note the triggerHeartbeatNtf + attribute has no mapping in the present release."; + + leaf heartbeatNtfPeriod { + type uint32; + mandatory true; + units seconds; + description "Specifies the periodicity of heartbeat notification emission. + The value of zero has the special meaning of stopping the heartbeat + notification emission."; + } + } + + grouping SubscriptionControlSubtree { + description "Contains notification subscription related classes. + Should be used in all classes (or classes inheriting from) + - SubNetwork + - ManagedElement + + If some YAM wants to augment these classes/list/groupings they must + augment all user classes!"; + + list NtfSubscriptionControl { + description "A NtfSubscriptionControl instance represents the + notification subscription of a particular notification recipient. + The scope attribute is used to select managed object instances. + The base object instance of the scope is the object instance + name-containing the NtfSubscriptionControl instance. + The notifications related to the selected managed object instances + are candidates to be sent to the address specified by the + notificationRecipientAddress attribute. + The notificationType attribute and notificationFilter attribute + allow MnS consumers to exercise control over which candidate + notifications are sent to the notificationRecipientAddress. + If the notificationType attribute is supported and present, its + value identifies the + types of notifications that are candidate to be sent to the + notificationRecipientAddress. If the notificationType attribute is + not supported or not present, all types of notifications are + candidate to be sent to notificationRecipientAddress. + If supported, the notificationFilter attribute defines a filter that + is applied to the set of candidate notifications. Only candidate + notifications that pass the filter criteria are sent to the + notificationRecipientAddress. If the notificationFilter attribute is + not supported all candidate notificatios are sent to the + notificationRecipientAddress. + To receive notifications, a MnS consumer has to create + NtfSubscriptionControl object instancess on the MnS producer. + A MnS consumer can create a subscription for another MnS consumer + since it is not required the notificationRecipientAddress be his own + address. + When a MnS consumer does not wish to receive notifications any more + the MnS consumer shall delete the corresponding NtfSubscriptionControl + instance. + Creation and deletion of NtfSubscriptionControl instances by MnS + consumers is optional; when not supported, the NtfSubscriptionControl + instances may be created and deleted by the system or be + pre-installed."; + + key id; + uses top3gpp:Top_Grp; + container attributes { + uses NtfSubscriptionControlGrp; + } + + list HeartbeatControl { + description "MnS consumers (i.e. notification recipients) use heartbeat + notifications to monitor the communication channels between them and + data reporting MnS producers emitting notifications such as + notifyNewAlarm and notifyFileReady. + + A HeartbeatControl instance allows controlling the emission of + heartbeat notifications by MnS producers. The recipients of heartbeat + notifications are specified by the notificationRecipientAddress + attribute of the NtfSubscriptionControl instance containing the + HeartbeatControl instance. + + Note that the MnS consumer managing the HeartbeatControl instance + and the MnS consumer receiving the heartbeat notifications may not be + the same. + + As a pre-condition for the emission of heartbeat notifications, a + HeartbeatControl instance needs to be created. Creation of an instance + with an initial non-zero value of the heartbeatNtfPeriod attribute + triggers an immediate heartbeat notification emission. Creation of an + instance with an initial zero value of the heartbeatPeriod attribute + does not trigger an emission of a heartbeat notification. Deletion of + an instance does not trigger an emission of a heartbeat notification. + + Once the instance is created, heartbeat notifications are emitted with + a periodicity defined by the value of the heartbeatNtfPeriod + attribute. No heartbeat notifications are emitted if the value is + equal to zero. Setting a zero value to a non zero value, or a non zero + value to a different non zero value, triggers an immediate heartbeat + notification, that is the base for the new heartbeat period. Setting a + non zero value to a zero value stops emitting heartbeats immediately; + no final heartbeat notification is sent. + + Creation and deletion of HeartbeatControl instances by MnS Consumers + is optional; when not supported, the HeartbeatControl instances may be + created and deleted by the system or be pre-installed. + + Whether and when to emit heartbeat notifications is controlled by + HeartbeatControl. Subscription for heartbeat is not supported via the + NtfSubscriptionControl."; + + max-elements 1; + key id; + uses top3gpp:Top_Grp; + + container attributes { + uses HeartbeatControlGrp; + } + } + } + } +} \ No newline at end of file diff --git a/yang-models/_3gpp-common-top.yang b/yang-models/_3gpp-common-top.yang new file mode 100755 index 000000000..c58adbea7 --- /dev/null +++ b/yang-models/_3gpp-common-top.yang @@ -0,0 +1,36 @@ +module _3gpp-common-top { + yang-version 1.1; + + namespace urn:3gpp:sa5:_3gpp-common-top; + prefix top3gpp; + + organization "3gpp SA5"; + description "The model defines a YANG mapping of the top level + information classes used for management of 5G networks and + network slicing."; + reference + "3GPP TS 28.622 + Generic Network Resource Model (NRM) + Integration Reference Point (IRP); + Information Service (IS) + + 3GPP TS 28.620 + Umbrella Information Model (UIM)"; + + revision 2019-06-17 { + description "Initial revision"; + } + + grouping Top_Grp { + description "Abstract class supplying a naming attribute"; + reference "3GPP TS 28.620"; + + leaf id { + type string; + description "Key leaf (namingAttribute) for a class/list. + Should be used as a key leaf for lists representing + stage 2 classes."; + reference "3GPP TS 32.300 Name convention for managed objects"; + } + } +} \ No newline at end of file diff --git a/yang-models/_3gpp-common-trace.yang b/yang-models/_3gpp-common-trace.yang new file mode 100755 index 000000000..13b3f026d --- /dev/null +++ b/yang-models/_3gpp-common-trace.yang @@ -0,0 +1,895 @@ +module _3gpp-common-trace { + yang-version 1.1; + namespace "urn:3gpp:sa5:_3gpp-common-trace"; + prefix "trace3gpp"; + + import _3gpp-common-top { prefix top3gpp; } + import _3gpp-common-yang-types {prefix types3gpp; } + import ietf-inet-types { prefix inet; } + + organization "3GPP SA5"; + contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; + + description "Trace handling"; + + reference "3GPP TS 28.623 + Generic Network Resource Model (NRM) + Integration Reference Point (IRP); + Solution Set (SS) definitions + + 3GPP TS 28.622 + Generic Network Resource Model (NRM) + Integration Reference Point (IRP); + Information Service (IS)"; + + revision 2021-01-25 { reference "CR-0122"; } + revision 2020-11-16 { reference "CR-0117"; } + revision 2020-08-06 { reference "CR-0102"; } + + grouping TraceJobGrp { + leaf tjJobType { + type enumeration { + enum IMMEDIATE_MDT_ONLY; + enum LOGGED_MDT_ONLY; + enum TRACE_ONLY; + enum IMMEDIATE_MDT_AND_TRACE; + enum RLF_REPORT_ONLY; + enum RCEF_REPORT_ONLY; + enum LOGGED_MBSFN_MDT; + } + default TRACE_ONLY; + description "Specifies the MDT mode and it specifies also whether the + TraceJob represents only MDT, Logged MBSFN MDT, Trace or a combined + Trace and MDT job. The attribute is applicable for Trace, MDT, RCEF and + RLF reporting."; + reference "Clause 5.9a of 3GPP TS 32.422 for additional details on the + allowed values."; + } + + list tjListOfInterfaces { + key idx; + must 'count(MSCServerInterfaces)+count(MGWInterfaces)+count(RNCInterfaces)' + +'+count(SGSNInterfaces)+count(GGSNInterfaces)+count(S-CSCFInterfaces)' + +'+count(P-CSCFInterfaces)+count(I-CSCFInterfaces)+count(MRFCInterfaces)' + +'+count(MGCFInterfaces)+count(IBCFInterfaces)+count(E-CSCFInterfaces)' + +'+count(BGCFInterfaces)+count(ASInterfaces)+count(HSSInterfaces)' + +'+count(EIRInterfaces)+count(BM-SCInterfaces)+count(MMEInterfaces)' + +'+count(SGWInterfaces)+count(PDN_GWInterfaces)+count(eNBInterfaces)' + +'+count(en-gNBInterfaces)+count(AMFInterfaces)+count(AUSFInterfaces)' + +'+count(NEFInterfaces)+count(NRFInterfaces)+count(NSSFInterfaces)' + +'+count(PCFInterfaces)+count(SMFInterfaces)+count(SMSFInterfaces)' + +'+count(UDMInterfaces)+count(UPFInterfaces)+count(ng-eNBInterfaces)' + +'+count(gNB-CU-CPInterfaces)+count(gNB-CU-UPInterfaces)+count(gNB-DUInterfaces)'; + + description "Specifies the interfaces that need to be traced in the given + ManagedEntityFunction.The attribute is applicable only for Trace. In + case this attribute is not used, it carries a null semantic."; + reference "Clause 5.5 of 3GPP TS 32.422 for additional details on the + allowed values."; + + leaf idx { type uint32 ; } + + leaf-list MSCServerInterfaces { + type enumeration { + enum A ; + enum Iu-CS ; + enum Mc ; + enum MAP-G ; + enum MAP-B ; + enum MAP-E ; + enum MAP-F ; + enum MAP-D ; + enum MAP-C ; + enum CAP ; + } + } + leaf-list MGWInterfaces { + type enumeration { + enum Mc ; + enum Nb-UP ; + enum Iu-UP ; + } + } + leaf-list RNCInterfaces { + type enumeration { + enum Iu-CS ; + enum Iu-PS ; + enum Iur ; + enum Iub ; + enum Uu ; + } + } + leaf-list SGSNInterfaces { + type enumeration { + enum Gb ; + enum Iu-PS ; + enum Gn ; + enum MAP-Gr ; + enum MAP-Gd ; + enum MAP-Gf ; + enum Ge ; + enum Gs ; + enum S6d ; + enum S4 ; + enum S3 ; + enum S13 ; + } + } + leaf-list GGSNInterfaces { + type enumeration { + enum Gn ; + enum Gi ; + enum Gmb ; + } + } + leaf-list S-CSCFInterfaces { + type enumeration { + enum Mw ; + enum Mg ; + enum Mr ; + enum Mi ; + } + } + leaf-list P-CSCFInterfaces { + type enumeration { + enum Gm ; + enum Mw ; + } + } + leaf-list I-CSCFInterfaces { + type enumeration { + enum Cx ; + enum Dx ; + enum Mg ; + enum Mw ; + } + } + leaf-list MRFCInterfaces { + type enumeration { + enum Mp ; + enum Mr ; + } + } + leaf-list MGCFInterfaces { + type enumeration { + enum Mg ; + enum Mj ; + enum Mn ; + } + } + leaf-list IBCFInterfaces { + type enumeration { + enum Ix ; + enum Mx ; + } + } + leaf-list E-CSCFInterfaces { + type enumeration { + enum Mw ; + enum Ml ; + enum Mm ; + enum Mi-Mg ; + } + } + leaf-list BGCFInterfaces { + type enumeration { + enum Mi ; + enum Mj ; + enum Mk ; + } + } + leaf-list ASInterfaces { + type enumeration { + enum Dh ; + enum Sh ; + enum ISC ; + enum Ut ; + } + } + leaf-list HSSInterfaces { + type enumeration { + enum MAP-C ; + enum MAP-D ; + enum Gc ; + enum Gr ; + enum Cx ; + enum S6d ; + enum S6a ; + enum Sh ; + } + } + leaf-list EIRInterfaces { + type enumeration { + enum MAP-F ; + enum S13 ; + enum MAP-Gf ; + } + } + leaf-list BM-SCInterfaces { + type enumeration { + enum Gmb ; + } + } + leaf-list MMEInterfaces { + type enumeration { + enum S1-MME ; + enum S3 ; + enum S6a ; + enum S10 ; + enum S11 ; + enum S13 ; + } + } + leaf-list SGWInterfaces { + type enumeration { + enum S4 ; + enum S5 ; + enum S8 ; + enum S11 ; + enum Gxc ; + } + } + leaf-list PDN_GWInterfaces { + type enumeration { + enum S2a ; + enum S2b ; + enum S2c ; + enum S5 ; + enum S6b ; + enum Gx ; + enum S8 ; + enum SGi ; + } + } + leaf-list eNBInterfaces { + type enumeration { + enum S1-MME ; + enum X2 ; + } + } + leaf-list en-gNBInterfaces { + type enumeration { + enum S1-MME ; + enum X2 ; + enum Uu ; + enum F1-C ; + enum E1 ; + } + } + leaf-list AMFInterfaces { + type enumeration { + enum N1 ; + enum N2 ; + enum N8 ; + enum N11 ; + enum N12 ; + enum N14 ; + enum N15 ; + enum N20 ; + enum N22 ; + enum N26 ; + } + } + leaf-list AUSFInterfaces { + type enumeration { + enum N12 ; + enum N13 ; + } + } + leaf-list NEFInterfaces { + type enumeration { + enum N29 ; + enum N30 ; + enum N33 ; + } + } + leaf-list NRFInterfaces { + type enumeration { + enum N27 ; + } + } + leaf-list NSSFInterfaces { + type enumeration { + enum N22 ; + enum N31 ; + } + } + leaf-list PCFInterfaces { + type enumeration { + enum N5 ; + enum N7 ; + enum N15 ; + } + } + leaf-list SMFInterfaces { + type enumeration { + enum N4 ; + enum N7 ; + enum N10 ; + enum N11 ; + enum S5-C ; + } + } + leaf-list SMSFInterfaces { + type enumeration { + enum N20 ; + enum N21 ; + } + } + leaf-list UDMInterfaces { + type enumeration { + enum N8 ; + enum N10 ; + enum N13 ; + enum N21 ; + } + } + leaf-list UPFInterfaces { + type enumeration { + enum N4 ; + } + } + leaf-list ng-eNBInterfaces { + type enumeration { + enum NG-C ; + enum Xn-C ; + enum Uu ; + } + } + leaf-list gNB-CU-CPInterfaces { + type enumeration { + enum NG-C ; + enum Xn-C ; + enum Uu ; + enum F1-C ; + enum E1 ; + enum X2-C ; + } + } + leaf-list gNB-CU-UPInterfaces { + type enumeration { + enum E1 ; + } + } + leaf-list gNB-DUInterfaces { + type enumeration { + enum F1-C ; + } + } + } + + leaf-list tjListOfNeTypes { + type enumeration { + enum MSC_SERVER; + enum SGSN; + enum MGW; + enum GGSN; + enum RNC; + enum BM_SC; + enum MME; + enum SGW; + enum PGW; + enum ENB; + enum EN_GNB; + enum GNB_CU_CP; + enum GNB_CU_UP; + enum GNB_DU; + } + description "Specifies in which type of ManagedFunction the trace should + be activated. The attribute is applicable only for Trace with + Signalling Based Trace activation. In case this attribute is not used, + it carries a null semantic"; + reference "Clause 5.4 of 3GPP TS 32.422 for additional details on the + allowed values"; + } + + leaf tjPLMNTarget { + type string; + mandatory true; + description "Specifies which PLMN that the subscriber of the session to + be recorded uses as selected PLMN. PLMN Target might differ from the + PLMN specified in the Trace Reference"; + reference "Clause 5.9b of 3GPP TS 32.422"; + } + + leaf tjStreamingTraceConsumerURI { + when './tjTraceReportingFormat = "STREAMING"'; + type inet:uri; + mandatory true; + description "URI of the Streaming Trace data reporting MnS consumer + (a.k.a. streaming target). + This attribute shall be present if file based trace data reporting is + supported and tjTraceReportingFormat set to 'file based' or when + tjJobType is set to Logged MDT or Logged MBSFN MDT."; + reference "Clause 5.9 of 3GPP TS 32.422"; + } + + leaf tjTraceCollectionEntityAddress { + when './tjTraceReportingFormat = "FILE_BASED" or ' + +'./tjJobType = "LOGGED_MDT_ONLY" or ./tjJobType = "LOGGED_MBSFN_MDT"'; + type union { + type inet:uri; + type inet:ip-address; + } + mandatory true; + description "Specifies the address of the Trace Collection Entity when + the attribute tjTraceReportingFormat is configured for the file-based + reporting. The attribute is applicable for both Trace and MDT."; + reference "Clause 5.9 of 3GPP TS 32.422"; + } + + leaf tjTraceDepth { + when './tjJobType = "TRACE_ONLY" or ./tjJobType = "IMMEDIATE_MDT_AND_TRACE"'; + type enumeration { + enum MINIMUM; + enum MEDIUM; + enum MAXIMUM; + enum VENDORMINIMUM; + enum VENDORMEDIUM; + enum VENDORMAXIMUM; + } + default MAXIMUM; + description "Specifies how detailed information should be recorded in the + Network Element. The Trace Depth is a paremeter for Trace Session level, + i.e., the Trace Depth is the same for all of the NEs to be traced in + the same Trace Session. + The attribute is applicable only for Trace, otherwise it carries a null + semantic."; + reference "Clause 5.3 of 3GPP TS 32.422"; + } + + leaf tjTraceReference { + type uint64; + mandatory true; + description "A globally unique identifier, which uniquely identifies the + Trace Session that is created by the TraceJob. + In case of shared network, it is the MCC and MNC of the Participating + Operator that request the trace session that shall be provided. + The attribute is applicable for both Trace and MDT."; + } + + leaf tjTraceReportingFormat { + type enumeration { + enum FILE_BASED; + enum STREAMING; + } + default FILE_BASED; + description "Specifies the trace reporting format - streaming trace + reporting or file-based trace reporting"; + reference "3GPP TS 32.422 clause 5.11"; + } + list tjTraceTarget { + key "targetIdType targetIdValue"; + max-elements 1; + + leaf targetIdType { + type enumeration { + enum IMSI; + enum IMEI; + enum IMEISV; + enum PUBLIC_ID; + enum UTRAN_CELL; + enum E_UTRAN_CELL; + enum NG_RAN_CELL; + enum ENB; + enum RNC; + enum GNB; + enum SUPI; + } + } + + leaf targetIdValue { + type string; + } + + description "Specifies the target object of the Trace and MDT. The + attribute is applicable for both Trace and MDT. This attribute + includes the ID type of the target as an enumeration and the ID value. + + The tjTraceTarget shall be public ID in case of a Management Based + Activation is done to an ScscfFunction. The tjTraceTarget shall be + cell only in case of the UTRAN cell traffic trace function. + + The tjTraceTarget shall be E-UtranCell only in case of E-UTRAN cell + traffic trace function.The tjTraceTarget shall be either IMSI or + IMEI(SV) if the Trace Session is activated to any of the following + ManagedEntity(ies): + - HssFunction + - MscServerFunction + - SgsnFunction + - GgsnFunction + - BmscFunction + - RncFunction + - MmeFunction + + The tjTraceTarget shall be IMSI if the Trace Session is activated to a + ManagedEntity playing a role of ServinGWFunction. + + In case of signaling based Trace/MDT, the tjTraceTarget attribute shall be + able to carry (IMSI or IMEI(SV)or SUPI), the tjMDTAreaScope attribute shall be + able to carry a list of (cell or E-UtranCell or NRCellDU or TA/LA/RA). + + In case of management based Immediate MDT, the tjTraceTarget attribute + shall be null value, the tjMDTAreaScope attribute shall carry a list of + (Utrancell or E-UtranCell or NRCellDU). + + In case of management based Logged MDT, the tjTraceTarget attribute + shall carry an eBs or a RNC or gNBs. The Logged MDT should be initiated on + the specified eNB or RNC or gNB in tjTraceTarget. The tjMDTAreaScope attribute + shall carry a list of (Utrancell or E-UtranCell or NRCellDU or TA/LA/RA). + + In case of RLF reporting, or RCEF reporting, the tjTraceTarget attribute + shall be null value, the tjMDTAreaScope attribute shall carry one or + list of eNBs/gNBs"; + reference "3GPP TS 32.422"; + } + + leaf tjTriggeringEvent { + when './tjJobType = "TRACE" or ./tjJobType = "IMMEDIATE_MDT_AND_TRACE"'; + type string ; + mandatory true; + description "Specifies the triggering event parameter of the trace session. + The attribute is applicable only for Trace. In case this attribute is + not used, it carries a null semantic."; + reference "Clause 5.1 of 3GPP TS 32.422"; + } + + leaf tjMDTAnonymizationOfData { + when ./tjMDTAreaScope ; + type enumeration { + enum NO_IDENTITY; + enum TAC_OF_IMEI; + } + default NO_IDENTITY; + description "Specifies level of MDT anonymization."; + reference "3GPP TS 32.422 clause 5.10.12."; + } + + list tjMDTAreaConfigurationForNeighCell { + when './tjJobType = "LOGGED_MDT_ONLY"'; + key "idx"; + min-elements 1; + leaf idx { type uint32 ; } + + description "It specifies the area for which UE is requested to perform + measurement logging for neighbour cells which have list of frequencies. + If it is not configured, the UE shall perform measurement logging for + all the neighbour cells. + + Applicable only to NR Logged MDT."; + reference "3GPP TS 32.422 clause 5.10.26."; + + leaf frequency { + type string; + } + + leaf cell { + type string; + } + } + + leaf-list tjMDTAreaScope { + type string; + description "specifies MDT area scope when activates an MDT job. + + For RLF and RCEF reporting it specifies the eNB or list of eNBs where the + RLF or RCEF reports should be collected. + + + List of cells/TA/LA/RA for signaling based MDT or management based Logged + MDT. + + List of cells for management based Immediate MDT. + + Cell, TA, LA, RA are mutually exclusive. + + One or list of eNBs for RLF and RCEFreporting"; + reference "Clause 5.10.2 of 3GPP TS 32.422"; + } + + leaf tjMDTCollectionPeriodRrmLte { + when './tjJobType = "IMMEDIATE_MDT_ONLY" or ./tjJobType = "IMMEDIATE_MDT_AND_TRACE"'; + type uint32 { + range "250|500|1000|2000|3000|4000|6000|8000|12000|16000|20000|" + +"24000|28000|32000|64000"; + } + units milliseconds; + description "Specifies the collection period for collecting RRM configured + measurement samples for M2, M3 in LTE. The attribute is applicable only + for Immediate MDT. In case this attribute is not used, it carries a + null semantic."; + reference "Clause 5.10.20 of 3GPP TS 32.422"; + } + + leaf tjMDTCollectionPeriodRrmUmts { + when './tjJobType = "IMMEDIATE_MDT_ONLY" or ./tjJobType = "IMMEDIATE_MDT_AND_TRACE"'; + type uint32 { + range "1024|1280|2048|2560|5120|" + +"10240|60000"; + } + units milliseconds; + description "Specifies the collection period for collecting RRM configured + measurement samples for M3, M4, M5 in UMTS. The attribute is applicable + only for Immediate MDT. In case this attribute is not used, it carries + a null semantic"; + reference "Clause 5.10.21 of 3GPP TS 32.422"; + } + + leaf tjMDTCollectionPeriodRrmNR { + when './tjJobType = "IMMEDIATE_MDT_ONLY" or ./tjJobType = "IMMEDIATE_MDT_AND_TRACE"'; + type uint32 { + range "1024|2048|5120|10240|60000"; + } + units milliseconds; + description "Specifies the collection period for collecting RRM configured + measurement samples for M4, M5 in NR. The attribute is applicable only + for Immediate MDT. In case this attribute is not used, it carries a + null semantic."; + reference "Clause 5.10.30 of 3GPP TS 32.422"; + } + + leaf tjMDTEventListForTriggeredMeasurement { + when './tjJobType = "LOGGED_MDT_ONLY"'; + type enumeration { + enum OUT_OF_COVERAGE ; + enum A2_EVENT ; + } + mandatory true; + description "Specifies event types for event triggered measurement in the + case of logged NR MDT. Each trace session may configure at most one + event. The UE shall perform logging of measurements only upon certain + condition being fulfilled: + - Out of coverage. + - A2 event."; + reference "Clause 5.10.28 of 3GPP TS 32.422"; + } + + leaf tjMDTEventThreshold { + type int64; + description "Specifies the threshold which should trigger the reporting + in case A2 event reporting in LTE or 1F/1l event in UMTS. The attribute + is applicable only for Immediate MDT and when reportingTrigger is + configured for A2 event in LTE or 1F event or 1l event in UMTS. In + case this attribute is not used, it carries a null semantic."; + reference "Clauses 5.10.7 and 5.10.7a of 3GPP TS 32.422"; + } + + leaf tjMDTListOfMeasurements { + when './tjJobType = "IMMEDIATE_MDT"'; + type int64; + mandatory true; + description "It specifies the UE measurements that shall be collected in + an Immediate MDT job. The attribute is applicable only for Immediate MDT. + In case this attribute is not used, it carries a null semantic."; + reference "3GPP TS 32.422 clause 5.10.3"; + } + + leaf tjMDTLoggingDuration { + when './tjJobType = "LOGGED_MDT_ONLY" or ./tjJobType = "LOGGED_MBSFN_MDT"'; + type uint32 { + range "600|1200|2400|3600|5400|7200"; + } + units seconds; + mandatory true; + description "Specifies how long the MDT configuration is valid at the + UE in case of Logged MDT. The attribute is applicable only for + Logged MDT and Logged MBSFN MDT. In case this attribute is not used, it + carries a null semantic."; + reference "5.10.9 of 3GPP TS 32.422"; + } + + leaf tjMDTLoggingInterval { + when './tjJobType = "LOGGED_MDT_ONLY" or ./tjJobType = "LOGGED_MBSFN_MDT"'; + type uint32 { + range "1280|2560|5120|10240|20480|" + +"30720|40960|61440"; + } + units milliseconds; + mandatory true; + description "Specifies the periodicty for Logged MDT. The attribute is + applicable only for Logged MDT and Logged MBSFN MDT. In case this + attribute is not used, it carries a null semantic"; + reference "5.10.8 of 3GPP TS 32.422"; + } + + leaf-list tjMDTMBSFNAreaList { + when './tjJobType = "LOGGED_MBSFN_MDT"'; + type string; + min-elements 1; + max-elements 8; + description "The MBSFN Area consists of a MBSFN Area ID and Carrier + Frequency (EARFCN). The target MBSFN area List can have up to 8 entries. + This parameter is applicable only if the job type is Logged MBSFN MDT."; + reference "5.10.25 of 3GPP TS 32.422"; + } + + leaf tjMDTMeasurementPeriodLTE { + when './tjJobType = "IMMEDIATE_MDT_ONLY" or ./tjJobType = "IMMEDIATE_MDT_AND_TRACE"'; + type uint32 { + range "1024|1280|2048|2560|5120|" + +"10240|60000"; + } + units milliseconds; + mandatory true; + description "It specifies the measurement period for the Data Volume and + Scheduled IP throughput measurements for MDT taken by the eNB. + The attribute is applicable only for Immediate MDT. In case this + attribute is not used, it carries a null semantic."; + reference "Clause 5.10.23 of 3GPP TS 32.422"; + } + + leaf tjMDTMeasurementPeriodUMTS { + when './tjJobType = "IMMEDIATE_MDT_ONLY" or ./tjJobType = "IMMEDIATE_MDT_AND_TRACE"'; + type uint32 { + range "250|500|1000|2000|3000|4000|6000|8000|12000|16000|20000|" + +"24000|28000|32000|64000"; + } + units milliseconds; + mandatory true; + description "It specifies the measurement period for the Data Volume and + Throughput measurements for MDT taken by RNC. + The attribute is applicable only for Immediate MDT. In case this + attribute is not used, it carries a null semantic."; + reference "Clause 5.10.22 of 3GPP TS 32.422"; + } + + leaf tjMDTMeasurementQuantity { + when './tjJobType = "IMMEDIATE_MDT_ONLY" or ./tjJobType = "IMMEDIATE_MDT_AND_TRACE"'; + type uint64 ; + mandatory true; + description "It specifies the measurements that are collected in an MDT + job for a UMTS MDT configured for event triggered reporting."; + reference "Clause 5.10.15 of 3GPP TS 32.422"; + } + + list tjMDTPLMList { + when './tjJobType = "LOGGED_MDT_ONLY"'; + key "mcc mnc"; + uses types3gpp:PLMNId; + min-elements 1; + max-elements 16; + description "It indicates the PLMNs where measurement collection, status + indication and log reporting is allowed."; + reference "Clause 5.10.24 of 3GPP TS 32.422"; + } + + leaf tjMDTPositioningMethod { + when './tjJobType = "IMMEDIATE_MDT_ONLY" or ./tjJobType = "IMMEDIATE_MDT_AND_TRACE"'; + type enumeration { + enum GNSS; + enum E_CELL_ID; + } + mandatory true; + description "It specifies what positioning method should be used in the + MDT job."; + reference "Clause 5.10.19 of 3GPP TS 32.422"; + } + + leaf tjMDTReportAmount { + when './tjJobType = "IMMEDIATE_MDT_ONLY" and ./tjMDTReportingTrigger = "PERIODICAL"'; + type union { + type uint32 { + range "1|4|8|16|32|64" ; + } + type enumeration { + enum INFINITY; + } + } + mandatory true; + description "It specifies the number of measurement reports that shall be + taken for periodic reporting while the UE is in connected. + The attribute is applicable only for Immediate MDT and when + tjMDTReportingTrigger is configured for periodical measurements. In + case this attribute is not used, it carries a null semantic."; + reference "Clause 5.10.6 of 3GPP TS 32.422"; + } + + leaf tjMDTReportingTrigger { + when './tjJobType = "IMMEDIATE_MDT_ONLY"'; + type enumeration { + enum PERIODICAL; + enum A2_FOR_LTE; + enum 1F_FOR_UMTS; + enum 1I_FOR_UMTS_MCPS_TDD; + enum A2_TRIGGERED_PERIODIC_FOR_LTE; + enum ALL_CONFIGURED_RRM_FOR_LTE; + enum ALL_CONFIGURED_RRM_FOR_UMTS; + } + description "It specifies whether periodic or event based measurements + should be collected. + The attribute is applicable only for Immediate MDT and when the + tjMDTListOfMeasurements is configured for M1 (for both UMTS and LTE) + or M2 (only for UMTS). In case this attribute is not used, it carries + a null semantic."; + reference "Clause 5.10.4 of 3GPP TS 32.422"; + } + + leaf tjMDTReportInterval { + when './tjJobType = "IMMEDIATE_MDT_ONLY" and ./tjMDTReportingTrigger = "PERIODICAL"'; + type uint32 { + range "120|240|250|480|500|640|1000|1024|2000|2048|3000|4000|" + +"5120|6000|8000|10240|12000|16000|20000|" + +"24000|28000|32000|60000|64000|" + +"360000|720000|1800000|3600000"; + } + units milliseconds; + mandatory true; + description "It specifies the interval between the periodical measurements + that shall be taken when the UE is in connected mode. + The attribute is applicable only for Immediate MDT and when + tjMDTReportingTrigger is configured for periodical measurements. In case + this attribute is not used, it carries a null semantic."; + reference "5.10.5 of 3GPP TS 32.422"; + } + + leaf tjMDTReportType { + when './tjJobType = "LOGGED_MDT_ONLY"'; + type enumeration { + enum PERIODICAL; + enum EVENT_TRIGGERED; + } + mandatory true; + description "It specifies report type for logged NR MDT"; + reference "Clause 5.10.27 of 3GPP TS 32.422"; + } + + leaf tjMDTSensorInformation { + type bits { + bit BAROMETRIC_PRESSURE; + bit UE_SPEED; + bit UE_ORIENTATION; + } + default ""; + description "It specifies which sensor information shall be included in + logged NR MDT and immediate NR MDT measurement if they are available. + The following sensor measurement can be included or excluded for the UE."; + reference "Clause 5.10.29 of 3GPP TS 32.422"; + } + + leaf tjMDTTraceCollectionEntityID { + when './tjJobType = "LOGGED_MDT_ONLY" or ./tjJobType = "LOGGED_MBSFN_MDT"'; + type uint8; + mandatory true; + description "It specifies the TCE Id which is sent to the UE in Logged MDT."; + reference "Clause 5.10.11 of 3GPP TS 32.422"; + } + } + + grouping TraceSubtree { + description "Contains classes that manage Tracing. + Should be used in all classes (or classes inheriting from) + - SubNnetwork + - ManagedElement + - ManagedFunction + + If a YANG module wants to augment these classes/list/groupings they must + augment all user classes!"; + + list TraceJob { + description "Represents the Trace Control and Configuration parameters of a + particular Trace Job (see TS 32.421 and TS 32.422 for details). + + To activate Trace Jobs, a MnS consumer has to create TraceJob object + instances on the MnS producer. A MnS consumer can activate a Trace Job + for another MnS consumer since it is not required the value of + tjTraceCollectionEntityAddress or tjStreamingTraceConsumerUri to be his + own. + + When a MnS consumer wishes to deactivate a Trace Job, the MnS consumer + shall delete the corresponding TraceJob instance. + + For details of management Trace Job activation/deactivation see clause + 4.1.1.1.2 of TS 32.422. + + Creation and deletion of TraceJob instances by MnS consumers is optional; + when not supported, the TraceJob instances may be created and deleted by + the system or be pre-installed."; + + key id; + uses top3gpp:Top_Grp ; + container attributes { + uses TraceJobGrp ; + } + } + } +} \ No newline at end of file diff --git a/yang-models/_3gpp-common-yang-extensions.yang b/yang-models/_3gpp-common-yang-extensions.yang new file mode 100755 index 000000000..9bc0a82be --- /dev/null +++ b/yang-models/_3gpp-common-yang-extensions.yang @@ -0,0 +1,95 @@ +module _3gpp-common-yang-extensions { + yang-version 1.1; + namespace urn:3gpp:sa5:_3gpp-common-yang-extensions ; + prefix yext3gpp ; + + organization "3GPP SA5"; + description "The module defines YANG extensions needed + 3GPP YANG modeling. + + Copyright (c) 2019 3GPP. All rights reserved. + + Extensions MUST be defined with the following structure in the + description statement: + - What is this statement. + - Newline, + - This statement can be a substatement of the xxx statements with + cardinality x..y. + - This statement can have the following substatements with + cardinality x..y. + - Newline + - Is changing this statement an editorial, BC(backwards compatible) + or NBC(non-BC) change? + - Newline. + - The argument its meaning and type. Preferably use YANG types and + constraints to define the argument's type. + + Any extension statement can be added with a + deviation/deviate add statement. In this case the restriction about + the parent statement of the extension SHALL be evaluated based on the + target of the deviation statement. + + Support for this module does not mean that a YANG server implements + support for each of these extensions. + Implementers of each specific module using an extensions MUST check + if the server implements support for the used extension. + Note: modules use many extensions which individual + implementations MAY or MAY NOT support. + If support for an extension is missing the extension statement needs + individual handling or it SHOULD be removed from the module using + the extension e.g. with a deviation. + "; + + revision "2019-06-23" { + description "Initial version"; + } + + extension inVariant { + description + "Indicates that the value for the data node can only be set when its + parent data node is being created. To change the value after that, the + parent data node must be deleted and recreated with the data node + having the new value. + + It is unnecessary to use and MUST NOT be used for key leafs. + + The statement MUST only be a substatement of a leaf, leaf-list, list + statements that is config=true. + Zero or one inVariant statement is allowed per parent statement. + NO substatements are allowed. + + Adding this statement is an NBC change, removing it is BC."; + } + + extension initial-value { + description "Specifies a value that the system will set for a leaf + leaf-list if a value is not specified for it when its parent list + or container is created. The value has no effect in any other + modification e.g. changing or removing the value. + + The description statement of the parent statement SHOULD contain + the label 'Initial-value: ' followed by the text from the argument. + + The statement MUST only be a substatement of a leaf or leaf-list. + The statement MUST NOT be present if the leaf or the leaf-list + has a default statement or the type used for the data node + has a default value. + The statement MUST NOT be used for config=false data or in an + action, rpc or notification. + Zero or one initial-value statements are allowed for a leaf parent + statement. Zero or more initial-value statements are allowed for a + leaf-list parent statement. If the leaf-list is ordered-by user, the + initial values are stored in the order they appear in the YANG definition. + NO substatements are allowed. + + Always consider using a YANG-default statement instead. + + Modification of the initial-value is a non-backwards-compatible change. + + The argument specifies a single initial value for a leaf or leaf-list. + The value MUST be part of the valuespace of the leaf/leaf-list. + It follows the same rules as the argument of the default statement."; + + argument "initial-value"; + } +} \ No newline at end of file diff --git a/yang-models/_3gpp-common-yang-types.yang b/yang-models/_3gpp-common-yang-types.yang new file mode 100755 index 000000000..f71e5420b --- /dev/null +++ b/yang-models/_3gpp-common-yang-types.yang @@ -0,0 +1,512 @@ +module _3gpp-common-yang-types { + yang-version 1.1; + namespace "urn:3gpp:sa5:_3gpp-common-yang-types"; + prefix "types3gpp"; + + import ietf-inet-types { prefix inet; } + import ietf-yang-types { prefix yang; } + + organization "3GPP SA5"; + contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; + description "The model defines a YANG mapping of the top level + information classes used for management of 5G networks and + network slicing."; + reference "3GPP TS 28.541"; + + revision 2020-11-06 { + description "Removed incorrect S-NSSAI definitions."; + reference "CR-0118"; + } + + revision 2020-03-10 { + description "Removed faulty when statements."; + reference "SP-200229"; + } + + revision 2019-10-25 { + description "Added ManagedNFProfile."; + reference "S5-194457"; + } + + revision 2019-10-16 { + description "Added SAP and usageState."; + reference "S5-193518"; + } + + revision 2019-06-23 { + reference "Initial version."; + } + + grouping ManagedNFProfile { + description "Defines profile for managed NF"; + reference "3GPP TS 23.501"; + + leaf idx { type uint32 ; } + + leaf nfInstanceID { + config false; + mandatory true; + type yang:uuid ; + description "This parameter defines profile for managed NF. + The format of the NF Instance ID shall be a + Universally Unique Identifier (UUID) version 4, + as described in IETF RFC 4122 " ; + } + + leaf-list nfType { + config false; + min-elements 1; + type NfType; + description "Type of the Network Function" ; + } + + leaf hostAddr { + mandatory true; + type inet:host ; + description "Host address of a NF"; + } + + leaf authzInfo { + type string ; + description "This parameter defines NF Specific Service authorization + information. It shall include the NF type (s) and NF realms/origins + allowed to consume NF Service(s) of NF Service Producer."; + reference "See TS 23.501" ; + } + + leaf location { + type string ; + description "Information about the location of the NF instance + (e.g. geographic location, data center) defined by operator"; + reference "TS 29.510" ; + } + + leaf capacity { + mandatory true; + type uint16 ; + description "This parameter defines static capacity information + in the range of 0-65535, expressed as a weight relative to other + NF instances of the same type; if capacity is also present in the + nfServiceList parameters, those will have precedence over this value."; + reference "TS 29.510" ; + } + + leaf nFSrvGroupId { + type string ; + description "This parameter defines identity of the group that is + served by the NF instance. + May be config false or true depending on the ManagedFunction. + Config=true for Udrinfo. Config=false for UdmInfo and AusfInfo. + Shall be present if ../nfType = UDM or AUSF or UDR. "; + reference "TS 29.510" ; + } + + leaf-list supportedDataSetIds { + type enumeration { + enum SUBSCRIPTION; + enum POLICY; + enum EXPOSURE; + enum APPLICATION; + } + description "List of supported data sets in the UDR instance. + May be present if ../nfType = UDR"; + reference "TS 29.510" ; + } + + leaf-list smfServingAreas { + type string ; + description "Defines the SMF service area(s) the UPF can serve. + Shall be present if ../nfType = UPF"; + reference "TS 29.510" ; + } + + leaf priority { + type uint16; + description "This parameter defines Priority (relative to other NFs + of the same type) in the range of 0-65535, to be used for NF selection; + lower values indicate a higher priority. If priority is also present + in the nfServiceList parameters, those will have precedence over + this value. Shall be present if ../nfType = AMF "; + reference "TS 29.510" ; + } + } + + typedef usageState { + type enumeration { + enum IDLE; + enum ACTIVE; + enum BUSY; + } + description "It describes whether or not the resource is actively in + use at a specific instant, and if so, whether or not it has spare + capacity for additional users at that instant. The value is READ-ONLY."; + reference "ITU T Recommendation X.731"; + } + + grouping SAP { + leaf host { + type inet:host; + mandatory true; + } + leaf port { + type inet:port-number; + mandatory true; + } + description "Service access point."; + reference "TS 28.622"; + } + + typedef Mcc { + description "The mobile country code consists of three decimal digits, + The first digit of the mobile country code identifies the geographic + region (the digits 1 and 8 are not used):"; + type string { + pattern '[02-79][0-9][0-9]'; + } + reference "3GPP TS 23.003 subclause 2.2 and 12.1"; + } + + typedef Mnc { + description "The mobile network code consists of two or three + decimal digits (for example: MNC of 001 is not the same as MNC of 01)"; + type string { + pattern '[0-9][0-9][0-9]|[0-9][0-9]'; + } + reference "3GPP TS 23.003 subclause 2.2 and 12.1"; + } + + grouping PLMNId { + leaf mcc { + mandatory true; + type Mcc; + } + leaf mnc { + mandatory true; + type Mnc; + } + reference "TS 23.658"; + } + + typedef Nci { + description "NR Cell Identity. The NCI shall be of fixed length of 36 bits + and shall be coded using full hexadecimal representation. + The exact coding of the NCI is the responsibility of each PLMN operator"; + reference "TS 23.003"; + type union { + type string { + length 36; + pattern '[01]+'; + } + type string { + length 9; + pattern '[a-fA-F0-9]*'; + } + } + } + + typedef OperationalState { + reference "3GPP TS 28.625 and ITU-T X.731"; + type enumeration { + enum DISABLED { + value 0; + description "The resource is totally inoperable."; + } + + enum ENABLED { + value 1; + description "The resource is partially or fully operable."; + } + + } + } + + typedef AdministrativeState { + reference "3GPP TS 28.625 and ITU-T X.731"; + type enumeration { + enum LOCKED { + value 0; + description "The resource is administratively prohibited from performing + services for its users."; + } + + enum UNLOCKED { + value 1; + description "The resource is administratively permitted to perform + services for its users. This is independent of its inherent + operability."; + } + + enum SHUTTINGDOWN { + value 2; + description "Use of the resource is administratively permitted to + existing instances of use only. While the system remains in + the shutting down state the manager or the managed element + may at any time cause the resource to transition to the + locked state."; + } + } + } + + typedef AvailabilityStatus { + type enumeration { + enum IN_TEST; + enum FAILED; + enum POWER_OFF; + enum OFF_LINE; + enum OFF_DUTY; + enum DEPENDENCY; + enum DEGRADED; + enum NOT_INSTALLED; + enum LOG_FULL; + } + } + + typedef CellState { + type enumeration { + enum IDLE; + enum INACTIVE; + enum ACTIVE; + } + } + + typedef Nrpci { + type uint32; + description "Physical Cell Identity (PCI) of the NR cell."; + reference "TS 36.211 subclause 6.11"; + } + + typedef Tac { + type int32 { + range 0..16777215 ; + } + description "Tracking Area Code"; + reference "TS 23.003 clause 19.4.2.3"; + } + + typedef AmfRegionId { + type union { + type uint8 ; + type string { + length 8; + pattern '[01]*'; + } + } + reference "clause 2.10.1 of 3GPP TS 23.003"; + } + + typedef AmfSetId { + type union { + type uint16 { + range '0..1023'; + } + type string { + length 8; + pattern '[01]*'; + } + } + reference "clause 2.10.1 of 3GPP TS 23.003"; + } + + typedef AmfPointer { + type union { + type uint8 { + range '0..63'; + } + type string { + length 6; + pattern '[01]*'; + } + } + reference "clause 2.10.1 of 3GPP TS 23.003"; + } + + grouping AmfIdentifier { + leaf amfRegionId { + type AmfRegionId; + } + leaf amfSetId { + type AmfSetId; + } + leaf amfPointer { + type AmfPointer; + } + description "The AMFI is constructed from an AMF Region ID, + an AMF Set ID and an AMF Pointer. + The AMF Region ID identifies the region, + the AMF Set ID uniquely identifies the AMF Set within the AMF Region, and + the AMF Pointer uniquely identifies the AMF within the AMF Set. "; + } + +// type definitions especially for core NFs + + typedef NfType { + type enumeration { + enum NRF; + enum UDM; + enum AMF; + enum SMF; + enum AUSF; + enum NEF; + enum PCF; + enum SMSF; + enum NSSF; + enum UDR; + enum LMF; + enum GMLC; + enum 5G_EIR; + enum SEPP; + enum UPF; + enum N3IWF; + enum AF; + enum UDSF; + enum BSF; + enum CHF; + } + } + + typedef NotificationType { + type enumeration { + enum N1_MESSAGES; + enum N2_INFORMATION; + enum LOCATION_NOTIFICATION; + } + } + + typedef Load { + description "Latest known load information of the NF, percentage "; + type uint8 { + range 0..100; + } + } + + typedef N1MessageClass { + type enumeration { + enum 5GMM; + enum SM; + enum LPP; + enum SMS; + } + } + + typedef N2InformationClass { + type enumeration { + enum SM; + enum NRPPA; + enum PWS; + enum PWS_BCAL; + enum PWS_RF; + } + } + + grouping DefaultNotificationSubscription { + + leaf notificationType { + type NotificationType; + } + + leaf callbackUri { + type inet:uri; + } + + leaf n1MessageClass { + type N1MessageClass; + } + + leaf n2InformationClass { + type N2InformationClass; + } + } + + grouping Ipv4AddressRange { + leaf start { + type inet:ipv4-address; + } + leaf end { + type inet:ipv4-address; + } + } + + grouping Ipv6PrefixRange { + leaf start { + type inet:ipv6-prefix; + } + leaf end { + type inet:ipv6-prefix; + } + } + + typedef NsiId { + type string; + } + + typedef UeMobilityLevel { + type enumeration { + enum STATIONARY; + enum NOMADIC; + enum RESTRICTED_MOBILITY; + enum FULLY_MOBILITY; + } + } + + typedef ResourceSharingLevel { + type enumeration { + enum SHARED; + enum NOT_SHARED; + } + } + + typedef TxDirection { + type enumeration { + enum DL; + enum UL; + enum DL_AND_UL; + } + } + + grouping AddressWithVlan { + leaf ipAddress { + type inet:ip-address; + } + leaf vlanId { + type uint16; + } + } + + typedef DistinguishedName { // TODO is this equivalent to TS 32.300 ? + type string { + pattern '([a-zA-Z][a-zA-Z0-9-]*=(\\( |#|\\|>|<|;|"|\+|,|[a-fA-F0-9]{2})|[^\\><;"+,# ])' + + '((\\( |#|\\|>|<|;|"|\+|,|[a-fA-F0-9]{2})|[^\\><;"+,])*' + + '(\\( |#|\\|>|<|;|"|\+|,|[a-fA-F0-9]{2})|[^\\><;"+, ]))?' + + '[,\+])*[a-zA-Z][a-zA-Z0-9-]*=(\\( |#|\\|>|<|;|"|\+|,|[a-fA-F0-9]{2})|[^\\><;"+,# ])' + + '((\\( |#|\\|>|<|;|"|\+|,|[a-fA-F0-9]{2})' + + '|[^\\><;"+,])*(\\( |#|\\|>|<|;|"|\+|,|[a-fA-F0-9]{2})|[^\\><;"+, ]))?'; + } + description "Represents the international standard for the representation + of Distinguished Name (RFC 4512). + The format of the DistinguishedName REGEX is: + {AttributeType = AttributeValue} + + AttributeType consists of alphanumeric and hyphen (OIDs not allowed). + All other characters are restricted. + The Attribute value cannot contain control characters or the + following characters : \\ > < ; \" + , (Comma) and White space + The Attribute value can contain the following characters if they + are excaped : \\ > < ; \" + , (Comma) and White space + The Attribute value can contain control characters if its an escaped + double digit hex number. + Examples could be + UID=nobody@example.com,DC=example,DC=com + CN=John Smith,OU=Sales,O=ACME Limited,L=Moab,ST=Utah,C=US"; + reference "RFC 4512 Lightweight Directory Access Protocol (LDAP): + Directory Information Models"; + } // recheck regexp it doesn't handle posix [:cntrl:] + + typedef QOffsetRange { + type int8 { + range "-24 | -22 | -20 | -18 | -16 | -14 | -12 | -10 | -8 | -6 | " + + " -5 | -4 | -3 | -2 | -1 | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 8 | 10 | " + + " 12 | 14 | 16 | 18 | 20 | 22 | 24"; + } + units dB; + } +} \ No newline at end of file diff --git a/yang-models/_3gpp-nr-nrm-beam.yang b/yang-models/_3gpp-nr-nrm-beam.yang new file mode 100755 index 000000000..95f4677b7 --- /dev/null +++ b/yang-models/_3gpp-nr-nrm-beam.yang @@ -0,0 +1,96 @@ +module _3gpp-nr-nrm-beam { + yang-version 1.1; + namespace "urn:3gpp:sa5:_3gpp-nr-nrm-nrnetwork-beam"; + prefix "beam3gpp"; + + import _3gpp-nr-nrm-commonbeamformingfunction { prefix cbeamff3gpp; } + import _3gpp-common-top { prefix top3gpp; } + import _3gpp-common-managed-function { prefix mf3gpp; } + import _3gpp-common-managed-element { prefix me3gpp; } + import _3gpp-nr-nrm-gnbdufunction { prefix gnbdu3gpp; } + import _3gpp-nr-nrm-nrsectorcarrier { prefix nrsectcarr3gpp; } + + organization "3GPP SA5"; + description "Defines the YANG mapping of the Beam Information + Object Class (IOC) that is part of the NR Network Resource Model (NRM)."; + reference "3GPP TS 28.541 5G Network Resource Model (NRM)"; + + revision 2019-11-22 { + description "Initial revision"; + reference "S5-197643"; + } + + typedef BeamType { + type enumeration { + enum SSB-BEAM; + } + } + + grouping BeamGrp { + description "Represents the Beam IOC."; + reference "3GPP TS 28.541"; + uses mf3gpp:ManagedFunctionGrp; + + leaf beamIndex { + description "Index of the beam. "; + mandatory true; + type int32; + } + + leaf beamType { + description "The type of the beam. "; + mandatory false; + type BeamType; + } + + leaf beamAzimuth { + description "The azimuth of a beam transmission, which means the horizontal beamforming pointing angle (beam peak direction) in the (Phi) ?-axis in 1/10th degree resolution. The pointing angle is the direction equal to the geometric centre of the half-power contour of the beam relative to the reference plane. Zero degree implies explicit antenna bearing (boresight). Positive angle implies clockwise from the antenna bearing."; + reference "3GPP TS 38.104, TS 38.901, TS 28.662"; + mandatory false; + type int32 { range "-1800..1800"; } + units "0.1"; + } + + leaf beamTilt { + description "The tilt of a beam transmission, which means the vertical beamforming pointing angle (beam peak direction) in the (Theta) ?-axis in 1/10th degree resolution. +The pointing angle is the direction equal to the geometric centre of the half-power contour of the beam relative to the reference plane. Positive value implies downtilt."; + reference "3GPP TS 38.104, TS 38.901, TS 28.662"; + mandatory false; + type int32 { range "-900..900"; } + units "0.1"; + } + + + + leaf beamHorizWidth { + description " The Horizontal beamWidth of a beam transmission, which means the horizontal beamforming half-power (3dB down) beamwidth in the (Phi) ?-axis in 1/10th degree resolution."; + reference "3GPP TS 38.104, TS 38.901"; + mandatory false; + type int32 { range "0..3599"; } + units "0.1"; + } + + leaf beamVertWidth { + description " The Vertical beamWidth of a beam transmission, which means the vertical beamforming half-power (3dB down) beamwidth in the (Theta) ?-axis in 1/10th degree resolution."; + reference "3GPP TS 38.104, TS 38.901"; + mandatory false; + type int32 { range "0..1800"; } + units "0.1"; + } + + + } + + augment "/me3gpp:ManagedElement/gnbdu3gpp:GNBDUFunction/nrsectcarr3gpp:NRSectorCarrier/cbeamff3gpp:CommonBeamformingFunction" { + + list Beam { + description "Represents the per-Beam information required for, e.g. beam performance management utilizing measurements generated in the RAN. Can have spatial attributes of horizontal/azimuth (ie: Phi ?-axis) and vertical/tilt (ie: Theta ?-axis) beam pointing direction and beam width attributes."; + reference "3GPP TS 28.541"; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses BeamGrp; + } + } + } +} \ No newline at end of file diff --git a/yang-models/_3gpp-nr-nrm-bwp.yang b/yang-models/_3gpp-nr-nrm-bwp.yang new file mode 100755 index 000000000..bd18865a6 --- /dev/null +++ b/yang-models/_3gpp-nr-nrm-bwp.yang @@ -0,0 +1,104 @@ +module _3gpp-nr-nrm-bwp { + yang-version 1.1; + namespace "urn:3gpp:sa5:_3gpp-nr-nrm-bwp"; + prefix "bwp3gpp"; + + import _3gpp-common-managed-element { prefix me3gpp; } + import _3gpp-common-managed-function { prefix mf3gpp; } + import _3gpp-common-top { prefix top3gpp; } + import _3gpp-nr-nrm-gnbdufunction { prefix gnbdu3gpp; } + + organization "3GPP SA5"; + contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; + description "Defines the YANG mapping of the BWP Information Object Class + (IOC) that is part of the NR Network Resource Model (NRM)."; + reference "3GPP TS 28.541 5G Network Resource Model (NRM)"; + + revision 2020-11-17 { reference CR-0410 ; } + revision 2019-10-28 { reference S5-193518 ; } + revision 2019-06-17 { reference "Initial revision"; } + + typedef CyclicPrefix { + type enumeration { + enum NORMAL; + enum EXTENDED; + } + } + + typedef BwpContext { + type enumeration { + enum DL; + enum UL; + enum SUL; + } + } + typedef IsInitialBwp { + type enumeration { + enum INITIAL; + enum OTHER; + } + } + + grouping BWPGrp { + description "Represents the BWP IOC."; + reference "3GPP TS 28.541"; + uses mf3gpp:ManagedFunctionGrp; + + leaf bwpContext { + description "Identifies whether the object is used for downlink, uplink + or supplementary uplink."; + mandatory true; + type BwpContext; + } + + leaf isInitialBwp { + description "Identifies whether the object is used for initial or other + BWP."; + mandatory true; + type IsInitialBwp; + } + + leaf subCarrierSpacing { + description "Subcarrier spacing configuration for a BWP."; + reference "3GPP TS 38.104"; + mandatory true; + type uint32 { range "15 | 30 | 60 | 120"; } + units kHz; + } + + leaf cyclicPrefix { + description "Cyclic prefix, which may be normal or extended."; + reference "3GPP TS 38.211"; + mandatory true; + type CyclicPrefix; + } + + leaf startRB { + description "Offset in common resource blocks to common resource block 0 + for the applicable subcarrier spacing for a BWP."; + reference "N_BWP_start in 3GPP TS 38.211"; + mandatory true; + type uint32; + } + + leaf numberOfRBs { + description "Number of physical resource blocks for a BWP."; + reference "N_BWP_size in 3GPP TS 38.211"; + mandatory true; + type uint32; + } + } + + augment "/me3gpp:ManagedElement/gnbdu3gpp:GNBDUFunction" { + + list BWP { + description "Represents a bandwidth part (BWP)."; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses BWPGrp; + } + uses mf3gpp:ManagedFunctionContainedClasses; + } + } +} \ No newline at end of file diff --git a/yang-models/_3gpp-nr-nrm-cesmanagementfunction.yang b/yang-models/_3gpp-nr-nrm-cesmanagementfunction.yang new file mode 100755 index 000000000..8aa498d81 --- /dev/null +++ b/yang-models/_3gpp-nr-nrm-cesmanagementfunction.yang @@ -0,0 +1,64 @@ +module _3gpp-nr-nrm-cesmanagementfunction { + yang-version 1.1; + namespace "urn:3gpp:sa5:_3gpp-nr-nrm-cesmanagementfunction"; + prefix "cesmanagementfunction3gpp"; + + import _3gpp-common-subnetwork { prefix subnet3gpp; } + import _3gpp-common-top { prefix top3gpp; } + import _3gpp-nr-nrm-nrcellcu { prefix nrcellcu3gpp; } + import _3gpp-nr-nrm-gnbcucpfunction { prefix gnbcucp3gpp; } + import _3gpp-common-managed-element { prefix me3gpp; } + + + organization "3GPP SA5"; + contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; + description "Defines the YANG mapping of the CESManagementFunction Information Object Class + (IOC) that is part of the NR Network Resource Model (NRM)."; + reference "3GPP TS 28.541 5G Network Resource Model (NRM)"; + + revision 2020-05-08 { reference S5-203316; } + + + grouping CESManagementFunctionGrp { + description "Represents the CESManagementFunction IOC."; + reference "3GPP TS 28.541"; + uses top3gpp:Top_Grp; + + leaf cesSwitch { + description "This attribute determines whether the Cross Domain-Centralized SON energy saving function is enabled or disabled."; + type boolean; + } + + leaf energySavingState { + description "Specifies the status regarding the energy saving in the cell. If the value of energySavingControl is toBeEnergySaving, then it shall be tried to achieve the value isEnergySaving for the energySavingState. If the value of energySavingControl is toBeNotEnergySaving, then it shall be tried to achieve the value isNotEnergySaving for the energySavingState. "; + type enumeration{ + enum isNotEnergySaving; + enum isEnergySaving; + } + } + + + leaf energySavingControl { + description "This attribute allows the Cross Domain-Centralized SON energy saving function to initiate energy saving activation or deactivation."; + type enumeration{ + enum toBeEnergySaving; + enum toBeNotEnergySaving; + } + } + + + } + + augment "/me3gpp:ManagedElement/gnbcucp3gpp:GNBCUCPFunction/nrcellcu3gpp:NRCellCU" { + if-feature nrcellcu3gpp:CESManagementFunction; + uses CESManagementFunctionGrp; + } + augment "/me3gpp:ManagedElement" { + if-feature me3gpp:CESManagementFunction; + uses CESManagementFunctionGrp; + } + augment "/subnet3gpp:SubNetwork" { + if-feature subnet3gpp:CESManagementFunction; + uses CESManagementFunctionGrp; + } +} \ No newline at end of file diff --git a/yang-models/_3gpp-nr-nrm-commonbeamformingfunction.yang b/yang-models/_3gpp-nr-nrm-commonbeamformingfunction.yang new file mode 100755 index 000000000..e900d4fc4 --- /dev/null +++ b/yang-models/_3gpp-nr-nrm-commonbeamformingfunction.yang @@ -0,0 +1,62 @@ +module _3gpp-nr-nrm-commonbeamformingfunction { + yang-version 1.1; + namespace "urn:3gpp:sa5:_3gpp-nr-nrm-nrnetwork-commonbeamformingfunction"; + prefix "combeamformfunc3gpp"; + + import _3gpp-nr-nrm-nrsectorcarrier { prefix nrsectcarr3gpp; } + import _3gpp-common-top { prefix top3gpp; } + import _3gpp-common-managed-function { prefix mf3gpp; } + import _3gpp-common-managed-element { prefix me3gpp; } + import _3gpp-nr-nrm-gnbdufunction { prefix gnbdu3gpp; } + + + organization "3GPP SA5"; + description "Defines the YANG mapping of the CommonBeamformingFuntion Information + Object Class (IOC) that is part of the NR Network Resource Model (NRM)."; + reference "3GPP TS 28.541 5G Network Resource Model (NRM)"; + + revision 2019-11-22 { + description "Initial revision"; + reference "S5-197643"; + } + + grouping CommonBeamformingFunctionGrp { + description "Represents the CommonBeamformingFunction IOC."; + reference "3GPP TS 28.541"; + uses mf3gpp:ManagedFunctionGrp; + + leaf coverageShape { + description "Identifies the sector carrier coverage shape described by the envelope of the contained SSB beams. The coverage shape is implementation dependent."; + mandatory true; + type int32 { range "0..65535"; } + } + + leaf digitalAzimuth { + description "Digitally-controlled azimuth through beamforming. It represents the horizontal pointing direction of the antenna relative to the antenna bore sight, representing the total non-mechanical horizontal pan of the selected coverageShape. Positive value gives azimuth to the right and negative value gives an azimuth to the left."; + + reference "3GPP TS 38.104, TS 38.901, TS 28.662"; + type int32 { range "-1800..1800"; } + units "0.1"; + } + + leaf digitalTilt { + description "Digitally-controlled tilt through beamforming. It represents the vertical pointing direction of the antenna relative to the antenna bore sight, representing the total non-mechanical vertical tilt of the selected coverageShape. Positive value gives downwards tilt and negative value gives upwards tilt."; + reference "3GPP TS 38.104, TS 38.901, TS 28.662"; + type int32 { range "-900..900"; } + units "0.1"; + } + } + + augment "/me3gpp:ManagedElement/gnbdu3gpp:GNBDUFunction/nrsectcarr3gpp:NRSectorCarrier" { + + list CommonBeamformingFunction { + description "Represents common beamforming functionality (eg: SSB beams) for the NRSectorCarrier."; + reference "3GPP TS 28.541"; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses CommonBeamformingFunctionGrp; + } + } + } +} \ No newline at end of file diff --git a/yang-models/_3gpp-nr-nrm-cpciconfigurationfunction.yang b/yang-models/_3gpp-nr-nrm-cpciconfigurationfunction.yang new file mode 100755 index 000000000..1437acece --- /dev/null +++ b/yang-models/_3gpp-nr-nrm-cpciconfigurationfunction.yang @@ -0,0 +1,67 @@ +module _3gpp-nr-nrm-cpciconfigurationfunction { + yang-version 1.1; + namespace "urn:3gpp:sa5:_3gpp-nr-nrm-cpciconfigurationfunction"; + prefix "cpciconfigurationfunction3gpp"; + + import _3gpp-common-subnetwork { prefix subnet3gpp; } + import _3gpp-common-top { prefix top3gpp; } + import _3gpp-nr-nrm-nrcelldu { prefix nrcelldu3gpp; } + import _3gpp-nr-nrm-gnbdufunction { prefix gnbdu3gpp; } + import _3gpp-common-managed-element { prefix me3gpp; } + + organization "3GPP SA5"; + contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; + description "Defines the YANG mapping of the CPCIConfigurationFunction Information Object Class + (IOC) that is part of the NR Network Resource Model (NRM)."; + reference "3GPP TS 28.541 5G Network Resource Model (NRM)"; + + revision 2020-05-08 { reference S5-203316; } + + + grouping CPCIConfigurationFunctionGrp { + description "Represents the CPCICONFIGURATIONFunction IOC."; + reference "3GPP TS 28.541"; + uses top3gpp:Top_Grp; + + + list cSonPciList { + key NRPci; + description " This holds a list of physical cell identities that can be assigned to the pci attribute by gNB. The assignment algorithm is not specified. This attribute shall be supported if and only if the C-SON PCI configuration is supported."; + leaf NRPci {type int32;} + container attributes { + uses CSonPciListGrp; + } + } + + + leaf cPciConfigurationControl { + description "This attribute determines whether the Cross Domain-Centralized SON PCI configuration function is enabled or disabled."; + type boolean; + } + + } + + grouping CSonPciListGrp { + description "Represents the C-SON PCI list for the PCI configuration function."; + + leaf NRPci { + description "This attribute determines the NR PCI."; + type int32 { range "0..1007"; } + units "1"; + } + } + + + augment "/me3gpp:ManagedElement/gnbdu3gpp:GNBDUFunction/nrcelldu3gpp:NRCellDU" { + if-feature nrcelldu3gpp:CPCIConfigurationFunction; + uses CPCIConfigurationFunctionGrp; + } + augment "/me3gpp:ManagedElement" { + if-feature me3gpp:CPCIConfigurationFunction; + uses CPCIConfigurationFunctionGrp; + } + augment "/subnet3gpp:SubNetwork" { + if-feature subnet3gpp:CPCIConfigurationFunction; + uses CPCIConfigurationFunctionGrp; + } +} \ No newline at end of file diff --git a/yang-models/_3gpp-nr-nrm-danrmanagementfunction.yang b/yang-models/_3gpp-nr-nrm-danrmanagementfunction.yang new file mode 100755 index 000000000..9ec94fc20 --- /dev/null +++ b/yang-models/_3gpp-nr-nrm-danrmanagementfunction.yang @@ -0,0 +1,44 @@ +module _3gpp-nr-nrm-danrmanagementfunction { + yang-version 1.1; + namespace "urn:3gpp:sa5:_3gpp-nr-nrm-danrmanagementfunction"; + prefix "danrmanagementfunction3gpp"; + + + import _3gpp-common-top { prefix top3gpp; } + import _3gpp-nr-nrm-gnbcucpfunction { prefix gnbcucp3gpp; } + import _3gpp-common-managed-element { prefix me3gpp; } + + + + organization "3GPP SA5"; + contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; + description "Defines the YANG mapping of the DANRManagementFunction Information Object Class + (IOC) that is part of the NR Network Resource Model (NRM)."; + reference "3GPP TS 28.541 5G Network Resource Model (NRM)"; + + revision 2020-05-08 { reference S5-203316; } + + + grouping DANRManagementFunctionGrp { + description "Represents the DANRManagementFunction IOC."; + reference "3GPP TS 28.541"; + uses top3gpp:Top_Grp; + + leaf intrasystemANRManagementSwitch { + description "This attribute determines whether the intra-system ANR function is activated or deactivated."; + type boolean; + } + + leaf intersystemANRManagementSwitch { + description "This attribute determines whether the inter-system ANR function is activated or deactivated."; + type boolean; + } + + + } + + augment "/me3gpp:ManagedElement/gnbcucp3gpp:GNBCUCPFunction" { + if-feature gnbcucp3gpp:DANRManagementFunction; + uses DANRManagementFunctionGrp; + } +} \ No newline at end of file diff --git a/yang-models/_3gpp-nr-nrm-desmanagementfunction.yang b/yang-models/_3gpp-nr-nrm-desmanagementfunction.yang new file mode 100755 index 000000000..b4b86d2b0 --- /dev/null +++ b/yang-models/_3gpp-nr-nrm-desmanagementfunction.yang @@ -0,0 +1,261 @@ +module _3gpp-nr-nrm-desmanagementfunction { + yang-version 1.1; + namespace "urn:3gpp:sa5:_3gpp-nr-nrm-desmanagementfunction"; + prefix "desmanagementfunction3gpp"; + + + import _3gpp-common-top { prefix top3gpp; } + import _3gpp-nr-nrm-gnbcucpfunction { prefix gnbcucp3gpp; } + import _3gpp-common-managed-element { prefix me3gpp; } + import _3gpp-nr-nrm-nrcellcu { prefix nrcellcu3gpp; } + import _3gpp-common-subnetwork { prefix subnet3gpp; } + + + organization "3GPP SA5"; + contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; + description "Defines the YANG mapping of the DESManagementFunction Information Object Class + (IOC) that is part of the NR Network Resource Model (NRM)."; + reference "3GPP TS 28.541 5G Network Resource Model (NRM)"; + + revision 2020-05-08 { reference S5-203316; } + + + grouping DESManagementFunctionGrp { + description "Represents the DESManagementFunction IOC."; + reference "3GPP TS 28.541"; + uses top3gpp:Top_Grp; + + leaf desSwitch { + description "This attribute determines whether the Distributed SON or Domain-Centralized SON energy saving function is enabled or disabled."; + type boolean; + } + + list intraRatEsActivationOriginalCellLoadParameters { + key loadThreshold; + description "This attributes is relevant, if the cell acts as an original cell.This attribute indicates the traffic load threshold and the time duration, which are used by distributed ES algorithms to allow a cell to enter the energySaving state."; + leaf loadThreshold {type int32;} + container attributes { + uses IntraRatEsActivationOriginalCellLoadParametersGrp; + } + } + + + list intraRatEsActivationCandidateCellsLoadParameters { + key loadThreshold; + description "This attribute indicates the traffic load threshold and the time duration, which are used by distributed ES algorithms level to allow a n 'original' cell to enter the energySaving state."; + leaf loadThreshold {type int32;} + container attributes { + uses IntraRatEsActivationCandidateCellsLoadParametersGrp; + } + } + + list intraRatEsDeactivationCandidateCellsLoadParameters { + key loadThreshold; + description "This attributes is relevant, if the cell acts as a candidate cell.This attribute indicates the traffic load threshold and the time duration which is used by distributed ES algorithms to allow a cell to leave the energySaving state."; + leaf loadThreshold {type int32;} + container attributes { + uses IntraRatEsDeactivationCandidateCellsLoadParametersGrp; + } + } + + list esNotAllowedTimePeriod { + key startTimeandendTime; + description "This attribute indicates a list of time periods during which inter-RAT energy saving is not allowed."; + leaf startTimeandendTime {type string;} + container attributes { + uses EsNotAllowedTimePeriodGrp; + } + } + + list interRatEsActivationOriginalCellParameters { + key loadThreshold; + description "This attribute indicates the traffic load threshold and the time duration, which are used by distributed inter-RAT ES algorithms to allow an original cell to enter the energySaving state."; + leaf loadThreshold {type int32;} + container attributes { + uses InterRatEsActivationOriginalCellParametersGrp; + } + } + + list interRatEsActivationCandidateCellParameters { + key loadThreshold; + description "This attribute indicates the traffic load threshold and the time duration, which are used by distributed inter-RAT ES algorithms to allow an original cell to enter the energySaving state."; + leaf loadThreshold {type int32;} + container attributes { + uses InterRatEsActivationCandidateCellParametersGrp; + } + } + + list interRatEsDeactivationCandidateCellParameters { + key loadThreshold; + description "This attribute indicates the traffic load threshold and the time duration which is used by distributed inter-RAT ES algorithms to allow an original cell to leave the energySaving state."; + leaf loadThreshold {type int32;} + container attributes { + uses InterRatEsDeactivationCandidateCellParametersGrp; + } + } + + leaf energySavingState { + description "Specifies the status regarding the energy saving in the cell."; + type enumeration { + enum isNotEnergySaving; + enum isEnergySaving; + } + } + + leaf isProbingCapable { + description " This attribute indicates whether this cell is capable of performing the ES probing procedure."; + type enumeration{ + enum yes; + enum no; + } + } + + } + + grouping IntraRatEsActivationOriginalCellLoadParametersGrp { + description "Represents the the traffic load threshold and the time duration."; + + leaf loadThreshold { + description "This attribute is used by distributed ES algorithms to allow a cell to enter the energySaving state."; + type int32 { range "0..10000"; } + units "1"; + } + + + leaf timeDuration { + description " The time duration indicates how long the load needs to have been below the threshold."; + type int32 { range "0..900"; } + units "1"; + } + } + + grouping IntraRatEsActivationCandidateCellsLoadParametersGrp { + description "Represents the the traffic load threshold and the time duration."; + + leaf loadThreshold { + description "This attribute is used by distributed ES algorithms to allow a cell to enter the energySaving state."; + type int32 { range "0..10000"; } + units "1"; + } + + + leaf timeDuration { + description " The time duration indicates how long the load needs to have been below the threshold."; + type int32 { range "0..900"; } + units "1"; + } + } + + grouping IntraRatEsDeactivationCandidateCellsLoadParametersGrp { + description "Represents the the traffic load threshold and the time duration."; + + leaf loadThreshold { + description "This attribute is used by distributed ES algorithms to allow a cell to enter the energySaving state."; + type int32 { range "0..10000"; } + units "1"; + } + + + leaf timeDuration { + description " The time duration indicates how long the load needs to have been below the threshold."; + type int32 { range "0..900"; } + units "1"; + } + } + + grouping EsNotAllowedTimePeriodGrp { + description "Represents the the traffic load threshold and the time duration."; + + leaf startTimeandendTime { + description "This field indicate valid UTC time."; + type string; + } + + + leaf periodOfDay { + description "This field indicate the period of day."; + type string; + } + + leaf daysOfWeekList { + description "This field indicate the list of weekday."; + type string; + } + + leaf listoftimeperiods { + description "This field indicate the list of time periods."; + type string; + } + + } + + grouping InterRatEsActivationOriginalCellParametersGrp { + description "Represents the the traffic load threshold and the time duration."; + + leaf loadThreshold { + description "The time duration indicates how long the traffic load (both for UL and DL) needs to have been below the threshold."; + type int32 { range "0..10000"; } + units "1"; + } + + + leaf timeDuration { + description " The time duration indicates how long the load needs to have been below the threshold."; + type int32 { range "0..900"; } + units "1"; + } + } + + grouping InterRatEsActivationCandidateCellParametersGrp { + description "Represents the the traffic load threshold and the time duration."; + + leaf loadThreshold { + description "This attribute is used by distributed ES algorithms to allow a cell to enter the energySaving state."; + type int32 { range "0..10000"; } + units "1"; + } + + + leaf timeDuration { + description "The time duration indicates how long the traffic load (both for UL and DL) in the candidate cell needs to have been below the threshold before any original cells which will be provided backup coverage by the candidate cell enters energySaving state."; + type int32 { range "0..900"; } + units "1"; + } + } + + grouping InterRatEsDeactivationCandidateCellParametersGrp { + description "Represents the the traffic load threshold and the time duration."; + + leaf loadThreshold { + description "This attribute is used by distributed ES algorithms to allow a cell to enter the energySaving state."; + type int32 { range "0..10000"; } + units "1"; + } + + + leaf timeDuration { + description "The time duration indicates how long the traffic load (either for UL or DL) in the candidate cell needs to have been above the threshold to wake up one or more original cells which have been provided backup coverage by the candidate cell."; + type int32 { range "0..900"; } + units "1"; + } + } + + + augment "/me3gpp:ManagedElement/gnbcucp3gpp:GNBCUCPFunction/nrcellcu3gpp:NRCellCU" { + if-feature nrcellcu3gpp:DESManagementFunction; + uses DESManagementFunctionGrp; + } + augment "/me3gpp:ManagedElement/gnbcucp3gpp:GNBCUCPFunction" { + if-feature gnbcucp3gpp:DESManagementFunction; + uses DESManagementFunctionGrp; + } + augment "/me3gpp:ManagedElement" { + if-feature me3gpp:DESManagementFunction; + uses DESManagementFunctionGrp; + } + augment "/subnet3gpp:SubNetwork" { + if-feature subnet3gpp:DESManagementFunction; + uses DESManagementFunctionGrp; + } + +} \ No newline at end of file diff --git a/yang-models/_3gpp-nr-nrm-dmrofunction.yang b/yang-models/_3gpp-nr-nrm-dmrofunction.yang new file mode 100755 index 000000000..c657f1587 --- /dev/null +++ b/yang-models/_3gpp-nr-nrm-dmrofunction.yang @@ -0,0 +1,70 @@ +module _3gpp-nr-nrm-dmrofunction { + yang-version 1.1; + namespace "urn:3gpp:sa5:_3gpp-nr-nrm-dmrofunction"; + prefix "dmrofunction3gpp"; + + import _3gpp-common-subnetwork { prefix subnet3gpp; } + import _3gpp-common-top { prefix top3gpp; } + import _3gpp-nr-nrm-gnbcucpfunction { prefix gnbcucp3gpp; } + import _3gpp-common-managed-element { prefix me3gpp; } + import _3gpp-nr-nrm-nrcellcu { prefix nrcellcu3gpp; } + + + organization "3GPP SA5"; + contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; + description "Defines the YANG mapping of the DMROFunction Information Object Class + (IOC) that is part of the NR Network Resource Model (NRM)."; + reference "3GPP TS 28.541 5G Network Resource Model (NRM)"; + + revision 2020-05-08 { reference S5-203316; } + + + grouping DMROFunctionGrp { + description "Represents the DMROFunction IOC."; + reference "3GPP TS 28.541"; + uses top3gpp:Top_Grp; + + leaf maximumDeviationHoTrigger { + description "This parameter defines the maximum allowed absolute deviation of the Handover Trigger, from the default point of operation."; + type int32 { range "-20..20"; } + units "0.5"; + } + + leaf minimumTimeBetweenHoTriggerChange { + description "This parameter defines the minimum allowed time interval between two Handover Trigger change performed by MRO. This is used to control the stability and convergence of the algorithm."; + type int32 { range "0..604800"; } + units "1"; + } + + leaf tstoreUEcntxt { + description "The timer used for detection of too early HO, too late HO and HO to wrong cell."; + type int32 { range "0..1023"; } + units "100"; + } + + + leaf dmroControl { + description " This attribute determines whether the MRO function is enabled or disabled."; + type boolean; + } + + } + + + augment "/me3gpp:ManagedElement/gnbcucp3gpp:GNBCUCPFunction/nrcellcu3gpp:NRCellCU" { + if-feature nrcellcu3gpp:DMROFunction; + uses DMROFunctionGrp; + } + augment "/me3gpp:ManagedElement/gnbcucp3gpp:GNBCUCPFunction" { + if-feature gnbcucp3gpp:DMROFunction; + uses DMROFunctionGrp; + } + augment "/me3gpp:ManagedElement" { + if-feature me3gpp:DMROFunction; + uses DMROFunctionGrp; + } + augment "/subnet3gpp:SubNetwork" { + if-feature subnet3gpp:DMROFunction; + uses DMROFunctionGrp; + } +} \ No newline at end of file diff --git a/yang-models/_3gpp-nr-nrm-dpciconfigurationfunction.yang b/yang-models/_3gpp-nr-nrm-dpciconfigurationfunction.yang new file mode 100755 index 000000000..dce102ff2 --- /dev/null +++ b/yang-models/_3gpp-nr-nrm-dpciconfigurationfunction.yang @@ -0,0 +1,69 @@ +module _3gpp-nr-nrm-dpciconfigurationfunction { + yang-version 1.1; + namespace "urn:3gpp:sa5:_3gpp-nr-nrm-dpciconfigurationfunction"; + prefix "dpciconfigurationfunction3gpp"; + + import _3gpp-common-subnetwork { prefix subnet3gpp; } + import _3gpp-common-top { prefix top3gpp; } + import _3gpp-nr-nrm-nrcellcu { prefix nrcellcu3gpp; } + import _3gpp-nr-nrm-gnbcucpfunction { prefix gnbcucp3gpp; } + import _3gpp-common-managed-element { prefix me3gpp; } + + organization "3GPP SA5"; + contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; + description "Defines the YANG mapping of the DPCIConfigurationFunction Information Object Class + (IOC) that is part of the NR Network Resource Model (NRM)."; + reference "3GPP TS 28.541 5G Network Resource Model (NRM)"; + + revision 2021-01-25 { reference CR-0454 ; } + revision 2020-11-25 { reference CR-0386 ; } + revision 2020-05-08 { reference S5-203316; } + + + grouping DPCIConfigurationFunctionGrp { + description "Represents the DPCICONFIGURATIONFunction IOC."; + reference "3GPP TS 28.541"; + uses top3gpp:Top_Grp; + + + list nRPciList { + key NRPci; + description "This holds a list of physical cell identities that can be assigned to the NR cells. This attribute shall be supported if D-SON PCI configuration or domain Centralized SON PCI configuration function is supported."; + leaf NRPci {type int32;} + container attributes { + uses NRPciListGrp; + } + } + + + leaf dPciConfigurationControl { + description " This attribute determines whether the Distributed SON or Domain-Centralized SON PCI configuration Function is enabled or disabled."; + type boolean; + } + + } + + grouping NRPciListGrp { + description "Represents the NR PCI list for the PCI configuration function."; + + leaf NRPci { + description "This attribute determines the NR PCI."; + type int32 { range "0..1007"; } + units "1"; + } + } + + + augment "/me3gpp:ManagedElement/gnbcucp3gpp:GNBCUCPFunction/nrcellcu3gpp:NRCellCU" { + if-feature nrcellcu3gpp:DPCIConfigurationFunction; + uses DPCIConfigurationFunctionGrp; + } + augment "/me3gpp:ManagedElement" { + if-feature me3gpp:DPCIConfigurationFunction; + uses DPCIConfigurationFunctionGrp; + } + augment "/subnet3gpp:SubNetwork" { + if-feature subnet3gpp:DPCIConfigurationFunction; + uses DPCIConfigurationFunctionGrp; + } +} \ No newline at end of file diff --git a/yang-models/_3gpp-nr-nrm-drachoptimizationfunction.yang b/yang-models/_3gpp-nr-nrm-drachoptimizationfunction.yang new file mode 100755 index 000000000..7ef35373c --- /dev/null +++ b/yang-models/_3gpp-nr-nrm-drachoptimizationfunction.yang @@ -0,0 +1,120 @@ +module _3gpp-nr-nrm-drachoptimizationfunction { + yang-version 1.1; + namespace "urn:3gpp:sa5:_3gpp-nr-nrm-drachoptimizationfunction"; + prefix "drachoptimizationfunction3gpp"; + + import _3gpp-common-subnetwork { prefix subnet3gpp; } + import _3gpp-common-top { prefix top3gpp; } + import _3gpp-common-managed-element { prefix me3gpp; } + import _3gpp-nr-nrm-nrcelldu { prefix nrcelldu3gpp; } + import _3gpp-nr-nrm-gnbdufunction { prefix gnbdu3gpp; } + + organization "3GPP SA5"; + contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; + description "Defines the YANG mapping of the DRACHOptimizationFunction Information Object Class + (IOC) that is part of the NR Network Resource Model (NRM)."; + reference "3GPP TS 28.541 5G Network Resource Model (NRM)"; + + revision 2021-01-25 { reference CR-0454 ; } + revision 2020-10-02 { reference "CR-0384, CR-0382" ; } + revision 2020-05-08 { reference S5-203316; } + + grouping DRACHOptimizationFunctionGrp { + description "Represents the DRACHOptimizationFunction IOC."; + reference "3GPP TS 28.541"; + uses top3gpp:Top_Grp; + + list ueAccProbilityDist { + key targetProbability; + description "This is a list of target Access Probability (APn) for the RACH optimization function."; + leaf targetProbability {type TargetProbability;} + container attributes { + uses UeAccProbilityDistGrp; + } + } + + list ueAccDelayProbilityDist { + key targetProbability; + description "This is a list of target Access Delay probability (ADP) for the RACH optimization function."; + leaf targetProbability {type TargetProbability;} + container attributes { + uses UeAccDelayProbilityDistGrp; + } + } + + leaf drachOptimizationControl { + description "This attribute determines whether the RACH Optimization function is enabled or disabled."; + type boolean; + } + } + typedef TargetProbability { + type enumeration { + enum 25; + enum 50; + enum 75; + enum 90; + } + } + + typedef Numberofpreamblessent { + type int32 { range "1..200"; } + units "1"; + } + + typedef Accessdelay { + type int32 { range "10..560"; } + units "1"; + } + + + grouping UeAccProbilityDistGrp { + description "Represents the target Access Probability (APn) for the RACH optimization function."; + + leaf targetProbability { + description "This attribute determines the target Probability."; + mandatory true; + type TargetProbability; + } + + + leaf numberofpreamblessent { + description "This attribute determines the number of preambles sent."; + mandatory true; + type Numberofpreamblessent; + } + } + + grouping UeAccDelayProbilityDistGrp { + description "Represents the target Access Delay probability (ADP) for the RACH optimization function."; + + leaf targetProbability { + description "This attribute determines the target Probability."; + mandatory true; + type TargetProbability; + } + + + leaf accessdelay { + description "This attribute determines the access delay."; + mandatory true; + type Accessdelay; + } + } + + augment "/me3gpp:ManagedElement/gnbdu3gpp:GNBDUFunction/nrcelldu3gpp:NRCellDU" { + if-feature nrcelldu3gpp:DRACHOptimizationFunction; + uses DRACHOptimizationFunctionGrp; + } + augment "/me3gpp:ManagedElement/gnbdu3gpp:GNBDUFunction" { + if-feature gnbdu3gpp:DRACHOptimizationFunction; + uses DRACHOptimizationFunctionGrp; + } + augment "/me3gpp:ManagedElement" { + if-feature me3gpp:DRACHOptimizationFunction; + uses DRACHOptimizationFunctionGrp; + } + augment "/subnet3gpp:SubNetwork" { + if-feature nrcelldu3gpp:DRACHOptimizationFunction; + uses DRACHOptimizationFunctionGrp; + } +} \ No newline at end of file diff --git a/yang-models/_3gpp-nr-nrm-ep.yang b/yang-models/_3gpp-nr-nrm-ep.yang new file mode 100755 index 000000000..835e2e05c --- /dev/null +++ b/yang-models/_3gpp-nr-nrm-ep.yang @@ -0,0 +1,256 @@ +module _3gpp-nr-nrm-ep { + yang-version 1.1; + namespace "urn:3gpp:sa5:_3gpp-nr-nrm-ep"; + prefix "ep3gpp"; + + import _3gpp-common-ep-rp { prefix eprp3gpp; } + import _3gpp-common-managed-element { prefix me3gpp; } + import _3gpp-common-top { prefix top3gpp; } + import _3gpp-nr-nrm-gnbcucpfunction { prefix gnbcucp3gpp; } + import _3gpp-nr-nrm-gnbcuupfunction { prefix gnbcuup3gpp; } + import _3gpp-nr-nrm-gnbdufunction { prefix gnbdu3gpp; } + + organization "3GPP SA5"; + contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; + description "Defines the YANG mapping of the NR related endpoint + Information Object Classes (IOCs) that are part of the NR Network + Resource Model (NRM)."; + reference "3GPP TS 28.541 5G Network Resource Model (NRM)"; + + revision 2021-03-03 { reference CR-0435 ; } + revision 2021-02-17 { reference CR-0470; } + revision 2020-11-17 { reference CR-0410 ; } + revision 2020-03-02 { reference S5-201191; } + revision 2019-06-17 { reference "Initial revision"; } + + feature EPClassesUnderGNBCUCPFunction { + description "Endpoint classes shall be contained under GNBCUCPFunction"; + } + + feature EPClassesUnderGNBCUUPFunction { + description "Endpoint classes shall be contained under GNBCUUPFunction"; + } + + feature EPClassesUnderGNBDUFunction { + description "Endpoint classes shall be contained under GNBDUFunction"; + } + + grouping EP_E1Grp { + description "Represents the EP_E1 IOC."; + reference "3GPP TS 28.541, 3GPP TS 38.401"; + uses eprp3gpp:EP_Common; + } + + grouping EP_F1CGrp { + description "Represents the EP_F1C IOC."; + reference "3GPP TS 28.541, 3GPP TS 38.470"; + uses eprp3gpp:EP_Common; + } + + grouping EP_F1UGrp { + description "Represents the EP_F1U IOC."; + reference "3GPP TS 28.541, 3GPP TS 38.470"; + uses eprp3gpp:EP_Common; + } + + grouping EP_XnCGrp { + description "Represents the EP_XnC IOC."; + reference "3GPP TS 28.541, 3GPP TS 38.420"; + uses eprp3gpp:EP_Common; + } + + grouping EP_XnUGrp { + description "Represents the EP_XnU IOC."; + reference "3GPP TS 28.541, 3GPP TS 38.420"; + uses eprp3gpp:EP_Common; + } + + grouping EP_NgCGrp { + description "Represents the EP_NgC IOC."; + reference "3GPP TS 28.541, 3GPP TS 38.470"; + uses eprp3gpp:EP_Common; + } + + grouping EP_NgUGrp { + description "Represents the EP_NgU IOC."; + reference "3GPP TS 28.541, 3GPP TS 38.470"; + uses eprp3gpp:EP_Common; + } + + grouping EP_X2CGrp { + description "Represents the EP_X2C IOC."; + reference "3GPP TS 28.541, 3GPP TS 36.423"; + uses eprp3gpp:EP_Common; + } + + grouping EP_X2UGrp { + description "Represents the EP_X2U IOC."; + reference "3GPP TS 28.541, 3GPP TS 36.425"; + uses eprp3gpp:EP_Common; + } + + grouping EP_S1UGrp { + description "Represents the EP_S1U IOC."; + reference "3GPP TS 28.541, 3GPP TS 36.410"; + uses eprp3gpp:EP_Common; + } + + augment "/me3gpp:ManagedElement/gnbcucp3gpp:GNBCUCPFunction" { + if-feature EPClassesUnderGNBCUCPFunction; + + list EP_E1 { + description "Represents the local end point of the logical link, + supporting E1 interface between gNB-CU-CP and gNB-CU-UP."; + reference "3GPP TS 28.541, 3GPP TS 38.401"; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses EP_E1Grp; + } + } + + list EP_F1C { + description "Represents the local end point of the control plane + interface (F1-C) between the DU and CU or CU-CP."; + reference "3GPP TS 28.541, 3GPP TS 38.470"; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses EP_F1CGrp; + } + } + + list EP_NgC { + description "Represents the local end point of the control plane + interface (NG-C) between the gNB and NG-Core entity."; + reference "3GPP TS 28.541, 3GPP TS 38.470"; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses EP_NgCGrp; + } + } + + list EP_XnC { + description "Represents the local gNB node end point of the logical + link, supporting Xn application protocols, to a neighbour NG-RAN node + (including gNB and ng-eNB). The Xn Application PDUs are carried over + SCTP/IP/Data link layer/Physical layer stack."; + reference "3GPP TS 28.541, 3GPP TS 38.420 subclause 7"; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses EP_XnCGrp; + } + } + + list EP_X2C { + description "Represents the local end point of the logical link, + supporting X2-C application protocols used in EN-DC, to a neighbour + eNB or en-gNB node."; + reference "3GPP TS 28.541, 3GPP TS 36.423"; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses EP_X2CGrp; + } + } + } + + augment "/me3gpp:ManagedElement/gnbcuup3gpp:GNBCUUPFunction" { + if-feature EPClassesUnderGNBCUUPFunction; + + list EP_E1 { + description "Represents the local end point of the logical link, + supporting E1 interface between gNB-CU-CP and gNB-CU-UP."; + reference "3GPP TS 28.541, 3GPP TS 38.401"; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses EP_E1Grp; + } + } + + list EP_F1U { + description "Represents the local end point of the user plane + interface (F1-U) between the DU and CU or CU-UP."; + reference "3GPP TS 28.541, 3GPP TS 38.470"; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses EP_F1UGrp; + } + } + + list EP_NgU { + description "Represents the local end point of the NG user plane + (NG-U) interface between the gNB and UPF."; + reference "3GPP TS 28.541, 3GPP TS 38.470"; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses EP_NgUGrp; + } + } + + list EP_XnU { + description "Represents the one end-point of a logical link supporting + the Xn user plane (Xn-U) interface. The Xn-U interface provides + non-guaranteed delivery of user plane PDUs between two NG-RAN nodes."; + reference "3GPP TS 28.541, 3GPP TS 38.420"; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses EP_XnUGrp; + } + } + + list EP_X2U { + description "Represents the local end-point of a logical link supporting + the X2 user plane (X2-U) interface used in EN-DC."; + reference "3GPP TS 28.541, 3GPP TS 36.425"; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses EP_X2UGrp; + } + } + + list EP_S1U { + description "Represents the local end point of the logical link, + supporting S1-U interface towards a S-GW node."; + reference "3GPP TS 28.541, 3GPP TS 36.410"; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses EP_S1UGrp; + } + } + } + + augment "/me3gpp:ManagedElement/gnbdu3gpp:GNBDUFunction" { + if-feature EPClassesUnderGNBDUFunction; + + list EP_F1C { + description "Represents the local end point of the control plane + interface (F1-C) between the DU and CU or CU-CP."; + reference "3GPP TS 28.541, 3GPP TS 38.470"; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses EP_F1CGrp; + } + } + + list EP_F1U { + description "Represents the local end point of the user plane + interface (F1-U) between the DU and CU or CU-UP."; + reference "3GPP TS 28.541, 3GPP TS 38.470"; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses EP_F1UGrp; + } + } + } +} \ No newline at end of file diff --git a/yang-models/_3gpp-nr-nrm-eutrancellrelation.yang b/yang-models/_3gpp-nr-nrm-eutrancellrelation.yang new file mode 100755 index 000000000..4eee4a401 --- /dev/null +++ b/yang-models/_3gpp-nr-nrm-eutrancellrelation.yang @@ -0,0 +1,160 @@ +module _3gpp-nr-nrm-eutrancellrelation { + yang-version 1.1; + namespace "urn:3gpp:sa5:_3gpp-nr-nrm-eutrancellrelation"; + prefix "eutrancellrel3gpp"; + + import _3gpp-common-yang-types { prefix types3gpp; } + import _3gpp-common-managed-function { prefix mf3gpp; } + import _3gpp-common-managed-element { prefix me3gpp; } + import _3gpp-nr-nrm-gnbcucpfunction { prefix gnbcucp3gpp; } + import _3gpp-nr-nrm-nrcellcu { prefix nrcellcu3gpp; } + import _3gpp-common-top { prefix top3gpp; } + + organization "3GPP SA5"; + description "Defines the YANG mapping of the EUtranCellRelation Information + Object Class (IOC) that is part of the NR Network Resource Model (NRM)."; + reference "3GPP TS 28.541 5G Network Resource Model (NRM)"; + + revision 2019-10-28 { reference S5-193518 ; } + revision 2019-06-17 { + description "Initial revision"; + } + + typedef ActionAllowed { + type enumeration { + enum YES; + enum NO; + } + } + + typedef EnergySavingCoverage { + type enumeration { + enum YES; + enum NO; + enum PARTIAL; + } + } + + grouping EUtranCellRelationGrp { + description "Represents the EUtranCellRelation IOC."; + reference "3GPP TS 28.541, EUtranRelation in 3GPP TS 28.658"; + uses mf3gpp:ManagedFunctionGrp; + + leaf tCI { + description "Target Cell Identifier. Consists of E-UTRAN Cell Global + Identifier (ECGI) and Physical Cell Identifier (PCI) of the target + cell. Identifies the target cell from the perspective of the parent + cell instance."; + mandatory true; + type uint64; + } + + leaf isRemoveAllowed { + description "Indicates if the subject EUtranCellRelation can be removed + (deleted) or not. If YES, the subject EUtranCellRelation instance can + be removed (deleted). If NO, the subject EUtranCellRelation instance + shall not be removed (deleted) by any entity but an IRPManager."; + mandatory true; + type ActionAllowed; + } + + leaf isHOAllowed { + description "Indicates if handover is allowed or prohibited. If YES, + handover is allowed from source cell to target cell. Source cell is + represented by the parent cell instance. Target cell is the adjacent + cell referenced by this EUtranCellRelation instance. If NO, handover + shall not be allowed."; + mandatory true; + type ActionAllowed; + } + leaf isENDCAllowed { + description "Indicates if EN-DC is allowed or prohibited. If TRUE, + the target cell is allowed to be used for EN-DC. The target cell is + referenced by the NRCellRelation that contains this isENDCAllowed. + If FALSE, EN-DC shall not be allowed."; + mandatory true; + type ActionAllowed; + } + + + leaf isICICInformationSendAllowed { + description "Indicates if ICIC (Inter Cell Interference Coordination) + load information message sending is allowed or prohibited. If YES, + ICIC load information message sending is allowed from source cell to + target cell. Source cell is represented by the parent cell instance. + Target cell is the adjacent cell referenced by this EUtranCellRelation + instance. If NO, ICIC load information message sending shall not be + allowed."; + reference "3GPP TS 36.423"; + mandatory true; + type ActionAllowed; + } + + leaf isLBAllowed { + description "Indicates if load balancing is allowed or prohibited from + source cell to target cell. If YES, load balancing is allowed from + source cell to target cell. Source cell is represented by the parent + cell instance. Target cell is the adjacent cell referenced by this + EUtranCellRelation instance. If NO, load balancing shall be prohibited + from source cell to target cell."; + mandatory true; + type ActionAllowed; + } + + leaf isESCoveredBy { + description "Indicates whether the adjacent cell according to this + planning provides no, partial or full coverage for the parent cell + instance. Adjacent cells with this attribute equal to YES are + recommended to be considered as candidate cells to take over the + coverage when the original cell is about to be transferred to energy + saving state. The entirety of adjacent cells with this property equal + to PARTIAL are recommended to be considered as entirety of candidate + cells to take over the coverage when the original cell is about to be + transferred to energy saving state."; + mandatory true; + type EnergySavingCoverage; + } + + leaf qOffset { + description "Offset applicable to a specific neighbouring cell used for + evaluating the cell as a candidate for cell re-selection. Corresponds + to parameter q-OffsetCell broadcast in SIB4 for intra-frequency cells + and in SIB5 for inter-frequency cells. Used for Mobility Robustness + Optimization."; + reference "3GPP TS 36.331"; + mandatory true; + type types3gpp:QOffsetRange; + } + + leaf cellIndividualOffset { + description "Offset applicable to a neighbouring cell. It is used for + evaluating the neighbouring cell for handover in connected mode. Used + by the HandOver parameter Optimization (HOO) function or Load + Balancing Optimization (LBO) function."; + reference "3GPP TS 36.331"; + config false; + type types3gpp:QOffsetRange; + } + + leaf adjacentCell { + description "Reference to an EUtranCellFDD/TDD or + ExternalEUtranCellFDD/TDD instance."; + mandatory true; + type types3gpp:DistinguishedName; + } + } + + augment /me3gpp:ManagedElement/gnbcucp3gpp:GNBCUCPFunction/nrcellcu3gpp:NRCellCU { + + list EUtranCellRelation { + description "Represents a relation between an NR cell and an E-UTRAN cell."; + reference "3GPP TS 28.541"; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses EUtranCellRelationGrp; + } + uses mf3gpp:ManagedFunctionContainedClasses; + } + } +} \ No newline at end of file diff --git a/yang-models/_3gpp-nr-nrm-eutranetwork.yang b/yang-models/_3gpp-nr-nrm-eutranetwork.yang new file mode 100755 index 000000000..068bc246c --- /dev/null +++ b/yang-models/_3gpp-nr-nrm-eutranetwork.yang @@ -0,0 +1,61 @@ +module _3gpp-nr-nrm-eutranetwork { + yang-version 1.1; + namespace "urn:3gpp:sa5:_3gpp-nr-nrm-eutranetwork"; + prefix "eutranet3gpp"; + + import _3gpp-common-subnetwork { prefix subnet3gpp; } + import _3gpp-common-top { prefix top3gpp; } + + organization "3GPP SA5"; + description "Defines the YANG mapping of the EUtraNetwork Information Object + Class (IOC) that is part of the NR Network Resource Model (NRM)."; + reference "3GPP TS 28.541 5G Network Resource Model (NRM)"; + + revision 2019-06-17 { + description "Initial revision"; + } + + feature ExternalsUnderEUtraNetwork { + description "Classes representing external entities like EUtranFrequency, + ExternalENBFunction are contained under a EUtraNetwork list/class."; + } + + grouping EUtraNetworkGrp { + description "Represents the EUtraNetwork IOC."; + reference "3GPP TS 28.541"; + uses subnet3gpp:SubNetworkGrp; + } + + list EUtraNetwork { + description "A subnetwork containing gNB external E-UTRAN entities."; + reference "3GPP TS 28.541"; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses EUtraNetworkGrp; + leaf-list parents { + description "Reference to all containg EUtraNetwork instances + in strict order from the root EUtraNetwork down to the immediate + parent EUtraNetwork. + If EUtraNetworks form a containment hierarchy this is + modeled using references between the child EUtraNetwork and the parent + EUtraNetworks. + This reference MUST NOT be present for the top level EUtraNetwork and + MUST be present for other EUtraNetworks."; + type leafref { + path "../../../EUtraNetwork/id"; + } + } + + leaf-list containedChildren{ + description "Reference to all directly contained EUtraNetwork instances. + If EUtraNetworks form a containment hierarchy this is + modeled using references between the child EUtraNetwork and the parent + EUtraNetwork."; + type leafref { + path "../../../EUtraNetwork/id"; + } + } + } + } +} \ No newline at end of file diff --git a/yang-models/_3gpp-nr-nrm-eutranfreqrelation.yang b/yang-models/_3gpp-nr-nrm-eutranfreqrelation.yang new file mode 100755 index 000000000..fce8aa7ff --- /dev/null +++ b/yang-models/_3gpp-nr-nrm-eutranfreqrelation.yang @@ -0,0 +1,208 @@ +module _3gpp-nr-nrm-eutranfreqrelation { + yang-version 1.1; + namespace "urn:3gpp:sa5:_3gpp-nr-nrm-eutranfreqrelation"; + prefix "eutranfreqrel3gpp"; + + import _3gpp-common-yang-types { prefix types3gpp; } + import _3gpp-common-managed-function { prefix mf3gpp; } + import _3gpp-common-managed-element { prefix me3gpp; } + import _3gpp-common-top { prefix top3gpp; } + import _3gpp-nr-nrm-gnbcucpfunction { prefix gnbcucp3gpp; } + import _3gpp-nr-nrm-nrcellcu { prefix nrcellcu3gpp; } + + organization "3GPP SA5"; + description "Defines the YANG mapping of the EUtranFreqRelation Information + Object Class (IOC) that is part of the NR Network Resource Model (NRM)."; + reference "3GPP TS 28.541 5G Network Resource Model (NRM)"; + + revision 2019-10-28 { reference S5-193518 ; } + revision 2019-06-17 { + description "Initial revision"; + } + + grouping EUtranFreqRelationGrp { + description "Represents the EUtranFreqRelation IOC."; + reference "3GPP TS 28.541"; + uses mf3gpp:ManagedFunctionGrp; + + leaf cellIndividualOffset { + description "Offset applicable to a neighbouring cell. Used for + evaluating the neighbouring cell for handover in connected mode. + Used by the HandOver parameter Optimization (HOO) function or + Load Balancing Optimization (LBO) function."; + reference "cellIndividualOffset in MeasObjectEUTRA in 3GPP TS 38.331"; + default 0; + type types3gpp:QOffsetRange; + } + + leaf-list blackListEntry { + description "A list of Physical Cell Identities (PCIs) that are + blacklisted in E-UTRAN measurements."; + reference "3GPP TS 38.331"; + min-elements 0; + type uint16 { range "0..1007"; } + } + + leaf-list blackListEntryIdleMode { + description "A list of Physical Cell Identities (PCIs) that are + blacklisted in SIB4 and SIB5."; + min-elements 0; + type uint16 { range "0..1007"; } + } + + leaf cellReselectionPriority { + description "The absolute priority of the carrier frequency used by the + cell reselection procedure. Value 0 means lowest priority. The value + must not already used by other RAT, i.e. equal priorities between RATs + are not supported. The UE behaviour when no value is entered is + specified in subclause 5.2.4.1 of 3GPP TS 38.304."; + reference "CellReselectionPriority in 3GPP TS 38.331, priority in + 3GPP TS 38.304"; + mandatory true; + type int32 { range "0..7"; } + } + + leaf cellReselectionSubPriority { + description "Indicates a fractional value to be added to the value of + cellReselectionPriority to obtain the absolute priority of the + concerned carrier frequency for E-UTRA and NR."; + reference "3GPP TS 38.331"; + type uint8 { range "2 | 4 | 6 | 8"; } + units "0.1"; + } + + leaf pMax { + description "Used for calculation of the parameter Pcompensation + (defined in 3GPP TS 38.304), at cell reselection to a cell."; + reference "PEMAX in 3GPP TS 38.101-1"; + mandatory true; + type int32 { range "-30..33"; } + units dBm; + } + + leaf qOffsetFreq { + description "The frequency specific offset applied when evaluating + candidates for cell reselection."; + type int32; + default 0; + } + + leaf qQualMin { + description "Indicates the minimum required quality level in the cell. + Value 0 means that it is not sent and UE applies in such case the + (default) value of negative infinity for Qqualmin. Sent in SIB3 or + SIB5."; + reference "qQualMin in TS 38.304"; + mandatory true; + type int32 { range "-34..-3 | 0"; } + units dB; + } + + leaf qRxLevMin { + description "Indicates the required minimum received Reference Symbol + Received Power (RSRP) level in the (E-UTRA) frequency for cell + reselection. Broadcast in SIB3 or SIB5, depending on whether the + related frequency is intra- or inter-frequency. Resolution is 2."; + reference "Qrxlevmin in 3GPP TS 38.304"; + mandatory true; + type int32 { range "-140..-44"; } + units dBm; + } + + leaf threshXHighP { + description "Specifies the Srxlev threshold used by the UE when + reselecting towards a higher priority RAT/frequency than the current + serving frequency. Each frequency of NR and E-UTRAN might have a + specific threshold. Resolution is 2."; + reference "ThreshX, HighP in 3GPP TS 38.304"; + mandatory true; + type int32 { range "0..62"; } + units dB; + } + + leaf threshXHighQ { + description "Specifies the Squal threshold used by the UE when + reselecting towards a higher priority RAT/frequency than the current + serving frequency. Each frequency of NR and E-UTRAN might have a + specific threshold."; + reference "ThreshX, HighQ in 3GPP TS 38.304"; + mandatory true; + type int32 { range 0..31; } + units dB; + } + + leaf threshXLowP { + description "Specifies the Srxlev threshold used by the UE when + reselecting towards a lower priority RAT/frequency than the current + serving frequency. Each frequency of NR and E-UTRAN might have a + specific threshold. Resolution is 2."; + reference "ThreshX, LowP in 3GPP TS 38.304"; + mandatory true; + type int32 { range "0..62"; } + units dB; + } + + leaf threshXLowQ { + description "Specifies the Squal threshold used by the UE when + reselecting towards a lower priority RAT/frequency than the current + serving frequency. Each frequency of NR and E-UTRAN might have a + specific threshold."; + reference "ThreshX, LowQ in 3GPP TS 38.304"; + mandatory false; + type int32 { range "0..31"; } + units dB; + } + + leaf tReselectionEutra { + description "Cell reselection timer for intra frequency E-UTRA cell + reselection. May be used for Mobility Robustness Optimization."; + reference "t-ReselectionEUTRA in 3GPP TS 36.331 and in 3GPP TS 23.207"; + mandatory true; + type uint8 { range "0..7"; } + units s; + } + + leaf tReselectionEutraSfHigh { + description "The attribute tReselectionEutra (parameter TreselectionEUTRA + in 3GPP TS 38.304) multiplied with this scaling factor if the UE is in + high mobility state."; + reference "Speed dependent ScalingFactor for TreselectionEUTRA for high + mobility state in 3GPP TS 38.304"; + mandatory true; + type uint8 { range "25 | 50 | 75 | 100"; } + units %; + } + + leaf tReselectionEutraSfMedium { + description "The attribute tReselectionEutra (parameter TreselectionEUTRA + in 3GPP TS 38.304) multiplied with this scaling factor if the UE is in + medium mobility state."; + reference "Speed dependent ScalingFactor for TreselectionEUTRA for medium + mobility state in 3GPP TS 38.304"; + mandatory true; + type uint8 { range "25 | 50 | 75 | 100"; } + units %; + } + + leaf eUtranFrequencyRef { + description "Reference to a corresponding EUtranFrequency instance."; + mandatory true; + type types3gpp:DistinguishedName; + } + } + + augment /me3gpp:ManagedElement/gnbcucp3gpp:GNBCUCPFunction/nrcellcu3gpp:NRCellCU { + + list EUtranFreqRelation { + description "Represents a frequency relation between an NR cell and an + E-UTRAN cell."; + reference "3GPP TS 28.541"; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses EUtranFreqRelationGrp; + } + uses mf3gpp:ManagedFunctionContainedClasses; + } + } +} \ No newline at end of file diff --git a/yang-models/_3gpp-nr-nrm-eutranfrequency.yang b/yang-models/_3gpp-nr-nrm-eutranfrequency.yang new file mode 100755 index 000000000..2d8a4534a --- /dev/null +++ b/yang-models/_3gpp-nr-nrm-eutranfrequency.yang @@ -0,0 +1,64 @@ +module _3gpp-nr-nrm-eutranfrequency { + yang-version 1.1; + namespace "urn:3gpp:sa5:_3gpp-nr-nrm-eutranfrequency"; + prefix "eutraneteutranfreq3gpp"; + + import _3gpp-common-managed-function { prefix mf3gpp; } + import _3gpp-nr-nrm-eutranetwork { prefix eutranet3gpp; } + import _3gpp-common-subnetwork { prefix subnet3gpp; } + import _3gpp-common-top { prefix top3gpp; } + + organization "3GPP SA5"; + description "Defines the YANG mapping of the EUtranFrequency Information + Object Class (IOC), that is part of the NR Network Resource Model (NRM)."; + reference "3GPP TS 28.541 5G Network Resource Model (NRM), + 3GPP TS 28.658 (E-UTRAN) Network Resource Model (NRM)"; + + revision 2019-10-28 { reference S5-193518 ; } + revision 2019-06-17 { + description "Initial revision"; + } + + grouping EUtranFrequencyGrp { + description "Represents the EUtranFrequency IOC."; + reference "3GPP TS 28.541"; + uses mf3gpp:ManagedFunctionGrp; + + leaf earfcnDL { + description "Specifies the channel number for the central DL frequency."; + reference "3GPP TS 36.101"; + mandatory true; + type uint32 { range "0..262143"; } + } + + leaf-list multiBandInfoListEutra { + description "List of additional frequency bands the frequency belongs to."; + config false; + min-elements 0; + type uint16 { range "1..256"; } + } + } + + grouping EUtranFrequencyWrapper { + list EUtranFrequency { + description "Represents certain E-UTRAN frequency properties."; + reference "3GPP TS 28.658"; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses EUtranFrequencyGrp; + } + uses mf3gpp:ManagedFunctionContainedClasses; + } + } + + augment "/subnet3gpp:SubNetwork" { + if-feature subnet3gpp:ExternalsUnderSubNetwork ; + uses EUtranFrequencyWrapper ; + } + + augment "/eutranet3gpp:EUtraNetwork" { + if-feature eutranet3gpp:ExternalsUnderEUtraNetwork; + uses EUtranFrequencyWrapper ; + } +} \ No newline at end of file diff --git a/yang-models/_3gpp-nr-nrm-externalamffunction.yang b/yang-models/_3gpp-nr-nrm-externalamffunction.yang new file mode 100755 index 000000000..bfd30c58a --- /dev/null +++ b/yang-models/_3gpp-nr-nrm-externalamffunction.yang @@ -0,0 +1,69 @@ +module _3gpp-nr-nrm-externalamffunction { + yang-version 1.1; + namespace "urn:3gpp:sa5:_3gpp-nr-nrm-externalamffunction"; + prefix "extamf3gpp"; + + import _3gpp-common-managed-function { prefix mf3gpp; } + import _3gpp-common-subnetwork { prefix subnet3gpp; } + import _3gpp-nr-nrm-nrnetwork { prefix nrnet3gpp; } + import _3gpp-common-top { prefix top3gpp; } + import _3gpp-common-yang-types { prefix types3gpp; } + + organization "3GPP SA5"; + description "Defines the YANG mapping of the ExternalAMFFunction Information + Object Class (IOC) that is part of the NR Network Resource Model (NRM)."; + reference "3GPP TS 28.541 5G Network Resource Model (NRM)"; + + revision 2019-10-28 { reference S5-193518 ; } + revision 2019-06-17 { + description "Initial revision"; + } + + grouping ExternalAMFFunctionGrp { + description "Represents the ExternalAMFFunction IOC."; + reference "3GPP TS 28.541"; + uses mf3gpp:ManagedFunctionGrp; + + list pLMNIdList { + description "List of at most six entries of PLMN Identifiers, but at least + one (the primary PLMN Id). + The PLMN Identifier is composed of a Mobile Country Code (MCC) and a + Mobile Network Code (MNC)."; + min-elements 1; + max-elements 6; + key "mcc mnc"; + uses types3gpp:PLMNId; + } + + container aMFIdentifier { + presence true; + description "An AMF identifier, comprising an AMF Region ID, an AMF Set ID and an AMF Pointer."; + uses types3gpp:AmfIdentifier; + } + } + + grouping ExternalAMFFunctionWrapper { + list ExternalAMFFunction { + description "Represents the properties, known by the management + function, of a AMFFunction managed by another management + function."; + reference "3GPP TS 28.541"; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses ExternalAMFFunctionGrp; + } + uses mf3gpp:ManagedFunctionContainedClasses; + } + } + + augment "/subnet3gpp:SubNetwork" { + if-feature subnet3gpp:ExternalsUnderSubNetwork ; + uses ExternalAMFFunctionWrapper; + } + + augment "/nrnet3gpp:NRNetwork" { + if-feature nrnet3gpp:ExternalsUnderNRNetwork; + uses ExternalAMFFunctionWrapper; + } +} \ No newline at end of file diff --git a/yang-models/_3gpp-nr-nrm-externalenbfunction.yang b/yang-models/_3gpp-nr-nrm-externalenbfunction.yang new file mode 100755 index 000000000..7dab2e970 --- /dev/null +++ b/yang-models/_3gpp-nr-nrm-externalenbfunction.yang @@ -0,0 +1,60 @@ +module _3gpp-nr-nrm-externalenbfunction { + yang-version 1.1; + namespace "urn:3gpp:sa5:_3gpp-nr-nrm-externalenbfunction"; + prefix "extenb3gpp"; + + import _3gpp-common-managed-function { prefix mf3gpp; } + import _3gpp-nr-nrm-eutranetwork { prefix eutranet3gpp; } + import _3gpp-common-subnetwork { prefix subnet3gpp; } + import _3gpp-common-top { prefix top3gpp; } + + organization "3GPP SA5"; + description "Defines the YANG mapping of the ExternalENBFunction + Information Object Class (IOC) that is part of the NR Network Resource + Model (NRM)."; + reference "3GPP TS 28.541 5G Network Resource Model (NRM), + 3GPP TS 28.658 (E-UTRAN) Network Resource Model (NRM)"; + + revision 2019-10-28 { reference S5-193518 ; } + revision 2019-06-17 { + description "Initial revision"; + } + + grouping ExternalENBFunctionGrp { + description "Represets the ExternalENBFunction IOC."; + reference "3GPP TS 28.658"; + uses mf3gpp:ManagedFunctionGrp; + + leaf eNBId { + description "Unambiguously identifies an eNodeB within a PLMN."; + reference "3GPP TS 36.413, 3GPP TS 36.300"; + mandatory true; + type int32 { range "0..268435455"; } // Representing 28 bit eNB ID. + // 18, 20 and 21 bit eNB IDs also + // allowed. + } + } + + grouping ExternalENBFunctionWrapper { + list ExternalENBFunction { + description "Represents an external eNB functionality."; + reference "3GPP TS 28.658"; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses ExternalENBFunctionGrp; + } + uses mf3gpp:ManagedFunctionContainedClasses; + } + } + + augment "/subnet3gpp:SubNetwork" { + if-feature subnet3gpp:ExternalsUnderSubNetwork ; + uses ExternalENBFunctionWrapper; + } + + augment "/eutranet3gpp:EUtraNetwork" { + if-feature eutranet3gpp:ExternalsUnderEUtraNetwork; + uses ExternalENBFunctionWrapper; + } +} \ No newline at end of file diff --git a/yang-models/_3gpp-nr-nrm-externaleutrancell.yang b/yang-models/_3gpp-nr-nrm-externaleutrancell.yang new file mode 100755 index 000000000..df62f1c5f --- /dev/null +++ b/yang-models/_3gpp-nr-nrm-externaleutrancell.yang @@ -0,0 +1,153 @@ +module _3gpp-nr-nrm-externaleutrancell { + yang-version 1.1; + namespace "urn:3gpp:sa5:_3gpp-nr-nrm-externaleutrancell"; + prefix "exteutrancell3gpp"; + + import _3gpp-common-yang-types { prefix types3gpp; } + import _3gpp-common-managed-function { prefix mf3gpp; } + import _3gpp-common-subnetwork { prefix subnet3gpp; } + import _3gpp-nr-nrm-eutranetwork { prefix eutranet3gpp; } + import _3gpp-nr-nrm-externalenbfunction { prefix extenb3gpp; } + import _3gpp-common-top { prefix top3gpp; } + + organization "3GPP SA5"; + description "Defines the YANG mapping of the ExternalEUtranCellFDD and + ExternalEUtranCellTDD Information Object Classes (IOCs) that are part + of the NR Network Resource Model (NRM)."; + reference "3GPP TS 28.541 5G Network Resource Model (NRM), + 3GPP TS 28.658 (E-UTRAN) Network Resource Model (NRM)"; + + revision 2019-10-28 { reference S5-193518 ; } + revision 2019-06-17 { + description "Initial revision"; + } + + grouping ExternalEUtranGenericCellGrp { + description "Represents the ExternalEUtranGenericCell IOC."; + reference "3GPP TS 28.658"; + uses mf3gpp:ManagedFunctionGrp; + + leaf pci { + description "The Physical Cell Identity (PCI) of the cell (for + NM-Centralized, EM-Centralized and Distributed PCI assignment cases). + In the case of NM-Centralized PCI assignment, see 3GPP TS 36.300."; + reference "3GPP TS 36.211"; + mandatory true; + type int32 { range "0..503"; } + } + + list plmnIdList { + description "List of unique identities for PLMNs. A cell can broadcast + up to 6 PLMN IDs. This is to support the case that one cell can be + used by up to 6 operator's core networks. The PLMN(s) included in this + list will use the same single tracking area code (TAC) and the same + Cell Identity (cellLocalId) for sharing the radio access network + resources. One member of plmnIdList is the primary PLMN ID. A PLMN ID + included in this list cannot be included in the cellAccessInfoList. + The PLMN ID is composed of a Mobile Country Code (MCC) and a Mobile + Network Code (MNC)."; + reference "3GPP TS 36.300, 3GPP TS 36.331, 3GPP TS 23.003"; + key "mcc mnc"; + min-elements 1; + max-elements 6; + uses types3gpp:PLMNId; + } + + leaf cellLocalId { + description "Unambiguously identifies a cell within an eNodeB."; + reference "NCI defined in 3GPP TS 38.300"; + type int32 {range "0..255"; } + } + + leaf eNBId { + description "Unambiguously identifies an eNodeB within a PLMN."; + reference "3GPP TS 36.413, 3GPP TS 36.300"; + mandatory true; + type int32 { range "0..268435455"; } // Representing 28 bit eNB ID. + // 18, 20 and 21 bit eNB IDs also + // allowed. + } + } + + grouping ExternalEUtranCellFDDGrp { + description "Represents the ExternalEUtranCellFDD IOC."; + reference "3GPP TS 28.658"; + uses ExternalEUtranGenericCellGrp; + + leaf earfcnDL { + description "The channel number for the central DL frequency."; + reference "3GPP TS 36.101"; + mandatory true; + type int32 { range "0..17999 | 46590..262143"; } + } + + leaf earfcnUL { + description "The channel number for the central UL frequency. Value 0 + means that the UL channel number is N/A for the DL-only bands."; + reference "3GPP TS 36.101"; + mandatory true; + type int32 { range "0 | 18000..35999 | 46590..262143"; } + } + } + + grouping ExternalEUtranCellTDDGrp { + description "Represents the ExternalEUtranCellTDD IOC."; + reference "3GPP TS 28.658"; + uses ExternalEUtranGenericCellGrp; + + leaf earfcn { + description "The frequency number for the central frequency."; + reference "3GPP TS 36.104"; + mandatory true; + type int32 { range "36000..262143"; } + } + } + + grouping ExternalEUtranCellFDDWrapper { + list ExternalEUtranCellFDD { + description "Represents the common properties of external E-UTRAN FDD + cell provided by eNB or NG-RAN FDD cell provided by ng-eNB."; + reference "3GPP TS 28.658"; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses ExternalEUtranCellFDDGrp; + } + uses mf3gpp:ManagedFunctionContainedClasses; + } + } + + grouping ExternalEUtranCellTDDWrapper { + list ExternalEUtranCellTDD { + description "Represents the common properties of external E-UTRAN cell + TDD provided by eNB or NG-RAN TDD cell provided by ng-eNB."; + reference "3GPP TS 28.658"; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses ExternalEUtranCellTDDGrp; + } + uses mf3gpp:ManagedFunctionContainedClasses; + } + } + + augment "/subnet3gpp:SubNetwork/extenb3gpp:ExternalENBFunction" { + if-feature subnet3gpp:ExternalsUnderSubNetwork; + uses ExternalEUtranCellFDDWrapper; + } + + augment "/eutranet3gpp:EUtraNetwork/extenb3gpp:ExternalENBFunction" { + if-feature eutranet3gpp:ExternalsUnderEUtraNetwork; + uses ExternalEUtranCellFDDWrapper; + } + + augment "/subnet3gpp:SubNetwork/extenb3gpp:ExternalENBFunction" { + if-feature subnet3gpp:ExternalsUnderSubNetwork; + uses ExternalEUtranCellTDDWrapper; + } + + augment "/eutranet3gpp:EUtraNetwork/extenb3gpp:ExternalENBFunction" { + if-feature eutranet3gpp:ExternalsUnderEUtraNetwork; + uses ExternalEUtranCellTDDWrapper; + } +} \ No newline at end of file diff --git a/yang-models/_3gpp-nr-nrm-externalgnbcucpfunction.yang b/yang-models/_3gpp-nr-nrm-externalgnbcucpfunction.yang new file mode 100755 index 000000000..531e45bed --- /dev/null +++ b/yang-models/_3gpp-nr-nrm-externalgnbcucpfunction.yang @@ -0,0 +1,76 @@ +module _3gpp-nr-nrm-externalgnbcucpfunction { + yang-version 1.1; + namespace "urn:3gpp:sa5:_3gpp-nr-nrm-externalgnbcucpfunction"; + prefix "extgnbcucp3gpp"; + + import _3gpp-common-yang-types { prefix types3gpp; } + import _3gpp-common-managed-function { prefix mf3gpp; } + import _3gpp-nr-nrm-nrnetwork { prefix nrnet3gpp; } + import _3gpp-common-subnetwork { prefix subnet3gpp; } + import _3gpp-common-top { prefix top3gpp; } + + organization "3GPP SA5"; + description "Defines the YANG mapping of the ExternalGNBCUCPFunction + Information Object Class (IOC), that is part of the NR Network Resource + Model (NRM)."; + reference "3GPP TS 28.541 5G Network Resource Model (NRM)"; + + revision 2019-10-28 { reference S5-193518 ; } + revision 2019-06-17 { + description "Initial revision"; + } + + grouping ExternalGNBCUCPFunctionGrp { + description "Represets the ExternalGNBCUCPFunction IOC."; + reference "3GPP TS 28.541"; + uses mf3gpp:ManagedFunctionGrp; + + leaf gNBId { + description "Identifies a gNB within a PLMN."; + reference "gNB Identifier (gNB ID) in 3GPP TS 38.300, Global gNB ID + in 3GPP TS 38.413"; + mandatory true; + type int64 { range "0..4294967295"; } + } + + leaf gNBIdLength { + description "Indicates the number of bits for encoding the gNB ID."; + reference "gNB ID in 3GPP TS 38.300, Global gNB ID in 3GPP TS 38.413"; + mandatory true; + type int32 { range "22..32"; } + } + + list pLMNId { + description "Specifies the PLMN identifier to be used as part of the + global RAN node identity."; + key "mcc mnc"; + min-elements 1; + max-elements 1; + uses types3gpp:PLMNId; + } + } + + grouping ExternalGNBCUCPFunctionWrapper { + list ExternalGNBCUCPFunction { + description "Represents the properties, known by the management function, + of a GNBCUCPFunction managed by another management function."; + reference "3GPP TS 28.541"; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses ExternalGNBCUCPFunctionGrp; + } + uses mf3gpp:ManagedFunctionContainedClasses; + } + } + + augment "/subnet3gpp:SubNetwork" { + if-feature subnet3gpp:ExternalsUnderSubNetwork ; + uses ExternalGNBCUCPFunctionWrapper; + } + + augment "/nrnet3gpp:NRNetwork" { + if-feature nrnet3gpp:ExternalsUnderNRNetwork; + uses ExternalGNBCUCPFunctionWrapper; + } +} \ No newline at end of file diff --git a/yang-models/_3gpp-nr-nrm-externalgnbcuupfunction.yang b/yang-models/_3gpp-nr-nrm-externalgnbcuupfunction.yang new file mode 100755 index 000000000..bcdeecbcc --- /dev/null +++ b/yang-models/_3gpp-nr-nrm-externalgnbcuupfunction.yang @@ -0,0 +1,66 @@ +module _3gpp-nr-nrm-externalgnbcuupfunction { + yang-version 1.1; + namespace "urn:3gpp:sa5:_3gpp-nr-nrm-externalgnbcuupfunction"; + prefix "extgnbcuup3gpp"; + + import _3gpp-common-managed-function { prefix mf3gpp; } + import _3gpp-nr-nrm-nrnetwork { prefix nrnet3gpp; } + import _3gpp-common-subnetwork { prefix subnet3gpp; } + import _3gpp-common-top { prefix top3gpp; } + + organization "3GPP SA5"; + description "Defines the YANG mapping of the ExternalGNBCUUPFunction + Information Object Class (IOC), that is part of the NR Network + Resource Model (NRM)."; + reference "3GPP TS 28.541 5G Network Resource Model (NRM)"; + + revision 2019-10-28 { reference S5-193518 ; } + revision 2019-06-17 { + description "Initial revision"; + } + + grouping ExternalGNBCUUPFunctionGrp { + description "Represets the ExternalGNBCUUPFunction IOC."; + reference "3GPP TS 28.541"; + uses mf3gpp:ManagedFunctionGrp; + + leaf gNBId { + description "Identifies a gNB within a PLMN."; + reference "gNB Identifier (gNB ID) in 3GPP TS 38.300, Global gNB ID + in 3GPP TS 38.413"; + mandatory true; + type int64 { range "0..4294967295"; } + } + + leaf gNBIdLength { + description "Indicates the number of bits for encoding the gNB ID."; + reference "gNB ID in 3GPP TS 38.300, Global gNB ID in 3GPP TS 38.413"; + mandatory true; + type int32 { range "22..32"; } + } + } + + grouping ExternalGNBCUUPFunctionWrapper { + list ExternalGNBCUUPFunction { + description "Represents the properties, known by the management function, + of a GNBCUUPFunction managed by another management function."; + reference "3GPP TS 28.541"; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses ExternalGNBCUUPFunctionGrp; + } + uses mf3gpp:ManagedFunctionContainedClasses; + } + } + + augment "/subnet3gpp:SubNetwork" { + if-feature subnet3gpp:ExternalsUnderSubNetwork ; + uses ExternalGNBCUUPFunctionWrapper; + } + + augment "/nrnet3gpp:NRNetwork" { + if-feature nrnet3gpp:ExternalsUnderNRNetwork; + uses ExternalGNBCUUPFunctionWrapper; + } +} \ No newline at end of file diff --git a/yang-models/_3gpp-nr-nrm-externalgnbdufunction.yang b/yang-models/_3gpp-nr-nrm-externalgnbdufunction.yang new file mode 100755 index 000000000..844933025 --- /dev/null +++ b/yang-models/_3gpp-nr-nrm-externalgnbdufunction.yang @@ -0,0 +1,76 @@ +module _3gpp-nr-nrm-externalgnbdufunction { + yang-version 1.1; + namespace "urn:3gpp:sa5:_3gpp-nr-nrm-externalgnbdufunction"; + prefix "extgnbdu3gpp"; + + import _3gpp-common-yang-types { prefix types3gpp; } + import _3gpp-common-managed-function { prefix mf3gpp; } + import _3gpp-nr-nrm-nrnetwork { prefix nrnet3gpp; } + import _3gpp-common-subnetwork { prefix subnet3gpp; } + import _3gpp-common-top { prefix top3gpp; } + + organization "3GPP SA5"; + description "Defines the YANG mapping of the ExternalGNBDUFunction + Information Object Class (IOC) that is part of the NR Network Resource + Model (NRM)."; + reference "3GPP TS 28.541 5G Network Resource Model (NRM)"; + + revision 2019-10-28 { reference S5-193518 ; } + revision 2019-06-17 { + description "Initial revision"; + } + + grouping ExternalGNBDUFunctionGrp { + description "Represets the ExternalGNBDUFunction IOC."; + reference "3GPP TS 28.541"; + uses mf3gpp:ManagedFunctionGrp; + + leaf gNBId { + description "Identifies a gNB within a PLMN."; + reference "gNB Identifier (gNB ID) in 3GPP TS 38.300, Global gNB ID + in 3GPP TS 38.413"; + mandatory true; + type int64 { range "0..4294967295"; } + } + + leaf gNBIdLength { + description "Indicates the number of bits for encoding the gNB ID."; + reference "gNB ID in 3GPP TS 38.300, Global gNB ID in 3GPP TS 38.413"; + mandatory true; + type int32 { range "22..32"; } + } + + list pLMNId { + description "Specifies the PLMN identifier to be used as part of the + global RAN node identity."; + key "mcc mnc"; + min-elements 1; + max-elements 1; + uses types3gpp:PLMNId; + } + } + + grouping ExternalGNBDUFunctionWrapper { + list ExternalGNBDUFunction { + description "Represents the properties, known by the management function, + of a GNBDUFunction managed by another management function."; + reference "3GPP TS 28.541"; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses ExternalGNBDUFunctionGrp; + } + uses mf3gpp:ManagedFunctionContainedClasses; + } + } + + augment "/subnet3gpp:SubNetwork" { + if-feature subnet3gpp:ExternalsUnderSubNetwork ; + uses ExternalGNBDUFunctionWrapper; + } + + augment "/nrnet3gpp:NRNetwork" { + if-feature nrnet3gpp:ExternalsUnderNRNetwork; + uses ExternalGNBDUFunctionWrapper; + } +} \ No newline at end of file diff --git a/yang-models/_3gpp-nr-nrm-externalnrcellcu.yang b/yang-models/_3gpp-nr-nrm-externalnrcellcu.yang new file mode 100755 index 000000000..78e4671f0 --- /dev/null +++ b/yang-models/_3gpp-nr-nrm-externalnrcellcu.yang @@ -0,0 +1,85 @@ +module _3gpp-nr-nrm-externalnrcellcu { + yang-version 1.1; + namespace "urn:3gpp:sa5:_3gpp-nr-nrm-externalnrcellcu"; + prefix "extnrcellcu3gpp"; + + import _3gpp-common-yang-types { prefix types3gpp; } + import _3gpp-common-managed-function { prefix mf3gpp; } + import _3gpp-nr-nrm-nrnetwork { prefix nrnet3gpp; } + import _3gpp-common-subnetwork { prefix subnet3gpp; } + import _3gpp-nr-nrm-externalgnbcucpfunction { prefix extgnbcucp3gpp; } + import _3gpp-common-top { prefix top3gpp; } + + organization "3GPP SA5"; + description "Defines the YANG mapping of the ExternalNRCellCU Information + Object Class (IOC), that is part of the NR Network Resource Model (NRM)."; + reference "3GPP TS 28.541 5G Network Resource Model (NRM)"; + + revision 2019-10-28 { reference S5-193518 ; } + + revision 2019-06-17 { + description "Initial revision"; + } + + grouping ExternalNRCellCUGrp { + description "Represents the ExternalNRCellCU IOC."; + reference "3GPP TS 28.541"; + uses mf3gpp:ManagedFunctionGrp; + + leaf cellLocalId { + description "Identifies an NR cell of a gNB. Together with corresponding + gNB ID it forms the NR Cell Identifier (NCI)."; + reference "NCI in 3GPP TS 38.300"; + mandatory true; + type int32 {range "0..16383"; } + } + + leaf nRPCI { + description "The Physical Cell Identity (PCI) of the NR cell."; + reference "3GPP TS 36.211"; + mandatory true; + type int32 { range "0..1007"; } + } + + list pLMNIdList { + description "Defines which PLMNs that are assumed to be served by the + NR cell in another gNB CU-CP. This list is either updated by the + managed element itself (e.g. due to ANR, signalling over Xn, etc.) or + by consumer over the standard interface."; + key "mcc mnc"; + min-elements 1; + max-elements 12; + uses types3gpp:PLMNId; + } + + leaf nRFrequencyRef { + description "Reference to corresponding NRFrequency instance."; + mandatory true; + type types3gpp:DistinguishedName; + } + } + + grouping ExternalNRCellCUWrapper { + list ExternalNRCellCU { + description "Represents the properties of an NRCellCU controlled by + another Management Service Provider."; + reference "3GPP TS 28.541"; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses ExternalNRCellCUGrp; + } + uses mf3gpp:ManagedFunctionContainedClasses; + } + } + + augment "/subnet3gpp:SubNetwork/extgnbcucp3gpp:ExternalGNBCUCPFunction" { + if-feature subnet3gpp:ExternalsUnderSubNetwork ; + uses ExternalNRCellCUWrapper; + } + + augment "/nrnet3gpp:NRNetwork/extgnbcucp3gpp:ExternalGNBCUCPFunction" { + if-feature nrnet3gpp:ExternalsUnderNRNetwork; + uses ExternalNRCellCUWrapper; + } +} \ No newline at end of file diff --git a/yang-models/_3gpp-nr-nrm-externalservinggwfunction.yang b/yang-models/_3gpp-nr-nrm-externalservinggwfunction.yang new file mode 100755 index 000000000..96f51bd22 --- /dev/null +++ b/yang-models/_3gpp-nr-nrm-externalservinggwfunction.yang @@ -0,0 +1,52 @@ +module _3gpp-nr-nrm-externalservinggwfunction { + yang-version 1.1; + namespace "urn:3gpp:sa5:_3gpp-nr-nrm-externalservinggwfunction"; + prefix "extservgw3gpp"; + + import _3gpp-common-managed-function { prefix mf3gpp; } + import _3gpp-common-subnetwork { prefix subnet3gpp; } + import _3gpp-nr-nrm-eutranetwork { prefix eutranet3gpp; } + import _3gpp-common-top { prefix top3gpp; } + + organization "3GPP SA5"; + description "Defines the YANG mapping of the ExternalServingGWFunction + Information Object Class (IOC) that is part of the NR Network Resource + Model (NRM)."; + reference "3GPP TS 28.541 5G Network Resource Model (NRM)"; + + revision 2019-10-28 { reference S5-193518 ; } + revision 2019-06-17 { + description "Initial revision"; + } + + grouping ExternalServingGWFunctionGrp { + description "Represents the ExternalServingGWFunction IOC."; + reference "3GPP TS 28.541"; + uses mf3gpp:ManagedFunctionGrp; + } + + grouping ExternalServingGWFunctionWrapper { + list ExternalServingGWFunction { + description "Represents the properties, known by the management + function, of a ServingGWFunction managed by another management + function."; + reference "3GPP TS 28.658"; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses ExternalServingGWFunctionGrp; + } + uses mf3gpp:ManagedFunctionContainedClasses; + } + } + + augment "/subnet3gpp:SubNetwork" { + if-feature subnet3gpp:ExternalsUnderSubNetwork ; + uses ExternalServingGWFunctionWrapper; + } + + augment "/eutranet3gpp:EUtraNetwork" { + if-feature eutranet3gpp:ExternalsUnderEUtraNetwork; + uses ExternalServingGWFunctionWrapper; + } +} \ No newline at end of file diff --git a/yang-models/_3gpp-nr-nrm-externalupffunction.yang b/yang-models/_3gpp-nr-nrm-externalupffunction.yang new file mode 100755 index 000000000..1175c8c60 --- /dev/null +++ b/yang-models/_3gpp-nr-nrm-externalupffunction.yang @@ -0,0 +1,51 @@ +module _3gpp-nr-nrm-externalupffunction { + yang-version 1.1; + namespace "urn:3gpp:sa5:_3gpp-nr-nrm-externalupffunction"; + prefix "extupf3gpp"; + + import _3gpp-common-managed-function { prefix mf3gpp; } + import _3gpp-common-subnetwork { prefix subnet3gpp; } + import _3gpp-nr-nrm-nrnetwork { prefix nrnet3gpp; } + import _3gpp-common-top { prefix top3gpp; } + + organization "3GPP SA5"; + description "Defines the YANG mapping of the ExternalUPFFunction Information + Object Class (IOC) that is part of the NR Network Resource Model (NRM)."; + reference "3GPP TS 28.541 5G Network Resource Model (NRM)"; + + revision 2019-10-28 { reference S5-193518 ; } + revision 2019-06-17 { + description "Initial revision"; + } + + grouping ExternalUPFFunctionGrp { + description "Represents the ExternalUPFFunction IOC."; + reference "3GPP TS 28.541"; + uses mf3gpp:ManagedFunctionGrp; + } + + grouping ExternalUPFFunctionWrapper { + list ExternalUPFFunction { + description "Represents the properties, known by the management + function, of a UPFFunction managed by another management + function."; + reference "3GPP TS 28.541"; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses ExternalUPFFunctionGrp; + } + uses mf3gpp:ManagedFunctionContainedClasses; + } + } + + augment "/subnet3gpp:SubNetwork" { + if-feature subnet3gpp:ExternalsUnderSubNetwork ; + uses ExternalUPFFunctionWrapper; + } + + augment "/nrnet3gpp:NRNetwork" { + if-feature nrnet3gpp:ExternalsUnderNRNetwork; + uses ExternalUPFFunctionWrapper; + } +} \ No newline at end of file diff --git a/yang-models/_3gpp-nr-nrm-gnbcucpfunction.yang b/yang-models/_3gpp-nr-nrm-gnbcucpfunction.yang new file mode 100755 index 000000000..8e8d2adf3 --- /dev/null +++ b/yang-models/_3gpp-nr-nrm-gnbcucpfunction.yang @@ -0,0 +1,132 @@ +module _3gpp-nr-nrm-gnbcucpfunction { + yang-version 1.1; + namespace "urn:3gpp:sa5:_3gpp-nr-nrm-gnbcucpfunction"; + prefix "gnbcucp3gpp"; + + import _3gpp-common-yang-types { prefix types3gpp; } + import _3gpp-common-managed-function { prefix mf3gpp; } + import _3gpp-common-managed-element { prefix me3gpp; } + import _3gpp-common-top { prefix top3gpp; } + import _3gpp-nr-nrm-rrmpolicy { prefix nrrrmpolicy3gpp; } + + organization "3GPP SA5"; + contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; + description "Defines the YANG mapping of the GNBCUCPFunction Information + Object Class (IOC) that is part of the NR Network Resource Model (NRM)."; + reference "3GPP TS 28.541 5G Network Resource Model (NRM)"; + + revision 2020-10-02 { reference CR-0384 ; } + revision 2020-08-06 { reference "CR-0333"; } + revision 2020-08-03 { reference "CR-0321"; } + revision 2020-06-03 { reference "CR-0286"; } + revision 2020-05-08 { reference S5-203316 ; } + revision 2020-04-28 { reference "0260"; } + revision 2020-02-14 { reference S5-20XXXX ; } + revision 2019-10-28 { reference S5-193518 ; } + revision 2019-06-17 { + description "Initial revision"; + } + + feature DESManagementFunction { + description "Classs representing Distributed SON or Domain-Centralized SON Energy Saving feature"; + } + + feature DANRManagementFunction { + description "Classs representing D-SON function of ANR Management feature"; + } + + + feature DMROFunction { + description "Classs representing D-SON function of MRO feature"; + } + + grouping GNBCUCPFunctionGrp { + description "Represents the GNBCUCPFunction IOC."; + reference "3GPP TS 28.541"; + uses mf3gpp:ManagedFunctionGrp; + uses nrrrmpolicy3gpp:RRMPolicy_Grp; + + leaf gNBId { + description "Identifies a gNB within a PLMN. The gNB Identifier (gNB ID) + is part of the NR Cell Identifier (NCI) of the gNB cells."; + reference "gNB ID in 3GPP TS 38.300, Global gNB ID in 3GPP TS 38.413"; + mandatory true; + type int64 { range "0..4294967295"; } + } + + leaf gNBIdLength { + description "Indicates the number of bits for encoding the gNB ID."; + reference "gNB ID in 3GPP TS 38.300, Global gNB ID in 3GPP TS 38.413"; + mandatory true; + type int32 { range "22..32"; } + } + + leaf gNBCUName { + description "Identifies the Central Unit of an gNB."; + reference "3GPP TS 38.473"; + mandatory true; + type string { length "1..150"; } + } + + list pLMNId { + description "The PLMN identifier to be used as part of the global RAN + node identity."; + key "mcc mnc"; + min-elements 1; + max-elements 1; + uses types3gpp:PLMNId; + } + + leaf-list x2BlackList { + type string; + description "List of nodes to which X2 connections are prohibited."; + } + + leaf-list x2WhiteList { + type string; + description "List of nodes to which X2 connections are enforced."; + } + + leaf-list xnBlackList { + type string; + description "List of nodes to which Xn connections are prohibited."; + } + + leaf-list xnWhiteList { + type string; + description "List of nodes to which X2 connections are enforced."; + } + + leaf-list xnHOBlackList { + type string; + description "List of nodes to which handovers over Xn are prohibited."; + } + leaf configurable5QISetRef { + type types3gpp:DistinguishedName; + description "DN of the Configurable5QISet that the GNBCUCPFunction supports (is associated to)."; + } + + leaf-list x2HOBlackList { + type string; + description "List of nodes to which handovers over X2 are prohibited."; + } + leaf dynamic5QISetRef { + type types3gpp:DistinguishedName; + description "DN of the Dynamic5QISet that the GNBCUCPFunction supports (is associated to)."; + } + } + + augment "/me3gpp:ManagedElement" { + + list GNBCUCPFunction { + description "Represents the logical function CU-CP of gNB and en-gNB."; + reference "3GPP TS 28.541"; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses GNBCUCPFunctionGrp; + } + uses mf3gpp:ManagedFunctionContainedClasses; + } + } +} \ No newline at end of file diff --git a/yang-models/_3gpp-nr-nrm-gnbcuupfunction.yang b/yang-models/_3gpp-nr-nrm-gnbcuupfunction.yang new file mode 100755 index 000000000..944da20a7 --- /dev/null +++ b/yang-models/_3gpp-nr-nrm-gnbcuupfunction.yang @@ -0,0 +1,172 @@ +module _3gpp-nr-nrm-gnbcuupfunction { + yang-version 1.1; + namespace "urn:3gpp:sa5:_3gpp-nr-nrm-gnbcuupfunction"; + prefix "gnbcuup3gpp"; + + import _3gpp-common-yang-types { prefix types3gpp; } + import _3gpp-common-managed-function { prefix mf3gpp; } + import _3gpp-common-managed-element { prefix me3gpp; } + import _3gpp-common-top { prefix top3gpp; } + import _3gpp-nr-nrm-rrmpolicy { prefix nrrrmpolicy3gpp; } + import _3gpp-5g-common-yang-types { prefix types5g3gpp; } + + organization "3GPP SA5"; + contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; + description "Defines the YANG mapping of the GNBCUUPFunction Information + Object Class (IOC) that is part of the NR Network Resource Model (NRM)."; + reference "3GPP TS 28.541 5G Network Resource Model (NRM)"; + + revision 2020-11-05 { reference CR-0412 ; } + revision 2020-08-06 { reference "CR-0333"; } + revision 2020-08-03 { reference "CR-0321"; } + revision 2020-06-03 { reference "CR-0286"; } + revision 2020-05-28 { reference "CR-0318"; } + revision 2020-03-12 { reference "SP-200233 S5-201547"; } + revision 2020-02-14 { reference S5-20XXXX ; } + revision 2019-10-28 { reference S5-193518 ; } + revision 2019-08-21 { reference "Initial revision"; } + + grouping TAIGrp { + description "Tracking Area Identity"; + + list pLMNId { + key "mcc mnc"; + description "PLMN IDs for the Tracking area"; + uses types3gpp:PLMNId; + } + + leaf nRTAC { + type int64; + description "Identity of the common Tracking Area Code for the PLMNs + allowedValues: + a) It is the TAC or Extended-TAC. + b) A cell can only broadcast one TAC or Extended-TAC. + See TS 36.300, subclause 10.1.7 (PLMNID and TAC relation). + c) TAC is defined in subclause 19.4.2.3 of 3GPP TS 23.003 and + Extended-TAC is defined in subclause 9.3.1.29 of 3GPP TS 38.473. + d) For a 5G SA (Stand Alone), it has a non-null value."; + } + } + + grouping BackhaulAddressGrp { + description "Indicates the backhauladdress of gNB."; + + leaf gNBId { + type uint32 { + range "0..4294967295"; + } + description "It identifies a gNB within a PLMN. The gNB ID is part of + the NR Cell Identifier (NCI) of the gNB cells."; + reference "gNB Identifier (gNB ID) of subclause 8.2 of TS 38.300. + Global gNB ID in subclause 9.3.1.6 of TS 38.413"; + } + + list tAI { + key nRTAC; + min-elements 1; + max-elements 1; + description "Tracking Area Identity"; + reference "subclause 9.3.3.11 in TS 38.413"; + uses TAIGrp; + } + } + + grouping MappingSetIDBackhaulAddressGrp { + description "Mapping relationship between setID and backhaulAddress of gNB"; + + leaf idx { + type uint32 ; + description "ID value"; + } + + leaf setID { + type uint32; + mandatory true; + description "Indicates the setID of gNB."; + reference "Subclause 7.4.1.6 in TS 38.211"; + } + + list backhaulAddress { + key gNBId; + min-elements 1; + max-elements 1; + description "Indicates the backhauladdress of gNB."; + uses BackhaulAddressGrp; + } + } + grouping GNBCUUPFunctionGrp { + description "Represents the GNBCUUPFunction IOC."; + reference "3GPP TS 28.541"; + uses mf3gpp:ManagedFunctionGrp; + uses nrrrmpolicy3gpp:RRMPolicy_Grp; + + leaf gNBCUUPId { + type uint64 { + range "0..68719476735" ; + } + config false; + mandatory true; + description "Identifies the gNB-CU-UP at least within a gNB-CU-CP"; + reference "'gNB-CU-UP ID' in subclause 9.3.1.15 of 3GPP TS 38.463"; + } + + leaf gNBId { + type uint32; + mandatory true; + description "Identifies a gNB within a PLMN. The gNB ID is part of the + NR Cell Identifier (NCI) of the gNB cells. "; + reference "gNB Identifier (gNB ID) of subclause 8.2 of TS 38.300. + Global gNB ID in subclause 9.3.1.6 of TS 38.413"; + } + + leaf gNBIdLength { + mandatory true; + type int32 { range "22..32"; } + description "Indicates the number of bits for encoding the gNB Id."; + reference "gNB Id in 3GPP TS 38.300, Global gNB ID in 3GPP TS 38.413"; + } + + list pLMNInfoList { + description "The PLMNInfoList is a list of PLMNInfo data type. It + defines which PLMNs that can be served by the GNBCUUPFunction and + which S-NSSAIs can be supported by the GNBCUUPFunction for + corresponding PLMN in case of network slicing feature is supported"; + key "mcc mnc sd sst"; + uses types5g3gpp:PLMNInfo; + } + + list mappingSetIDBackhaulAddressList { + key idx; + description "Specifies a list of mappingSetIDBackhaulAddress used to + retrieve the backhaul address of the victim set. + Must be present if Remote Interference Management function is + supported."; + uses MappingSetIDBackhaulAddressGrp; + } + + leaf configurable5QISetRef { + type types3gpp:DistinguishedName; + description "DN of the Configurable5QISet that the GNBCUUPFunction + supports (is associated to)."; + } + leaf dynamic5QISetRef { + type types3gpp:DistinguishedName; + description "DN of the Dynamic5QISet that the GNBCUUPFunction + supports (is associated to)."; + } + } + + augment "/me3gpp:ManagedElement" { + + list GNBCUUPFunction { + key id; + description "Represents the logical function CU-UP of gNB or en-gNB."; + reference "3GPP TS 28.541"; + uses top3gpp:Top_Grp; + container attributes { + uses GNBCUUPFunctionGrp; + } + uses mf3gpp:ManagedFunctionContainedClasses; + } + } +} \ No newline at end of file diff --git a/yang-models/_3gpp-nr-nrm-gnbdufunction.yang b/yang-models/_3gpp-nr-nrm-gnbdufunction.yang new file mode 100755 index 000000000..d317ae74e --- /dev/null +++ b/yang-models/_3gpp-nr-nrm-gnbdufunction.yang @@ -0,0 +1,93 @@ +module _3gpp-nr-nrm-gnbdufunction { + yang-version 1.1; + namespace "urn:3gpp:sa5:_3gpp-nr-nrm-gnbdufunction"; + prefix "gnbdu3gpp"; + + import _3gpp-common-managed-function { prefix mf3gpp; } + import _3gpp-common-managed-element { prefix me3gpp; } + import _3gpp-common-top { prefix top3gpp; } + import _3gpp-nr-nrm-rrmpolicy { prefix nrrrmpolicy3gpp; } + + organization "3GPP SA5"; + description "Defines the YANG mapping of the GNBDUFunction Information + Object Class (IOC) that is part of the NR Network Resource Model (NRM)."; + reference "3GPP TS 28.541 5G Network Resource Model (NRM)"; + + revision 2020-10-02 { reference CR-0384 ; } + revision 2020-03-12 { reference "SP-200233 S5-201547" ; } + revision 2020-02-14 { reference S5-20XXXX ; } + revision 2019-10-28 { reference S5-193518 ; } + revision 2019-08-21 { + description "Initial revision."; + } + + feature DRACHOptimizationFunction { + description "Classs representing D-SON function of RACH optimization +feature"; + } + + grouping GNBDUFunctionGrp { + description "Represents the GNBDUFunction IOC."; + reference "3GPP TS 28.541"; + uses mf3gpp:ManagedFunctionGrp; + uses nrrrmpolicy3gpp:RRMPolicy_Grp; + + leaf gNBId { + type int64 { range "0..4294967295"; } + config false; + mandatory true; + description "Identifies a gNB within a PLMN. The gNB Identifier (gNB ID) + is part of the NR Cell Identifier (NCI) of the gNB cells."; + reference "gNB ID in 3GPP TS 38.300, Global gNB ID in 3GPP TS 38.413"; + } + + leaf gNBIdLength { + type int32 { range "22..32"; } + mandatory true; + description "Indicates the number of bits for encoding the gNB ID."; + reference "gNB ID in 3GPP TS 38.300, Global gNB ID in 3GPP TS 38.413"; + } + + leaf gNBDUId { + type int64 { range "0..68719476735"; } + mandatory true; + description "Uniquely identifies the DU at least within a gNB."; + reference "3GPP TS 38.473"; + } + + leaf gNBDUName { + type string { length "1..150"; } + description "Identifies the Distributed Unit of an NR node"; + reference "3GPP TS 38.473"; + } + + leaf aggressorSetID { + type uint32 { range "0..4194304"; } + config false; + description "Indicates the associated aggressor gNB Set ID of the cell + Valid when Remote Interference Management function is supported."; + reference "3GPP TS 38.211 subclause 7.4.1.6"; + } + leaf victimSetID { + type uint32 { range "0..4194304"; } + config false; + description "Indicates the associated victim gNB Set ID of the cell + Valid when Remote Interference Management function is supported."; + reference "3GPP TS 38.211 subclause 7.4.1.6"; + } + } + + augment "/me3gpp:ManagedElement" { + + list GNBDUFunction { + key id; + description "Represents the logical function DU of gNB or en-gNB."; + reference "3GPP TS 28.541"; + uses top3gpp:Top_Grp; + container attributes { + uses GNBDUFunctionGrp; + } + uses mf3gpp:ManagedFunctionContainedClasses; + } + } +} \ No newline at end of file diff --git a/yang-models/_3gpp-nr-nrm-nrcellcu.yang b/yang-models/_3gpp-nr-nrm-nrcellcu.yang new file mode 100755 index 000000000..3aa5db4d5 --- /dev/null +++ b/yang-models/_3gpp-nr-nrm-nrcellcu.yang @@ -0,0 +1,93 @@ +module _3gpp-nr-nrm-nrcellcu { + yang-version 1.1; + namespace "urn:3gpp:sa5:_3gpp-nr-nrm-nrcellcu"; + prefix "nrcellcu3gpp"; + + import _3gpp-common-yang-types { prefix types3gpp; } + import _3gpp-common-managed-function { prefix mf3gpp; } + import _3gpp-common-managed-element { prefix me3gpp; } + import _3gpp-nr-nrm-gnbcucpfunction { prefix gnbcucp3gpp; } + import _3gpp-common-top { prefix top3gpp; } + import _3gpp-5g-common-yang-types { prefix types5g3gpp; } + + organization "3GPP SA5"; + contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; + description "Defines the YANG mapping of the NRCellCU Information Object + Class (IOC) that is part of the NR Network Resource Model (NRM)."; + reference "3GPP TS 28.541 5G Network Resource Model (NRM)"; + + revision 2021-01-25 { reference CR-0454 ; } + revision 2020-11-25 { reference CR-0386 ; } + revision 2020-11-05 { reference CR-0412 ; } + revision 2020-10-02 { reference CR-0384 ; } + revision 2020-05-08 { reference S5-203316 ; } + revision 2020-02-14 { reference S5-20XXXX ; } + revision 2019-10-28 { reference S5-193518 ; } + revision 2019-06-17 { reference "Initial revision"; } + + feature DPCIConfigurationFunction { + description "Class representing Distributed SON or Domain-Centralized SON + function of PCI configuration feature"; + } + + feature DESManagementFunction { + description "Class representing Distributed SON or Domain-Centralized SON + Energy Saving feature"; + } + + feature DMROFunction { + description "Class representing D-SON function of MRO feature"; + } + + feature CESManagementFunction { + description "Class representing Cross Domain-Centralized SON Energy Saving + feature"; + } + + grouping NRCellCUGrp { + description "Represents the NRCellCU IOC."; + reference "3GPP TS 28.541"; + uses mf3gpp:ManagedFunctionGrp; + + leaf cellLocalId { + description "Identifies an NR cell of a gNB. Together with corresponding + gNB ID it forms the NR Cell Identifier (NCI)."; + mandatory true; + type int32 { range "0..16383"; } + } + + list pLMNInfoList { + description "The PLMNInfoList is a list of PLMNInfo data type. It defines + which PLMNs that can be served by the NR cell, and which S-NSSAIs that + can be supported by the NR cell for corresponding PLMN in case of + network slicing feature is supported."; + // Note: Whether the attribute pLMNId in the pLMNInfo can be writable + // depends on the implementation. + key "mcc mnc sd sst"; + min-elements 1; + uses types5g3gpp:PLMNInfo; + } + + leaf nRFrequencyRef { + description "Reference to corresponding NRFrequency instance."; + config false; + type types3gpp:DistinguishedName; + } + } + + augment "/me3gpp:ManagedElement/gnbcucp3gpp:GNBCUCPFunction" { + + list NRCellCU { + description "Represents the information required by CU that is + responsible for the management of inter-cell mobility and neighbour + relations via ANR."; + reference "3GPP TS 28.541"; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses NRCellCUGrp; + } + uses mf3gpp:ManagedFunctionContainedClasses; + } + } +} \ No newline at end of file diff --git a/yang-models/_3gpp-nr-nrm-nrcelldu.yang b/yang-models/_3gpp-nr-nrm-nrcelldu.yang new file mode 100755 index 000000000..f81da5001 --- /dev/null +++ b/yang-models/_3gpp-nr-nrm-nrcelldu.yang @@ -0,0 +1,226 @@ +module _3gpp-nr-nrm-nrcelldu { + yang-version 1.1; + namespace "urn:3gpp:sa5:_3gpp-nr-nrm-nrcelldu"; + prefix "nrcelldu3gpp"; + + import _3gpp-common-yang-types { prefix types3gpp; } + import _3gpp-common-managed-function { prefix mf3gpp; } + import _3gpp-common-managed-element { prefix me3gpp; } + import _3gpp-common-top { prefix top3gpp; } + import _3gpp-nr-nrm-gnbdufunction { prefix gnbdu3gpp; } + import _3gpp-nr-nrm-rrmpolicy { prefix nrrrmpolicy3gpp; } + import _3gpp-5g-common-yang-types { prefix types5g3gpp; } + + + organization "3GPP SA5"; + contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; + description "Defines the YANG mapping of the NRCellDU Information Object + Class (IOC) that is part of the NR Network Resource Model (NRM)."; + reference "3GPP TS 28.541 5G Network Resource Model (NRM)"; + + revision 2021-01-25 { reference CR-0454 ; } + revision 2020-11-25 { reference CR-0386 ; } + revision 2020-11-05 { reference CR-0412 ; } + revision 2020-10-02 { reference CR-0384 ; } + revision 2020-05-08 { reference S5-203316 ; } + revision 2020-02-14 { reference S5-20XXXX ; } + revision 2019-10-28 { reference S5-193518 ; } + revision 2019-09-03 { reference "Initial revision"; } + + feature DRACHOptimizationFunction { + description "Class representing D-SON function of RACH optimization + feature"; + } + + feature CPCIConfigurationFunction { + description "Class representing Cross Domain-Centralized SON function of + PCI configuration feature"; + } + + grouping NRCellDUGrp { + description "Represents the NRCellDU IOC."; + reference "3GPP TS 28.541"; + uses mf3gpp:ManagedFunctionGrp; + uses nrrrmpolicy3gpp:RRMPolicy_Grp; + + leaf cellLocalId { + description "Identifies an NR cell of a gNB. Together with the + corresponding gNB identifier in forms the NR Cell Identity (NCI)."; + reference "NCI in 3GPP TS 38.300"; + mandatory true; + type int32 { range "0..16383"; } + } + + leaf operationalState { + description "Operational state of the NRCellDU instance. Indicates + whether the resource is installed and partially or fully operable + (ENABLED) or the resource is not installed or not operable + (DISABLED)."; + config false; + type types3gpp:OperationalState; + } + + leaf administrativeState { + description "Administrative state of the NRCellDU. Indicates the + permission to use or prohibition against using the cell, imposed + through the OAM services."; + type types3gpp:AdministrativeState; + default LOCKED; + } + + leaf cellState { + description "Cell state of the NRCellDU instance. Indicates whether the + cell is not currently in use (IDLE), or currently in use but not + configured to carry traffic (INACTIVE), or currently in use and is + configured to carry traffic (ACTIVE)."; + config false; + type types3gpp:CellState; + } + + list pLMNInfoList { + description "The PLMNInfoList is a list of PLMNInfo data type. It + defines which PLMNs that can be served by the NR cell, and which + S-NSSAIs that can be supported by the NR cell for corresponding PLMN + in case of network slicing feature is supported. The plMNId of the + first entry of the list is the PLMNId used to construct the nCGI for + the NR cell."; + key "mcc mnc sd sst"; + min-elements 1; + ordered-by user; + uses types5g3gpp:PLMNInfo; + } + + leaf nRPCI { + description "The Physical Cell Identity (PCI) of the NR cell."; + reference "3GPP TS 36.211"; + mandatory true; + type int32 { range "0..1007"; } + } + + leaf nRTAC { + description "The common 5GS Tracking Area Code for the PLMNs."; + reference "3GPP TS 23.003, 3GPP TS 38.473"; + type types3gpp:Tac; + } + + leaf arfcnDL { + description "NR Absolute Radio Frequency Channel Number (NR-ARFCN) for + downlink."; + reference "3GPP TS 38.104"; + mandatory true; + type int32; + } + + leaf arfcnUL { + description "NR Absolute Radio Frequency Channel Number (NR-ARFCN) for + uplink."; + reference "3GPP TS 38.104"; + type int32; + } + + leaf arfcnSUL { + description "NR Absolute Radio Frequency Channel Number (NR-ARFCN) for + supplementary uplink."; + reference "3GPP TS 38.104"; + type int32; + } + + leaf bSChannelBwDL { + description "Base station channel bandwidth for downlink."; + reference "3GPP TS 38.104"; + type int32; + units MHz; + } + + leaf bSChannelBwUL { + description "Base station channel bandwidth for uplink."; + reference "3GPP TS 38.104"; + type int32; + units MHz; + } + + leaf bSChannelBwSUL { + description "Base station channel bandwidth for supplementary uplink."; + reference "3GPP TS 38.104"; + type int32; + units MHz; + } + + leaf ssbFrequency { + description "Indicates cell defining SSB frequency domain position. + Frequency (in terms of NR-ARFCN) of the cell defining SSB transmission. + The frequency identifies the position of resource element RE=#0 + (subcarrier #0) of resource block RB#10 of the SS block. The frequency + must be positioned on the NR global frequency raster, as defined in + 3GPP TS 38.101-1, and within bSChannelBwDL."; + mandatory true; + type int32 { range "0..3279165"; } + } + + leaf ssbPeriodicity { + description "Indicates cell defined SSB periodicity. The SSB periodicity + is used for the rate matching purpose."; + mandatory true; + type int32 { range "5 | 10 | 20 | 40 | 80 | 160"; } + units "subframes (ms)"; + } + + leaf ssbSubCarrierSpacing { + description "Subcarrier spacing of SSB. Only the values 15 kHz or 30 kHz + (< 6 GHz), 120 kHz or 240 kHz (> 6 GHz) are applicable."; + reference "3GPP TS 38.211"; + mandatory true; + type int32 { range "15 | 30 | 120 | 240"; } + units kHz; + } + + leaf ssbOffset { + description "Indicates cell defining SSB time domain position. Defined + as the offset of the measurement window, in which to receive SS/PBCH + blocks, where allowed values depend on the ssbPeriodicity + (ssbOffset < ssbPeriodicity)."; + mandatory true; + type int32 { range "0..159"; } + units "subframes (ms)"; + } + + leaf ssbDuration { + description "Duration of the measurement window in which to receive + SS/PBCH blocks."; + reference "3GPP TS 38.213"; + mandatory true; + type int32 { range "1..5"; } + units "subframes (ms)"; + } + + leaf-list nRSectorCarrierRef { + description "Reference to corresponding NRSectorCarrier instance."; + min-elements 1; + type types3gpp:DistinguishedName; + } + + leaf-list bWPRef { + description "Reference to corresponding BWP instance."; + type types3gpp:DistinguishedName; + } + + leaf-list nRFrequencyRef { + description "Reference to corresponding NRFrequency instance."; + type types3gpp:DistinguishedName; + } + } + + augment "/me3gpp:ManagedElement/gnbdu3gpp:GNBDUFunction" { + + list NRCellDU { + description "Represents the information of a cell known by DU."; + reference "3GPP TS 28.541"; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses NRCellDUGrp; + } + uses mf3gpp:ManagedFunctionContainedClasses; + } + } +} \ No newline at end of file diff --git a/yang-models/_3gpp-nr-nrm-nrcellrelation.yang b/yang-models/_3gpp-nr-nrm-nrcellrelation.yang new file mode 100755 index 000000000..6e2a77b91 --- /dev/null +++ b/yang-models/_3gpp-nr-nrm-nrcellrelation.yang @@ -0,0 +1,144 @@ +module _3gpp-nr-nrm-nrcellrelation { + yang-version 1.1; + namespace "urn:3gpp:sa5:_3gpp-nr-nrm-nrcellrelation"; + prefix "nrcellrel3gpp"; + + import _3gpp-common-yang-types { prefix types3gpp; } + import _3gpp-common-managed-function { prefix mf3gpp; } + import _3gpp-common-managed-element { prefix me3gpp; } + import _3gpp-common-top { prefix top3gpp; } + import _3gpp-nr-nrm-gnbcucpfunction { prefix gnbcucp3gpp; } + import _3gpp-nr-nrm-nrcellcu { prefix nrcellcu3gpp; } + + organization "3GPP SA5"; + description "Defines the YANG mapping of the NRCellRelation Information + Object Class (IOC) that is part of the NR Network Resource Model (NRM)."; + reference "3GPP TS 28.541 5G Network Resource Model (NRM)"; + + revision 2021-01-25 { reference CR-0454 ; } + revision 2020-06-03 { reference S5-202333 ; } + revision 2020-04-23 { reference CR0281 ; } + revision 2019-10-28 { reference S5-193518 ; } + revision 2019-08-30 { + description "Initial revision"; + } + + + typedef EnergySavingCoverage { + type enumeration { + enum FULL; + enum NO; + enum PARTIAL; + } + } + + grouping NRCellRelationGrp { + description "Represents the NRCellRelation IOC."; + reference "3GPP TS 28.541"; + + leaf nRTCI { + description "Target NR Cell Identifier. It consists of NR Cell + Identifier (NCI) and Physical Cell Identifier of the target NR cell + (nRPCI)."; + type uint64; + } + + container cellIndividualOffset { + description "A set of offset values for the neighbour cell. Used when + UE is in connected mode. Defined for rsrpOffsetSSB, rsrqOffsetSSB, + sinrOffsetSSB, rsrpOffsetCSI-RS, rsrqOffsetCSI-RS and + sinrOffsetCSI-RS."; + reference "cellIndividualOffset in MeasObjectNR in 3GPP TS 38.331"; + + leaf rsrpOffsetSsb { + description "Offset value of rsrpOffsetSSB."; + default 0; + type types3gpp:QOffsetRange; + } + + leaf rsrqOffsetSsb{ + description "Offset value of rsrqOffsetSSB."; + default 0; + type types3gpp:QOffsetRange; + } + + leaf sinrOffsetSsb { + description "Offset value of sinrOffsetSSB."; + default 0; + type types3gpp:QOffsetRange; + } + + leaf rsrpOffsetCsiRs{ + description "Offset value of rsrpOffsetCSI-RS."; + default 0; + type types3gpp:QOffsetRange; + } + + leaf rsrqOffsetCsiRs { + description "Offset value of rsrqOffsetCSI-RS."; + default 0; + type types3gpp:QOffsetRange; + } + + leaf sinrOffsetCsiRs { + description "Offset value of sinrOffsetCSI-RS."; + default 0; + type types3gpp:QOffsetRange; + } + } + + leaf nRFreqRelationRef { + description "Reference to a corresponding NRFreqRelation instance."; + mandatory true; + type types3gpp:DistinguishedName; + } + + leaf adjacentNRCellRef { + description "Reference to an adjacent NR cell (NRCellCU or + ExternalNRCellCU)."; + mandatory true; + type types3gpp:DistinguishedName; + } + + leaf isRemoveAllowed { + type boolean; + default true; + description "True if the ANR function in the node is allowed to remove this relation."; + } + + leaf isHOAllowed { + type boolean; + default true; + description "True if handovers are allowed over this relation."; + } + + leaf isESCoveredBy { + description "Indicates whether the adjacent cell + provides no, partial or full coverage for the parent cell + instance. Adjacent cells with this attribute equal to FULL are + recommended to be considered as candidate cells to take over the + coverage when the original cell is about to be changed to energy + saving state. All adjacent cells with this property equal + to PARTIAL are recommended to be considered as entirety of candidate + cells to take over the coverage when the original cell is about to be + changed to energy saving state."; + type EnergySavingCoverage; + } + } + + augment /me3gpp:ManagedElement/gnbcucp3gpp:GNBCUCPFunction/nrcellcu3gpp:NRCellCU { + + list NRCellRelation { + description "Represents a neighbour cell relation from a source cell + to a target cell, where the target cell is an NRCellCU or + ExternalNRCellCU instance."; + reference "3GPP TS 28.541"; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses NRCellRelationGrp; + } + uses mf3gpp:ManagedFunctionContainedClasses; + } + } +} \ No newline at end of file diff --git a/yang-models/_3gpp-nr-nrm-nrfreqrelation.yang b/yang-models/_3gpp-nr-nrm-nrfreqrelation.yang new file mode 100755 index 000000000..3d25d85d0 --- /dev/null +++ b/yang-models/_3gpp-nr-nrm-nrfreqrelation.yang @@ -0,0 +1,245 @@ +module _3gpp-nr-nrm-nrfreqrelation { + yang-version 1.1; + namespace "urn:3gpp:sa5:_3gpp-nr-nrm-nrfreqrelation"; + prefix "nrfreqrel3gpp"; + + import _3gpp-common-yang-types { prefix types3gpp; } + import _3gpp-common-managed-function { prefix mf3gpp; } + import _3gpp-common-managed-element { prefix me3gpp; } + import _3gpp-common-top { prefix top3gpp; } + import _3gpp-nr-nrm-gnbcucpfunction { prefix gnbcucp3gpp; } + import _3gpp-nr-nrm-nrcellcu { prefix nrcellcu3gpp; } + + organization "3GPP SA5"; + description "Defines the YANG mapping of the NRFreqRelation Information + Object Class (IOC) that is part of the NR Network Resource Model (NRM)."; + reference "3GPP TS 28.541 5G Network Resource Model (NRM)"; + + revision 2020-04-23 { reference CR0281 ; } + revision 2019-10-28 { reference S5-193518 ; } + revision 2019-06-17 { + description "Initial revision"; + } + + grouping NRFreqRelationGrp { + description "Represents the NRFreqRelation IOC."; + reference "3GPP TS 28.541"; + + container offsetMO { + description "A set of offset values applicable to all measured cells + with reference signal(s) indicated in corresponding MeasObjectNR. It + is used to indicate a cell, beam or measurement object specific offset + to be applied when evaluating candidates for cell re-selection or when + evaluating triggering conditions for measurement reporting. It is + defined for rsrpOffsetSSB, rsrqOffsetSSB, sinrOffsetSSB, + rsrpOffsetCSI-RS, rsrqOffsetCSI-RS and sinrOffsetCSI-RS."; + reference "offsetMO in MeasObjectNR in 3GPP TS 38.331"; + + leaf rsrpOffsetSsb { + description "Offset value of rsrpOffsetSSB."; + default 0; + type types3gpp:QOffsetRange; + } + + leaf rsrqOffsetSsb { + description "Offset value of rsrqOffsetSSB."; + default 0; + type types3gpp:QOffsetRange; + } + + leaf sinrOffsetSsb { + description "Offset value of sinrOffsetSSB."; + default 0; + type types3gpp:QOffsetRange; + } + + leaf rsrpOffsetCsiRs { + description "Offset value of rsrpOffsetCSI-RS."; + default 0; + type types3gpp:QOffsetRange; + } + + leaf rsrqOffsetCsiRs { + description "Offset value of rsrqOffsetCSI-RS."; + default 0; + type types3gpp:QOffsetRange; + } + + leaf sinrOffsetCsiRs { + description "Offset value of sinrOffsetCSI-RS."; + default 0; + type types3gpp:QOffsetRange; + } + } + + leaf-list blackListEntry { + description "A list of Physical Cell Identities (PCIs) that are + blacklisted in NR measurements."; + reference "3GPP TS 38.331"; + min-elements 0; + type uint16 { range "0..1007"; } + } + + leaf-list blackListEntryIdleMode { + description "A list of Physical Cell Identities (PCIs) that are + blacklisted in SIB4 and SIB5."; + min-elements 0; + type uint16 { range "0..1007"; } + } + + leaf cellReselectionPriority { + description "The absolute priority of the carrier frequency used by the + cell reselection procedure. Value 0 means lowest priority. The value + must not already used by other RAT, i.e. equal priorities between RATs + are not supported. The UE behaviour when no value is entered is + specified in subclause 5.2.4.1 of 3GPP TS 38.304."; + reference "CellReselectionPriority in 3GPP TS 38.331, priority in + 3GPP TS 38.304"; + type uint32; + default 0; + } + + leaf cellReselectionSubPriority { + description "Indicates a fractional value to be added to the value of + cellReselectionPriority to obtain the absolute priority of the + concerned carrier frequency for E-UTRA and NR."; + reference "3GPP TS 38.331"; + type uint8 { range "2 | 4 | 6 | 8"; } + units "0.1"; + } + + leaf pMax { + description "Used for calculation of the parameter Pcompensation + (defined in 3GPP TS 38.304), at cell reselection to a cell."; + reference "PEMAX in 3GPP TS 38.101-1"; + mandatory false; + type int32 { range "-30..33"; } + units dBm; + } + + leaf qOffsetFreq { + description "The frequency specific offset applied when evaluating + candidates for cell reselection."; + mandatory false; + type types3gpp:QOffsetRange; + default 0; + } + + leaf qQualMin { + description "Indicates the minimum required quality level in the cell. + Value 0 means that it is not sent and UE applies in such case the + (default) value of negative infinity for Qqualmin. Sent in SIB3 or + SIB5."; + reference "3GPP TS 38.304"; + type int32 { range "-34..-3 | 0"; } + units dB; + default 0; + } + + leaf qRxLevMin { + description "Indicates the required minimum received Reference Symbol + Received Power (RSRP) level in the NR frequency for cell reselection. + Broadcast in SIB3 or SIB5, depending on whether the related frequency + is intra- or inter-frequency. Resolution is 2."; + reference "3GPP TS 38.304"; + mandatory true; + type int32 { range "-140..-44"; } + units dBm; + } + + leaf threshXHighP { + description "Specifies the Srxlev threshold used by the UE when + reselecting towards a higher priority RAT/frequency than the current + serving frequency. Each frequency of NR and E-UTRAN might have a + specific threshold. Resolution is 2."; + reference "ThreshX, HighP in 3GPP TS 38.304"; + mandatory true; + type int32 { range "0..62"; } + units dB; + } + + leaf threshXHighQ { + description "Specifies the Squal threshold used by the UE when + reselecting towards a higher priority RAT/frequency than the current + serving frequency. Each frequency of NR and E-UTRAN might have a + specific threshold."; + reference "ThreshX, HighQ in 3GPP TS 38.304"; + mandatory true; + type int32 { range "0..31"; } + units dB; + } + + leaf threshXLowP { + description "Specifies the Srxlev threshold used by the UE when + reselecting towards a lower priority RAT/frequency than the current + serving frequency. Each frequency of NR and E-UTRAN might have a + specific threshold. Resolution is 2."; + reference "ThreshX, LowP in 3GPP TS 38.304"; + mandatory true; + type int32 { range "0..62"; } + units dB; + } + + leaf threshXLowQ { + description "Specifies the Squal threshold used by the UE when + reselecting towards a lower priority RAT/frequency than the current + serving frequency. Each frequency of NR and E-UTRAN might have a + specific threshold."; + reference "ThreshX, LowQ in 3GPP TS 38.304"; + mandatory true; + type int32 { range "0..31"; } + units dB; + } + + leaf tReselectionNR { + description "Cell reselection timer for NR."; + reference "TreselectionRAT for NR in 3GPP TS 38.331"; + mandatory true; + type int32 { range "0..7"; } + units s; + } + + leaf tReselectionNRSfHigh { + description "The attribute tReselectionNr (parameter TreselectionNR in + 3GPP TS 38.304) is multiplied with this scaling factor if the UE is + in high mobility state."; + reference "Speed dependent ScalingFactor for TreselectionNR for high + mobility state in 3GPP TS 38.304"; + mandatory true; + type uint8 { range "25 | 50 | 75 | 100"; } + units %; + } + + leaf tReselectionNRSfMedium { + description "The attribute tReselectionNr (parameter TreselectionNR in + 3GPP TS 38.304) multiplied with this scaling factor if the UE is in + medium mobility state."; + reference "Speed dependent ScalingFactor for TreselectionNR for medium + mobility state in 3GPP TS 38.304"; + mandatory true; + type uint8 { range "25 | 50 | 75 | 100"; } + units %; + } + + leaf nRFrequencyRef { + description "Reference to a corresponding NRFrequency instance."; + mandatory true; + type types3gpp:DistinguishedName; + } + } + + augment /me3gpp:ManagedElement/gnbcucp3gpp:GNBCUCPFunction/nrcellcu3gpp:NRCellCU { + + list NRFreqRelation { + description "Together with the target NRFrequency, it represents the + frequency properties applicable to the referencing NRFreqRelation."; + reference "3GPP TS 28.541"; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses NRFreqRelationGrp; + } + uses mf3gpp:ManagedFunctionContainedClasses; + } + } +} \ No newline at end of file diff --git a/yang-models/_3gpp-nr-nrm-nrfrequency.yang b/yang-models/_3gpp-nr-nrm-nrfrequency.yang new file mode 100755 index 000000000..77c905ead --- /dev/null +++ b/yang-models/_3gpp-nr-nrm-nrfrequency.yang @@ -0,0 +1,71 @@ +module _3gpp-nr-nrm-nrfrequency { + yang-version 1.1; + namespace "urn:3gpp:sa5:_3gpp-nr-nrm-nrnetwork-nrfrequency"; + prefix "nrfreq3gpp"; + + import _3gpp-common-managed-function { prefix mf3gpp; } + import _3gpp-nr-nrm-nrnetwork { prefix nrnet3gpp; } + import _3gpp-common-subnetwork { prefix subnet3gpp; } + import _3gpp-common-top { prefix top3gpp; } + + organization "3GPP SA5"; + description "Defines the YANG mapping of the NRFrequency Information Object + Class (IOC) that is part of the NR Network Resource Model (NRM)."; + reference "3GPP TS 28.541 5G Network Resource Model (NRM)"; + + revision 2019-10-28 { reference S5-193518 ; } + revision 2019-06-17 { + description "Initial revision"; + } + + grouping NRFrequencyGrp { + description "Represents the NRFrequency IOC."; + reference "3GPP TS 28.541"; + uses mf3gpp:ManagedFunctionGrp; + + leaf absoluteFrequencySSB { + description "The absolute frequency applicable for a downlink NR carrier + frequency associated with the SSB, in terms of NR-ARFCN."; + mandatory true; + type uint32 { range "0.. 3279165"; } + } + + leaf sSBSubCarrierSpacing { + description "Sub-carrier spacing of the SSB."; + mandatory true; + type uint8 { range "15 | 30 | 60 | 120"; } + units "kHz"; + } + + leaf-list multiFrequencyBandListNR { + description "List of additional frequency bands the frequency belongs to. + The list is automatically set by the gNB."; + config false; + min-elements 0; + type uint16 { range "1..256"; } + } + } + + grouping NRFrequencyWrapper { + list NRFrequency { + description "Represents certain NR frequency properties."; + reference "3GPP TS 28.541"; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses NRFrequencyGrp; + } + uses mf3gpp:ManagedFunctionContainedClasses; + } + } + + augment "/subnet3gpp:SubNetwork" { + if-feature subnet3gpp:ExternalsUnderSubNetwork ; + uses NRFrequencyWrapper; + } + + augment "/nrnet3gpp:NRNetwork" { + if-feature nrnet3gpp:ExternalsUnderNRNetwork; + uses NRFrequencyWrapper; + } +} \ No newline at end of file diff --git a/yang-models/_3gpp-nr-nrm-nrnetwork.yang b/yang-models/_3gpp-nr-nrm-nrnetwork.yang new file mode 100755 index 000000000..0e0bfc559 --- /dev/null +++ b/yang-models/_3gpp-nr-nrm-nrnetwork.yang @@ -0,0 +1,39 @@ +module _3gpp-nr-nrm-nrnetwork { + yang-version 1.1; + namespace "urn:3gpp:sa5:_3gpp-nr-nrm-nrnetwork"; + prefix "nrnet3gpp"; + + import _3gpp-common-subnetwork { prefix subnet3gpp; } + import _3gpp-common-top { prefix top3gpp; } + + organization "3GPP SA5"; + description "Defines the YANG mapping of the NRNetwork Information Object + Class (IOC) that is part of the NR Network Resource Model (NRM)."; + reference "3GPP TS 28.541 5G Network Resource Model (NRM)"; + + revision 2019-06-17 { + description "Initial revision"; + } + + feature ExternalsUnderNRNetwork { + description "Classes representing external entities like NRFrequency, + ExternalGNBCUCPFunction, ExternalGNBDUFunction + are contained under a NRNetwork list/class."; + } + + grouping NRNetworkGrp { + description "Represents the NRNetwork IOC."; + reference "3GPP TS 28.541"; + uses subnet3gpp:SubNetworkGrp; + } + + list NRNetwork { + description "A subnetwork containing gNB external NR entities."; + reference "3GPP TS 28.541"; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses NRNetworkGrp; + } + } +} \ No newline at end of file diff --git a/yang-models/_3gpp-nr-nrm-nrsectorcarrier.yang b/yang-models/_3gpp-nr-nrm-nrsectorcarrier.yang new file mode 100755 index 000000000..2f55cf1db --- /dev/null +++ b/yang-models/_3gpp-nr-nrm-nrsectorcarrier.yang @@ -0,0 +1,119 @@ +module _3gpp-nr-nrm-nrsectorcarrier { + yang-version 1.1; + namespace "urn:3gpp:sa5:_3gpp-nr-nrm-nrnetwork-nrsectorcarrier"; + prefix "nrsectcarr3gpp"; + + import _3gpp-common-yang-types { prefix types3gpp; } + import _3gpp-common-managed-function { prefix mf3gpp; } + import _3gpp-common-managed-element { prefix me3gpp; } + import _3gpp-nr-nrm-gnbdufunction { prefix gnbdu3gpp; } + import _3gpp-common-top { prefix top3gpp; } + + organization "3GPP SA5"; + contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; + description "Defines the YANG mapping of the NRSectorCarrier Information + Object Class (IOC) that is part of the NR Network Resource Model (NRM)."; + reference "3GPP TS 28.541 5G Network Resource Model (NRM)"; + + revision 2020-05-28 { reference CR-0316 ; } + revision 2019-10-28 { reference S5-193518 ; } + revision 2019-06-17 { + description "Initial revision"; + } + + grouping NRSectorCarrierGrp { + description "Represents the NRSectorCarrier IOC."; + reference "3GPP TS 28.541"; + uses mf3gpp:ManagedFunctionGrp; + + leaf txDirection { + description "Indicates if the transmission direction is downlink, + uplink, or both downlink and uplink."; + mandatory true; + type types3gpp:TxDirection; + } + + leaf configuredMaxTxPower { + description "Maximum transmisssion power at the antenna port for all + downlink channels, used simultaneously in a cell, added together. + Condition: The sector-carrier has a downlink and the + configuration of Tx power at antenna port reference point is supported."; + mandatory true; + type int32; + units mW; + } + + leaf configuredMaxTxEIRP { + type int64; + units dBm; + mandatory true; + description "The maximum emitted isotroptic radiated power (EIRP) in dBm + for all downlink channels, used simultaneously in a cell, added together. + Condition: the sector-carrier has a downlink and the + configuration of emitted isotropic radiated power is supported"; + } + + leaf arfcnDL { + description "NR Absolute Radio Frequency Channel Number (NR-ARFCN) + for downlink. + Condition: The sector-carrier has a downlink AND the value + differs from the referring cell's value of arfcnDL."; + reference "3GPP TS 38.104"; + mandatory true; + type int32 { range "0..3279165"; } + } + + leaf arfcnUL { + description "NR Absolute Radio Frequency Channel Number (NR-ARFCN) + for uplink. + Condition: The sector-carrier has an uplink AND the value + differs from the referring cell's value of arfcnUL."; + reference "3GPP TS 38.104"; + mandatory true; + type int32 { range "0..3279165"; } + } + + leaf bSChannelBwDL { + description "Base station channel bandwitdth for downlink. + Condition: The sector-carrier has a downlink AND the value + differs from the referring cell's value of bSChannelBwDL."; + reference "3GPP TS 38.104"; + mandatory true; + type int32 { range "5 | 10 | 15 | 20 | 30 | 40 | 50 | 60 | 70 | 80 | + 90 | 100"; } + units MHz; + } + + leaf bSChannelBwUL { + description "Base station channel bandwitdth for uplink."; + reference "3GPP TS 38.104"; + mandatory true; + type int32 { range "5 | 10 | 15 | 20 | 30 | 40 | 50 | 60 | 70 | 80 | + 90 | 100"; } + units MHz; + } + + leaf sectorEquipmentFunctionRef { + description "Reference to corresponding SectorEquipmentFunction + instance."; + reference "3GPP TS 23.622"; + mandatory true; + type types3gpp:DistinguishedName; + } + } + + augment "/me3gpp:ManagedElement/gnbdu3gpp:GNBDUFunction" { + + list NRSectorCarrier { + description "Represents the resources of each transmission point + included in the cell."; + reference "3GPP TS 28.541"; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses NRSectorCarrierGrp; + } + uses mf3gpp:ManagedFunctionContainedClasses; + } + } +} \ No newline at end of file diff --git a/yang-models/_3gpp-nr-nrm-rrmpolicy.yang b/yang-models/_3gpp-nr-nrm-rrmpolicy.yang new file mode 100755 index 000000000..3480c753c --- /dev/null +++ b/yang-models/_3gpp-nr-nrm-rrmpolicy.yang @@ -0,0 +1,122 @@ +module _3gpp-nr-nrm-rrmpolicy { + yang-version 1.1; + namespace "urn:3gpp:sa5:_3gpp-nr-nrm-rrmpolicy"; + prefix "nrrrmpolicy3gpp"; + + import _3gpp-5g-common-yang-types { prefix types5g3gpp; } + import _3gpp-common-top { prefix top3gpp; } + + organization "3GPP SA5"; + contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; + description "Defines the YANG mapping of the RRMPolicy abstract class that + is part of the NR Network Resource Model (NRM)."; + reference "3GPP TS 28.541 5G Network Resource Model (NRM)"; + + revision 2020-11-05 { reference CR-0412 ; } + revision 2020-04-28 { reference "CR0285"; } + revision 2020-02-14 { reference "Initial revision"; } + + grouping rRMPolicyMemberGrp { + description "This data type represents an RRM Policy member that will be + part of a rRMPolicyMemberList. A RRMPolicyMember is defined by its + pLMNId and sNSSAI (S-NSSAI). + The members in a rRMPolicyMemberList are assigned a specific amount of + RRM resources based on settings in RRMPolicy."; + + uses types5g3gpp:PLMNInfo; + } + + typedef CyclicPrefix { + type enumeration { + enum NORMAL; + enum EXTENDED; + } + } + + grouping RRMPolicy_Grp { + description "This IOC represents the properties of an abstract RRMPolicy + . The RRMPolicy_ IOC needs to be subclassed to be instantiated. + It defines two attributes apart from those inherited from Top IOC, the + resourceType attribute defines type of resource (PRB, RRC + connected users, DRB usage etc.) and the rRMPolicyMemberList attribute + defines the RRMPolicyMember(s)that are subject to this policy. + An RRM resource (defined in resourceType + attribute) is located in NRCellDU, NRCellCU, GNBDUFunction, + GNBCUCPFunction or in GNBCUUPFunction. The RRMPolicyRatio IOC is one + realization of a RRMPolicy_ IOC. This RRM framework allows adding new + policies, both standardized (like RRMPolicyRatio) or as vendor specific, + by inheriting from the abstract RRMPolicy_ IOC."; + + leaf resourceType { + description "The resourceType attribute defines type of resource (PRB, + RRC connected users, DRB usage etc.) that is subject to policy. + Valid values are 'PRB', 'RRC' or 'DRB'"; + mandatory true; + type string; + } + + list rRMPolicyMemberList{ + description "It represents the list of RRMPolicyMember (s) that the + managed object is supporting. A RRMPolicyMember <> include + the PLMNId <> and S-NSSAI <>." ; + min-elements 1; + key "mcc mnc sd sst"; + uses rRMPolicyMemberGrp; + } + } // grouping + + + grouping RRMPolicyRatioGrp { + description "Represents the RRMPolicyRatio concrete IOC."; + + uses RRMPolicy_Grp; // Inherits RRMPolicy_ + + + leaf rRMPolicyMaxRatio { + description " This attribute specifies the maximum percentage of radio + resource that can be used by the associated rRMPolicyMemberList. + The maximum percentage of radio resource include at least one of + the shared resources, prioritized resources and dedicated resources. + The sum of the rRMPolicyMaxRatio values assigned to all RRMPolicyRatio(s) + name-contained by same ManagedEntity can be greater that 100."; + default 100; + type uint8 { range "0..100"; } + units percent; + } + + leaf rRMPolicyMinRatio { + description " This attribute specifies the minimum percentage of radio + resources that can be used by the associated rRMPolicyMemberList. + The minimum percentage of radio resources including at least one of + prioritized resources and dedicated resources. The sum of the + rRMPolicyMinRatio values assigned to all RRM PolicyRatio(s) + name-contained by same ManagedEntity shall be less or equal 100."; + default 0; + type uint8 { range "0..100"; } + units percent; + } + + leaf rRMPolicyDedicatedRatio { + description " This attribute specifies the percentage of radio resource + that dedicatedly used by the associated rRMPolicyMemberList. The sum of + the rRMPolicyDeidctaedRatio values assigned to all RRMPolicyRatio(s) + name-contained by same ManagedEntity shall be less or equal 100. "; + default 0; + type uint8 { range "0..100"; } + units percent; + } + } + + list RRMPolicyRatio { + description " The RRMPolicyRatio IOC is one realization of a RRMPolicy_ IOC, + see the inheritance in Figure 4.2.1.2-1. This RRM framework allows + adding new policies, both standardized (like RRMPolicyRatio) or as + vendor specific, by inheriting from the + abstract RRMPolicy_ IOC. For details see subclause 4.3.36."; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses RRMPolicyRatioGrp; + } + } +} \ No newline at end of file diff --git a/yang-models/_3gpp-ns-nrm-networkslice.yang b/yang-models/_3gpp-ns-nrm-networkslice.yang new file mode 100755 index 000000000..d7b0d5044 --- /dev/null +++ b/yang-models/_3gpp-ns-nrm-networkslice.yang @@ -0,0 +1,74 @@ +module _3gpp-ns-nrm-networkslice { + yang-version 1.1; + namespace urn:3gpp:sa5:_3gpp-ns-nrm-networkslice; + prefix ns3gpp; + + import _3gpp-ns-nrm-networkslicesubnet { prefix nss3gpp; } + import _3gpp-common-subnetwork { prefix subnet3gpp; } + import _3gpp-common-yang-types { prefix types3gpp; } + import _3gpp-common-top { prefix top3gpp; } + + include _3gpp-ns-nrm-serviceprofile; + + organization "3GPP SA5"; + contact + "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; + description "A network slice instance in a 5G network."; + reference "3GPP TS 28.541 + Management and orchestration; + 5G Network Resource Model (NRM); + Information model definitions for network slice NRM (chapter 6) + "; + + revision 2020-02-19 { + description "Introduction of YANG definitions for network slice NRM"; + reference "CR-0458"; + } + + grouping NetworkSliceGrp { + + uses subnet3gpp:SubNetworkGrp; // Inherits from SubNetwork + + leaf operationalState { + description "The operational state of the network slice instance. + It describes whether or not the resource is physically installed + and working."; + config false; + type types3gpp:OperationalState; + } + + leaf administrativeState { + description "The administrative state of the network slice instance. + It describes the permission to use or prohibition against + using the instance, imposed through the OAM services."; + type types3gpp:AdministrativeState; + } + + list serviceProfileList { + description "A list of service profiles supported by the network + slice instance."; + key serviceProfileId; + uses ServiceProfileGrp; + } + + leaf networkSliceSubnetRef { + type leafref { + path /nss3gpp:NetworkSliceSubnet/nss3gpp:id; + } + description "The NetworkSliceSubnet that the NetworkSlice is + associated with."; + } + } + + list NetworkSlice { + description "Represents the properties of a network slice instance in + a 5G network."; + key id; + + container attributes { + uses NetworkSliceGrp; + } + + uses top3gpp:Top_Grp; + } +} diff --git a/yang-models/_3gpp-ns-nrm-networkslicesubnet.yang b/yang-models/_3gpp-ns-nrm-networkslicesubnet.yang new file mode 100755 index 000000000..be7f4c6f7 --- /dev/null +++ b/yang-models/_3gpp-ns-nrm-networkslicesubnet.yang @@ -0,0 +1,206 @@ +module _3gpp-ns-nrm-networkslicesubnet { + yang-version 1.1; + + namespace urn:3gpp:sa5:_3gpp-ns-nrm-networkslicesubnet; + prefix nss3gpp; + + import _3gpp-common-yang-types { prefix types3gpp; } + import _3gpp-common-subnetwork { prefix subnet3gpp; } + import _3gpp-common-measurements { prefix meas3gpp; } + import _3gpp-common-top { prefix top3gpp; } + + include _3gpp-ns-nrm-sliceprofile; + + organization "3GPP SA5"; + contact + "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; + description "This IOC represents the properties of a network slice subnet + instance in a 5G network."; + reference "3GPP TS 28.541 + Management and orchestration; + 5G Network Resource Model (NRM); + Information model definitions for network slice NRM (chapter 6) + "; + + revision 2020-02-19 { + description "Introduction of YANG definitions for network slice NRM"; + reference "CR-0458"; + } + + revision 2019-06-07 { + description "initial revision"; + reference "Based on + 3GPP TS 28.541 V15.X.XX"; + } + + feature MeasurementsUnderNetworkSliceSubnet { + description "The MeasurementSubtree shall be contained under + NetworkSliceSubnet."; + } + + typedef ETSI-GS-NFV-Identifier { + type string; + reference "ETSI GS NFV-IFA 013"; + } + + grouping EPTransportGrp { + leaf ipAddress { + description "This parameter specifies the IP address assigned to a + logical transport interface/endpoint. It can be an IPv4 address + (See RFC 791) or an IPv6 address (See RFC 2373)."; + mandatory true; + type string; + } + leaf logicInterfaceId { + description "This parameter specifies the identify of a logical + transport interface. It could be VLAN ID (See IEEE 802.1Q), + MPLS Tag or Segment ID."; + mandatory true; + type string; + } + leaf-list nextHopInfo { + description "This parameter is used to identify ingress transport + node. Each node can be identified by any of combination of IP + address of next-hop router of transport network, system name, + port name, IP management address of transport nodes."; + type string; + } + leaf-list qosProfile { + description "This parameter specifies reference to QoS Profile for + a logical transport interface. A QoS profile includes a set of + parameters which are locally provisioned on both sides of a logical + transport interface."; + type string; + } + leaf-list epApplicationRef { + description "This parameter specifies a list of application level + EPs associated with the logical transport interface."; + min-elements 1; + type types3gpp:DistinguishedName; + } + uses top3gpp:Top_Grp; + } + + grouping NsInfoGrp { + description "The NsInfo of the NS instance corresponding to the network + slice subnet instance."; + //suport condition: It shall be supported if the NSS instance is + //realized in the virtualized environment. + // Otherwise this attribute shall be absent. + reference "ETSI GS NFV-IFA 013 clause 8.3.3.2.2, which can be found at + https://www.etsi.org/deliver/etsi_gs/NFV-IFA/001_099/013 + /03.04.01_60/gs_NFV-IFA013v030401p.pdf page 123-124"; + leaf nSInstanceId { + description "Uniquely identifies the NS instance."; + config false; + type ETSI-GS-NFV-Identifier; + } + leaf nsName { + description "Human readable name of the NS instance."; + type string; + config false; + } + leaf description { + description "Human readable description of the NS instance."; + config false; + type string; + } + } + + grouping NetworkSliceSubnetGrp { + + uses subnet3gpp:SubNetworkGrp; + uses EPTransportGrp; + + leaf operationalState { + description "The operational state of the network slice instance. + It describes whether or not the resource is physically installed + and working."; + mandatory true; + config false; + type types3gpp:OperationalState; + } + + leaf administrativeState { + description "The administrative state of the network slice instance. + It describes the permission to use or prohibition against + using the instance, imposed through the OAM services."; + mandatory true; + type types3gpp:AdministrativeState; + } + + list nsInfo { + description "This list represents the properties of network service + information corresponding to the network slice subnet instance."; + reference "ETSI GS NFV-IFA 013 clause 8.3.3.2.2"; + config false; + key nSInstanceId; + max-elements 1; + uses NsInfoGrp; + } + + list sliceProfileList { + description "List of SliceProfiles supported by the network slice + subnet instance"; + key sliceProfileId; + uses SliceProfileGrp; + } + + list managedFunctionRef { + description "The managed functions that the NetworkSliceSubnet is + associated with."; + key aggregatedManagedFunction; + leaf aggregatedManagedFunction { + type instance-identifier; + } + } + + leaf-list networkSliceSubnetRef { + type leafref { + path /NetworkSliceSubnet/id; + } + description "Lists the NetworkSliceSubnet instances associated with + this NetworkSliceSubnet."; + } + } + + list NetworkSliceSubnet { + description "Represents the properties of a network slice subnet + instance in a 5G network."; + key id; + + container attributes { + + uses NetworkSliceSubnetGrp; + + leaf-list parents { + description "Reference to direct parent NetworkSliceSubnet + instances. + If NetworkSliceSubnets form a containment hierarchy this is + modeled using references between the child NetworkSliceSubnet + and the parent NetworkSliceSubnet. + This reference MUST NOT be present for the top level + NetworkSliceSubnet and MUST be present for other + NetworkSliceSubnets."; + type leafref { + path "/NetworkSliceSubnet/id"; + } + } + + leaf-list containedChildren { + description "Reference to all directly contained NetworkSliceSubnet + instances. If NetworkSliceSubnets form a containment hierarchy + this is modeled using references between the child + NetworkSliceSubnet and the parent NetworkSliceSubnet."; + type leafref { + path "/NetworkSliceSubnet/id"; + } + } + } + + uses top3gpp:Top_Grp; + uses meas3gpp:MeasurementSubtree { + if-feature MeasurementsUnderNetworkSliceSubnet; + } + } +} \ No newline at end of file diff --git a/yang-models/_3gpp-ns-nrm-perfreq.yang b/yang-models/_3gpp-ns-nrm-perfreq.yang new file mode 100755 index 000000000..7d0429304 --- /dev/null +++ b/yang-models/_3gpp-ns-nrm-perfreq.yang @@ -0,0 +1,170 @@ +module _3gpp-ns-nrm-perfreq { + yang-version 1.1; + namespace urn:3gpp:sa5:_3gpp-ns-nrm-perfreq; + prefix perf3gpp; + + organization "3GPP SA5"; + contact + "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; + description "The performance requirements for the NSI in terms of the + scenarios defined in the 3GPP TS 22.261, such as experienced data rate, + area traffic capacity (density) information of UE density."; + reference "3GPP TS 28.541 + Management and orchestration; + 5G Network Resource Model (NRM); + Information model definitions for network slice NRM (chapter 6) + "; + + revision 2020-02-19 { + description "Introduction of YANG definitions for network slice NRM"; + reference "CR-0458"; + } + + typedef data-rate { + type uint32; + units kbits/s; + } + typedef integer-percentage { + type uint8 { + range 0..100; + } + units percent; + } + typedef reliability-string { + description "Mean time between failures. + E.g. '1 day', or '3 months'"; + type string { + pattern "[0-9]+ (day|week|month|year)s?"; + } + reference "3GPP TS 22.104 clause 5.2-5.5"; + } + typedef message-size-string { + description "Message size in bytes. + E.g. '80', or '250-2000'"; + type string { + pattern '[0-9]+(-[0-9]+)?'; + } + units bytes; + reference "3GPP TS 22.104 clause 5.2-5.5"; + } + typedef transfer-interval-string { + description "Transfer interval time. If multiple values are given, + the first value is the application requirement, the other values are + the requirement with multiple transmission of the same information + two or three times, respectively). + E.g. '40ms', or '0ms-5ms,0ms-2.5ms,0ms-1.7ms'"; + type string { + pattern '[0-9]+(\.[0-9]+)?m?s-[0-9]+(\.[0-9]+)?m?s' + + '(,[0-9]+(\.[0-9]+)?m?s-[0-9]+(\.[0-9]+)?){0,2}'; + } + reference "3GPP TS 22.104 clause 5.2-5.5"; + } + typedef survival-time-string { + description "Survival time in milliseconds (ms) or in multiples of + the transfer interval (x). If multiple values are given, + the first value is the application requirement, the other values are + the requirement with multiple transmission of the same information + two or three times, respectively). + E.g. '12ms', or '0x,2x'"; + type string { + pattern '[0-9]+(x|ms)(,[0-9]+(x|ms)){0,2}'; + } + reference "3GPP TS 22.104 clause 5.2-5.5"; + } + + grouping PerfReqGrp { + //Stage2 issue: The perfReq object does not have any proper definition + // in 28.541 chapter 6. + //Stage2 issue: The text that exists on the perfReq mentions an sST + // element. There is potentially several sST elements in + // the SliceProfile/sNSSAIList which could be used as basis + // for deciding which perfReq elements are relevant. + // Operators can construct their own sST values. It is not + // clear which of the perfReq elements below would be + // relevant in such a case. Leaving all perfReq elements + // available in all use cases for now. + + // eMBB leafs, SST = 1 + leaf expDataRateDL { + description "User experienced data rate over downlink"; + //TODO: add when 'somepath/sST = 1'; + type data-rate; + reference "3GPP TS 22.261 clause 7.1, table 7.1-1"; + } + leaf expDataRateUL { + description "User experienced data rate over uplink"; + //TODO: add when 'somepath/sST = 1'; + type data-rate; + reference "3GPP TS 22.261 clause 7.1, table 7.1-1"; + } + leaf areaTrafficCapDL { + description "Area traffic capacity over downlink"; + //TODO: add when 'somepath/sST = 1'; + type data-rate; + units kbits/s/km2; + reference "3GPP TS 22.261 clause 7.1, table 7.1-1"; + } + leaf areaTrafficCapUL { + description "Area traffic capacity over uplink"; + //TODO: add when 'somepath/sST = 1'; + type data-rate; + units kbits/s/km2; + reference "3GPP TS 22.261 clause 7.1, table 7.1-1"; + } + leaf overallUserDensity { + description "Overall user density"; + //TODO: add when 'somepath/sST = 1'; + type uint32; + units users/km2; + reference "3GPP TS 22.261 clause 7.1, table 7.1-1"; + } + leaf activityFactor { + description "Percentage value of the amount of simultaneous active + UEs to the total number of UEs where active means the UEs are + exchanging data with the network."; + //TODO: add when 'somepath/sST = 1'; + type integer-percentage; + reference "3GPP TS 22.261 clause 7.1, table 7.1-1"; + } + + // uRLLC leafs, SST = 2 + leaf cSAvailabilityTarget { + description "Reliability uptime target"; + //TODO: add when 'somepath/sST = 2'; + type decimal64 { + fraction-digits 6; // E.g. 99.999999 + range 0..100; + } + reference "3GPP TS 22.104 clause 5.2-5.5"; + } + leaf cSReliabilityMeanTime { + description "Mean time between failures"; + //TODO: add when 'somepath/sST = 2'; + type reliability-string; + } + leaf expDataRate { + description "User experienced data rate"; + //TODO: add when 'somepath/sST = 2'; + type data-rate; + reference "3GPP TS 22.104 clause 5.2-5.5"; + } + leaf msgSizeByte { + description "PDU size"; + //TODO: add when 'somepath/sST = 2'; + type message-size-string; + } + leaf transferIntervalTarget { + description "Time difference between two consecutive transfers + of application data from an application via the service interface + to 3GPP system"; + //TODO: add when 'somepath/sST = 2'; + type transfer-interval-string; + } + leaf survivalTime { + description "The time that an application consuming a communication + service may continue without an anticipated message"; + //TODO: add when 'somepath/sST = 2'; + type survival-time-string; + } + } +} \ No newline at end of file diff --git a/yang-models/_3gpp-ns-nrm-serviceprofile.yang b/yang-models/_3gpp-ns-nrm-serviceprofile.yang new file mode 100755 index 000000000..f83dde353 --- /dev/null +++ b/yang-models/_3gpp-ns-nrm-serviceprofile.yang @@ -0,0 +1,569 @@ +submodule _3gpp-ns-nrm-serviceprofile { + yang-version 1.1; + belongs-to _3gpp-ns-nrm-networkslice { prefix ns3gpp; } + + import _3gpp-common-yang-types { prefix types3gpp; } + import _3gpp-5g-common-yang-types { prefix types5g3gpp; } + + organization "3GPP SA5"; + contact + "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; + description "A network slice instance in a 5G network."; + reference "3GPP TS 28.541 + Management and orchestration; + 5G Network Resource Model (NRM); + Information model definitions for network slice NRM (chapter 6) + "; + + revision 2020-02-19 { + description "Introduction of YANG definitions for network slice NRM"; + reference "CR-0458"; + } + + revision 2019-06-23 { + description "Initial revision"; + reference "3GPP TS 28.541 V15.X.XX"; + } + + typedef availability-percentage { + description " + Percentage value of the amount of time the end-to-end communication + service is delivered according to an agreed QoS, divided by the amount + of time the system is expected to deliver the end-to-end service + according to the specification in a specific area."; + reference "3GPP TS 22.261 3.1"; + type decimal64 { + fraction-digits 4; // E.g. 99.9999 + range 0..100; + } + } + typedef Category-enum { + type enumeration { + enum character; + enum scalability; + } + } + typedef Tagging-enum { + type enumeration { + enum performance; + enum function; + enum operation; + } + } + typedef Exposure-enum { + type enumeration { + enum API; + enum KPI; + } + } + typedef Support-enum { + type enumeration { + enum NOT_SUPPORTED; + enum SUPPORTED; + } + } + grouping ServAttrComGrp { + leaf category { + description "This attribute specifies the category of a service + requirement/attribute of GST"; + type Category-enum; + } + leaf-list tagging { + description "This attribute specifies the tagging of a service + requirement/attribute of GST in character category"; + when "../category = 'character'"; + type Tagging-enum; + } + leaf exposure { + description "This attribute specifies exposure mode of a service + requirement/attribute of GST"; + type Exposure-enum; + } + } + typedef DeterminCommAvailability { + type Support-enum; + } + grouping DLThptGrp { + list servAttrCom { + description "This list represents the common properties of service + requirement related attributes."; + reference "GSMA NG.116 corresponding to Attribute categories, + tagging and exposure"; + config false; + key idx; + max-elements 1; + leaf idx { + description "Synthetic index for the element."; + type uint32; + } + uses ServAttrComGrp; + } + leaf guaThpt { + description "This attribute describes the guaranteed data rate."; + type uint64; + units kbits/s; + } + leaf maxThpt { + description "This attribute describes the maximum data rate."; + type uint64; + units kbits/s; + } + } + typedef V2XMode-enum { + type enumeration { + enum NOT_SUPPORTED; + enum SUPPORTED_BY_NR; + } + } + + grouping ServiceProfileGrp { + + leaf serviceProfileId { + description "Service profile identifier."; + type types3gpp:DistinguishedName; + } + + list sNSSAIList { + description "The S-NSSAI list to be supported by the new NSI to be + created or the existing NSI to be re-used."; + min-elements 1; + key idx; + unique "sst sd"; + leaf idx { + description "Synthetic index for the element."; + type uint32; + } + uses types5g3gpp:SNssai; + } + + list pLMNIdList { + description "List of PLMN IDs."; + min-elements 1; + key "mcc mnc"; + ordered-by user; + uses types3gpp:PLMNId; + } + + leaf maxNumberofUEs { + description "The maximum number of UEs that may simultaneously + access the network slice instance."; + mandatory true; + type uint64; + } + + leaf-list coverageArea { + min-elements 1; + description "A list of TrackingAreas where the NSI can be selected."; + type types3gpp:Tac; + } + + leaf latency { + description "The packet transmission latency (milliseconds) through + the RAN, CN, and TN part of 5G network, used to evaluate utilization + performance of the end-to-end network slice instance."; + reference "3GPP TS 28.554 clause 6.3.1"; + mandatory true; + type uint16; + units milliseconds; + } + + leaf uEMobilityLevel { + description "The mobility level of UE accessing the network slice + instance."; + reference "3GPP TS 22.261 clause 6.2.1"; + type types3gpp:UeMobilityLevel; + } + + leaf resourceSharingLevel { + description "Specifies whether the resources to be allocated to the + network slice instance may be shared with another network slice + instance(s)."; + type types3gpp:ResourceSharingLevel; + } + + //Stage2 issue: The sNSSAIList above specifies one or potentially + // several sST objects for the service profile. + // How do they relate? + leaf sST { + description "Specifies the slice/service type. See 3GPP TS 23.501 + for defined values."; + mandatory true; + type uint32; + reference "3GPP TS 23.501 5.15.2.2"; + } + + leaf availability { + description "The availability requirement for a network slice + instance, expressed as a percentage."; + type availability-percentage; + } + + list delayTolerance { + description "An attribute specifies the properties of service delivery + flexibility, especially for the vertical services that are not + chasing a high system performance."; + reference "TS 22.104 clause 4.3"; + config false; + key idx; + max-elements 1; + leaf idx { + description "Synthetic index for the element."; + type uint32; + } + list servAttrCom { + description "This list represents the common properties of service + requirement related attributes."; + reference "GSMA NG.116 corresponding to Attribute categories, + tagging and exposure"; + key idx; + max-elements 1; + leaf idx { + description "Synthetic index for the element."; + type uint32; + } + uses ServAttrComGrp; + } + leaf support { + description "An attribute specifies whether or not the network + slice supports service delivery flexibility, especially for the + vertical services that are not chasing a high system performance."; + type Support-enum; + } + } + list deterministicComm { + //Stage2 issue: deterministicComm is not defined in 28.541 chapter 6, + // but I guess determinComm is meant + description "This list represents the properties of the deterministic + communication for periodic user traffic. Periodic traffic refers to the + type of traffic with periodic transmissions."; + key idx; + max-elements 1; + leaf idx { + description "Synthetic index for the element."; + type uint32; + } + list servAttrCom { + description "This list represents the common properties of service + requirement related attributes."; + reference "GSMA NG.116 corresponding to Attribute categories, + tagging and exposure"; + config false; + key idx; + max-elements 1; + leaf idx { + description "Synthetic index for the element."; + type uint32; + } + uses ServAttrComGrp; + } + leaf availability { + //Stage2 issue: Defined differently in 28.541 chapter 6, but XML + // uses DeterminCommAvailability + config false; + type DeterminCommAvailability; + } + leaf periodicityList { + //Stage2 issue: Not defined in 28.541 chapter 6. XML and YAML + // says "string". + type string; + } + } + list dLThptPerSlice { + description "This attribute defines achievable data rate of the + network slice in downlink that is available ubiquitously across + the coverage area of the slice"; + key idx; + max-elements 1; + leaf idx { + description "Synthetic index for the element."; + type uint32; + } + uses DLThptGrp; + } + list dLThptPerUE { + description "This attribute defines data rate supported by the network + slice per UE"; + key idx; + max-elements 1; + leaf idx { + description "Synthetic index for the element."; + type uint32; + } + uses DLThptGrp; + } + list uLThptPerSlic { + key idx; + max-elements 1; + leaf idx { + description "Synthetic index for the element."; + type uint32; + } + description "This attribute defines achievable data rate of the + network slice in uplink that is available ubiquitously across + the coverage area of the slice"; + uses DLThptGrp; + } + list uLThptPerUE { + key idx; + max-elements 1; + leaf idx { + description "Synthetic index for the element."; + type uint32; + } + description "This attribute defines data rate supported by the + network slice per UE"; + uses DLThptGrp; + } + list maxPktSize { + config false; + key idx; + max-elements 1; + leaf idx { + description "Synthetic index for the element."; + type uint32; + } + description "This parameter specifies the maximum packet size + supported by the network slice"; + list servAttrCom { + description "This list represents the common properties of service + requirement related attributes."; + reference "GSMA NG.116 corresponding to Attribute categories, + tagging and exposure"; + key idx; + max-elements 1; + leaf idx { + description "Synthetic index for the element."; + type uint32; + } + uses ServAttrComGrp; + } + leaf maxSize { + //Stage2 issue: Not defined in 28.541, guessing integer bytes + type uint32; + units bytes; + } + } + list maxNumberofPDUSessions { + description "Represents the maximum number of + concurrent PDU sessions supported by the network slice"; + config false; + key idx; + max-elements 1; + leaf idx { + description "Synthetic index for the element."; + type uint32; + } + list servAttrCom { + description "This list represents the common properties of service + requirement related attributes."; + reference "GSMA NG.116 corresponding to Attribute categories, + tagging and exposure"; + key idx; + max-elements 1; + leaf idx { + description "Synthetic index for the element."; + type uint32; + } + uses ServAttrComGrp; + } + leaf nOofPDUSessions { + //Stage2 issue: Not defined in 28.541, guessing integer + type uint32; + } + } + list kPIMonitoring { + description "Represents performance monitoring"; + config false; + key idx; + max-elements 1; + leaf idx { + description "Synthetic index for the element."; + type uint32; + } + list servAttrCom { + description "This list represents the common properties of service + requirement related attributes."; + reference "GSMA NG.116 corresponding to Attribute categories, + tagging and exposure"; + key idx; + max-elements 1; + leaf idx { + description "Synthetic index for the element."; + type uint32; + } + uses ServAttrComGrp; + } + leaf kPIList { + //Stage2 issue: Data format not specified, low interoperability + description "An attribute specifies the name list of KQIs and KPIs + available for performance monitoring"; + type string; + } + } + list userMgmtOpen { + description "An attribute specifies whether or not the network slice + supports the capability for the NSC to manage their users or groups + of users’ network services and corresponding requirements."; + config false; + key idx; + max-elements 1; + leaf idx { + description "Synthetic index for the element."; + type uint32; + } + list servAttrCom { + description "This list represents the common properties of service + requirement related attributes."; + reference "GSMA NG.116 corresponding to Attribute categories, + tagging and exposure"; + key idx; + max-elements 1; + leaf idx { + description "Synthetic index for the element."; + type uint32; + } + uses ServAttrComGrp; + } + leaf support { + type Support-enum; + } + } + list v2XCommModels { + description "An attribute specifies whether or not the V2X + communication mode is supported by the network slice."; + config false; + key idx; + max-elements 1; + leaf idx { + description "Synthetic index for the element."; + type uint32; + } + list servAttrCom { + description "This list represents the common properties of service + requirement related attributes."; + reference "GSMA NG.116 corresponding to Attribute categories, + tagging and exposure"; + key idx; + max-elements 1; + leaf idx { + description "Synthetic index for the element."; + type uint32; + } + uses ServAttrComGrp; + } + leaf v2XMode { + type V2XMode-enum; + } + } + list termDensity { + description "An attribute specifies the overall user density over + the coverage area of the network slice"; + config false; + key idx; + max-elements 1; + leaf idx { + description "Synthetic index for the element."; + type uint32; + } + list servAttrCom { + description "This list represents the common properties of service + requirement related attributes."; + reference "GSMA NG.116 corresponding to Attribute categories, + tagging and exposure"; + key idx; + max-elements 1; + leaf idx { + description "Synthetic index for the element."; + type uint32; + } + uses ServAttrComGrp; + } + leaf density { + type uint32; + units users/km2; + } + } + leaf activityFactor { + //Stage2 issue: This is modeled as writable/config true in 28.542, + // but that does not appear to match the description + description "An attribute specifies the percentage value of the + amount of simultaneous active UEs to the total number of UEs where + active means the UEs are exchanging data with the network"; + reference "TS 22.261 Table 7.1-1"; + type decimal64 { + fraction-digits 1; + } + } + leaf uESpeed { + //Stage2 issue: This is modeled as writable/config true in 28.542, + // but that does not appear to match the description + description "An attribute specifies the maximum speed (in km/hour) + supported by the network slice at which a defined QoS can be + achieved"; + type uint32; + units km/h; + } + leaf jitter { + //Stage2 issue: This is modeled as writable/config true in 28.542, + // but that does not appear to match the description + description "An attribute specifies the deviation from the desired + value to the actual value when assessing time parameters"; + reference "TS 22.104 clause C.4.1"; + type uint32; + units microseconds; + } + leaf survivalTime { + description "An attribute specifies the time that an application + consuming a communication service may continue without an + anticipated message."; + reference "TS 22.104 clause 5"; + type string; + } + leaf reliability { + description "An attribute specifies in the context of network layer + packet transmissions, percentage value of the amount of sent + network layer packets successfully delivered to a given system + entity within the time constraint required by the targeted service, + divided by the total number of sent network layer packets."; + reference "TS 22.261, TS 22.104"; + type string; + } + leaf maxDLDataVolume { + //Stage2 issue: Not defined in 28.541. XML and YAML says "string" + type string; + } + leaf maxULDataVolume { + //Stage2 issue: Not defined in 28.541. XML and YAML says "string" + type string; + } + list nBIoT { + description "An attribute specifies whether NB-IoT is supported in + the RAN in the network slice"; + config false; + key idx; + max-elements 1; + leaf idx { + description "Synthetic index for the element."; + type uint32; + } + list servAttrCom { + description "This list represents the common properties of service + requirement related attributes."; + reference "GSMA NG.116 corresponding to Attribute categories, + tagging and exposure"; + key idx; + max-elements 1; + leaf idx { + description "Synthetic index for the element."; + type uint32; + } + uses ServAttrComGrp; + } + leaf support { + description "An attribute specifies whether NB-IoT is supported + in the RAN in the network slice"; + type Support-enum; + } + } + } +} \ No newline at end of file diff --git a/yang-models/_3gpp-ns-nrm-sliceprofile.yang b/yang-models/_3gpp-ns-nrm-sliceprofile.yang new file mode 100755 index 000000000..df200ad18 --- /dev/null +++ b/yang-models/_3gpp-ns-nrm-sliceprofile.yang @@ -0,0 +1,124 @@ +submodule _3gpp-ns-nrm-sliceprofile { + yang-version 1.1; + belongs-to _3gpp-ns-nrm-networkslicesubnet { prefix nss3gpp; } + + import _3gpp-common-yang-types { prefix types3gpp; } + import _3gpp-5g-common-yang-types { prefix types5g3gpp; } + import _3gpp-ns-nrm-perfreq { prefix perf3gpp; } + + organization "3GPP SA5"; + contact + "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; + description "Represents the properties of network slice subnet related + requirement that should be supported by the network slice subnet + instance in a 5G network."; + reference "3GPP TS 28.541 + Management and orchestration; + 5G Network Resource Model (NRM); + Information model definitions for network slice NRM (chapter 6) + "; + + revision 2020-02-19 { + description "Introduction of YANG definitions for network slice NRM"; + reference "CR-0458"; + } + + revision 2019-05-27 { + description "initial revision."; + reference "Based on + 3GPP TS 28.541 V15.X.XX"; + } + + grouping SliceProfileGrp { + leaf sliceProfileId { + description "A unique identifier of the property of network slice + subnet related requirement should be supported by the network + slice subnet instance."; + type types3gpp:DistinguishedName; + } + + list sNSSAIList { + description "List of S-NSSAIs the managed object is capable of + supporting. (Single Network Slice Selection Assistance Information) + An S-NSSAI has an SST (Slice/Service type) and an optional SD + (Slice Differentiator) field."; + key idx; + unique "sst sd"; + leaf idx { + description "Synthetic index for the element."; + type uint32; + } + uses types5g3gpp:SNssai; + } + + list pLMNIdList { + description "List of at most six entries of PLMN Identifiers, but at + least one (the primary PLMN Id). The PLMN Identifier is composed + of a Mobile Country Code (MCC) and a Mobile Network Code (MNC)."; + min-elements 1; + max-elements 6; + key "mcc mnc"; + ordered-by user; + uses types3gpp:PLMNId; + } + + //Stage2 issue: The perfReq object does not have any proper definition + // in 28.541 chapter 6. + //Stage2 issue: The text that exists on the perfReq mentions an sST + // element. There is no sST element in SliceProfile which + // references perfReq, nor in perfReq itself. There are + // potentially several in the sNSSAIList. Should we take the + // union of those to control whivh perfReq elements are + // relevant? For now, making all perfReq elements available + // in all slice profiles. + list perfReq { + description "The performance requirements for the NSI in terms of the + scenarios defined in the 3GPP TS 22.261, such as experienced data + rate, area traffic capacity (density) information of UE density."; + key idx; //this list uses a grouping/choice and has no obvious key + leaf idx { type uint32; } + uses perf3gpp:PerfReqGrp; + } + + leaf maxNumberofUEs { + description "Specifies the maximum number of UEs may simultaneously + access the network slice instance."; + //optional support + mandatory true; + type uint64; + } + + leaf-list coverageAreaTAList { + description "A list of TrackingAreas where the NSI can be selected."; + //optional support + min-elements 1; + type types3gpp:Tac; + } + + leaf latency { + description "The packet transmission latency (milliseconds) through + the RAN, CN, and TN part of 5G network, used to evaluate + utilization performance of the end-to-end network slice instance."; + reference "3GPP TS 28.554 clause 6.3.1"; + //optional support + mandatory true; + type uint16; + units milliseconds; + } + + leaf uEMobilityLevel { + description "The mobility level of UE accessing the network slice + instance."; + //optional support + type types3gpp:UeMobilityLevel; + } + + leaf resourceSharingLevel { + description "Specifies whether the resources to be allocated to the + network slice subnet instance may be shared with another network + slice subnet instance(s)."; + //optional support + type types3gpp:ResourceSharingLevel; + } + } +} \ No newline at end of file -- GitLab From 5bd17b339c5ae5748aaef9892ade09fb5b4c9ba5 Mon Sep 17 00:00:00 2001 From: Ping Date: Fri, 23 Apr 2021 11:05:16 +0800 Subject: [PATCH 032/593] delete all OpenAPI files --- OpenAPI/5gcNrm.yaml | 1967 ----------------------------- OpenAPI/PerDataFileReportMnS.yaml | 272 ---- OpenAPI/PerMeasJobCtlMnS.yaml | 280 ---- OpenAPI/PerThresMonMnS.yaml | 102 -- OpenAPI/PerfDataStreamingMnS.yaml | 363 ------ OpenAPI/README.md | 73 -- OpenAPI/comDefs.yaml | 84 -- OpenAPI/coslaNrm.yaml | 131 -- OpenAPI/faultMnS.yaml | 1144 ----------------- OpenAPI/genericNrm.yaml | 1590 ----------------------- OpenAPI/heartbeatNtf.yaml | 23 - OpenAPI/nrNrm.yaml | 1869 --------------------------- OpenAPI/provMnS.yaml | 579 --------- OpenAPI/sliceNrm.yaml | 483 ------- OpenAPI/streamingDataMnS.yaml | 453 ------- 15 files changed, 9413 deletions(-) delete mode 100644 OpenAPI/5gcNrm.yaml delete mode 100644 OpenAPI/PerDataFileReportMnS.yaml delete mode 100644 OpenAPI/PerMeasJobCtlMnS.yaml delete mode 100644 OpenAPI/PerThresMonMnS.yaml delete mode 100644 OpenAPI/PerfDataStreamingMnS.yaml delete mode 100644 OpenAPI/README.md delete mode 100644 OpenAPI/comDefs.yaml delete mode 100644 OpenAPI/coslaNrm.yaml delete mode 100644 OpenAPI/faultMnS.yaml delete mode 100644 OpenAPI/genericNrm.yaml delete mode 100644 OpenAPI/heartbeatNtf.yaml delete mode 100644 OpenAPI/nrNrm.yaml delete mode 100644 OpenAPI/provMnS.yaml delete mode 100644 OpenAPI/sliceNrm.yaml delete mode 100644 OpenAPI/streamingDataMnS.yaml diff --git a/OpenAPI/5gcNrm.yaml b/OpenAPI/5gcNrm.yaml deleted file mode 100644 index 64280fa36..000000000 --- a/OpenAPI/5gcNrm.yaml +++ /dev/null @@ -1,1967 +0,0 @@ -openapi: 3.0.1 -info: - title: 3GPP 5GC NRM - version: 16.6.0 - description: >- - OAS 3.0.1 specification of the 5GC NRM - © 2020, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). - All rights reserved. -externalDocs: - description: 3GPP TS 28.541 V16.6.0; 5G NRM, 5GC NRM - url: http://www.3gpp.org/ftp/Specs/archive/28_series/28.541/ -paths: {} -components: - schemas: - -#-------- Definition of types----------------------------------------------------- - - AmfIdentifier: - type: object - description: 'AmfIdentifier comprise of amfRegionId, amfSetId and amfPointer' - properties: - amfRegionId: - $ref: '#/components/schemas/AmfRegionId' - amfSetId: - $ref: '#/components/schemas/AmfSetId' - amfPointer: - $ref: '#/components/schemas/AmfPointer' - AmfRegionId: - type: integer - description: AmfRegionId is defined in TS 23.003 - maximum: 255 - AmfSetId: - type: string - description: AmfSetId is defined in TS 23.003 - maximum: 1023 - AmfPointer: - type: integer - description: AmfPointer is defined in TS 23.003 - maximum: 63 - IpEndPoint: - type: object - properties: - ipv4Address: - $ref: 'genericNrm.yaml#/components/schemas/Ipv4Addr' - ipv6Address: - $ref: 'genericNrm.yaml#/components/schemas/Ipv6Addr' - ipv6Prefix: - $ref: 'genericNrm.yaml#/components/schemas/Ipv6Prefix' - transport: - $ref: 'genericNrm.yaml#/components/schemas/TransportProtocol' - port: - type: integer - NFProfileList: - type: array - description: List of NF profile - items: - $ref: '#/components/schemas/NFProfile' - NFProfile: - type: object - description: 'NF profile stored in NRF, defined in TS 29.510' - properties: - nFInstanceId: - type: string - description: uuid of NF instance - nFType: - $ref: 'genericNrm.yaml#/components/schemas/NFType' - nFStatus: - $ref: '#/components/schemas/NFStatus' - plmn: - $ref: 'nrNrm.yaml#/components/schemas/PlmnId' - sNssais: - $ref: 'nrNrm.yaml#/components/schemas/Snssai' - fqdn: - $ref: 'genericNrm.yaml#/components/schemas/Fqdn' - interPlmnFqdn: - $ref: 'genericNrm.yaml#/components/schemas/Fqdn' - nfServices: - type: array - items: - $ref: '#/components/schemas/NFService' - NFService: - type: object - description: NF Service is defined in TS 29.510 - properties: - serviceInstanceId: - type: string - serviceName: - type: string - version: - type: string - schema: - type: string - fqdn: - $ref: 'genericNrm.yaml#/components/schemas/Fqdn' - interPlmnFqdn: - $ref: 'genericNrm.yaml#/components/schemas/Fqdn' - ipEndPoints: - type: array - items: - $ref: '#/components/schemas/IpEndPoint' - apiPrfix: - type: string - allowedPlmns: - $ref: 'nrNrm.yaml#/components/schemas/PlmnId' - allowedNfTypes: - type: array - items: - $ref: 'genericNrm.yaml#/components/schemas/NFType' - allowedNssais: - type: array - items: - $ref: 'nrNrm.yaml#/components/schemas/Snssai' - NFStatus: - type: string - description: any of enumrated value - enum: - - REGISTERED - - SUSPENDED - CNSIIdList: - type: array - items: - $ref: '#/components/schemas/CNSIId' - CNSIId: - type: string - description: CNSI Id is defined in TS 29.531, only for Core Network - TACList: - type: array - items: - $ref: 'nrNrm.yaml#/components/schemas/NrTac' - WeightFactor: - type: integer - UdmInfo: - type: object - properties: - nFSrvGroupId: - type: string - AusfInfo: - type: object - properties: - nFSrvGroupId: - type: string - UpfInfo: - type: object - properties: - smfServingAreas: - type: string - AmfInfo: - type: object - properties: - priority: - type: integer - SupportedDataSetId: - type: string - description: any of enumrated value - enum: - - SUBSCRIPTION - - POLICY - - EXPOSURE - - APPLICATION - Udrinfo: - type: object - properties: - supportedDataSetIds: - type: array - items: - $ref: '#/components/schemas/SupportedDataSetId' - nFSrvGroupId: - type: string - NFInfo: - oneOf: - - $ref: '#/components/schemas/UdmInfo' - - $ref: '#/components/schemas/AusfInfo' - - $ref: '#/components/schemas/UpfInfo' - - $ref: '#/components/schemas/AmfInfo' - - $ref: '#/components/schemas/Udrinfo' - ManagedNFProfile: - type: object - properties: - nfInstanceID: - type: string - nfType: - $ref: 'genericNrm.yaml#/components/schemas/NFType' - authzInfo: - type: string - hostAddr: - $ref: 'genericNrm.yaml#/components/schemas/HostAddr' - locality: - type: string - nFInfo: - $ref: '#/components/schemas/NFInfo' - capacity: - type: integer - SEPPType: - type: string - description: any of enumrated value - enum: - - CSEPP - - PSEPP - SupportedFunc: - type: object - properties: - function: - type: string - policy: - type: string - SupportedFuncList: - type: array - items: - $ref: '#/components/schemas/SupportedFunc' - CommModelType: - type: string - description: any of enumrated value - enum: - - DIRECT_COMMUNICATION_WO_NRF - - DIRECT_COMMUNICATION_WITH_NRF - - INDIRECT_COMMUNICATION_WO_DEDICATED_DISCOVERY - - INDIRECT_COMMUNICATION_WITH_DEDICATED_DISCOVERY - CommModel: - type: object - properties: - groupId: - type: integer - commModelType: - $ref: '#/components/schemas/CommModelType' - targetNFServiceList: - $ref: 'genericNrm.yaml#/components/schemas/DnList' - commModelConfiguration: - type: string - CommModelList: - type: array - items: - $ref: '#/components/schemas/CommModel' - CapabilityList: - type: array - items: - type: string - FiveQiDscpMapping: - type: object - properties: - fiveQIValues: - type: array - items: - type: integer - dscp: - type: integer - - PacketErrorRate: - type: object - properties: - scalar: - type: integer - exponent: - type: integer - FiveQICharacteristics: - type: object - properties: - fiveQIValue: - type: integer - resourceType: - type: string - enum: - - GBR - - NonGBR - priorityLevel: - type: integer - packetDelayBudget: - type: integer - packetErrorRate: - $ref: '#/components/schemas/PacketErrorRate' - averagingWindow: - type: integer - maximumDataBurstVolume: - type: integer - - - GtpUPathDelayThresholdsType: - type: object - properties: - n3AveragePacketDelayThreshold: - type: integer - n3MinPacketDelayThreshold: - type: integer - n3MaxPacketDelayThreshold: - type: integer - n9AveragePacketDelayThreshold: - type: integer - n9MinPacketDelayThreshold: - type: integer - n9MaxPacketDelayThreshold: - type: integer - QFPacketDelayThresholdsType: - type: object - properties: - thresholdDl: - type: integer - thresholdUl: - type: integer - thresholdRtt: - type: integer - - QosData: - type: object - properties: - qosId: - type: string - fiveQIValue: - type: integer - maxbrUl: - $ref: '/rep/all/5G_APIs/raw/master/TS29571_CommonData.yaml#/components/schemas/BitRateRm' - maxbrDl: - $ref: '/rep/all/5G_APIs/raw/master/TS29571_CommonData.yaml#/components/schemas/BitRateRm' - gbrUl: - $ref: '/rep/all/5G_APIs/raw/master/TS29571_CommonData.yaml#/components/schemas/BitRateRm' - gbrDl: - $ref: '/rep/all/5G_APIs/raw/master/TS29571_CommonData.yaml#/components/schemas/BitRateRm' - arp: - $ref: '/rep/all/5G_APIs/raw/master/TS29571_CommonData.yaml#/components/schemas/Arp' - qosNotificationControl: - type: boolean - reflectiveQos: - type: boolean - sharingKeyDl: - type: string - sharingKeyUl: - type: string - maxPacketLossRateDl: - $ref: '/rep/all/5G_APIs/raw/master/TS29571_CommonData.yaml#/components/schemas/PacketLossRateRm' - maxPacketLossRateUl: - $ref: '/rep/all/5G_APIs/raw/master/TS29571_CommonData.yaml#/components/schemas/PacketLossRateRm' - extMaxDataBurstVol: - $ref: '/rep/all/5G_APIs/raw/master/TS29571_CommonData.yaml#/components/schemas/ExtMaxDataBurstVolRm' - QosDataList: - type: array - items: - $ref: '#/components/schemas/QosData' - SteeringMode: - type: object - properties: - steerModeValue: - $ref: '/rep/all/5G_APIs/raw/master/TS29512_Npcf_SMPolicyControl.yaml#/components/schemas/SteerModeValue' - active: - $ref: '/rep/all/5G_APIs/raw/master/TS29571_CommonData.yaml#/components/schemas/AccessType' - standby: - $ref: '/rep/all/5G_APIs/raw/master/TS29571_CommonData.yaml#/components/schemas/AccessTypeRm' - threeGLoad: - $ref: '/rep/all/5G_APIs/raw/master/TS29571_CommonData.yaml#/components/schemas/Uinteger' - prioAcc: - $ref: '/rep/all/5G_APIs/raw/master/TS29571_CommonData.yaml#/components/schemas/AccessType' - TrafficControlData: - type: object - properties: - tcId: - type: string - flowStatus: - $ref: '/rep/all/5G_APIs/raw/master/TS29514_Npcf_PolicyAuthorization.yaml#/components/schemas/FlowStatus' - redirectInfo: - $ref: '/rep/all/5G_APIs/raw/master/TS29512_Npcf_SMPolicyControl.yaml#/components/schemas/RedirectInformation' - addRedirectInfo: - type: array - items: - $ref: '/rep/all/5G_APIs/raw/master/TS29512_Npcf_SMPolicyControl.yaml#/components/schemas/RedirectInformation' - minItems: 1 - muteNotif: - type: boolean - trafficSteeringPolIdDl: - type: string - nullable: true - trafficSteeringPolIdUl: - type: string - nullable: true - routeToLocs: - type: array - items: - $ref: '/rep/all/5G_APIs/raw/master/TS29571_CommonData.yaml#/components/schemas/RouteToLocation' - traffCorreInd: - type: boolean - upPathChgEvent: - $ref: '/rep/all/5G_APIs/raw/master/TS29571_CommonData.yaml#/components/schemas/UpPathChgEvent' - steerFun: - $ref: '/rep/all/5G_APIs/raw/master/TS29571_CommonData.yaml#/components/schemas/SteeringFunctionality' - steerModeDl: - $ref: '#/components/schemas/SteeringMode' - steerModeUl: - $ref: '#/components/schemas/SteeringMode' - mulAccCtrl: - $ref: '/rep/all/5G_APIs/raw/master/TS29571_CommonData.yaml#/components/schemas/MulticastAccessControl' - TrafficControlDataList: - type: array - items: - $ref: '#/components/schemas/TrafficControlData' - PccRule: - type: object - properties: - pccRuleId: - type: string - description: Univocally identifies the PCC rule within a PDU session. - flowInfoList: - type: array - items: - $ref: '/rep/all/5G_APIs/raw/master/TS29512_Npcf_SMPolicyControl.yaml#/components/schemas/FlowInformation' - applicationId: - type: string - appDescriptor: - $ref: '/rep/all/5G_APIs/raw/master/TS29512_Npcf_SMPolicyControl.yaml#/components/schemas/ApplicationDescriptor' - contentVersion: - $ref: '/rep/all/5G_APIs/raw/master/TS29514_Npcf_PolicyAuthorization.yaml#/components/schemas/ContentVersion' - precedence: - $ref: '/rep/all/5G_APIs/raw/master/TS29571_CommonData.yaml#/components/schemas/Uinteger' - afSigProtocol: - $ref: '/rep/all/5G_APIs/raw/master/TS29512_Npcf_SMPolicyControl.yaml#/components/schemas/AfSigProtocol' - isAppRelocatable: - type: boolean - isUeAddrPreserved: - type: boolean - qosData: - type: array - items: - $ref: '#/components/schemas/QosDataList' - altQosParams: - type: array - items: - $ref: '#/components/schemas/QosDataList' - trafficControlData: - type: array - items: - $ref: '#/components/schemas/TrafficControlDataList' - conditionData: - $ref: '/rep/all/5G_APIs/raw/master/TS29512_Npcf_SMPolicyControl#/components/schemas/ConditionData' - tscaiInputDl: - $ref: '/rep/all/5G_APIs/raw/master/TS29514_Npcf_PolicyAuthorization.yaml#/components/schemas/TscaiInputContainer' - tscaiInputUl: - $ref: '/rep/all/5G_APIs/raw/master/TS29514_Npcf_PolicyAuthorization.yaml#/components/schemas/TscaiInputContainer' -#-------- Definition of concrete IOCs -------------------------------------------- - - SubNetwork-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/SubNetwork-Attr' - - $ref: 'genericNrm.yaml#/components/schemas/SubNetwork-ncO' - - type: object - properties: - SubNetwork: - $ref: '#/components/schemas/SubNetwork-Multiple' - ManagedElement: - $ref: '#/components/schemas/ManagedElement-Multiple' - ExternalAmfFunction: - $ref: '#/components/schemas/ExternalAmfFunction-Multiple' - ExternalNrfFunction: - $ref: '#/components/schemas/ExternalNrfFunction-Multiple' - ExternalNssfFunction: - $ref: '#/components/schemas/ExternalNssfFunction-Multiple' - AmfSet: - $ref: '#/components/schemas/AmfSet-Multiple' - AmfRegion: - $ref: '#/components/schemas/AmfRegion-Multiple' - Configurable5QISet: - $ref: '#/components/schemas/Configurable5QISet-Multiple' - Dynamic5QISet: - $ref: '#/components/schemas/Dynamic5QISet-Multiple' - - ManagedElement-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/ManagedElement-Attr' - - $ref: 'genericNrm.yaml#/components/schemas/ManagedElement-ncO' - - type: object - properties: - AmfFunction: - $ref: '#/components/schemas/AmfFunction-Multiple' - SmfFunction: - $ref: '#/components/schemas/SmfFunction-Multiple' - UpfFunction: - $ref: '#/components/schemas/UpfFunction-Multiple' - N3iwfFunction: - $ref: '#/components/schemas/N3iwfFunction-Multiple' - PcfFunction: - $ref: '#/components/schemas/PcfFunction-Multiple' - AusfFunction: - $ref: '#/components/schemas/AusfFunction-Multiple' - UdmFunction: - $ref: '#/components/schemas/UdmFunction-Multiple' - UdrFunction: - $ref: '#/components/schemas/UdrFunction-Multiple' - UdsfFunction: - $ref: '#/components/schemas/UdsfFunction-Multiple' - NrfFunction: - $ref: '#/components/schemas/NrfFunction-Multiple' - NssfFunction: - $ref: '#/components/schemas/NssfFunction-Multiple' - SmsfFunction: - $ref: '#/components/schemas/SmsfFunction-Multiple' - LmfFunction: - $ref: '#/components/schemas/LmfFunction-Multiple' - NgeirFunction: - $ref: '#/components/schemas/NgeirFunction-Multiple' - SeppFunction: - $ref: '#/components/schemas/SeppFunction-Multiple' - NwdafFunction: - $ref: '#/components/schemas/NwdafFunction-Multiple' - ScpFunction: - $ref: '#/components/schemas/ScpFunction-Multiple' - NefFunction: - $ref: '#/components/schemas/NefFunction-Multiple' - Configurable5QISet: - $ref: '#/components/schemas/Configurable5QISet-Multiple' - Dynamic5QISet: - $ref: '#/components/schemas/Dynamic5QISet-Multiple' - AmfFunction-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' - - type: object - properties: - plmnIdList: - $ref: 'nrNrm.yaml#/components/schemas/PlmnIdList' - amfIdentifier: - $ref: '#/components/schemas/AmfIdentifier' - sBIFqdn: - type: string - weightFactor: - $ref: '#/components/schemas/WeightFactor' - snssaiList: - $ref: 'nrNrm.yaml#/components/schemas/SnssaiList' - amfSet: - $ref: 'genericNrm.yaml#/components/schemas/Dn' - managedNFProfile: - $ref: '#/components/schemas/ManagedNFProfile' - commModelList: - $ref: '#/components/schemas/CommModelList' - - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' - - type: object - properties: - EP_N2: - $ref: '#/components/schemas/EP_N2-Multiple' - EP_N8: - $ref: '#/components/schemas/EP_N8-Multiple' - EP_N11: - $ref: '#/components/schemas/EP_N11-Multiple' - EP_N12: - $ref: '#/components/schemas/EP_N12-Multiple' - EP_N14: - $ref: '#/components/schemas/EP_N14-Multiple' - EP_N15: - $ref: '#/components/schemas/EP_N15-Multiple' - EP_N17: - $ref: '#/components/schemas/EP_N17-Multiple' - EP_N20: - $ref: '#/components/schemas/EP_N20-Multiple' - EP_N22: - $ref: '#/components/schemas/EP_N22-Multiple' - EP_N26: - $ref: '#/components/schemas/EP_N26-Multiple' - EP_NLS: - $ref: '#/components/schemas/EP_NLS-Multiple' - EP_NLG: - $ref: '#/components/schemas/EP_NLG-Multiple' - AmfSet-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' - - type: object - properties: - plmnIdList: - $ref: 'nrNrm.yaml#/components/schemas/PlmnIdList' - nRTACList: - $ref: '#/components/schemas/TACList' - amfSetId: - $ref: '#/components/schemas/AmfSetId' - snssaiList: - $ref: 'nrNrm.yaml#/components/schemas/SnssaiList' - AmfRegion-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' - - type: object - properties: - plmnIdList: - $ref: 'nrNrm.yaml#/components/schemas/PlmnIdList' - nRTACList: - $ref: '#/components/schemas/TACList' - amfRegionId: - $ref: '#/components/schemas/AmfRegionId' - snssaiList: - $ref: 'nrNrm.yaml#/components/schemas/SnssaiList' - SmfFunction-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' - - type: object - properties: - plmnIdList: - $ref: 'nrNrm.yaml#/components/schemas/PlmnIdList' - nRTACList: - $ref: '#/components/schemas/TACList' - sBIFqdn: - type: string - snssaiList: - $ref: 'nrNrm.yaml#/components/schemas/SnssaiList' - managedNFProfile: - $ref: '#/components/schemas/ManagedNFProfile' - commModelList: - $ref: '#/components/schemas/CommModelList' - configurable5QISetRef: - $ref: 'genericNRM.yaml#/components/schemas/Dn' - dynamic5QISetRef: - $ref: 'genericNRM.yaml#/components/schemas/Dn' - - - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' - - type: object - properties: - EP_N4: - $ref: '#/components/schemas/EP_N4-Multiple' - EP_N7: - $ref: '#/components/schemas/EP_N7-Multiple' - EP_N10: - $ref: '#/components/schemas/EP_N10-Multiple' - EP_N11: - $ref: '#/components/schemas/EP_N11-Multiple' - EP_N16: - $ref: '#/components/schemas/EP_N16-Multiple' - EP_S5C: - $ref: '#/components/schemas/EP_S5C-Multiple' - FiveQiDscpMappingSet: - $ref: '#/components/schemas/FiveQiDscpMappingSet-Single' - GtpUPathQoSMonitoringControl: - $ref: '#/components/schemas/GtpUPathQoSMonitoringControl-Single' - QFQoSMonitoringControl: - $ref: '#/components/schemas/QFQoSMonitoringControl-Single' - PredefinedPccRuleSet: - $ref: '#/components/schemas/PredefinedPccRuleSet-Single' - - UpfFunction-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' - - type: object - properties: - plmnIdList: - $ref: 'nrNrm.yaml#/components/schemas/PlmnIdList' - nRTACList: - $ref: '#/components/schemas/TACList' - snssaiList: - $ref: 'nrNrm.yaml#/components/schemas/SnssaiList' - managedNFProfile: - $ref: '#/components/schemas/ManagedNFProfile' - commModelList: - $ref: '#/components/schemas/CommModelList' - - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' - - type: object - properties: - EP_N3: - $ref: '#/components/schemas/EP_N3-Multiple' - EP_N4: - $ref: '#/components/schemas/EP_N4-Multiple' - EP_N6: - $ref: '#/components/schemas/EP_N6-Multiple' - EP_N9: - $ref: '#/components/schemas/EP_N9-Multiple' - EP_S5U: - $ref: '#/components/schemas/EP_S5U-Multiple' - N3iwfFunction-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' - - type: object - properties: - plmnIdList: - $ref: 'nrNrm.yaml#/components/schemas/PlmnIdList' - commModelList: - $ref: '#/components/schemas/CommModelList' - - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' - - type: object - properties: - EP_N3: - $ref: '#/components/schemas/EP_N3-Multiple' - EP_N4: - $ref: '#/components/schemas/EP_N4-Multiple' - PcfFunction-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' - - type: object - properties: - plmnIdList: - $ref: 'nrNrm.yaml#/components/schemas/PlmnIdList' - sBIFqdn: - type: string - snssaiList: - $ref: 'nrNrm.yaml#/components/schemas/SnssaiList' - managedNFProfile: - $ref: '#/components/schemas/ManagedNFProfile' - commModelList: - $ref: '#/components/schemas/CommModelList' - configurable5QISetRef: - $ref: 'genericNRM.yaml#/components/schemas/Dn' - dynamic5QISetRef: - $ref: 'genericNRM.yaml#/components/schemas/Dn' - - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' - - type: object - properties: - EP_N5: - $ref: '#/components/schemas/EP_N5-Multiple' - EP_N7: - $ref: '#/components/schemas/EP_N7-Multiple' - EP_N15: - $ref: '#/components/schemas/EP_N15-Multiple' - EP_N16: - $ref: '#/components/schemas/EP_N16-Multiple' - EP_Rx: - $ref: '#/components/schemas/EP_Rx-Multiple' - PredefinedPccRuleSet: - $ref: '#/components/schemas/PredefinedPccRuleSet-Single' - AusfFunction-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' - - type: object - properties: - plmnIdList: - $ref: 'nrNrm.yaml#/components/schemas/PlmnIdList' - sBIFqdn: - type: string - snssaiList: - $ref: 'nrNrm.yaml#/components/schemas/SnssaiList' - managedNFProfile: - $ref: '#/components/schemas/ManagedNFProfile' - commModelList: - $ref: '#/components/schemas/CommModelList' - - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' - - type: object - properties: - EP_N12: - $ref: '#/components/schemas/EP_N12-Multiple' - EP_N13: - $ref: '#/components/schemas/EP_N13-Multiple' - UdmFunction-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' - - type: object - properties: - plmnIdList: - $ref: 'nrNrm.yaml#/components/schemas/PlmnIdList' - sBIFqdn: - type: string - snssaiList: - $ref: 'nrNrm.yaml#/components/schemas/SnssaiList' - managedNFProfile: - $ref: '#/components/schemas/ManagedNFProfile' - commModelList: - $ref: '#/components/schemas/CommModelList' - - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' - - type: object - properties: - EP_N8: - $ref: '#/components/schemas/EP_N8-Multiple' - EP_N10: - $ref: '#/components/schemas/EP_N10-Multiple' - EP_N13: - $ref: '#/components/schemas/EP_N13-Multiple' - UdrFunction-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' - - type: object - properties: - plmnIdList: - $ref: 'nrNrm.yaml#/components/schemas/PlmnIdList' - sBIFqdn: - type: string - snssaiList: - $ref: 'nrNrm.yaml#/components/schemas/SnssaiList' - managedNFProfile: - $ref: '#/components/schemas/ManagedNFProfile' - UdsfFunction-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' - - type: object - properties: - plmnIdList: - $ref: 'nrNrm.yaml#/components/schemas/PlmnIdList' - sBIFqdn: - type: string - snssaiList: - $ref: 'nrNrm.yaml#/components/schemas/SnssaiList' - managedNFProfile: - $ref: '#/components/schemas/ManagedNFProfile' - NrfFunction-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' - - type: object - properties: - plmnIdList: - $ref: 'nrNrm.yaml#/components/schemas/PlmnIdList' - sBIFqdn: - type: string - cNSIIdList: - $ref: '#/components/schemas/CNSIIdList' - nFProfileList: - $ref: '#/components/schemas/NFProfileList' - snssaiList: - $ref: 'nrNrm.yaml#/components/schemas/SnssaiList' - - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' - - type: object - properties: - EP_N27: - $ref: '#/components/schemas/EP_N27-Multiple' - NssfFunction-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' - - type: object - properties: - plmnIdList: - $ref: 'nrNrm.yaml#/components/schemas/PlmnIdList' - sBIFqdn: - type: string - cNSIIdList: - $ref: '#/components/schemas/CNSIIdList' - nFProfileList: - $ref: '#/components/schemas/NFProfileList' - snssaiList: - $ref: 'nrNrm.yaml#/components/schemas/SnssaiList' - commModelList: - $ref: '#/components/schemas/CommModelList' - - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' - - type: object - properties: - EP_N22: - $ref: '#/components/schemas/EP_N22-Multiple' - EP_N31: - $ref: '#/components/schemas/EP_N31-Multiple' - SmsfFunction-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' - - type: object - properties: - plmnIdList: - $ref: 'nrNrm.yaml#/components/schemas/PlmnIdList' - sBIFqdn: - type: string - managedNFProfile: - $ref: '#/components/schemas/ManagedNFProfile' - commModelList: - $ref: '#/components/schemas/CommModelList' - - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' - - type: object - properties: - EP_N20: - $ref: '#/components/schemas/EP_N20-Multiple' - EP_N21: - $ref: '#/components/schemas/EP_N21-Multiple' - EP_MAP_SMSC: - $ref: '#/components/schemas/EP_MAP_SMSC-Multiple' - LmfFunction-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' - - type: object - properties: - plmnIdList: - $ref: 'nrNrm.yaml#/components/schemas/PlmnIdList' - managedNFProfile: - $ref: '#/components/schemas/ManagedNFProfile' - commModelList: - $ref: '#/components/schemas/CommModelList' - - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' - - type: object - properties: - EP_NLS: - $ref: '#/components/schemas/EP_NLS-Multiple' - NgeirFunction-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' - - type: object - properties: - plmnIdList: - $ref: 'nrNrm.yaml#/components/schemas/PlmnIdList' - sBIFqdn: - type: string - snssaiList: - $ref: 'nrNrm.yaml#/components/schemas/SnssaiList' - managedNFProfile: - $ref: '#/components/schemas/ManagedNFProfile' - commModelList: - $ref: '#/components/schemas/CommModelList' - - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' - - type: object - properties: - EP_N17: - $ref: '#/components/schemas/EP_N17-Multiple' - SeppFunction-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' - - type: object - properties: - plmnId: - $ref: 'nrNrm.yaml#/components/schemas/PlmnId' - sEPPType: - $ref: '#/components/schemas/SEPPType' - sEPPId: - type: integer - fqdn: - $ref: 'genericNrm.yaml#/components/schemas/Fqdn' - - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' - - type: object - properties: - EP_N32: - $ref: '#/components/schemas/EP_N32-Multiple' - NwdafFunction-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' - - type: object - properties: - plmnIdList: - $ref: 'nrNrm.yaml#/components/schemas/PlmnIdList' - sBIFqdn: - type: string - snssaiList: - $ref: 'nrNrm.yaml#/components/schemas/SnssaiList' - managedNFProfile: - $ref: '#/components/schemas/ManagedNFProfile' - commModelList: - $ref: '#/components/schemas/CommModelList' - ScpFunction-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' - - type: object - properties: - supportedFuncList: - $ref: '#/components/schemas/SupportedFuncList' - address: - $ref: 'genericNrm.yaml#/components/schemas/HostAddr' - - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' - NefFunction-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' - - type: object - properties: - sBIFqdn: - type: string - snssaiList: - $ref: 'nrNrm.yaml#/components/schemas/SnssaiList' - managedNFProfile: - $ref: '#/components/schemas/ManagedNFProfile' - capabilityList: - $ref: '#/components/schemas/CapabilityList' - isINEF: - type: boolean - isCAPIFSup: - type: boolean - - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' - - ExternalAmfFunction-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' - - type: object - properties: - plmnIdList: - $ref: 'nrNrm.yaml#/components/schemas/PlmnIdList' - amfIdentifier: - $ref: '#/components/schemas/AmfIdentifier' - ExternalNrfFunction-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' - - type: object - properties: - plmnIdList: - $ref: 'nrNrm.yaml#/components/schemas/PlmnIdList' - ExternalNssfFunction-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' - - type: object - properties: - plmnIdList: - $ref: 'nrNrm.yaml#/components/schemas/PlmnIdList' - ExternalSeppFunction-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' - - type: object - properties: - plmnId: - $ref: 'nrNrm.yaml#/components/schemas/PlmnId' - sEPPId: - type: integer - fqdn: - $ref: 'genericNrm.yaml#/components/schemas/Fqdn' - - - EP_N2-Single: - allOf: - - $ref: 'genericNRM.yaml#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNRM.yaml#/components/schemas/EP_RP-Attr' - - type: object - properties: - localAddress: - $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' - remoteAddress: - $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' - EP_N3-Single: - allOf: - - $ref: 'genericNRM.yaml#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNRM.yaml#/components/schemas/EP_RP-Attr' - - type: object - properties: - localAddress: - $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' - remoteAddress: - $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' - epTransportRefs: - $ref: 'genericNrm.yaml#/components/schemas/DnList' - EP_N4-Single: - allOf: - - $ref: 'genericNRM.yaml#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNRM.yaml#/components/schemas/EP_RP-Attr' - - type: object - properties: - localAddress: - $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' - remoteAddress: - $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' - EP_N5-Single: - allOf: - - $ref: 'genericNRM.yaml#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNRM.yaml#/components/schemas/EP_RP-Attr' - - type: object - properties: - localAddress: - $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' - remoteAddress: - $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' - EP_N6-Single: - allOf: - - $ref: 'genericNRM.yaml#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNRM.yaml#/components/schemas/EP_RP-Attr' - - type: object - properties: - localAddress: - $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' - remoteAddress: - $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' - EP_N7-Single: - allOf: - - $ref: 'genericNRM.yaml#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNRM.yaml#/components/schemas/EP_RP-Attr' - - type: object - properties: - localAddress: - $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' - remoteAddress: - $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' - EP_N8-Single: - allOf: - - $ref: 'genericNRM.yaml#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNRM.yaml#/components/schemas/EP_RP-Attr' - - type: object - properties: - localAddress: - $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' - remoteAddress: - $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' - EP_N9-Single: - allOf: - - $ref: 'genericNRM.yaml#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNRM.yaml#/components/schemas/EP_RP-Attr' - - type: object - properties: - localAddress: - $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' - remoteAddress: - $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' - EP_N10-Single: - allOf: - - $ref: 'genericNRM.yaml#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNRM.yaml#/components/schemas/EP_RP-Attr' - - type: object - properties: - localAddress: - $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' - remoteAddress: - $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' - EP_N11-Single: - allOf: - - $ref: 'genericNRM.yaml#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNRM.yaml#/components/schemas/EP_RP-Attr' - - type: object - properties: - localAddress: - $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' - remoteAddress: - $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' - EP_N12-Single: - allOf: - - $ref: 'genericNRM.yaml#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNRM.yaml#/components/schemas/EP_RP-Attr' - - type: object - properties: - localAddress: - $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' - remoteAddress: - $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' - EP_N13-Single: - allOf: - - $ref: 'genericNRM.yaml#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNRM.yaml#/components/schemas/EP_RP-Attr' - - type: object - properties: - localAddress: - $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' - remoteAddress: - $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' - EP_N14-Single: - allOf: - - $ref: 'genericNRM.yaml#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNRM.yaml#/components/schemas/EP_RP-Attr' - - type: object - properties: - localAddress: - $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' - remoteAddress: - $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' - EP_N15-Single: - allOf: - - $ref: 'genericNRM.yaml#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNRM.yaml#/components/schemas/EP_RP-Attr' - - type: object - properties: - localAddress: - $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' - remoteAddress: - $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' - EP_N16-Single: - allOf: - - $ref: 'genericNRM.yaml#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNRM.yaml#/components/schemas/EP_RP-Attr' - - type: object - properties: - localAddress: - $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' - remoteAddress: - $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' - EP_N17-Single: - allOf: - - $ref: 'genericNRM.yaml#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNRM.yaml#/components/schemas/EP_RP-Attr' - - type: object - properties: - localAddress: - $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' - remoteAddress: - $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' - - EP_N20-Single: - allOf: - - $ref: 'genericNRM.yaml#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNRM.yaml#/components/schemas/EP_RP-Attr' - - type: object - properties: - localAddress: - $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' - remoteAddress: - $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' - - EP_N21-Single: - allOf: - - $ref: 'genericNRM.yaml#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNRM.yaml#/components/schemas/EP_RP-Attr' - - type: object - properties: - localAddress: - $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' - remoteAddress: - $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' - EP_N22-Single: - allOf: - - $ref: 'genericNRM.yaml#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNRM.yaml#/components/schemas/EP_RP-Attr' - - type: object - properties: - localAddress: - $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' - remoteAddress: - $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' - - EP_N26-Single: - allOf: - - $ref: 'genericNRM.yaml#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNRM.yaml#/components/schemas/EP_RP-Attr' - - type: object - properties: - localAddress: - $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' - remoteAddress: - $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' - EP_N27-Single: - allOf: - - $ref: 'genericNRM.yaml#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNRM.yaml#/components/schemas/EP_RP-Attr' - - type: object - properties: - localAddress: - $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' - remoteAddress: - $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' - - - EP_N31-Single: - allOf: - - $ref: 'genericNRM.yaml#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNRM.yaml#/components/schemas/EP_RP-Attr' - - type: object - properties: - localAddress: - $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' - remoteAddress: - $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' - EP_N32-Single: - allOf: - - $ref: 'genericNRM.yaml#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNRM.yaml#/components/schemas/EP_RP-Attr' - - type: object - properties: - remotePlmnId: - $ref: 'nrNrm.yaml#/components/schemas/PlmnId' - remoteSeppAddress: - $ref: 'genericNrm.yaml#/components/schemas/HostAddr' - remoteSeppId: - type: integer - n32cParas: - type: string - n32fPolicy: - type: string - withIPX: - type: boolean - - EP_S5C-Single: - allOf: - - $ref: 'genericNRM.yaml#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNRM.yaml#/components/schemas/EP_RP-Attr' - - type: object - properties: - localAddress: - $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' - remoteAddress: - $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' - EP_S5U-Single: - allOf: - - $ref: 'genericNRM.yaml#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNRM.yaml#/components/schemas/EP_RP-Attr' - - type: object - properties: - localAddress: - $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' - remoteAddress: - $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' - EP_Rx-Single: - allOf: - - $ref: 'genericNRM.yaml#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNRM.yaml#/components/schemas/EP_RP-Attr' - - type: object - properties: - localAddress: - $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' - remoteAddress: - $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' - EP_MAP_SMSC-Single: - allOf: - - $ref: 'genericNRM.yaml#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNRM.yaml#/components/schemas/EP_RP-Attr' - - type: object - properties: - localAddress: - $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' - remoteAddress: - $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' - EP_NLS-Single: - allOf: - - $ref: 'genericNRM.yaml#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNRM.yaml#/components/schemas/EP_RP-Attr' - - type: object - properties: - localAddress: - $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' - remoteAddress: - $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' - EP_NLG-Single: - allOf: - - $ref: 'genericNRM.yaml#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNRM.yaml#/components/schemas/EP_RP-Attr' - - type: object - properties: - localAddress: - $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' - remoteAddress: - $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' - - FiveQiDscpMappingSet-Single: - allOf: - - $ref: 'genericNRM.yaml#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - allOf: - - type: object - properties: - FiveQiDscpMappingList: - type: array - items: - $ref: '#/components/schemas/FiveQiDscpMapping' - - Configurable5QISet-Single: - allOf: - - $ref: 'genericNRM.yaml#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - allOf: - - type: object - properties: - configurable5QIs: - type: array - items: - $ref: '#/components/schemas/FiveQICharacteristics' - Dynamic5QISet-Single: - allOf: - - $ref: 'genericNRM.yaml#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - allOf: - - type: object - properties: - dynamic5QIs: - type: array - items: - $ref: '#/components/schemas/FiveQICharacteristics' - GtpUPathQoSMonitoringControl-Single: - allOf: - - $ref: 'genericNRM.yaml#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - allOf: - - type: object - properties: - gtpUPathQoSMonitoringState: - type: string - enum: - - ENABLED - - DISABLED - gtpUPathMonitoredSNSSAIs: - type: array - items: - $ref: 'nrNrm.yaml#/components/schemas/Snssai' - monitoredDSCPs: - type: array - items: - type: integer - minimum: 0 - maximum: 255 - isEventTriggeredGtpUPathMonitoringSupported: - type: boolean - isPeriodicGtpUMonitoringSupported: - type: boolean - isImmediateGtpUMonitoringSupported: - type: boolean - gtpUPathDelayThresholds: - $ref: '#/components/schemas/GtpUPathDelayThresholdsType' - gtpUPathMinimumWaitTime: - type: integer - gtpUPathMeasurementPeriod: - type: integer - - QFQoSMonitoringControl-Single: - allOf: - - $ref: 'genericNRM.yaml#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - allOf: - - type: object - properties: - qFQoSMonitoringState: - type: string - enum: - - ENABLED - - DISABLED - qFMonitoredSNSSAIs: - type: array - items: - $ref: 'nrNrm.yaml#/components/schemas/Snssai' - qFMonitored5QIs: - type: array - items: - type: integer - minimum: 0 - maximum: 255 - isEventTriggeredQFMonitoringSupported: - type: boolean - isPeriodicQFMonitoringSupported: - type: boolean - isSessionReleasedQFMonitoringSupported: - type: boolean - qFPacketDelayThresholds: - $ref: '#/components/schemas/QFPacketDelayThresholdsType' - qFMinimumWaitTime: - type: integer - qFMeasurementPeriod: - type: integer - - PredefinedPccRuleSet-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - allOf: - - type: object - properties: - predefinedPccRules: - type: array - items: - $ref: '#/components/schemas/PccRule' - -#-------- Definition of JSON arrays for name-contained IOCs ---------------------- - - SubNetwork-Multiple: - type: array - items: - $ref: '#/components/schemas/SubNetwork-Single' - ManagedElement-Multiple: - type: array - items: - $ref: '#/components/schemas/ManagedElement-Single' - AmfFunction-Multiple: - type: array - items: - $ref: '#/components/schemas/AmfFunction-Single' - SmfFunction-Multiple: - type: array - items: - $ref: '#/components/schemas/SmfFunction-Single' - UpfFunction-Multiple: - type: array - items: - $ref: '#/components/schemas/UpfFunction-Single' - N3iwfFunction-Multiple: - type: array - items: - $ref: '#/components/schemas/N3iwfFunction-Single' - PcfFunction-Multiple: - type: array - items: - $ref: '#/components/schemas/PcfFunction-Single' - AusfFunction-Multiple: - type: array - items: - $ref: '#/components/schemas/AusfFunction-Single' - UdmFunction-Multiple: - type: array - items: - $ref: '#/components/schemas/UdmFunction-Single' - UdrFunction-Multiple: - type: array - items: - $ref: '#/components/schemas/UdrFunction-Single' - UdsfFunction-Multiple: - type: array - items: - $ref: '#/components/schemas/UdsfFunction-Single' - NrfFunction-Multiple: - type: array - items: - $ref: '#/components/schemas/NrfFunction-Single' - NssfFunction-Multiple: - type: array - items: - $ref: '#/components/schemas/NssfFunction-Single' - SmsfFunction-Multiple: - type: array - items: - $ref: '#/components/schemas/SmsfFunction-Single' - LmfFunction-Multiple: - type: array - items: - $ref: '#/components/schemas/LmfFunction-Single' - NgeirFunction-Multiple: - type: array - items: - $ref: '#/components/schemas/NgeirFunction-Single' - SeppFunction-Multiple: - type: array - items: - $ref: '#/components/schemas/SeppFunction-Single' - NwdafFunction-Multiple: - type: array - items: - $ref: '#/components/schemas/NwdafFunction-Single' - ScpFunction-Multiple: - type: array - items: - $ref: '#/components/schemas/ScpFunction-Single' - NefFunction-Multiple: - type: array - items: - $ref: '#/components/schemas/NefFunction-Single' - - ExternalAmfFunction-Multiple: - type: array - items: - $ref: '#/components/schemas/ExternalAmfFunction-Single' - ExternalNrfFunction-Multiple: - type: array - items: - $ref: '#/components/schemas/ExternalNrfFunction-Single' - ExternalNssfFunction-Multiple: - type: array - items: - $ref: '#/components/schemas/ExternalNssfFunction-Single' - ExternalSeppFunction-Nultiple: - type: array - items: - $ref: '#/components/schemas/ExternalSeppFunction-Single' - - AmfSet-Multiple: - type: array - items: - $ref: '#/components/schemas/AmfSet-Single' - AmfRegion-Multiple: - type: array - items: - $ref: '#/components/schemas/AmfRegion-Single' - - EP_N2-Multiple: - type: array - items: - $ref: '#/components/schemas/EP_N2-Single' - EP_N3-Multiple: - type: array - items: - $ref: '#/components/schemas/EP_N3-Single' - EP_N4-Multiple: - type: array - items: - $ref: '#/components/schemas/EP_N4-Single' - EP_N5-Multiple: - type: array - items: - $ref: '#/components/schemas/EP_N5-Single' - EP_N6-Multiple: - type: array - items: - $ref: '#/components/schemas/EP_N6-Single' - EP_N7-Multiple: - type: array - items: - $ref: '#/components/schemas/EP_N7-Single' - EP_N8-Multiple: - type: array - items: - $ref: '#/components/schemas/EP_N8-Single' - EP_N9-Multiple: - type: array - items: - $ref: '#/components/schemas/EP_N9-Single' - EP_N10-Multiple: - type: array - items: - $ref: '#/components/schemas/EP_N10-Single' - EP_N11-Multiple: - type: array - items: - $ref: '#/components/schemas/EP_N11-Single' - EP_N12-Multiple: - type: array - items: - $ref: '#/components/schemas/EP_N12-Single' - EP_N13-Multiple: - type: array - items: - $ref: '#/components/schemas/EP_N13-Single' - EP_N14-Multiple: - type: array - items: - $ref: '#/components/schemas/EP_N14-Single' - EP_N15-Multiple: - type: array - items: - $ref: '#/components/schemas/EP_N15-Single' - EP_N16-Multiple: - type: array - items: - $ref: '#/components/schemas/EP_N16-Single' - EP_N17-Multiple: - type: array - items: - $ref: '#/components/schemas/EP_N17-Single' - - EP_N20-Multiple: - type: array - items: - $ref: '#/components/schemas/EP_N20-Single' - EP_N21-Multiple: - type: array - items: - $ref: '#/components/schemas/EP_N21-Single' - EP_N22-Multiple: - type: array - items: - $ref: '#/components/schemas/EP_N22-Single' - - EP_N26-Multiple: - type: array - items: - $ref: '#/components/schemas/EP_N26-Single' - EP_N27-Multiple: - type: array - items: - $ref: '#/components/schemas/EP_N27-Single' - - EP_N31-Multiple: - type: array - items: - $ref: '#/components/schemas/EP_N31-Single' - EP_N32-Multiple: - type: array - items: - $ref: '#/components/schemas/EP_N32-Single' - - EP_S5C-Multiple: - type: array - items: - $ref: '#/components/schemas/EP_S5C-Single' - EP_S5U-Multiple: - type: array - items: - $ref: '#/components/schemas/EP_S5U-Single' - EP_Rx-Multiple: - type: array - items: - $ref: '#/components/schemas/EP_Rx-Single' - EP_MAP_SMSC-Multiple: - type: array - items: - $ref: '#/components/schemas/EP_MAP_SMSC-Single' - EP_NLS-Multiple: - type: array - items: - $ref: '#/components/schemas/EP_NLS-Single' - EP_NLG-Multiple: - type: array - items: - $ref: '#/components/schemas/EP_NLG-Single' - Configurable5QISet-Multiple: - type: array - items: - $ref: '#/components/schemas/Configurable5QISet-Single' - Dynamic5QISet-Multiple: - type: array - items: - $ref: '#/components/schemas/Dynamic5QISet-Single' - - -#------------ Definitions in TS 28.541 for TS 28.532 ----------------------------- - - resources-5gcNrm: - oneOf: - - $ref: '#/components/schemas/SubNetwork-Single' - - $ref: '#/components/schemas/ManagedElement-Single' - - $ref: '#/components/schemas/AmfFunction-Single' - - $ref: '#/components/schemas/SmfFunction-Single' - - $ref: '#/components/schemas/UpfFunction-Single' - - $ref: '#/components/schemas/N3iwfFunction-Single' - - $ref: '#/components/schemas/PcfFunction-Single' - - $ref: '#/components/schemas/AusfFunction-Single' - - $ref: '#/components/schemas/UdmFunction-Single' - - $ref: '#/components/schemas/UdrFunction-Single' - - $ref: '#/components/schemas/UdsfFunction-Single' - - $ref: '#/components/schemas/NrfFunction-Single' - - $ref: '#/components/schemas/NssfFunction-Single' - - $ref: '#/components/schemas/SmsfFunction-Single' - - $ref: '#/components/schemas/LmfFunction-Single' - - $ref: '#/components/schemas/NgeirFunction-Single' - - $ref: '#/components/schemas/SeppFunction-Single' - - $ref: '#/components/schemas/NwdafFunction-Single' - - $ref: '#/components/schemas/ScpFunction-Single' - - $ref: '#/components/schemas/NefFunction-Single' - - - $ref: '#/components/schemas/ExternalAmfFunction-Single' - - $ref: '#/components/schemas/ExternalNrfFunction-Single' - - $ref: '#/components/schemas/ExternalNssfFunction-Single' - - $ref: '#/components/schemas/ExternalSeppFunction-Single' - - - $ref: '#/components/schemas/AmfSet-Single' - - $ref: '#/components/schemas/AmfRegion-Single' - - $ref: '#/components/schemas/QFQoSMonitoringControl-Single' - - $ref: '#/components/schemas/GtpUPathQoSMonitoringControl-Single' - - - $ref: '#/components/schemas/EP_N2-Single' - - $ref: '#/components/schemas/EP_N3-Single' - - $ref: '#/components/schemas/EP_N4-Single' - - $ref: '#/components/schemas/EP_N5-Single' - - $ref: '#/components/schemas/EP_N6-Single' - - $ref: '#/components/schemas/EP_N7-Single' - - $ref: '#/components/schemas/EP_N8-Single' - - $ref: '#/components/schemas/EP_N9-Single' - - $ref: '#/components/schemas/EP_N10-Single' - - $ref: '#/components/schemas/EP_N11-Single' - - $ref: '#/components/schemas/EP_N12-Single' - - $ref: '#/components/schemas/EP_N13-Single' - - $ref: '#/components/schemas/EP_N14-Single' - - $ref: '#/components/schemas/EP_N15-Single' - - $ref: '#/components/schemas/EP_N16-Single' - - $ref: '#/components/schemas/EP_N17-Single' - - - $ref: '#/components/schemas/EP_N20-Single' - - $ref: '#/components/schemas/EP_N21-Single' - - $ref: '#/components/schemas/EP_N22-Single' - - - $ref: '#/components/schemas/EP_N26-Single' - - $ref: '#/components/schemas/EP_N27-Single' - - - $ref: '#/components/schemas/EP_N31-Single' - - $ref: '#/components/schemas/EP_N31-Single' - - - $ref: '#/components/schemas/EP_S5C-Single' - - $ref: '#/components/schemas/EP_S5U-Single' - - $ref: '#/components/schemas/EP_Rx-Single' - - $ref: '#/components/schemas/EP_MAP_SMSC-Single' - - $ref: '#/components/schemas/EP_NLS-Single' - - $ref: '#/components/schemas/EP_NLG-Single' - - $ref: '#/components/schemas/Configurable5QISet-Single' - - $ref: '#/components/schemas/FiveQiDscpMappingSet-Single' - - $ref: '#/components/schemas/PredefinedPccRuleSet-Single' - - $ref: '#/components/schemas/Dynamic5QISet-Single' diff --git a/OpenAPI/PerDataFileReportMnS.yaml b/OpenAPI/PerDataFileReportMnS.yaml deleted file mode 100644 index dfacc14f8..000000000 --- a/OpenAPI/PerDataFileReportMnS.yaml +++ /dev/null @@ -1,272 +0,0 @@ -openapi: 3.0.1 -info: - title: TS 28.532 Performance data file reporting Service - version: 16.4.0 - description: >- - OAS 3.0.1 specification of the Performance data file reporting Management Service © 2020, - 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). All - rights reserved. -externalDocs: - description: 3GPP TS 28.532 V16.4.0; Generic management services - url: 'http://www.3gpp.org/ftp/Specs/archive/28_series/28.532/' -servers: - - url: '{MnSRoot}/PerfDataFileReportMnS/v1640' - variables: - MnSRoot: - description: See subclause 4.4 of TS 32.158 - default: http://example.com/3GPPManagement -paths: - /Files: - get: - summary: Read resources of information of available files - description: 'With HTTP GET, resources of information of available files are read. The resources to be read are identified with the path component (base resource) and the query component (managementDataType, beginTime and endTime) of the URI. The fields query component allows to select the resource properties to be returned.' - parameters: - - name: managementDataType - in: query - description: This parameter identifies the type of management data that the file contains to select the resources from the collection resources identified with the path component of the URI. - required: true - $ref: '#/components/schemas/managementDataType-Type' - - name: beginTime - in: query - description: This parameter identifies the time stamp no later than which the file became available to select the resources from the collection resources identified with the path component of the URI. - required: true - $ref: '#/components/schemas/dateTime-Type' - - name: endTime - in: query - description: This parameter identifies the time stamp no earlier than which the file became available to select the resources from the collection resources identified with the path component of the URI. - required: true - $ref: '#/components/schemas/dateTime-Type' - responses: - '200': - description: 'Success case ("200 OK"). The resources identified in the request for retrieval are returned in the response message body. In case the fields query parameter is used, the selected resources are returned.' - content: - application/json: - schema: - $ref: '#/components/schemas/fileInfoRetrieval-ResponseType' - default: - description: Error case. - content: - application/json: - schema: - $ref: '#/components/schemas/error-ResponseType' - /subscriptions: - post: - summary: Create a subscription - description: To create a subscription the representation of the subscription is POSTed on the /subscriptions collection resource. - requestBody: - required: true - content: - application/json: - schema: - $ref: '#/components/schemas/subscription-RequestType' - responses: - '201': - description: Success case ("201 Created"). The representation of the newly created subscription resource shall be returned. - content: - application/json: - schema: - $ref: '#/components/schemas/subscription-ResponseType' - default: - description: Error case. - content: - application/json: - schema: - $ref: '#/components/schemas/error-ResponseType' - callbacks: - notifyFileReady: - '{request.body#/consumerReference}': - post: - requestBody: - required: true - content: - application/json: - schema: - $ref: '#/components/schemas/notifyFileReady-NotifType' - responses: - '204': - description: Success case ("204 No Content"). The notification is successfully delivered. The response message body is absent. - default: - description: Error case. - content: - application/json: - schema: - $ref: '#/components/schemas/error-ResponseType' - notifyFilePreparationError: - '{request.body#/consumerReference}': - post: - requestBody: - required: true - content: - application/json: - schema: - $ref: '#/components/schemas/notifyFilePreparationError-NotifType' - responses: - '204': - description: Success case ("204 No Content"). The notification is successfully delivered. The response message body is absent. - default: - description: Error case. - content: - application/json: - schema: - $ref: '#/components/schemas/error-ResponseType' - delete: - summary: Delete all subscriptions made with a specific consumerReferenceId - description: The subscriptions are deleted by deleting the corresponding subscription resources. The resources to be deleted are identified with the path component of the URI pointing to the /subscription collection resource and filtering on the consumerReferenceId provided in the query part. - parameters: - - name: consumerReferenceId - in: query - description: Identifies the subscriptions to be deleted. - required: true - schema: - $ref: '#/components/schemas/consumerReferenceId-QueryType' - responses: - '204': - description: Success case ("204 No Content"). The subscription resources have been deleted. The response message body is absent. - default: - description: Error case. - content: - application/json: - schema: - $ref: '#/components/schemas/error-ResponseType' - '/subscriptions/{subscriptionId}': - delete: - summary: Delete a single subscription - description: The subscription is deleted by deleting the corresponding subscription resource. The resource to be deleted is identified with the path component of the URI. - parameters: - - name: subscriptionId - in: path - description: Identifies the subscription to be deleted. - required: true - schema: - $ref: '#/components/schemas/subscriptionId-PathType' - responses: - '204': - description: Success case ("204 No Content"). The subscription resource has been deleted. The response message body is absent. - default: - description: Error case. - content: - application/json: - schema: - $ref: '#/components/schemas/error-ResponseType' -components: - schemas: - dateTime-Type: - type: string - format: date-Time - uri-Type: - type: string - long-Type: - type: string - format: long - additionalText-Type: - type: string - reason-Type: - type: string - fileInfoRetrieval-ResponseType: - type: object - properties: - data: - type: array - items: - $ref: '#/components/schemas/fileInfo-Type' - fileInfo-Type: - type: object - properties: - fileLocation: - $ref: '#/components/schemas/uri-Type' - fileSize: - $ref: '#/components/schemas/long-Type' - fileReadyTime: - $ref: '#/components/schemas/dateTime-Type' - fileExpirationTime: - $ref: '#/components/schemas/dateTime-Type' - fileCompression: - type: string - fileFormat: - type: string - error-ResponseType: - type: object - properties: - error: - type: object - properties: - errorInfo: - type: string - managementDataType-Type: - type: string - enum: - - PM - header-Type: - description: Header used in notifications as notification header - type: object - properties: - uri: - $ref: '#/components/schemas/uri-Type' - notificationId: - $ref: '#/components/schemas/notificationId-Type' - notificationType: - $ref: '#/components/schemas/notificationType-Type' - eventTime: - $ref: '#/components/schemas/dateTime-Type' - subscriptionId-PathType: - type: string - filter-Type: - type: string - notificationId-Type: - $ref: '#/components/schemas/long-Type' - notificationType-Type: - type: string - enum: - - notifyFileReady - - notifyFilePreparationError - subscription-ResourceType: - type: object - properties: - consumerReference: - $ref: '#/components/schemas/uri-Type' - timeTick: - $ref: '#/components/schemas/long-Type' - filter: - $ref: '#/components/schemas/filter-Type' - subscription-RequestType: - type: object - properties: - data: - $ref: '#/components/schemas/subscription-ResourceType' - subscription-ResponseType: - type: object - properties: - data: - $ref: '#/components/schemas/subscription-ResourceType' - consumerReferenceId-QueryType: - $ref: '#/components/schemas/uri-Type' - notifyFileReady-NotifType: - type: object - properties: - header: - $ref: '#/components/schemas/header-Type' - body: - type: object - properties: - fileInfoList: - type: array - items: - $ref: '#/components/schemas/fileInfo-Type' - additionalText: - $ref: '#/components/schemas/additionalText-Type' - notifyFilePreparationError-NotifType: - type: object - properties: - header: - $ref: '#/components/schemas/header-Type' - body: - type: object - properties: - fileInfoList: - type: array - items: - $ref: '#/components/schemas/fileInfo-Type' - reason: - $ref: '#/components/schemas/reason-Type' - additionalText: - $ref: '#/components/schemas/additionalText-Type' diff --git a/OpenAPI/PerMeasJobCtlMnS.yaml b/OpenAPI/PerMeasJobCtlMnS.yaml deleted file mode 100644 index b6abe58b2..000000000 --- a/OpenAPI/PerMeasJobCtlMnS.yaml +++ /dev/null @@ -1,280 +0,0 @@ -openapi: 3.0.1 -info: - title: TS 28.550 Performance Measurement Job Control Service - version: 16.5.0 - description: >- - OAS 3.0.1 specification of the Performance Measurement Job Control Service - @ 2020, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). - All rights reserved. -externalDocs: - description: 3GPP TS 28.550 V16.5.0; Performance assurance - url: http://www.3gpp.org/ftp/Specs/archive/28_series/28.550/ -servers: - - url: 'http://{URI-DN-prefix}/{root}/PerfMeasJobCtrlMnS/v1650/{LDN-first-part}' - variables: - URI-DN-prefix: - description: See subclause 4.4 of TS 32.158 - default: example.com - root: - description: See subclause 4.4 of TS 32.158 - default: 3GPPManagement - LDN-first-part: - description: See subclause 4.4 of TS 32.158 - default: '' -paths: - /measJobs: - post: - summary: Create a measurement job - description: To create a measurement job the representation of the measurement job is POSTed on the /measJobs collection resource. - requestBody: - required: true - content: - application/json: - schema: - $ref: '#/components/schemas/measJobCreation-RequestType' - responses: - '201': - description: Success case ("201 Created"). The representation of the newly created measurement job resource shall be returned. - content: - application/json: - schema: - $ref: '#/components/schemas/measJobCreation-ResponseType' - '202': - description: Partial success case ("202 Partically created"). The representation of the newly created measurement job resource with unsupported list shall be returned. - content: - application/json: - schema: - $ref: '#/components/schemas/measJobCreation-ResponseType' - default: - description: Error case. - content: - application/json: - schema: - $ref: '#/components/schemas/error-ResponseType' - get: - summary: Read resources of measurement jobs - description: 'With HTTP GET, resources of measurement jobs are read. The resources to be read are identified with the path component (base resource) and the query component (jobIdList) of the URI. The fields query component allows to select the resource properties to be returned.' - parameters: - - name: jobIdList - in: query - description: This parameter identifies the list of jobId to select the resources from the collection resources identified with the path component of the URI. - required: true - schema: - type: array - items: - type: string - responses: - '200': - description: 'Success case ("200 OK"). The resources identified in the request for retrieval are returned in the response message body. In case the fields query parameter is used, the selected resources are returned.' - content: - application/json: - schema: - $ref: '#/components/schemas/measJobsRetrieval-ResponseType' - default: - description: Error case. - content: - application/json: - schema: - $ref: '#/components/schemas/error-ResponseType' - '/measJobs/{jobId}': - get: - summary: Read resource of a single measurement job - description: 'With HTTP GET, resource of a measurement job is read. The resource to be read is identified with the path component of the URI.' - parameters: - - name: jobId - in: path - description: Identifies the measurement job to be read. - required: true - schema: - $ref: '#/components/schemas/uri-Type' - responses: - '200': - description: 'Success case ("200 OK"). The resource identified in the path for retrieval is returned in the response message body. ' - content: - application/json: - schema: - $ref: '#/components/schemas/measJobsRetrieval-ResponseType' - default: - description: Error case. - content: - application/json: - schema: - $ref: '#/components/schemas/error-ResponseType' - delete: - summary: Delete a single measurement job - description: The measurement job is deleted by deleting the corresponding measurement job resource. The resource to be deleted is identified with the path component of the URI. - parameters: - - name: jobId - in: path - description: Identifies the measurement job to be deleted. - required: true - schema: - $ref: '#/components/schemas/uri-Type' - responses: - '204': - description: Success case ("204 No Content"). The measurement job resource has been deleted. The response message body is absent. - default: - description: Error case. - content: - application/json: - schema: - $ref: '#/components/schemas/error-ResponseType' -components: - schemas: - dateTime-Type: - type: string - format: date-Time - uri-Type: - type: string - measJobCreation-RequestType: - type: object - properties: - iOCName: - type: string - iOCInstanceList: - type: array - items: - $ref: '#/components/schemas/uri-Type' - measurementCategoryList: - type: array - items: - type: string - reportingMethod: - $ref: '#/components/schemas/reportingMethod-Type' - granularityPeriod: - type: integer - reportingPeriod: - type: integer - startTime: - $ref: '#/components/schemas/dateTime-Type' - stopTime: - $ref: '#/components/schemas/dateTime-Type' - schedule: - $ref: '#/components/schemas/schedule-Type' - streamTarget: - type: string - priority: - $ref: '#/components/schemas/priority-Type' - reliability: - type: string - measJobCreation-ResponseType: - type: object - properties: - unsupportedList: - type: array - items: - $ref: '#/components/schemas/unsupportedMeas-Type' - measJobsRetrieval-ResponseType: - type: object - properties: - jobInfoList: - type: array - items: - $ref: '#/components/schemas/measJobInfo-ResourceType' - error-ResponseType: - type: object - properties: - error: - type: object - properties: - errorInfo: - type: string - measJobInfo-ResourceType: - type: object - properties: - href: - $ref: '#/components/schemas/uri-Type' - iOCName: - type: string - iOCInstanceList: - type: array - items: - $ref: '#/components/schemas/uri-Type' - measurementCategoryList: - type: array - items: - type: string - reportingMethod: - $ref: '#/components/schemas/reportingMethod-Type' - granularityPeriod: - type: integer - reportingPeriod: - type: integer - startTime: - $ref: '#/components/schemas/dateTime-Type' - stopTime: - $ref: '#/components/schemas/dateTime-Type' - schedule: - $ref: '#/components/schemas/schedule-Type' - streamTarget: - type: string - priority: - $ref: '#/components/schemas/priority-Type' - reliability: - type: string - schedule-Type: - type: object - properties: - scheduleOption: - $ref: '#/components/schemas/scheduleOption-Type' - dailySchedule: - type: array - items: - $ref: '#/components/schemas/timeInterval-Type' - weeklySchedule: - type: array - items: - $ref: '#/components/schemas/scheduleOfDay-Type' - timeInterval-Type: - type: object - properties: - intervalStart: - type: string - format: Time - intervalEnd: - type: string - format: Time - scheduleOfDay-Type: - type: object - properties: - dayOfWeek: - $ref: '#/components/schemas/dayOfWeek-Type' - intervalsOfDay: - type: array - items: - $ref: '#/components/schemas/timeInterval-Type' - unsupportedMeas-Type: - type: object - properties: - iOCInstance: - $ref: '#/components/schemas/uri-Type' - measurementTypeName: - type: string - reason: - type: string - reportingMethod-Type: - type: string - enum: - - file - - streaming - priority-Type: - type: string - enum: - - low - - medium - - high - scheduleOption-Type: - type: string - enum: - - daily - - weekly - dayOfWeek-Type: - type: string - enum: - - Monday - - Tuesday - - Wednesday - - Thursday - - Friday - - Saturday - - Sunday diff --git a/OpenAPI/PerThresMonMnS.yaml b/OpenAPI/PerThresMonMnS.yaml deleted file mode 100644 index 923640a11..000000000 --- a/OpenAPI/PerThresMonMnS.yaml +++ /dev/null @@ -1,102 +0,0 @@ -openapi: 3.0.1 -info: - title: TS 28.532 Performance Threshold Monitoring Service - version: 16.4.0 - description: OAS 3.0.1 specification of the Performance Threshold Monitoring Service -servers: - - url: 'http://{monitoringNotifTarget}' - variables: - monitoringNotifTarget: - description: >- - The open API server of the performance threshold monitoring service is - located in the consumer side, see monitoringNotifTarget attribute of - the IOC ThresholdMonitor defined in 3GPP TS 28.622 [11]. - default: example.com -paths: - /notificationSink: - post: - summary: Send notifications about performance threshold crossing - description: To send a notifyThresholdCrossing notification - requestBody: - required: true - content: - application/json: - schema: - $ref: '#/components/schemas/notifyThresholdCrossing-NotifType' - responses: - '204': - description: >- - Success case ("204 No Content"). The notification is successfully - delivered. The response message body is absent. - default: - description: Error case. - content: - application/json: - schema: - $ref: '#/components/schemas/error-ResponseType' -components: - schemas: - dateTime-Type: - type: string - format: date-Time - uri-Type: - type: string - long-Type: - type: string - format: long - thresholdLevel-Type: - type: integer - measurementTypeName-Type: - type: string - measurementValue-Type: - type: string - additionalText-Type: - type: string - error-ResponseType: - type: object - properties: - error: - type: object - properties: - errorInfo: - type: string - header-Type: - description: Header used in notifications as notification header - type: object - properties: - uri: - $ref: '#/components/schemas/uri-Type' - notificationId: - $ref: '#/components/schemas/notificationId-Type' - notificationType: - $ref: '#/components/schemas/notificationType-Type' - eventTime: - $ref: '#/components/schemas/dateTime-Type' - notificationId-Type: - $ref: '#/components/schemas/long-Type' - notificationType-Type: - type: string - enum: - - notifyThresholdCrossing - notifyThresholdCrossing-NotifType: - type: object - properties: - header: - $ref: '#/components/schemas/header-Type' - body: - type: object - properties: - startOfMonitoringGP: - $ref: '#/components/schemas/dateTime-Type' - endOfMonitoringGP: - $ref: '#/components/schemas/dateTime-Type' - monitoredObjectInstance: - $ref: '#/components/schemas/uri-Type' - thresholdLevel: - $ref: '#/components/schemas/thresholdLevel-Type' - measurementTypeName: - $ref: '#/components/schemas/measurementTypeName-Type' - measurementValue: - $ref: '#/components/schemas/measurementValue-Type' - additionalText: - $ref: '#/components/schemas/additionalText-Type' diff --git a/OpenAPI/PerfDataStreamingMnS.yaml b/OpenAPI/PerfDataStreamingMnS.yaml deleted file mode 100644 index e040e14c8..000000000 --- a/OpenAPI/PerfDataStreamingMnS.yaml +++ /dev/null @@ -1,363 +0,0 @@ -openapi: 3.0.1 -info: - title: TS 28.550 Performance Data Streaming Service - version: 16.3.0 - description: OAS 3.0.1 specification of the Performance Data Streaming Service -servers: - - url: 'http://{streamTarget}/PerfDataStreamMnS/v1630' - description: This URL is used for posting the set of information about streams supported on the connection between the producer and the consumer. - variables: - streamTarget: - description: 'The open API server of the performance data streaming service is located in the consumer side,and the “streamTarget” part corresponds to the streamTarget parameter provided in the createMeasurementJob operation (see clause 6.1.1.2) or the streamTarget attribute of the MOI of MeasurementControlor MeasurementReader, see 3GPP TS 28.622 [5]).' - default: example.com - - url: 'wss://{streamTarget}/PerfDataStreamMnS/v1630/streamingConnection' - description: This URL is used for establishing the WebSocket connection for the performance data streaming service. - variables: - streamTarget: - description: 'The open API server of the performance data streaming service is located in the consumer side,and the “streamTarget” part corresponds to the streamTarget parameter provided in the createMeasurementJob operation (see clause 6.1.1.2) or the streamTarget attribute of the MOI of MeasurementControlor MeasurementReader, see 3GPP TS 28.622 [5]).' - default: example.com -paths: - /streamInfoList: - post: - summary: The set of information about the streams sent from the producer to the consumer - description: To send the streamInfoList from the producer to the consumer - requestBody: - required: true - content: - application/json: - schema: - $ref: '#/components/schemas/streamInfoListPost-RequestType' - responses: - '201': - description: Success case ("201 Posted"). The streamInfoList is successfully posted. - content: - application/json: - schema: - $ref: '#/components/schemas/streamInfoListPost-ResponseType' - '202': - description: Partial success case ("202 Partially posted"). The representation of the posted resource on stream information. - content: - application/json: - schema: - $ref: '#/components/schemas/streamInfoListPost-ResponseType' - default: - description: Error case. - content: - application/json: - schema: - $ref: '#/components/schemas/error-ResponseType' - get: - summary: Read resources of stream information from the streaming consumer - description: 'With HTTP GET, resources of stream information are read. The resources to be read are identified with the path component (base resource) and the query component (streamIdList) of the URI. The fields query component allows to select the resource properties to be returned.' - parameters: - - name: streamIdList - in: query - description: This parameter identifies the list of streamId to select from the collection resources identified with the path component of the URI. - required: true - schema: - type: array - items: - type: integer - responses: - '200': - description: 'Success case ("200 OK"). The resources identified in the request for retrieval are returned in the response message body. In case the fields query parameter is used, the selected resources are returned.' - content: - application/json: - schema: - $ref: '#/components/schemas/listOfStreamInfoRetrieval-ResponseType' - '202': - description: Partial success case ("202 Partially retrieved"). The representation of the retrieved resources on stream information. - content: - application/json: - schema: - $ref: '#/components/schemas/listOfStreamInfoRetrieval-ResponseType' - default: - description: Error case. - content: - application/json: - schema: - $ref: '#/components/schemas/error-ResponseType' - patch: - summary: Update resources of stream information to the streaming consumer - description: 'With HTTP PATCH, resources of stream information are to be updated. The resources to be updated are identified with the path component (base resource) and the query component (streamIdList) of the URI. The fields query component allows to select the resource properties to be updated.' - parameters: - - name: streamIdList - in: query - description: This parameter identifies the list of streamId to select from the collection resources identified with the path component of the URI. - required: true - schema: - type: array - items: - type: integer - requestBody: - required: true - content: - application/json: - schema: - $ref: '#/components/schemas/listOfStreamInfoToUpdate-RequestType' - responses: - '200': - description: Success case ("200 OK"). The resources selected by the query parameter are updated and returned in the response message body. - content: - application/json: - schema: - $ref: '#/components/schemas/listOfStreamInfoUpdate-ResponseType' - '202': - description: Partial success case ("202 Partially updated"). The representation of the updated resources on stream information - content: - application/json: - schema: - $ref: '#/components/schemas/listOfStreamInfoUpdate-ResponseType' - default: - description: Error case. - content: - application/json: - schema: - $ref: '#/components/schemas/error-ResponseType' - delete: - summary: The information of streams to be deleted by the producer to the consumer - description: 'With HTTP DELETE, resources of stream information are to be deleted. The resources to be deleted are identified with the path component (base resource) and the query component (streamIdList) of the URI. The fields query component allows to select the resource properties to be deleted.' - parameters: - - name: streamIdList - in: query - description: This parameter identifies the list of streamId to select from the collection resources identified with the path component of the URI. - required: true - schema: - type: array - items: - type: integer - responses: - '204': - description: Success case ("204 No Content"). The stream information resource has been deleted. The response message body is absent. - default: - description: Error case. - content: - application/json: - schema: - $ref: '#/components/schemas/error-ResponseType' - '/streamInfoList/{streamId}': - get: - summary: Read resource of the stream information from the streaming consumer - description: 'With HTTP GET, resource of stream information is read. The resource to be read is identified with the path component the URI.' - parameters: - - name: streamId - in: path - description: Identifies the stream for which the information is to be retrieved. - required: true - schema: - $ref: '#/components/schemas/uri-Type' - responses: - '200': - description: Success case ("200 OK"). The resource identified in the request for retrieval is returned in the response message body. - content: - application/json: - schema: - $ref: '#/components/schemas/listOfStreamInfoRetrieval-ResponseType' - default: - description: Error case. - content: - application/json: - schema: - $ref: '#/components/schemas/error-ResponseType' - patch: - summary: Update the resource of stream information to the streaming consumer - description: 'With HTTP PATCH, resource of stream information is to be updated. The resource to be updated is identified by the path component of the URI. ' - parameters: - - name: streamId - in: path - description: Identifies the stream for which the information is to be updated. - required: true - schema: - $ref: '#/components/schemas/uri-Type' - requestBody: - required: true - content: - application/json: - schema: - $ref: '#/components/schemas/streamInfoToUpdate-RequestType' - responses: - '200': - description: Success case ("200 OK"). The resources identified by the path of the URI is updated and returned in the response message body. - content: - application/json: - schema: - $ref: '#/components/schemas/streamInfoUpdate-ResponseType' - default: - description: Error case. - content: - application/json: - schema: - $ref: '#/components/schemas/error-ResponseType' - delete: - summary: The stream information to be deleted by the producer to the consumer - description: 'With HTTP DELETE, resource of stream information identified by the path component of the URI is to be deleted.' - parameters: - - name: streamId - in: path - description: Identifies the stream for which the information is to be deleted - required: true - schema: - $ref: '#/components/schemas/uri-Type' - responses: - '204': - description: Success case ("204 No Content"). The stream information resource has been deleted. The response message body is absent. - default: - description: Error case. - content: - application/json: - schema: - $ref: '#/components/schemas/error-ResponseType' - /streamConnection: - get: - summary: The connection for streaming from the producer to the consumer - description: To establish the WebSocket connection between the producer and the consumer. The HTTP version of this operation shall not be earlier than HTTP/1.1 - parameters: - - in: header - name: Upgrade - required: true - schema: - $ref: '#/components/schemas/Upgrade-HeaderType' - - in: header - name: Connection - required: true - schema: - $ref: '#/components/schemas/Connection-HeaderType' - - in: header - name: Sec-WebSocket-Key - required: true - schema: - $ref: '#/components/schemas/Sec-WebSocket-Key-HeaderType' - - in: header - name: Sec-WebSocket-Version - required: true - schema: - $ref: '#/components/schemas/Sec-WebSocket-Version-HeaderType' - responses: - '101': - description: Success case ("101 Switching Protocols "). The connection has been successfully switched to WebSocket. The response message body is absent. - headers: - Upgrade: - schema: - $ref: '#/components/schemas/Upgrade-HeaderType' - Connection: - schema: - $ref: '#/components/schemas/Connection-HeaderType' - Sec-WebSocket-Accept-HeaderType: - schema: - $ref: '#/components/schemas/Sec-WebSocket-Accept-HeaderType' - default: - description: Error case. - content: - application/json: - schema: - $ref: '#/components/schemas/error-ResponseType' -components: - schemas: - uri-Type: - type: string - streamInfoIn-Type: - type: object - properties: - streamId: - type: integer - iOCInstance: - $ref: '#/components/schemas/uri-Type' - measTypes: - type: array - items: - type: string - streamInfoOut-Type: - type: object - properties: - streamId: - $ref: '#/components/schemas/uri-Type' - iOCInstance: - $ref: '#/components/schemas/uri-Type' - measTypes: - type: array - items: - type: string - error-ResponseType: - type: object - properties: - error: - type: object - properties: - errorInfo: - type: string - streamInfoListPost-RequestType: - type: object - properties: - streamInfoList: - type: array - items: - $ref: '#/components/schemas/streamInfoIn-Type' - streamInfoListPost-ResponseType: - type: object - properties: - streamInfoListPosted: - type: array - items: - $ref: '#/components/schemas/streamInfoOut-Type' - streamInfoRetrieval-ResponseType: - type: object - properties: - streamInfoOut: - $ref: '#/components/schemas/streamInfoOut-Type' - listOfStreamInfoRetrieval-ResponseType: - type: object - properties: - listOfStreamInfoOut: - type: array - items: - $ref: '#/components/schemas/streamInfoOut-Type' - streamInfoToUpdatePropertyType: - type: object - properties: - iOCInstance: - description: 'The updated measured object instance, empty value means no update.' - allOf: - - $ref: '#/components/schemas/uri-Type' - measTypes: - description: 'The updated list of measurement type, empty value means no update.' - type: array - items: - type: string - streamInfoToUpdate-RequestType: - type: object - properties: - streamInfoToUpdate: - $ref: '#/components/schemas/streamInfoToUpdatePropertyType' - listOfStreamInfoToUpdate-RequestType: - type: object - properties: - listOfStreamInfoToUpdate: - type: array - items: - $ref: '#/components/schemas/streamInfoToUpdatePropertyType' - streamInfoUpdate-ResponseType: - type: object - properties: - streamInfoUpdated: - $ref: '#/components/schemas/streamInfoOut-Type' - listOfStreamInfoUpdate-ResponseType: - type: object - properties: - listOfStreamInfoUpdated: - type: array - items: - $ref: '#/components/schemas/streamInfoOut-Type' - Upgrade-HeaderType: - type: string - enum: - - websocket - Connection-HeaderType: - type: string - enum: - - Upgrade - Sec-WebSocket-Key-HeaderType: - type: string - Sec-WebSocket-Version-HeaderType: - type: string - Sec-WebSocket-Accept-HeaderType: - type: string diff --git a/OpenAPI/README.md b/OpenAPI/README.md deleted file mode 100644 index 9de057463..000000000 --- a/OpenAPI/README.md +++ /dev/null @@ -1,73 +0,0 @@ -# 3GPP SA5 models and MnS OpenAPI definitions - -(c) 2020, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). All rights reserved. - -The links below will open the Swagger Editor/UI and auto-load the OpenAPI YAML file of each API: - - -## Network Resource Models (NRM) - -* Generic NRM (TS 28.623) -([Editor](https://forge.3gpp.org/swagger/tools/loader.html?yaml=OpenAPI/genericNrm.yaml)) -([UI](https://forge.3gpp.org/swagger/tools/loader.html?action=ui&yaml=OpenAPI/genericNrm.yaml)) - -* Common NRM definitions (TS 28.623) -([Editor](https://forge.3gpp.org/swagger/tools/loader.html?yaml=OpenAPI/comDefs.yaml)) -([UI](https://forge.3gpp.org/swagger/tools/loader.html?action=ui&yaml=OpenAPI/comDefs.yaml)) - -* NR NRM (TS 28.541) -([Editor](https://forge.3gpp.org/swagger/tools/loader.html?yaml=OpenAPI/nrNrm.yaml)) -([UI](https://forge.3gpp.org/swagger/tools/loader.html?action=ui&yaml=OpenAPI/nrNrm.yaml)) - -* 5GC NRM (TS 28.541) -([Editor](https://forge.3gpp.org/swagger/tools/loader.html?yaml=OpenAPI/5gcNrm.yaml)) -([UI](https://forge.3gpp.org/swagger/tools/loader.html?action=ui&yaml=OpenAPI/5gcNrm.yaml)) - -* Slice NRM (TS 28.541) -([Editor](https://forge.3gpp.org/swagger/tools/loader.html?yaml=OpenAPI/sliceNrm.yaml)) -([UI](https://forge.3gpp.org/swagger/tools/loader.html?action=ui&yaml=OpenAPI/sliceNrm.yaml)) - -* Communication Service Assurance NRM (TS 28.536) -([Editor](https://forge.3gpp.org/swagger/tools/loader.html?yaml=OpenAPI/coslaNrm.yaml)) -([UI](https://forge.3gpp.org/swagger/tools/loader.html?action=ui&yaml=OpenAPI/coslaNrm.yaml)) - -## Management Services (MnS) - -* Provisioning MnS (TS 28.532) -([Editor](https://forge.3gpp.org/swagger/tools/loader.html?yaml=OpenAPI/provMnS.yaml)) -([UI](https://forge.3gpp.org/swagger/tools/loader.html?action=ui&yaml=OpenAPI/provMnS.yaml)) - -* Fault Supervision MnS (TS 28.532) -([Editor](https://forge.3gpp.org/swagger/tools/loader.html?yaml=OpenAPI/faultMnS.yaml)) -([UI](https://forge.3gpp.org/swagger/tools/loader.html?action=ui&yaml=OpenAPI/faultMnS.yaml)) - -* Performance Measurement Job Control MnS (28.550) -([Editor](https://forge.3gpp.org/swagger/tools/loader.html?yaml=OpenAPI/PerMeasJobCtlMnS.yaml)) -([UI](https://forge.3gpp.org/swagger/tools/loader.html?action=ui&yaml=OpenAPI/PerMeasJobCtlMnS.yaml)) - -* Performance Data File Reporting MnS (TS 28.532) -([Editor](https://forge.3gpp.org/swagger/tools/loader.html?yaml=OpenAPI/PerDataFileReportMnS.yaml)) -([UI](https://forge.3gpp.org/swagger/tools/loader.html?action=ui&yaml=OpenAPI/PerDataFileReportMnS.yaml)) - -* Performance Threshold Monitoring MnS (TS 28.532) -([Editor](https://forge.3gpp.org/swagger/tools/loader.html?yaml=OpenAPI/PerThresMonMnS.yaml)) -([UI](https://forge.3gpp.org/swagger/tools/loader.html?action=ui&yaml=OpenAPI/PerThresMonMnS.yaml)) - -* Heartbeat Notifications(TS 28.532) -([Editor](https://forge.3gpp.org/swagger/tools/loader.html?yaml=OpenAPI/heartbeatNtf.yaml)) -([UI](https://forge.3gpp.org/swagger/tools/loader.html?action=ui&yaml=OpenAPI/heartbeatNtf.yaml)) - -* Streaming Data Reporting MnS (TS 28.532) -([Editor](https://forge.3gpp.org/swagger/tools/loader.html?yaml=OpenAPI/streamingDataMnS.yaml)) -([UI](https://forge.3gpp.org/swagger/tools/loader.html?action=ui&yaml=OpenAPI/streamingDataMnS.yaml)) - -## Tools - -* [Frontend](https://forge.3gpp.org/swagger/tools/GitlabOpenAPIFrontend.htm) to invoke the Swagger Editor, Swagger UI, or to parse OpenAPI files with APIDevTools Swagger Parser/Validator, or to search for APIs referencing a data structure -* [API Parser/Linter](https://forge.3gpp.org/swagger/tools/parser.html) to parse OpenAPI files with APIDevTools Swagger Parser/Validator and run a number of [lint](https://en.wikipedia.org/wiki/Lint_\(software\)) rules to improve API quality -* [Data Type Finder](https://forge.3gpp.org/swagger/tools/types.html) to find the impacted APIs due to a change on a given data type -* [API Versions Overview](https://forge.3gpp.org/swagger/tools/versions.html) to show a comprehensive report of the versions of all APIs in the repository - -## Other 3GPP API definitions - -* [CT4](https://forge.3gpp.org/rep/3GPP/5G_APIs) specifications. diff --git a/OpenAPI/comDefs.yaml b/OpenAPI/comDefs.yaml deleted file mode 100644 index 04ab65161..000000000 --- a/OpenAPI/comDefs.yaml +++ /dev/null @@ -1,84 +0,0 @@ -openapi: 3.0.1 -info: - title: Common Type Definitions - version: 16.3.0 - description: >- - OAS 3.0.1 specification of common type definitions in the Generic NRM - © 2020, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). - All rights reserved. -externalDocs: - description: 3GPP TS 28.623 V16.3.0; Generic NRM, Common Type Definitions - url: http://www.3gpp.org/ftp/Specs/archive/28_series/28.623/ -paths: {} -components: - schemas: - Long: - type: string - format: long - Float: - type: string - format: float - DateTime: - type: string - format: date-Time - Dn: - type: string - Uri: - type: string - AttributeNameValuePairSet: - type: object - minProperties: 1 - AttributeValueChangeSet: - description: >- - The key in this map is the attribute name. The value of each key is an array. - When only one item is present in the array, it carries the new attribute - value. If two items are present, then the first item carries the old value - and the second item the new value. The items can be of any type including null. - type: object - additionalProperties: - type: array - minItems: 1 - maxItems: 2 - items: - nullable: true - Filter: - type: string - SystemDN: - type: string - NotificationId: - type: integer - NotificationHeader: - description: >- - Header used for all notifications types - type: object - required: - - uri - - notificationId - - notificationType - - eventTime - - systemDn - properties: - uri: - $ref: '#/components/schemas/Uri' - notificationId: - $ref: '#/components/schemas/NotificationId' - notificationType: - oneOf: - - $ref: 'faultMnS.yaml#/components/schemas/AlarmNotificationTypes' - #- $ref: 'provMnS.yaml#/components/schemas/CmNotificationTypes' - # more to be added - eventTime: - $ref: '#/components/schemas/DateTime' - systemDN: - $ref: '#/components/schemas/SystemDN' - ErrorResponse: - description: >- - Default schema for the response message body in case the request - is not successful. - type: object - properties: - error: - type: object - properties: - errorInfo: - type: string diff --git a/OpenAPI/coslaNrm.yaml b/OpenAPI/coslaNrm.yaml deleted file mode 100644 index 1892b8fb3..000000000 --- a/OpenAPI/coslaNrm.yaml +++ /dev/null @@ -1,131 +0,0 @@ -openapi: 3.0.3 - -info: - title: coslaNrm - version: 16.4.0 - description: - OAS 3.0.1 specification of the Cosla NRM - © 2020, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). - All rights reserved. - -externalDocs: - description: 3GPP TS 28.536 V16.4.0; 5G NRM, Slice NRM - url: http://www.3gpp.org/ftp/Specs/archive/28_series/28.536/ - -paths: {} - -components: - - schemas: - -#------------ Type definitions --------------------------------------------------- - - ControlLoopLifeCyclePhase: - anyOf: - - type: string - enum: - - PREPARATION - - COMMISSIONING - - OPERATION - - DECOMMISSIONING - - type: string - - TimeUnit: - anyOf: - - type: string - enum: - - SECOND - - MINUTE - - HOUR - - DAY - - type: string - - OperationalState: - anyOf: - - type: string - enum: - - ENABLED - - DISABLED - - type: string - - AdministrativeState: - anyOf: - - type: string - enum: - - LOCKED - - SHUTTING_DOWN - - UNLOCKED - - type: string - - ObservationTime: - type: integer - - ObservationTimePeriod: - type: object - - AssuranceControlLoopGoal: - type: object - - AssuranceGoalStatus: - type: object - - AssuranceGoalStatusObserved: - type: object - - AssuranceGoalStatusPredicted: - type: object - -#-------- Definition of concrete IOCs -------------------------------------------- - - AssuranceControlLoop-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/SubNetwork-Attr' - - type: object - properties: - operationalState: - $ref: '#/components/schemas/OperationalState' - administrativeState: - $ref: '#/components/schemas/AdministrativeState' - controlLoopLifeCyclePhase: - $ref: '#/components/schemas/ControlLoopLifeCyclePhase' - observationTimePeriod: - allOf: - - $ref: '#/components/schemas/ObservationTimePeriod' - - type: object - properties: - observationTime: - $ref: '#/components/schemas/ObservationTime' - timeUnit: - $ref: '#/components/schemas/TimeUnit' - AssuranceGoalStatus: - allOf: - - $ref: '#/components/schemas/AssuranceGoalStatus' - - type: object - properties: - assuranceGoalStatusObserved: - $ref: '#/components/schemas/AssuranceGoalStatusObserved' - assuranceGoalStatusPredicted: - $ref: '#/components/schemas/AssuranceGoalStatusPredicted' - managedEntity-Multiple: - $ref: '#/components/schemas/ManagedEntity-Multiple' - assuranceControlLoopGoal: - $ref: '#/components/schemas/AssuranceControlLoopGoal' - - ManagedEntity-Single: - oneOf: - - $ref: 'sliceNrm.yaml#/components/schemas/NetworkSlice' - - $ref: 'sliceNrm.yaml#/components/schemas/NetworkSliceSubnet' - - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' - - $ref: 'genericNrm.yaml#/components/schemas/ManagedElement-Attr' - -#-------- Definition of JSON arrays for name-contained IOCs ---------------------- - - AssuranceControlLoop-Multiple: - type: array - items: - $ref: '#/components/schemas/AssuranceControlLoop-Single' - - ManagedEntity-Multiple: - type: array - items: - $ref: '#/components/schemas/ManagedEntity-Single' diff --git a/OpenAPI/faultMnS.yaml b/OpenAPI/faultMnS.yaml deleted file mode 100644 index 499123b90..000000000 --- a/OpenAPI/faultMnS.yaml +++ /dev/null @@ -1,1144 +0,0 @@ -openapi: 3.0.1 -info: - title: Fault Supervision MnS - version: 16.4.0 - description: >- - OAS 3.0.1 definition of the Fault Supervision MnS - © 2020, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). - All rights reserved. -externalDocs: - description: 3GPP TS 28.532 V16.4.0; Generic management services - url: http://www.3gpp.org/ftp/Specs/archive/28_series/28.532/ -servers: - - url: '{MnSRoot}/FaultSupervisionMnS/{version}' - variables: - MnSRoot: - description: See subclause 4.4.3 of TS 32.158 - default: http://example.com/3GPPManagement - version: - description: Versi on number of the OpenAPI definition - default: XXX -paths: - /alarms: - get: - summary: Retrieve multiple alarms - description: >- - Retrieves the alarms identified by alarmAckState, baseObjectInstance - and filter. - parameters: - - name: alarmAckState - in: query - required: false - schema: - $ref: '#/components/schemas/AlarmAckState' - - name: baseObjectInstance - in: query - required: false - schema: - $ref: '#/components/schemas/Dn' - - name: filter - in: query - required: false - schema: - $ref: '#/components/schemas/Filter' - responses: - '200': - description: >- - Success case ("200 OK"). - Returns the alarms identified in the request. The alarmId is the key - of the map. - content: - application/json: - schema: - type: object - additionalProperties: - type: object - allOf: - - type: object - properties: - lastNotificationHeader: - $ref: '#/components/schemas/NotificationHeader' - - $ref: '#/components/schemas/AlarmRecord' - - type: object - properties: - comments: - $ref: '#/components/schemas/Comments' - default: - description: Response in case of error. - content: - application/json: - schema: - $ref: '#/components/schemas/ErrorResponse' - patch: - summary: 'Clear, acknowledge or unacknowledge multiple alarms' - description: >- - Clears, acknowledges or unacknowledges multiple alarms using patch. Depending - on which action is to be performed, different merge patch documents need - to be used. - requestBody: - description: >- - Patch documents for acknowledging and unacknowledging, or clearing multiple - alarms. The keys in the map are the alarmIds to be patched. - content: - application/merge-patch+json: - schema: - oneOf: - - type: object - additionalProperties: - $ref: '#/components/schemas/MergePatchAcknowledgeAlarm' - - type: object - additionalProperties: - $ref: '#/components/schemas/MergePatchClearAlarm' - responses: - '204': - description: >- - Success case ("204 No content"). - The response message body is empty. - default: - description: Response in case of error. - content: - application/json: - schema: - type: array - items: - $ref: '#/components/schemas/FailedAlarm' - /alarms/alarmCount: - get: - summary: Get the alarm count per perceived severity - parameters: - - name: alarmAckState - in: query - required: false - schema: - $ref: '#/components/schemas/AlarmAckState' - - name: filter - in: query - required: false - schema: - type: string - responses: - '200': - description: >- - Success case ("200 OK"). - The alarm count per perceived severity is returned. - content: - application/json: - schema: - $ref: '#/components/schemas/AlarmCount' - default: - description: Response in case of error. The error case needs rework. - content: - application/json: - schema: - $ref: '#/components/schemas/ErrorResponse' - /alarms/{alarmId}: - patch: - summary: 'Clear, acknowledge or unacknowledge a single alarm' - description: >- - Clears, acknowledges or uncknowldeges a single alarm by patching the alarm - information. A conditional acknowledge request based on the perceived - severity is not supported. - parameters: - - name: alarmId - in: path - description: Identifies the alarm to be patched. - required: true - schema: - type: string - requestBody: - required: true - content: - application/merge-patch+json: - schema: - oneOf: - - $ref: '#/components/schemas/MergePatchAcknowledgeAlarm' - - $ref: '#/components/schemas/MergePatchClearAlarm' - responses: - '204': - description: >- - Success case (204 No content). - The response message body is absent. - default: - description: Response in case of error. - content: - application/json: - schema: - $ref: '#/components/schemas/ErrorResponse' - /alarms/{alarmId}/comments: - post: - summary: Add a comment to a single alarm - description: >- - Adds a comment to an alarm identified by alarmId. The id of the new comment - is allocated by the producer. - parameters: - - name: alarmId - in: path - description: Identifies the alarm to which the comment shall be added. - required: true - schema: - type: string - requestBody: - required: true - content: - application/json: - schema: - $ref: '#/components/schemas/Comment' - responses: - '201': - description: >- - Success case (201 Created). - The representation of the newly created comment resource shall be returned. - content: - application/json: - schema: - $ref: '#/components/schemas/Comment' - headers: - Location: - description: URI of the newly created comment resource. - required: true - schema: - type: string - default: - description: Error case. - content: - application/json: - schema: - $ref: '#/components/schemas/ErrorResponse' - - /subscriptions: - post: - summary: Create a subscription - description: >- - To create a subscription the representation of the subscription is - POSTed on the /subscriptions collection resource. - requestBody: - required: true - content: - application/json: - schema: - $ref: '#/components/schemas/Subscription' - responses: - '201': - description: >- - Success case ("201 Created"). - The representation of the newly created subscription resource shall - be returned. - content: - application/json: - schema: - $ref: '#/components/schemas/Subscription' - headers: - Location: - description: URI of the newly created subscription resource - required: true - schema: - type: string - default: - description: Error case. - content: - application/json: - schema: - $ref: '#/components/schemas/ErrorResponse' - callbacks: - notifyNewAlarm: - '{request.body#/consumerReference}': - post: - requestBody: - required: true - content: - application/json: - schema: - oneOf: - - $ref: '#/components/schemas/NotifyNewAlarm' - - $ref: '#/components/schemas/NotifyNewSecAlarm' - responses: - '204': - description: >- - Success case ("204 No Content"). - The notification is successfully delivered. The response message - body is absent. - default: - description: Error case. - content: - application/json: - schema: - $ref: '#/components/schemas/ErrorResponse' - notifyClearedAlarm: - '{request.body#/consumerReference}': - post: - requestBody: - required: true - content: - application/json: - schema: - $ref: '#/components/schemas/NotifyClearedAlarm' - responses: - '204': - description: >- - Success case ("204 No Content"). - The notification is successfully delivered. The response message - body is absent. - default: - description: Error case. - content: - application/json: - schema: - $ref: '#/components/schemas/ErrorResponse' - notifyChangedAlarm: - '{request.body#/consumerReference}': - post: - requestBody: - required: true - content: - application/json: - schema: - $ref: '#/components/schemas/NotifyChangedAlarm' - responses: - '204': - description: >- - Success case ("204 No Content"). - The notification is successfully delivered. The response message - body is absent. - default: - description: Error case. - content: - application/json: - schema: - $ref: '#/components/schemas/ErrorResponse' - notifyChangedAlarmGeneral: - '{request.body#/consumerReference}': - post: - requestBody: - required: true - content: - application/json: - schema: - oneOf: - - $ref: '#/components/schemas/NotifyChangedAlarmGeneral' - - $ref: '#/components/schemas/NotifyChangedSecAlarmGeneral' - responses: - '204': - description: >- - Success case ("204 No Content"). - The notification is successfully delivered. The response message - body is absent. - default: - description: Error case. - content: - application/json: - schema: - $ref: '#/components/schemas/ErrorResponse' - notifyCorrelatedNotificationChanged: - '{request.body#/consumerReference}': - post: - requestBody: - required: true - content: - application/json: - schema: - $ref: '#/components/schemas/NotifyCorrelatedNotificationChanged' - responses: - '204': - description: >- - Success case ("204 No Content"). - The notification is successfully delivered. The response message - body is absent. - default: - description: Error case. - content: - application/json: - schema: - $ref: '#/components/schemas/ErrorResponse' - notifyAckStateChanged: - '{request.body#/consumerReference}': - post: - requestBody: - required: true - content: - application/json: - schema: - $ref: '#/components/schemas/NotifyAckStateChanged' - responses: - '204': - description: >- - Success case ("204 No Content"). - The notification is successfully delivered. The response message - body is absent. - default: - description: Error case. - content: - application/json: - schema: - $ref: '#/components/schemas/ErrorResponse' - notifyComments: - '{request.body#/consumerReference}': - post: - requestBody: - required: true - content: - application/json: - schema: - $ref: '#/components/schemas/NotifyComments' - responses: - '204': - description: >- - Success case ("204 No Content"). - The notification is successfully delivered. The response message - body is absent. - default: - description: Error case. - content: - application/json: - schema: - $ref: '#/components/schemas/ErrorResponse' - notifyPotentialFaultyAlarmList: - '{request.body#/consumerReference}': - post: - requestBody: - required: true - content: - application/json: - schema: - $ref: '#/components/schemas/NotifyPotentialFaultyAlarmList' - responses: - '204': - description: >- - Success case ("204 No Content"). - The notification is successfully delivered. The response message - body is absent. - default: - description: Error case. - content: - application/json: - schema: - $ref: '#/components/schemas/ErrorResponse' - notifyAlarmListRebuilt: - '{request.body#/consumerReference}': - post: - requestBody: - required: true - content: - application/json: - schema: - $ref: '#/components/schemas/NotifyAlarmListRebuilt' - responses: - '204': - description: >- - Success case ("204 No Content"). - The notification is successfully delivered. The response message - body is absent. - default: - description: Error case. - content: - application/json: - schema: - $ref: '#/components/schemas/ErrorResponse' - /subscriptions/{subscriptionId}: - delete: - summary: Delete a subscription - description: >- - The subscription is deleted by deleting the corresponding subscription - resource. The resource to be deleted is identified with the path - component of the URI. - parameters: - - name: subscriptionId - in: path - description: Identifies the subscription to be deleted. - required: true - schema: - type: string - responses: - '204': - description: >- - Success case ("204 No Content"). - The subscription resource has been deleted. The response message body - is absent. - default: - description: Error case. - content: - application/json: - schema: - $ref: '#/components/schemas/ErrorResponse' - -components: - schemas: - - #---- Definitions to be moved to comDefs.yaml --------------------------------------# - - Long: - type: string - format: long - Float: - type: string - format: float - DateTime: - type: string - format: date-Time - - Dn: - type: string - Uri: - type: string - - AttributeNameValuePairSet: - type: object - minProperties: 1 - AttributeValueChangeSet: - description: >- - The key in this map is the attribute name. The value of each key is an array. - When only one item is present in the array, it carries the new attribute - value. If two items are present, then the first item carries the old value - and the second item the new value. The items can be of any type including null. - type: object - additionalProperties: - type: array - minItems: 1 - maxItems: 2 - items: - nullable: true - - Filter: - type: string - SystemDN: - type: string - - NotificationId: - type: integer - NotificationHeader: - description: >- - Header used for all notification types - type: object - required: - - href - - notificationId - - notificationType - - eventTime - - systemDN - properties: - uri: - $ref: '#/components/schemas/Uri' - notificationId: - $ref: '#/components/schemas/NotificationId' - notificationType: - oneOf: - - $ref: '#/components/schemas/AlarmNotificationTypes' - #- $ref: 'faultMnS.yaml#/components/schemas/AlarmNotificationTypes' - #- $ref: 'provMnS.yaml#/components/schemas/CmNotificationTypes' - # more to be added - eventTime: - $ref: '#/components/schemas/DateTime' - systemDN: - $ref: '#/components/schemas/SystemDN' - - ErrorResponse: - description: >- - Default schema for the response message body in case the request is not - successful. - type: object - properties: - error: - type: object - properties: - errorInfo: - type: string - - #---- End of definitions to be moved to comDefs.yaml -------------------------------# - - #---- Definition of AlarmRecord ----------------------------------------------------# - - AlarmId: - type: string - AlarmType: - type: string - enum: - - COMMUNICATIONS_ALARM - - QUALITY_OF_SERVICE_ALARM - - PROCESSING_ERROR_ALARM - - EQUIPMENT_ALARM - - ENVIRONMENTAL_ALARM - - INTEGRITY_VIOLATION - - OPERATIONAL_VIOLATION - - PHYSICAL_VIOLATION - - SECURITY_SERVICE_OR_MECHANISM_VIOLATION - - TIME_DOMAIN_VIOLATION - ProbableCause: - description: >- - The value of the probable cause may be a specific standardized string, or any - vendor provided string. Probable cause strings are not standardized in the - present document. They may be added in a future version. Up to then the - mapping of the generic probable cause strings "PROBABLE_CAUSE_001" to - "PROBABLE_CAUSE_005" is vendor specific. - The value of the probable cause may also be an integer. The mapping of integer - values to probable causes is vendor specific. - oneOf: - - anyOf: - - type: string - enum: - - PROBABLE_CAUSE_001 - - PROBABLE_CAUSE_002 - - PROBABLE_CAUSE_003 - - PROBABLE_CAUSE_004 - - PROBABLE_CAUSE_005 - - type: string - - type: integer - SpecificProblem: - oneOf: - - type: string - - type: integer - PerceivedSeverity: - type: string - enum: - - INDETERMINATE - - CRITICAL - - MAJOR - - MINOR - - WARNING - - CLEARED - TrendIndication: - type: string - enum: - - MORE_SEVERE - - NO_CHANGE - - LESS_SEVERE - ThresholdHysteresis: - type: object - required: - - high - properties: - high: - oneOf: - - type: integer - - $ref: '#/components/schemas/Float' - low: - $ref: '#/components/schemas/Float' - ThresholdLevelInd: - type: object - required: - - up - properties: - up: - $ref: '#/components/schemas/ThresholdHysteresis' - low: - $ref: '#/components/schemas/ThresholdHysteresis' - ThresholdInfo: - type: object - required: - - observedMeasurement - - observedValue - properties: - observedMeasurement: - type: string - observedValue: - oneOf: - - type: integer - - $ref: '#/components/schemas/Float' - thresholdLevelInd: - $ref: '#/components/schemas/ThresholdLevelInd' - armTime: - $ref: '#/components/schemas/DateTime' - CorrelatedNotification: - type: object - required: - - source - - notificationId - properties: - sourceObjectInstance: - $ref: '#/components/schemas/Dn' - notificationIds: - type: array - items: - $ref: '#/components/schemas/NotificationId' - CorrelatedNotifications: - type: array - items: - $ref: '#/components/schemas/CorrelatedNotification' - AckState: - type: string - enum: - - ACKNOWLEDGED - - UNACKNOWLEDGED - - AlarmRecord: - description: >- - The alarmId is not a property of an alarm record. It is used as key - in the map of alarm records instead. - type: object - properties: - # alarmId: - # $ref: '#/components/schemas/AlarmId' - objectInstance: - $ref: '#/components/schemas/Dn' - notificationId: - $ref: '#/components/schemas/NotificationId' - alarmRaisedTime: - $ref: '#/components/schemas/DateTime' - alarmChangedTime: - $ref: '#/components/schemas/DateTime' - alarmClearedTime: - $ref: '#/components/schemas/DateTime' - alarmType: - $ref: '#/components/schemas/AlarmType' - probableCause: - $ref: '#/components/schemas/ProbableCause' - specificProblem: - $ref: '#/components/schemas/SpecificProblem' - perceivedSeverity: - $ref: '#/components/schemas/PerceivedSeverity' - backedUpStatus: - type: boolean - backUpObject: - $ref: '#/components/schemas/Dn' - trendIndication: - $ref: '#/components/schemas/TrendIndication' - thresholdinfo: - $ref: '#/components/schemas/ThresholdInfo' - correlatedNotifications: - $ref: '#/components/schemas/CorrelatedNotifications' - stateChangeDefinition: - $ref: '#/components/schemas/AttributeValueChangeSet' - monitoredAttributes: - $ref: '#/components/schemas/AttributeNameValuePairSet' - proposedRepairActions: - type: string - additionalText: - type: string - additionalInformation: - $ref: '#/components/schemas/AttributeNameValuePairSet' - - rootCauseIndicator: - type: boolean - - ackTime: - $ref: '#/components/schemas/DateTime' - ackUserId: - type: string - ackSystemId: - type: string - ackState: - $ref: '#/components/schemas/AckState' - - clearUserId: - type: string - clearSystemId: - type: string - serviceUser: - type: string - serviceProvider: - type: string - securityAlarmDetector: - type: string - - #---- Definition of alarm notifications --------------------------------------------# - - AlarmNotificationTypes: - type: string - enum: - - notifyNewAlarm - - notifyChangedAlarm - - notifyChangedAlarmGeneral - - notifyAckStateChanged - - notifyCorrelatedNotificationChanged - - notifyComments - - notifyClearedAlarm - - notifyAlarmListRebuiltAlarm - - notifyPotentialFaultyAlarmList - AlarmListAlignmentRequirement: - type: string - enum: - - ALIGNMENT_REQUIRED - - ALIGNMENT_NOT_REQUIRED - - NotifyNewAlarm: - allOf: - - $ref: '#/components/schemas/NotificationHeader' - - type: object - required: - - alarmId - - alarmType - - probableCause - - perceivedSeverity - properties: - alarmId: - $ref: '#/components/schemas/AlarmId' - alarmType: - $ref: '#/components/schemas/AlarmType' - probableCause: - $ref: '#/components/schemas/ProbableCause' - specificProblem: - $ref: '#/components/schemas/SpecificProblem' - perceivedSeverity: - $ref: '#/components/schemas/PerceivedSeverity' - backedUpStatus: - type: boolean - backUpObject: - $ref: '#/components/schemas/Dn' - trendIndication: - $ref: '#/components/schemas/TrendIndication' - thresholdInfo: - $ref: '#/components/schemas/ThresholdInfo' - correlatedNotifications: - $ref: '#/components/schemas/CorrelatedNotifications' - stateChangeDefinition: - $ref: '#/components/schemas/AttributeValueChangeSet' - monitoredAttributes: - $ref: '#/components/schemas/AttributeNameValuePairSet' - proposedRepairActions: - type: string - additionalText: - type: string - additionalInformation: - $ref: '#/components/schemas/AttributeNameValuePairSet' - rootCauseIndicator: - type: boolean - NotifyNewSecAlarm: - allOf: - - $ref: '#/components/schemas/NotificationHeader' - - type: object - required: - - alarmId - - alarmType - - probableCause - - perceivedSeverity - - serviceUser - - serviceProvider - - securityAlarmDetector - properties: - alarmId: - $ref: '#/components/schemas/AlarmId' - alarmType: - $ref: '#/components/schemas/AlarmType' - probableCause: - $ref: '#/components/schemas/ProbableCause' - perceivedSeverity: - $ref: '#/components/schemas/PerceivedSeverity' - correlatedNotifications: - $ref: '#/components/schemas/CorrelatedNotifications' - additionalText: - type: string - additionalInformation: - $ref: '#/components/schemas/AttributeNameValuePairSet' - rootCauseIndicator: - type: boolean - serviceUser: - type: string - serviceProvider: - type: string - securityAlarmDetector: - type: string - NotifyClearedAlarm: - allOf: - - $ref: '#/components/schemas/NotificationHeader' - - type: object - required: - - alarmId - - alarmType - - probableCause - - perceivedSeverity - properties: - alarmId: - $ref: '#/components/schemas/AlarmId' - alarmType: - $ref: '#/components/schemas/AlarmType' - probableCause: - $ref: '#/components/schemas/ProbableCause' - perceivedSeverity: - $ref: '#/components/schemas/PerceivedSeverity' - correlatedNotifications: - $ref: '#/components/schemas/CorrelatedNotifications' - clearUserId: - type: string - clearSystemId: - type: string - NotifyChangedAlarm: - allOf: - - $ref: '#/components/schemas/NotificationHeader' - - type: object - required: - - alarmId - - alarmType - - probableCause - - perceivedSeverity - properties: - alarmId: - $ref: '#/components/schemas/AlarmId' - alarmType: - $ref: '#/components/schemas/AlarmType' - probableCause: - $ref: '#/components/schemas/ProbableCause' - perceivedSeverity: - $ref: '#/components/schemas/PerceivedSeverity' - NotifyChangedAlarmGeneral: - allOf: - - $ref: '#/components/schemas/NotificationHeader' - - type: object - required: - - alarmId - - alarmType - - probableCause - - perceivedSeverity - - changedAlarmAttributes - properties: - alarmId: - $ref: '#/components/schemas/AlarmId' - alarmType: - $ref: '#/components/schemas/AlarmType' - probableCause: - $ref: '#/components/schemas/ProbableCause' - specificProblem: - $ref: '#/components/schemas/SpecificProblem' - perceivedSeverity: - $ref: '#/components/schemas/PerceivedSeverity' - correlatedNotifications: - $ref: '#/components/schemas/CorrelatedNotifications' - backedUpStatus: - type: boolean - backUpObject: - $ref: '#/components/schemas/Dn' - trendIndication: - $ref: '#/components/schemas/TrendIndication' - thresholdInfo: - $ref: '#/components/schemas/ThresholdInfo' - stateChangeDefinition: - $ref: '#/components/schemas/AttributeValueChangeSet' - monitoredAttributes: - $ref: '#/components/schemas/AttributeNameValuePairSet' - proposedRepairActions: - type: string - additionalText: - type: string - additionalInformation: - $ref: '#/components/schemas/AttributeNameValuePairSet' - rootCauseIndicator: - type: boolean - changedAlarmAttributes: - $ref: '#/components/schemas/AttributeNameValuePairSet' - NotifyChangedSecAlarmGeneral: - allOf: - - $ref: '#/components/schemas/NotificationHeader' - - type: object - required: - - alarmId - - alarmType - - probableCause - - perceivedSeverity - - serviceUser - - serviceProvider - - securityAlarmDetector - - changedAlarmAttributes - properties: - alarmId: - $ref: '#/components/schemas/AlarmId' - alarmType: - $ref: '#/components/schemas/AlarmType' - probableCause: - $ref: '#/components/schemas/ProbableCause' - perceivedSeverity: - $ref: '#/components/schemas/PerceivedSeverity' - correlatedNotifications: - $ref: '#/components/schemas/CorrelatedNotifications' - additionalText: - type: string - additionalInformation: - $ref: '#/components/schemas/AttributeNameValuePairSet' - rootCauseIndicator: - type: boolean - serviceUser: - type: string - serviceProvider: - type: string - securityAlarmDetector: - type: string - changedAlarmAttributes: - $ref: '#/components/schemas/AttributeNameValuePairSet' - NotifyCorrelatedNotificationChanged: - allOf: - - $ref: '#/components/schemas/NotificationHeader' - - type: object - required: - - alarmId - - correlatedNotifications - properties: - alarmId: - $ref: '#/components/schemas/AlarmId' - correlatedNotifications: - $ref: '#/components/schemas/CorrelatedNotifications' - rootCauseIndicator: - type: boolean - NotifyAckStateChanged: - allOf: - - $ref: '#/components/schemas/NotificationHeader' - - type: object - required: - - alarmId - - alarmType - - probableCause - - perceivedSeverity - - ackState - - ackUserId - properties: - alarmId: - $ref: '#/components/schemas/AlarmId' - alarmType: - $ref: '#/components/schemas/AlarmType' - probableCause: - $ref: '#/components/schemas/ProbableCause' - perceivedSeverity: - $ref: '#/components/schemas/PerceivedSeverity' - ackState: - $ref: '#/components/schemas/AckState' - ackUserId: - type: string - ackSystemId: - type: string - NotifyComments: - allOf: - - $ref: '#/components/schemas/NotificationHeader' - - type: object - required: - - alarmId - - alarmType - - probableCause - - perceivedSeverity - - comments - properties: - alarmId: - $ref: '#/components/schemas/AlarmId' - alarmType: - $ref: '#/components/schemas/AlarmType' - probableCause: - $ref: '#/components/schemas/ProbableCause' - perceivedSeverity: - $ref: '#/components/schemas/PerceivedSeverity' - comments: - $ref: '#/components/schemas/Comments' - NotifyPotentialFaultyAlarmList: - allOf: - - $ref: '#/components/schemas/NotificationHeader' - - type: object - required: - - reason - properties: - reason: - type: string - NotifyAlarmListRebuilt: - allOf: - - $ref: '#/components/schemas/NotificationHeader' - - type: object - required: - - reason - properties: - reason: - type: string - alarmListAlignmentRequirement: - $ref: '#/components/schemas/AlarmListAlignmentRequirement' - - #---- Definition of query parameters -----------------------------------------------# - - AlarmAckState: - type: string - enum: - - ALL_ALARMS - - ALL_ACTIVE_ALARMS - - ALL_ACTIVE_AND_ACKNOWLEDGED_ALARMS - - ALL_ACTIVE_AND_UNACKNOWLEDGED_ALARMS - - ALL_CLEARED_AND_UNACKNOWLEDGED_ALARMS - - ALL_UNACKNOWLEDGED_ALARMS - - #---- Definition of patch documents ------------------------------------------------# - - MergePatchAcknowledgeAlarm: - description: >- - Patch document acknowledging or unacknowledging a single alarm. For - acknowleding an alarm the value of ackState is ACKNOWLEDGED, for unacknowleding - an alarm the value of ackState is UNACKNOWLEDGED. - type: object - required: - - ackUserId - - ackState - properties: - ackUserId: - type: string - ackSystemId: - type: string - ackState: - $ref: '#/components/schemas/AckState' - MergePatchClearAlarm: - description: Patch document for clearing a single alarm - type: object - required: - - clearUserId - - perceivedSeverity - properties: - clearUserId: - type: string - clearSystemId: - type: string - perceivedSeverity: - type: string - enum: - - CLEARED - - #---- Definition of method responses -----------------------------------------------# - - FailedAlarm: - type: object - required: - - alarmId - - failureReason - properties: - alarmId: - $ref: '#/components/schemas/AlarmId' - failureReason: - type: string - - #---- Definition of resources ------------------------------------------------------# - - AlarmCount: - type: object - required: - - criticalCount - - majorCount - - minorCount - - warningCount - - indeterminateCount - - clearedCount - properties: - criticalCount: - type: integer - majorCount: - type: integer - minorCount: - type: integer - warningCount: - type: integer - indeterminateCount: - type: integer - clearedCount: - type: integer - Comment: - type: object - properties: - commentTime: - $ref: '#/components/schemas/DateTime' - commentUserId: - type: string - commentSystemId: - type: string - commentText: - type: string - Comments: - description: >- - Collection of comments. The comment identifiers are allocated by the - MnS producer and used as key in the map. - type: object - additionalProperties: - $ref: '#/components/schemas/Comment' - Subscription: - type: object - properties: - consumerReference: - $ref: '#/components/schemas/Uri' - timeTick: - $ref: '#/components/schemas/Long' - filter: - $ref: '#/components/schemas/Filter' diff --git a/OpenAPI/genericNrm.yaml b/OpenAPI/genericNrm.yaml deleted file mode 100644 index e3b71407f..000000000 --- a/OpenAPI/genericNrm.yaml +++ /dev/null @@ -1,1590 +0,0 @@ -openapi: 3.0.1 -info: - title: Generic NRM - version: 16.4.0 - description: >- - OAS 3.0.1 specification of the Generic NRM - © 2020, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). - All rights reserved. -externalDocs: - description: 3GPP TS 28.623 V16.4.0; Generic NRM - url: http://www.3gpp.org/ftp/Specs/archive/28_series/28.623/ -paths: {} -components: - schemas: - -#-------- Definition of types----------------------------------------------------- - - DateTime: - type: string - format: date-time - Dn: - type: string - maxLength: 400 - DnList: - type: array - items: - $ref: '#/components/schemas/Dn' - Mcc: - type: string - pattern: '^[0-9]{3}$' - Mnc: - type: string - pattern: '^[0-9]{2,3}$' - AdministrativeState: - type: string - enum: - - LOCKED - - UNLOCKED - OperationalState: - type: string - enum: - - ENABLED - - DISABLED - UsageState: - type: string - enum: - - IDEL - - ACTIVE - - BUSY - RegistrationState: - type: string - enum: - - REGISTERED - - DEREGISTERED - SetOfMcc: - type: array - items: - $ref: '#/components/schemas/Mcc' - ManagedElementType: - type: string - ManagedElementTypeList: - type: array - items: - $ref: '#/components/schemas/ManagedElementType' - VnfParameter: - type: object - properties: - vnfInstanceId: - type: string - vnfdId: - type: string - flavourId: - type: string - autoScalable: - type: boolean - VnfParametersList: - type: array - items: - $ref: '#/components/schemas/VnfParameter' - SiteLatitude: - type: number - format: float - minimum: -90 - maximum: 90 - SiteLongitude: - type: number - format: float - minimum: -180 - maximum: 180 - PeeParameter: - type: object - properties: - siteIdentification: - type: string - siteDescription: - type: string - siteLatitude: - $ref: '#/components/schemas/SiteLatitude' - siteLongitude: - $ref: '#/components/schemas/SiteLongitude' - equipmentType: - type: string - environmentType: - type: string - powerInterface: - type: string - PeeParametersList: - type: array - items: - $ref: '#/components/schemas/PeeParameter' - MonitoringGPList: - type: array - items: - type: integer - ThresholdInfoList: - type: array - items: - $ref: '#/components/schemas/ThresholdInfo' - ThresholdInfo: - type: object - properties: - measurementType: - type: string - direction: - $ref: '#/components/schemas/Direction' - thresholdPack: - $ref: '#/components/schemas/ThresholdPack' - Direction: - enum: - - Increasing - - Decreasing - ThresholdPack: - type: array - items: - $ref: '#/components/schemas/ThresholdPackElement' - ThresholdPackElement: - type: object - properties: - thresholdLevel: - type: integer - thresholdValue: - type: number - hysteresis: - type: number - Operation: - type: object - properties: - name: - type: string - allowedNFTypes: - $ref: '#/components/schemas/NFType' - operationSemantics: - $ref: '#/components/schemas/OperationSemantics' - OperationList: - type: array - items: - $ref: '#/components/schemas/Operation' - NFType: - type: string - description: ' NF name defined in TS 23.501' - enum: - - NRF - - UDM - - AMF - - SMF - - AUSF - - NEF - - PCF - - SMSF - - NSSF - - UDR - - LMF - - GMLC - - 5G_EIR - - SEPP - - UPF - - N3IWF - - AF - - UDSF - - DN - Fqdn: - type: string - OperationSemantics: - type: string - enum: - - REQUEST_RESPONSE - - SUBSCRIBE_NOTIFY - SAP: - type: object - properties: - host: - $ref: '#/components/schemas/HostAddr' - port: - type: integer - NFServiceType: - type: string - enum: - - Namf_Communication - - Namf_EventExposure - - Namf_MT - - Namf_Location - - Nsmf_PDUSession - - Nsmf_EventExposure - - Others - HostAddr: - oneOf: - - $ref: '#/components/schemas/Ipv4Addr' - - $ref: '#/components/schemas/Ipv6Addr' - - $ref: '#/components/schemas/Fqdn' - Ipv4Addr: - type: string - pattern: '^(([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])\.){3}([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])$' - example: '198.51.100.1' - Ipv4AddrRm: - type: string - pattern: '^(([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])\.){3}([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])$' - example: '198.51.100.1' - nullable: true - Ipv6Addr: - type: string - allOf: - - pattern: '^((:|(0?|([1-9a-f][0-9a-f]{0,3}))):)((0?|([1-9a-f][0-9a-f]{0,3})):){0,6}(:|(0?|([1-9a-f][0-9a-f]{0,3})))$' - - pattern: '^((([^:]+:){7}([^:]+))|((([^:]+:)*[^:]+)?::(([^:]+:)*[^:]+)?))$' - example: '2001:db8:85a3::8a2e:370:7334' - Ipv6AddrRm: - type: string - allOf: - - pattern: '^((:|(0?|([1-9a-f][0-9a-f]{0,3}))):)((0?|([1-9a-f][0-9a-f]{0,3})):){0,6}(:|(0?|([1-9a-f][0-9a-f]{0,3})))$' - - pattern: '^((([^:]+:){7}([^:]+))|((([^:]+:)*[^:]+)?::(([^:]+:)*[^:]+)?))$' - example: '2001:db8:85a3::8a2e:370:7334' - nullable: true - Ipv6Prefix: - type: string - allOf: - - pattern: '^((:|(0?|([1-9a-f][0-9a-f]{0,3}))):)((0?|([1-9a-f][0-9a-f]{0,3})):){0,6}(:|(0?|([1-9a-f][0-9a-f]{0,3})))(\/(([0-9])|([0-9]{2})|(1[0-1][0-9])|(12[0-8])))$' - - pattern: '^((([^:]+:){7}([^:]+))|((([^:]+:)*[^:]+)?::(([^:]+:)*[^:]+)?))(\/.+)$' - example: '2001:db8:abcd:12::0/64' - Uri: - type: string - TransportProtocol: - anyOf: - - type: string - enum: - - TCP - - type: string - SupportedPerfMetricGroup: - type: object - properties: - performanceMetrics: - type: array - items: - type: string - granularityPeriods: - type: array - items: - type: integer - minimum: 1 - reportingMethods: - type: array - items: - type: string - enum: - - FILE_BASED_LOC_SET_BY_PRODUCER - - FILE_BASED_LOC_SET_BY_CONSUMER - - STREAM_BASED - ReportingCtrl: - oneOf: - - type: object - properties: - fileReportingPeriod: - type: integer - - type: object - properties: - fileReportingPeriod: - type: integer - fileLocation: - $ref: '#/components/schemas/Uri' - - type: object - properties: - streamTarget: - $ref: '#/components/schemas/Uri' - Scope: - type: object - properties: - scopeType: - type: string - enum: - - BASE_ONLY - - BASE_ALL - - BASE_NTH_LEVEL - - BASE_SUBTREE - scopeLevel: - type: integer - NotificationType: - type: string - enum: - - notifyMOICreation - - notifyMOIDeletion - - notifyMOIAttributeValueChanges - - notifyEvent - - notifyNewAlarm - - notifyChangedAlarm - - notifyAckStateChanged - - notifyComments - - notifyCorrelatedNotificationChanged - - notifyChangedAlarmGeneral - - notifyAlarmListRebuilt - - notifyPotentialFaultyAlarmList - - notifyFileReady - - notifyFilePreparationError - - notifyThresholdCrossing - NotificationTypes: - type: array - items: - $ref: '#/components/schemas/NotificationType' - -#-------- Definition of types used in Trace control NRM fragment------------------ - - tjJobType-Type: - type: string - description: Specifies whether the TraceJob represents only MDT, Logged MBSFN MDT, Trace or a combined Trace and MDT job. Applicable for Trace, MDT, RCEF and RLF reporting. See 3GPP TS 32.422 clause 5.9a for additional details. - enum: - - IMMEDIATE_MDT_ONLY - - LOGGED_MDT_ONLY - - TRACE_ONLY - - IMMEDIATE_MDT AND TRACE - - RLF_REPORT_ONLY - - RCEF_REPORT_ONLY - - LOGGED_MBSFN_MDT - - tjListOfInterfaces-Type: - description: The interfaces to be recorded in the Network Element. See 3GPP TS 32.422 clause 5.5 for additional details. - type: object - properties: - MSCServerInterfaces: - type: array - items: - type: string - enum: - - A - - Iu-CS - - Mc - - MAP-G - - MAP-B - - MAP-E - - MAP-F - - MAP-D - - MAP-C - - CAP - MGWInterfaces: - type: array - items: - type: string - enum: - - Mc - - Nb-UP - - Iu-UP - RNCInterfaces: - type: array - items: - type: string - enum: - - Iu-CS - - Iu-PS - - Iur - - Iub - - Uu - SGSNInterfaces: - type: array - items: - type: string - enum: - - Gb - - Iu-PS - - Gn - - MAP-Gr - - MAP-Gd - - MAP-Gf - - Ge - - Gs - - S6d - - S4 - - S3 - - S13 - GGSNInterfaces: - type: array - items: - type: string - enum: - - Gn - - Gi - - Gmb - S-CSCFInterfaces: - type: array - items: - type: string - enum: - - Mw - - Mg - - Mr - - Mi - P-CSCFInterfaces: - type: array - items: - type: string - enum: - - Gm - - Mw - I-CSCFInterfaces: - type: array - items: - type: string - enum: - - Cx - - Dx - - Mg - - Mw - MRFCInterfaces: - type: array - items: - type: string - enum: - - Mp - - Mr - MGCFInterfaces: - type: array - items: - type: string - enum: - - Mg - - Mj - - Mn - IBCFInterfaces: - type: array - items: - type: string - enum: - - Ix - - Mx - E-CSCFInterfaces: - type: array - items: - type: string - enum: - - Mw - - Ml - - Mm - - Mi/Mg - BGCFInterfaces: - type: array - items: - type: string - enum: - - Mi - - Mj - - Mk - ASInterfaces: - type: array - items: - type: string - enum: - - Dh - - Sh - - ISC - - Ut - HSSInterfaces: - type: array - items: - type: string - enum: - - MAP-C - - MAP-D - - Gc - - Gr - - Cx - - S6d - - S6a - - Sh - EIRInterfaces: - type: array - items: - type: string - enum: - - MAP-F - - S13 - - MAP-Gf - BM-SCInterfaces: - type: array - items: - type: string - enum: - - Gmb - MMEInterfaces: - type: array - items: - type: string - enum: - - S1-MME - - S3 - - S6a - - S10 - - S11 - - S13 - SGWInterfaces: - type: array - items: - type: string - enum: - - S4 - - S5 - - S8 - - S11 - - Gxc - PDN_GWInterfaces: - type: array - items: - type: string - enum: - - S2a - - S2b - - S2c - - S5 - - S6b - - Gx - - S8 - - SGi - eNBInterfaces: - type: array - items: - type: string - enum: - - S1-MME - - X2 - en-gNBInterfaces: - type: array - items: - type: string - enum: - - S1-MME - - X2 - - Uu - - F1-C - - E1 - AMFInterfaces: - type: array - items: - type: string - enum: - - N1 - - N2 - - N8 - - N11 - - N12 - - N14 - - N15 - - N20 - - N22 - - N26 - AUSFInterfaces: - type: array - items: - type: string - enum: - - N12 - - N13 - NEFInterfaces: - type: array - items: - type: string - enum: - - N29 - - N30 - - N33 - NRFInterfaces: - type: array - items: - type: string - enum: - - N27 - NSSFInterfaces: - type: array - items: - type: string - enum: - - N22 - - N31 - PCFInterfaces: - type: array - items: - type: string - enum: - - N5 - - N7 - - N15 - SMFInterfaces: - type: array - items: - type: string - enum: - - N4 - - N7 - - N10 - - N11 - - S5-C - SMSFInterfaces: - type: array - items: - type: string - enum: - - N20 - - N21 - UDMInterfaces: - type: array - items: - type: string - enum: - - N8 - - N10 - - N13 - - N21 - UPFInterfaces: - type: array - items: - type: string - enum: - - N4 - ng-eNBInterfaces: - type: array - items: - type: string - enum: - - NG-C - - Xn-C - - Uu - gNB-CU-CPInterfaces: - type: array - items: - type: string - enum: - - NG-C - - Xn-C - - Uu - - F1-C - - E1 - - X2-C - gNB-CU-UPInterfaces: - type: array - items: - type: string - enum: - - E1 - gNB-DUInterfaces: - type: array - items: - type: string - enum: - - F1-C - - tjListOfNeTypes-Type: - description: The Network Element types where Trace Session activation is needed. See 3GPP TS 32.422 clause 5.4 for additional details. - type: array - items: - type: string - enum: - - MSC_SERVER - - SGSN - - MGW - - GGSN - - RNC - - BM_SC - - MME - - SGW - - PGW - - ENB - - EN_GNB - - GNB_CU_CP - - GNB_CU_UP - - GNB_DU - - tjPLMNTaget-Type: - type: object - description: The PLMN for which sessions shall be selected in the Trace Session in case of management based activation when several PLMNs are supported in the RAN (this means that shared cells and not shared cells are allowed for the specified PLMN. Note that the PLMN Target might differ from the PLMN specified in the Trace Reference, as that specifies the PLMN that is containing the management system requesting the Trace Session from the NE. See 3GPP TS 32.422 clause 5.9b for additional details. - properties: - mcc: - $ref: '#/components/schemas/Mcc' - mnc: - $ref: '#/components/schemas/Mnc' - required: - - mcc - - mnc - - tjStreamingTraceConsumerURI-Type: - type: string - description: The URI of the Trace Reporting MnS consumer (see 3GPP TS 28.532) to which the Trace records shall be sent. See 3GPP TS 32.422 clause 5.9 for additional details. - format: uri - - tjTraceCollectionEntityAddress-Type: - description: The IP address to which the Trace records shall be transferred. See 3GPP TS 32.422 clause 5.9 for additional details. - oneOf: - - $ref: '#/components/schemas/Ipv4Addr' - - $ref: '#/components/schemas/Ipv6Addr' - - tjTraceDepth-Type: - description: Specifies how detailed information should be recorded in the Network Element. The Trace Depth is a paremeter for Trace Session level, i.e., the Trace Depth is the same for all of the NEs to be traced in the same Trace Session. See 3GPP TS 32.422 clause 5.3 for additional details. - type: string - enum: - - MINIMUM - - MEDIUM - - MAXIMUM - - VENDORMINIMUM - - VENDORMEDIUM - - VENDORMAXIMUM - - tjTraceReference-Type: - type: object - description: The Trace Reference parameter shall be globally unique, therefore the Trace Reference shall compose as follows - MCC+MNC+Trace ID, where the MCC and MNC are coming with the Trace activation request from the management system to identify one PLMN containing the management system, and Trace ID is a 3 byte Octet String. See 3GPP TS 32.422 clause 5.6 for additional details. - properties: - mcc: - $ref: '#/components/schemas/Mcc' - mnc: - $ref: '#/components/schemas/Mnc' - traceId: - type: integer - required: - - mcc - - mnc - - traceId - - tjTraceReportingFormat-Type: - type: string - description: Specifies whether file-based or streaming reporting shall be used for this Trace Session. See 3GPP TS 32.422 clause 5.11 for additional details. - enum: - - FILE-BASED - - STREAMING - - tjTraceTarget-Type: - type: string - description: Type of trace target. For additional details see 3GPP TS 32.422. - enum: - - IMSI - - IMEI - - IMEISV - - PUBLIC_ID - - UTRAN_CELL - - E-UTRAN_CELL - - NG-RAN_CELL - - eNB - - RNC - - gNB - - tjTriggeringEvent-Type: - type: object - description: Specifies when to start a Trace Recording Session and which message shall be recorded first, when to stop a Trace Recording Session and which message shall be recorded last respectively. See 3GPP TS 32.422 clause 5.1 for additional detials. - properties: - NetworkElement: - type: string - enum: - - MSC_SERVER - - SGSN - - MGW - - GGSN - - BM_SC - - MME - - SGW - - PGW - - AMF - - SMF - - PCF - - UPF - EventBitmap: - type: integer - required: - - NetworkElement - - EventBitmap - - tjMDTAnonymizationOfData-Type: - description: Specifies level of MDT anonymization. For additional details see 3GPP TS 32.422 clause 5.10.12. - type: string - enum: - - NO_IDENTITY - - TAC_OF_IMEI - - tjMDTAreaConfigurationForNeighCell-Type: - description: Used for logged NR MDT and defines the area for which UE is requested to perform measurement logging for neighbour cells which have list of frequencies. For additional details see 3GPP TS 32.422 clause 5.10.26. - type: array - items: - type: object - properties: - frequency: - type: string - cell: - type: string - - tjMDTAreaScope-Type: - description: defines the area in terms or Cells or Tracking Area/Routing Area/Location Area where the MDT data collection shall take place. For additional details see 3GPP TS 32.422 clause 5.10.2. - allOf: - - $ref: '#/components/schemas/DnList' - - tjMDTCollectionPeriodRrmLte-Type: - description: See details in 3GPP TS 32.422 clause 5.10.20. - type: string - enum: - - 250ms - - 500ms - - 1000ms - - 2000ms - - 3000ms - - 4000ms - - 6000ms - - 8000ms - - 12000ms - - 16000ms - - 20000ms - - 24000ms - - 28000ms - - 32000ms - - 64000ms - - tjMDTCollectionPeriodRrmUmts-Type: - description: See details in 3GPP TS 32.422 clause 5.10.21. - type: string - enum: - - 1024ms - - 1280ms - - 2048ms - - 2560ms - - 5120ms - - 10240ms - - 1min - - tjMDTEventListForTriggeredMeasurement-Type: - description: See details in 3GPP TS 32.422 clause 5.10.28. - type: string - enum: - - OUT_OF_COVERAGE - - A2_EVENT - - tjMDTEventThreshold-Type: - description: See details in 3GPP TS 32.422 clause 5.10.7, 5.10.7a, 5.10.13 and 5.10.14. - type: object - properties: - EventThresholdRSRP: - type: integer - minimum: 0 - maximum: 97 - EventThresholdRSRQ: - type: integer - minimum: 0 - maximum: 34 - EventThreshold1F: - type: object - properties: - CPICH_RSCP: - type: integer - minimum: -120 - maximum: 25 - CPICH_EcNo: - type: integer - minimum: -24 - maximum: 0 - PathLoss: - type: integer - minimum: 30 - maximum: 165 - EventThreshold1I: - type: integer - minimum: -120 - maximum: 25 - - tjMDTListOfMeasurements-Type: - description: See details in 3GPP TS 32.422 clause 5.10.3 for details. - type: object - properties: - UMTS: - type: array - items: - type: string - enum: - - M1 - - M2 - - M3 - - M4 - - M5 - - M6_DL - - M6_UL - - M7_DL - - M7_UL - LTE: - type: array - items: - type: string - enum: - - M1 - - M2 - - M3 - - M4 - - M5 - - M1_EVENT_TRIGGERED - - M6 - - M7 - - M8 - - M9 - NR: - type: array - items: - type: string - enum: - - M1 - - M2 - - M3 - - M4 - - M5 - - M6 - - M7 - - M8 - - M9 - - tjMDTLoggingDuration-Type: - description: See details in 3GPP TS 32.422 clause 5.10.9. - type: string - enum: - - 600s - - 1200s - - 2400s - - 3600s - - 5400s - - 7200s - - tjMDTLoggingInterval-Type: - description: See details in 3GPP TS 32.422 clause 5.10.8. - type: string - enum: - - 1.28s - - 2.56s - - 5.12s - - 10.24s - - 20.48s - - 30.72s - - 40.96s - - 61.44s - - tjMDTMBSFNAreaList-Type: - description: See details in 3GPP TS 32.422 clause 5.10.25. - type: array - items: - type: object - properties: - mbsfnAreaId: - type: integer - minimum: 1 - earfcn: - type: integer - minimum: 1 - required: - - mbsfnAreaId - - earfcn - - tjMDTMeasurementPeriodLTE-Type: - description: See details in 3GPP TS 32.422 clause 5.10.23. - type: string - enum: - - 1024ms - - 1280ms - - 2048ms - - 2560ms - - 5120ms - - 10240ms - - 1min - - tjMDTMeasurementPeriodUMTS-Type: - description: See details in 3GPP TS 32.422 clause 5.10.22. - type: string - enum: - - 250ms - - 500ms - - 1000ms - - 2000ms - - 3000ms - - 4000ms - - 6000ms - - 8000ms - - 12000ms - - 16000ms - - 20000ms - - 24000ms - - 28000ms - - 32000ms - - 64000ms - - tjMDTMeasurementQuantity-Type: - description: See details in 3GPP TS 32.422 clause 5.10.15. - type: string - enum: - - CPICH_EcNo - - CPICH_RSCP - - PathLoss - - tjMDTPLMList-Type: - description: See details in 3GPP TS 32.422 clause 5.10.24. - type: array - items: - type: object - properties: - mcc: - $ref: '#/components/schemas/Mcc' - mnc: - $ref: '#/components/schemas/Mnc' - required: - - mcc - - mnc - maxItems: 16 - - tjMDTPositioningMethod-Type: - description: See details in 3GPP TS 32.422 clause 5.10.19. - type: string - enum: - - GNSS - - E-CELL_ID - - tjMDTReportAmount-Type: - description: See details in 3GPP TS 32.422 clause 5.10.6. - type: string - enum: - - 1 - - 2 - - 4 - - 8 - - 16 - - 32 - - 64 - - INFINITY - - tjMDTReportingTrigger-Type: - description: See details in 3GPP TS 32.422 clause 5.10.4. - type: array - items: - type: string - enum: - - PERIODICAL - - A2_FOR_LTE - - 1F_FOR_UMTS - - 1I_FOR_UMTS_MCPS_TDD - - A2_TRIGGERED_PERIODIC_FOR_LTE - - ALL_CONFIGURED_RRM_FOR_LTE - - ALL_CONFIGURED_RRM_FOR_UMTS - - tjMDTReportInterval-Type: - description: See details in 3GPP TS 32.422 clause 5.10.5. - type: string - enum: - - 250ms - - 500ms - - 1000ms - - 2000ms - - 3000ms - - 4000ms - - 6000ms - - 8000ms - - 12000ms - - 16000ms - - 20000ms - - 24000ms - - 28000ms - - 32000ms - - 64000ms - - 120ms - - 240ms - - 480ms - - 640ms - - 1024ms - - 2048ms - - 5120ms - - 10240ms - - 60000ms - - 360000ms - - 720000ms - - 1800000ms - - 3600000ms - - tjMDTReportType-Type: - description: Report type for logged NR MDT. See details in 3GPP TS 32.422 clause 5.10.27. - type: string - enum: - - PERIODICAL - - EVENT_TRIGGERED - - tjMDTSensorInformation-Type: - description: See details in 3GPP TS 32.422 clause 5.10.29. - type: array - items: - type: string - enum: - - BAROMETRIC_PRESSURE - - UE_SPEED - - UE_ORIENTATION - - tjMDTTraceCollectionEntityID-Type: - description: See details in 3GPP TS 32.422 clause 5.10.11. Only tceID value may be sent over the air to the UE being configured for Logged MDT. - type: object - properties: - tceID: - type: integer - tcePLMN: - type: object - properties: - mcc: - $ref: '#/components/schemas/Mcc' - mnc: - $ref: '#/components/schemas/Mnc' - required: - - mcc - - mnc - tceAddress: - oneOf: - - $ref: '#/components/schemas/tjTraceCollectionEntityAddress-Type' - - $ref: '#/components/schemas/tjStreamingTraceConsumerURI-Type' - required: - - tceID - - tcePLMN - - tceAddress - - -#-------- end of Definition of types used in Trace control NRM fragment ---------- - - -#-------- Definition of abstract IOC Top ----------------------------------------- - - Top-Attr: - # This definition will be deprecated, when all occurances of Top-Attr - # are replaced by Top. - type: object - properties: - id: - type: string - VsDataContainer: - $ref: '#/components/schemas/VsDataContainer-Multiple' - Top: - type: object - properties: - id: - type: string - VsDataContainer: - $ref: '#/components/schemas/VsDataContainer-Multiple' - -#-------- Definition of IOCs with new name-containments defined in other TS ------ - - SubNetwork-Attr: - type: object - properties: - dnPrefix: - type: string - userLabel: - type: string - userDefinedNetworkType: - type: string - setOfMcc: - $ref: '#/components/schemas/SetOfMcc' - priorityLabel: - type: integer - supportedPerfMetricGroups: - type: array - items: - $ref: '#/components/schemas/SupportedPerfMetricGroup' - ManagedElement-Attr: - type: object - properties: - dnPrefix: - type: string - managedElementTypeList: - $ref: '#/components/schemas/ManagedElementTypeList' - userLabel: - type: string - locationName: - type: string - managedBy: - $ref: '#/components/schemas/DnList' - vendorName: - type: string - userDefinedState: - type: string - swVersion: - type: string - priorityLabel: - type: integer - supportedPerfMetricGroups: - type: array - items: - $ref: '#/components/schemas/SupportedPerfMetricGroup' - - SubNetwork-ncO: - type: object - properties: - ManagementNode: - $ref: '#/components/schemas/ManagementNode-Multiple' - MeContext: - $ref: '#/components/schemas/MeContext-Multiple' - PerfMetricJob: - $ref: '#/components/schemas/PerfMetricJob-Multiple' - ThresholdMonitor: - $ref: '#/components/schemas/ThresholdMonitor-Multiple' - ThresholdMonitoringCapability: - $ref: '#/components/schemas/ThresholdMonitoringCapability-Single' - NtfSubscriptionControl: - $ref: '#/components/schemas/NtfSubscriptionControl-Multiple' - TraceJob: - $ref: '#/components/schemas/TraceJob-Multiple' - AlarmList: - $ref: '#/components/schemas/AlarmList-Single' - ManagedElement-ncO: - type: object - properties: - PerfMetricJob: - $ref: '#/components/schemas/PerfMetricJob-Multiple' - ThresholdMonitor: - $ref: '#/components/schemas/ThresholdMonitor-Multiple' - ThresholdMonitoringCapability: - $ref: '#/components/schemas/ThresholdMonitoringCapability-Single' - NtfSubscriptionControl: - $ref: '#/components/schemas/NtfSubscriptionControl-Multiple' - TraceJob: - $ref: '#/components/schemas/TraceJob-Multiple' - AlarmList: - $ref: '#/components/schemas/AlarmList-Single' - -#-------- Definition of abstract IOCs -------------------------------------------- - - ManagedFunction-Attr: - type: object - properties: - userLabel: - type: string - vnfParametersList: - $ref: '#/components/schemas/VnfParametersList' - peeParametersList: - $ref: '#/components/schemas/PeeParametersList' - priorityLabel: - type: integer - supportedPerfMetricGroups: - type: array - items: - $ref: '#/components/schemas/SupportedPerfMetricGroup' - EP_RP-Attr: - type: object - properties: - userLabel: - type: string - farEndEntity: - type: string - supportedPerfMetricGroups: - type: array - items: - $ref: '#/components/schemas/SupportedPerfMetricGroup' - - TraceJob-Attr: - type: object - description: abstract class used as a container of all TraceJob attributes - properties: - tjJobType: - $ref: '#/components/schemas/tjJobType-Type' - tjListOfInterfaces: - $ref: '#/components/schemas/tjListOfInterfaces-Type' - tjListOfNeTypes: - $ref: '#/components/schemas/tjListOfNeTypes-Type' - tjPLMNTarget: - $ref: '#/components/schemas/tjPLMNTaget-Type' - tjTraceConsumer: - oneOf: - - $ref: '#/components/schemas/tjStreamingTraceConsumerURI-Type' - - $ref: '#/components/schemas/tjTraceCollectionEntityAddress-Type' - tjTraceDepth: - $ref: '#/components/schemas/tjTraceDepth-Type' - tjTraceReference: - $ref: '#/components/schemas/tjTraceReference-Type' - tjTraceReportingFormat: - $ref: '#/components/schemas/tjTraceReportingFormat-Type' - tjTraceTarget: - $ref: '#/components/schemas/tjTraceTarget-Type' - tjTriggeringEvent: - $ref: '#/components/schemas/tjTriggeringEvent-Type' - tjMDTAnonymizationOfData: - $ref: '#/components/schemas/tjMDTAnonymizationOfData-Type' - tjMDTAreaConfigurationForNeighCell: - $ref: '#/components/schemas/tjMDTAreaConfigurationForNeighCell-Type' - tjMDTAreaScope: - $ref: '#/components/schemas/tjMDTAreaScope-Type' - tjMDTCollectionPeriodRrmLte: - $ref: '#/components/schemas/tjMDTCollectionPeriodRrmLte-Type' - tjMDTCollectionPeriodRrmUmts: - $ref: '#/components/schemas/tjMDTCollectionPeriodRrmUmts-Type' - tjMDTEventListForTriggeredMeasurement: - $ref: '#/components/schemas/tjMDTEventListForTriggeredMeasurement-Type' - tjMDTEventThreshold: - $ref: '#/components/schemas/tjMDTEventThreshold-Type' - tjMDTListOfMeasurements: - $ref: '#/components/schemas/tjMDTListOfMeasurements-Type' - tjMDTLoggingDuration: - $ref: '#/components/schemas/tjMDTLoggingDuration-Type' - tjMDTLoggingInterval: - $ref: '#/components/schemas/tjMDTLoggingInterval-Type' - tjMDTMBSFNAreaList: - $ref: '#/components/schemas/tjMDTMBSFNAreaList-Type' - tjMDTMeasurementPeriodLTE: - $ref: '#/components/schemas/tjMDTMeasurementPeriodLTE-Type' - tjMDTMeasurementPeriodUMTS: - $ref: '#/components/schemas/tjMDTMeasurementPeriodUMTS-Type' - tjMDTMeasurementQuantity: - $ref: '#/components/schemas/tjMDTMeasurementQuantity-Type' - tjMDTPLMList: - $ref: '#/components/schemas/tjMDTPLMList-Type' - tjMDTPositioningMethod: - $ref: '#/components/schemas/tjMDTPositioningMethod-Type' - tjMDTReportAmount: - $ref: '#/components/schemas/tjMDTReportAmount-Type' - tjMDTReportingTrigger: - $ref: '#/components/schemas/tjMDTReportingTrigger-Type' - tjMDTReportInterval: - $ref: '#/components/schemas/tjMDTReportInterval-Type' - tjMDTReportType: - $ref: '#/components/schemas/tjMDTReportType-Type' - tjMDTSensorInformation: - $ref: '#/components/schemas/tjMDTSensorInformation-Type' - tjMDTTraceCollectionEntityID: - $ref: '#/components/schemas/tjMDTTraceCollectionEntityID-Type' - required: - - tjJobType - - tjTraceReference - - tjTraceConsumer - - tjTraceReportingFormat - - tjTraceTarget - - ManagedFunction-ncO: - type: object - properties: - MeasurementControl: - $ref: '#/components/schemas/MeasurementControl-Multiple' - ThresholdMonitor: - $ref: '#/components/schemas/ThresholdMonitor-Multiple' - ThresholdMonitoringCapability: - $ref: '#/components/schemas/ThresholdMonitoringCapability-Single' - ManagedNFService: - $ref: '#/components/schemas/ManagedNFService-Multiple' - TraceJob: - $ref: '#/components/schemas/TraceJob-Multiple' - -#-------- Definition of concrete IOCs -------------------------------------------- - - VsDataContainer-Single: - type: object - properties: - id: - type: string - attributes: - type: object - properties: - vsDataType: - type: string - vsDataFormatVersion: - type: string - vsData: - nullable: true - VsDataContainer: - $ref: '#/components/schemas/VsDataContainer-Multiple' - ManagedNFService-Single: - allOf: - - $ref: '#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - type: object - properties: - userLabel: - type: string - nFServiceType: - $ref: '#/components/schemas/NFServiceType' - sAP: - $ref: '#/components/schemas/SAP' - operations: - $ref: '#/components/schemas/OperationList' - administrativeState: - $ref: '#/components/schemas/AdministrativeState' - operationalState: - $ref: '#/components/schemas/OperationalState' - usageState: - $ref: '#/components/schemas/UsageState' - registrationState: - $ref: '#/components/schemas/RegistrationState' - ManagementNode-Single: - allOf: - - $ref: '#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - type: object - properties: - userLabel: - type: string - managedElements: - $ref: '#/components/schemas/DnList' - vendorName: - type: string - userDefinedState: - type: string - locationName: - type: string - swVersion: - type: string - MeContext-Single: - allOf: - - $ref: '#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - type: object - properties: - dnPrefix: - type: string - PerfMetricJob-Single: - allOf: - - $ref: '#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - type: object - properties: - administrativeState: - $ref: '#/components/schemas/AdministrativeState' - operationalState: - $ref: '#/components/schemas/OperationalState' - perfMetricJobGroupId: - type: string - performanceMetrics: - type: array - items: - type: string - granularityPeriod: - type: integer - minimum: 1 - objectInstances: - $ref: '#/components/schemas/DnList' - rootObjectInstances: - $ref: '#/components/schemas/DnList' - reportingCtrl: - $ref: '#/components/schemas/ReportingCtrl' - ThresholdMonitoringCapability-Single: - allOf: - - $ref: '#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - type: object - properties: - supportedMonitoringGPs: - $ref: '#/components/schemas/MonitoringGPList' - ThresholdMonitor-Single: - allOf: - - $ref: '#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - type: object - properties: - thresholdInfoList: - $ref: '#/components/schemas/ThresholdInfoList' - monitoringGP: - type: integer - monitoringNotifTarget: - type: string - monitoredIOCName: - type: string - monitoredObjectDNs: - $ref: '#/components/schemas/DnList' - NtfSubscriptionControl-Single: - allOf: - - $ref: '#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - type: object - properties: - notificationRecipientAddress: - $ref: '#/components/schemas/Uri' - notificationTypes: - $ref: '#/components/schemas/NotificationTypes' - scope: - $ref: '#/components/schemas/Scope' - notificationFilter: - type: string - HeartbeatControl: - $ref: '#/components/schemas/HeartbeatControl-Single' - HeartbeatControl-Single: - allOf: - - $ref: '#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - type: object - properties: - heartbeatNtfPeriod: - type: integer - triggerHeartbeatNtf: - type: boolean - TraceJob-Single: - allOf: - - $ref: '#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - $ref: '#/components/schemas/TraceJob-Attr' - - AlarmList-Single: - allOf: - - $ref: '#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - type: object - properties: - administrativeState: - $ref: '#/components/schemas/AdministrativeState' - operationalState: - $ref: '#/components/schemas/OperationalState' - numOfAlarmRecords: - type: integer - lastModification: - $ref: '#/components/schemas/DateTime' - alarmRecords: - description: >- - This resource represents a map of alarm records. - The alarmIds are used as keys in the map. - type: object - additionalProperties: - $ref: 'faultMnS.yaml#/components/schemas/AlarmRecord' - -#-------- Definition of JSON arrays for name-contained IOCs ---------------------- - - VsDataContainer-Multiple: - type: array - items: - $ref: '#/components/schemas/VsDataContainer-Single' - ManagedNFService-Multiple: - type: array - items: - $ref: '#/components/schemas/ManagedNFService-Single' - ManagementNode-Multiple: - type: array - items: - $ref: '#/components/schemas/ManagementNode-Single' - MeContext-Multiple: - type: array - items: - $ref: '#/components/schemas/MeContext-Single' - PerfMetricJob-Multiple: - type: array - items: - $ref: '#/components/schemas/MetricProdJob-Single' - ThresholdMonitor-Multiple: - type: array - items: - $ref: '#/components/schemas/ThresholdMonitor-Single' - NtfSubscriptionControl-Multiple: - type: array - items: - $ref: '#/components/schemas/NtfSubscriptionControl-Single' - TraceJob-Multiple: - type: array - items: - $ref: '#/components/schemas/TraceJob-Single' - -#-------- Definitions in TS 28.623 for TS 28.532 --------------------------------- - - resources-genericNrm: - oneOf: - - - $ref: '#/components/schemas/VsDataContainer-Single' - - - $ref: '#/components/schemas/ManagementNode-Single' - - $ref: '#/components/schemas/MeContext-Single' - - - $ref: '#/components/schemas/ManagedNFService-Single' - - - $ref: '#/components/schemas/PerfMetricJob-Single' - - - $ref: '#/components/schemas/ThresholdMonitoringCapability-Single' - - $ref: '#/components/schemas/ThresholdMonitor-Single' - - - $ref: '#/components/schemas/NtfSubscriptionControl-Single' - - $ref: '#/components/schemas/HeartbeatControl-Single' - - $ref: '#/components/schemas/TraceJob-Single' - - - $ref: '#/components/schemas/AlarmList-Single' diff --git a/OpenAPI/heartbeatNtf.yaml b/OpenAPI/heartbeatNtf.yaml deleted file mode 100644 index afde5066d..000000000 --- a/OpenAPI/heartbeatNtf.yaml +++ /dev/null @@ -1,23 +0,0 @@ -openapi: 3.0.1 -info: - title: Heartbeat notification - version: 16.3.0 - description: >- - OAS 3.0.1 specification of the heartbeat notification - © 2020, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). - All rights reserved. -externalDocs: - description: 3GPP TS 28.532 V16.3.0; Heartbeat notification - url: http://www.3gpp.org/ftp/Specs/archive/28_series/28.6532/ -paths: {} -components: - schemas: - hearbeatNtfPeriod-Type: - type: integer - notifyHeartbeat-NotifType: - allOf: - - $ref: 'provMnS.yaml#/components/schemas/header-Type' - - type: object - properties: - heartbeatNtfPeriod: - $ref: '#/components/schemas/hearbeatNtfPeriod-Type' diff --git a/OpenAPI/nrNrm.yaml b/OpenAPI/nrNrm.yaml deleted file mode 100644 index c4a4ba807..000000000 --- a/OpenAPI/nrNrm.yaml +++ /dev/null @@ -1,1869 +0,0 @@ -openapi: 3.0.1 -info: - title: NR NRM - version: 16.6.0 - description: >- - OAS 3.0.1 specification of the NR NRM - © 2020, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). - All rights reserved. -externalDocs: - description: 3GPP TS 28.541 V16.6.0; 5G NRM, NR NRM - url: http://www.3gpp.org/ftp/Specs/archive/28_series/28.541/ -paths: {} -components: - schemas: - -#-------- Definition of types----------------------------------------------------- - - GnbId: - type: string - GnbIdLength: - type: integer - minimum: 22 - maximum: 32 - GnbName: - type: string - maxLength: 150 - GnbDuId: - type: number - minimum: 0 - maximum: 68719476735 - GnbCuUpId: - type: number - minimum: 0 - maximum: 68719476735 - - Sst: - type: integer - maximum: 255 - Snssai: - type: object - properties: - sst: - $ref: '#/components/schemas/Sst' - sd: - type: string - SnssaiList: - type: array - items: - $ref: '#/components/schemas/Snssai' - - Mnc: - type: string - pattern: '[0-9]{3}|[0-9]{2}' - PlmnId: - type: object - properties: - mcc: - $ref: 'genericNrm.yaml#/components/schemas/Mcc' - mnc: - $ref: '#/components/schemas/Mnc' - PlmnIdList: - type: array - items: - $ref: '#/components/schemas/PlmnId' - PlmnInfo: - type: object - properties: - plmnId": - $ref: '#/components/schemas/PlmnId' - snssai: - $ref: '#/components/schemas/Snssai' - PlmnInfoList: - type: array - items: - $ref: '#/components/schemas/PlmnInfo' - GGnbId: - type: string - pattern: '^[0-9]{3}[0-9]{2,3}-(22|23|24|25|26|27|28|29|30|31|32)-[0-9]{1,10}' - GEnbId: - type: string - pattern: '^[0-9]{3}[0-9]{2,3}-(18|20|21|22)-[0-9]{1,7}' - - GGnbIdList: - type: array - items: - $ref: '#/components/schemas/GGnbId' - - GEnbIdList: - type: array - items: - $ref: '#/components/schemas/GEnbId' - - NrPci: - type: integer - maximum: 503 - NrTac: - type: integer - maximum: 16777215 - Tai: - type: object - properties: - plmnId: - $ref: '#/components/schemas/PlmnId' - nrTac: - $ref: '#/components/schemas/NrTac' - - BackhaulAddress: - type: object - properties: - gnbId: - $ref: '#/components/schemas/GnbId' - tai: - $ref: "#/components/schemas/Tai" - MappingSetIDBackhaulAddress: - type: object - properties: - setID: - type: integer - backhaulAddress: - $ref: '#/components/schemas/BackhaulAddress' - IntraRatEsActivationOriginalCellLoadParameters: - type: object - properties: - loadThreshold: - type: integer - timeDuration: - type: integer - IntraRatEsActivationCandidateCellsLoadParameters: - type: object - properties: - loadThreshold: - type: integer - timeDuration: - type: integer - IntraRatEsDeactivationCandidateCellsLoadParameters: - type: object - properties: - loadThreshold: - type: integer - timeDuration: - type: integer - EsNotAllowedTimePeriod: - type: object - properties: - startTimeandendTime: - type: string - periodOfDay: - type: string - daysOfWeekList: - type: string - listoftimeperiods: - type: string - InterRatEsActivationOriginalCellParameters: - type: object - properties: - loadThreshold: - type: integer - timeDuration: - type: integer - InterRatEsActivationCandidateCellParameters: - type: object - properties: - loadThreshold: - type: integer - timeDuration: - type: integer - InterRatEsDeactivationCandidateCellParameters: - type: object - properties: - loadThreshold: - type: integer - timeDuration: - type: integer - - UeAccProbilityDistPerSSB: - type: object - properties: - targetProbability: - type: integer - numberofpreamblessent: - type: integer - - UeAccDelayProbilityDistPerSSB: - type: object - properties: - targetProbability: - type: integer - accessdelay: - type: integer - - NRPciList: - type: object - properties: - NRPci: - type: integer - - CSonPciList: - type: object - properties: - NRPci: - type: integer - - MaximumDeviationHoTrigger: - type: integer - minimum: -20 - maximum: 20 - - MinimumTimeBetweenHoTriggerChange: - type: integer - minimum: 0 - maximum: 604800 - - TstoreUEcntxt: - type: integer - minimum: 0 - maximum: 1023 - - CellState: - type: string - enum: - - IDLE - - INACTIVE - - ACTIVE - CyclicPrefix: - type: string - enum: - - '15' - - '30' - - '60' - - '120' - TxDirection: - type: string - enum: - - DL - - UL - - DL and UL - BwpContext: - type: string - enum: - - DL - - UL - - SUL - IsInitialBwp: - type: string - enum: - - INITIAL - - OTHER - - SUL - QuotaType: - type: string - enum: - - STRICT - - FLOAT - IsESCoveredBy: - type: string - enum: - - NO - - PARTIAL - - FULL - RrmPolicyMember: - type: object - properties: - plmnId: - $ref: '#/components/schemas/PlmnId' - snssai: - $ref: '#/components/schemas/Snssai' - RrmPolicyMemberList: - type: array - items: - $ref: '#/components/schemas/RrmPolicyMember' - AddressWithVlan: - type: object - properties: - ipv4Address: - $ref: 'genericNrm.yaml#/components/schemas/Ipv4Addr' - ipv6Address: - $ref: 'genericNrm.yaml#/components/schemas/Ipv6Addr' - vlanId: - type: integer - minimum: 0 - maximum: 4096 - LocalAddress: - type: object - properties: - addressWithVlan: - $ref: '#/components/schemas/AddressWithVlan' - port: - type: integer - minimum: 0 - maximum: 65535 - RemoteAddress: - type: object - properties: - ipv4Address: - $ref: 'genericNrm.yaml#/components/schemas/Ipv4Addr' - ipv6Address: - $ref: 'genericNrm.yaml#/components/schemas/Ipv6Addr' - - CellIndividualOffset: - type: object - properties: - rsrpOffsetSSB: - type: integer - rsrqOffsetSSB: - type: integer - sinrOffsetSSB: - type: integer - rsrpOffsetCSI-RS: - type: integer - rsrqOffsetCSI-RS: - type: integer - sinrOffsetCSI-RS: - type: integer - QOffsetRange: - type: integer - enum: - - -24 - - -22 - - -20 - - -18 - - -16 - - -14 - - -12 - - -10 - - -8 - - -6 - - -5 - - -4 - - -3 - - -2 - - -1 - - 0 - - 24 - - 22 - - 20 - - 18 - - 16 - - 14 - - 12 - - 10 - - 8 - - 6 - - 5 - - 4 - - 3 - - 2 - - 1 - QOffsetRangeList: - type: object - properties: - rsrpOffsetSSB: - $ref: '#/components/schemas/QOffsetRange' - rsrqOffsetSSB: - $ref: '#/components/schemas/QOffsetRange' - sinrOffsetSSB: - $ref: '#/components/schemas/QOffsetRange' - rsrpOffsetCSI-RS: - $ref: '#/components/schemas/QOffsetRange' - rsrqOffsetCSI-RS: - $ref: '#/components/schemas/QOffsetRange' - sinrOffsetCSI-RS: - $ref: '#/components/schemas/QOffsetRange' - QOffsetFreq: - type: number - TReselectionNRSf: - type: integer - enum: - - 25 - - 50 - - 75 - - 100 - SsbPeriodicity: - type: integer - enum: - - 5 - - 10 - - 20 - - 40 - - 80 - - 160 - SsbDuration: - type: integer - enum: - - 1 - - 2 - - 3 - - 4 - - 5 - SsbSubCarrierSpacing: - type: integer - enum: - - 15 - - 30 - - 120 - - 240 - CoverageShape: - type: integer - maximum: 65535 - DigitalTilt: - type: integer - minimum: -900 - maximum: 900 - DigitalAzimuth: - type: integer - minimum: -1800 - maximum: 1800 - - RSSetId: - type: integer - maximum: 4194303 - - RSSetType: - type: string - enum: - - RS1 - - RS2 - - FrequencyDomainPara: - type: object - properties: - rimRSSubcarrierSpacing: - type: integer - rIMRSBandwidth: - type: integer - nrofGlobalRIMRSFrequencyCandidates: - type: integer - rimRSCommonCarrierReferencePoint: - type: integer - rimRSStartingFrequencyOffsetIdList: - type: array - items: - type: integer - - SequenceDomainPara: - type: object - properties: - nrofRIMRSSequenceCandidatesofRS1: - type: integer - rimRSScrambleIdListofRS1: - type: array - items: - type: integer - nrofRIMRSSequenceCandidatesofRS2: - type: integer - rimRSScrambleIdListofRS2: - type: array - items: - type: integer - enableEnoughNotEnoughIndication: - type: string - enum: - - ENABLE - - DISABLE - RIMRSScrambleTimerMultiplier: - type: integer - RIMRSScrambleTimerOffset: - type: integer - - TimeDomainPara: - type: object - properties: - dlULSwitchingPeriod1: - type: string - enum: - - MS0P5 - - MS0P625 - - MS1 - - MS1P25 - - MS2 - - MS2P5 - - MS3 - - MS4 - - MS5 - - MS10 - - MS20 - symbolOffsetOfReferencePoint1: - type: integer - dlULSwitchingPeriod2: - type: string - enum: - - MS0P5 - - MS0P625 - - MS1 - - MS1P25 - - MS2 - - MS2P5 - - MS3 - - MS4 - - MS5 - - MS10 - - MS20 - symbolOffsetOfReferencePoint2: - type: integer - totalnrofSetIdofRS1: - type: integer - totalnrofSetIdofRS2: - type: integer - nrofConsecutiveRIMRS1: - type: integer - nrofConsecutiveRIMRS2: - type: integer - consecutiveRIMRS1List: - type: array - items: - type: integer - consecutiveRIMRS2List: - type: array - items: - type: integer - enablenearfarIndicationRS1: - type: string - enum: - - ENABLE - - DISABLE - enablenearfarIndicationRS2: - type: string - enum: - - ENABLE - - DISABLE - - RimRSReportInfo: - type: object - properties: - detectedSetID: - type: integer - propagationDelay: - type: integer - functionalityOfRIMRS: - type: string - enum: - - RS1 - - RS2 - - RS1forEnoughMitigation - - RS1forNotEnoughMitigation - - RimRSReportConf: - type: object - properties: - reportIndicator: - type: string - enum: - - ENABLE - - DISABLE - reportInterval: - type: integer - nrofRIMRSReportInfo: - type: integer - maxPropagationDelay: - type: integer - rimRSReportInfoList: - type: array - items: - $ref: '#/components/schemas/RimRSReportInfo' - TceMappingInfo: - type: object - properties: - TceIPAddress: - oneOf: - - $ref: 'genericNrm.yaml#/components/schemas/Ipv4Addr' - - $ref: 'genericNrm.yaml#/components/schemas/Ipv6Addr' - TceID: - type: integer - PlmnTarget: - $ref: '#/components/schemas/PlmnId' - TceMappingInfoList: - type: array - items: - $ref: '#/components/schemas/TceMappingInfo' - -#-------- Definition of abstract IOCs -------------------------------------------- - - RrmPolicy_-Attr: - type: object - properties: - resourceType: - type: string - rRMPolicyMemberList: - $ref: '#/components/schemas/RrmPolicyMemberList' - - -#-------- Definition of concrete IOCs -------------------------------------------- - - SubNetwork-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - $ref: 'genericNrm.yaml#/components/schemas/SubNetwork-Attr' - - $ref: 'genericNrm.yaml#/components/schemas/SubNetwork-ncO' - - type: object - properties: - SubNetwork: - $ref: '#/components/schemas/SubNetwork-Multiple' - ManagedElement: - $ref: '#/components/schemas/ManagedElement-Multiple' - NRFrequency: - $ref: '#/components/schemas/NRFrequency-Multiple' - ExternalGnbCuCpFunction: - $ref: '#/components/schemas/ExternalGnbCuCpFunction-Multiple' - ExternalENBFunction: - $ref: '#/components/schemas/ExternalENBFunction-Multiple' - EUtranFrequency: - $ref: '#/components/schemas/EUtranFrequency-Multiple' - DESManagementFunction: - $ref: '#/components/schemas/DESManagementFunction-Single' - DRACHOptimizationFunction: - $ref: '#/components/schemas/DRACHOptimizationFunction-Single' - DMROFunction: - $ref: '#/components/schemas/DMROFunction-Single' - DPCIConfigurationFunction: - $ref: '#/components/schemas/DPCIConfigurationFunction-Single' - CPCIConfigurationFunction: - $ref: '#/components/schemas/CPCIConfigurationFunction-Single' - CESManagementFunction: - $ref: '#/components/schemas/CESManagementFunction-Single' - Configurable5QISet: - $ref: '5gcNrm.yaml#/components/schemas/Configurable5QISet-Multiple' - RimRSGlobal: - $ref: '#/components/schemas/RimRSGlobal-Single' - Dynamic5QISet: - $ref: '5gcNrm.yaml#/components/schemas/Dynamic5QISet-Multiple' - - ManagedElement-Single: - allOf: - - $ref: 'genericNRM.yaml#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - $ref: 'genericNRM.yaml#/components/schemas/ManagedElement-Attr' - - $ref: 'genericNRM.yaml#/components/schemas/ManagedElement-ncO' - - type: object - properties: - GnbDuFunction: - $ref: '#/components/schemas/GnbDuFunction-Multiple' - GnbCuUpFunction: - $ref: '#/components/schemas/GnbCuUpFunction-Multiple' - GnbCuCpFunction: - $ref: '#/components/schemas/GnbCuCpFunction-Multiple' - DESManagementFunction: - $ref: '#/components/schemas/DESManagementFunction-Single' - DRACHOptimizationFunction: - $ref: '#/components/schemas/DRACHOptimizationFunction-Single' - DMROFunction: - $ref: '#/components/schemas/DMROFunction-Single' - DPCIConfigurationFunction: - $ref: '#/components/schemas/DPCIConfigurationFunction-Single' - CPCIConfigurationFunction: - $ref: '#/components/schemas/CPCIConfigurationFunction-Single' - CESManagementFunction: - $ref: '#/components/schemas/CESManagementFunction-Single' - Configurable5QISet: - $ref: '5gcNrm.yaml#/components/schemas/Configurable5QISet-Multiple' - Dynamic5QISet: - $ref: '5gcNrm.yaml#/components/schemas/Dynamic5QISet-Multiple' - - GnbDuFunction-Single: - allOf: - - $ref: 'genericNRM.yaml#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNRM.yaml#/components/schemas/ManagedFunction-Attr' - - type: object - properties: - gnbDuId: - $ref: '#/components/schemas/GnbDuId' - gnbDuName: - $ref: '#/components/schemas/GnbName' - gnbId: - $ref: '#/components/schemas/GnbId' - gnbIdLength: - $ref: '#/components/schemas/GnbIdLength' - rimRSReportConf: - $ref: '#/components/schemas/RimRSReportConf' - - $ref: 'genericNRM.yaml#/components/schemas/ManagedFunction-ncO' - - type: object - properties: - RRMPolicyRatio: - $ref: '#/components/schemas/RRMPolicyRatio-Multiple' - NrCellDu: - $ref: '#/components/schemas/NrCellDu-Multiple' - Bwp-Multiple: - $ref: '#/components/schemas/Bwp-Multiple' - NrSectorCarrier-Multiple: - $ref: '#/components/schemas/NrSectorCarrier-Multiple' - EP_F1C: - $ref: '#/components/schemas/EP_F1C-Single' - EP_F1U: - $ref: '#/components/schemas/EP_F1U-Multiple' - GnbCuUpFunction-Single: - allOf: - - $ref: 'genericNRM.yaml#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNRM.yaml#/components/schemas/ManagedFunction-Attr' - - type: object - properties: - gnbId: - $ref: '#/components/schemas/GnbId' - gnbIdLength: - $ref: '#/components/schemas/GnbIdLength' - gnbCuUpId: - $ref: '#/components/schemas/GnbCuUpId' - plmnInfoList: - $ref: '#/components/schemas/PlmnInfoList' - configurable5QISetRef: - $ref: 'genericNRM.yaml#/components/schemas/Dn' - dynamic5QISetRef: - $ref: 'genericNRM.yaml#/components/schemas/Dn' - - $ref: 'genericNRM.yaml#/components/schemas/ManagedFunction-ncO' - - type: object - properties: - RRMPolicyRatio: - $ref: '#/components/schemas/RRMPolicyRatio-Multiple' - EP_E1: - $ref: '#/components/schemas/EP_E1-Single' - EP_XnU: - $ref: '#/components/schemas/EP_XnU-Multiple' - EP_F1U: - $ref: '#/components/schemas/EP_F1U-Multiple' - EP_NgU: - $ref: '#/components/schemas/EP_NgU-Multiple' - EP_X2U: - $ref: '#/components/schemas/EP_X2U-Multiple' - EP_S1U: - $ref: '#/components/schemas/EP_S1U-Multiple' - GnbCuCpFunction-Single: - allOf: - - $ref: 'genericNRM.yaml#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNRM.yaml#/components/schemas/ManagedFunction-Attr' - - type: object - properties: - gnbId: - $ref: '#/components/schemas/GnbId' - gnbIdLength: - $ref: '#/components/schemas/GnbIdLength' - gnbCuName: - $ref: '#/components/schemas/GnbName' - plmnId: - $ref: '#/components/schemas/PlmnId' - x2BlackList: - $ref: '#/components/schemas/GGnbIdList' - xnBlackList: - $ref: '#/components/schemas/GGnbIdList' - x2WhiteList: - $ref: '#/components/schemas/GGnbIdList' - xnWhiteList: - $ref: '#/components/schemas/GGnbIdList' - xnHOBlackList: - $ref: '#/components/schemas/GGnbIdList' - x2HOBlackList: - $ref: '#/components/schemas/GEnbIdList' - mappingSetIDBackhaulAddress: - $ref: '#/components/schemas/MappingSetIDBackhaulAddress' - tceMappingInfoList: - $ref: '#/components/schemas/TceMappingInfoList' - configurable5QISetRef: - $ref: 'genericNRM.yaml#/components/schemas/Dn' - dynamic5QISetRef: - $ref: 'genericNRM.yaml#/components/schemas/Dn' - - $ref: 'genericNRM.yaml#/components/schemas/ManagedFunction-ncO' - - type: object - properties: - RRMPolicyRatio: - $ref: '#/components/schemas/RRMPolicyRatio-Multiple' - NrCellCu: - $ref: '#/components/schemas/NrCellCu-Multiple' - EP_XnC: - $ref: '#/components/schemas/EP_XnC-Multiple' - EP_E1: - $ref: '#/components/schemas/EP_E1-Multiple' - EP_F1C: - $ref: '#/components/schemas/EP_F1C-Multiple' - EP_NgC: - $ref: '#/components/schemas/EP_NgC-Multiple' - EP_X2C: - $ref: '#/components/schemas/EP_X2C-Multiple' - DANRManagementFunction: - $ref: '#/components/schemas/DANRManagementFunction-Single' - DESManagementFunction: - $ref: '#/components/schemas/DESManagementFunction-Single' - DRACHOptimizationFunction: - $ref: '#/components/schemas/DRACHOptimizationFunction-Single' - DMROFunction: - $ref: '#/components/schemas/DMROFunction-Single' - - NrCellCu-Single: - allOf: - - $ref: 'genericNRM.yaml#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNRM.yaml#/components/schemas/ManagedFunction-Attr' - - type: object - properties: - cellLocalId: - type: integer - plmnInfoList: - $ref: '#/components/schemas/PlmnInfoList' - nRFrequencyRef: - $ref: 'genericNRM.yaml#/components/schemas/Dn' - - $ref: 'genericNRM.yaml#/components/schemas/ManagedFunction-ncO' - - type: object - properties: - RRMPolicyRatio: - $ref: '#/components/schemas/RRMPolicyRatio-Multiple' - NRCellRelation: - $ref: '#/components/schemas/NRCellRelation-Multiple' - EUtranCellRelation: - $ref: '#/components/schemas/EUtranCellRelation-Multiple' - NRFreqRelation: - $ref: '#/components/schemas/NRFreqRelation-Multiple' - EUtranFreqRelation: - $ref: '#/components/schemas/EUtranFreqRelation-Multiple' - DESManagementFunction: - $ref: '#/components/schemas/DESManagementFunction-Single' - DRACHOptimizationFunction: - $ref: '#/components/schemas/DRACHOptimizationFunction-Single' - DMROFunction: - $ref: '#/components/schemas/DMROFunction-Single' - CESManagementFunction: - $ref: '#/components/schemas/CESManagementFunction-Single' - - NrCellDu-Single: - allOf: - - $ref: 'genericNRM.yaml#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNRM.yaml#/components/schemas/ManagedFunction-Attr' - - type: object - properties: - administrativeState: - $ref: 'genericNRM.yaml#/components/schemas/AdministrativeState' - operationalState: - $ref: 'genericNRM.yaml#/components/schemas/OperationalState' - cellLocalId: - type: integer - cellState: - $ref: '#/components/schemas/CellState' - plmnInfoList: - $ref: '#/components/schemas/PlmnInfoList' - nrPci: - $ref: '#/components/schemas/NrPci' - nrTac: - $ref: '#/components/schemas/NrTac' - arfcnDL: - type: integer - arfcnUL: - type: integer - arfcnSUL: - type: integer - bSChannelBwDL: - type: integer - bSChannelBwUL: - type: integer - bSChannelBwSUL: - type: integer - ssbFrequency: - type: integer - minimum: 0 - maximum: 3279165 - ssbPeriodicity: - $ref: '#/components/schemas/SsbPeriodicity' - ssbSubCarrierSpacing: - $ref: '#/components/schemas/SsbSubCarrierSpacing' - ssbOffset: - type: integer - minimum: 0 - maximum: 159 - ssbDuration: - $ref: '#/components/schemas/SsbDuration' - nrSectorCarrierRef: - type: array - items: - $ref: 'genericNRM.yaml#/components/schemas/Dn' - bwpRef: - type: array - items: - $ref: 'genericNRM.yaml#/components/schemas/Dn' - nRFrequencyRef: - $ref: 'genericNRM.yaml#/components/schemas/Dn' - victimSetRef: - $ref: 'genericNRM.yaml#/components/schemas/Dn' - aggressorSetRef: - $ref: 'genericNRM.yaml#/components/schemas/Dn' - - $ref: 'genericNRM.yaml#/components/schemas/ManagedFunction-ncO' - - type: object - properties: - RRMPolicyRatio: - $ref: '#/components/schemas/RRMPolicyRatio-Multiple' - DPCIConfigurationFunction: - $ref: '#/components/schemas/DPCIConfigurationFunction-Single' - CPCIConfigurationFunction: - $ref: '#/components/schemas/CPCIConfigurationFunction-Single' - - NRFrequency-Single: - allOf: - - $ref: 'genericNRM.yaml#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - type: object - properties: - absoluteFrequencySSB: - type: integer - minimum: 0 - maximum: 3279165 - ssbSubCarrierSpacing: - $ref: '#/components/schemas/SsbSubCarrierSpacing' - multiFrequencyBandListNR: - type: integer - minimum: 1 - maximum: 256 - EUtranFrequency-Single: - allOf: - - $ref: 'genericNRM.yaml#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - type: object - properties: - earfcnDL: - type: integer - minimum: 0 - maximum: 262143 - multiBandInfoListEutra: - type: integer - minimum: 1 - maximum: 256 - - NrSectorCarrier-Single: - allOf: - - $ref: 'genericNRM.yaml#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNRM.yaml#/components/schemas/ManagedFunction-Attr' - - type: object - properties: - txDirection: - $ref: '#/components/schemas/TxDirection' - configuredMaxTxPower: - type: integer - arfcnDL: - type: integer - arfcnUL: - type: integer - bSChannelBwDL: - type: integer - bSChannelBwUL: - type: integer - sectorEquipmentFunctionRef: - $ref: 'genericNRM.yaml#/components/schemas/Dn' - - $ref: 'genericNRM.yaml#/components/schemas/ManagedFunction-ncO' - - type: object - properties: - CommonBeamformingFunction: - $ref: '#/components/schemas/CommonBeamformingFunction-Single' - Bwp-Single: - allOf: - - $ref: 'genericNRM.yaml#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNRM.yaml#/components/schemas/ManagedFunction-Attr' - - type: object - properties: - bwpContext: - $ref: '#/components/schemas/BwpContext' - isInitialBwp: - $ref: '#/components/schemas/IsInitialBwp' - subCarrierSpacing: - type: integer - cyclicPrefix: - $ref: '#/components/schemas/CyclicPrefix' - startRB: - type: integer - numberOfRBs: - type: integer - - $ref: 'genericNRM.yaml#/components/schemas/ManagedFunction-ncO' - CommonBeamformingFunction-Single: - allOf: - - $ref: 'genericNRM.yaml#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - allOf: - - type: object - properties: - coverageShape: - $ref: '#/components/schemas/CoverageShape' - digitalAzimuth: - $ref: '#/components/schemas/DigitalAzimuth' - digitalTilt: - $ref: '#/components/schemas/DigitalTilt' - - type: object - properties: - Beam: - $ref: '#/components/schemas/Beam-Multiple' - Beam-Single: - allOf: - - $ref: 'genericNRM.yaml#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - allOf: - - type: object - properties: - beamIndex: - type: integer - beamType: - type: string - enum: - - SSB-BEAM - beamAzimuth: - type: integer - minimum: -1800 - maximum: 1800 - beamTilt: - type: integer - minimum: -900 - maximum: 900 - beamHorizWidth: - type: integer - minimum: 0 - maximum: 3599 - beamVertWidth: - type: integer - minimum: 0 - maximum: 1800 - RRMPolicyRatio-Single: - allOf: - - $ref: 'genericNRM.yaml#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - allOf: - - $ref: '#/components/schemas/RrmPolicy_-Attr' - - type: object - properties: - rRMPolicyMaxRatio: - type: integer - rRMPolicyMinRatio: - type: integer - rRMPolicyDedicatedRatio: - type: integer - - NRCellRelation-Single: - allOf: - - $ref: 'genericNRM.yaml#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - type: object - properties: - nRTCI: - type: integer - cellIndividualOffset: - $ref: '#/components/schemas/CellIndividualOffset' - adjacentNRCellRef: - $ref: 'genericNRM.yaml#/components/schemas/Dn' - nRFrequencyRef: - $ref: 'genericNRM.yaml#/components/schemas/Dn' - isRemoveAllowed: - type: boolean - isHOAllowed: - type: boolean - isESCoveredBy: - $ref: '#/components/schemas/IsESCoveredBy' - isENDCAllowed: - type: boolean - isMLBAllowed: - type: boolean - EUtranCellRelation-Single: - allOf: - - $ref: 'genericNRM.yaml#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNRM.yaml#/components/schemas/ManagedFunction-Attr' - - type: object - properties: - adjacentEUtranCellRef: - $ref: 'genericNRM.yaml#/components/schemas/Dn' - - $ref: 'genericNRM.yaml#/components/schemas/ManagedFunction-ncO' - NRFreqRelation-Single: - allOf: - - $ref: 'genericNRM.yaml#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - type: object - properties: - offsetMO: - $ref: '#/components/schemas/QOffsetRangeList' - blackListEntry: - type: array - items: - type: integer - minimum: 0 - maximum: 1007 - blackListEntryIdleMode: - type: integer - cellReselectionPriority: - type: integer - cellReselectionSubPriority: - type: number - minimum: 0.2 - maximum: 0.8 - multipleOf: 0.2 - pMax: - type: integer - minimum: -30 - maximum: 33 - qOffsetFreq: - $ref: '#/components/schemas/QOffsetFreq' - qQualMin: - type: number - qRxLevMin: - type: integer - minimum: -140 - maximum: -44 - threshXHighP: - type: integer - minimum: 0 - maximum: 62 - threshXHighQ: - type: integer - minimum: 0 - maximum: 31 - threshXLowP: - type: integer - minimum: 0 - maximum: 62 - threshXLowQ: - type: integer - minimum: 0 - maximum: 31 - tReselectionNr: - type: integer - minimum: 0 - maximum: 7 - tReselectionNRSfHigh: - $ref: '#/components/schemas/TReselectionNRSf' - tReselectionNRSfMedium: - $ref: '#/components/schemas/TReselectionNRSf' - nRFrequencyRef: - $ref: 'genericNRM.yaml#/components/schemas/Dn' - EUtranFreqRelation-Single: - allOf: - - $ref: 'genericNRM.yaml#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - type: object - properties: - cellIndividualOffset: - $ref: '#/components/schemas/CellIndividualOffset' - blackListEntry: - type: array - items: - type: integer - minimum: 0 - maximum: 1007 - blackListEntryIdleMode: - type: integer - cellReselectionPriority: - type: integer - cellReselectionSubPriority: - type: number - minimum: 0.2 - maximum: 0.8 - multipleOf: 0.2 - pMax: - type: integer - minimum: -30 - maximum: 33 - qOffsetFreq: - $ref: '#/components/schemas/QOffsetFreq' - qQualMin: - type: number - qRxLevMin: - type: integer - minimum: -140 - maximum: -44 - threshXHighP: - type: integer - minimum: 0 - maximum: 62 - threshXHighQ: - type: integer - minimum: 0 - maximum: 31 - threshXLowP: - type: integer - minimum: 0 - maximum: 62 - threshXLowQ: - type: integer - minimum: 0 - maximum: 31 - tReselectionEutran: - type: integer - minimum: 0 - maximum: 7 - tReselectionNRSfHigh: - $ref: '#/components/schemas/TReselectionNRSf' - tReselectionNRSfMedium: - $ref: '#/components/schemas/TReselectionNRSf' - eUTranFrequencyRef: - $ref: 'genericNRM.yaml#/components/schemas/Dn' - DANRManagementFunction-Single: - allOf: - - $ref: 'genericNRM.yaml#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - type: object - properties: - intrasystemANRManagementSwitch: - type: boolean - intersystemANRManagementSwitch: - type: boolean - - DESManagementFunction-Single: - allOf: - - $ref: 'genericNRM.yaml#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - type: object - properties: - desSwitch: - type: boolean - intraRatEsActivationOriginalCellLoadParameters: - $ref: "#/components/schemas/IntraRatEsActivationOriginalCellLoadParameters" - intraRatEsActivationCandidateCellsLoadParameters: - $ref: "#/components/schemas/IntraRatEsActivationCandidateCellsLoadParameters" - intraRatEsDeactivationCandidateCellsLoadParameters: - $ref: "#/components/schemas/IntraRatEsDeactivationCandidateCellsLoadParameters" - esNotAllowedTimePeriod: - $ref: "#/components/schemas/EsNotAllowedTimePeriod" - interRatEsActivationOriginalCellParameters: - $ref: "#/components/schemas/IntraRatEsActivationOriginalCellLoadParameters" - interRatEsActivationCandidateCellParameters: - $ref: "#/components/schemas/IntraRatEsActivationOriginalCellLoadParameters" - interRatEsDeactivationCandidateCellParameters: - $ref: "#/components/schemas/IntraRatEsActivationOriginalCellLoadParameters" - isProbingCapable: - type: string - enum: - - yes - - no - energySavingState: - type: string - enum: - - isNotEnergySaving - - isEnergySaving - - DRACHOptimizationFunction-Single: - allOf: - - $ref: 'genericNRM.yaml#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - type: object - properties: - drachOptimizationControl: - type: boolean - ueAccProbilityDistPerSSB: - $ref: "#/components/schemas/UeAccProbilityDistPerSSB" - ueAccDelayProbilityDistPerSSB: - $ref: "#/components/schemas/UeAccDelayProbilityDistPerSSB" - - $ref: 'genericNRM.yaml#/components/schemas/ManagedFunction-ncO' - - DMROFunction-Single: - allOf: - - $ref: 'genericNRM.yaml#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - type: object - properties: - dmroControl: - type: boolean - maximumDeviationHoTrigger: - $ref: '#/components/schemas/MaximumDeviationHoTrigger' - minimumTimeBetweenHoTriggerChange: - $ref: '#/components/schemas/MinimumTimeBetweenHoTriggerChange' - tstoreUEcntxt: - $ref: '#/components/schemas/TstoreUEcntxt' - - DPCIConfigurationFunction-Single: - allOf: - - $ref: 'genericNRM.yaml#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - type: object - properties: - dPciConfigurationControl: - type: boolean - nRPciList: - $ref: "#/components/schemas/NRPciList" - - CPCIConfigurationFunction-Single: - allOf: - - $ref: 'genericNRM.yaml#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - type: object - properties: - cPciConfigurationControl: - type: boolean - cSonPciList: - $ref: "#/components/schemas/CSonPciList" - - CESManagementFunction-Single: - allOf: - - $ref: 'genericNRM.yaml#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - type: object - properties: - cesSwitch: - type: boolean - energySavingControl: - type: string - enum: - - toBeEnergySaving - - toBeNotEnergySaving - energySavingState: - type: string - enum: - - isNotEnergySaving - - isEnergySaving - - RimRSGlobal-Single: - allOf: - - $ref: 'genericNRM.yaml#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - type: object - properties: - frequencyDomainPara: - $ref: '#/components/schemas/FrequencyDomainPara' - sequenceDomainPara: - $ref: '#/components/schemas/SequenceDomainPara' - timeDomainPara: - $ref: '#/components/schemas/TimeDomainPara' - RimRSSet: - $ref: '#/components/schemas/RimRSSet-Multiple' - - RimRSSet-Single: - allOf: - - $ref: 'genericNRM.yaml#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - type: object - properties: - setId: - $ref: '#/components/schemas/RSSetId' - setType: - $ref: '#/components/schemas/RSSetType' - rimRSMonitoringStartTime: - type: string - rimRSMonitoringStopTime: - type: string - rimRSMonitoringWindowDuration: - type: integer - rimRSMonitoringWindowStartingOffset: - type: integer - rimRSMonitoringWindowPeriodicity: - type: integer - rimRSMonitoringOccasionInterval: - type: integer - rimRSMonitoringOccasionStartingOffset: - type: integer - nRCellDURefs: - $ref: 'genericNRM.yaml#/components/schemas/DnList' - - ExternalGnbDuFunction-Single: - allOf: - - $ref: 'genericNRM.yaml#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNRM.yaml#/components/schemas/ManagedFunction-Attr' - - type: object - properties: - gnbId: - $ref: '#/components/schemas/GnbId' - gnbIdLength: - $ref: '#/components/schemas/GnbIdLength' - - $ref: 'genericNRM.yaml#/components/schemas/ManagedFunction-ncO' - - type: object - properties: - EP_F1C: - $ref: '#/components/schemas/EP_F1C-Multiple' - EP_F1U: - $ref: '#/components/schemas/EP_F1U-Multiple' - ExternalGnbCuUpFunction-Single: - allOf: - - $ref: 'genericNRM.yaml#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNRM.yaml#/components/schemas/ManagedFunction-Attr' - - type: object - properties: - gnbId: - $ref: '#/components/schemas/GnbId' - gnbIdLength: - $ref: '#/components/schemas/GnbIdLength' - - $ref: 'genericNRM.yaml#/components/schemas/ManagedFunction-ncO' - - type: object - properties: - EP_E1: - $ref: '#/components/schemas/EP_E1-Multiple' - EP_F1U: - $ref: '#/components/schemas/EP_F1U-Multiple' - EP_XnU: - $ref: '#/components/schemas/EP_XnU-Multiple' - ExternalGnbCuCpFunction-Single: - allOf: - - $ref: 'genericNRM.yaml#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - allOf: - - $ref: >- - genericNRM.yaml#/components/schemas/ManagedFunction-Attr - - type: object - properties: - gnbId: - $ref: '#/components/schemas/GnbId' - gnbIdLength: - $ref: '#/components/schemas/GnbIdLength' - plmnId: - $ref: '#/components/schemas/PlmnId' - - $ref: 'genericNRM.yaml#/components/schemas/ManagedFunction-ncO' - - type: object - properties: - ExternalNrCellCu: - $ref: '#/components/schemas/ExternalNrCellCu-Multiple' - EP_XnC: - $ref: '#/components/schemas/EP_XnC-Multiple' - EP_E1: - $ref: '#/components/schemas/EP_E1-Multiple' - EP_F1C: - $ref: '#/components/schemas/EP_F1C-Multiple' - ExternalNrCellCu-Single: - allOf: - - $ref: 'genericNRM.yaml#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNRM.yaml#/components/schemas/ManagedFunction-Attr' - - type: object - properties: - cellLocalId: - type: integer - nrPci: - $ref: '#/components/schemas/NrPci' - plmnIdList: - $ref: '#/components/schemas/PlmnIdList' - nRFrequencyRef: - $ref: 'genericNRM.yaml#/components/schemas/Dn' - - $ref: 'genericNRM.yaml#/components/schemas/ManagedFunction-ncO' - ExternalENBFunction-Single: - allOf: - - $ref: 'genericNRM.yaml#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNRM.yaml#/components/schemas/ManagedFunction-Attr' - - type: object - properties: - eNBId: - type: integer - - $ref: 'genericNRM.yaml#/components/schemas/ManagedFunction-ncO' - - type: object - properties: - ExternalEUTranCell: - $ref: '#/components/schemas/ExternalEUTranCell-Multiple' - ExternalEUTranCell-Single: - allOf: - - $ref: 'genericNRM.yaml#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNRM.yaml#/components/schemas/ManagedFunction-Attr' - - type: object - properties: - EUtranFrequencyRef: - $ref: 'genericNRM.yaml#/components/schemas/Dn' - - $ref: 'genericNRM.yaml#/components/schemas/ManagedFunction-ncO' - - EP_XnC-Single: - allOf: - - $ref: 'genericNRM.yaml#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNRM.yaml#/components/schemas/EP_RP-Attr' - - type: object - properties: - localAddress: - $ref: '#/components/schemas/LocalAddress' - remoteAddress: - $ref: '#/components/schemas/RemoteAddress' - EP_E1-Single: - allOf: - - $ref: 'genericNRM.yaml#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNRM.yaml#/components/schemas/EP_RP-Attr' - - type: object - properties: - localAddress: - $ref: '#/components/schemas/LocalAddress' - remoteAddress: - $ref: '#/components/schemas/RemoteAddress' - EP_F1C-Single: - allOf: - - $ref: 'genericNRM.yaml#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNRM.yaml#/components/schemas/EP_RP-Attr' - - type: object - properties: - localAddress: - $ref: '#/components/schemas/LocalAddress' - remoteAddress: - $ref: '#/components/schemas/RemoteAddress' - EP_NgC-Single: - allOf: - - $ref: 'genericNRM.yaml#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNRM.yaml#/components/schemas/EP_RP-Attr' - - type: object - properties: - localAddress: - $ref: '#/components/schemas/LocalAddress' - remoteAddress: - $ref: '#/components/schemas/RemoteAddress' - EP_X2C-Single: - allOf: - - $ref: 'genericNRM.yaml#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNRM.yaml#/components/schemas/EP_RP-Attr' - - type: object - properties: - localAddress: - $ref: '#/components/schemas/LocalAddress' - remoteAddress: - $ref: '#/components/schemas/RemoteAddress' - EP_XnU-Single: - allOf: - - $ref: 'genericNRM.yaml#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNRM.yaml#/components/schemas/EP_RP-Attr' - - type: object - properties: - localAddress: - $ref: '#/components/schemas/LocalAddress' - remoteAddress: - $ref: '#/components/schemas/RemoteAddress' - EP_F1U-Single: - allOf: - - $ref: 'genericNRM.yaml#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNRM.yaml#/components/schemas/EP_RP-Attr' - - type: object - properties: - localAddress: - $ref: '#/components/schemas/LocalAddress' - remoteAddress: - $ref: '#/components/schemas/RemoteAddress' - EP_NgU-Single: - allOf: - - $ref: 'genericNRM.yaml#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNRM.yaml#/components/schemas/EP_RP-Attr' - - type: object - properties: - localAddress: - $ref: '#/components/schemas/LocalAddress' - remoteAddress: - $ref: '#/components/schemas/RemoteAddress' - epTransportRefs: - $ref: 'genericNrm.yaml#/components/schemas/DnList' - EP_X2U-Single: - allOf: - - $ref: 'genericNRM.yaml#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNRM.yaml#/components/schemas/EP_RP-Attr' - - type: object - properties: - localAddress: - $ref: '#/components/schemas/LocalAddress' - remoteAddress: - $ref: '#/components/schemas/RemoteAddress' - EP_S1U-Single: - allOf: - - $ref: 'genericNRM.yaml#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNRM.yaml#/components/schemas/EP_RP-Attr' - - type: object - properties: - localAddress: - $ref: '#/components/schemas/LocalAddress' - remoteAddress: - $ref: '#/components/schemas/RemoteAddress' - -#-------- Definition of JSON arrays for name-contained IOCs ---------------------- - - SubNetwork-Multiple: - type: array - items: - $ref: '#/components/schemas/SubNetwork-Single' - ManagedElement-Multiple: - type: array - items: - $ref: '#/components/schemas/ManagedElement-Single' - GnbDuFunction-Multiple: - type: array - items: - $ref: '#/components/schemas/GnbDuFunction-Single' - GnbCuUpFunction-Multiple: - type: array - items: - $ref: '#/components/schemas/GnbCuUpFunction-Single' - GnbCuCpFunction-Multiple: - type: array - items: - $ref: '#/components/schemas/GnbCuCpFunction-Single' - - NrCellDu-Multiple: - type: array - items: - $ref: '#/components/schemas/NrCellDu-Single' - NrCellCu-Multiple: - type: array - items: - $ref: '#/components/schemas/NrCellCu-Single' - - NRFrequency-Multiple: - type: array - minItems: 1 - items: - $ref: '#/components/schemas/NRFrequency-Single' - EUtranFrequency-Multiple: - type: array - minItems: 1 - items: - $ref: '#/components/schemas/EUtranFrequency-Single' - - NrSectorCarrier-Multiple: - type: array - items: - $ref: '#/components/schemas/NrSectorCarrier-Single' - Bwp-Multiple: - type: array - items: - $ref: '#/components/schemas/Bwp-Single' - Beam-Multiple: - type: array - items: - $ref: '#/components/schemas/Beam-Single' - RRMPolicyRatio-Multiple: - type: array - items: - $ref: '#/components/schemas/RRMPolicyRatio-Single' - - NRCellRelation-Multiple: - type: array - items: - $ref: '#/components/schemas/NRCellRelation-Single' - EUtranCellRelation-Multiple: - type: array - items: - $ref: '#/components/schemas/EUtranCellRelation-Single' - NRFreqRelation-Multiple: - type: array - items: - $ref: '#/components/schemas/NRFreqRelation-Single' - EUtranFreqRelation-Multiple: - type: array - items: - $ref: '#/components/schemas/EUtranFreqRelation-Single' - - RimRSSet-Multiple: - type: array - items: - $ref: '#/components/schemas/RimRSSet-Single' - - ExternalGnbDuFunction-Multiple: - type: array - items: - $ref: '#/components/schemas/ExternalGnbDuFunction-Single' - ExternalGnbCuUpFunction-Multiple: - type: array - items: - $ref: '#/components/schemas/ExternalGnbCuUpFunction-Single' - ExternalGnbCuCpFunction-Multiple: - type: array - items: - $ref: '#/components/schemas/ExternalGnbCuCpFunction-Single' - ExternalNrCellCu-Multiple: - type: array - items: - $ref: '#/components/schemas/ExternalNrCellCu-Single' - - ExternalENBFunction-Multiple: - type: array - items: - $ref: '#/components/schemas/ExternalENBFunction-Single' - ExternalEUTranCell-Multiple: - type: array - items: - $ref: '#/components/schemas/ExternalEUTranCell-Single' - - EP_E1-Multiple: - type: array - items: - $ref: '#/components/schemas/EP_E1-Single' - EP_XnC-Multiple: - type: array - items: - $ref: '#/components/schemas/EP_XnC-Single' - EP_F1C-Multiple: - type: array - items: - $ref: '#/components/schemas/EP_F1C-Single' - EP_NgC-Multiple: - type: array - items: - $ref: '#/components/schemas/EP_NgC-Single' - EP_X2C-Multiple: - type: array - items: - $ref: '#/components/schemas/EP_X2C-Single' - EP_XnU-Multiple: - type: array - items: - $ref: '#/components/schemas/EP_XnU-Single' - EP_F1U-Multiple: - type: array - items: - $ref: '#/components/schemas/EP_F1U-Single' - EP_NgU-Multiple: - type: array - items: - $ref: '#/components/schemas/EP_NgU-Single' - EP_X2U-Multiple: - type: array - items: - $ref: '#/components/schemas/EP_X2U-Single' - EP_S1U-Multiple: - type: array - items: - $ref: '#/components/schemas/EP_S1U-Single' - -#-------- Definitions in TS 28.541 for TS 28.532 --------------------------------- - - resources-nrNrm: - oneOf: - - $ref: '#/components/schemas/SubNetwork-Single' - - $ref: '#/components/schemas/ManagedElement-Single' - - - $ref: '#/components/schemas/GnbDuFunction-Single' - - $ref: '#/components/schemas/GnbCuUpFunction-Single' - - $ref: '#/components/schemas/GnbCuCpFunction-Single' - - - $ref: '#/components/schemas/NrCellCu-Single' - - $ref: '#/components/schemas/NrCellDu-Single' - - - $ref: '#/components/schemas/NRFrequency-Single' - - $ref: '#/components/schemas/EUtranFrequency-Single' - - - $ref: '#/components/schemas/NrSectorCarrier-Single' - - $ref: '#/components/schemas/Bwp-Single' - - $ref: '#/components/schemas/CommonBeamformingFunction-Single' - - $ref: '#/components/schemas/Beam-Single' - - $ref: '#/components/schemas/RRMPolicyRatio-Single' - - - $ref: '#/components/schemas/NRCellRelation-Single' - - $ref: '#/components/schemas/EUtranCellRelation-Single' - - $ref: '#/components/schemas/NRFreqRelation-Single' - - $ref: '#/components/schemas/EUtranFreqRelation-Single' - - - $ref: '#/components/schemas/DANRManagementFunction-Single' - - $ref: '#/components/schemas/DESManagementFunction-Single' - - $ref: '#/components/schemas/DRACHOptimizationFunction-Single' - - $ref: '#/components/schemas/DMROFunction-Single' - - $ref: '#/components/schemas/DPCIConfigurationFunction-Single' - - $ref: '#/components/schemas/CPCIConfigurationFunction-Single' - - $ref: '#/components/schemas/CESManagementFunction-Single' - - - $ref: '#/components/schemas/RimRSGlobal-Single' - - $ref: '#/components/schemas/RimRSSet-Single' - - - $ref: '#/components/schemas/ExternalGnbDuFunction-Single' - - $ref: '#/components/schemas/ExternalGnbCuUpFunction-Single' - - $ref: '#/components/schemas/ExternalGnbCuCpFunction-Single' - - $ref: '#/components/schemas/ExternalNrCellCu-Single' - - $ref: '#/components/schemas/ExternalENBFunction-Single' - - $ref: '#/components/schemas/ExternalEUTranCell-Single' - - - $ref: '#/components/schemas/EP_XnC-Single' - - $ref: '#/components/schemas/EP_E1-Single' - - $ref: '#/components/schemas/EP_F1C-Single' - - $ref: '#/components/schemas/EP_NgC-Single' - - $ref: '#/components/schemas/EP_X2C-Single' - - $ref: '#/components/schemas/EP_XnU-Single' - - $ref: '#/components/schemas/EP_F1U-Single' - - $ref: '#/components/schemas/EP_NgU-Single' - - $ref: '#/components/schemas/EP_X2U-Single' - - $ref: '#/components/schemas/EP_S1U-Single' diff --git a/OpenAPI/provMnS.yaml b/OpenAPI/provMnS.yaml deleted file mode 100644 index b2f84a4d2..000000000 --- a/OpenAPI/provMnS.yaml +++ /dev/null @@ -1,579 +0,0 @@ -openapi: 3.0.1 -info: - title: Provisioning MnS - version: 16.4.0 - description: >- - OAS 3.0.1 definition of the Provisioning MnS - © 2020, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). - All rights reserved. -externalDocs: - description: 3GPP TS 28.532 V16.4.0; Generic management services - url: http://www.3gpp.org/ftp/Specs/archive/28_series/28.532/ -servers: - - url: 'http://{URI-DN-prefix}/{root}/ProvMnS/v1640/{LDN-first-part}' - variables: - URI-DN-prefix: - description: See subclause 4.4 of TS 32.158 - default: example.com - root: - description: See subclause 4.4 of TS 32.158 - default: 3GPPManagement - LDN-first-part: - description: See subclause 4.4 of TS 32.158 - default: '' -paths: - '/{className}={id}': - parameters: - - name: className - in: path - required: true - schema: - $ref: '#/components/schemas/className-PathType' - - name: id - in: path - required: true - schema: - $ref: '#/components/schemas/id-PathType' - put: - summary: Replaces a complete single resource or creates it if it does not exist - description: >- - With HTTP PUT a complete resource is replaced or created if it does not - exist. The target resource is identified by the target URI. - requestBody: - required: true - content: - application/json: - schema: - $ref: '#/components/schemas/resourcePut-RequestType' - responses: - '200': - description: >- - Success case ("200 OK"). - This status code shall be returned when the resource is replaced, and - when the replaced resource representation is not identical to the resource - representation in the request. - This status code may be retourned when the resource is updated and when the - updated resource representation is identical to the resource representation - in the request. - The representation of the updated resource is returned in the response - message body. - content: - application/json: - schema: - $ref: '#/components/schemas/resourceUpdate-ResponseType' - '201': - description: >- - Success case ("201 Created"). - This status code shall be returned when the resource is created. - The representation of the created resource is returned in the response - message body. - content: - application/json: - schema: - $ref: '#/components/schemas/resourceCreation-ResponseType' - '204': - description: >- - Success case ("204 No Content"). - This status code may be returned only when the replaced resource - representation is identical to the representation in the request. - The response has no message body. - default: - description: Error case. - content: - application/json: - schema: - $ref: '#/components/schemas/error-ResponseType' - callbacks: - notifyMOICreation: - '{request.body#/notificationRecipientAddress}': - post: - requestBody: - required: true - content: - application/json: - schema: - $ref: '#/components/schemas/notifyMOICreation-NotifType' - responses: - '204': - description: >- - Success case ("204 No Content"). - The notification is successfully delivered. The response - has no message body. - default: - description: Error case. - content: - application/json: - schema: - $ref: '#/components/schemas/error-ResponseType' - notifyMOIDeletion: - '{request.body#/notificationRecipientAddress}': - post: - requestBody: - required: true - content: - application/json: - schema: - $ref: '#/components/schemas/notifyMOIDeletion-NotifType' - responses: - '204': - description: >- - Success case ("204 No Content"). - The notification is successfully delivered. The response - has no message body. - default: - description: Error case. - content: - application/json: - schema: - $ref: '#/components/schemas/error-ResponseType' - notifyMOIAttributeValueChange: - '{request.body#/notificationRecipientAddress}': - post: - requestBody: - required: true - content: - application/json: - schema: - $ref: '#/components/schemas/notifyMOIAttributeValueChange-NotifType' - responses: - '204': - description: >- - Success case ("204 No Content"). - The notification is successfully delivered. The response - has no message body. - default: - description: Error case. - content: - application/json: - schema: - $ref: '#/components/schemas/error-ResponseType' - notifyMOIChanges: - '{request.body#/notificationRecipientAddress}': - post: - requestBody: - required: true - content: - application/json: - schema: - $ref: '#/components/schemas/notifyMOIChanges-NotifType' - responses: - '204': - description: >- - Success case ("204 No Content"). - The notification is successfully delivered. The response - has no message body. - default: - description: Error case. - content: - application/json: - schema: - $ref: '#/components/schemas/error-ResponseType' - get: - summary: Reads one or multiple resources - description: >- - With HTTP GET resources are read. The resources to be retrieved are - identified with the target URI. The attributes and fields parameter - of the query components allow to select the resource properties to be returned. - parameters: - - name: scope - in: query - description: >- - This parameter extends the set of targeted resources beyond the base - resource identified with the path component of the URI. No scoping - mechanism is specified in the present document. - required: false - schema: - $ref: '#/components/schemas/scope-QueryType' - style: form - explode: true - - name: filter - in: query - description: >- - This parameter reduces the targeted set of resources by applying a - filter to the scoped set of resource representations. Only resource - representations for which the filter construct evaluates to "true" - are targeted. No filter language is specified in the present - document. - required: false - schema: - $ref: '#/components/schemas/filter-QueryType' - - name: attributes - in: query - description: >- - This parameter specifies the attributes of the scoped resources that - are returned. - required: true - schema: - $ref: '#/components/schemas/attributes-QueryType' - style: form - explode: false - - name: fields - in: query - description: >- - This parameter specifies the attribute field of the scoped resources - that are returned. - required: false - schema: - $ref: '#/components/schemas/fields-QueryType' - style: form - explode: false - responses: - '200': - description: >- - Success case ("200 OK"). - The resources identified in the request for retrieval are returned - in the response message body. In case the attributes or fields query - parameters are used, only the selected attributes or sub-attributes are - returned. The response message body is constructed according to the - hierarchical response construction method (TS 32.158 [15]). - content: - application/json: - schema: - $ref: '#/components/schemas/resourceRetrieval-ResponseType' - default: - description: Error case. - content: - application/json: - schema: - $ref: '#/components/schemas/error-ResponseType' - patch: - summary: Patches one or multiple resources - description: >- - With HTTP PATCH resources are created, updated or deleted. The resources - to be modified are identified with the target URI (base resource) and - the patch document included in the request message body. - requestBody: - description: >- - The request body describes changes to be made to the target resources. - The following patch media types are available - - "application/merge-patch+json" (RFC 7396) - - "application/3gpp-merge-patch+json" (TS 32.158) - - "application/json-patch+json" (RFC 6902) - - "application/3gpp-json-patch+json" (TS 32.158) - required: true - content: - application/merge-patch+json: - schema: - $ref: '#/components/schemas/jsonMergePatch-RequestType' - application/3gpp-merge-patch+json: - schema: - $ref: '#/components/schemas/3gppJsonMergePatch-RequestType' - application/json-patch+json: - schema: - $ref: '#/components/schemas/jsonPatch-RequestType' - application/3gpp-json-patch+json: - schema: - $ref: '#/components/schemas/3gppJsonPatch-RequestType' - responses: - '200': - description: >- - Success case ("200 OK"). - This status code is returned when the updated the resource representations - shall be returned for some reason. - The resource representations are returned in the response message body. The - response message body is constructed according to the hierarchical response - construction method (TS 32.158 [15]) - content: - application/json: - schema: - $ref: '#/components/schemas/resourceUpdate-ResponseType' - '204': - description: >- - Success case ("204 No Content"). - This status code is returned when there is no need to return the updated - resource representations. - The response message body is empty. - default: - description: Error case. - content: - application/json: - schema: - $ref: '#/components/schemas/error-ResponseType' - delete: - summary: Deletes one or multiple resources - description: >- - With HTTP DELETE resources are deleted. The resources to be deleted are - identified with the target URI. - parameters: - - name: scope - in: query - description: >- - This parameter extends the set of targeted resources beyond the base - resource identified with the path component of the URI. No scoping - mechanism is specified in the present document. - required: false - schema: - $ref: '#/components/schemas/scope-QueryType' - - name: filter - in: query - description: >- - This parameter reduces the targeted set of resources by applying a - filter to the scoped set of resource representations. Only resources - representations for which the filter construct evaluates to "true" - are returned. No filter language is specified in the present - document. - required: false - schema: - $ref: '#/components/schemas/filter-QueryType' - responses: - '200': - description: >- - Success case ("200 OK"). - This status code shall be returned, when query parameters are present in - the request and one or multiple resources are deleted. - The URIs of the deleted resources are returned in the response message body. - '204': - description: >- - Success case ("204 No Content"). - This status code shall be returned, when no query parameters are present in - the request and only one resource is deleted. - The message body is empty. - content: - application/json: - schema: - $ref: '#/components/schemas/resourceDeletion-ResponseType' - default: - description: Error case. - content: - application/json: - schema: - $ref: '#/components/schemas/error-ResponseType' -components: - schemas: - dateTime-Type: - type: string - format: date-time - long-Type: - type: integer - format: int64 - uri-Type: - type: string - correlatedNotification-Type: - type: object - properties: - source: - $ref: '#/components/schemas/uri-Type' - notificationIds: - type: array - items: - $ref: '#/components/schemas/notificationId-Type' - notificationId-Type: - $ref: '#/components/schemas/long-Type' - notificationType-Type: - type: string - enum: - - notifyMOICreation - - notifyMOIDeletion - - notifyMOIAttributeValueChange - systemDN-Type: - type: string - additionalText-Type: - type: string - sourceIndicator-Type: - type: string - enum: - - resourceOperation - - mangementOperation - - sONOperation - - unknown - header-Type: - type: object - properties: - href: - $ref: '#/components/schemas/uri-Type' - notificationId: - $ref: '#/components/schemas/notificationId-Type' - notificationType: - $ref: '#/components/schemas/notificationType-Type' - eventTime: - $ref: '#/components/schemas/dateTime-Type' - systemDN: - $ref: '#/components/schemas/systemDN-Type' - required: - - href - - notificationId - - notificationType - - eventTime - - systemDN - scopeType-Type: - type: string - enum: - - BASE_ONLY - - BASE_NTH_LEVEL - - BASE_SUBTREE - - BASE_ALL - scopeLevel-Type: - type: integer - className-PathType: - type: string - id-PathType: - type: string - attributes-QueryType: - type: array - items: - type: string - fields-QueryType: - type: array - items: - type: string - filter-QueryType: - type: string - scope-QueryType: - type: object - properties: - scopeType: - $ref: '#/components/schemas/scopeType-Type' - scopeLevel: - $ref: '#/components/schemas/scopeLevel-Type' - - resourcePut-RequestType: - $ref: '#/components/schemas/resourceRepresentation-Type' - jsonMergePatch-RequestType: - $ref: '#/components/schemas/resourceRepresentation-Type' - 3gppJsonMergePatch-RequestType: - $ref: '#/components/schemas/resourceRepresentation-Type' - jsonPatch-RequestType: - type: array - items: - type: object - 3gppJsonPatch-RequestType: - type: array - items: - type: object - - error-ResponseType: - type: object - properties: - error: - type: object - properties: - errorInfo: - type: string - resourceRetrieval-ResponseType: - $ref: '#/components/schemas/resourceRepresentation-Type' - resourceCreation-ResponseType: - $ref: '#/components/schemas/resourceRepresentation-Type' - resourceUpdate-ResponseType: - $ref: '#/components/schemas/resourceRepresentation-Type' - resourceDeletion-ResponseType: - type: array - items: - $ref: '#/components/schemas/uri-Type' - - resourceRepresentation-Type: - oneOf: - - type: object - properties: - id: - type: string - attributes: - type: object - additionalProperties: - type: array - items: - type: object - - anyOf: - - $ref: 'genericNrm.yaml#/components/schemas/resources-genericNrm' - - $ref: 'nrNrm.yaml#/components/schemas/resources-nrNrm' - - $ref: '5gcNrm.yaml#/components/schemas/resources-5gcNrm' - - $ref: 'sliceNrm.yaml#/components/schemas/resources-sliceNrm' - - mOIChange-Type: - type: object - properties: - notificationId: - $ref: '#/components/schemas/notificationId-Type' - correlatedNotifications: - type: array - items: - $ref: '#/components/schemas/correlatedNotification-Type' - additionalText: - $ref: '#/components/schemas/additionalText-Type' - sourceIndicator: - $ref: '#/components/schemas/sourceIndicator-Type' - path: - $ref: '#/components/schemas/uri-Type' - operation: - type: string - enum: - - CREATE - - DELETE - - REPLACE - value: - oneOf: - - type: object - additionalProperties: - nullable: true - - type: array - items: - type: object - minItems: 1 - maxItems: 2 - - notifyMOICreation-NotifType: - allOf: - - $ref: '#/components/schemas/header-Type' - - type: object - properties: - correlatedNotifications: - type: array - items: - $ref: '#/components/schemas/correlatedNotification-Type' - additionalText: - $ref: '#/components/schemas/additionalText-Type' - sourceIndicator: - $ref: '#/components/schemas/sourceIndicator-Type' - attributeList: - type: object - additionalProperties: - nullable: true - notifyMOIDeletion-NotifType: - allOf: - - $ref: '#/components/schemas/header-Type' - - type: object - properties: - correlatedNotifications: - type: array - items: - $ref: '#/components/schemas/correlatedNotification-Type' - additionalText: - $ref: '#/components/schemas/additionalText-Type' - sourceIndicator: - $ref: '#/components/schemas/sourceIndicator-Type' - attributeList: - type: object - additionalProperties: true - notifyMOIAttributeValueChange-NotifType: - allOf: - - $ref: '#/components/schemas/header-Type' - - type: object - properties: - correlatedNotifications: - type: array - items: - $ref: '#/components/schemas/correlatedNotification-Type' - additionalText: - $ref: '#/components/schemas/additionalText-Type' - sourceIndicator: - $ref: '#/components/schemas/sourceIndicator-Type' - attributeValueChange: - type: object - additionalProperties: - type: array - minItems: 1 - maxItems: 2 - items: - nullable: true - required: - - attributeValueChange - notifyMOIChanges-NotifType: - allOf: - - $ref: '#/components/schemas/header-Type' - - type: object - properties: - mOIChanges: - type: array - items: - $ref: '#/components/schemas/mOIChange-Type' - required: - - mOIChanges diff --git a/OpenAPI/sliceNrm.yaml b/OpenAPI/sliceNrm.yaml deleted file mode 100644 index 18a2eef92..000000000 --- a/OpenAPI/sliceNrm.yaml +++ /dev/null @@ -1,483 +0,0 @@ -openapi: 3.0.1 -info: - title: Slice NRM - version: 16.5.0 - description: >- - OAS 3.0.1 specification of the Slice NRM - @ 2020, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). - All rights reserved. -externalDocs: - description: 3GPP TS 28.541 V16.4.0; 5G NRM, Slice NRM - url: http://www.3gpp.org/ftp/Specs/archive/28_series/28.541/ -paths: {} -components: - schemas: - -#------------ Type definitions --------------------------------------------------- - - Float: - type: number - format: float - MobilityLevel: - type: string - enum: - - STATIONARY - - NOMADIC - - RESTRICTED MOBILITY - - FULLY MOBILITY - SharingLevel: - type: string - enum: - - SHARED - - NON-SHARED - ServiceType: - type: string - enum: - - eMBB - - RLLC - - MIoT - - V2X - PerfReqEmbb: - type: object - properties: - expDataRateDL: - type: number - expDataRateUL: - type: number - areaTrafficCapDL: - type: number - areaTrafficCapUL: - type: number - userDensity: - type: number - activityFactor: - type: number - PerfReqEmbbList: - type: array - items: - $ref: '#/components/schemas/PerfReqEmbb' - PerfReqUrllc: - type: object - properties: - cSAvailabilityTarget: - type: number - cSReliabilityMeanTime: - type: string - expDataRate: - type: number - msgSizeByte: - type: string - transferIntervalTarget: - type: string - survivalTime: - type: string - PerfReqUrllcList: - type: array - items: - $ref: '#/components/schemas/PerfReqUrllc' - PerfReq: - oneOf: - - $ref: '#/components/schemas/PerfReqEmbbList' - - $ref: '#/components/schemas/PerfReqUrllcList' - Category: - type: string - enum: - - CHARACTER - - SCALABILITY - Tagging: - type: string - enum: - - PERFORMANCE - - FUNCTION - - OPERATION - Exposure: - type: string - enum: - - API - - KPI - ServAttrCom: - type: object - properties: - category: - $ref: '#/components/schemas/Category' - tagging: - $ref: '#/components/schemas/Tagging' - exposure: - $ref: '#/components/schemas/Exposure' - Support: - type: string - enum: - - NOT SUPPORTED - - SUPPORTED - DelayTolerance: - type: object - properties: - servAttrCom: - $ref: '#/components/schemas/ServAttrCom' - support: - $ref: '#/components/schemas/Support' - DeterministicComm: - type: object - properties: - servAttrCom: - $ref: '#/components/schemas/ServAttrCom' - availability: - $ref: '#/components/schemas/Support' - periodicityList: - type: string - DLThptPerSlice: - type: object - properties: - servAttrCom: - $ref: '#/components/schemas/ServAttrCom' - guaThpt: - $ref: '#/components/schemas/Float' - maxThpt: - $ref: '#/components/schemas/Float' - DLThptPerUE: - type: object - properties: - servAttrCom: - $ref: '#/components/schemas/ServAttrCom' - guaThpt: - $ref: '#/components/schemas/Float' - maxThpt: - $ref: '#/components/schemas/Float' - ULThptPerSlice: - type: object - properties: - servAttrCom: - $ref: '#/components/schemas/ServAttrCom' - guaThpt: - $ref: '#/components/schemas/Float' - maxThpt: - $ref: '#/components/schemas/Float' - ULThptPerUE: - type: object - properties: - servAttrCom: - $ref: '#/components/schemas/ServAttrCom' - guaThpt: - $ref: '#/components/schemas/Float' - maxThpt: - $ref: '#/components/schemas/Float' - DLThptPerSliceSubnet: - type: object - properties: - guaThpt: - $ref: '#/components/schemas/Float' - maxThpt: - $ref: '#/components/schemas/Float' - DLThptPerUEPerSubnet: - type: object - properties: - guaThpt: - $ref: '#/components/schemas/Float' - maxThpt: - $ref: '#/components/schemas/Float' - ULThptPerSliceSubnet: - type: object - properties: - guaThpt: - $ref: '#/components/schemas/Float' - maxThpt: - $ref: '#/components/schemas/Float' - ULThptPerUEPerSubnet: - type: object - properties: - guaThpt: - $ref: '#/components/schemas/Float' - maxThpt: - $ref: '#/components/schemas/Float' - MaxPktSize: - type: object - properties: - servAttrCom: - $ref: '#/components/schemas/ServAttrCom' - maxsize: - type: integer - MaxNumberofPDUSessions: - type: object - properties: - servAttrCom: - $ref: '#/components/schemas/ServAttrCom' - nOofPDUSessions: - type: integer - KPIMonitoring: - type: object - properties: - servAttrCom: - $ref: '#/components/schemas/ServAttrCom' - kPIList: - type: string - NBIoT: - type: object - properties: - servAttrCom: - $ref: '#/components/schemas/ServAttrCom' - support: - $ref: '#/components/schemas/Support' - UserMgmtOpen: - type: object - properties: - servAttrCom: - $ref: '#/components/schemas/ServAttrCom' - support: - $ref: '#/components/schemas/Support' - V2XCommModels: - type: object - properties: - servAttrCom: - $ref: '#/components/schemas/ServAttrCom' - v2XMode: - $ref: '#/components/schemas/Support' - TermDensity: - type: object - properties: - servAttrCom: - $ref: '#/components/schemas/ServAttrCom' - density: - type: integer - NsInfo: - type: object - properties: - nsInstanceId: - type: string - nsName: - type: string - CNSliceSubnetProfile: - type: object - properties: - maxNumberofUEs: - type: integer - latency: - type: integer - dLThptPerSlice: - $ref: '#/components/schemas/DLThptPerSliceSubnet' - dLThptPerUEPerSubnet: - $ref: '#/components/schemas/DLThptPerUEPerSubnet' - uLThptPerSliceSubnet: - $ref: '#/components/schemas/ULThptPerSliceSubnet' - uLThptPerUEPerSubnet: - $ref: '#/components/schemas/ULThptPerUEPerSubnet' - maxNumberOfPDUSessions: - type: integer - RANSliceSubnetProfile: - type: object - properties: - coverageAreaGeoPolygon: - type: string - coverageAreaTAList: - type: integer - MobilityLevel: - $ref: '#/components/schemas/MobilityLevel' - resourceSharingLevel: - $ref: '#/components/schemas/SharingLevel' - maxNumberofUEs: - type: integer - activityFactor: - type: integer - dLThptPerUE: - $ref: '#/components/schemas/ULThptPerUEPerSubnet' - uLThptPerUE: - $ref: '#/components/schemas/ULThptPerUEPerSubnet' - uESpeed: - type: integer - reliability: - type: string - serviceType: - $ref: '#/components/schemas/ServiceType' - TopSliceSubnetProfile: - type: object - properties: - coverageArea: - type: string - latency: - type: integer - maxNumberofUEs: - type: integer - dLThptPerSlice: - $ref: '#/components/schemas/DLThptPerSliceSubnet' - dLThptPerUE: - $ref: '#/components/schemas/DLThptPerUEPerSubnet' - uLThptPerSlice: - $ref: '#/components/schemas/ULThptPerSliceSubnet' - uLThptPerUE: - $ref: '#/components/schemas/ULThptPerUEPerSubnet' - maxPktSize: - type: integer - maxNumberOfPDUSessions: - type: integer - ServiceProfileList: - type: object - additionalProperties: - type: object - properties: - snssaiList: - $ref: 'nrNrm.yaml#/components/schemas/SnssaiList' - plmnIdList: - $ref: 'nrNrm.yaml#/components/schemas/PlmnIdList' - maxNumberofUEs: - type: number - latency: - type: number - uEMobilityLevel: - $ref: '#/components/schemas/MobilityLevel' - sst: - $ref: 'nrNrm.yaml#/components/schemas/Sst' - resourceSharingLevel: - $ref: '#/components/schemas/SharingLevel' - availability: - type: number - delayTolerance: - $ref: '#/components/schemas/DelayTolerance' - deterministicComm: - $ref: '#/components/schemas/DeterministicComm' - dLThptPerSlice: - $ref: '#/components/schemas/DLThptPerSlice' - dLThptPerUE: - $ref: '#/components/schemas/DLThptPerUE' - uLThptPerSlice: - $ref: '#/components/schemas/ULThptPerSlice' - uLThptPerUE: - $ref: '#/components/schemas/ULThptPerUE' - maxPktSize: - $ref: '#/components/schemas/MaxPktSize' - maxNumberofPDUSessions: - $ref: '#/components/schemas/MaxNumberofPDUSessions' - kPIMonitoring: - $ref: '#/components/schemas/KPIMonitoring' - nBIoT: - $ref: '#/components/schemas/NBIoT' - userMgmtOpen: - $ref: '#/components/schemas/UserMgmtOpen' - v2XModels: - $ref: '#/components/schemas/V2XCommModels' - coverageArea: - type: string - termDensity: - $ref: '#/components/schemas/TermDensity' - activityFactor: - $ref: '#/components/schemas/Float' - uESpeed: - type: integer - jitter: - type: integer - survivalTime: - type: string - reliability: - type: string - maxDLDataVolume: - type: string - maxULDataVolume: - type: string - SliceProfileList: - type: object - additionalProperties: - type: object - properties: - snssaiList: - $ref: 'nrNrm.yaml#/components/schemas/SnssaiList' - plmnIdList: - $ref: 'nrNrm.yaml#/components/schemas/PlmnIdList' - perfReq: - $ref: '#/components/schemas/PerfReq' - CNSliceSubnetProfile: - $ref: '#/components/schemas/CNSliceSubnetProfile' - RANSliceSubnetProfile: - $ref: '#/components/schemas/RANSliceSubnetProfile' - TopSliceSubnetProfile: - $ref: '#/components/schemas/TopSliceSubnetProfile' - maxNumberofUEs: - type: number - coverageAreaTAList: - $ref: '5gcNrm.yaml#/components/schemas/TACList' - latency: - type: number - uEMobilityLevel: - $ref: '#/components/schemas/MobilityLevel' - resourceSharingLevel: - $ref: '#/components/schemas/SharingLevel' - - IpAddress: - oneOf: - - $ref: 'genericNrm.yaml#/components/schemas/Ipv4Addr' - - $ref: 'genericNrm.yaml#/components/schemas/Ipv6Addr' - -#------------ Definition of concrete IOCs ---------------------------------------- - - NetworkSlice: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/SubNetwork-Attr' - - type: object - properties: - networkSliceSubnetRef: - $ref: 'genericNrm.yaml#/components/schemas/Dn' - operationalState: - $ref: 'genericNrm.yaml#/components/schemas/OperationalState' - administrativeState: - $ref: 'genericNrm.yaml#/components/schemas/AdministrativeState' - serviceProfileList: - $ref: '#/components/schemas/ServiceProfileList' - - NetworkSliceSubnet: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/SubNetwork-Attr' - - type: object - properties: - managedFunctionRefList: - $ref: 'genericNrm.yaml#/components/schemas/DnList' - networkSliceSubnetRefList: - $ref: 'genericNrm.yaml#/components/schemas/DnList' - operationalState: - $ref: 'genericNrm.yaml#/components/schemas/OperationalState' - administrativeState: - $ref: 'genericNrm.yaml#/components/schemas/AdministrativeState' - nsInfo: - $ref: '#/components/schemas/NsInfo' - sliceProfileList: - $ref: '#/components/schemas/SliceProfileList' - EPTransport: - $ref: '#/components/schemas/EP_Transport-Multiple' - - EP_Transport-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - type: object - properties: - ipAddress: - $ref: '#/components/schemas/IpAddress' - logicInterfaceId: - type: string - nextHopInfo: - type: string - qosProfile: - type: string - epApplicationRefs: - $ref: 'genericNrm.yaml#/components/schemas/DnList' - - EP_Transport-Multiple: - type: array - items: - $ref: '#/components/schemas/EP_Transport-Single' - -#------------ Definitions in TS 28.541 for TS 28.532 ----------------------------- - - resources-sliceNrm: - oneOf: - - $ref: '#/components/schemas/NetworkSlice' - - $ref: '#/components/schemas/NetworkSliceSubnet' - - $ref: '#/components/schemas/EP_Transport-Single' diff --git a/OpenAPI/streamingDataMnS.yaml b/OpenAPI/streamingDataMnS.yaml deleted file mode 100644 index ab7f71d4a..000000000 --- a/OpenAPI/streamingDataMnS.yaml +++ /dev/null @@ -1,453 +0,0 @@ -openapi: 3.0.1 -info: - title: TS 28.532 Streaming data reporting service - version: 16.4.0 - description: OAS 3.0.1 specification for the Streaming data reporting service (Streaming MnS) -servers: - - url: '{protocol}://{root}/StreamingDataReportingMnS/{version}' - variables: - protocol: - description: Protocol used - enum: - - http - - https - - wss - default: https - root: - description: Indicates the host name and optional port, and an optional sequence of path segments that together represent a prefix path. - default: example.com - version: - description: Indicates the current version of the specification - default: 16.4.0 -paths: - '/connections': - post: - summary: Inform consumer about reporting streams to be carried by the new connection and receive a new connection id. - description: Exchange of meta-data (producer informs consumer about its own identity and the nature of the data to be reported via streaming) phase of the connection establishement by streaming data reporting producer to the streaming data reporting consumer (i.e. streaming target). - requestBody: - required: true - content: - application/json: - schema: - $ref: '#/components/schemas/connectionRequest-Type' - responses: - '201': - description: Success case (201 Created). - headers: - Location: - description: Location of the created connection resource. - schema: - $ref: '#/components/schemas/connectionId-Type' - default: - description: Error case. - content: - application/json: - schema: - $ref: '#/components/schemas/failedConnectionResponse-Type' - get: - summary: Obtain information about connections. - description: Enables the streaming data reporting service producer to obtain information about one or more streaming connections. - parameters: - - name: connectionIdList - in: query - description: The list of connectionId for which the connection information is to be returned. - required: false - schema: - type: array - items: - $ref: '#/components/schemas/connectionId-Type' - responses: - '200': - description: Success case (200 OK). The resources identified in the request for retrieval are returned in the response message body. In case the fields query parameter is used, the selected resources are returned. - content: - application/json: - schema: - type: array - items: - $ref: '#/components/schemas/connectionInfo-Type' - '202': - description: Partial success case (202 Partially retrieved). Subset of the resources identified in the request for retrieval are returned in the response message body. - content: - application/json: - schema: - type: array - items: - $ref: '#/components/schemas/connectionInfo-Type' - default: - description: Error case. - content: - application/json: - schema: - $ref: '#/components/schemas/errorResponse-Type' - '/connections/{connectionId}': - get: - summary: Obtain information about a connection. - description: Enables the streaming data reporting service producer to obtain information about one streaming connection. - parameters: - - name: connectionId - in: path - description: Indicate the ID (URI) of the connection for which the information is being retrieved - required: true - schema: - $ref: '#/components/schemas/connectionId-Type' - - name: Connection - in: header - schema: - $ref: '#/components/schemas/websocketHeaderConnection-Type' - - name: Sec-WebSocket-Extensions - in: header - schema: - $ref: '#/components/schemas/websocketHeader-Sec-WebSocket-Extensions-Type' - - name: Sec-WebSocket-Key - in: header - schema: - $ref: '#/components/schemas/websocketHeader-Sec-WebSocket-Key-Type' - - name: Sec-WebSocket-Protocol - in: header - schema: - $ref: '#/components/schemas/websocketHeader-Sec-WebSocket-Protocol-Type' - - name: Sec-WebSocket-Version - in: header - schema: - $ref: '#/components/schemas/websocketHeader-Sec-WebSocket-Version-Type' - responses: - '101': - description: Success case (101 Switching Protocols). The connection has been successfully switched to WebSocket. The response message body is absent. - headers: - Upgrade: - schema: - $ref: '#/components/schemas/websocketHeaderUpgrade-Type' - Connection: - schema: - $ref: '#/components/schemas/websocketHeaderConnection-Type' - Sec-WebSocket-Accept: - schema: - $ref: '#/components/schemas/websocketHeader-Sec-WebSocket-Accept-Type' - '200': - description: Success case (200 OK). The resource identified in the request for retrieval returned in the response message body. - content: - application/json: - schema: - $ref: '#/components/schemas/connectionInfo-Type' - default: - description: Error case. - content: - application/json: - schema: - $ref: '#/components/schemas/errorResponse-Type' - '/connections/{connectionId}/streams': - post: - summary: Inform consumer about new reporting streams on an existing connection. - description: Allows the producer to add one or more reporting streams to an already established streaming connection. - parameters: - - name: connectionId - in: path - description: Indicate the ID (URI) of the connection for which the reporting stream information is being added. - required: true - schema: - $ref: '#/components/schemas/connectionId-Type' - requestBody: - required: true - content: - application/json: - schema: - type: array - items: - $ref: '#/components/schemas/streamInfo-Type' - responses: - '201': - description: Success case (201 Posted). - content: - application/json: - schema: - type: array - items: - $ref: '#/components/schemas/streamInfo-Type' - '202': - description: Partial success case (202 Posted). - content: - application/json: - schema: - type: array - items: - $ref: '#/components/schemas/streamInfo-Type' - default: - description: Error case. - content: - application/json: - schema: - $ref: '#/components/schemas/errorResponse-Type' - delete: - summary: Remove reporting streams from an existing connection - description: Allows the producer to remove one or more reporting streams from an already established streaming connection. - parameters: - - name: connectionId - in: path - description: Indicate the ID (URI) of the connection for which the reporting stream information is being removed. - required: true - schema: - $ref: '#/components/schemas/connectionId-Type' - - name: streamIds - in: query - description: The list of streamId for the stream(s) to be deleted. - required: true - schema: - type: array - items: - $ref: '#/components/schemas/streamId-Type' - responses: - '204': - description: Success case (204 No Content). The stream information resource has been deleted. The response message body is absent. - default: - description: Error case. - content: - application/json: - schema: - $ref: '#/components/schemas/errorResponse-Type' - get: - summary: Obtain information about streams. - description: Enables the streaming data reporting service producer to obtain information about one or more reporting streams. - parameters: - - name: connectionId - in: path - description: Indicate the ID (URI) of the connection for which the information is being retrieved - required: true - schema: - $ref: '#/components/schemas/connectionId-Type' - - name: streamIds - in: query - description: The list of streamId for which the stream information is to be retrieved. - required: true - schema: - type: array - items: - $ref: '#/components/schemas/streamId-Type' - responses: - '200': - description: Success case (200 OK). - content: - application/json: - schema: - type: array - items: - $ref: '#/components/schemas/streamInfoWithReporters-Type' - '202': - description: Partial success case (202 Partially retrieved). - content: - application/json: - schema: - type: array - items: - $ref: '#/components/schemas/streamInfoWithReporters-Type' - default: - description: Error case. - content: - application/json: - schema: - $ref: '#/components/schemas/errorResponse-Type' - '/connections/{connectionId}/streams/{streamId}': - get: - summary: Obtain information about stream - description: Enables the streaming data reporting service producer to obtain information about a reporting stream. - parameters: - - name: connectionId - in: path - description: Indicate the ID (URI) of the connection for which the information is being retrieved - required: true - schema: - $ref: '#/components/schemas/connectionId-Type' - - name: streamId - in: path - description: Indicate the ID of the reporting stream for which the information is being retrieved - required: true - schema: - $ref: '#/components/schemas/streamId-Type' - responses: - '200': - description: Success case (200 OK). - content: - application/json: - schema: - $ref: '#/components/schemas/streamInfoWithReporters-Type' - default: - description: Error case. - content: - application/json: - schema: - $ref: '#/components/schemas/errorResponse-Type' -components: - schemas: - analyticsInfo-Type: - description: Information specific to analytics reporting. - type: object - properties: - activityDetails: - type: string - connectionId-Type: - $ref: '#/components/schemas/uri-Type' - connectionInfo-Type: - type: object - properties: - connection: - $ref: '#/components/schemas/connectionId-Type' - producer: - $ref: '#/components/schemas/producerId-Type' - streams: - type: array - items: - $ref: '#/components/schemas/streamId-Type' - connectionRequest-Type: - type: object - properties: - producer: - $ref: '#/components/schemas/producerId-Type' - streams: - type: array - items: - $ref: '#/components/schemas/streamInfo-Type' - errorResponse-Type: - type: object - properties: - error: - type: object - properties: - errorInfo: - type: string - failedConnectionResponse-Type: - type: object - properties: - error: - type: array - items: - type: object - properties: - streamId: - $ref: '#/components/schemas/streamId-Type' - errorReason: - type: string - measObjDn-Type: - description: DN of the measured object instance (see 3GPP TS 28.550) - allOf: - - $ref: '#/components/schemas/systemDN-Type' - measTypes-Type: - description: an ordered list of measurement type or KPI whose measurement values or KPI result values are to be reported by the Performance Data Stream Units (see Annex C of TS 28.550) via this stream - type: array - items: - type: string - performanceInfo-Type: - description: Information specific to performance data reporting - type: object - properties: - measObjDn: - $ref: '#/components/schemas/measObjDn-Type' - measTypes: - $ref: '#/components/schemas/measTypes-Type' - measurementReaderId: - $ref: '#/components/schemas/systemDN-Type' - jobId: - type: string - required: - - measObjDn - - measTypes - producerId-Type: - description: DN of the streaming data reporting MnS producer. - allOf: - - $ref: '#/components/schemas/systemDN-Type' - serializationFormat-Type: - type: string - enum: - - GPB - - ASN1 - streamId-Type: - description: globally unique stream identifier - type: string - example: '26F452550021' - streamInfo-Type: - description: Reporting stream meta-data. - type: object - properties: - streamType: - $ref: '#/components/schemas/streamType-Type' - serializationFormat: - $ref: '#/components/schemas/serializationFormat-Type' - streamId: - oneOf: - - $ref: '#/components/schemas/streamId-Type' - - $ref: '#/components/schemas/traceReference-Type' - additionalInfo: - oneOf: - - $ref: '#/components/schemas/traceInfo-Type' - - $ref: '#/components/schemas/performanceInfo-Type' - - $ref: '#/components/schemas/analyticsInfo-Type' - - $ref: '#/components/schemas/vsDataContainer-Type' - required: - - streamType - - serializationFormat - - streamId - streamInfoWithReporters-Type: - description: Reporting stream meta-data with added information about reporters. - type: object - properties: - streamInfo: - $ref: '#/components/schemas/streamInfo-Type' - reporters: - type: array - items: - $ref: '#/components/schemas/producerId-Type' - systemDN-Type: - description: See 3GPP TS 32.300 for details - type: string - example: 'SubNetwork=ABCNetwork,SubNetwork=MUC01,GNBDUFunction=XYZ0100' - streamType-Type: - type: string - enum: - - TRACE - - PERFORMANCE - - ANALYTICS - - PROPRIETARY - traceInfo-Type: - description: Information specific to trace data reporting - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/TraceJob-Attr' - traceReference-Type: - description: Trace Reference (see clause 5.6 of 3GPP TS 32.422) as stream identifier for streaming trace data reporting - type: string - example: '4358070034D7' - uri-Type: - description: Resource URI - type: string - vsDataContainer-Type: - description: container for vendor specific data (see 3GPP TS 28.622) - type: object - properties: - vsDataType: - type: string - vsData: - type: string - vsDataFormatVersion: - type: string - websocketHeaderConnection-Type: - description: Header value for the upgrade request and response. - type: string - enum: - - Upgrade - websocketHeaderUpgrade-Type: - description: Header value for the upgrade to WebSocket request and response. - type: string - enum: - - websocket - websocketHeader-Sec-WebSocket-Accept-Type: - description: Header value for secure WebSocket response. Carries hash. - type: string - websocketHeader-Sec-WebSocket-Extensions-Type: - description: Header value for secure WebSocket request. Carries protocol extensions. - type: string - websocketHeader-Sec-WebSocket-Key-Type: - description: Header value for secure WebSocket request. Provides information to the server which is needed in order to confirm that the client is entitled to request an upgrade to WebSocket. - type: string - websocketHeader-Sec-WebSocket-Protocol-Type: - description: Header value for secure WebSocket request. Carries a comma-separated list of subprotocol names, in the order of preference. - type: string - websocketHeader-Sec-WebSocket-Version-Type: - description: Header value for secure WebSocket request and response. Carries the WebSocket protocol version to be used. - type: string -- GitLab From dac1d192d9082130208779d0110f5a3bd06d7c36 Mon Sep 17 00:00:00 2001 From: Ping Date: Fri, 23 Apr 2021 11:06:10 +0800 Subject: [PATCH 033/593] Copy all OpenAPI files from Integration-rel17-SA5-136 branch --- OpenAPI/5gcNrm.yaml | 1980 +++++++++++++++++++++++++++++ OpenAPI/PerDataFileReportMnS.yaml | 13 + OpenAPI/PerMeasJobCtlMnS.yaml | 280 ++++ OpenAPI/PerThresMonMnS.yaml | 102 ++ OpenAPI/PerfDataStreamingMnS.yaml | 363 ++++++ OpenAPI/README.md | 73 ++ OpenAPI/comDefs.yaml | 84 ++ OpenAPI/coslaNrm.yaml | 131 ++ OpenAPI/faultMnS.yaml | 1144 +++++++++++++++++ OpenAPI/genericNrm.yaml | 1590 +++++++++++++++++++++++ OpenAPI/heartbeatNtf.yaml | 23 + OpenAPI/nrNrm.yaml | 1869 +++++++++++++++++++++++++++ OpenAPI/provMnS.yaml | 579 +++++++++ OpenAPI/sliceNrm.yaml | 595 +++++++++ OpenAPI/streamingDataMnS.yaml | 453 +++++++ 15 files changed, 9279 insertions(+) create mode 100644 OpenAPI/5gcNrm.yaml create mode 100644 OpenAPI/PerDataFileReportMnS.yaml create mode 100644 OpenAPI/PerMeasJobCtlMnS.yaml create mode 100644 OpenAPI/PerThresMonMnS.yaml create mode 100644 OpenAPI/PerfDataStreamingMnS.yaml create mode 100644 OpenAPI/README.md create mode 100644 OpenAPI/comDefs.yaml create mode 100644 OpenAPI/coslaNrm.yaml create mode 100644 OpenAPI/faultMnS.yaml create mode 100644 OpenAPI/genericNrm.yaml create mode 100644 OpenAPI/heartbeatNtf.yaml create mode 100644 OpenAPI/nrNrm.yaml create mode 100644 OpenAPI/provMnS.yaml create mode 100644 OpenAPI/sliceNrm.yaml create mode 100644 OpenAPI/streamingDataMnS.yaml diff --git a/OpenAPI/5gcNrm.yaml b/OpenAPI/5gcNrm.yaml new file mode 100644 index 000000000..9afbd454f --- /dev/null +++ b/OpenAPI/5gcNrm.yaml @@ -0,0 +1,1980 @@ +openapi: 3.0.1 +info: + title: 3GPP 5GC NRM + version: 16.6.0 + description: >- + OAS 3.0.1 specification of the 5GC NRM + © 2020, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). + All rights reserved. +externalDocs: + description: 3GPP TS 28.541 V16.6.0; 5G NRM, 5GC NRM + url: http://www.3gpp.org/ftp/Specs/archive/28_series/28.541/ +paths: {} +components: + schemas: + +#-------- Definition of types----------------------------------------------------- + + AmfIdentifier: + type: object + description: 'AmfIdentifier comprise of amfRegionId, amfSetId and amfPointer' + properties: + amfRegionId: + $ref: '#/components/schemas/AmfRegionId' + amfSetId: + $ref: '#/components/schemas/AmfSetId' + amfPointer: + $ref: '#/components/schemas/AmfPointer' + AmfRegionId: + type: integer + description: AmfRegionId is defined in TS 23.003 + maximum: 255 + AmfSetId: + type: string + description: AmfSetId is defined in TS 23.003 + maximum: 1023 + AmfPointer: + type: integer + description: AmfPointer is defined in TS 23.003 + maximum: 63 + IpEndPoint: + type: object + properties: + ipv4Address: + $ref: 'genericNrm.yaml#/components/schemas/Ipv4Addr' + ipv6Address: + $ref: 'genericNrm.yaml#/components/schemas/Ipv6Addr' + ipv6Prefix: + $ref: 'genericNrm.yaml#/components/schemas/Ipv6Prefix' + transport: + $ref: 'genericNrm.yaml#/components/schemas/TransportProtocol' + port: + type: integer + NFProfileList: + type: array + description: List of NF profile + items: + $ref: '#/components/schemas/NFProfile' + NFProfile: + type: object + description: 'NF profile stored in NRF, defined in TS 29.510' + properties: + nFInstanceId: + type: string + description: uuid of NF instance + nFType: + $ref: 'genericNrm.yaml#/components/schemas/NFType' + nFStatus: + $ref: '#/components/schemas/NFStatus' + plmn: + $ref: 'nrNrm.yaml#/components/schemas/PlmnId' + sNssais: + $ref: 'nrNrm.yaml#/components/schemas/Snssai' + fqdn: + $ref: 'genericNrm.yaml#/components/schemas/Fqdn' + interPlmnFqdn: + $ref: 'genericNrm.yaml#/components/schemas/Fqdn' + nfServices: + type: array + items: + $ref: '#/components/schemas/NFService' + NFService: + type: object + description: NF Service is defined in TS 29.510 + properties: + serviceInstanceId: + type: string + serviceName: + type: string + version: + type: string + schema: + type: string + fqdn: + $ref: 'genericNrm.yaml#/components/schemas/Fqdn' + interPlmnFqdn: + $ref: 'genericNrm.yaml#/components/schemas/Fqdn' + ipEndPoints: + type: array + items: + $ref: '#/components/schemas/IpEndPoint' + apiPrfix: + type: string + allowedPlmns: + $ref: 'nrNrm.yaml#/components/schemas/PlmnId' + allowedNfTypes: + type: array + items: + $ref: 'genericNrm.yaml#/components/schemas/NFType' + allowedNssais: + type: array + items: + $ref: 'nrNrm.yaml#/components/schemas/Snssai' + NFStatus: + type: string + description: any of enumrated value + enum: + - REGISTERED + - SUSPENDED + CNSIIdList: + type: array + items: + $ref: '#/components/schemas/CNSIId' + CNSIId: + type: string + description: CNSI Id is defined in TS 29.531, only for Core Network + TACList: + type: array + items: + $ref: 'nrNrm.yaml#/components/schemas/NrTac' + WeightFactor: + type: integer + UdmInfo: + type: object + properties: + nFSrvGroupId: + type: string + AusfInfo: + type: object + properties: + nFSrvGroupId: + type: string + UpfInfo: + type: object + properties: + smfServingAreas: + type: string + AmfInfo: + type: object + properties: + priority: + type: integer + SupportedDataSetId: + type: string + description: any of enumrated value + enum: + - SUBSCRIPTION + - POLICY + - EXPOSURE + - APPLICATION + Udrinfo: + type: object + properties: + supportedDataSetIds: + type: array + items: + $ref: '#/components/schemas/SupportedDataSetId' + nFSrvGroupId: + type: string + NFInfo: + oneOf: + - $ref: '#/components/schemas/UdmInfo' + - $ref: '#/components/schemas/AusfInfo' + - $ref: '#/components/schemas/UpfInfo' + - $ref: '#/components/schemas/AmfInfo' + - $ref: '#/components/schemas/Udrinfo' + ManagedNFProfile: + type: object + properties: + nfInstanceID: + type: string + nfType: + $ref: 'genericNrm.yaml#/components/schemas/NFType' + authzInfo: + type: string + hostAddr: + $ref: 'genericNrm.yaml#/components/schemas/HostAddr' + locality: + type: string + nFInfo: + $ref: '#/components/schemas/NFInfo' + capacity: + type: integer + SEPPType: + type: string + description: any of enumrated value + enum: + - CSEPP + - PSEPP + SupportedFunc: + type: object + properties: + function: + type: string + policy: + type: string + SupportedFuncList: + type: array + items: + $ref: '#/components/schemas/SupportedFunc' + CommModelType: + type: string + description: any of enumrated value + enum: + - DIRECT_COMMUNICATION_WO_NRF + - DIRECT_COMMUNICATION_WITH_NRF + - INDIRECT_COMMUNICATION_WO_DEDICATED_DISCOVERY + - INDIRECT_COMMUNICATION_WITH_DEDICATED_DISCOVERY + CommModel: + type: object + properties: + groupId: + type: integer + commModelType: + $ref: '#/components/schemas/CommModelType' + targetNFServiceList: + $ref: 'genericNrm.yaml#/components/schemas/DnList' + commModelConfiguration: + type: string + CommModelList: + type: array + items: + $ref: '#/components/schemas/CommModel' + CapabilityList: + type: array + items: + type: string + FiveQiDscpMapping: + type: object + properties: + fiveQIValues: + type: array + items: + type: integer + dscp: + type: integer + + PacketErrorRate: + type: object + properties: + scalar: + type: integer + exponent: + type: integer + FiveQICharacteristics: + type: object + properties: + fiveQIValue: + type: integer + resourceType: + type: string + enum: + - GBR + - NonGBR + priorityLevel: + type: integer + packetDelayBudget: + type: integer + packetErrorRate: + $ref: '#/components/schemas/PacketErrorRate' + averagingWindow: + type: integer + maximumDataBurstVolume: + type: integer + + + GtpUPathDelayThresholdsType: + type: object + properties: + n3AveragePacketDelayThreshold: + type: integer + n3MinPacketDelayThreshold: + type: integer + n3MaxPacketDelayThreshold: + type: integer + n9AveragePacketDelayThreshold: + type: integer + n9MinPacketDelayThreshold: + type: integer + n9MaxPacketDelayThreshold: + type: integer + QFPacketDelayThresholdsType: + type: object + properties: + thresholdDl: + type: integer + thresholdUl: + type: integer + thresholdRtt: + type: integer + + QosData: + type: object + properties: + qosId: + type: string + fiveQIValue: + type: integer + maxbrUl: + $ref: 'https://forge.3gpp.org/rep/all/5G_APIs/raw/REL-16/TS29571_CommonData.yaml#/components/schemas/BitRateRm' + maxbrDl: + $ref: 'https://forge.3gpp.org/rep/all/5G_APIs/raw/REL-16/TS29571_CommonData.yaml#/components/schemas/BitRateRm' + gbrUl: + $ref: 'https://forge.3gpp.org/rep/all/5G_APIs/raw/REL-16/TS29571_CommonData.yaml#/components/schemas/BitRateRm' + gbrDl: + $ref: 'https://forge.3gpp.org/rep/all/5G_APIs/raw/REL-16/TS29571_CommonData.yaml#/components/schemas/BitRateRm' + arp: + $ref: 'https://forge.3gpp.org/rep/all/5G_APIs/raw/REL-16/TS29571_CommonData.yaml#/components/schemas/Arp' + qosNotificationControl: + type: boolean + reflectiveQos: + type: boolean + sharingKeyDl: + type: string + sharingKeyUl: + type: string + maxPacketLossRateDl: + $ref: 'https://forge.3gpp.org/rep/all/5G_APIs/raw/REL-16/TS29571_CommonData.yaml#/components/schemas/PacketLossRateRm' + maxPacketLossRateUl: + $ref: 'https://forge.3gpp.org/rep/all/5G_APIs/raw/REL-16/TS29571_CommonData.yaml#/components/schemas/PacketLossRateRm' + extMaxDataBurstVol: + $ref: 'https://forge.3gpp.org/rep/all/5G_APIs/raw/REL-16/TS29571_CommonData.yaml#/components/schemas/ExtMaxDataBurstVolRm' + + QosDataList: + type: array + items: + $ref: '#/components/schemas/QosData' + + SteeringMode: + type: object + properties: + steerModeValue: + $ref: 'https://forge.3gpp.org/rep/all/5G_APIs/raw/REL-16/TS29512_Npcf_SMPolicyControl.yaml#/components/schemas/SteerModeValue' + active: + $ref: 'https://forge.3gpp.org/rep/all/5G_APIs/raw/REL-16/TS29571_CommonData.yaml#/components/schemas/AccessType' + standby: + $ref: 'https://forge.3gpp.org/rep/all/5G_APIs/raw/REL-16/TS29571_CommonData.yaml#/components/schemas/AccessTypeRm' + threeGLoad: + $ref: 'https://forge.3gpp.org/rep/all/5G_APIs/raw/REL-16/TS29571_CommonData.yaml#/components/schemas/Uinteger' + prioAcc: + $ref: 'https://forge.3gpp.org/rep/all/5G_APIs/raw/REL-16/TS29571_CommonData.yaml#/components/schemas/AccessType' + + TrafficControlData: + type: object + properties: + tcId: + type: string + flowStatus: + $ref: 'https://forge.3gpp.org/rep/all/5G_APIs/raw/REL-16/TS29514_Npcf_PolicyAuthorization.yaml#/components/schemas/FlowStatus' + redirectInfo: + $ref: 'https://forge.3gpp.org/rep/all/5G_APIs/raw/REL-16/TS29512_Npcf_SMPolicyControl.yaml#/components/schemas/RedirectInformation' + addRedirectInfo: + type: array + items: + $ref: 'https://forge.3gpp.org/rep/all/5G_APIs/raw/REL-16/TS29512_Npcf_SMPolicyControl.yaml#/components/schemas/RedirectInformation' + minItems: 1 + muteNotif: + type: boolean + trafficSteeringPolIdDl: + type: string + nullable: true + trafficSteeringPolIdUl: + type: string + nullable: true + routeToLocs: + type: array + items: + $ref: 'https://forge.3gpp.org/rep/all/5G_APIs/raw/REL-16/TS29571_CommonData.yaml#/components/schemas/RouteToLocation' + traffCorreInd: + type: boolean + upPathChgEvent: + $ref: 'https://forge.3gpp.org/rep/all/5G_APIs/raw/REL-16/TS29512_Npcf_SMPolicyControl.yaml#/components/schemas/UpPathChgEvent' + steerFun: + $ref: 'https://forge.3gpp.org/rep/all/5G_APIs/raw/REL-16/TS29512_Npcf_SMPolicyControl.yaml#/components/schemas/SteeringFunctionality' + steerModeDl: + $ref: '#/components/schemas/SteeringMode' + steerModeUl: + $ref: '#/components/schemas/SteeringMode' + mulAccCtrl: + $ref: 'https://forge.3gpp.org/rep/all/5G_APIs/raw/REL-16/TS29512_Npcf_SMPolicyControl.yaml#/components/schemas/MulticastAccessControl' + + TrafficControlDataList: + type: array + items: + $ref: '#/components/schemas/TrafficControlData' + + PccRule: + type: object + properties: + pccRuleId: + type: string + description: Univocally identifies the PCC rule within a PDU session. + flowInfoList: + type: array + items: + $ref: 'https://forge.3gpp.org/rep/all/5G_APIs/raw/REL-16/TS29512_Npcf_SMPolicyControl.yaml#/components/schemas/FlowInformation' + applicationId: + type: string + appDescriptor: + $ref: 'https://forge.3gpp.org/rep/all/5G_APIs/raw/REL-16/TS29512_Npcf_SMPolicyControl.yaml#/components/schemas/ApplicationDescriptor' + contentVersion: + $ref: 'https://forge.3gpp.org/rep/all/5G_APIs/raw/REL-16/TS29514_Npcf_PolicyAuthorization.yaml#/components/schemas/ContentVersion' + precedence: + $ref: 'https://forge.3gpp.org/rep/all/5G_APIs/raw/REL-16/TS29571_CommonData.yaml#/components/schemas/Uinteger' + afSigProtocol: + $ref: 'https://forge.3gpp.org/rep/all/5G_APIs/raw/REL-16/TS29512_Npcf_SMPolicyControl.yaml#/components/schemas/AfSigProtocol' + isAppRelocatable: + type: boolean + isUeAddrPreserved: + type: boolean + qosData: + type: array + items: + $ref: '#/components/schemas/QosDataList' + altQosParams: + type: array + items: + $ref: '#/components/schemas/QosDataList' + trafficControlData: + type: array + items: + $ref: '#/components/schemas/TrafficControlDataList' + conditionData: + $ref: 'https://forge.3gpp.org/rep/all/5G_APIs/raw/REL-16/TS29512_Npcf_SMPolicyControl.yaml#/components/schemas/ConditionData' + tscaiInputDl: + $ref: 'https://forge.3gpp.org/rep/all/5G_APIs/raw/REL-16/TS29514_Npcf_PolicyAuthorization.yaml#/components/schemas/TscaiInputContainer' + tscaiInputUl: + $ref: 'https://forge.3gpp.org/rep/all/5G_APIs/raw/REL-16/TS29514_Npcf_PolicyAuthorization.yaml#/components/schemas/TscaiInputContainer' + + +#-------- Definition of concrete IOCs -------------------------------------------- + + SubNetwork-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/SubNetwork-Attr' + - $ref: 'genericNrm.yaml#/components/schemas/SubNetwork-ncO' + - type: object + properties: + SubNetwork: + $ref: '#/components/schemas/SubNetwork-Multiple' + ManagedElement: + $ref: '#/components/schemas/ManagedElement-Multiple' + ExternalAmfFunction: + $ref: '#/components/schemas/ExternalAmfFunction-Multiple' + ExternalNrfFunction: + $ref: '#/components/schemas/ExternalNrfFunction-Multiple' + ExternalNssfFunction: + $ref: '#/components/schemas/ExternalNssfFunction-Multiple' + AmfSet: + $ref: '#/components/schemas/AmfSet-Multiple' + AmfRegion: + $ref: '#/components/schemas/AmfRegion-Multiple' + Configurable5QISet: + $ref: '#/components/schemas/Configurable5QISet-Multiple' + Dynamic5QISet: + $ref: '#/components/schemas/Dynamic5QISet-Multiple' + + ManagedElement-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/ManagedElement-Attr' + - $ref: 'genericNrm.yaml#/components/schemas/ManagedElement-ncO' + - type: object + properties: + AmfFunction: + $ref: '#/components/schemas/AmfFunction-Multiple' + SmfFunction: + $ref: '#/components/schemas/SmfFunction-Multiple' + UpfFunction: + $ref: '#/components/schemas/UpfFunction-Multiple' + N3iwfFunction: + $ref: '#/components/schemas/N3iwfFunction-Multiple' + PcfFunction: + $ref: '#/components/schemas/PcfFunction-Multiple' + AusfFunction: + $ref: '#/components/schemas/AusfFunction-Multiple' + UdmFunction: + $ref: '#/components/schemas/UdmFunction-Multiple' + UdrFunction: + $ref: '#/components/schemas/UdrFunction-Multiple' + UdsfFunction: + $ref: '#/components/schemas/UdsfFunction-Multiple' + NrfFunction: + $ref: '#/components/schemas/NrfFunction-Multiple' + NssfFunction: + $ref: '#/components/schemas/NssfFunction-Multiple' + SmsfFunction: + $ref: '#/components/schemas/SmsfFunction-Multiple' + LmfFunction: + $ref: '#/components/schemas/LmfFunction-Multiple' + NgeirFunction: + $ref: '#/components/schemas/NgeirFunction-Multiple' + SeppFunction: + $ref: '#/components/schemas/SeppFunction-Multiple' + NwdafFunction: + $ref: '#/components/schemas/NwdafFunction-Multiple' + ScpFunction: + $ref: '#/components/schemas/ScpFunction-Multiple' + NefFunction: + $ref: '#/components/schemas/NefFunction-Multiple' + Configurable5QISet: + $ref: '#/components/schemas/Configurable5QISet-Multiple' + Dynamic5QISet: + $ref: '#/components/schemas/Dynamic5QISet-Multiple' + + AmfFunction-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' + - type: object + properties: + plmnIdList: + $ref: 'nrNrm.yaml#/components/schemas/PlmnIdList' + amfIdentifier: + $ref: '#/components/schemas/AmfIdentifier' + sBIFqdn: + type: string + weightFactor: + $ref: '#/components/schemas/WeightFactor' + snssaiList: + $ref: 'nrNrm.yaml#/components/schemas/SnssaiList' + amfSet: + $ref: 'genericNrm.yaml#/components/schemas/Dn' + managedNFProfile: + $ref: '#/components/schemas/ManagedNFProfile' + commModelList: + $ref: '#/components/schemas/CommModelList' + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' + - type: object + properties: + EP_N2: + $ref: '#/components/schemas/EP_N2-Multiple' + EP_N8: + $ref: '#/components/schemas/EP_N8-Multiple' + EP_N11: + $ref: '#/components/schemas/EP_N11-Multiple' + EP_N12: + $ref: '#/components/schemas/EP_N12-Multiple' + EP_N14: + $ref: '#/components/schemas/EP_N14-Multiple' + EP_N15: + $ref: '#/components/schemas/EP_N15-Multiple' + EP_N17: + $ref: '#/components/schemas/EP_N17-Multiple' + EP_N20: + $ref: '#/components/schemas/EP_N20-Multiple' + EP_N22: + $ref: '#/components/schemas/EP_N22-Multiple' + EP_N26: + $ref: '#/components/schemas/EP_N26-Multiple' + EP_NLS: + $ref: '#/components/schemas/EP_NLS-Multiple' + EP_NLG: + $ref: '#/components/schemas/EP_NLG-Multiple' + AmfSet-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' + - type: object + properties: + plmnIdList: + $ref: 'nrNrm.yaml#/components/schemas/PlmnIdList' + nRTACList: + $ref: '#/components/schemas/TACList' + amfSetId: + $ref: '#/components/schemas/AmfSetId' + snssaiList: + $ref: 'nrNrm.yaml#/components/schemas/SnssaiList' + AmfRegion-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' + - type: object + properties: + plmnIdList: + $ref: 'nrNrm.yaml#/components/schemas/PlmnIdList' + nRTACList: + $ref: '#/components/schemas/TACList' + amfRegionId: + $ref: '#/components/schemas/AmfRegionId' + snssaiList: + $ref: 'nrNrm.yaml#/components/schemas/SnssaiList' + SmfFunction-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' + - type: object + properties: + plmnIdList: + $ref: 'nrNrm.yaml#/components/schemas/PlmnIdList' + nRTACList: + $ref: '#/components/schemas/TACList' + sBIFqdn: + type: string + snssaiList: + $ref: 'nrNrm.yaml#/components/schemas/SnssaiList' + managedNFProfile: + $ref: '#/components/schemas/ManagedNFProfile' + commModelList: + $ref: '#/components/schemas/CommModelList' + configurable5QISetRef: + $ref: 'genericNrm.yaml#/components/schemas/Dn' + dynamic5QISetRef: + $ref: 'genericNrm.yaml#/components/schemas/Dn' + + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' + - type: object + properties: + EP_N4: + $ref: '#/components/schemas/EP_N4-Multiple' + EP_N7: + $ref: '#/components/schemas/EP_N7-Multiple' + EP_N10: + $ref: '#/components/schemas/EP_N10-Multiple' + EP_N11: + $ref: '#/components/schemas/EP_N11-Multiple' + EP_N16: + $ref: '#/components/schemas/EP_N16-Multiple' + EP_S5C: + $ref: '#/components/schemas/EP_S5C-Multiple' + FiveQiDscpMappingSet: + $ref: '#/components/schemas/FiveQiDscpMappingSet-Single' + GtpUPathQoSMonitoringControl: + $ref: '#/components/schemas/GtpUPathQoSMonitoringControl-Single' + QFQoSMonitoringControl: + $ref: '#/components/schemas/QFQoSMonitoringControl-Single' + PredefinedPccRuleSet: + $ref: '#/components/schemas/PredefinedPccRuleSet-Single' + + UpfFunction-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' + - type: object + properties: + plmnIdList: + $ref: 'nrNrm.yaml#/components/schemas/PlmnIdList' + nRTACList: + $ref: '#/components/schemas/TACList' + snssaiList: + $ref: 'nrNrm.yaml#/components/schemas/SnssaiList' + managedNFProfile: + $ref: '#/components/schemas/ManagedNFProfile' + commModelList: + $ref: '#/components/schemas/CommModelList' + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' + - type: object + properties: + EP_N3: + $ref: '#/components/schemas/EP_N3-Multiple' + EP_N4: + $ref: '#/components/schemas/EP_N4-Multiple' + EP_N6: + $ref: '#/components/schemas/EP_N6-Multiple' + EP_N9: + $ref: '#/components/schemas/EP_N9-Multiple' + EP_S5U: + $ref: '#/components/schemas/EP_S5U-Multiple' + N3iwfFunction-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' + - type: object + properties: + plmnIdList: + $ref: 'nrNrm.yaml#/components/schemas/PlmnIdList' + commModelList: + $ref: '#/components/schemas/CommModelList' + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' + - type: object + properties: + EP_N3: + $ref: '#/components/schemas/EP_N3-Multiple' + EP_N4: + $ref: '#/components/schemas/EP_N4-Multiple' + PcfFunction-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' + - type: object + properties: + plmnIdList: + $ref: 'nrNrm.yaml#/components/schemas/PlmnIdList' + sBIFqdn: + type: string + snssaiList: + $ref: 'nrNrm.yaml#/components/schemas/SnssaiList' + managedNFProfile: + $ref: '#/components/schemas/ManagedNFProfile' + commModelList: + $ref: '#/components/schemas/CommModelList' + configurable5QISetRef: + $ref: 'genericNrm.yaml#/components/schemas/Dn' + dynamic5QISetRef: + $ref: 'genericNrm.yaml#/components/schemas/Dn' + + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' + - type: object + properties: + EP_N5: + $ref: '#/components/schemas/EP_N5-Multiple' + EP_N7: + $ref: '#/components/schemas/EP_N7-Multiple' + EP_N15: + $ref: '#/components/schemas/EP_N15-Multiple' + EP_N16: + $ref: '#/components/schemas/EP_N16-Multiple' + EP_Rx: + $ref: '#/components/schemas/EP_Rx-Multiple' + PredefinedPccRuleSet: + $ref: '#/components/schemas/PredefinedPccRuleSet-Single' + + AusfFunction-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' + - type: object + properties: + plmnIdList: + $ref: 'nrNrm.yaml#/components/schemas/PlmnIdList' + sBIFqdn: + type: string + snssaiList: + $ref: 'nrNrm.yaml#/components/schemas/SnssaiList' + managedNFProfile: + $ref: '#/components/schemas/ManagedNFProfile' + commModelList: + $ref: '#/components/schemas/CommModelList' + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' + - type: object + properties: + EP_N12: + $ref: '#/components/schemas/EP_N12-Multiple' + EP_N13: + $ref: '#/components/schemas/EP_N13-Multiple' + UdmFunction-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' + - type: object + properties: + plmnIdList: + $ref: 'nrNrm.yaml#/components/schemas/PlmnIdList' + sBIFqdn: + type: string + snssaiList: + $ref: 'nrNrm.yaml#/components/schemas/SnssaiList' + managedNFProfile: + $ref: '#/components/schemas/ManagedNFProfile' + commModelList: + $ref: '#/components/schemas/CommModelList' + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' + - type: object + properties: + EP_N8: + $ref: '#/components/schemas/EP_N8-Multiple' + EP_N10: + $ref: '#/components/schemas/EP_N10-Multiple' + EP_N13: + $ref: '#/components/schemas/EP_N13-Multiple' + UdrFunction-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' + - type: object + properties: + plmnIdList: + $ref: 'nrNrm.yaml#/components/schemas/PlmnIdList' + sBIFqdn: + type: string + snssaiList: + $ref: 'nrNrm.yaml#/components/schemas/SnssaiList' + managedNFProfile: + $ref: '#/components/schemas/ManagedNFProfile' + UdsfFunction-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' + - type: object + properties: + plmnIdList: + $ref: 'nrNrm.yaml#/components/schemas/PlmnIdList' + sBIFqdn: + type: string + snssaiList: + $ref: 'nrNrm.yaml#/components/schemas/SnssaiList' + managedNFProfile: + $ref: '#/components/schemas/ManagedNFProfile' + NrfFunction-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' + - type: object + properties: + plmnIdList: + $ref: 'nrNrm.yaml#/components/schemas/PlmnIdList' + sBIFqdn: + type: string + cNSIIdList: + $ref: '#/components/schemas/CNSIIdList' + nFProfileList: + $ref: '#/components/schemas/NFProfileList' + snssaiList: + $ref: 'nrNrm.yaml#/components/schemas/SnssaiList' + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' + - type: object + properties: + EP_N27: + $ref: '#/components/schemas/EP_N27-Multiple' + NssfFunction-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' + - type: object + properties: + plmnIdList: + $ref: 'nrNrm.yaml#/components/schemas/PlmnIdList' + sBIFqdn: + type: string + cNSIIdList: + $ref: '#/components/schemas/CNSIIdList' + nFProfileList: + $ref: '#/components/schemas/NFProfileList' + snssaiList: + $ref: 'nrNrm.yaml#/components/schemas/SnssaiList' + commModelList: + $ref: '#/components/schemas/CommModelList' + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' + - type: object + properties: + EP_N22: + $ref: '#/components/schemas/EP_N22-Multiple' + EP_N31: + $ref: '#/components/schemas/EP_N31-Multiple' + SmsfFunction-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' + - type: object + properties: + plmnIdList: + $ref: 'nrNrm.yaml#/components/schemas/PlmnIdList' + sBIFqdn: + type: string + managedNFProfile: + $ref: '#/components/schemas/ManagedNFProfile' + commModelList: + $ref: '#/components/schemas/CommModelList' + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' + - type: object + properties: + EP_N20: + $ref: '#/components/schemas/EP_N20-Multiple' + EP_N21: + $ref: '#/components/schemas/EP_N21-Multiple' + EP_MAP_SMSC: + $ref: '#/components/schemas/EP_MAP_SMSC-Multiple' + LmfFunction-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' + - type: object + properties: + plmnIdList: + $ref: 'nrNrm.yaml#/components/schemas/PlmnIdList' + managedNFProfile: + $ref: '#/components/schemas/ManagedNFProfile' + commModelList: + $ref: '#/components/schemas/CommModelList' + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' + - type: object + properties: + EP_NLS: + $ref: '#/components/schemas/EP_NLS-Multiple' + NgeirFunction-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' + - type: object + properties: + plmnIdList: + $ref: 'nrNrm.yaml#/components/schemas/PlmnIdList' + sBIFqdn: + type: string + snssaiList: + $ref: 'nrNrm.yaml#/components/schemas/SnssaiList' + managedNFProfile: + $ref: '#/components/schemas/ManagedNFProfile' + commModelList: + $ref: '#/components/schemas/CommModelList' + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' + - type: object + properties: + EP_N17: + $ref: '#/components/schemas/EP_N17-Multiple' + SeppFunction-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' + - type: object + properties: + plmnId: + $ref: 'nrNrm.yaml#/components/schemas/PlmnId' + sEPPType: + $ref: '#/components/schemas/SEPPType' + sEPPId: + type: integer + fqdn: + $ref: 'genericNrm.yaml#/components/schemas/Fqdn' + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' + - type: object + properties: + EP_N32: + $ref: '#/components/schemas/EP_N32-Multiple' + NwdafFunction-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' + - type: object + properties: + plmnIdList: + $ref: 'nrNrm.yaml#/components/schemas/PlmnIdList' + sBIFqdn: + type: string + snssaiList: + $ref: 'nrNrm.yaml#/components/schemas/SnssaiList' + managedNFProfile: + $ref: '#/components/schemas/ManagedNFProfile' + commModelList: + $ref: '#/components/schemas/CommModelList' + ScpFunction-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' + - type: object + properties: + supportedFuncList: + $ref: '#/components/schemas/SupportedFuncList' + address: + $ref: 'genericNrm.yaml#/components/schemas/HostAddr' + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' + NefFunction-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' + - type: object + properties: + sBIFqdn: + type: string + snssaiList: + $ref: 'nrNrm.yaml#/components/schemas/SnssaiList' + managedNFProfile: + $ref: '#/components/schemas/ManagedNFProfile' + capabilityList: + $ref: '#/components/schemas/CapabilityList' + isINEF: + type: boolean + isCAPIFSup: + type: boolean + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' + + ExternalAmfFunction-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' + - type: object + properties: + plmnIdList: + $ref: 'nrNrm.yaml#/components/schemas/PlmnIdList' + amfIdentifier: + $ref: '#/components/schemas/AmfIdentifier' + ExternalNrfFunction-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' + - type: object + properties: + plmnIdList: + $ref: 'nrNrm.yaml#/components/schemas/PlmnIdList' + ExternalNssfFunction-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' + - type: object + properties: + plmnIdList: + $ref: 'nrNrm.yaml#/components/schemas/PlmnIdList' + ExternalSeppFunction-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' + - type: object + properties: + plmnId: + $ref: 'nrNrm.yaml#/components/schemas/PlmnId' + sEPPId: + type: integer + fqdn: + $ref: 'genericNrm.yaml#/components/schemas/Fqdn' + + + EP_N2-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' + - type: object + properties: + localAddress: + $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' + remoteAddress: + $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' + EP_N3-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' + - type: object + properties: + localAddress: + $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' + remoteAddress: + $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' + epTransportRefs: + $ref: 'genericNrm.yaml#/components/schemas/DnList' + EP_N4-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' + - type: object + properties: + localAddress: + $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' + remoteAddress: + $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' + EP_N5-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' + - type: object + properties: + localAddress: + $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' + remoteAddress: + $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' + EP_N6-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' + - type: object + properties: + localAddress: + $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' + remoteAddress: + $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' + EP_N7-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' + - type: object + properties: + localAddress: + $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' + remoteAddress: + $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' + EP_N8-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' + - type: object + properties: + localAddress: + $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' + remoteAddress: + $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' + EP_N9-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' + - type: object + properties: + localAddress: + $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' + remoteAddress: + $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' + EP_N10-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' + - type: object + properties: + localAddress: + $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' + remoteAddress: + $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' + EP_N11-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' + - type: object + properties: + localAddress: + $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' + remoteAddress: + $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' + EP_N12-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' + - type: object + properties: + localAddress: + $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' + remoteAddress: + $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' + EP_N13-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' + - type: object + properties: + localAddress: + $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' + remoteAddress: + $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' + EP_N14-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' + - type: object + properties: + localAddress: + $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' + remoteAddress: + $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' + EP_N15-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' + - type: object + properties: + localAddress: + $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' + remoteAddress: + $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' + EP_N16-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' + - type: object + properties: + localAddress: + $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' + remoteAddress: + $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' + EP_N17-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' + - type: object + properties: + localAddress: + $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' + remoteAddress: + $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' + + EP_N20-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' + - type: object + properties: + localAddress: + $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' + remoteAddress: + $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' + + EP_N21-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' + - type: object + properties: + localAddress: + $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' + remoteAddress: + $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' + EP_N22-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' + - type: object + properties: + localAddress: + $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' + remoteAddress: + $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' + + EP_N26-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' + - type: object + properties: + localAddress: + $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' + remoteAddress: + $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' + EP_N27-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' + - type: object + properties: + localAddress: + $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' + remoteAddress: + $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' + + + EP_N31-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' + - type: object + properties: + localAddress: + $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' + remoteAddress: + $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' + EP_N32-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' + - type: object + properties: + remotePlmnId: + $ref: 'nrNrm.yaml#/components/schemas/PlmnId' + remoteSeppAddress: + $ref: 'genericNrm.yaml#/components/schemas/HostAddr' + remoteSeppId: + type: integer + n32cParas: + type: string + n32fPolicy: + type: string + withIPX: + type: boolean + + EP_S5C-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' + - type: object + properties: + localAddress: + $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' + remoteAddress: + $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' + EP_S5U-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' + - type: object + properties: + localAddress: + $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' + remoteAddress: + $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' + EP_Rx-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' + - type: object + properties: + localAddress: + $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' + remoteAddress: + $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' + EP_MAP_SMSC-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' + - type: object + properties: + localAddress: + $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' + remoteAddress: + $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' + EP_NLS-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' + - type: object + properties: + localAddress: + $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' + remoteAddress: + $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' + EP_NLG-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' + - type: object + properties: + localAddress: + $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' + remoteAddress: + $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' + + FiveQiDscpMappingSet-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + allOf: + - type: object + properties: + FiveQiDscpMappingList: + type: array + items: + $ref: '#/components/schemas/FiveQiDscpMapping' + + Configurable5QISet-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + allOf: + - type: object + properties: + configurable5QIs: + type: array + items: + $ref: '#/components/schemas/FiveQICharacteristics' + + Dynamic5QISet-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + allOf: + - type: object + properties: + dynamic5QIs: + type: array + items: + $ref: '#/components/schemas/FiveQICharacteristics' + + GtpUPathQoSMonitoringControl-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + allOf: + - type: object + properties: + gtpUPathQoSMonitoringState: + type: string + enum: + - ENABLED + - DISABLED + gtpUPathMonitoredSNSSAIs: + type: array + items: + $ref: 'nrNrm.yaml#/components/schemas/Snssai' + monitoredDSCPs: + type: array + items: + type: integer + minimum: 0 + maximum: 255 + isEventTriggeredGtpUPathMonitoringSupported: + type: boolean + isPeriodicGtpUMonitoringSupported: + type: boolean + isImmediateGtpUMonitoringSupported: + type: boolean + gtpUPathDelayThresholds: + $ref: '#/components/schemas/GtpUPathDelayThresholdsType' + gtpUPathMinimumWaitTime: + type: integer + gtpUPathMeasurementPeriod: + type: integer + + QFQoSMonitoringControl-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + allOf: + - type: object + properties: + qFQoSMonitoringState: + type: string + enum: + - ENABLED + - DISABLED + qFMonitoredSNSSAIs: + type: array + items: + $ref: 'nrNrm.yaml#/components/schemas/Snssai' + qFMonitored5QIs: + type: array + items: + type: integer + minimum: 0 + maximum: 255 + isEventTriggeredQFMonitoringSupported: + type: boolean + isPeriodicQFMonitoringSupported: + type: boolean + isSessionReleasedQFMonitoringSupported: + type: boolean + qFPacketDelayThresholds: + $ref: '#/components/schemas/QFPacketDelayThresholdsType' + qFMinimumWaitTime: + type: integer + qFMeasurementPeriod: + type: integer + + PredefinedPccRuleSet-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + allOf: + - type: object + properties: + predefinedPccRules: + type: array + items: + $ref: '#/components/schemas/PccRule' + +#-------- Definition of JSON arrays for name-contained IOCs ---------------------- + + SubNetwork-Multiple: + type: array + items: + $ref: '#/components/schemas/SubNetwork-Single' + ManagedElement-Multiple: + type: array + items: + $ref: '#/components/schemas/ManagedElement-Single' + AmfFunction-Multiple: + type: array + items: + $ref: '#/components/schemas/AmfFunction-Single' + SmfFunction-Multiple: + type: array + items: + $ref: '#/components/schemas/SmfFunction-Single' + UpfFunction-Multiple: + type: array + items: + $ref: '#/components/schemas/UpfFunction-Single' + N3iwfFunction-Multiple: + type: array + items: + $ref: '#/components/schemas/N3iwfFunction-Single' + PcfFunction-Multiple: + type: array + items: + $ref: '#/components/schemas/PcfFunction-Single' + AusfFunction-Multiple: + type: array + items: + $ref: '#/components/schemas/AusfFunction-Single' + UdmFunction-Multiple: + type: array + items: + $ref: '#/components/schemas/UdmFunction-Single' + UdrFunction-Multiple: + type: array + items: + $ref: '#/components/schemas/UdrFunction-Single' + UdsfFunction-Multiple: + type: array + items: + $ref: '#/components/schemas/UdsfFunction-Single' + NrfFunction-Multiple: + type: array + items: + $ref: '#/components/schemas/NrfFunction-Single' + NssfFunction-Multiple: + type: array + items: + $ref: '#/components/schemas/NssfFunction-Single' + SmsfFunction-Multiple: + type: array + items: + $ref: '#/components/schemas/SmsfFunction-Single' + LmfFunction-Multiple: + type: array + items: + $ref: '#/components/schemas/LmfFunction-Single' + NgeirFunction-Multiple: + type: array + items: + $ref: '#/components/schemas/NgeirFunction-Single' + SeppFunction-Multiple: + type: array + items: + $ref: '#/components/schemas/SeppFunction-Single' + NwdafFunction-Multiple: + type: array + items: + $ref: '#/components/schemas/NwdafFunction-Single' + ScpFunction-Multiple: + type: array + items: + $ref: '#/components/schemas/ScpFunction-Single' + NefFunction-Multiple: + type: array + items: + $ref: '#/components/schemas/NefFunction-Single' + + ExternalAmfFunction-Multiple: + type: array + items: + $ref: '#/components/schemas/ExternalAmfFunction-Single' + ExternalNrfFunction-Multiple: + type: array + items: + $ref: '#/components/schemas/ExternalNrfFunction-Single' + ExternalNssfFunction-Multiple: + type: array + items: + $ref: '#/components/schemas/ExternalNssfFunction-Single' + ExternalSeppFunction-Nultiple: + type: array + items: + $ref: '#/components/schemas/ExternalSeppFunction-Single' + + AmfSet-Multiple: + type: array + items: + $ref: '#/components/schemas/AmfSet-Single' + AmfRegion-Multiple: + type: array + items: + $ref: '#/components/schemas/AmfRegion-Single' + + EP_N2-Multiple: + type: array + items: + $ref: '#/components/schemas/EP_N2-Single' + EP_N3-Multiple: + type: array + items: + $ref: '#/components/schemas/EP_N3-Single' + EP_N4-Multiple: + type: array + items: + $ref: '#/components/schemas/EP_N4-Single' + EP_N5-Multiple: + type: array + items: + $ref: '#/components/schemas/EP_N5-Single' + EP_N6-Multiple: + type: array + items: + $ref: '#/components/schemas/EP_N6-Single' + EP_N7-Multiple: + type: array + items: + $ref: '#/components/schemas/EP_N7-Single' + EP_N8-Multiple: + type: array + items: + $ref: '#/components/schemas/EP_N8-Single' + EP_N9-Multiple: + type: array + items: + $ref: '#/components/schemas/EP_N9-Single' + EP_N10-Multiple: + type: array + items: + $ref: '#/components/schemas/EP_N10-Single' + EP_N11-Multiple: + type: array + items: + $ref: '#/components/schemas/EP_N11-Single' + EP_N12-Multiple: + type: array + items: + $ref: '#/components/schemas/EP_N12-Single' + EP_N13-Multiple: + type: array + items: + $ref: '#/components/schemas/EP_N13-Single' + EP_N14-Multiple: + type: array + items: + $ref: '#/components/schemas/EP_N14-Single' + EP_N15-Multiple: + type: array + items: + $ref: '#/components/schemas/EP_N15-Single' + EP_N16-Multiple: + type: array + items: + $ref: '#/components/schemas/EP_N16-Single' + EP_N17-Multiple: + type: array + items: + $ref: '#/components/schemas/EP_N17-Single' + + EP_N20-Multiple: + type: array + items: + $ref: '#/components/schemas/EP_N20-Single' + EP_N21-Multiple: + type: array + items: + $ref: '#/components/schemas/EP_N21-Single' + EP_N22-Multiple: + type: array + items: + $ref: '#/components/schemas/EP_N22-Single' + + EP_N26-Multiple: + type: array + items: + $ref: '#/components/schemas/EP_N26-Single' + EP_N27-Multiple: + type: array + items: + $ref: '#/components/schemas/EP_N27-Single' + + EP_N31-Multiple: + type: array + items: + $ref: '#/components/schemas/EP_N31-Single' + EP_N32-Multiple: + type: array + items: + $ref: '#/components/schemas/EP_N32-Single' + + EP_S5C-Multiple: + type: array + items: + $ref: '#/components/schemas/EP_S5C-Single' + EP_S5U-Multiple: + type: array + items: + $ref: '#/components/schemas/EP_S5U-Single' + EP_Rx-Multiple: + type: array + items: + $ref: '#/components/schemas/EP_Rx-Single' + EP_MAP_SMSC-Multiple: + type: array + items: + $ref: '#/components/schemas/EP_MAP_SMSC-Single' + EP_NLS-Multiple: + type: array + items: + $ref: '#/components/schemas/EP_NLS-Single' + EP_NLG-Multiple: + type: array + items: + $ref: '#/components/schemas/EP_NLG-Single' + Configurable5QISet-Multiple: + type: array + items: + $ref: '#/components/schemas/Configurable5QISet-Single' + Dynamic5QISet-Multiple: + type: array + items: + $ref: '#/components/schemas/Dynamic5QISet-Single' + + + +#------------ Definitions in TS 28.541 for TS 28.532 ----------------------------- + + resources-5gcNrm: + oneOf: + - $ref: '#/components/schemas/SubNetwork-Single' + - $ref: '#/components/schemas/ManagedElement-Single' + - $ref: '#/components/schemas/AmfFunction-Single' + - $ref: '#/components/schemas/SmfFunction-Single' + - $ref: '#/components/schemas/UpfFunction-Single' + - $ref: '#/components/schemas/N3iwfFunction-Single' + - $ref: '#/components/schemas/PcfFunction-Single' + - $ref: '#/components/schemas/AusfFunction-Single' + - $ref: '#/components/schemas/UdmFunction-Single' + - $ref: '#/components/schemas/UdrFunction-Single' + - $ref: '#/components/schemas/UdsfFunction-Single' + - $ref: '#/components/schemas/NrfFunction-Single' + - $ref: '#/components/schemas/NssfFunction-Single' + - $ref: '#/components/schemas/SmsfFunction-Single' + - $ref: '#/components/schemas/LmfFunction-Single' + - $ref: '#/components/schemas/NgeirFunction-Single' + - $ref: '#/components/schemas/SeppFunction-Single' + - $ref: '#/components/schemas/NwdafFunction-Single' + - $ref: '#/components/schemas/ScpFunction-Single' + - $ref: '#/components/schemas/NefFunction-Single' + + - $ref: '#/components/schemas/ExternalAmfFunction-Single' + - $ref: '#/components/schemas/ExternalNrfFunction-Single' + - $ref: '#/components/schemas/ExternalNssfFunction-Single' + - $ref: '#/components/schemas/ExternalSeppFunction-Single' + + - $ref: '#/components/schemas/AmfSet-Single' + - $ref: '#/components/schemas/AmfRegion-Single' + - $ref: '#/components/schemas/QFQoSMonitoringControl-Single' + - $ref: '#/components/schemas/GtpUPathQoSMonitoringControl-Single' + + - $ref: '#/components/schemas/EP_N2-Single' + - $ref: '#/components/schemas/EP_N3-Single' + - $ref: '#/components/schemas/EP_N4-Single' + - $ref: '#/components/schemas/EP_N5-Single' + - $ref: '#/components/schemas/EP_N6-Single' + - $ref: '#/components/schemas/EP_N7-Single' + - $ref: '#/components/schemas/EP_N8-Single' + - $ref: '#/components/schemas/EP_N9-Single' + - $ref: '#/components/schemas/EP_N10-Single' + - $ref: '#/components/schemas/EP_N11-Single' + - $ref: '#/components/schemas/EP_N12-Single' + - $ref: '#/components/schemas/EP_N13-Single' + - $ref: '#/components/schemas/EP_N14-Single' + - $ref: '#/components/schemas/EP_N15-Single' + - $ref: '#/components/schemas/EP_N16-Single' + - $ref: '#/components/schemas/EP_N17-Single' + + - $ref: '#/components/schemas/EP_N20-Single' + - $ref: '#/components/schemas/EP_N21-Single' + - $ref: '#/components/schemas/EP_N22-Single' + + - $ref: '#/components/schemas/EP_N26-Single' + - $ref: '#/components/schemas/EP_N27-Single' + + - $ref: '#/components/schemas/EP_N31-Single' + - $ref: '#/components/schemas/EP_N31-Single' + + - $ref: '#/components/schemas/EP_S5C-Single' + - $ref: '#/components/schemas/EP_S5U-Single' + - $ref: '#/components/schemas/EP_Rx-Single' + - $ref: '#/components/schemas/EP_MAP_SMSC-Single' + - $ref: '#/components/schemas/EP_NLS-Single' + - $ref: '#/components/schemas/EP_NLG-Single' + - $ref: '#/components/schemas/Configurable5QISet-Single' + - $ref: '#/components/schemas/FiveQiDscpMappingSet-Single' + - $ref: '#/components/schemas/PredefinedPccRuleSet-Single' + - $ref: '#/components/schemas/Dynamic5QISet-Single' diff --git a/OpenAPI/PerDataFileReportMnS.yaml b/OpenAPI/PerDataFileReportMnS.yaml new file mode 100644 index 000000000..83fd77acb --- /dev/null +++ b/OpenAPI/PerDataFileReportMnS.yaml @@ -0,0 +1,13 @@ +openapi: 3.0.1 +info: + title: TS 28.532 File data reporting Service + version: 16.6.0 + description: >- + OAS 3.0.1 specification of the File data reporting Management Service © 2020, + 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). All + rights reserved. +externalDocs: + description: 3GPP TS 28.532 V16.5.0; Generic management services + url: 'http://www.3gpp.org/ftp/Specs/archive/28_series/28.532/' +paths: {} + diff --git a/OpenAPI/PerMeasJobCtlMnS.yaml b/OpenAPI/PerMeasJobCtlMnS.yaml new file mode 100644 index 000000000..b6abe58b2 --- /dev/null +++ b/OpenAPI/PerMeasJobCtlMnS.yaml @@ -0,0 +1,280 @@ +openapi: 3.0.1 +info: + title: TS 28.550 Performance Measurement Job Control Service + version: 16.5.0 + description: >- + OAS 3.0.1 specification of the Performance Measurement Job Control Service + @ 2020, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). + All rights reserved. +externalDocs: + description: 3GPP TS 28.550 V16.5.0; Performance assurance + url: http://www.3gpp.org/ftp/Specs/archive/28_series/28.550/ +servers: + - url: 'http://{URI-DN-prefix}/{root}/PerfMeasJobCtrlMnS/v1650/{LDN-first-part}' + variables: + URI-DN-prefix: + description: See subclause 4.4 of TS 32.158 + default: example.com + root: + description: See subclause 4.4 of TS 32.158 + default: 3GPPManagement + LDN-first-part: + description: See subclause 4.4 of TS 32.158 + default: '' +paths: + /measJobs: + post: + summary: Create a measurement job + description: To create a measurement job the representation of the measurement job is POSTed on the /measJobs collection resource. + requestBody: + required: true + content: + application/json: + schema: + $ref: '#/components/schemas/measJobCreation-RequestType' + responses: + '201': + description: Success case ("201 Created"). The representation of the newly created measurement job resource shall be returned. + content: + application/json: + schema: + $ref: '#/components/schemas/measJobCreation-ResponseType' + '202': + description: Partial success case ("202 Partically created"). The representation of the newly created measurement job resource with unsupported list shall be returned. + content: + application/json: + schema: + $ref: '#/components/schemas/measJobCreation-ResponseType' + default: + description: Error case. + content: + application/json: + schema: + $ref: '#/components/schemas/error-ResponseType' + get: + summary: Read resources of measurement jobs + description: 'With HTTP GET, resources of measurement jobs are read. The resources to be read are identified with the path component (base resource) and the query component (jobIdList) of the URI. The fields query component allows to select the resource properties to be returned.' + parameters: + - name: jobIdList + in: query + description: This parameter identifies the list of jobId to select the resources from the collection resources identified with the path component of the URI. + required: true + schema: + type: array + items: + type: string + responses: + '200': + description: 'Success case ("200 OK"). The resources identified in the request for retrieval are returned in the response message body. In case the fields query parameter is used, the selected resources are returned.' + content: + application/json: + schema: + $ref: '#/components/schemas/measJobsRetrieval-ResponseType' + default: + description: Error case. + content: + application/json: + schema: + $ref: '#/components/schemas/error-ResponseType' + '/measJobs/{jobId}': + get: + summary: Read resource of a single measurement job + description: 'With HTTP GET, resource of a measurement job is read. The resource to be read is identified with the path component of the URI.' + parameters: + - name: jobId + in: path + description: Identifies the measurement job to be read. + required: true + schema: + $ref: '#/components/schemas/uri-Type' + responses: + '200': + description: 'Success case ("200 OK"). The resource identified in the path for retrieval is returned in the response message body. ' + content: + application/json: + schema: + $ref: '#/components/schemas/measJobsRetrieval-ResponseType' + default: + description: Error case. + content: + application/json: + schema: + $ref: '#/components/schemas/error-ResponseType' + delete: + summary: Delete a single measurement job + description: The measurement job is deleted by deleting the corresponding measurement job resource. The resource to be deleted is identified with the path component of the URI. + parameters: + - name: jobId + in: path + description: Identifies the measurement job to be deleted. + required: true + schema: + $ref: '#/components/schemas/uri-Type' + responses: + '204': + description: Success case ("204 No Content"). The measurement job resource has been deleted. The response message body is absent. + default: + description: Error case. + content: + application/json: + schema: + $ref: '#/components/schemas/error-ResponseType' +components: + schemas: + dateTime-Type: + type: string + format: date-Time + uri-Type: + type: string + measJobCreation-RequestType: + type: object + properties: + iOCName: + type: string + iOCInstanceList: + type: array + items: + $ref: '#/components/schemas/uri-Type' + measurementCategoryList: + type: array + items: + type: string + reportingMethod: + $ref: '#/components/schemas/reportingMethod-Type' + granularityPeriod: + type: integer + reportingPeriod: + type: integer + startTime: + $ref: '#/components/schemas/dateTime-Type' + stopTime: + $ref: '#/components/schemas/dateTime-Type' + schedule: + $ref: '#/components/schemas/schedule-Type' + streamTarget: + type: string + priority: + $ref: '#/components/schemas/priority-Type' + reliability: + type: string + measJobCreation-ResponseType: + type: object + properties: + unsupportedList: + type: array + items: + $ref: '#/components/schemas/unsupportedMeas-Type' + measJobsRetrieval-ResponseType: + type: object + properties: + jobInfoList: + type: array + items: + $ref: '#/components/schemas/measJobInfo-ResourceType' + error-ResponseType: + type: object + properties: + error: + type: object + properties: + errorInfo: + type: string + measJobInfo-ResourceType: + type: object + properties: + href: + $ref: '#/components/schemas/uri-Type' + iOCName: + type: string + iOCInstanceList: + type: array + items: + $ref: '#/components/schemas/uri-Type' + measurementCategoryList: + type: array + items: + type: string + reportingMethod: + $ref: '#/components/schemas/reportingMethod-Type' + granularityPeriod: + type: integer + reportingPeriod: + type: integer + startTime: + $ref: '#/components/schemas/dateTime-Type' + stopTime: + $ref: '#/components/schemas/dateTime-Type' + schedule: + $ref: '#/components/schemas/schedule-Type' + streamTarget: + type: string + priority: + $ref: '#/components/schemas/priority-Type' + reliability: + type: string + schedule-Type: + type: object + properties: + scheduleOption: + $ref: '#/components/schemas/scheduleOption-Type' + dailySchedule: + type: array + items: + $ref: '#/components/schemas/timeInterval-Type' + weeklySchedule: + type: array + items: + $ref: '#/components/schemas/scheduleOfDay-Type' + timeInterval-Type: + type: object + properties: + intervalStart: + type: string + format: Time + intervalEnd: + type: string + format: Time + scheduleOfDay-Type: + type: object + properties: + dayOfWeek: + $ref: '#/components/schemas/dayOfWeek-Type' + intervalsOfDay: + type: array + items: + $ref: '#/components/schemas/timeInterval-Type' + unsupportedMeas-Type: + type: object + properties: + iOCInstance: + $ref: '#/components/schemas/uri-Type' + measurementTypeName: + type: string + reason: + type: string + reportingMethod-Type: + type: string + enum: + - file + - streaming + priority-Type: + type: string + enum: + - low + - medium + - high + scheduleOption-Type: + type: string + enum: + - daily + - weekly + dayOfWeek-Type: + type: string + enum: + - Monday + - Tuesday + - Wednesday + - Thursday + - Friday + - Saturday + - Sunday diff --git a/OpenAPI/PerThresMonMnS.yaml b/OpenAPI/PerThresMonMnS.yaml new file mode 100644 index 000000000..923640a11 --- /dev/null +++ b/OpenAPI/PerThresMonMnS.yaml @@ -0,0 +1,102 @@ +openapi: 3.0.1 +info: + title: TS 28.532 Performance Threshold Monitoring Service + version: 16.4.0 + description: OAS 3.0.1 specification of the Performance Threshold Monitoring Service +servers: + - url: 'http://{monitoringNotifTarget}' + variables: + monitoringNotifTarget: + description: >- + The open API server of the performance threshold monitoring service is + located in the consumer side, see monitoringNotifTarget attribute of + the IOC ThresholdMonitor defined in 3GPP TS 28.622 [11]. + default: example.com +paths: + /notificationSink: + post: + summary: Send notifications about performance threshold crossing + description: To send a notifyThresholdCrossing notification + requestBody: + required: true + content: + application/json: + schema: + $ref: '#/components/schemas/notifyThresholdCrossing-NotifType' + responses: + '204': + description: >- + Success case ("204 No Content"). The notification is successfully + delivered. The response message body is absent. + default: + description: Error case. + content: + application/json: + schema: + $ref: '#/components/schemas/error-ResponseType' +components: + schemas: + dateTime-Type: + type: string + format: date-Time + uri-Type: + type: string + long-Type: + type: string + format: long + thresholdLevel-Type: + type: integer + measurementTypeName-Type: + type: string + measurementValue-Type: + type: string + additionalText-Type: + type: string + error-ResponseType: + type: object + properties: + error: + type: object + properties: + errorInfo: + type: string + header-Type: + description: Header used in notifications as notification header + type: object + properties: + uri: + $ref: '#/components/schemas/uri-Type' + notificationId: + $ref: '#/components/schemas/notificationId-Type' + notificationType: + $ref: '#/components/schemas/notificationType-Type' + eventTime: + $ref: '#/components/schemas/dateTime-Type' + notificationId-Type: + $ref: '#/components/schemas/long-Type' + notificationType-Type: + type: string + enum: + - notifyThresholdCrossing + notifyThresholdCrossing-NotifType: + type: object + properties: + header: + $ref: '#/components/schemas/header-Type' + body: + type: object + properties: + startOfMonitoringGP: + $ref: '#/components/schemas/dateTime-Type' + endOfMonitoringGP: + $ref: '#/components/schemas/dateTime-Type' + monitoredObjectInstance: + $ref: '#/components/schemas/uri-Type' + thresholdLevel: + $ref: '#/components/schemas/thresholdLevel-Type' + measurementTypeName: + $ref: '#/components/schemas/measurementTypeName-Type' + measurementValue: + $ref: '#/components/schemas/measurementValue-Type' + additionalText: + $ref: '#/components/schemas/additionalText-Type' diff --git a/OpenAPI/PerfDataStreamingMnS.yaml b/OpenAPI/PerfDataStreamingMnS.yaml new file mode 100644 index 000000000..e040e14c8 --- /dev/null +++ b/OpenAPI/PerfDataStreamingMnS.yaml @@ -0,0 +1,363 @@ +openapi: 3.0.1 +info: + title: TS 28.550 Performance Data Streaming Service + version: 16.3.0 + description: OAS 3.0.1 specification of the Performance Data Streaming Service +servers: + - url: 'http://{streamTarget}/PerfDataStreamMnS/v1630' + description: This URL is used for posting the set of information about streams supported on the connection between the producer and the consumer. + variables: + streamTarget: + description: 'The open API server of the performance data streaming service is located in the consumer side,and the “streamTarget” part corresponds to the streamTarget parameter provided in the createMeasurementJob operation (see clause 6.1.1.2) or the streamTarget attribute of the MOI of MeasurementControlor MeasurementReader, see 3GPP TS 28.622 [5]).' + default: example.com + - url: 'wss://{streamTarget}/PerfDataStreamMnS/v1630/streamingConnection' + description: This URL is used for establishing the WebSocket connection for the performance data streaming service. + variables: + streamTarget: + description: 'The open API server of the performance data streaming service is located in the consumer side,and the “streamTarget” part corresponds to the streamTarget parameter provided in the createMeasurementJob operation (see clause 6.1.1.2) or the streamTarget attribute of the MOI of MeasurementControlor MeasurementReader, see 3GPP TS 28.622 [5]).' + default: example.com +paths: + /streamInfoList: + post: + summary: The set of information about the streams sent from the producer to the consumer + description: To send the streamInfoList from the producer to the consumer + requestBody: + required: true + content: + application/json: + schema: + $ref: '#/components/schemas/streamInfoListPost-RequestType' + responses: + '201': + description: Success case ("201 Posted"). The streamInfoList is successfully posted. + content: + application/json: + schema: + $ref: '#/components/schemas/streamInfoListPost-ResponseType' + '202': + description: Partial success case ("202 Partially posted"). The representation of the posted resource on stream information. + content: + application/json: + schema: + $ref: '#/components/schemas/streamInfoListPost-ResponseType' + default: + description: Error case. + content: + application/json: + schema: + $ref: '#/components/schemas/error-ResponseType' + get: + summary: Read resources of stream information from the streaming consumer + description: 'With HTTP GET, resources of stream information are read. The resources to be read are identified with the path component (base resource) and the query component (streamIdList) of the URI. The fields query component allows to select the resource properties to be returned.' + parameters: + - name: streamIdList + in: query + description: This parameter identifies the list of streamId to select from the collection resources identified with the path component of the URI. + required: true + schema: + type: array + items: + type: integer + responses: + '200': + description: 'Success case ("200 OK"). The resources identified in the request for retrieval are returned in the response message body. In case the fields query parameter is used, the selected resources are returned.' + content: + application/json: + schema: + $ref: '#/components/schemas/listOfStreamInfoRetrieval-ResponseType' + '202': + description: Partial success case ("202 Partially retrieved"). The representation of the retrieved resources on stream information. + content: + application/json: + schema: + $ref: '#/components/schemas/listOfStreamInfoRetrieval-ResponseType' + default: + description: Error case. + content: + application/json: + schema: + $ref: '#/components/schemas/error-ResponseType' + patch: + summary: Update resources of stream information to the streaming consumer + description: 'With HTTP PATCH, resources of stream information are to be updated. The resources to be updated are identified with the path component (base resource) and the query component (streamIdList) of the URI. The fields query component allows to select the resource properties to be updated.' + parameters: + - name: streamIdList + in: query + description: This parameter identifies the list of streamId to select from the collection resources identified with the path component of the URI. + required: true + schema: + type: array + items: + type: integer + requestBody: + required: true + content: + application/json: + schema: + $ref: '#/components/schemas/listOfStreamInfoToUpdate-RequestType' + responses: + '200': + description: Success case ("200 OK"). The resources selected by the query parameter are updated and returned in the response message body. + content: + application/json: + schema: + $ref: '#/components/schemas/listOfStreamInfoUpdate-ResponseType' + '202': + description: Partial success case ("202 Partially updated"). The representation of the updated resources on stream information + content: + application/json: + schema: + $ref: '#/components/schemas/listOfStreamInfoUpdate-ResponseType' + default: + description: Error case. + content: + application/json: + schema: + $ref: '#/components/schemas/error-ResponseType' + delete: + summary: The information of streams to be deleted by the producer to the consumer + description: 'With HTTP DELETE, resources of stream information are to be deleted. The resources to be deleted are identified with the path component (base resource) and the query component (streamIdList) of the URI. The fields query component allows to select the resource properties to be deleted.' + parameters: + - name: streamIdList + in: query + description: This parameter identifies the list of streamId to select from the collection resources identified with the path component of the URI. + required: true + schema: + type: array + items: + type: integer + responses: + '204': + description: Success case ("204 No Content"). The stream information resource has been deleted. The response message body is absent. + default: + description: Error case. + content: + application/json: + schema: + $ref: '#/components/schemas/error-ResponseType' + '/streamInfoList/{streamId}': + get: + summary: Read resource of the stream information from the streaming consumer + description: 'With HTTP GET, resource of stream information is read. The resource to be read is identified with the path component the URI.' + parameters: + - name: streamId + in: path + description: Identifies the stream for which the information is to be retrieved. + required: true + schema: + $ref: '#/components/schemas/uri-Type' + responses: + '200': + description: Success case ("200 OK"). The resource identified in the request for retrieval is returned in the response message body. + content: + application/json: + schema: + $ref: '#/components/schemas/listOfStreamInfoRetrieval-ResponseType' + default: + description: Error case. + content: + application/json: + schema: + $ref: '#/components/schemas/error-ResponseType' + patch: + summary: Update the resource of stream information to the streaming consumer + description: 'With HTTP PATCH, resource of stream information is to be updated. The resource to be updated is identified by the path component of the URI. ' + parameters: + - name: streamId + in: path + description: Identifies the stream for which the information is to be updated. + required: true + schema: + $ref: '#/components/schemas/uri-Type' + requestBody: + required: true + content: + application/json: + schema: + $ref: '#/components/schemas/streamInfoToUpdate-RequestType' + responses: + '200': + description: Success case ("200 OK"). The resources identified by the path of the URI is updated and returned in the response message body. + content: + application/json: + schema: + $ref: '#/components/schemas/streamInfoUpdate-ResponseType' + default: + description: Error case. + content: + application/json: + schema: + $ref: '#/components/schemas/error-ResponseType' + delete: + summary: The stream information to be deleted by the producer to the consumer + description: 'With HTTP DELETE, resource of stream information identified by the path component of the URI is to be deleted.' + parameters: + - name: streamId + in: path + description: Identifies the stream for which the information is to be deleted + required: true + schema: + $ref: '#/components/schemas/uri-Type' + responses: + '204': + description: Success case ("204 No Content"). The stream information resource has been deleted. The response message body is absent. + default: + description: Error case. + content: + application/json: + schema: + $ref: '#/components/schemas/error-ResponseType' + /streamConnection: + get: + summary: The connection for streaming from the producer to the consumer + description: To establish the WebSocket connection between the producer and the consumer. The HTTP version of this operation shall not be earlier than HTTP/1.1 + parameters: + - in: header + name: Upgrade + required: true + schema: + $ref: '#/components/schemas/Upgrade-HeaderType' + - in: header + name: Connection + required: true + schema: + $ref: '#/components/schemas/Connection-HeaderType' + - in: header + name: Sec-WebSocket-Key + required: true + schema: + $ref: '#/components/schemas/Sec-WebSocket-Key-HeaderType' + - in: header + name: Sec-WebSocket-Version + required: true + schema: + $ref: '#/components/schemas/Sec-WebSocket-Version-HeaderType' + responses: + '101': + description: Success case ("101 Switching Protocols "). The connection has been successfully switched to WebSocket. The response message body is absent. + headers: + Upgrade: + schema: + $ref: '#/components/schemas/Upgrade-HeaderType' + Connection: + schema: + $ref: '#/components/schemas/Connection-HeaderType' + Sec-WebSocket-Accept-HeaderType: + schema: + $ref: '#/components/schemas/Sec-WebSocket-Accept-HeaderType' + default: + description: Error case. + content: + application/json: + schema: + $ref: '#/components/schemas/error-ResponseType' +components: + schemas: + uri-Type: + type: string + streamInfoIn-Type: + type: object + properties: + streamId: + type: integer + iOCInstance: + $ref: '#/components/schemas/uri-Type' + measTypes: + type: array + items: + type: string + streamInfoOut-Type: + type: object + properties: + streamId: + $ref: '#/components/schemas/uri-Type' + iOCInstance: + $ref: '#/components/schemas/uri-Type' + measTypes: + type: array + items: + type: string + error-ResponseType: + type: object + properties: + error: + type: object + properties: + errorInfo: + type: string + streamInfoListPost-RequestType: + type: object + properties: + streamInfoList: + type: array + items: + $ref: '#/components/schemas/streamInfoIn-Type' + streamInfoListPost-ResponseType: + type: object + properties: + streamInfoListPosted: + type: array + items: + $ref: '#/components/schemas/streamInfoOut-Type' + streamInfoRetrieval-ResponseType: + type: object + properties: + streamInfoOut: + $ref: '#/components/schemas/streamInfoOut-Type' + listOfStreamInfoRetrieval-ResponseType: + type: object + properties: + listOfStreamInfoOut: + type: array + items: + $ref: '#/components/schemas/streamInfoOut-Type' + streamInfoToUpdatePropertyType: + type: object + properties: + iOCInstance: + description: 'The updated measured object instance, empty value means no update.' + allOf: + - $ref: '#/components/schemas/uri-Type' + measTypes: + description: 'The updated list of measurement type, empty value means no update.' + type: array + items: + type: string + streamInfoToUpdate-RequestType: + type: object + properties: + streamInfoToUpdate: + $ref: '#/components/schemas/streamInfoToUpdatePropertyType' + listOfStreamInfoToUpdate-RequestType: + type: object + properties: + listOfStreamInfoToUpdate: + type: array + items: + $ref: '#/components/schemas/streamInfoToUpdatePropertyType' + streamInfoUpdate-ResponseType: + type: object + properties: + streamInfoUpdated: + $ref: '#/components/schemas/streamInfoOut-Type' + listOfStreamInfoUpdate-ResponseType: + type: object + properties: + listOfStreamInfoUpdated: + type: array + items: + $ref: '#/components/schemas/streamInfoOut-Type' + Upgrade-HeaderType: + type: string + enum: + - websocket + Connection-HeaderType: + type: string + enum: + - Upgrade + Sec-WebSocket-Key-HeaderType: + type: string + Sec-WebSocket-Version-HeaderType: + type: string + Sec-WebSocket-Accept-HeaderType: + type: string diff --git a/OpenAPI/README.md b/OpenAPI/README.md new file mode 100644 index 000000000..9de057463 --- /dev/null +++ b/OpenAPI/README.md @@ -0,0 +1,73 @@ +# 3GPP SA5 models and MnS OpenAPI definitions + +(c) 2020, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). All rights reserved. + +The links below will open the Swagger Editor/UI and auto-load the OpenAPI YAML file of each API: + + +## Network Resource Models (NRM) + +* Generic NRM (TS 28.623) +([Editor](https://forge.3gpp.org/swagger/tools/loader.html?yaml=OpenAPI/genericNrm.yaml)) +([UI](https://forge.3gpp.org/swagger/tools/loader.html?action=ui&yaml=OpenAPI/genericNrm.yaml)) + +* Common NRM definitions (TS 28.623) +([Editor](https://forge.3gpp.org/swagger/tools/loader.html?yaml=OpenAPI/comDefs.yaml)) +([UI](https://forge.3gpp.org/swagger/tools/loader.html?action=ui&yaml=OpenAPI/comDefs.yaml)) + +* NR NRM (TS 28.541) +([Editor](https://forge.3gpp.org/swagger/tools/loader.html?yaml=OpenAPI/nrNrm.yaml)) +([UI](https://forge.3gpp.org/swagger/tools/loader.html?action=ui&yaml=OpenAPI/nrNrm.yaml)) + +* 5GC NRM (TS 28.541) +([Editor](https://forge.3gpp.org/swagger/tools/loader.html?yaml=OpenAPI/5gcNrm.yaml)) +([UI](https://forge.3gpp.org/swagger/tools/loader.html?action=ui&yaml=OpenAPI/5gcNrm.yaml)) + +* Slice NRM (TS 28.541) +([Editor](https://forge.3gpp.org/swagger/tools/loader.html?yaml=OpenAPI/sliceNrm.yaml)) +([UI](https://forge.3gpp.org/swagger/tools/loader.html?action=ui&yaml=OpenAPI/sliceNrm.yaml)) + +* Communication Service Assurance NRM (TS 28.536) +([Editor](https://forge.3gpp.org/swagger/tools/loader.html?yaml=OpenAPI/coslaNrm.yaml)) +([UI](https://forge.3gpp.org/swagger/tools/loader.html?action=ui&yaml=OpenAPI/coslaNrm.yaml)) + +## Management Services (MnS) + +* Provisioning MnS (TS 28.532) +([Editor](https://forge.3gpp.org/swagger/tools/loader.html?yaml=OpenAPI/provMnS.yaml)) +([UI](https://forge.3gpp.org/swagger/tools/loader.html?action=ui&yaml=OpenAPI/provMnS.yaml)) + +* Fault Supervision MnS (TS 28.532) +([Editor](https://forge.3gpp.org/swagger/tools/loader.html?yaml=OpenAPI/faultMnS.yaml)) +([UI](https://forge.3gpp.org/swagger/tools/loader.html?action=ui&yaml=OpenAPI/faultMnS.yaml)) + +* Performance Measurement Job Control MnS (28.550) +([Editor](https://forge.3gpp.org/swagger/tools/loader.html?yaml=OpenAPI/PerMeasJobCtlMnS.yaml)) +([UI](https://forge.3gpp.org/swagger/tools/loader.html?action=ui&yaml=OpenAPI/PerMeasJobCtlMnS.yaml)) + +* Performance Data File Reporting MnS (TS 28.532) +([Editor](https://forge.3gpp.org/swagger/tools/loader.html?yaml=OpenAPI/PerDataFileReportMnS.yaml)) +([UI](https://forge.3gpp.org/swagger/tools/loader.html?action=ui&yaml=OpenAPI/PerDataFileReportMnS.yaml)) + +* Performance Threshold Monitoring MnS (TS 28.532) +([Editor](https://forge.3gpp.org/swagger/tools/loader.html?yaml=OpenAPI/PerThresMonMnS.yaml)) +([UI](https://forge.3gpp.org/swagger/tools/loader.html?action=ui&yaml=OpenAPI/PerThresMonMnS.yaml)) + +* Heartbeat Notifications(TS 28.532) +([Editor](https://forge.3gpp.org/swagger/tools/loader.html?yaml=OpenAPI/heartbeatNtf.yaml)) +([UI](https://forge.3gpp.org/swagger/tools/loader.html?action=ui&yaml=OpenAPI/heartbeatNtf.yaml)) + +* Streaming Data Reporting MnS (TS 28.532) +([Editor](https://forge.3gpp.org/swagger/tools/loader.html?yaml=OpenAPI/streamingDataMnS.yaml)) +([UI](https://forge.3gpp.org/swagger/tools/loader.html?action=ui&yaml=OpenAPI/streamingDataMnS.yaml)) + +## Tools + +* [Frontend](https://forge.3gpp.org/swagger/tools/GitlabOpenAPIFrontend.htm) to invoke the Swagger Editor, Swagger UI, or to parse OpenAPI files with APIDevTools Swagger Parser/Validator, or to search for APIs referencing a data structure +* [API Parser/Linter](https://forge.3gpp.org/swagger/tools/parser.html) to parse OpenAPI files with APIDevTools Swagger Parser/Validator and run a number of [lint](https://en.wikipedia.org/wiki/Lint_\(software\)) rules to improve API quality +* [Data Type Finder](https://forge.3gpp.org/swagger/tools/types.html) to find the impacted APIs due to a change on a given data type +* [API Versions Overview](https://forge.3gpp.org/swagger/tools/versions.html) to show a comprehensive report of the versions of all APIs in the repository + +## Other 3GPP API definitions + +* [CT4](https://forge.3gpp.org/rep/3GPP/5G_APIs) specifications. diff --git a/OpenAPI/comDefs.yaml b/OpenAPI/comDefs.yaml new file mode 100644 index 000000000..04ab65161 --- /dev/null +++ b/OpenAPI/comDefs.yaml @@ -0,0 +1,84 @@ +openapi: 3.0.1 +info: + title: Common Type Definitions + version: 16.3.0 + description: >- + OAS 3.0.1 specification of common type definitions in the Generic NRM + © 2020, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). + All rights reserved. +externalDocs: + description: 3GPP TS 28.623 V16.3.0; Generic NRM, Common Type Definitions + url: http://www.3gpp.org/ftp/Specs/archive/28_series/28.623/ +paths: {} +components: + schemas: + Long: + type: string + format: long + Float: + type: string + format: float + DateTime: + type: string + format: date-Time + Dn: + type: string + Uri: + type: string + AttributeNameValuePairSet: + type: object + minProperties: 1 + AttributeValueChangeSet: + description: >- + The key in this map is the attribute name. The value of each key is an array. + When only one item is present in the array, it carries the new attribute + value. If two items are present, then the first item carries the old value + and the second item the new value. The items can be of any type including null. + type: object + additionalProperties: + type: array + minItems: 1 + maxItems: 2 + items: + nullable: true + Filter: + type: string + SystemDN: + type: string + NotificationId: + type: integer + NotificationHeader: + description: >- + Header used for all notifications types + type: object + required: + - uri + - notificationId + - notificationType + - eventTime + - systemDn + properties: + uri: + $ref: '#/components/schemas/Uri' + notificationId: + $ref: '#/components/schemas/NotificationId' + notificationType: + oneOf: + - $ref: 'faultMnS.yaml#/components/schemas/AlarmNotificationTypes' + #- $ref: 'provMnS.yaml#/components/schemas/CmNotificationTypes' + # more to be added + eventTime: + $ref: '#/components/schemas/DateTime' + systemDN: + $ref: '#/components/schemas/SystemDN' + ErrorResponse: + description: >- + Default schema for the response message body in case the request + is not successful. + type: object + properties: + error: + type: object + properties: + errorInfo: + type: string diff --git a/OpenAPI/coslaNrm.yaml b/OpenAPI/coslaNrm.yaml new file mode 100644 index 000000000..6aae2f61c --- /dev/null +++ b/OpenAPI/coslaNrm.yaml @@ -0,0 +1,131 @@ +openapi: 3.0.3 + +info: + title: coslaNrm + version: 16.4.0 + description: + OAS 3.0.1 specification of the Cosla NRM + © 2020, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). + All rights reserved. + +externalDocs: + description: 3GPP TS 28.536 V16.4.0; 5G NRM, Slice NRM + url: http://www.3gpp.org/ftp/Specs/archive/28_series/28.536/ + +paths: {} + +components: + + schemas: + +#------------ Type definitions --------------------------------------------------- + + ControlLoopLifeCyclePhase: + anyOf: + - type: string + enum: + - PREPARATION + - COMMISSIONING + - OPERATION + - DECOMMISSIONING + - type: string + + TimeUnit: + anyOf: + - type: string + enum: + - SECOND + - MINUTE + - HOUR + - DAY + - type: string + + OperationalState: + anyOf: + - type: string + enum: + - ENABLED + - DISABLED + - type: string + + AdministrativeState: + anyOf: + - type: string + enum: + - LOCKED + - SHUTTING_DOWN + - UNLOCKED + - type: string + + ObservationTime: + type: integer + + ObservationTimePeriod: + type: object + + AssuranceControlLoopGoal: + type: object + + AssuranceGoalStatus: + type: object + + AssuranceGoalStatusObserved: + type: object + + AssuranceGoalStatusPredicted: + type: object + +#-------- Definition of concrete IOCs -------------------------------------------- + + AssuranceControlLoop-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/SubNetwork-Attr' + - type: object + properties: + operationalState: + $ref: '#/components/schemas/OperationalState' + administrativeState: + $ref: '#/components/schemas/AdministrativeState' + controlLoopLifeCyclePhase: + $ref: '#/components/schemas/ControlLoopLifeCyclePhase' + observationTimePeriod: + allOf: + - $ref: '#/components/schemas/ObservationTimePeriod' + - type: object + properties: + observationTime: + $ref: '#/components/schemas/ObservationTime' + timeUnit: + $ref: '#/components/schemas/TimeUnit' + AssuranceGoalStatus: + allOf: + - $ref: '#/components/schemas/AssuranceGoalStatus' + - type: object + properties: + assuranceGoalStatusObserved: + $ref: '#/components/schemas/AssuranceGoalStatusObserved' + assuranceGoalStatusPredicted: + $ref: '#/components/schemas/AssuranceGoalStatusPredicted' + managedEntity-Multiple: + $ref: '#/components/schemas/ManagedEntity-Multiple' + assuranceControlLoopGoal: + $ref: '#/components/schemas/AssuranceControlLoopGoal' + + ManagedEntity-Single: + oneOf: + - $ref: 'sliceNrm.yaml#/components/schemas/NetworkSlice-Single' + - $ref: 'sliceNrm.yaml#/components/schemas/NetworkSliceSubnet-Single' + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' + - $ref: 'genericNrm.yaml#/components/schemas/ManagedElement-Attr' + +#-------- Definition of JSON arrays for name-contained IOCs ---------------------- + + AssuranceControlLoop-Multiple: + type: array + items: + $ref: '#/components/schemas/AssuranceControlLoop-Single' + + ManagedEntity-Multiple: + type: array + items: + $ref: '#/components/schemas/ManagedEntity-Single' diff --git a/OpenAPI/faultMnS.yaml b/OpenAPI/faultMnS.yaml new file mode 100644 index 000000000..499123b90 --- /dev/null +++ b/OpenAPI/faultMnS.yaml @@ -0,0 +1,1144 @@ +openapi: 3.0.1 +info: + title: Fault Supervision MnS + version: 16.4.0 + description: >- + OAS 3.0.1 definition of the Fault Supervision MnS + © 2020, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). + All rights reserved. +externalDocs: + description: 3GPP TS 28.532 V16.4.0; Generic management services + url: http://www.3gpp.org/ftp/Specs/archive/28_series/28.532/ +servers: + - url: '{MnSRoot}/FaultSupervisionMnS/{version}' + variables: + MnSRoot: + description: See subclause 4.4.3 of TS 32.158 + default: http://example.com/3GPPManagement + version: + description: Versi on number of the OpenAPI definition + default: XXX +paths: + /alarms: + get: + summary: Retrieve multiple alarms + description: >- + Retrieves the alarms identified by alarmAckState, baseObjectInstance + and filter. + parameters: + - name: alarmAckState + in: query + required: false + schema: + $ref: '#/components/schemas/AlarmAckState' + - name: baseObjectInstance + in: query + required: false + schema: + $ref: '#/components/schemas/Dn' + - name: filter + in: query + required: false + schema: + $ref: '#/components/schemas/Filter' + responses: + '200': + description: >- + Success case ("200 OK"). + Returns the alarms identified in the request. The alarmId is the key + of the map. + content: + application/json: + schema: + type: object + additionalProperties: + type: object + allOf: + - type: object + properties: + lastNotificationHeader: + $ref: '#/components/schemas/NotificationHeader' + - $ref: '#/components/schemas/AlarmRecord' + - type: object + properties: + comments: + $ref: '#/components/schemas/Comments' + default: + description: Response in case of error. + content: + application/json: + schema: + $ref: '#/components/schemas/ErrorResponse' + patch: + summary: 'Clear, acknowledge or unacknowledge multiple alarms' + description: >- + Clears, acknowledges or unacknowledges multiple alarms using patch. Depending + on which action is to be performed, different merge patch documents need + to be used. + requestBody: + description: >- + Patch documents for acknowledging and unacknowledging, or clearing multiple + alarms. The keys in the map are the alarmIds to be patched. + content: + application/merge-patch+json: + schema: + oneOf: + - type: object + additionalProperties: + $ref: '#/components/schemas/MergePatchAcknowledgeAlarm' + - type: object + additionalProperties: + $ref: '#/components/schemas/MergePatchClearAlarm' + responses: + '204': + description: >- + Success case ("204 No content"). + The response message body is empty. + default: + description: Response in case of error. + content: + application/json: + schema: + type: array + items: + $ref: '#/components/schemas/FailedAlarm' + /alarms/alarmCount: + get: + summary: Get the alarm count per perceived severity + parameters: + - name: alarmAckState + in: query + required: false + schema: + $ref: '#/components/schemas/AlarmAckState' + - name: filter + in: query + required: false + schema: + type: string + responses: + '200': + description: >- + Success case ("200 OK"). + The alarm count per perceived severity is returned. + content: + application/json: + schema: + $ref: '#/components/schemas/AlarmCount' + default: + description: Response in case of error. The error case needs rework. + content: + application/json: + schema: + $ref: '#/components/schemas/ErrorResponse' + /alarms/{alarmId}: + patch: + summary: 'Clear, acknowledge or unacknowledge a single alarm' + description: >- + Clears, acknowledges or uncknowldeges a single alarm by patching the alarm + information. A conditional acknowledge request based on the perceived + severity is not supported. + parameters: + - name: alarmId + in: path + description: Identifies the alarm to be patched. + required: true + schema: + type: string + requestBody: + required: true + content: + application/merge-patch+json: + schema: + oneOf: + - $ref: '#/components/schemas/MergePatchAcknowledgeAlarm' + - $ref: '#/components/schemas/MergePatchClearAlarm' + responses: + '204': + description: >- + Success case (204 No content). + The response message body is absent. + default: + description: Response in case of error. + content: + application/json: + schema: + $ref: '#/components/schemas/ErrorResponse' + /alarms/{alarmId}/comments: + post: + summary: Add a comment to a single alarm + description: >- + Adds a comment to an alarm identified by alarmId. The id of the new comment + is allocated by the producer. + parameters: + - name: alarmId + in: path + description: Identifies the alarm to which the comment shall be added. + required: true + schema: + type: string + requestBody: + required: true + content: + application/json: + schema: + $ref: '#/components/schemas/Comment' + responses: + '201': + description: >- + Success case (201 Created). + The representation of the newly created comment resource shall be returned. + content: + application/json: + schema: + $ref: '#/components/schemas/Comment' + headers: + Location: + description: URI of the newly created comment resource. + required: true + schema: + type: string + default: + description: Error case. + content: + application/json: + schema: + $ref: '#/components/schemas/ErrorResponse' + + /subscriptions: + post: + summary: Create a subscription + description: >- + To create a subscription the representation of the subscription is + POSTed on the /subscriptions collection resource. + requestBody: + required: true + content: + application/json: + schema: + $ref: '#/components/schemas/Subscription' + responses: + '201': + description: >- + Success case ("201 Created"). + The representation of the newly created subscription resource shall + be returned. + content: + application/json: + schema: + $ref: '#/components/schemas/Subscription' + headers: + Location: + description: URI of the newly created subscription resource + required: true + schema: + type: string + default: + description: Error case. + content: + application/json: + schema: + $ref: '#/components/schemas/ErrorResponse' + callbacks: + notifyNewAlarm: + '{request.body#/consumerReference}': + post: + requestBody: + required: true + content: + application/json: + schema: + oneOf: + - $ref: '#/components/schemas/NotifyNewAlarm' + - $ref: '#/components/schemas/NotifyNewSecAlarm' + responses: + '204': + description: >- + Success case ("204 No Content"). + The notification is successfully delivered. The response message + body is absent. + default: + description: Error case. + content: + application/json: + schema: + $ref: '#/components/schemas/ErrorResponse' + notifyClearedAlarm: + '{request.body#/consumerReference}': + post: + requestBody: + required: true + content: + application/json: + schema: + $ref: '#/components/schemas/NotifyClearedAlarm' + responses: + '204': + description: >- + Success case ("204 No Content"). + The notification is successfully delivered. The response message + body is absent. + default: + description: Error case. + content: + application/json: + schema: + $ref: '#/components/schemas/ErrorResponse' + notifyChangedAlarm: + '{request.body#/consumerReference}': + post: + requestBody: + required: true + content: + application/json: + schema: + $ref: '#/components/schemas/NotifyChangedAlarm' + responses: + '204': + description: >- + Success case ("204 No Content"). + The notification is successfully delivered. The response message + body is absent. + default: + description: Error case. + content: + application/json: + schema: + $ref: '#/components/schemas/ErrorResponse' + notifyChangedAlarmGeneral: + '{request.body#/consumerReference}': + post: + requestBody: + required: true + content: + application/json: + schema: + oneOf: + - $ref: '#/components/schemas/NotifyChangedAlarmGeneral' + - $ref: '#/components/schemas/NotifyChangedSecAlarmGeneral' + responses: + '204': + description: >- + Success case ("204 No Content"). + The notification is successfully delivered. The response message + body is absent. + default: + description: Error case. + content: + application/json: + schema: + $ref: '#/components/schemas/ErrorResponse' + notifyCorrelatedNotificationChanged: + '{request.body#/consumerReference}': + post: + requestBody: + required: true + content: + application/json: + schema: + $ref: '#/components/schemas/NotifyCorrelatedNotificationChanged' + responses: + '204': + description: >- + Success case ("204 No Content"). + The notification is successfully delivered. The response message + body is absent. + default: + description: Error case. + content: + application/json: + schema: + $ref: '#/components/schemas/ErrorResponse' + notifyAckStateChanged: + '{request.body#/consumerReference}': + post: + requestBody: + required: true + content: + application/json: + schema: + $ref: '#/components/schemas/NotifyAckStateChanged' + responses: + '204': + description: >- + Success case ("204 No Content"). + The notification is successfully delivered. The response message + body is absent. + default: + description: Error case. + content: + application/json: + schema: + $ref: '#/components/schemas/ErrorResponse' + notifyComments: + '{request.body#/consumerReference}': + post: + requestBody: + required: true + content: + application/json: + schema: + $ref: '#/components/schemas/NotifyComments' + responses: + '204': + description: >- + Success case ("204 No Content"). + The notification is successfully delivered. The response message + body is absent. + default: + description: Error case. + content: + application/json: + schema: + $ref: '#/components/schemas/ErrorResponse' + notifyPotentialFaultyAlarmList: + '{request.body#/consumerReference}': + post: + requestBody: + required: true + content: + application/json: + schema: + $ref: '#/components/schemas/NotifyPotentialFaultyAlarmList' + responses: + '204': + description: >- + Success case ("204 No Content"). + The notification is successfully delivered. The response message + body is absent. + default: + description: Error case. + content: + application/json: + schema: + $ref: '#/components/schemas/ErrorResponse' + notifyAlarmListRebuilt: + '{request.body#/consumerReference}': + post: + requestBody: + required: true + content: + application/json: + schema: + $ref: '#/components/schemas/NotifyAlarmListRebuilt' + responses: + '204': + description: >- + Success case ("204 No Content"). + The notification is successfully delivered. The response message + body is absent. + default: + description: Error case. + content: + application/json: + schema: + $ref: '#/components/schemas/ErrorResponse' + /subscriptions/{subscriptionId}: + delete: + summary: Delete a subscription + description: >- + The subscription is deleted by deleting the corresponding subscription + resource. The resource to be deleted is identified with the path + component of the URI. + parameters: + - name: subscriptionId + in: path + description: Identifies the subscription to be deleted. + required: true + schema: + type: string + responses: + '204': + description: >- + Success case ("204 No Content"). + The subscription resource has been deleted. The response message body + is absent. + default: + description: Error case. + content: + application/json: + schema: + $ref: '#/components/schemas/ErrorResponse' + +components: + schemas: + + #---- Definitions to be moved to comDefs.yaml --------------------------------------# + + Long: + type: string + format: long + Float: + type: string + format: float + DateTime: + type: string + format: date-Time + + Dn: + type: string + Uri: + type: string + + AttributeNameValuePairSet: + type: object + minProperties: 1 + AttributeValueChangeSet: + description: >- + The key in this map is the attribute name. The value of each key is an array. + When only one item is present in the array, it carries the new attribute + value. If two items are present, then the first item carries the old value + and the second item the new value. The items can be of any type including null. + type: object + additionalProperties: + type: array + minItems: 1 + maxItems: 2 + items: + nullable: true + + Filter: + type: string + SystemDN: + type: string + + NotificationId: + type: integer + NotificationHeader: + description: >- + Header used for all notification types + type: object + required: + - href + - notificationId + - notificationType + - eventTime + - systemDN + properties: + uri: + $ref: '#/components/schemas/Uri' + notificationId: + $ref: '#/components/schemas/NotificationId' + notificationType: + oneOf: + - $ref: '#/components/schemas/AlarmNotificationTypes' + #- $ref: 'faultMnS.yaml#/components/schemas/AlarmNotificationTypes' + #- $ref: 'provMnS.yaml#/components/schemas/CmNotificationTypes' + # more to be added + eventTime: + $ref: '#/components/schemas/DateTime' + systemDN: + $ref: '#/components/schemas/SystemDN' + + ErrorResponse: + description: >- + Default schema for the response message body in case the request is not + successful. + type: object + properties: + error: + type: object + properties: + errorInfo: + type: string + + #---- End of definitions to be moved to comDefs.yaml -------------------------------# + + #---- Definition of AlarmRecord ----------------------------------------------------# + + AlarmId: + type: string + AlarmType: + type: string + enum: + - COMMUNICATIONS_ALARM + - QUALITY_OF_SERVICE_ALARM + - PROCESSING_ERROR_ALARM + - EQUIPMENT_ALARM + - ENVIRONMENTAL_ALARM + - INTEGRITY_VIOLATION + - OPERATIONAL_VIOLATION + - PHYSICAL_VIOLATION + - SECURITY_SERVICE_OR_MECHANISM_VIOLATION + - TIME_DOMAIN_VIOLATION + ProbableCause: + description: >- + The value of the probable cause may be a specific standardized string, or any + vendor provided string. Probable cause strings are not standardized in the + present document. They may be added in a future version. Up to then the + mapping of the generic probable cause strings "PROBABLE_CAUSE_001" to + "PROBABLE_CAUSE_005" is vendor specific. + The value of the probable cause may also be an integer. The mapping of integer + values to probable causes is vendor specific. + oneOf: + - anyOf: + - type: string + enum: + - PROBABLE_CAUSE_001 + - PROBABLE_CAUSE_002 + - PROBABLE_CAUSE_003 + - PROBABLE_CAUSE_004 + - PROBABLE_CAUSE_005 + - type: string + - type: integer + SpecificProblem: + oneOf: + - type: string + - type: integer + PerceivedSeverity: + type: string + enum: + - INDETERMINATE + - CRITICAL + - MAJOR + - MINOR + - WARNING + - CLEARED + TrendIndication: + type: string + enum: + - MORE_SEVERE + - NO_CHANGE + - LESS_SEVERE + ThresholdHysteresis: + type: object + required: + - high + properties: + high: + oneOf: + - type: integer + - $ref: '#/components/schemas/Float' + low: + $ref: '#/components/schemas/Float' + ThresholdLevelInd: + type: object + required: + - up + properties: + up: + $ref: '#/components/schemas/ThresholdHysteresis' + low: + $ref: '#/components/schemas/ThresholdHysteresis' + ThresholdInfo: + type: object + required: + - observedMeasurement + - observedValue + properties: + observedMeasurement: + type: string + observedValue: + oneOf: + - type: integer + - $ref: '#/components/schemas/Float' + thresholdLevelInd: + $ref: '#/components/schemas/ThresholdLevelInd' + armTime: + $ref: '#/components/schemas/DateTime' + CorrelatedNotification: + type: object + required: + - source + - notificationId + properties: + sourceObjectInstance: + $ref: '#/components/schemas/Dn' + notificationIds: + type: array + items: + $ref: '#/components/schemas/NotificationId' + CorrelatedNotifications: + type: array + items: + $ref: '#/components/schemas/CorrelatedNotification' + AckState: + type: string + enum: + - ACKNOWLEDGED + - UNACKNOWLEDGED + + AlarmRecord: + description: >- + The alarmId is not a property of an alarm record. It is used as key + in the map of alarm records instead. + type: object + properties: + # alarmId: + # $ref: '#/components/schemas/AlarmId' + objectInstance: + $ref: '#/components/schemas/Dn' + notificationId: + $ref: '#/components/schemas/NotificationId' + alarmRaisedTime: + $ref: '#/components/schemas/DateTime' + alarmChangedTime: + $ref: '#/components/schemas/DateTime' + alarmClearedTime: + $ref: '#/components/schemas/DateTime' + alarmType: + $ref: '#/components/schemas/AlarmType' + probableCause: + $ref: '#/components/schemas/ProbableCause' + specificProblem: + $ref: '#/components/schemas/SpecificProblem' + perceivedSeverity: + $ref: '#/components/schemas/PerceivedSeverity' + backedUpStatus: + type: boolean + backUpObject: + $ref: '#/components/schemas/Dn' + trendIndication: + $ref: '#/components/schemas/TrendIndication' + thresholdinfo: + $ref: '#/components/schemas/ThresholdInfo' + correlatedNotifications: + $ref: '#/components/schemas/CorrelatedNotifications' + stateChangeDefinition: + $ref: '#/components/schemas/AttributeValueChangeSet' + monitoredAttributes: + $ref: '#/components/schemas/AttributeNameValuePairSet' + proposedRepairActions: + type: string + additionalText: + type: string + additionalInformation: + $ref: '#/components/schemas/AttributeNameValuePairSet' + + rootCauseIndicator: + type: boolean + + ackTime: + $ref: '#/components/schemas/DateTime' + ackUserId: + type: string + ackSystemId: + type: string + ackState: + $ref: '#/components/schemas/AckState' + + clearUserId: + type: string + clearSystemId: + type: string + serviceUser: + type: string + serviceProvider: + type: string + securityAlarmDetector: + type: string + + #---- Definition of alarm notifications --------------------------------------------# + + AlarmNotificationTypes: + type: string + enum: + - notifyNewAlarm + - notifyChangedAlarm + - notifyChangedAlarmGeneral + - notifyAckStateChanged + - notifyCorrelatedNotificationChanged + - notifyComments + - notifyClearedAlarm + - notifyAlarmListRebuiltAlarm + - notifyPotentialFaultyAlarmList + AlarmListAlignmentRequirement: + type: string + enum: + - ALIGNMENT_REQUIRED + - ALIGNMENT_NOT_REQUIRED + + NotifyNewAlarm: + allOf: + - $ref: '#/components/schemas/NotificationHeader' + - type: object + required: + - alarmId + - alarmType + - probableCause + - perceivedSeverity + properties: + alarmId: + $ref: '#/components/schemas/AlarmId' + alarmType: + $ref: '#/components/schemas/AlarmType' + probableCause: + $ref: '#/components/schemas/ProbableCause' + specificProblem: + $ref: '#/components/schemas/SpecificProblem' + perceivedSeverity: + $ref: '#/components/schemas/PerceivedSeverity' + backedUpStatus: + type: boolean + backUpObject: + $ref: '#/components/schemas/Dn' + trendIndication: + $ref: '#/components/schemas/TrendIndication' + thresholdInfo: + $ref: '#/components/schemas/ThresholdInfo' + correlatedNotifications: + $ref: '#/components/schemas/CorrelatedNotifications' + stateChangeDefinition: + $ref: '#/components/schemas/AttributeValueChangeSet' + monitoredAttributes: + $ref: '#/components/schemas/AttributeNameValuePairSet' + proposedRepairActions: + type: string + additionalText: + type: string + additionalInformation: + $ref: '#/components/schemas/AttributeNameValuePairSet' + rootCauseIndicator: + type: boolean + NotifyNewSecAlarm: + allOf: + - $ref: '#/components/schemas/NotificationHeader' + - type: object + required: + - alarmId + - alarmType + - probableCause + - perceivedSeverity + - serviceUser + - serviceProvider + - securityAlarmDetector + properties: + alarmId: + $ref: '#/components/schemas/AlarmId' + alarmType: + $ref: '#/components/schemas/AlarmType' + probableCause: + $ref: '#/components/schemas/ProbableCause' + perceivedSeverity: + $ref: '#/components/schemas/PerceivedSeverity' + correlatedNotifications: + $ref: '#/components/schemas/CorrelatedNotifications' + additionalText: + type: string + additionalInformation: + $ref: '#/components/schemas/AttributeNameValuePairSet' + rootCauseIndicator: + type: boolean + serviceUser: + type: string + serviceProvider: + type: string + securityAlarmDetector: + type: string + NotifyClearedAlarm: + allOf: + - $ref: '#/components/schemas/NotificationHeader' + - type: object + required: + - alarmId + - alarmType + - probableCause + - perceivedSeverity + properties: + alarmId: + $ref: '#/components/schemas/AlarmId' + alarmType: + $ref: '#/components/schemas/AlarmType' + probableCause: + $ref: '#/components/schemas/ProbableCause' + perceivedSeverity: + $ref: '#/components/schemas/PerceivedSeverity' + correlatedNotifications: + $ref: '#/components/schemas/CorrelatedNotifications' + clearUserId: + type: string + clearSystemId: + type: string + NotifyChangedAlarm: + allOf: + - $ref: '#/components/schemas/NotificationHeader' + - type: object + required: + - alarmId + - alarmType + - probableCause + - perceivedSeverity + properties: + alarmId: + $ref: '#/components/schemas/AlarmId' + alarmType: + $ref: '#/components/schemas/AlarmType' + probableCause: + $ref: '#/components/schemas/ProbableCause' + perceivedSeverity: + $ref: '#/components/schemas/PerceivedSeverity' + NotifyChangedAlarmGeneral: + allOf: + - $ref: '#/components/schemas/NotificationHeader' + - type: object + required: + - alarmId + - alarmType + - probableCause + - perceivedSeverity + - changedAlarmAttributes + properties: + alarmId: + $ref: '#/components/schemas/AlarmId' + alarmType: + $ref: '#/components/schemas/AlarmType' + probableCause: + $ref: '#/components/schemas/ProbableCause' + specificProblem: + $ref: '#/components/schemas/SpecificProblem' + perceivedSeverity: + $ref: '#/components/schemas/PerceivedSeverity' + correlatedNotifications: + $ref: '#/components/schemas/CorrelatedNotifications' + backedUpStatus: + type: boolean + backUpObject: + $ref: '#/components/schemas/Dn' + trendIndication: + $ref: '#/components/schemas/TrendIndication' + thresholdInfo: + $ref: '#/components/schemas/ThresholdInfo' + stateChangeDefinition: + $ref: '#/components/schemas/AttributeValueChangeSet' + monitoredAttributes: + $ref: '#/components/schemas/AttributeNameValuePairSet' + proposedRepairActions: + type: string + additionalText: + type: string + additionalInformation: + $ref: '#/components/schemas/AttributeNameValuePairSet' + rootCauseIndicator: + type: boolean + changedAlarmAttributes: + $ref: '#/components/schemas/AttributeNameValuePairSet' + NotifyChangedSecAlarmGeneral: + allOf: + - $ref: '#/components/schemas/NotificationHeader' + - type: object + required: + - alarmId + - alarmType + - probableCause + - perceivedSeverity + - serviceUser + - serviceProvider + - securityAlarmDetector + - changedAlarmAttributes + properties: + alarmId: + $ref: '#/components/schemas/AlarmId' + alarmType: + $ref: '#/components/schemas/AlarmType' + probableCause: + $ref: '#/components/schemas/ProbableCause' + perceivedSeverity: + $ref: '#/components/schemas/PerceivedSeverity' + correlatedNotifications: + $ref: '#/components/schemas/CorrelatedNotifications' + additionalText: + type: string + additionalInformation: + $ref: '#/components/schemas/AttributeNameValuePairSet' + rootCauseIndicator: + type: boolean + serviceUser: + type: string + serviceProvider: + type: string + securityAlarmDetector: + type: string + changedAlarmAttributes: + $ref: '#/components/schemas/AttributeNameValuePairSet' + NotifyCorrelatedNotificationChanged: + allOf: + - $ref: '#/components/schemas/NotificationHeader' + - type: object + required: + - alarmId + - correlatedNotifications + properties: + alarmId: + $ref: '#/components/schemas/AlarmId' + correlatedNotifications: + $ref: '#/components/schemas/CorrelatedNotifications' + rootCauseIndicator: + type: boolean + NotifyAckStateChanged: + allOf: + - $ref: '#/components/schemas/NotificationHeader' + - type: object + required: + - alarmId + - alarmType + - probableCause + - perceivedSeverity + - ackState + - ackUserId + properties: + alarmId: + $ref: '#/components/schemas/AlarmId' + alarmType: + $ref: '#/components/schemas/AlarmType' + probableCause: + $ref: '#/components/schemas/ProbableCause' + perceivedSeverity: + $ref: '#/components/schemas/PerceivedSeverity' + ackState: + $ref: '#/components/schemas/AckState' + ackUserId: + type: string + ackSystemId: + type: string + NotifyComments: + allOf: + - $ref: '#/components/schemas/NotificationHeader' + - type: object + required: + - alarmId + - alarmType + - probableCause + - perceivedSeverity + - comments + properties: + alarmId: + $ref: '#/components/schemas/AlarmId' + alarmType: + $ref: '#/components/schemas/AlarmType' + probableCause: + $ref: '#/components/schemas/ProbableCause' + perceivedSeverity: + $ref: '#/components/schemas/PerceivedSeverity' + comments: + $ref: '#/components/schemas/Comments' + NotifyPotentialFaultyAlarmList: + allOf: + - $ref: '#/components/schemas/NotificationHeader' + - type: object + required: + - reason + properties: + reason: + type: string + NotifyAlarmListRebuilt: + allOf: + - $ref: '#/components/schemas/NotificationHeader' + - type: object + required: + - reason + properties: + reason: + type: string + alarmListAlignmentRequirement: + $ref: '#/components/schemas/AlarmListAlignmentRequirement' + + #---- Definition of query parameters -----------------------------------------------# + + AlarmAckState: + type: string + enum: + - ALL_ALARMS + - ALL_ACTIVE_ALARMS + - ALL_ACTIVE_AND_ACKNOWLEDGED_ALARMS + - ALL_ACTIVE_AND_UNACKNOWLEDGED_ALARMS + - ALL_CLEARED_AND_UNACKNOWLEDGED_ALARMS + - ALL_UNACKNOWLEDGED_ALARMS + + #---- Definition of patch documents ------------------------------------------------# + + MergePatchAcknowledgeAlarm: + description: >- + Patch document acknowledging or unacknowledging a single alarm. For + acknowleding an alarm the value of ackState is ACKNOWLEDGED, for unacknowleding + an alarm the value of ackState is UNACKNOWLEDGED. + type: object + required: + - ackUserId + - ackState + properties: + ackUserId: + type: string + ackSystemId: + type: string + ackState: + $ref: '#/components/schemas/AckState' + MergePatchClearAlarm: + description: Patch document for clearing a single alarm + type: object + required: + - clearUserId + - perceivedSeverity + properties: + clearUserId: + type: string + clearSystemId: + type: string + perceivedSeverity: + type: string + enum: + - CLEARED + + #---- Definition of method responses -----------------------------------------------# + + FailedAlarm: + type: object + required: + - alarmId + - failureReason + properties: + alarmId: + $ref: '#/components/schemas/AlarmId' + failureReason: + type: string + + #---- Definition of resources ------------------------------------------------------# + + AlarmCount: + type: object + required: + - criticalCount + - majorCount + - minorCount + - warningCount + - indeterminateCount + - clearedCount + properties: + criticalCount: + type: integer + majorCount: + type: integer + minorCount: + type: integer + warningCount: + type: integer + indeterminateCount: + type: integer + clearedCount: + type: integer + Comment: + type: object + properties: + commentTime: + $ref: '#/components/schemas/DateTime' + commentUserId: + type: string + commentSystemId: + type: string + commentText: + type: string + Comments: + description: >- + Collection of comments. The comment identifiers are allocated by the + MnS producer and used as key in the map. + type: object + additionalProperties: + $ref: '#/components/schemas/Comment' + Subscription: + type: object + properties: + consumerReference: + $ref: '#/components/schemas/Uri' + timeTick: + $ref: '#/components/schemas/Long' + filter: + $ref: '#/components/schemas/Filter' diff --git a/OpenAPI/genericNrm.yaml b/OpenAPI/genericNrm.yaml new file mode 100644 index 000000000..9355f53e9 --- /dev/null +++ b/OpenAPI/genericNrm.yaml @@ -0,0 +1,1590 @@ +openapi: 3.0.1 +info: + title: Generic NRM + version: 16.4.0 + description: >- + OAS 3.0.1 specification of the Generic NRM + © 2020, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). + All rights reserved. +externalDocs: + description: 3GPP TS 28.623 V16.4.0; Generic NRM + url: http://www.3gpp.org/ftp/Specs/archive/28_series/28.623/ +paths: {} +components: + schemas: + +#-------- Definition of types----------------------------------------------------- + + DateTime: + type: string + format: date-time + Dn: + type: string + maxLength: 400 + DnList: + type: array + items: + $ref: '#/components/schemas/Dn' + Mcc: + type: string + pattern: '^[0-9]{3}$' + Mnc: + type: string + pattern: '^[0-9]{2,3}$' + AdministrativeState: + type: string + enum: + - LOCKED + - UNLOCKED + OperationalState: + type: string + enum: + - ENABLED + - DISABLED + UsageState: + type: string + enum: + - IDEL + - ACTIVE + - BUSY + RegistrationState: + type: string + enum: + - REGISTERED + - DEREGISTERED + SetOfMcc: + type: array + items: + $ref: '#/components/schemas/Mcc' + ManagedElementType: + type: string + ManagedElementTypeList: + type: array + items: + $ref: '#/components/schemas/ManagedElementType' + VnfParameter: + type: object + properties: + vnfInstanceId: + type: string + vnfdId: + type: string + flavourId: + type: string + autoScalable: + type: boolean + VnfParametersList: + type: array + items: + $ref: '#/components/schemas/VnfParameter' + SiteLatitude: + type: number + format: float + minimum: -90 + maximum: 90 + SiteLongitude: + type: number + format: float + minimum: -180 + maximum: 180 + PeeParameter: + type: object + properties: + siteIdentification: + type: string + siteDescription: + type: string + siteLatitude: + $ref: '#/components/schemas/SiteLatitude' + siteLongitude: + $ref: '#/components/schemas/SiteLongitude' + equipmentType: + type: string + environmentType: + type: string + powerInterface: + type: string + PeeParametersList: + type: array + items: + $ref: '#/components/schemas/PeeParameter' + MonitoringGPList: + type: array + items: + type: integer + ThresholdInfoList: + type: array + items: + $ref: '#/components/schemas/ThresholdInfo' + ThresholdInfo: + type: object + properties: + measurementType: + type: string + direction: + $ref: '#/components/schemas/Direction' + thresholdPack: + $ref: '#/components/schemas/ThresholdPack' + Direction: + enum: + - Increasing + - Decreasing + ThresholdPack: + type: array + items: + $ref: '#/components/schemas/ThresholdPackElement' + ThresholdPackElement: + type: object + properties: + thresholdLevel: + type: integer + thresholdValue: + type: number + hysteresis: + type: number + Operation: + type: object + properties: + name: + type: string + allowedNFTypes: + $ref: '#/components/schemas/NFType' + operationSemantics: + $ref: '#/components/schemas/OperationSemantics' + OperationList: + type: array + items: + $ref: '#/components/schemas/Operation' + NFType: + type: string + description: ' NF name defined in TS 23.501' + enum: + - NRF + - UDM + - AMF + - SMF + - AUSF + - NEF + - PCF + - SMSF + - NSSF + - UDR + - LMF + - GMLC + - 5G_EIR + - SEPP + - UPF + - N3IWF + - AF + - UDSF + - DN + Fqdn: + type: string + OperationSemantics: + type: string + enum: + - REQUEST_RESPONSE + - SUBSCRIBE_NOTIFY + SAP: + type: object + properties: + host: + $ref: '#/components/schemas/HostAddr' + port: + type: integer + NFServiceType: + type: string + enum: + - Namf_Communication + - Namf_EventExposure + - Namf_MT + - Namf_Location + - Nsmf_PDUSession + - Nsmf_EventExposure + - Others + HostAddr: + oneOf: + - $ref: '#/components/schemas/Ipv4Addr' + - $ref: '#/components/schemas/Ipv6Addr' + - $ref: '#/components/schemas/Fqdn' + Ipv4Addr: + type: string + pattern: '^(([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])\.){3}([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])$' + example: '198.51.100.1' + Ipv4AddrRm: + type: string + pattern: '^(([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])\.){3}([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])$' + example: '198.51.100.1' + nullable: true + Ipv6Addr: + type: string + allOf: + - pattern: '^((:|(0?|([1-9a-f][0-9a-f]{0,3}))):)((0?|([1-9a-f][0-9a-f]{0,3})):){0,6}(:|(0?|([1-9a-f][0-9a-f]{0,3})))$' + - pattern: '^((([^:]+:){7}([^:]+))|((([^:]+:)*[^:]+)?::(([^:]+:)*[^:]+)?))$' + example: '2001:db8:85a3::8a2e:370:7334' + Ipv6AddrRm: + type: string + allOf: + - pattern: '^((:|(0?|([1-9a-f][0-9a-f]{0,3}))):)((0?|([1-9a-f][0-9a-f]{0,3})):){0,6}(:|(0?|([1-9a-f][0-9a-f]{0,3})))$' + - pattern: '^((([^:]+:){7}([^:]+))|((([^:]+:)*[^:]+)?::(([^:]+:)*[^:]+)?))$' + example: '2001:db8:85a3::8a2e:370:7334' + nullable: true + Ipv6Prefix: + type: string + allOf: + - pattern: '^((:|(0?|([1-9a-f][0-9a-f]{0,3}))):)((0?|([1-9a-f][0-9a-f]{0,3})):){0,6}(:|(0?|([1-9a-f][0-9a-f]{0,3})))(\/(([0-9])|([0-9]{2})|(1[0-1][0-9])|(12[0-8])))$' + - pattern: '^((([^:]+:){7}([^:]+))|((([^:]+:)*[^:]+)?::(([^:]+:)*[^:]+)?))(\/.+)$' + example: '2001:db8:abcd:12::0/64' + Uri: + type: string + TransportProtocol: + anyOf: + - type: string + enum: + - TCP + - type: string + SupportedPerfMetricGroup: + type: object + properties: + performanceMetrics: + type: array + items: + type: string + granularityPeriods: + type: array + items: + type: integer + minimum: 1 + reportingMethods: + type: array + items: + type: string + enum: + - FILE_BASED_LOC_SET_BY_PRODUCER + - FILE_BASED_LOC_SET_BY_CONSUMER + - STREAM_BASED + ReportingCtrl: + oneOf: + - type: object + properties: + fileReportingPeriod: + type: integer + - type: object + properties: + fileReportingPeriod: + type: integer + fileLocation: + $ref: '#/components/schemas/Uri' + - type: object + properties: + streamTarget: + $ref: '#/components/schemas/Uri' + Scope: + type: object + properties: + scopeType: + type: string + enum: + - BASE_ONLY + - BASE_ALL + - BASE_NTH_LEVEL + - BASE_SUBTREE + scopeLevel: + type: integer + NotificationType: + type: string + enum: + - notifyMOICreation + - notifyMOIDeletion + - notifyMOIAttributeValueChanges + - notifyEvent + - notifyNewAlarm + - notifyChangedAlarm + - notifyAckStateChanged + - notifyComments + - notifyCorrelatedNotificationChanged + - notifyChangedAlarmGeneral + - notifyAlarmListRebuilt + - notifyPotentialFaultyAlarmList + - notifyFileReady + - notifyFilePreparationError + - notifyThresholdCrossing + NotificationTypes: + type: array + items: + $ref: '#/components/schemas/NotificationType' + +#-------- Definition of types used in Trace control NRM fragment------------------ + + tjJobType-Type: + type: string + description: Specifies whether the TraceJob represents only MDT, Logged MBSFN MDT, Trace or a combined Trace and MDT job. Applicable for Trace, MDT, RCEF and RLF reporting. See 3GPP TS 32.422 clause 5.9a for additional details. + enum: + - IMMEDIATE_MDT_ONLY + - LOGGED_MDT_ONLY + - TRACE_ONLY + - IMMEDIATE_MDT AND TRACE + - RLF_REPORT_ONLY + - RCEF_REPORT_ONLY + - LOGGED_MBSFN_MDT + + tjListOfInterfaces-Type: + description: The interfaces to be recorded in the Network Element. See 3GPP TS 32.422 clause 5.5 for additional details. + type: object + properties: + MSCServerInterfaces: + type: array + items: + type: string + enum: + - A + - Iu-CS + - Mc + - MAP-G + - MAP-B + - MAP-E + - MAP-F + - MAP-D + - MAP-C + - CAP + MGWInterfaces: + type: array + items: + type: string + enum: + - Mc + - Nb-UP + - Iu-UP + RNCInterfaces: + type: array + items: + type: string + enum: + - Iu-CS + - Iu-PS + - Iur + - Iub + - Uu + SGSNInterfaces: + type: array + items: + type: string + enum: + - Gb + - Iu-PS + - Gn + - MAP-Gr + - MAP-Gd + - MAP-Gf + - Ge + - Gs + - S6d + - S4 + - S3 + - S13 + GGSNInterfaces: + type: array + items: + type: string + enum: + - Gn + - Gi + - Gmb + S-CSCFInterfaces: + type: array + items: + type: string + enum: + - Mw + - Mg + - Mr + - Mi + P-CSCFInterfaces: + type: array + items: + type: string + enum: + - Gm + - Mw + I-CSCFInterfaces: + type: array + items: + type: string + enum: + - Cx + - Dx + - Mg + - Mw + MRFCInterfaces: + type: array + items: + type: string + enum: + - Mp + - Mr + MGCFInterfaces: + type: array + items: + type: string + enum: + - Mg + - Mj + - Mn + IBCFInterfaces: + type: array + items: + type: string + enum: + - Ix + - Mx + E-CSCFInterfaces: + type: array + items: + type: string + enum: + - Mw + - Ml + - Mm + - Mi/Mg + BGCFInterfaces: + type: array + items: + type: string + enum: + - Mi + - Mj + - Mk + ASInterfaces: + type: array + items: + type: string + enum: + - Dh + - Sh + - ISC + - Ut + HSSInterfaces: + type: array + items: + type: string + enum: + - MAP-C + - MAP-D + - Gc + - Gr + - Cx + - S6d + - S6a + - Sh + EIRInterfaces: + type: array + items: + type: string + enum: + - MAP-F + - S13 + - MAP-Gf + BM-SCInterfaces: + type: array + items: + type: string + enum: + - Gmb + MMEInterfaces: + type: array + items: + type: string + enum: + - S1-MME + - S3 + - S6a + - S10 + - S11 + - S13 + SGWInterfaces: + type: array + items: + type: string + enum: + - S4 + - S5 + - S8 + - S11 + - Gxc + PDN_GWInterfaces: + type: array + items: + type: string + enum: + - S2a + - S2b + - S2c + - S5 + - S6b + - Gx + - S8 + - SGi + eNBInterfaces: + type: array + items: + type: string + enum: + - S1-MME + - X2 + en-gNBInterfaces: + type: array + items: + type: string + enum: + - S1-MME + - X2 + - Uu + - F1-C + - E1 + AMFInterfaces: + type: array + items: + type: string + enum: + - N1 + - N2 + - N8 + - N11 + - N12 + - N14 + - N15 + - N20 + - N22 + - N26 + AUSFInterfaces: + type: array + items: + type: string + enum: + - N12 + - N13 + NEFInterfaces: + type: array + items: + type: string + enum: + - N29 + - N30 + - N33 + NRFInterfaces: + type: array + items: + type: string + enum: + - N27 + NSSFInterfaces: + type: array + items: + type: string + enum: + - N22 + - N31 + PCFInterfaces: + type: array + items: + type: string + enum: + - N5 + - N7 + - N15 + SMFInterfaces: + type: array + items: + type: string + enum: + - N4 + - N7 + - N10 + - N11 + - S5-C + SMSFInterfaces: + type: array + items: + type: string + enum: + - N20 + - N21 + UDMInterfaces: + type: array + items: + type: string + enum: + - N8 + - N10 + - N13 + - N21 + UPFInterfaces: + type: array + items: + type: string + enum: + - N4 + ng-eNBInterfaces: + type: array + items: + type: string + enum: + - NG-C + - Xn-C + - Uu + gNB-CU-CPInterfaces: + type: array + items: + type: string + enum: + - NG-C + - Xn-C + - Uu + - F1-C + - E1 + - X2-C + gNB-CU-UPInterfaces: + type: array + items: + type: string + enum: + - E1 + gNB-DUInterfaces: + type: array + items: + type: string + enum: + - F1-C + + tjListOfNeTypes-Type: + description: The Network Element types where Trace Session activation is needed. See 3GPP TS 32.422 clause 5.4 for additional details. + type: array + items: + type: string + enum: + - MSC_SERVER + - SGSN + - MGW + - GGSN + - RNC + - BM_SC + - MME + - SGW + - PGW + - ENB + - EN_GNB + - GNB_CU_CP + - GNB_CU_UP + - GNB_DU + + tjPLMNTaget-Type: + type: object + description: The PLMN for which sessions shall be selected in the Trace Session in case of management based activation when several PLMNs are supported in the RAN (this means that shared cells and not shared cells are allowed for the specified PLMN. Note that the PLMN Target might differ from the PLMN specified in the Trace Reference, as that specifies the PLMN that is containing the management system requesting the Trace Session from the NE. See 3GPP TS 32.422 clause 5.9b for additional details. + properties: + mcc: + $ref: '#/components/schemas/Mcc' + mnc: + $ref: '#/components/schemas/Mnc' + required: + - mcc + - mnc + + tjStreamingTraceConsumerURI-Type: + type: string + description: The URI of the Trace Reporting MnS consumer (see 3GPP TS 28.532) to which the Trace records shall be sent. See 3GPP TS 32.422 clause 5.9 for additional details. + format: uri + + tjTraceCollectionEntityAddress-Type: + description: The IP address to which the Trace records shall be transferred. See 3GPP TS 32.422 clause 5.9 for additional details. + oneOf: + - $ref: '#/components/schemas/Ipv4Addr' + - $ref: '#/components/schemas/Ipv6Addr' + + tjTraceDepth-Type: + description: Specifies how detailed information should be recorded in the Network Element. The Trace Depth is a paremeter for Trace Session level, i.e., the Trace Depth is the same for all of the NEs to be traced in the same Trace Session. See 3GPP TS 32.422 clause 5.3 for additional details. + type: string + enum: + - MINIMUM + - MEDIUM + - MAXIMUM + - VENDORMINIMUM + - VENDORMEDIUM + - VENDORMAXIMUM + + tjTraceReference-Type: + type: object + description: The Trace Reference parameter shall be globally unique, therefore the Trace Reference shall compose as follows - MCC+MNC+Trace ID, where the MCC and MNC are coming with the Trace activation request from the management system to identify one PLMN containing the management system, and Trace ID is a 3 byte Octet String. See 3GPP TS 32.422 clause 5.6 for additional details. + properties: + mcc: + $ref: '#/components/schemas/Mcc' + mnc: + $ref: '#/components/schemas/Mnc' + traceId: + type: integer + required: + - mcc + - mnc + - traceId + + tjTraceReportingFormat-Type: + type: string + description: Specifies whether file-based or streaming reporting shall be used for this Trace Session. See 3GPP TS 32.422 clause 5.11 for additional details. + enum: + - FILE-BASED + - STREAMING + + tjTraceTarget-Type: + type: string + description: Type of trace target. For additional details see 3GPP TS 32.422. + enum: + - IMSI + - IMEI + - IMEISV + - PUBLIC_ID + - UTRAN_CELL + - E-UTRAN_CELL + - NG-RAN_CELL + - eNB + - RNC + - gNB + + tjTriggeringEvent-Type: + type: object + description: Specifies when to start a Trace Recording Session and which message shall be recorded first, when to stop a Trace Recording Session and which message shall be recorded last respectively. See 3GPP TS 32.422 clause 5.1 for additional detials. + properties: + NetworkElement: + type: string + enum: + - MSC_SERVER + - SGSN + - MGW + - GGSN + - BM_SC + - MME + - SGW + - PGW + - AMF + - SMF + - PCF + - UPF + EventBitmap: + type: integer + required: + - NetworkElement + - EventBitmap + + tjMDTAnonymizationOfData-Type: + description: Specifies level of MDT anonymization. For additional details see 3GPP TS 32.422 clause 5.10.12. + type: string + enum: + - NO_IDENTITY + - TAC_OF_IMEI + + tjMDTAreaConfigurationForNeighCell-Type: + description: Used for logged NR MDT and defines the area for which UE is requested to perform measurement logging for neighbour cells which have list of frequencies. For additional details see 3GPP TS 32.422 clause 5.10.26. + type: array + items: + type: object + properties: + frequency: + type: string + cell: + type: string + + tjMDTAreaScope-Type: + description: defines the area in terms or Cells or Tracking Area/Routing Area/Location Area where the MDT data collection shall take place. For additional details see 3GPP TS 32.422 clause 5.10.2. + allOf: + - $ref: '#/components/schemas/DnList' + + tjMDTCollectionPeriodRrmLte-Type: + description: See details in 3GPP TS 32.422 clause 5.10.20. + type: string + enum: + - 250ms + - 500ms + - 1000ms + - 2000ms + - 3000ms + - 4000ms + - 6000ms + - 8000ms + - 12000ms + - 16000ms + - 20000ms + - 24000ms + - 28000ms + - 32000ms + - 64000ms + + tjMDTCollectionPeriodRrmUmts-Type: + description: See details in 3GPP TS 32.422 clause 5.10.21. + type: string + enum: + - 1024ms + - 1280ms + - 2048ms + - 2560ms + - 5120ms + - 10240ms + - 1min + + tjMDTEventListForTriggeredMeasurement-Type: + description: See details in 3GPP TS 32.422 clause 5.10.28. + type: string + enum: + - OUT_OF_COVERAGE + - A2_EVENT + + tjMDTEventThreshold-Type: + description: See details in 3GPP TS 32.422 clause 5.10.7, 5.10.7a, 5.10.13 and 5.10.14. + type: object + properties: + EventThresholdRSRP: + type: integer + minimum: 0 + maximum: 97 + EventThresholdRSRQ: + type: integer + minimum: 0 + maximum: 34 + EventThreshold1F: + type: object + properties: + CPICH_RSCP: + type: integer + minimum: -120 + maximum: 25 + CPICH_EcNo: + type: integer + minimum: -24 + maximum: 0 + PathLoss: + type: integer + minimum: 30 + maximum: 165 + EventThreshold1I: + type: integer + minimum: -120 + maximum: 25 + + tjMDTListOfMeasurements-Type: + description: See details in 3GPP TS 32.422 clause 5.10.3 for details. + type: object + properties: + UMTS: + type: array + items: + type: string + enum: + - M1 + - M2 + - M3 + - M4 + - M5 + - M6_DL + - M6_UL + - M7_DL + - M7_UL + LTE: + type: array + items: + type: string + enum: + - M1 + - M2 + - M3 + - M4 + - M5 + - M1_EVENT_TRIGGERED + - M6 + - M7 + - M8 + - M9 + NR: + type: array + items: + type: string + enum: + - M1 + - M2 + - M3 + - M4 + - M5 + - M6 + - M7 + - M8 + - M9 + + tjMDTLoggingDuration-Type: + description: See details in 3GPP TS 32.422 clause 5.10.9. + type: string + enum: + - 600s + - 1200s + - 2400s + - 3600s + - 5400s + - 7200s + + tjMDTLoggingInterval-Type: + description: See details in 3GPP TS 32.422 clause 5.10.8. + type: string + enum: + - 1.28s + - 2.56s + - 5.12s + - 10.24s + - 20.48s + - 30.72s + - 40.96s + - 61.44s + + tjMDTMBSFNAreaList-Type: + description: See details in 3GPP TS 32.422 clause 5.10.25. + type: array + items: + type: object + properties: + mbsfnAreaId: + type: integer + minimum: 1 + earfcn: + type: integer + minimum: 1 + required: + - mbsfnAreaId + - earfcn + + tjMDTMeasurementPeriodLTE-Type: + description: See details in 3GPP TS 32.422 clause 5.10.23. + type: string + enum: + - 1024ms + - 1280ms + - 2048ms + - 2560ms + - 5120ms + - 10240ms + - 1min + + tjMDTMeasurementPeriodUMTS-Type: + description: See details in 3GPP TS 32.422 clause 5.10.22. + type: string + enum: + - 250ms + - 500ms + - 1000ms + - 2000ms + - 3000ms + - 4000ms + - 6000ms + - 8000ms + - 12000ms + - 16000ms + - 20000ms + - 24000ms + - 28000ms + - 32000ms + - 64000ms + + tjMDTMeasurementQuantity-Type: + description: See details in 3GPP TS 32.422 clause 5.10.15. + type: string + enum: + - CPICH_EcNo + - CPICH_RSCP + - PathLoss + + tjMDTPLMList-Type: + description: See details in 3GPP TS 32.422 clause 5.10.24. + type: array + items: + type: object + properties: + mcc: + $ref: '#/components/schemas/Mcc' + mnc: + $ref: '#/components/schemas/Mnc' + required: + - mcc + - mnc + maxItems: 16 + + tjMDTPositioningMethod-Type: + description: See details in 3GPP TS 32.422 clause 5.10.19. + type: string + enum: + - GNSS + - E-CELL_ID + + tjMDTReportAmount-Type: + description: See details in 3GPP TS 32.422 clause 5.10.6. + type: string + enum: + - 1 + - 2 + - 4 + - 8 + - 16 + - 32 + - 64 + - INFINITY + + tjMDTReportingTrigger-Type: + description: See details in 3GPP TS 32.422 clause 5.10.4. + type: array + items: + type: string + enum: + - PERIODICAL + - A2_FOR_LTE + - 1F_FOR_UMTS + - 1I_FOR_UMTS_MCPS_TDD + - A2_TRIGGERED_PERIODIC_FOR_LTE + - ALL_CONFIGURED_RRM_FOR_LTE + - ALL_CONFIGURED_RRM_FOR_UMTS + + tjMDTReportInterval-Type: + description: See details in 3GPP TS 32.422 clause 5.10.5. + type: string + enum: + - 250ms + - 500ms + - 1000ms + - 2000ms + - 3000ms + - 4000ms + - 6000ms + - 8000ms + - 12000ms + - 16000ms + - 20000ms + - 24000ms + - 28000ms + - 32000ms + - 64000ms + - 120ms + - 240ms + - 480ms + - 640ms + - 1024ms + - 2048ms + - 5120ms + - 10240ms + - 60000ms + - 360000ms + - 720000ms + - 1800000ms + - 3600000ms + + tjMDTReportType-Type: + description: Report type for logged NR MDT. See details in 3GPP TS 32.422 clause 5.10.27. + type: string + enum: + - PERIODICAL + - EVENT_TRIGGERED + + tjMDTSensorInformation-Type: + description: See details in 3GPP TS 32.422 clause 5.10.29. + type: array + items: + type: string + enum: + - BAROMETRIC_PRESSURE + - UE_SPEED + - UE_ORIENTATION + + tjMDTTraceCollectionEntityID-Type: + description: See details in 3GPP TS 32.422 clause 5.10.11. Only tceID value may be sent over the air to the UE being configured for Logged MDT. + type: object + properties: + tceID: + type: integer + tcePLMN: + type: object + properties: + mcc: + $ref: '#/components/schemas/Mcc' + mnc: + $ref: '#/components/schemas/Mnc' + required: + - mcc + - mnc + tceAddress: + oneOf: + - $ref: '#/components/schemas/tjTraceCollectionEntityAddress-Type' + - $ref: '#/components/schemas/tjStreamingTraceConsumerURI-Type' + required: + - tceID + - tcePLMN + - tceAddress + + +#-------- end of Definition of types used in Trace control NRM fragment ---------- + + +#-------- Definition of abstract IOC Top ----------------------------------------- + + Top-Attr: + # This definition will be deprecated, when all occurances of Top-Attr + # are replaced by Top. + type: object + properties: + id: + type: string + VsDataContainer: + $ref: '#/components/schemas/VsDataContainer-Multiple' + Top: + type: object + properties: + id: + type: string + VsDataContainer: + $ref: '#/components/schemas/VsDataContainer-Multiple' + +#-------- Definition of IOCs with new name-containments defined in other TS ------ + + SubNetwork-Attr: + type: object + properties: + dnPrefix: + type: string + userLabel: + type: string + userDefinedNetworkType: + type: string + setOfMcc: + $ref: '#/components/schemas/SetOfMcc' + priorityLabel: + type: integer + supportedPerfMetricGroups: + type: array + items: + $ref: '#/components/schemas/SupportedPerfMetricGroup' + ManagedElement-Attr: + type: object + properties: + dnPrefix: + type: string + managedElementTypeList: + $ref: '#/components/schemas/ManagedElementTypeList' + userLabel: + type: string + locationName: + type: string + managedBy: + $ref: '#/components/schemas/DnList' + vendorName: + type: string + userDefinedState: + type: string + swVersion: + type: string + priorityLabel: + type: integer + supportedPerfMetricGroups: + type: array + items: + $ref: '#/components/schemas/SupportedPerfMetricGroup' + + SubNetwork-ncO: + type: object + properties: + ManagementNode: + $ref: '#/components/schemas/ManagementNode-Multiple' + MeContext: + $ref: '#/components/schemas/MeContext-Multiple' + PerfMetricJob: + $ref: '#/components/schemas/PerfMetricJob-Multiple' + ThresholdMonitor: + $ref: '#/components/schemas/ThresholdMonitor-Multiple' + ThresholdMonitoringCapability: + $ref: '#/components/schemas/ThresholdMonitoringCapability-Single' + NtfSubscriptionControl: + $ref: '#/components/schemas/NtfSubscriptionControl-Multiple' + TraceJob: + $ref: '#/components/schemas/TraceJob-Multiple' + AlarmList: + $ref: '#/components/schemas/AlarmList-Single' + ManagedElement-ncO: + type: object + properties: + PerfMetricJob: + $ref: '#/components/schemas/PerfMetricJob-Multiple' + ThresholdMonitor: + $ref: '#/components/schemas/ThresholdMonitor-Multiple' + ThresholdMonitoringCapability: + $ref: '#/components/schemas/ThresholdMonitoringCapability-Single' + NtfSubscriptionControl: + $ref: '#/components/schemas/NtfSubscriptionControl-Multiple' + TraceJob: + $ref: '#/components/schemas/TraceJob-Multiple' + AlarmList: + $ref: '#/components/schemas/AlarmList-Single' + +#-------- Definition of abstract IOCs -------------------------------------------- + + ManagedFunction-Attr: + type: object + properties: + userLabel: + type: string + vnfParametersList: + $ref: '#/components/schemas/VnfParametersList' + peeParametersList: + $ref: '#/components/schemas/PeeParametersList' + priorityLabel: + type: integer + supportedPerfMetricGroups: + type: array + items: + $ref: '#/components/schemas/SupportedPerfMetricGroup' + EP_RP-Attr: + type: object + properties: + userLabel: + type: string + farEndEntity: + type: string + supportedPerfMetricGroups: + type: array + items: + $ref: '#/components/schemas/SupportedPerfMetricGroup' + + TraceJob-Attr: + type: object + description: abstract class used as a container of all TraceJob attributes + properties: + tjJobType: + $ref: '#/components/schemas/tjJobType-Type' + tjListOfInterfaces: + $ref: '#/components/schemas/tjListOfInterfaces-Type' + tjListOfNeTypes: + $ref: '#/components/schemas/tjListOfNeTypes-Type' + tjPLMNTarget: + $ref: '#/components/schemas/tjPLMNTaget-Type' + tjTraceConsumer: + oneOf: + - $ref: '#/components/schemas/tjStreamingTraceConsumerURI-Type' + - $ref: '#/components/schemas/tjTraceCollectionEntityAddress-Type' + tjTraceDepth: + $ref: '#/components/schemas/tjTraceDepth-Type' + tjTraceReference: + $ref: '#/components/schemas/tjTraceReference-Type' + tjTraceReportingFormat: + $ref: '#/components/schemas/tjTraceReportingFormat-Type' + tjTraceTarget: + $ref: '#/components/schemas/tjTraceTarget-Type' + tjTriggeringEvent: + $ref: '#/components/schemas/tjTriggeringEvent-Type' + tjMDTAnonymizationOfData: + $ref: '#/components/schemas/tjMDTAnonymizationOfData-Type' + tjMDTAreaConfigurationForNeighCell: + $ref: '#/components/schemas/tjMDTAreaConfigurationForNeighCell-Type' + tjMDTAreaScope: + $ref: '#/components/schemas/tjMDTAreaScope-Type' + tjMDTCollectionPeriodRrmLte: + $ref: '#/components/schemas/tjMDTCollectionPeriodRrmLte-Type' + tjMDTCollectionPeriodRrmUmts: + $ref: '#/components/schemas/tjMDTCollectionPeriodRrmUmts-Type' + tjMDTEventListForTriggeredMeasurement: + $ref: '#/components/schemas/tjMDTEventListForTriggeredMeasurement-Type' + tjMDTEventThreshold: + $ref: '#/components/schemas/tjMDTEventThreshold-Type' + tjMDTListOfMeasurements: + $ref: '#/components/schemas/tjMDTListOfMeasurements-Type' + tjMDTLoggingDuration: + $ref: '#/components/schemas/tjMDTLoggingDuration-Type' + tjMDTLoggingInterval: + $ref: '#/components/schemas/tjMDTLoggingInterval-Type' + tjMDTMBSFNAreaList: + $ref: '#/components/schemas/tjMDTMBSFNAreaList-Type' + tjMDTMeasurementPeriodLTE: + $ref: '#/components/schemas/tjMDTMeasurementPeriodLTE-Type' + tjMDTMeasurementPeriodUMTS: + $ref: '#/components/schemas/tjMDTMeasurementPeriodUMTS-Type' + tjMDTMeasurementQuantity: + $ref: '#/components/schemas/tjMDTMeasurementQuantity-Type' + tjMDTPLMList: + $ref: '#/components/schemas/tjMDTPLMList-Type' + tjMDTPositioningMethod: + $ref: '#/components/schemas/tjMDTPositioningMethod-Type' + tjMDTReportAmount: + $ref: '#/components/schemas/tjMDTReportAmount-Type' + tjMDTReportingTrigger: + $ref: '#/components/schemas/tjMDTReportingTrigger-Type' + tjMDTReportInterval: + $ref: '#/components/schemas/tjMDTReportInterval-Type' + tjMDTReportType: + $ref: '#/components/schemas/tjMDTReportType-Type' + tjMDTSensorInformation: + $ref: '#/components/schemas/tjMDTSensorInformation-Type' + tjMDTTraceCollectionEntityID: + $ref: '#/components/schemas/tjMDTTraceCollectionEntityID-Type' + required: + - tjJobType + - tjTraceReference + - tjTraceConsumer + - tjTraceReportingFormat + - tjTraceTarget + + ManagedFunction-ncO: + type: object + properties: + PerfMetricJob: + $ref: '#/components/schemas/PerfMetricJob-Multiple' + ThresholdMonitor: + $ref: '#/components/schemas/ThresholdMonitor-Multiple' + ThresholdMonitoringCapability: + $ref: '#/components/schemas/ThresholdMonitoringCapability-Single' + ManagedNFService: + $ref: '#/components/schemas/ManagedNFService-Multiple' + TraceJob: + $ref: '#/components/schemas/TraceJob-Multiple' + +#-------- Definition of concrete IOCs -------------------------------------------- + + VsDataContainer-Single: + type: object + properties: + id: + type: string + attributes: + type: object + properties: + vsDataType: + type: string + vsDataFormatVersion: + type: string + vsData: + nullable: true + VsDataContainer: + $ref: '#/components/schemas/VsDataContainer-Multiple' + ManagedNFService-Single: + allOf: + - $ref: '#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + type: object + properties: + userLabel: + type: string + nFServiceType: + $ref: '#/components/schemas/NFServiceType' + sAP: + $ref: '#/components/schemas/SAP' + operations: + $ref: '#/components/schemas/OperationList' + administrativeState: + $ref: '#/components/schemas/AdministrativeState' + operationalState: + $ref: '#/components/schemas/OperationalState' + usageState: + $ref: '#/components/schemas/UsageState' + registrationState: + $ref: '#/components/schemas/RegistrationState' + ManagementNode-Single: + allOf: + - $ref: '#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + type: object + properties: + userLabel: + type: string + managedElements: + $ref: '#/components/schemas/DnList' + vendorName: + type: string + userDefinedState: + type: string + locationName: + type: string + swVersion: + type: string + MeContext-Single: + allOf: + - $ref: '#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + type: object + properties: + dnPrefix: + type: string + PerfMetricJob-Single: + allOf: + - $ref: '#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + type: object + properties: + administrativeState: + $ref: '#/components/schemas/AdministrativeState' + operationalState: + $ref: '#/components/schemas/OperationalState' + perfMetricJobGroupId: + type: string + performanceMetrics: + type: array + items: + type: string + granularityPeriod: + type: integer + minimum: 1 + objectInstances: + $ref: '#/components/schemas/DnList' + rootObjectInstances: + $ref: '#/components/schemas/DnList' + reportingCtrl: + $ref: '#/components/schemas/ReportingCtrl' + ThresholdMonitoringCapability-Single: + allOf: + - $ref: '#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + type: object + properties: + supportedMonitoringGPs: + $ref: '#/components/schemas/MonitoringGPList' + ThresholdMonitor-Single: + allOf: + - $ref: '#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + type: object + properties: + thresholdInfoList: + $ref: '#/components/schemas/ThresholdInfoList' + monitoringGP: + type: integer + monitoringNotifTarget: + type: string + monitoredIOCName: + type: string + monitoredObjectDNs: + $ref: '#/components/schemas/DnList' + NtfSubscriptionControl-Single: + allOf: + - $ref: '#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + type: object + properties: + notificationRecipientAddress: + $ref: '#/components/schemas/Uri' + notificationTypes: + $ref: '#/components/schemas/NotificationTypes' + scope: + $ref: '#/components/schemas/Scope' + notificationFilter: + type: string + HeartbeatControl: + $ref: '#/components/schemas/HeartbeatControl-Single' + HeartbeatControl-Single: + allOf: + - $ref: '#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + type: object + properties: + heartbeatNtfPeriod: + type: integer + triggerHeartbeatNtf: + type: boolean + TraceJob-Single: + allOf: + - $ref: '#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + $ref: '#/components/schemas/TraceJob-Attr' + + AlarmList-Single: + allOf: + - $ref: '#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + type: object + properties: + administrativeState: + $ref: '#/components/schemas/AdministrativeState' + operationalState: + $ref: '#/components/schemas/OperationalState' + numOfAlarmRecords: + type: integer + lastModification: + $ref: '#/components/schemas/DateTime' + alarmRecords: + description: >- + This resource represents a map of alarm records. + The alarmIds are used as keys in the map. + type: object + additionalProperties: + $ref: 'faultMnS.yaml#/components/schemas/AlarmRecord' + +#-------- Definition of JSON arrays for name-contained IOCs ---------------------- + + VsDataContainer-Multiple: + type: array + items: + $ref: '#/components/schemas/VsDataContainer-Single' + ManagedNFService-Multiple: + type: array + items: + $ref: '#/components/schemas/ManagedNFService-Single' + ManagementNode-Multiple: + type: array + items: + $ref: '#/components/schemas/ManagementNode-Single' + MeContext-Multiple: + type: array + items: + $ref: '#/components/schemas/MeContext-Single' + PerfMetricJob-Multiple: + type: array + items: + $ref: '#/components/schemas/PerfMetricJob-Single' + ThresholdMonitor-Multiple: + type: array + items: + $ref: '#/components/schemas/ThresholdMonitor-Single' + NtfSubscriptionControl-Multiple: + type: array + items: + $ref: '#/components/schemas/NtfSubscriptionControl-Single' + TraceJob-Multiple: + type: array + items: + $ref: '#/components/schemas/TraceJob-Single' + +#-------- Definitions in TS 28.623 for TS 28.532 --------------------------------- + + resources-genericNrm: + oneOf: + + - $ref: '#/components/schemas/VsDataContainer-Single' + + - $ref: '#/components/schemas/ManagementNode-Single' + - $ref: '#/components/schemas/MeContext-Single' + + - $ref: '#/components/schemas/ManagedNFService-Single' + + - $ref: '#/components/schemas/PerfMetricJob-Single' + + - $ref: '#/components/schemas/ThresholdMonitoringCapability-Single' + - $ref: '#/components/schemas/ThresholdMonitor-Single' + + - $ref: '#/components/schemas/NtfSubscriptionControl-Single' + - $ref: '#/components/schemas/HeartbeatControl-Single' + - $ref: '#/components/schemas/TraceJob-Single' + + - $ref: '#/components/schemas/AlarmList-Single' diff --git a/OpenAPI/heartbeatNtf.yaml b/OpenAPI/heartbeatNtf.yaml new file mode 100644 index 000000000..afde5066d --- /dev/null +++ b/OpenAPI/heartbeatNtf.yaml @@ -0,0 +1,23 @@ +openapi: 3.0.1 +info: + title: Heartbeat notification + version: 16.3.0 + description: >- + OAS 3.0.1 specification of the heartbeat notification + © 2020, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). + All rights reserved. +externalDocs: + description: 3GPP TS 28.532 V16.3.0; Heartbeat notification + url: http://www.3gpp.org/ftp/Specs/archive/28_series/28.6532/ +paths: {} +components: + schemas: + hearbeatNtfPeriod-Type: + type: integer + notifyHeartbeat-NotifType: + allOf: + - $ref: 'provMnS.yaml#/components/schemas/header-Type' + - type: object + properties: + heartbeatNtfPeriod: + $ref: '#/components/schemas/hearbeatNtfPeriod-Type' diff --git a/OpenAPI/nrNrm.yaml b/OpenAPI/nrNrm.yaml new file mode 100644 index 000000000..6fffb075d --- /dev/null +++ b/OpenAPI/nrNrm.yaml @@ -0,0 +1,1869 @@ +openapi: 3.0.1 +info: + title: NR NRM + version: 16.6.0 + description: >- + OAS 3.0.1 specification of the NR NRM + © 2020, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). + All rights reserved. +externalDocs: + description: 3GPP TS 28.541 V16.6.0; 5G NRM, NR NRM + url: http://www.3gpp.org/ftp/Specs/archive/28_series/28.541/ +paths: {} +components: + schemas: + +#-------- Definition of types----------------------------------------------------- + + GnbId: + type: string + GnbIdLength: + type: integer + minimum: 22 + maximum: 32 + GnbName: + type: string + maxLength: 150 + GnbDuId: + type: number + minimum: 0 + maximum: 68719476735 + GnbCuUpId: + type: number + minimum: 0 + maximum: 68719476735 + + Sst: + type: integer + maximum: 255 + Snssai: + type: object + properties: + sst: + $ref: '#/components/schemas/Sst' + sd: + type: string + SnssaiList: + type: array + items: + $ref: '#/components/schemas/Snssai' + + Mnc: + type: string + pattern: '[0-9]{3}|[0-9]{2}' + PlmnId: + type: object + properties: + mcc: + $ref: 'genericNrm.yaml#/components/schemas/Mcc' + mnc: + $ref: '#/components/schemas/Mnc' + PlmnIdList: + type: array + items: + $ref: '#/components/schemas/PlmnId' + PlmnInfo: + type: object + properties: + plmnId": + $ref: '#/components/schemas/PlmnId' + snssai: + $ref: '#/components/schemas/Snssai' + PlmnInfoList: + type: array + items: + $ref: '#/components/schemas/PlmnInfo' + GGnbId: + type: string + pattern: '^[0-9]{3}[0-9]{2,3}-(22|23|24|25|26|27|28|29|30|31|32)-[0-9]{1,10}' + GEnbId: + type: string + pattern: '^[0-9]{3}[0-9]{2,3}-(18|20|21|22)-[0-9]{1,7}' + + GGnbIdList: + type: array + items: + $ref: '#/components/schemas/GGnbId' + + GEnbIdList: + type: array + items: + $ref: '#/components/schemas/GEnbId' + + NrPci: + type: integer + maximum: 503 + NrTac: + type: integer + maximum: 16777215 + Tai: + type: object + properties: + plmnId: + $ref: '#/components/schemas/PlmnId' + nrTac: + $ref: '#/components/schemas/NrTac' + + BackhaulAddress: + type: object + properties: + gnbId: + $ref: '#/components/schemas/GnbId' + tai: + $ref: "#/components/schemas/Tai" + MappingSetIDBackhaulAddress: + type: object + properties: + setID: + type: integer + backhaulAddress: + $ref: '#/components/schemas/BackhaulAddress' + IntraRatEsActivationOriginalCellLoadParameters: + type: object + properties: + loadThreshold: + type: integer + timeDuration: + type: integer + IntraRatEsActivationCandidateCellsLoadParameters: + type: object + properties: + loadThreshold: + type: integer + timeDuration: + type: integer + IntraRatEsDeactivationCandidateCellsLoadParameters: + type: object + properties: + loadThreshold: + type: integer + timeDuration: + type: integer + EsNotAllowedTimePeriod: + type: object + properties: + startTimeandendTime: + type: string + periodOfDay: + type: string + daysOfWeekList: + type: string + listoftimeperiods: + type: string + InterRatEsActivationOriginalCellParameters: + type: object + properties: + loadThreshold: + type: integer + timeDuration: + type: integer + InterRatEsActivationCandidateCellParameters: + type: object + properties: + loadThreshold: + type: integer + timeDuration: + type: integer + InterRatEsDeactivationCandidateCellParameters: + type: object + properties: + loadThreshold: + type: integer + timeDuration: + type: integer + + UeAccProbilityDist: + type: object + properties: + targetProbability: + type: integer + numberofpreamblessent: + type: integer + + UeAccDelayProbilityDist: + type: object + properties: + targetProbability: + type: integer + accessdelay: + type: integer + + NRPciList: + type: object + properties: + NRPci: + type: integer + + CSonPciList: + type: object + properties: + NRPci: + type: integer + + MaximumDeviationHoTrigger: + type: integer + minimum: -20 + maximum: 20 + + MinimumTimeBetweenHoTriggerChange: + type: integer + minimum: 0 + maximum: 604800 + + TstoreUEcntxt: + type: integer + minimum: 0 + maximum: 1023 + + CellState: + type: string + enum: + - IDLE + - INACTIVE + - ACTIVE + CyclicPrefix: + type: string + enum: + - '15' + - '30' + - '60' + - '120' + TxDirection: + type: string + enum: + - DL + - UL + - DL and UL + BwpContext: + type: string + enum: + - DL + - UL + - SUL + IsInitialBwp: + type: string + enum: + - INITIAL + - OTHER + - SUL + QuotaType: + type: string + enum: + - STRICT + - FLOAT + IsESCoveredBy: + type: string + enum: + - NO + - PARTIAL + - FULL + RrmPolicyMember: + type: object + properties: + plmnId: + $ref: '#/components/schemas/PlmnId' + snssai: + $ref: '#/components/schemas/Snssai' + RrmPolicyMemberList: + type: array + items: + $ref: '#/components/schemas/RrmPolicyMember' + AddressWithVlan: + type: object + properties: + ipv4Address: + $ref: 'genericNrm.yaml#/components/schemas/Ipv4Addr' + ipv6Address: + $ref: 'genericNrm.yaml#/components/schemas/Ipv6Addr' + vlanId: + type: integer + minimum: 0 + maximum: 4096 + LocalAddress: + type: object + properties: + addressWithVlan: + $ref: '#/components/schemas/AddressWithVlan' + port: + type: integer + minimum: 0 + maximum: 65535 + RemoteAddress: + type: object + properties: + ipv4Address: + $ref: 'genericNrm.yaml#/components/schemas/Ipv4Addr' + ipv6Address: + $ref: 'genericNrm.yaml#/components/schemas/Ipv6Addr' + + CellIndividualOffset: + type: object + properties: + rsrpOffsetSSB: + type: integer + rsrqOffsetSSB: + type: integer + sinrOffsetSSB: + type: integer + rsrpOffsetCSI-RS: + type: integer + rsrqOffsetCSI-RS: + type: integer + sinrOffsetCSI-RS: + type: integer + QOffsetRange: + type: integer + enum: + - -24 + - -22 + - -20 + - -18 + - -16 + - -14 + - -12 + - -10 + - -8 + - -6 + - -5 + - -4 + - -3 + - -2 + - -1 + - 0 + - 24 + - 22 + - 20 + - 18 + - 16 + - 14 + - 12 + - 10 + - 8 + - 6 + - 5 + - 4 + - 3 + - 2 + - 1 + QOffsetRangeList: + type: object + properties: + rsrpOffsetSSB: + $ref: '#/components/schemas/QOffsetRange' + rsrqOffsetSSB: + $ref: '#/components/schemas/QOffsetRange' + sinrOffsetSSB: + $ref: '#/components/schemas/QOffsetRange' + rsrpOffsetCSI-RS: + $ref: '#/components/schemas/QOffsetRange' + rsrqOffsetCSI-RS: + $ref: '#/components/schemas/QOffsetRange' + sinrOffsetCSI-RS: + $ref: '#/components/schemas/QOffsetRange' + QOffsetFreq: + type: number + TReselectionNRSf: + type: integer + enum: + - 25 + - 50 + - 75 + - 100 + SsbPeriodicity: + type: integer + enum: + - 5 + - 10 + - 20 + - 40 + - 80 + - 160 + SsbDuration: + type: integer + enum: + - 1 + - 2 + - 3 + - 4 + - 5 + SsbSubCarrierSpacing: + type: integer + enum: + - 15 + - 30 + - 120 + - 240 + CoverageShape: + type: integer + maximum: 65535 + DigitalTilt: + type: integer + minimum: -900 + maximum: 900 + DigitalAzimuth: + type: integer + minimum: -1800 + maximum: 1800 + + RSSetId: + type: integer + maximum: 4194303 + + RSSetType: + type: string + enum: + - RS1 + - RS2 + + FrequencyDomainPara: + type: object + properties: + rimRSSubcarrierSpacing: + type: integer + rIMRSBandwidth: + type: integer + nrofGlobalRIMRSFrequencyCandidates: + type: integer + rimRSCommonCarrierReferencePoint: + type: integer + rimRSStartingFrequencyOffsetIdList: + type: array + items: + type: integer + + SequenceDomainPara: + type: object + properties: + nrofRIMRSSequenceCandidatesofRS1: + type: integer + rimRSScrambleIdListofRS1: + type: array + items: + type: integer + nrofRIMRSSequenceCandidatesofRS2: + type: integer + rimRSScrambleIdListofRS2: + type: array + items: + type: integer + enableEnoughNotEnoughIndication: + type: string + enum: + - ENABLE + - DISABLE + RIMRSScrambleTimerMultiplier: + type: integer + RIMRSScrambleTimerOffset: + type: integer + + TimeDomainPara: + type: object + properties: + dlULSwitchingPeriod1: + type: string + enum: + - MS0P5 + - MS0P625 + - MS1 + - MS1P25 + - MS2 + - MS2P5 + - MS3 + - MS4 + - MS5 + - MS10 + - MS20 + symbolOffsetOfReferencePoint1: + type: integer + dlULSwitchingPeriod2: + type: string + enum: + - MS0P5 + - MS0P625 + - MS1 + - MS1P25 + - MS2 + - MS2P5 + - MS3 + - MS4 + - MS5 + - MS10 + - MS20 + symbolOffsetOfReferencePoint2: + type: integer + totalnrofSetIdofRS1: + type: integer + totalnrofSetIdofRS2: + type: integer + nrofConsecutiveRIMRS1: + type: integer + nrofConsecutiveRIMRS2: + type: integer + consecutiveRIMRS1List: + type: array + items: + type: integer + consecutiveRIMRS2List: + type: array + items: + type: integer + enablenearfarIndicationRS1: + type: string + enum: + - ENABLE + - DISABLE + enablenearfarIndicationRS2: + type: string + enum: + - ENABLE + - DISABLE + + RimRSReportInfo: + type: object + properties: + detectedSetID: + type: integer + propagationDelay: + type: integer + functionalityOfRIMRS: + type: string + enum: + - RS1 + - RS2 + - RS1forEnoughMitigation + - RS1forNotEnoughMitigation + + RimRSReportConf: + type: object + properties: + reportIndicator: + type: string + enum: + - ENABLE + - DISABLE + reportInterval: + type: integer + nrofRIMRSReportInfo: + type: integer + maxPropagationDelay: + type: integer + rimRSReportInfoList: + type: array + items: + $ref: '#/components/schemas/RimRSReportInfo' + TceMappingInfo: + type: object + properties: + TceIPAddress: + oneOf: + - $ref: 'genericNrm.yaml#/components/schemas/Ipv4Addr' + - $ref: 'genericNrm.yaml#/components/schemas/Ipv6Addr' + TceID: + type: integer + PlmnTarget: + $ref: '#/components/schemas/PlmnId' + TceMappingInfoList: + type: array + items: + $ref: '#/components/schemas/TceMappingInfo' + + +#-------- Definition of abstract IOCs -------------------------------------------- + + RrmPolicy_-Attr: + type: object + properties: + resourceType: + type: string + rRMPolicyMemberList: + $ref: '#/components/schemas/RrmPolicyMemberList' + + +#-------- Definition of concrete IOCs -------------------------------------------- + + SubNetwork-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + $ref: 'genericNrm.yaml#/components/schemas/SubNetwork-Attr' + - $ref: 'genericNrm.yaml#/components/schemas/SubNetwork-ncO' + - type: object + properties: + SubNetwork: + $ref: '#/components/schemas/SubNetwork-Multiple' + ManagedElement: + $ref: '#/components/schemas/ManagedElement-Multiple' + NRFrequency: + $ref: '#/components/schemas/NRFrequency-Multiple' + ExternalGnbCuCpFunction: + $ref: '#/components/schemas/ExternalGnbCuCpFunction-Multiple' + ExternalENBFunction: + $ref: '#/components/schemas/ExternalENBFunction-Multiple' + EUtranFrequency: + $ref: '#/components/schemas/EUtranFrequency-Multiple' + DESManagementFunction: + $ref: '#/components/schemas/DESManagementFunction-Single' + DRACHOptimizationFunction: + $ref: '#/components/schemas/DRACHOptimizationFunction-Single' + DMROFunction: + $ref: '#/components/schemas/DMROFunction-Single' + DPCIConfigurationFunction: + $ref: '#/components/schemas/DPCIConfigurationFunction-Single' + CPCIConfigurationFunction: + $ref: '#/components/schemas/CPCIConfigurationFunction-Single' + CESManagementFunction: + $ref: '#/components/schemas/CESManagementFunction-Single' + Configurable5QISet: + $ref: '5gcNrm.yaml#/components/schemas/Configurable5QISet-Multiple' + RimRSGlobal: + $ref: '#/components/schemas/RimRSGlobal-Single' + Dynamic5QISet: + $ref: '5gcNrm.yaml#/components/schemas/Dynamic5QISet-Multiple' + + ManagedElement-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + $ref: 'genericNrm.yaml#/components/schemas/ManagedElement-Attr' + - $ref: 'genericNrm.yaml#/components/schemas/ManagedElement-ncO' + - type: object + properties: + GnbDuFunction: + $ref: '#/components/schemas/GnbDuFunction-Multiple' + GnbCuUpFunction: + $ref: '#/components/schemas/GnbCuUpFunction-Multiple' + GnbCuCpFunction: + $ref: '#/components/schemas/GnbCuCpFunction-Multiple' + DESManagementFunction: + $ref: '#/components/schemas/DESManagementFunction-Single' + DRACHOptimizationFunction: + $ref: '#/components/schemas/DRACHOptimizationFunction-Single' + DMROFunction: + $ref: '#/components/schemas/DMROFunction-Single' + DPCIConfigurationFunction: + $ref: '#/components/schemas/DPCIConfigurationFunction-Single' + CPCIConfigurationFunction: + $ref: '#/components/schemas/CPCIConfigurationFunction-Single' + CESManagementFunction: + $ref: '#/components/schemas/CESManagementFunction-Single' + Configurable5QISet: + $ref: '5gcNrm.yaml#/components/schemas/Configurable5QISet-Multiple' + Dynamic5QISet: + $ref: '5gcNrm.yaml#/components/schemas/Dynamic5QISet-Multiple' + + GnbDuFunction-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' + - type: object + properties: + gnbDuId: + $ref: '#/components/schemas/GnbDuId' + gnbDuName: + $ref: '#/components/schemas/GnbName' + gnbId: + $ref: '#/components/schemas/GnbId' + gnbIdLength: + $ref: '#/components/schemas/GnbIdLength' + rimRSReportConf: + $ref: '#/components/schemas/RimRSReportConf' + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' + - type: object + properties: + RRMPolicyRatio: + $ref: '#/components/schemas/RRMPolicyRatio-Multiple' + NrCellDu: + $ref: '#/components/schemas/NrCellDu-Multiple' + Bwp-Multiple: + $ref: '#/components/schemas/Bwp-Multiple' + NrSectorCarrier-Multiple: + $ref: '#/components/schemas/NrSectorCarrier-Multiple' + EP_F1C: + $ref: '#/components/schemas/EP_F1C-Single' + EP_F1U: + $ref: '#/components/schemas/EP_F1U-Multiple' + DRACHOptimizationFunction: + $ref: '#/components/schemas/DRACHOptimizationFunction-Single' + GnbCuUpFunction-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' + - type: object + properties: + gnbId: + $ref: '#/components/schemas/GnbId' + gnbIdLength: + $ref: '#/components/schemas/GnbIdLength' + gnbCuUpId: + $ref: '#/components/schemas/GnbCuUpId' + plmnInfoList: + $ref: '#/components/schemas/PlmnInfoList' + configurable5QISetRef: + $ref: 'genericNrm.yaml#/components/schemas/Dn' + dynamic5QISetRef: + $ref: 'genericNrm.yaml#/components/schemas/Dn' + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' + - type: object + properties: + RRMPolicyRatio: + $ref: '#/components/schemas/RRMPolicyRatio-Multiple' + EP_E1: + $ref: '#/components/schemas/EP_E1-Single' + EP_XnU: + $ref: '#/components/schemas/EP_XnU-Multiple' + EP_F1U: + $ref: '#/components/schemas/EP_F1U-Multiple' + EP_NgU: + $ref: '#/components/schemas/EP_NgU-Multiple' + EP_X2U: + $ref: '#/components/schemas/EP_X2U-Multiple' + EP_S1U: + $ref: '#/components/schemas/EP_S1U-Multiple' + GnbCuCpFunction-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' + - type: object + properties: + gnbId: + $ref: '#/components/schemas/GnbId' + gnbIdLength: + $ref: '#/components/schemas/GnbIdLength' + gnbCuName: + $ref: '#/components/schemas/GnbName' + plmnId: + $ref: '#/components/schemas/PlmnId' + x2BlackList: + $ref: '#/components/schemas/GGnbIdList' + xnBlackList: + $ref: '#/components/schemas/GGnbIdList' + x2WhiteList: + $ref: '#/components/schemas/GGnbIdList' + xnWhiteList: + $ref: '#/components/schemas/GGnbIdList' + x2XnHOBlackList: + $ref: '#/components/schemas/GEnbIdList' + mappingSetIDBackhaulAddress: + $ref: '#/components/schemas/MappingSetIDBackhaulAddress' + tceMappingInfoList: + $ref: '#/components/schemas/TceMappingInfoList' + configurable5QISetRef: + $ref: 'genericNrm.yaml#/components/schemas/Dn' + dynamic5QISetRef: + $ref: 'genericNrm.yaml#/components/schemas/Dn' + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' + - type: object + properties: + RRMPolicyRatio: + $ref: '#/components/schemas/RRMPolicyRatio-Multiple' + NrCellCu: + $ref: '#/components/schemas/NrCellCu-Multiple' + EP_XnC: + $ref: '#/components/schemas/EP_XnC-Multiple' + EP_E1: + $ref: '#/components/schemas/EP_E1-Multiple' + EP_F1C: + $ref: '#/components/schemas/EP_F1C-Multiple' + EP_NgC: + $ref: '#/components/schemas/EP_NgC-Multiple' + EP_X2C: + $ref: '#/components/schemas/EP_X2C-Multiple' + DANRManagementFunction: + $ref: '#/components/schemas/DANRManagementFunction-Single' + DESManagementFunction: + $ref: '#/components/schemas/DESManagementFunction-Single' + DMROFunction: + $ref: '#/components/schemas/DMROFunction-Single' + + NrCellCu-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' + - type: object + properties: + cellLocalId: + type: integer + plmnInfoList: + $ref: '#/components/schemas/PlmnInfoList' + nRFrequencyRef: + $ref: 'genericNrm.yaml#/components/schemas/Dn' + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' + - type: object + properties: + RRMPolicyRatio: + $ref: '#/components/schemas/RRMPolicyRatio-Multiple' + NRCellRelation: + $ref: '#/components/schemas/NRCellRelation-Multiple' + EUtranCellRelation: + $ref: '#/components/schemas/EUtranCellRelation-Multiple' + NRFreqRelation: + $ref: '#/components/schemas/NRFreqRelation-Multiple' + EUtranFreqRelation: + $ref: '#/components/schemas/EUtranFreqRelation-Multiple' + DESManagementFunction: + $ref: '#/components/schemas/DESManagementFunction-Single' + DMROFunction: + $ref: '#/components/schemas/DMROFunction-Single' + CESManagementFunction: + $ref: '#/components/schemas/CESManagementFunction-Single' + DPCIConfigurationFunction: + $ref: '#/components/schemas/DPCIConfigurationFunction-Single' + + NrCellDu-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' + - type: object + properties: + administrativeState: + $ref: 'genericNrm.yaml#/components/schemas/AdministrativeState' + operationalState: + $ref: 'genericNrm.yaml#/components/schemas/OperationalState' + cellLocalId: + type: integer + cellState: + $ref: '#/components/schemas/CellState' + plmnInfoList: + $ref: '#/components/schemas/PlmnInfoList' + nrPci: + $ref: '#/components/schemas/NrPci' + nrTac: + $ref: '#/components/schemas/NrTac' + arfcnDL: + type: integer + arfcnUL: + type: integer + arfcnSUL: + type: integer + bSChannelBwDL: + type: integer + bSChannelBwUL: + type: integer + bSChannelBwSUL: + type: integer + ssbFrequency: + type: integer + minimum: 0 + maximum: 3279165 + ssbPeriodicity: + $ref: '#/components/schemas/SsbPeriodicity' + ssbSubCarrierSpacing: + $ref: '#/components/schemas/SsbSubCarrierSpacing' + ssbOffset: + type: integer + minimum: 0 + maximum: 159 + ssbDuration: + $ref: '#/components/schemas/SsbDuration' + nrSectorCarrierRef: + type: array + items: + $ref: 'genericNrm.yaml#/components/schemas/Dn' + bwpRef: + type: array + items: + $ref: 'genericNrm.yaml#/components/schemas/Dn' + nRFrequencyRef: + $ref: 'genericNrm.yaml#/components/schemas/Dn' + victimSetRef: + $ref: 'genericNrm.yaml#/components/schemas/Dn' + aggressorSetRef: + $ref: 'genericNrm.yaml#/components/schemas/Dn' + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' + - type: object + properties: + RRMPolicyRatio: + $ref: '#/components/schemas/RRMPolicyRatio-Multiple' + CPCIConfigurationFunction: + $ref: '#/components/schemas/CPCIConfigurationFunction-Single' + DRACHOptimizationFunction: + $ref: '#/components/schemas/DRACHOptimizationFunction-Single' + + NRFrequency-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + type: object + properties: + absoluteFrequencySSB: + type: integer + minimum: 0 + maximum: 3279165 + ssbSubCarrierSpacing: + $ref: '#/components/schemas/SsbSubCarrierSpacing' + multiFrequencyBandListNR: + type: integer + minimum: 1 + maximum: 256 + EUtranFrequency-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + type: object + properties: + earfcnDL: + type: integer + minimum: 0 + maximum: 262143 + multiBandInfoListEutra: + type: integer + minimum: 1 + maximum: 256 + + NrSectorCarrier-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' + - type: object + properties: + txDirection: + $ref: '#/components/schemas/TxDirection' + configuredMaxTxPower: + type: integer + arfcnDL: + type: integer + arfcnUL: + type: integer + bSChannelBwDL: + type: integer + bSChannelBwUL: + type: integer + sectorEquipmentFunctionRef: + $ref: 'genericNrm.yaml#/components/schemas/Dn' + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' + - type: object + properties: + CommonBeamformingFunction: + $ref: '#/components/schemas/CommonBeamformingFunction-Single' + Bwp-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' + - type: object + properties: + bwpContext: + $ref: '#/components/schemas/BwpContext' + isInitialBwp: + $ref: '#/components/schemas/IsInitialBwp' + subCarrierSpacing: + type: integer + cyclicPrefix: + $ref: '#/components/schemas/CyclicPrefix' + startRB: + type: integer + numberOfRBs: + type: integer + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' + CommonBeamformingFunction-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + allOf: + - type: object + properties: + coverageShape: + $ref: '#/components/schemas/CoverageShape' + digitalAzimuth: + $ref: '#/components/schemas/DigitalAzimuth' + digitalTilt: + $ref: '#/components/schemas/DigitalTilt' + - type: object + properties: + Beam: + $ref: '#/components/schemas/Beam-Multiple' + Beam-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + allOf: + - type: object + properties: + beamIndex: + type: integer + beamType: + type: string + enum: + - SSB-BEAM + beamAzimuth: + type: integer + minimum: -1800 + maximum: 1800 + beamTilt: + type: integer + minimum: -900 + maximum: 900 + beamHorizWidth: + type: integer + minimum: 0 + maximum: 3599 + beamVertWidth: + type: integer + minimum: 0 + maximum: 1800 + RRMPolicyRatio-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + allOf: + - $ref: '#/components/schemas/RrmPolicy_-Attr' + - type: object + properties: + rRMPolicyMaxRatio: + type: integer + rRMPolicyMinRatio: + type: integer + rRMPolicyDedicatedRatio: + type: integer + + NRCellRelation-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + type: object + properties: + nRTCI: + type: integer + cellIndividualOffset: + $ref: '#/components/schemas/CellIndividualOffset' + adjacentNRCellRef: + $ref: 'genericNrm.yaml#/components/schemas/Dn' + nRFrequencyRef: + $ref: 'genericNrm.yaml#/components/schemas/Dn' + isRemoveAllowed: + type: boolean + isHOAllowed: + type: boolean + isESCoveredBy: + $ref: '#/components/schemas/IsESCoveredBy' + isENDCAllowed: + type: boolean + isMLBAllowed: + type: boolean + EUtranCellRelation-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' + - type: object + properties: + adjacentEUtranCellRef: + $ref: 'genericNrm.yaml#/components/schemas/Dn' + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' + NRFreqRelation-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + type: object + properties: + offsetMO: + $ref: '#/components/schemas/QOffsetRangeList' + blackListEntry: + type: array + items: + type: integer + minimum: 0 + maximum: 1007 + blackListEntryIdleMode: + type: integer + cellReselectionPriority: + type: integer + cellReselectionSubPriority: + type: number + minimum: 0.2 + maximum: 0.8 + multipleOf: 0.2 + pMax: + type: integer + minimum: -30 + maximum: 33 + qOffsetFreq: + $ref: '#/components/schemas/QOffsetFreq' + qQualMin: + type: number + qRxLevMin: + type: integer + minimum: -140 + maximum: -44 + threshXHighP: + type: integer + minimum: 0 + maximum: 62 + threshXHighQ: + type: integer + minimum: 0 + maximum: 31 + threshXLowP: + type: integer + minimum: 0 + maximum: 62 + threshXLowQ: + type: integer + minimum: 0 + maximum: 31 + tReselectionNr: + type: integer + minimum: 0 + maximum: 7 + tReselectionNRSfHigh: + $ref: '#/components/schemas/TReselectionNRSf' + tReselectionNRSfMedium: + $ref: '#/components/schemas/TReselectionNRSf' + nRFrequencyRef: + $ref: 'genericNrm.yaml#/components/schemas/Dn' + EUtranFreqRelation-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + type: object + properties: + cellIndividualOffset: + $ref: '#/components/schemas/CellIndividualOffset' + blackListEntry: + type: array + items: + type: integer + minimum: 0 + maximum: 1007 + blackListEntryIdleMode: + type: integer + cellReselectionPriority: + type: integer + cellReselectionSubPriority: + type: number + minimum: 0.2 + maximum: 0.8 + multipleOf: 0.2 + pMax: + type: integer + minimum: -30 + maximum: 33 + qOffsetFreq: + $ref: '#/components/schemas/QOffsetFreq' + qQualMin: + type: number + qRxLevMin: + type: integer + minimum: -140 + maximum: -44 + threshXHighP: + type: integer + minimum: 0 + maximum: 62 + threshXHighQ: + type: integer + minimum: 0 + maximum: 31 + threshXLowP: + type: integer + minimum: 0 + maximum: 62 + threshXLowQ: + type: integer + minimum: 0 + maximum: 31 + tReselectionEutran: + type: integer + minimum: 0 + maximum: 7 + tReselectionNRSfHigh: + $ref: '#/components/schemas/TReselectionNRSf' + tReselectionNRSfMedium: + $ref: '#/components/schemas/TReselectionNRSf' + eUTranFrequencyRef: + $ref: 'genericNrm.yaml#/components/schemas/Dn' + DANRManagementFunction-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + type: object + properties: + intrasystemANRManagementSwitch: + type: boolean + intersystemANRManagementSwitch: + type: boolean + + DESManagementFunction-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + type: object + properties: + desSwitch: + type: boolean + intraRatEsActivationOriginalCellLoadParameters: + $ref: "#/components/schemas/IntraRatEsActivationOriginalCellLoadParameters" + intraRatEsActivationCandidateCellsLoadParameters: + $ref: "#/components/schemas/IntraRatEsActivationCandidateCellsLoadParameters" + intraRatEsDeactivationCandidateCellsLoadParameters: + $ref: "#/components/schemas/IntraRatEsDeactivationCandidateCellsLoadParameters" + esNotAllowedTimePeriod: + $ref: "#/components/schemas/EsNotAllowedTimePeriod" + interRatEsActivationOriginalCellParameters: + $ref: "#/components/schemas/IntraRatEsActivationOriginalCellLoadParameters" + interRatEsActivationCandidateCellParameters: + $ref: "#/components/schemas/IntraRatEsActivationOriginalCellLoadParameters" + interRatEsDeactivationCandidateCellParameters: + $ref: "#/components/schemas/IntraRatEsActivationOriginalCellLoadParameters" + isProbingCapable: + type: string + enum: + - yes + - no + energySavingState: + type: string + enum: + - isNotEnergySaving + - isEnergySaving + + DRACHOptimizationFunction-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + type: object + properties: + drachOptimizationControl: + type: boolean + ueAccProbilityDist: + $ref: "#/components/schemas/UeAccProbilityDist" + ueAccDelayProbilityDist: + $ref: "#/components/schemas/UeAccDelayProbilityDist" + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' + + DMROFunction-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + type: object + properties: + dmroControl: + type: boolean + maximumDeviationHoTrigger: + $ref: '#/components/schemas/MaximumDeviationHoTrigger' + minimumTimeBetweenHoTriggerChange: + $ref: '#/components/schemas/MinimumTimeBetweenHoTriggerChange' + tstoreUEcntxt: + $ref: '#/components/schemas/TstoreUEcntxt' + + DPCIConfigurationFunction-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + type: object + properties: + dPciConfigurationControl: + type: boolean + nRPciList: + $ref: "#/components/schemas/NRPciList" + + CPCIConfigurationFunction-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + type: object + properties: + cPciConfigurationControl: + type: boolean + cSonPciList: + $ref: "#/components/schemas/CSonPciList" + + CESManagementFunction-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + type: object + properties: + cesSwitch: + type: boolean + energySavingControl: + type: string + enum: + - toBeEnergySaving + - toBeNotEnergySaving + energySavingState: + type: string + enum: + - isNotEnergySaving + - isEnergySaving + + RimRSGlobal-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + type: object + properties: + frequencyDomainPara: + $ref: '#/components/schemas/FrequencyDomainPara' + sequenceDomainPara: + $ref: '#/components/schemas/SequenceDomainPara' + timeDomainPara: + $ref: '#/components/schemas/TimeDomainPara' + RimRSSet: + $ref: '#/components/schemas/RimRSSet-Multiple' + + RimRSSet-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + type: object + properties: + setId: + $ref: '#/components/schemas/RSSetId' + setType: + $ref: '#/components/schemas/RSSetType' + rimRSMonitoringStartTime: + type: string + rimRSMonitoringStopTime: + type: string + rimRSMonitoringWindowDuration: + type: integer + rimRSMonitoringWindowStartingOffset: + type: integer + rimRSMonitoringWindowPeriodicity: + type: integer + rimRSMonitoringOccasionInterval: + type: integer + rimRSMonitoringOccasionStartingOffset: + type: integer + nRCellDURefs: + $ref: 'genericNrm.yaml#/components/schemas/DnList' + + ExternalGnbDuFunction-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' + - type: object + properties: + gnbId: + $ref: '#/components/schemas/GnbId' + gnbIdLength: + $ref: '#/components/schemas/GnbIdLength' + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' + - type: object + properties: + EP_F1C: + $ref: '#/components/schemas/EP_F1C-Multiple' + EP_F1U: + $ref: '#/components/schemas/EP_F1U-Multiple' + ExternalGnbCuUpFunction-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' + - type: object + properties: + gnbId: + $ref: '#/components/schemas/GnbId' + gnbIdLength: + $ref: '#/components/schemas/GnbIdLength' + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' + - type: object + properties: + EP_E1: + $ref: '#/components/schemas/EP_E1-Multiple' + EP_F1U: + $ref: '#/components/schemas/EP_F1U-Multiple' + EP_XnU: + $ref: '#/components/schemas/EP_XnU-Multiple' + ExternalGnbCuCpFunction-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + allOf: + - $ref: >- + genericNrm.yaml#/components/schemas/ManagedFunction-Attr + - type: object + properties: + gnbId: + $ref: '#/components/schemas/GnbId' + gnbIdLength: + $ref: '#/components/schemas/GnbIdLength' + plmnId: + $ref: '#/components/schemas/PlmnId' + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' + - type: object + properties: + ExternalNrCellCu: + $ref: '#/components/schemas/ExternalNrCellCu-Multiple' + EP_XnC: + $ref: '#/components/schemas/EP_XnC-Multiple' + EP_E1: + $ref: '#/components/schemas/EP_E1-Multiple' + EP_F1C: + $ref: '#/components/schemas/EP_F1C-Multiple' + ExternalNrCellCu-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' + - type: object + properties: + cellLocalId: + type: integer + nrPci: + $ref: '#/components/schemas/NrPci' + plmnIdList: + $ref: '#/components/schemas/PlmnIdList' + nRFrequencyRef: + $ref: 'genericNrm.yaml#/components/schemas/Dn' + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' + ExternalENBFunction-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' + - type: object + properties: + eNBId: + type: integer + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' + - type: object + properties: + ExternalEUTranCell: + $ref: '#/components/schemas/ExternalEUTranCell-Multiple' + ExternalEUTranCell-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' + - type: object + properties: + EUtranFrequencyRef: + $ref: 'genericNrm.yaml#/components/schemas/Dn' + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' + + EP_XnC-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' + - type: object + properties: + localAddress: + $ref: '#/components/schemas/LocalAddress' + remoteAddress: + $ref: '#/components/schemas/RemoteAddress' + EP_E1-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' + - type: object + properties: + localAddress: + $ref: '#/components/schemas/LocalAddress' + remoteAddress: + $ref: '#/components/schemas/RemoteAddress' + EP_F1C-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' + - type: object + properties: + localAddress: + $ref: '#/components/schemas/LocalAddress' + remoteAddress: + $ref: '#/components/schemas/RemoteAddress' + EP_NgC-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' + - type: object + properties: + localAddress: + $ref: '#/components/schemas/LocalAddress' + remoteAddress: + $ref: '#/components/schemas/RemoteAddress' + EP_X2C-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' + - type: object + properties: + localAddress: + $ref: '#/components/schemas/LocalAddress' + remoteAddress: + $ref: '#/components/schemas/RemoteAddress' + EP_XnU-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' + - type: object + properties: + localAddress: + $ref: '#/components/schemas/LocalAddress' + remoteAddress: + $ref: '#/components/schemas/RemoteAddress' + EP_F1U-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' + - type: object + properties: + localAddress: + $ref: '#/components/schemas/LocalAddress' + remoteAddress: + $ref: '#/components/schemas/RemoteAddress' + EP_NgU-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' + - type: object + properties: + localAddress: + $ref: '#/components/schemas/LocalAddress' + remoteAddress: + $ref: '#/components/schemas/RemoteAddress' + epTransportRefs: + $ref: 'genericNrm.yaml#/components/schemas/DnList' + + EP_X2U-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' + - type: object + properties: + localAddress: + $ref: '#/components/schemas/LocalAddress' + remoteAddress: + $ref: '#/components/schemas/RemoteAddress' + EP_S1U-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' + - type: object + properties: + localAddress: + $ref: '#/components/schemas/LocalAddress' + remoteAddress: + $ref: '#/components/schemas/RemoteAddress' + +#-------- Definition of JSON arrays for name-contained IOCs ---------------------- + + SubNetwork-Multiple: + type: array + items: + $ref: '#/components/schemas/SubNetwork-Single' + ManagedElement-Multiple: + type: array + items: + $ref: '#/components/schemas/ManagedElement-Single' + GnbDuFunction-Multiple: + type: array + items: + $ref: '#/components/schemas/GnbDuFunction-Single' + GnbCuUpFunction-Multiple: + type: array + items: + $ref: '#/components/schemas/GnbCuUpFunction-Single' + GnbCuCpFunction-Multiple: + type: array + items: + $ref: '#/components/schemas/GnbCuCpFunction-Single' + + NrCellDu-Multiple: + type: array + items: + $ref: '#/components/schemas/NrCellDu-Single' + NrCellCu-Multiple: + type: array + items: + $ref: '#/components/schemas/NrCellCu-Single' + + NRFrequency-Multiple: + type: array + minItems: 1 + items: + $ref: '#/components/schemas/NRFrequency-Single' + EUtranFrequency-Multiple: + type: array + minItems: 1 + items: + $ref: '#/components/schemas/EUtranFrequency-Single' + + NrSectorCarrier-Multiple: + type: array + items: + $ref: '#/components/schemas/NrSectorCarrier-Single' + Bwp-Multiple: + type: array + items: + $ref: '#/components/schemas/Bwp-Single' + Beam-Multiple: + type: array + items: + $ref: '#/components/schemas/Beam-Single' + RRMPolicyRatio-Multiple: + type: array + items: + $ref: '#/components/schemas/RRMPolicyRatio-Single' + + NRCellRelation-Multiple: + type: array + items: + $ref: '#/components/schemas/NRCellRelation-Single' + EUtranCellRelation-Multiple: + type: array + items: + $ref: '#/components/schemas/EUtranCellRelation-Single' + NRFreqRelation-Multiple: + type: array + items: + $ref: '#/components/schemas/NRFreqRelation-Single' + EUtranFreqRelation-Multiple: + type: array + items: + $ref: '#/components/schemas/EUtranFreqRelation-Single' + + RimRSSet-Multiple: + type: array + items: + $ref: '#/components/schemas/RimRSSet-Single' + + ExternalGnbDuFunction-Multiple: + type: array + items: + $ref: '#/components/schemas/ExternalGnbDuFunction-Single' + ExternalGnbCuUpFunction-Multiple: + type: array + items: + $ref: '#/components/schemas/ExternalGnbCuUpFunction-Single' + ExternalGnbCuCpFunction-Multiple: + type: array + items: + $ref: '#/components/schemas/ExternalGnbCuCpFunction-Single' + ExternalNrCellCu-Multiple: + type: array + items: + $ref: '#/components/schemas/ExternalNrCellCu-Single' + + ExternalENBFunction-Multiple: + type: array + items: + $ref: '#/components/schemas/ExternalENBFunction-Single' + ExternalEUTranCell-Multiple: + type: array + items: + $ref: '#/components/schemas/ExternalEUTranCell-Single' + + EP_E1-Multiple: + type: array + items: + $ref: '#/components/schemas/EP_E1-Single' + EP_XnC-Multiple: + type: array + items: + $ref: '#/components/schemas/EP_XnC-Single' + EP_F1C-Multiple: + type: array + items: + $ref: '#/components/schemas/EP_F1C-Single' + EP_NgC-Multiple: + type: array + items: + $ref: '#/components/schemas/EP_NgC-Single' + EP_X2C-Multiple: + type: array + items: + $ref: '#/components/schemas/EP_X2C-Single' + EP_XnU-Multiple: + type: array + items: + $ref: '#/components/schemas/EP_XnU-Single' + EP_F1U-Multiple: + type: array + items: + $ref: '#/components/schemas/EP_F1U-Single' + EP_NgU-Multiple: + type: array + items: + $ref: '#/components/schemas/EP_NgU-Single' + EP_X2U-Multiple: + type: array + items: + $ref: '#/components/schemas/EP_X2U-Single' + EP_S1U-Multiple: + type: array + items: + $ref: '#/components/schemas/EP_S1U-Single' + +#-------- Definitions in TS 28.541 for TS 28.532 --------------------------------- + + resources-nrNrm: + oneOf: + - $ref: '#/components/schemas/SubNetwork-Single' + - $ref: '#/components/schemas/ManagedElement-Single' + + - $ref: '#/components/schemas/GnbDuFunction-Single' + - $ref: '#/components/schemas/GnbCuUpFunction-Single' + - $ref: '#/components/schemas/GnbCuCpFunction-Single' + + - $ref: '#/components/schemas/NrCellCu-Single' + - $ref: '#/components/schemas/NrCellDu-Single' + + - $ref: '#/components/schemas/NRFrequency-Single' + - $ref: '#/components/schemas/EUtranFrequency-Single' + + - $ref: '#/components/schemas/NrSectorCarrier-Single' + - $ref: '#/components/schemas/Bwp-Single' + - $ref: '#/components/schemas/CommonBeamformingFunction-Single' + - $ref: '#/components/schemas/Beam-Single' + - $ref: '#/components/schemas/RRMPolicyRatio-Single' + + - $ref: '#/components/schemas/NRCellRelation-Single' + - $ref: '#/components/schemas/EUtranCellRelation-Single' + - $ref: '#/components/schemas/NRFreqRelation-Single' + - $ref: '#/components/schemas/EUtranFreqRelation-Single' + + - $ref: '#/components/schemas/DANRManagementFunction-Single' + - $ref: '#/components/schemas/DESManagementFunction-Single' + - $ref: '#/components/schemas/DRACHOptimizationFunction-Single' + - $ref: '#/components/schemas/DMROFunction-Single' + - $ref: '#/components/schemas/DPCIConfigurationFunction-Single' + - $ref: '#/components/schemas/CPCIConfigurationFunction-Single' + - $ref: '#/components/schemas/CESManagementFunction-Single' + + - $ref: '#/components/schemas/RimRSGlobal-Single' + - $ref: '#/components/schemas/RimRSSet-Single' + + - $ref: '#/components/schemas/ExternalGnbDuFunction-Single' + - $ref: '#/components/schemas/ExternalGnbCuUpFunction-Single' + - $ref: '#/components/schemas/ExternalGnbCuCpFunction-Single' + - $ref: '#/components/schemas/ExternalNrCellCu-Single' + - $ref: '#/components/schemas/ExternalENBFunction-Single' + - $ref: '#/components/schemas/ExternalEUTranCell-Single' + + - $ref: '#/components/schemas/EP_XnC-Single' + - $ref: '#/components/schemas/EP_E1-Single' + - $ref: '#/components/schemas/EP_F1C-Single' + - $ref: '#/components/schemas/EP_NgC-Single' + - $ref: '#/components/schemas/EP_X2C-Single' + - $ref: '#/components/schemas/EP_XnU-Single' + - $ref: '#/components/schemas/EP_F1U-Single' + - $ref: '#/components/schemas/EP_NgU-Single' + - $ref: '#/components/schemas/EP_X2U-Single' + - $ref: '#/components/schemas/EP_S1U-Single' diff --git a/OpenAPI/provMnS.yaml b/OpenAPI/provMnS.yaml new file mode 100644 index 000000000..b2f84a4d2 --- /dev/null +++ b/OpenAPI/provMnS.yaml @@ -0,0 +1,579 @@ +openapi: 3.0.1 +info: + title: Provisioning MnS + version: 16.4.0 + description: >- + OAS 3.0.1 definition of the Provisioning MnS + © 2020, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). + All rights reserved. +externalDocs: + description: 3GPP TS 28.532 V16.4.0; Generic management services + url: http://www.3gpp.org/ftp/Specs/archive/28_series/28.532/ +servers: + - url: 'http://{URI-DN-prefix}/{root}/ProvMnS/v1640/{LDN-first-part}' + variables: + URI-DN-prefix: + description: See subclause 4.4 of TS 32.158 + default: example.com + root: + description: See subclause 4.4 of TS 32.158 + default: 3GPPManagement + LDN-first-part: + description: See subclause 4.4 of TS 32.158 + default: '' +paths: + '/{className}={id}': + parameters: + - name: className + in: path + required: true + schema: + $ref: '#/components/schemas/className-PathType' + - name: id + in: path + required: true + schema: + $ref: '#/components/schemas/id-PathType' + put: + summary: Replaces a complete single resource or creates it if it does not exist + description: >- + With HTTP PUT a complete resource is replaced or created if it does not + exist. The target resource is identified by the target URI. + requestBody: + required: true + content: + application/json: + schema: + $ref: '#/components/schemas/resourcePut-RequestType' + responses: + '200': + description: >- + Success case ("200 OK"). + This status code shall be returned when the resource is replaced, and + when the replaced resource representation is not identical to the resource + representation in the request. + This status code may be retourned when the resource is updated and when the + updated resource representation is identical to the resource representation + in the request. + The representation of the updated resource is returned in the response + message body. + content: + application/json: + schema: + $ref: '#/components/schemas/resourceUpdate-ResponseType' + '201': + description: >- + Success case ("201 Created"). + This status code shall be returned when the resource is created. + The representation of the created resource is returned in the response + message body. + content: + application/json: + schema: + $ref: '#/components/schemas/resourceCreation-ResponseType' + '204': + description: >- + Success case ("204 No Content"). + This status code may be returned only when the replaced resource + representation is identical to the representation in the request. + The response has no message body. + default: + description: Error case. + content: + application/json: + schema: + $ref: '#/components/schemas/error-ResponseType' + callbacks: + notifyMOICreation: + '{request.body#/notificationRecipientAddress}': + post: + requestBody: + required: true + content: + application/json: + schema: + $ref: '#/components/schemas/notifyMOICreation-NotifType' + responses: + '204': + description: >- + Success case ("204 No Content"). + The notification is successfully delivered. The response + has no message body. + default: + description: Error case. + content: + application/json: + schema: + $ref: '#/components/schemas/error-ResponseType' + notifyMOIDeletion: + '{request.body#/notificationRecipientAddress}': + post: + requestBody: + required: true + content: + application/json: + schema: + $ref: '#/components/schemas/notifyMOIDeletion-NotifType' + responses: + '204': + description: >- + Success case ("204 No Content"). + The notification is successfully delivered. The response + has no message body. + default: + description: Error case. + content: + application/json: + schema: + $ref: '#/components/schemas/error-ResponseType' + notifyMOIAttributeValueChange: + '{request.body#/notificationRecipientAddress}': + post: + requestBody: + required: true + content: + application/json: + schema: + $ref: '#/components/schemas/notifyMOIAttributeValueChange-NotifType' + responses: + '204': + description: >- + Success case ("204 No Content"). + The notification is successfully delivered. The response + has no message body. + default: + description: Error case. + content: + application/json: + schema: + $ref: '#/components/schemas/error-ResponseType' + notifyMOIChanges: + '{request.body#/notificationRecipientAddress}': + post: + requestBody: + required: true + content: + application/json: + schema: + $ref: '#/components/schemas/notifyMOIChanges-NotifType' + responses: + '204': + description: >- + Success case ("204 No Content"). + The notification is successfully delivered. The response + has no message body. + default: + description: Error case. + content: + application/json: + schema: + $ref: '#/components/schemas/error-ResponseType' + get: + summary: Reads one or multiple resources + description: >- + With HTTP GET resources are read. The resources to be retrieved are + identified with the target URI. The attributes and fields parameter + of the query components allow to select the resource properties to be returned. + parameters: + - name: scope + in: query + description: >- + This parameter extends the set of targeted resources beyond the base + resource identified with the path component of the URI. No scoping + mechanism is specified in the present document. + required: false + schema: + $ref: '#/components/schemas/scope-QueryType' + style: form + explode: true + - name: filter + in: query + description: >- + This parameter reduces the targeted set of resources by applying a + filter to the scoped set of resource representations. Only resource + representations for which the filter construct evaluates to "true" + are targeted. No filter language is specified in the present + document. + required: false + schema: + $ref: '#/components/schemas/filter-QueryType' + - name: attributes + in: query + description: >- + This parameter specifies the attributes of the scoped resources that + are returned. + required: true + schema: + $ref: '#/components/schemas/attributes-QueryType' + style: form + explode: false + - name: fields + in: query + description: >- + This parameter specifies the attribute field of the scoped resources + that are returned. + required: false + schema: + $ref: '#/components/schemas/fields-QueryType' + style: form + explode: false + responses: + '200': + description: >- + Success case ("200 OK"). + The resources identified in the request for retrieval are returned + in the response message body. In case the attributes or fields query + parameters are used, only the selected attributes or sub-attributes are + returned. The response message body is constructed according to the + hierarchical response construction method (TS 32.158 [15]). + content: + application/json: + schema: + $ref: '#/components/schemas/resourceRetrieval-ResponseType' + default: + description: Error case. + content: + application/json: + schema: + $ref: '#/components/schemas/error-ResponseType' + patch: + summary: Patches one or multiple resources + description: >- + With HTTP PATCH resources are created, updated or deleted. The resources + to be modified are identified with the target URI (base resource) and + the patch document included in the request message body. + requestBody: + description: >- + The request body describes changes to be made to the target resources. + The following patch media types are available + - "application/merge-patch+json" (RFC 7396) + - "application/3gpp-merge-patch+json" (TS 32.158) + - "application/json-patch+json" (RFC 6902) + - "application/3gpp-json-patch+json" (TS 32.158) + required: true + content: + application/merge-patch+json: + schema: + $ref: '#/components/schemas/jsonMergePatch-RequestType' + application/3gpp-merge-patch+json: + schema: + $ref: '#/components/schemas/3gppJsonMergePatch-RequestType' + application/json-patch+json: + schema: + $ref: '#/components/schemas/jsonPatch-RequestType' + application/3gpp-json-patch+json: + schema: + $ref: '#/components/schemas/3gppJsonPatch-RequestType' + responses: + '200': + description: >- + Success case ("200 OK"). + This status code is returned when the updated the resource representations + shall be returned for some reason. + The resource representations are returned in the response message body. The + response message body is constructed according to the hierarchical response + construction method (TS 32.158 [15]) + content: + application/json: + schema: + $ref: '#/components/schemas/resourceUpdate-ResponseType' + '204': + description: >- + Success case ("204 No Content"). + This status code is returned when there is no need to return the updated + resource representations. + The response message body is empty. + default: + description: Error case. + content: + application/json: + schema: + $ref: '#/components/schemas/error-ResponseType' + delete: + summary: Deletes one or multiple resources + description: >- + With HTTP DELETE resources are deleted. The resources to be deleted are + identified with the target URI. + parameters: + - name: scope + in: query + description: >- + This parameter extends the set of targeted resources beyond the base + resource identified with the path component of the URI. No scoping + mechanism is specified in the present document. + required: false + schema: + $ref: '#/components/schemas/scope-QueryType' + - name: filter + in: query + description: >- + This parameter reduces the targeted set of resources by applying a + filter to the scoped set of resource representations. Only resources + representations for which the filter construct evaluates to "true" + are returned. No filter language is specified in the present + document. + required: false + schema: + $ref: '#/components/schemas/filter-QueryType' + responses: + '200': + description: >- + Success case ("200 OK"). + This status code shall be returned, when query parameters are present in + the request and one or multiple resources are deleted. + The URIs of the deleted resources are returned in the response message body. + '204': + description: >- + Success case ("204 No Content"). + This status code shall be returned, when no query parameters are present in + the request and only one resource is deleted. + The message body is empty. + content: + application/json: + schema: + $ref: '#/components/schemas/resourceDeletion-ResponseType' + default: + description: Error case. + content: + application/json: + schema: + $ref: '#/components/schemas/error-ResponseType' +components: + schemas: + dateTime-Type: + type: string + format: date-time + long-Type: + type: integer + format: int64 + uri-Type: + type: string + correlatedNotification-Type: + type: object + properties: + source: + $ref: '#/components/schemas/uri-Type' + notificationIds: + type: array + items: + $ref: '#/components/schemas/notificationId-Type' + notificationId-Type: + $ref: '#/components/schemas/long-Type' + notificationType-Type: + type: string + enum: + - notifyMOICreation + - notifyMOIDeletion + - notifyMOIAttributeValueChange + systemDN-Type: + type: string + additionalText-Type: + type: string + sourceIndicator-Type: + type: string + enum: + - resourceOperation + - mangementOperation + - sONOperation + - unknown + header-Type: + type: object + properties: + href: + $ref: '#/components/schemas/uri-Type' + notificationId: + $ref: '#/components/schemas/notificationId-Type' + notificationType: + $ref: '#/components/schemas/notificationType-Type' + eventTime: + $ref: '#/components/schemas/dateTime-Type' + systemDN: + $ref: '#/components/schemas/systemDN-Type' + required: + - href + - notificationId + - notificationType + - eventTime + - systemDN + scopeType-Type: + type: string + enum: + - BASE_ONLY + - BASE_NTH_LEVEL + - BASE_SUBTREE + - BASE_ALL + scopeLevel-Type: + type: integer + className-PathType: + type: string + id-PathType: + type: string + attributes-QueryType: + type: array + items: + type: string + fields-QueryType: + type: array + items: + type: string + filter-QueryType: + type: string + scope-QueryType: + type: object + properties: + scopeType: + $ref: '#/components/schemas/scopeType-Type' + scopeLevel: + $ref: '#/components/schemas/scopeLevel-Type' + + resourcePut-RequestType: + $ref: '#/components/schemas/resourceRepresentation-Type' + jsonMergePatch-RequestType: + $ref: '#/components/schemas/resourceRepresentation-Type' + 3gppJsonMergePatch-RequestType: + $ref: '#/components/schemas/resourceRepresentation-Type' + jsonPatch-RequestType: + type: array + items: + type: object + 3gppJsonPatch-RequestType: + type: array + items: + type: object + + error-ResponseType: + type: object + properties: + error: + type: object + properties: + errorInfo: + type: string + resourceRetrieval-ResponseType: + $ref: '#/components/schemas/resourceRepresentation-Type' + resourceCreation-ResponseType: + $ref: '#/components/schemas/resourceRepresentation-Type' + resourceUpdate-ResponseType: + $ref: '#/components/schemas/resourceRepresentation-Type' + resourceDeletion-ResponseType: + type: array + items: + $ref: '#/components/schemas/uri-Type' + + resourceRepresentation-Type: + oneOf: + - type: object + properties: + id: + type: string + attributes: + type: object + additionalProperties: + type: array + items: + type: object + - anyOf: + - $ref: 'genericNrm.yaml#/components/schemas/resources-genericNrm' + - $ref: 'nrNrm.yaml#/components/schemas/resources-nrNrm' + - $ref: '5gcNrm.yaml#/components/schemas/resources-5gcNrm' + - $ref: 'sliceNrm.yaml#/components/schemas/resources-sliceNrm' + + mOIChange-Type: + type: object + properties: + notificationId: + $ref: '#/components/schemas/notificationId-Type' + correlatedNotifications: + type: array + items: + $ref: '#/components/schemas/correlatedNotification-Type' + additionalText: + $ref: '#/components/schemas/additionalText-Type' + sourceIndicator: + $ref: '#/components/schemas/sourceIndicator-Type' + path: + $ref: '#/components/schemas/uri-Type' + operation: + type: string + enum: + - CREATE + - DELETE + - REPLACE + value: + oneOf: + - type: object + additionalProperties: + nullable: true + - type: array + items: + type: object + minItems: 1 + maxItems: 2 + + notifyMOICreation-NotifType: + allOf: + - $ref: '#/components/schemas/header-Type' + - type: object + properties: + correlatedNotifications: + type: array + items: + $ref: '#/components/schemas/correlatedNotification-Type' + additionalText: + $ref: '#/components/schemas/additionalText-Type' + sourceIndicator: + $ref: '#/components/schemas/sourceIndicator-Type' + attributeList: + type: object + additionalProperties: + nullable: true + notifyMOIDeletion-NotifType: + allOf: + - $ref: '#/components/schemas/header-Type' + - type: object + properties: + correlatedNotifications: + type: array + items: + $ref: '#/components/schemas/correlatedNotification-Type' + additionalText: + $ref: '#/components/schemas/additionalText-Type' + sourceIndicator: + $ref: '#/components/schemas/sourceIndicator-Type' + attributeList: + type: object + additionalProperties: true + notifyMOIAttributeValueChange-NotifType: + allOf: + - $ref: '#/components/schemas/header-Type' + - type: object + properties: + correlatedNotifications: + type: array + items: + $ref: '#/components/schemas/correlatedNotification-Type' + additionalText: + $ref: '#/components/schemas/additionalText-Type' + sourceIndicator: + $ref: '#/components/schemas/sourceIndicator-Type' + attributeValueChange: + type: object + additionalProperties: + type: array + minItems: 1 + maxItems: 2 + items: + nullable: true + required: + - attributeValueChange + notifyMOIChanges-NotifType: + allOf: + - $ref: '#/components/schemas/header-Type' + - type: object + properties: + mOIChanges: + type: array + items: + $ref: '#/components/schemas/mOIChange-Type' + required: + - mOIChanges diff --git a/OpenAPI/sliceNrm.yaml b/OpenAPI/sliceNrm.yaml new file mode 100644 index 000000000..1a2d74677 --- /dev/null +++ b/OpenAPI/sliceNrm.yaml @@ -0,0 +1,595 @@ +openapi: 3.0.1 +info: + title: Slice NRM + version: 17.2.0 + description: >- + OAS 3.0.1 specification of the Slice NRM + @ 2020, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). + All rights reserved. +externalDocs: + description: 3GPP TS 28.541 V17.2.0; 5G NRM, Slice NRM + url: http://www.3gpp.org/ftp/Specs/archive/28_series/28.541/ +paths: {} +components: + schemas: + +#------------ Type definitions --------------------------------------------------- + + Float: + type: number + format: float + MobilityLevel: + type: string + enum: + - STATIONARY + - NOMADIC + - RESTRICTED MOBILITY + - FULLY MOBILITY + SynAvailability: + type: string + enum: + - NOT SUPPORTED + - BETWEEN BS AND UE + - BETWEEN BS AND UE & UE AND UE + PositioningAvailability: + type: array + items: + type: string + enum: + - CIDE-CID + - OTDOA + - RF FINGERPRINTING + - AECID + - HYBRID POSITIONING + - NET-RTK + Predictionfrequency: + type: string + enum: + - PERSEC + - PERMIN + - PERHOUR + SharingLevel: + type: string + enum: + - SHARED + - NON-SHARED + + NetworkSliceSharingIndicator: + type: string + enum: + - SHARED + - NON-SHARED + + ServiceType: + type: string + enum: + - eMBB + - RLLC + - MIoT + - V2X + SliceSimultaneousUse: + type: string + enum: + - ZERO + - ONE + - TWO + - THREE + - FOUR + + PerfReqEmbb: + type: object + properties: + expDataRateDL: + type: number + expDataRateUL: + type: number + areaTrafficCapDL: + type: number + areaTrafficCapUL: + type: number + userDensity: + type: number + activityFactor: + type: number + PerfReqEmbbList: + type: array + items: + $ref: '#/components/schemas/PerfReqEmbb' + PerfReqUrllc: + type: object + properties: + cSAvailabilityTarget: + type: number + cSReliabilityMeanTime: + type: string + expDataRate: + type: number + msgSizeByte: + type: string + transferIntervalTarget: + type: string + survivalTime: + type: string + PerfReqUrllcList: + type: array + items: + $ref: '#/components/schemas/PerfReqUrllc' + PerfReq: + oneOf: + - $ref: '#/components/schemas/PerfReqEmbbList' + - $ref: '#/components/schemas/PerfReqUrllcList' + Category: + type: string + enum: + - CHARACTER + - SCALABILITY + Tagging: + type: array + items: + type: string + enum: + - PERFORMANCE + - FUNCTION + - OPERATION + Exposure: + type: string + enum: + - API + - KPI + ServAttrCom: + type: object + properties: + category: + $ref: '#/components/schemas/Category' + tagging: + $ref: '#/components/schemas/Tagging' + exposure: + $ref: '#/components/schemas/Exposure' + Support: + type: string + enum: + - NOT SUPPORTED + - SUPPORTED + DelayTolerance: + type: object + properties: + servAttrCom: + $ref: '#/components/schemas/ServAttrCom' + support: + $ref: '#/components/schemas/Support' + DeterministicComm: + type: object + properties: + servAttrCom: + $ref: '#/components/schemas/ServAttrCom' + availability: + $ref: '#/components/schemas/Support' + periodicityList: + type: string + DLThptPerSlice: + type: object + properties: + servAttrCom: + $ref: '#/components/schemas/ServAttrCom' + guaThpt: + $ref: '#/components/schemas/Float' + maxThpt: + $ref: '#/components/schemas/Float' + DLThptPerUE: + type: object + properties: + servAttrCom: + $ref: '#/components/schemas/ServAttrCom' + guaThpt: + $ref: '#/components/schemas/Float' + maxThpt: + $ref: '#/components/schemas/Float' + ULThptPerSlice: + type: object + properties: + servAttrCom: + $ref: '#/components/schemas/ServAttrCom' + guaThpt: + $ref: '#/components/schemas/Float' + maxThpt: + $ref: '#/components/schemas/Float' + ULThptPerUE: + type: object + properties: + servAttrCom: + $ref: '#/components/schemas/ServAttrCom' + guaThpt: + $ref: '#/components/schemas/Float' + maxThpt: + $ref: '#/components/schemas/Float' + DLThptPerSliceSubnet: + type: object + properties: + guaThpt: + $ref: '#/components/schemas/Float' + maxThpt: + $ref: '#/components/schemas/Float' + DLThptPerUEPerSubnet: + type: object + properties: + guaThpt: + $ref: '#/components/schemas/Float' + maxThpt: + $ref: '#/components/schemas/Float' + ULThptPerSliceSubnet: + type: object + properties: + guaThpt: + $ref: '#/components/schemas/Float' + maxThpt: + $ref: '#/components/schemas/Float' + ULThptPerUEPerSubnet: + type: object + properties: + guaThpt: + $ref: '#/components/schemas/Float' + maxThpt: + $ref: '#/components/schemas/Float' + MaxPktSize: + type: object + properties: + servAttrCom: + $ref: '#/components/schemas/ServAttrCom' + maxsize: + type: integer + MaxNumberofPDUSessions: + type: object + properties: + servAttrCom: + $ref: '#/components/schemas/ServAttrCom' + nOofPDUSessions: + type: integer + KPIMonitoring: + type: object + properties: + servAttrCom: + $ref: '#/components/schemas/ServAttrCom' + kPIList: + type: string + NBIoT: + type: object + properties: + servAttrCom: + $ref: '#/components/schemas/ServAttrCom' + support: + $ref: '#/components/schemas/Support' + Synchronicity: + type: object + properties: + servAttrCom: + $ref: '#/components/schemas/ServAttrCom' + availability: + $ref: '#/components/schemas/SynAvailability' + accuracy: + $ref: '#/components/schemas/Float' + Positioning: + type: object + properties: + servAttrCom: + $ref: '#/components/schemas/ServAttrCom' + availability: + $ref: '#/components/schemas/PositioningAvailability' + predictionfrequency: + $ref: '#/components/schemas/Predictionfrequency' + accuracy: + $ref: '#/components/schemas/Float' + UserMgmtOpen: + type: object + properties: + servAttrCom: + $ref: '#/components/schemas/ServAttrCom' + support: + $ref: '#/components/schemas/Support' + V2XCommModels: + type: object + properties: + servAttrCom: + $ref: '#/components/schemas/ServAttrCom' + v2XMode: + $ref: '#/components/schemas/Support' + TermDensity: + type: object + properties: + servAttrCom: + $ref: '#/components/schemas/ServAttrCom' + density: + type: integer + NsInfo: + type: object + properties: + nsInstanceId: + type: string + nsName: + type: string + CNSliceSubnetProfile: + type: object + properties: + maxNumberofUEs: + type: integer + latency: + type: integer + dLThptPerSliceSubnet: + $ref: '#/components/schemas/DLThptPerSliceSubnet' + dLThptPerUEPerSubnet: + $ref: '#/components/schemas/DLThptPerUEPerSubnet' + uLThptPerSliceSubnet: + $ref: '#/components/schemas/ULThptPerSliceSubnet' + uLThptPerUEPerSubnet: + $ref: '#/components/schemas/ULThptPerUEPerSubnet' + maxNumberOfPDUSessions: + type: integer + maxPktSize: + type: integer + delayTolerance: + $ref: '#/components/schemas/DelayTolerance' + sliceSimultaneousUse: + $ref: '#/components/schemas/SliceSimultaneousUse' + RANSliceSubnetProfile: + type: object + properties: + coverageAreaTAList: + type: integer + MobilityLevel: + $ref: '#/components/schemas/MobilityLevel' + resourceSharingLevel: + $ref: '#/components/schemas/SharingLevel' + maxNumberofUEs: + type: integer + activityFactor: + type: integer + dLThptPerUEPerSubnet: + $ref: '#/components/schemas/ULThptPerUEPerSubnet' + uLThptPerUEPerSubnet: + $ref: '#/components/schemas/ULThptPerUEPerSubnet' + uESpeed: + type: integer + reliability: + type: string + serviceType: + $ref: '#/components/schemas/ServiceType' + maxPktSize: + type: integer + delayTolerance: + $ref: '#/components/schemas/DelayTolerance' + sliceSimultaneousUse: + $ref: '#/components/schemas/SliceSimultaneousUse' + TopSliceSubnetProfile: + type: object + properties: + coverageArea: + type: string + latency: + type: integer + maxNumberofUEs: + type: integer + dLThptPerSliceSubnet: + $ref: '#/components/schemas/DLThptPerSliceSubnet' + dLThptPerUEPerSubnet: + $ref: '#/components/schemas/DLThptPerUEPerSubnet' + uLThptPerSliceSubnet: + $ref: '#/components/schemas/ULThptPerSliceSubnet' + uLThptPerUEPerSubnet: + $ref: '#/components/schemas/ULThptPerUEPerSubnet' + maxPktSize: + type: integer + delayTolerance: + $ref: '#/components/schemas/DelayTolerance' + sliceSimultaneousUse: + $ref: '#/components/schemas/SliceSimultaneousUse' + ServiceProfile: + type: object + properties: + serviceProfileId: + type: string + plmnInfoList: + $ref: 'nrNrm.yaml#/components/schemas/PlmnInfoList' + maxNumberofUEs: + type: number + latency: + type: number + uEMobilityLevel: + $ref: '#/components/schemas/MobilityLevel' + sst: + $ref: 'nrNrm.yaml#/components/schemas/Sst' + networkSliceSharingIndicator: + $ref: '#/components/schemas/NetworkSliceSharingIndicator' + availability: + type: number + delayTolerance: + $ref: '#/components/schemas/DelayTolerance' + deterministicComm: + $ref: '#/components/schemas/DeterministicComm' + dLThptPerSlice: + $ref: '#/components/schemas/DLThptPerSlice' + dLThptPerUE: + $ref: '#/components/schemas/DLThptPerUE' + uLThptPerSlice: + $ref: '#/components/schemas/ULThptPerSlice' + uLThptPerUE: + $ref: '#/components/schemas/ULThptPerUE' + maxPktSize: + $ref: '#/components/schemas/MaxPktSize' + maxNumberofPDUSessions: + $ref: '#/components/schemas/MaxNumberofPDUSessions' + kPIMonitoring: + $ref: '#/components/schemas/KPIMonitoring' + nBIoT: + $ref: '#/components/schemas/NBIoT' + synchronicity: + $ref: '#/components/schemas/Synchronicity' + positioning: + $ref: '#/components/schemas/Positioning' + userMgmtOpen: + $ref: '#/components/schemas/UserMgmtOpen' + v2XModels: + $ref: '#/components/schemas/V2XCommModels' + coverageArea: + type: string + termDensity: + $ref: '#/components/schemas/TermDensity' + activityFactor: + $ref: '#/components/schemas/Float' + uESpeed: + type: integer + jitter: + type: integer + survivalTime: + type: string + reliability: + type: string + maxDLDataVolume: + type: string + maxULDataVolume: + type: string + sliceSimultaneousUse: + $ref: '#/components/schemas/SliceSimultaneousUse' + + SliceProfile: + type: object + properties: + serviceProfileId: + type: string + plmnInfoList: + $ref: 'nrNrm.yaml#/components/schemas/PlmnInfoList' + perfReq: + $ref: '#/components/schemas/PerfReq' + cNSliceSubnetProfile: + $ref: '#/components/schemas/CNSliceSubnetProfile' + rANSliceSubnetProfile: + $ref: '#/components/schemas/RANSliceSubnetProfile' + topSliceSubnetProfile: + $ref: '#/components/schemas/TopSliceSubnetProfile' + + IpAddress: + oneOf: + - $ref: 'genericNrm.yaml#/components/schemas/Ipv4Addr' + - $ref: 'genericNrm.yaml#/components/schemas/Ipv6Addr' + + ServiceProfileList: + type: array + items: + $ref: '#/components/schemas/ServiceProfile' + + SliceProfileList: + type: array + items: + $ref: '#/components/schemas/SliceProfile' + +#------------ Definition of concrete IOCs ---------------------------------------- + SubNetwork-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/SubNetwork-Attr' + - $ref: 'genericNrm.yaml#/components/schemas/SubNetwork-ncO' + - type: object + properties: + SubNetwork: + $ref: '#/components/schemas/SubNetwork-Multiple' + NetworkSlice: + $ref: '#/components/schemas/NetworkSlice-Multiple' + NetworkSliceSubnet: + $ref: '#/components/schemas/NetworkSliceSubnet-Multiple' + EP_Transport: + $ref: '#/components/schemas/EP_Transport-Multiple' + + NetworkSlice-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/SubNetwork-Attr' + - type: object + properties: + networkSliceSubnetRef: + $ref: 'genericNrm.yaml#/components/schemas/Dn' + operationalState: + $ref: 'genericNrm.yaml#/components/schemas/OperationalState' + administrativeState: + $ref: 'genericNrm.yaml#/components/schemas/AdministrativeState' + serviceProfileList: + $ref: '#/components/schemas/ServiceProfileList' + + NetworkSliceSubnet-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/SubNetwork-Attr' + - type: object + properties: + managedFunctionRefList: + $ref: 'genericNrm.yaml#/components/schemas/DnList' + networkSliceSubnetRefList: + $ref: 'genericNrm.yaml#/components/schemas/DnList' + operationalState: + $ref: 'genericNrm.yaml#/components/schemas/OperationalState' + administrativeState: + $ref: 'genericNrm.yaml#/components/schemas/AdministrativeState' + nsInfo: + $ref: '#/components/schemas/NsInfo' + sliceProfileList: + $ref: '#/components/schemas/SliceProfileList' + epTransportRefList: + $ref: 'genericNrm.yaml#/components/schemas/DnList' + + EP_Transport-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + type: object + properties: + ipAddress: + $ref: '#/components/schemas/IpAddress' + logicInterfaceId: + type: string + nextHopInfo: + type: string + qosProfile: + type: string + epApplicationRefs: + $ref: 'genericNrm.yaml#/components/schemas/DnList' + +#-------- Definition of JSON arrays for name-contained IOCs ---------------------- + SubNetwork-Multiple: + type: array + items: + $ref: '#/components/schemas/SubNetwork-Single' + + NetworkSlice-Multiple: + type: array + items: + $ref: '#/components/schemas/NetworkSlice-Single' + + NetworkSliceSubnet-Multiple: + type: array + items: + $ref: '#/components/schemas/NetworkSliceSubnet-Single' + + EP_Transport-Multiple: + type: array + items: + $ref: '#/components/schemas/EP_Transport-Single' + +#------------ Definitions in TS 28.541 for TS 28.532 ----------------------------- + + resources-sliceNrm: + oneOf: + - $ref: '#/components/schemas/SubNetwork-Single' + - $ref: '#/components/schemas/NetworkSlice-Single' + - $ref: '#/components/schemas/NetworkSliceSubnet-Single' + - $ref: '#/components/schemas/EP_Transport-Single' diff --git a/OpenAPI/streamingDataMnS.yaml b/OpenAPI/streamingDataMnS.yaml new file mode 100644 index 000000000..ab7f71d4a --- /dev/null +++ b/OpenAPI/streamingDataMnS.yaml @@ -0,0 +1,453 @@ +openapi: 3.0.1 +info: + title: TS 28.532 Streaming data reporting service + version: 16.4.0 + description: OAS 3.0.1 specification for the Streaming data reporting service (Streaming MnS) +servers: + - url: '{protocol}://{root}/StreamingDataReportingMnS/{version}' + variables: + protocol: + description: Protocol used + enum: + - http + - https + - wss + default: https + root: + description: Indicates the host name and optional port, and an optional sequence of path segments that together represent a prefix path. + default: example.com + version: + description: Indicates the current version of the specification + default: 16.4.0 +paths: + '/connections': + post: + summary: Inform consumer about reporting streams to be carried by the new connection and receive a new connection id. + description: Exchange of meta-data (producer informs consumer about its own identity and the nature of the data to be reported via streaming) phase of the connection establishement by streaming data reporting producer to the streaming data reporting consumer (i.e. streaming target). + requestBody: + required: true + content: + application/json: + schema: + $ref: '#/components/schemas/connectionRequest-Type' + responses: + '201': + description: Success case (201 Created). + headers: + Location: + description: Location of the created connection resource. + schema: + $ref: '#/components/schemas/connectionId-Type' + default: + description: Error case. + content: + application/json: + schema: + $ref: '#/components/schemas/failedConnectionResponse-Type' + get: + summary: Obtain information about connections. + description: Enables the streaming data reporting service producer to obtain information about one or more streaming connections. + parameters: + - name: connectionIdList + in: query + description: The list of connectionId for which the connection information is to be returned. + required: false + schema: + type: array + items: + $ref: '#/components/schemas/connectionId-Type' + responses: + '200': + description: Success case (200 OK). The resources identified in the request for retrieval are returned in the response message body. In case the fields query parameter is used, the selected resources are returned. + content: + application/json: + schema: + type: array + items: + $ref: '#/components/schemas/connectionInfo-Type' + '202': + description: Partial success case (202 Partially retrieved). Subset of the resources identified in the request for retrieval are returned in the response message body. + content: + application/json: + schema: + type: array + items: + $ref: '#/components/schemas/connectionInfo-Type' + default: + description: Error case. + content: + application/json: + schema: + $ref: '#/components/schemas/errorResponse-Type' + '/connections/{connectionId}': + get: + summary: Obtain information about a connection. + description: Enables the streaming data reporting service producer to obtain information about one streaming connection. + parameters: + - name: connectionId + in: path + description: Indicate the ID (URI) of the connection for which the information is being retrieved + required: true + schema: + $ref: '#/components/schemas/connectionId-Type' + - name: Connection + in: header + schema: + $ref: '#/components/schemas/websocketHeaderConnection-Type' + - name: Sec-WebSocket-Extensions + in: header + schema: + $ref: '#/components/schemas/websocketHeader-Sec-WebSocket-Extensions-Type' + - name: Sec-WebSocket-Key + in: header + schema: + $ref: '#/components/schemas/websocketHeader-Sec-WebSocket-Key-Type' + - name: Sec-WebSocket-Protocol + in: header + schema: + $ref: '#/components/schemas/websocketHeader-Sec-WebSocket-Protocol-Type' + - name: Sec-WebSocket-Version + in: header + schema: + $ref: '#/components/schemas/websocketHeader-Sec-WebSocket-Version-Type' + responses: + '101': + description: Success case (101 Switching Protocols). The connection has been successfully switched to WebSocket. The response message body is absent. + headers: + Upgrade: + schema: + $ref: '#/components/schemas/websocketHeaderUpgrade-Type' + Connection: + schema: + $ref: '#/components/schemas/websocketHeaderConnection-Type' + Sec-WebSocket-Accept: + schema: + $ref: '#/components/schemas/websocketHeader-Sec-WebSocket-Accept-Type' + '200': + description: Success case (200 OK). The resource identified in the request for retrieval returned in the response message body. + content: + application/json: + schema: + $ref: '#/components/schemas/connectionInfo-Type' + default: + description: Error case. + content: + application/json: + schema: + $ref: '#/components/schemas/errorResponse-Type' + '/connections/{connectionId}/streams': + post: + summary: Inform consumer about new reporting streams on an existing connection. + description: Allows the producer to add one or more reporting streams to an already established streaming connection. + parameters: + - name: connectionId + in: path + description: Indicate the ID (URI) of the connection for which the reporting stream information is being added. + required: true + schema: + $ref: '#/components/schemas/connectionId-Type' + requestBody: + required: true + content: + application/json: + schema: + type: array + items: + $ref: '#/components/schemas/streamInfo-Type' + responses: + '201': + description: Success case (201 Posted). + content: + application/json: + schema: + type: array + items: + $ref: '#/components/schemas/streamInfo-Type' + '202': + description: Partial success case (202 Posted). + content: + application/json: + schema: + type: array + items: + $ref: '#/components/schemas/streamInfo-Type' + default: + description: Error case. + content: + application/json: + schema: + $ref: '#/components/schemas/errorResponse-Type' + delete: + summary: Remove reporting streams from an existing connection + description: Allows the producer to remove one or more reporting streams from an already established streaming connection. + parameters: + - name: connectionId + in: path + description: Indicate the ID (URI) of the connection for which the reporting stream information is being removed. + required: true + schema: + $ref: '#/components/schemas/connectionId-Type' + - name: streamIds + in: query + description: The list of streamId for the stream(s) to be deleted. + required: true + schema: + type: array + items: + $ref: '#/components/schemas/streamId-Type' + responses: + '204': + description: Success case (204 No Content). The stream information resource has been deleted. The response message body is absent. + default: + description: Error case. + content: + application/json: + schema: + $ref: '#/components/schemas/errorResponse-Type' + get: + summary: Obtain information about streams. + description: Enables the streaming data reporting service producer to obtain information about one or more reporting streams. + parameters: + - name: connectionId + in: path + description: Indicate the ID (URI) of the connection for which the information is being retrieved + required: true + schema: + $ref: '#/components/schemas/connectionId-Type' + - name: streamIds + in: query + description: The list of streamId for which the stream information is to be retrieved. + required: true + schema: + type: array + items: + $ref: '#/components/schemas/streamId-Type' + responses: + '200': + description: Success case (200 OK). + content: + application/json: + schema: + type: array + items: + $ref: '#/components/schemas/streamInfoWithReporters-Type' + '202': + description: Partial success case (202 Partially retrieved). + content: + application/json: + schema: + type: array + items: + $ref: '#/components/schemas/streamInfoWithReporters-Type' + default: + description: Error case. + content: + application/json: + schema: + $ref: '#/components/schemas/errorResponse-Type' + '/connections/{connectionId}/streams/{streamId}': + get: + summary: Obtain information about stream + description: Enables the streaming data reporting service producer to obtain information about a reporting stream. + parameters: + - name: connectionId + in: path + description: Indicate the ID (URI) of the connection for which the information is being retrieved + required: true + schema: + $ref: '#/components/schemas/connectionId-Type' + - name: streamId + in: path + description: Indicate the ID of the reporting stream for which the information is being retrieved + required: true + schema: + $ref: '#/components/schemas/streamId-Type' + responses: + '200': + description: Success case (200 OK). + content: + application/json: + schema: + $ref: '#/components/schemas/streamInfoWithReporters-Type' + default: + description: Error case. + content: + application/json: + schema: + $ref: '#/components/schemas/errorResponse-Type' +components: + schemas: + analyticsInfo-Type: + description: Information specific to analytics reporting. + type: object + properties: + activityDetails: + type: string + connectionId-Type: + $ref: '#/components/schemas/uri-Type' + connectionInfo-Type: + type: object + properties: + connection: + $ref: '#/components/schemas/connectionId-Type' + producer: + $ref: '#/components/schemas/producerId-Type' + streams: + type: array + items: + $ref: '#/components/schemas/streamId-Type' + connectionRequest-Type: + type: object + properties: + producer: + $ref: '#/components/schemas/producerId-Type' + streams: + type: array + items: + $ref: '#/components/schemas/streamInfo-Type' + errorResponse-Type: + type: object + properties: + error: + type: object + properties: + errorInfo: + type: string + failedConnectionResponse-Type: + type: object + properties: + error: + type: array + items: + type: object + properties: + streamId: + $ref: '#/components/schemas/streamId-Type' + errorReason: + type: string + measObjDn-Type: + description: DN of the measured object instance (see 3GPP TS 28.550) + allOf: + - $ref: '#/components/schemas/systemDN-Type' + measTypes-Type: + description: an ordered list of measurement type or KPI whose measurement values or KPI result values are to be reported by the Performance Data Stream Units (see Annex C of TS 28.550) via this stream + type: array + items: + type: string + performanceInfo-Type: + description: Information specific to performance data reporting + type: object + properties: + measObjDn: + $ref: '#/components/schemas/measObjDn-Type' + measTypes: + $ref: '#/components/schemas/measTypes-Type' + measurementReaderId: + $ref: '#/components/schemas/systemDN-Type' + jobId: + type: string + required: + - measObjDn + - measTypes + producerId-Type: + description: DN of the streaming data reporting MnS producer. + allOf: + - $ref: '#/components/schemas/systemDN-Type' + serializationFormat-Type: + type: string + enum: + - GPB + - ASN1 + streamId-Type: + description: globally unique stream identifier + type: string + example: '26F452550021' + streamInfo-Type: + description: Reporting stream meta-data. + type: object + properties: + streamType: + $ref: '#/components/schemas/streamType-Type' + serializationFormat: + $ref: '#/components/schemas/serializationFormat-Type' + streamId: + oneOf: + - $ref: '#/components/schemas/streamId-Type' + - $ref: '#/components/schemas/traceReference-Type' + additionalInfo: + oneOf: + - $ref: '#/components/schemas/traceInfo-Type' + - $ref: '#/components/schemas/performanceInfo-Type' + - $ref: '#/components/schemas/analyticsInfo-Type' + - $ref: '#/components/schemas/vsDataContainer-Type' + required: + - streamType + - serializationFormat + - streamId + streamInfoWithReporters-Type: + description: Reporting stream meta-data with added information about reporters. + type: object + properties: + streamInfo: + $ref: '#/components/schemas/streamInfo-Type' + reporters: + type: array + items: + $ref: '#/components/schemas/producerId-Type' + systemDN-Type: + description: See 3GPP TS 32.300 for details + type: string + example: 'SubNetwork=ABCNetwork,SubNetwork=MUC01,GNBDUFunction=XYZ0100' + streamType-Type: + type: string + enum: + - TRACE + - PERFORMANCE + - ANALYTICS + - PROPRIETARY + traceInfo-Type: + description: Information specific to trace data reporting + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/TraceJob-Attr' + traceReference-Type: + description: Trace Reference (see clause 5.6 of 3GPP TS 32.422) as stream identifier for streaming trace data reporting + type: string + example: '4358070034D7' + uri-Type: + description: Resource URI + type: string + vsDataContainer-Type: + description: container for vendor specific data (see 3GPP TS 28.622) + type: object + properties: + vsDataType: + type: string + vsData: + type: string + vsDataFormatVersion: + type: string + websocketHeaderConnection-Type: + description: Header value for the upgrade request and response. + type: string + enum: + - Upgrade + websocketHeaderUpgrade-Type: + description: Header value for the upgrade to WebSocket request and response. + type: string + enum: + - websocket + websocketHeader-Sec-WebSocket-Accept-Type: + description: Header value for secure WebSocket response. Carries hash. + type: string + websocketHeader-Sec-WebSocket-Extensions-Type: + description: Header value for secure WebSocket request. Carries protocol extensions. + type: string + websocketHeader-Sec-WebSocket-Key-Type: + description: Header value for secure WebSocket request. Provides information to the server which is needed in order to confirm that the client is entitled to request an upgrade to WebSocket. + type: string + websocketHeader-Sec-WebSocket-Protocol-Type: + description: Header value for secure WebSocket request. Carries a comma-separated list of subprotocol names, in the order of preference. + type: string + websocketHeader-Sec-WebSocket-Version-Type: + description: Header value for secure WebSocket request and response. Carries the WebSocket protocol version to be used. + type: string -- GitLab From d3fee6451f5caa27319a671c580c75f1b9b25931 Mon Sep 17 00:00:00 2001 From: lengyelb Date: Wed, 5 May 2021 14:59:08 +0200 Subject: [PATCH 034/593] Delete genericNrm.xsd This file is based on the REL-16 TS 28.623. However this is a REL-16 document only, that does not exist in REL-17. This file was copied here from REL-16 for the sole reason to support XSD files in the REL-17-28.541. However, as it was agreed in the approved TDOC S5-205354 to remove the XSD solution set from REL-17 there is no need for this file anymore. It should be removed (it should not be copied over from REL-16). --- xsd/genericNrm.xsd | 759 --------------------------------------------- 1 file changed, 759 deletions(-) delete mode 100644 xsd/genericNrm.xsd diff --git a/xsd/genericNrm.xsd b/xsd/genericNrm.xsd deleted file mode 100644 index 538b99641..000000000 --- a/xsd/genericNrm.xsd +++ /dev/null @@ -1,759 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -- GitLab From e6c4ead5fd46682c44ba3f731103c083a1fb624b Mon Sep 17 00:00:00 2001 From: Jan Groenendijk Date: Mon, 17 May 2021 11:06:34 +0200 Subject: [PATCH 035/593] Update coslaNrm.yaml, update references for operational and administrative state --- OpenAPI/coslaNrm.yaml | 185 +++++++++++++++++++++++------------------- 1 file changed, 103 insertions(+), 82 deletions(-) diff --git a/OpenAPI/coslaNrm.yaml b/OpenAPI/coslaNrm.yaml index 6aae2f61c..6862dff42 100644 --- a/OpenAPI/coslaNrm.yaml +++ b/OpenAPI/coslaNrm.yaml @@ -1,4 +1,4 @@ -openapi: 3.0.3 +openapi: 3.0.2 info: title: coslaNrm @@ -9,7 +9,7 @@ info: All rights reserved. externalDocs: - description: 3GPP TS 28.536 V16.4.0; 5G NRM, Slice NRM + description: 3GPP TS 28.536 V16.4.0; Cosla NRM url: http://www.3gpp.org/ftp/Specs/archive/28_series/28.536/ paths: {} @@ -21,111 +21,132 @@ components: #------------ Type definitions --------------------------------------------------- ControlLoopLifeCyclePhase: - anyOf: - - type: string - enum: - - PREPARATION - - COMMISSIONING - - OPERATION - - DECOMMISSIONING - - type: string - - TimeUnit: - anyOf: - - type: string - enum: - - SECOND - - MINUTE - - HOUR - - DAY - - type: string - - OperationalState: - anyOf: - - type: string - enum: - - ENABLED - - DISABLED - - type: string - - AdministrativeState: - anyOf: - - type: string - enum: - - LOCKED - - SHUTTING_DOWN - - UNLOCKED - - type: string + type: string + enum: + - PREPARATION + - COMMISSIONING + - OPERATION + - DECOMMISSIONING ObservationTime: type: integer - ObservationTimePeriod: - type: object - - AssuranceControlLoopGoal: - type: object - - AssuranceGoalStatus: - type: object - AssuranceGoalStatusObserved: - type: object - + type: string + enum: + - FULFILLED + - NOT_FULFILLED + AssuranceGoalStatusPredicted: + type: string + enum: + - FULFILLED + - NOT_FULFILLED + + AssuranceTarget: type: object + properties: + assuranceTargetName: + type: string + assuranceTargetValue: + type: string + + AssuranceTargetList: + type: array + items: + $ref: '#/components/schemas/AssuranceTarget' + #-------- Definition of concrete IOCs -------------------------------------------- - AssuranceControlLoop-Single: + SubNetwork-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/SubNetwork-Attr' + - $ref: 'genericNrm.yaml#/components/schemas/SubNetwork-ncO' + - type: object + properties: + AssuranceClosedControlLoop: + $ref: '#/components/schemas/AssuranceClosedControlLoop-Multiple' + + ManagedElement-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/ManagedElement-Attr' + - $ref: 'genericNrm.yaml#/components/schemas/ManagedElement-ncO' + - type: object + properties: + AssuranceClosedControlLoop: + $ref: '#/components/schemas/AssuranceClosedControlLoop-Multiple' + + AssuranceClosedControlLoop-Single: allOf: - - $ref: 'genericNrm.yaml#/components/schemas/SubNetwork-Attr' + - $ref: 'genericNrm.yaml#/components/schemas/Top' - type: object properties: - operationalState: - $ref: '#/components/schemas/OperationalState' - administrativeState: - $ref: '#/components/schemas/AdministrativeState' - controlLoopLifeCyclePhase: - $ref: '#/components/schemas/ControlLoopLifeCyclePhase' - observationTimePeriod: + attributes: + type: object + properties: + operationalState: + $ref: 'genericNrm.yaml#/components/schemas/OperationalState' + administrativeState: + $ref: 'genericNrm.yaml#/components/schemas/AdministrativeState' + controlLoopLifeCyclePhase: + $ref: '#/components/schemas/ControlLoopLifeCyclePhase' + AssuranceGoal: + $ref: '#/components/schemas/AssuranceGoal-Multiple' + + AssuranceGoal-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: allOf: - - $ref: '#/components/schemas/ObservationTimePeriod' - type: object properties: observationTime: $ref: '#/components/schemas/ObservationTime' - timeUnit: - $ref: '#/components/schemas/TimeUnit' - AssuranceGoalStatus: - allOf: - - $ref: '#/components/schemas/AssuranceGoalStatus' - - type: object - properties: + assuranceTargetList: + $ref: '#/components/schemas/AssuranceTargetList' assuranceGoalStatusObserved: $ref: '#/components/schemas/AssuranceGoalStatusObserved' assuranceGoalStatusPredicted: $ref: '#/components/schemas/AssuranceGoalStatusPredicted' - managedEntity-Multiple: - $ref: '#/components/schemas/ManagedEntity-Multiple' - assuranceControlLoopGoal: - $ref: '#/components/schemas/AssuranceControlLoopGoal' - - ManagedEntity-Single: - oneOf: - - $ref: 'sliceNrm.yaml#/components/schemas/NetworkSlice-Single' - - $ref: 'sliceNrm.yaml#/components/schemas/NetworkSliceSubnet-Single' - - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' - - $ref: 'genericNrm.yaml#/components/schemas/ManagedElement-Attr' - + serviceProfileId: + type: string + sliceProfileId: + type: string + networkSliceRef: + $ref: 'comDefs.yaml#/components/schemas/Dn' + networkSliceSubnetRef: + $ref: 'comDefs.yaml#/components/schemas/Dn' + #-------- Definition of JSON arrays for name-contained IOCs ---------------------- - AssuranceControlLoop-Multiple: + AssuranceClosedControlLoop-Multiple: type: array items: - $ref: '#/components/schemas/AssuranceControlLoop-Single' - - ManagedEntity-Multiple: + $ref: '#/components/schemas/AssuranceClosedControlLoop-Single' + + AssuranceGoal-Multiple: type: array items: - $ref: '#/components/schemas/ManagedEntity-Single' + $ref: '#/components/schemas/AssuranceGoal-Single' + +#------------ Definitions in TS 28.536 for TS 28.623 ----------------------------- + + resources-coslaNrm: + oneOf: + - $ref: '#/components/schemas/AssuranceClosedControlLoop-Single' + - $ref: '#/components/schemas/AssuranceGoal-Single' + - $ref: '#/components/schemas/SubNetwork-Single' + - $ref: '#/components/schemas/ManagedElement-Single' \ No newline at end of file -- GitLab From 8deb795aaff92b6d09afa57da719d5c0e445a056 Mon Sep 17 00:00:00 2001 From: "U-ERICSSON\\ETHBLL" Date: Fri, 2 Jul 2021 11:54:17 +0200 Subject: [PATCH 036/593] removed all YANG files --- yang-models/README.md | 7 - yang-models/_3gpp-5g-common-yang-types.yang | 105 -- .../_3gpp-5gc-nrm-FiveQiDscpMappingSet.yang | 58 - ...-5gc-nrm-GtpUPathQoSMonitoringControl.yang | 142 --- .../_3gpp-5gc-nrm-QFQoSMonitoringControl.yang | 134 -- yang-models/_3gpp-5gc-nrm-affunction.yang | 38 - yang-models/_3gpp-5gc-nrm-amffunction.yang | 89 -- yang-models/_3gpp-5gc-nrm-amfregion.yang | 83 -- yang-models/_3gpp-5gc-nrm-amfset.yang | 81 -- yang-models/_3gpp-5gc-nrm-ausffunction.yang | 89 -- .../_3gpp-5gc-nrm-configurable5qiset.yang | 125 -- yang-models/_3gpp-5gc-nrm-dnfunction.yang | 39 - yang-models/_3gpp-5gc-nrm-dynamic5qiset.yang | 50 - yang-models/_3gpp-5gc-nrm-ep.yang | 646 ---------- .../_3gpp-5gc-nrm-externalnrffunction.yang | 42 - .../_3gpp-5gc-nrm-externalnssffunction.yang | 43 - .../_3gpp-5gc-nrm-externalseppfunction.yang | 55 - yang-models/_3gpp-5gc-nrm-lmffunction.yang | 63 - yang-models/_3gpp-5gc-nrm-n3iwffunction.yang | 55 - yang-models/_3gpp-5gc-nrm-neffunction.yang | 68 - yang-models/_3gpp-5gc-nrm-nfprofile.yang | 1095 ----------------- yang-models/_3gpp-5gc-nrm-nfservice.yang | 302 ----- yang-models/_3gpp-5gc-nrm-ngeirfunction.yang | 80 -- yang-models/_3gpp-5gc-nrm-nrffunction.yang | 88 -- yang-models/_3gpp-5gc-nrm-nssffunction.yang | 87 -- yang-models/_3gpp-5gc-nrm-nwdaffunction.yang | 86 -- yang-models/_3gpp-5gc-nrm-pcffunction.yang | 97 -- .../_3gpp-5gc-nrm-predefinedpccruleset.yang | 642 ---------- yang-models/_3gpp-5gc-nrm-scpfunction.yang | 50 - yang-models/_3gpp-5gc-nrm-seppfunction.yang | 70 -- yang-models/_3gpp-5gc-nrm-smffunction.yang | 102 -- yang-models/_3gpp-5gc-nrm-smsffunction.yang | 62 - yang-models/_3gpp-5gc-nrm-udmfunction.yang | 86 -- yang-models/_3gpp-5gc-nrm-udrfunction.yang | 78 -- yang-models/_3gpp-5gc-nrm-udsffunction.yang | 79 -- yang-models/_3gpp-5gc-nrm-upffunction.yang | 80 -- yang-models/_3gpp-common-ep-rp.yang | 68 - yang-models/_3gpp-common-fm.yang | 408 ------ yang-models/_3gpp-common-managed-element.yang | 248 ---- .../_3gpp-common-managed-function.yang | 311 ----- yang-models/_3gpp-common-measurements.yang | 542 -------- yang-models/_3gpp-common-subnetwork.yang | 214 ---- .../_3gpp-common-subscription-control.yang | 209 ---- yang-models/_3gpp-common-top.yang | 36 - yang-models/_3gpp-common-trace.yang | 895 -------------- yang-models/_3gpp-common-yang-extensions.yang | 95 -- yang-models/_3gpp-common-yang-types.yang | 512 -------- yang-models/_3gpp-nr-nrm-beam.yang | 96 -- yang-models/_3gpp-nr-nrm-bwp.yang | 104 -- .../_3gpp-nr-nrm-cesmanagementfunction.yang | 64 - ...3gpp-nr-nrm-commonbeamformingfunction.yang | 62 - ...3gpp-nr-nrm-cpciconfigurationfunction.yang | 67 - .../_3gpp-nr-nrm-danrmanagementfunction.yang | 44 - .../_3gpp-nr-nrm-desmanagementfunction.yang | 261 ---- yang-models/_3gpp-nr-nrm-dmrofunction.yang | 70 -- ...3gpp-nr-nrm-dpciconfigurationfunction.yang | 69 -- ...3gpp-nr-nrm-drachoptimizationfunction.yang | 120 -- yang-models/_3gpp-nr-nrm-ep.yang | 256 ---- .../_3gpp-nr-nrm-eutrancellrelation.yang | 160 --- yang-models/_3gpp-nr-nrm-eutranetwork.yang | 61 - .../_3gpp-nr-nrm-eutranfreqrelation.yang | 208 ---- yang-models/_3gpp-nr-nrm-eutranfrequency.yang | 64 - .../_3gpp-nr-nrm-externalamffunction.yang | 69 -- .../_3gpp-nr-nrm-externalenbfunction.yang | 60 - .../_3gpp-nr-nrm-externaleutrancell.yang | 153 --- .../_3gpp-nr-nrm-externalgnbcucpfunction.yang | 76 -- .../_3gpp-nr-nrm-externalgnbcuupfunction.yang | 66 - .../_3gpp-nr-nrm-externalgnbdufunction.yang | 76 -- .../_3gpp-nr-nrm-externalnrcellcu.yang | 85 -- ...3gpp-nr-nrm-externalservinggwfunction.yang | 52 - .../_3gpp-nr-nrm-externalupffunction.yang | 51 - yang-models/_3gpp-nr-nrm-gnbcucpfunction.yang | 132 -- yang-models/_3gpp-nr-nrm-gnbcuupfunction.yang | 172 --- yang-models/_3gpp-nr-nrm-gnbdufunction.yang | 93 -- yang-models/_3gpp-nr-nrm-nrcellcu.yang | 93 -- yang-models/_3gpp-nr-nrm-nrcelldu.yang | 226 ---- yang-models/_3gpp-nr-nrm-nrcellrelation.yang | 144 --- yang-models/_3gpp-nr-nrm-nrfreqrelation.yang | 245 ---- yang-models/_3gpp-nr-nrm-nrfrequency.yang | 71 -- yang-models/_3gpp-nr-nrm-nrnetwork.yang | 39 - yang-models/_3gpp-nr-nrm-nrsectorcarrier.yang | 119 -- yang-models/_3gpp-nr-nrm-rrmpolicy.yang | 122 -- yang-models/_3gpp-ns-nrm-networkslice.yang | 74 -- .../_3gpp-ns-nrm-networkslicesubnet.yang | 206 ---- yang-models/_3gpp-ns-nrm-perfreq.yang | 170 --- yang-models/_3gpp-ns-nrm-serviceprofile.yang | 569 --------- yang-models/_3gpp-ns-nrm-sliceprofile.yang | 124 -- .../external-yams/ietf-inet-types.yang | 472 ------- .../ietf-yang-schema-mount@2019-01-14.yang | 224 ---- .../ietf-yang-types@2013-07-15.yang | 480 -------- 90 files changed, 14803 deletions(-) delete mode 100755 yang-models/README.md delete mode 100755 yang-models/_3gpp-5g-common-yang-types.yang delete mode 100755 yang-models/_3gpp-5gc-nrm-FiveQiDscpMappingSet.yang delete mode 100755 yang-models/_3gpp-5gc-nrm-GtpUPathQoSMonitoringControl.yang delete mode 100755 yang-models/_3gpp-5gc-nrm-QFQoSMonitoringControl.yang delete mode 100755 yang-models/_3gpp-5gc-nrm-affunction.yang delete mode 100755 yang-models/_3gpp-5gc-nrm-amffunction.yang delete mode 100755 yang-models/_3gpp-5gc-nrm-amfregion.yang delete mode 100755 yang-models/_3gpp-5gc-nrm-amfset.yang delete mode 100755 yang-models/_3gpp-5gc-nrm-ausffunction.yang delete mode 100755 yang-models/_3gpp-5gc-nrm-configurable5qiset.yang delete mode 100755 yang-models/_3gpp-5gc-nrm-dnfunction.yang delete mode 100755 yang-models/_3gpp-5gc-nrm-dynamic5qiset.yang delete mode 100755 yang-models/_3gpp-5gc-nrm-ep.yang delete mode 100755 yang-models/_3gpp-5gc-nrm-externalnrffunction.yang delete mode 100755 yang-models/_3gpp-5gc-nrm-externalnssffunction.yang delete mode 100755 yang-models/_3gpp-5gc-nrm-externalseppfunction.yang delete mode 100755 yang-models/_3gpp-5gc-nrm-lmffunction.yang delete mode 100755 yang-models/_3gpp-5gc-nrm-n3iwffunction.yang delete mode 100755 yang-models/_3gpp-5gc-nrm-neffunction.yang delete mode 100755 yang-models/_3gpp-5gc-nrm-nfprofile.yang delete mode 100755 yang-models/_3gpp-5gc-nrm-nfservice.yang delete mode 100755 yang-models/_3gpp-5gc-nrm-ngeirfunction.yang delete mode 100755 yang-models/_3gpp-5gc-nrm-nrffunction.yang delete mode 100755 yang-models/_3gpp-5gc-nrm-nssffunction.yang delete mode 100755 yang-models/_3gpp-5gc-nrm-nwdaffunction.yang delete mode 100755 yang-models/_3gpp-5gc-nrm-pcffunction.yang delete mode 100755 yang-models/_3gpp-5gc-nrm-predefinedpccruleset.yang delete mode 100755 yang-models/_3gpp-5gc-nrm-scpfunction.yang delete mode 100755 yang-models/_3gpp-5gc-nrm-seppfunction.yang delete mode 100755 yang-models/_3gpp-5gc-nrm-smffunction.yang delete mode 100755 yang-models/_3gpp-5gc-nrm-smsffunction.yang delete mode 100755 yang-models/_3gpp-5gc-nrm-udmfunction.yang delete mode 100755 yang-models/_3gpp-5gc-nrm-udrfunction.yang delete mode 100755 yang-models/_3gpp-5gc-nrm-udsffunction.yang delete mode 100755 yang-models/_3gpp-5gc-nrm-upffunction.yang delete mode 100755 yang-models/_3gpp-common-ep-rp.yang delete mode 100755 yang-models/_3gpp-common-fm.yang delete mode 100755 yang-models/_3gpp-common-managed-element.yang delete mode 100755 yang-models/_3gpp-common-managed-function.yang delete mode 100755 yang-models/_3gpp-common-measurements.yang delete mode 100755 yang-models/_3gpp-common-subnetwork.yang delete mode 100755 yang-models/_3gpp-common-subscription-control.yang delete mode 100755 yang-models/_3gpp-common-top.yang delete mode 100755 yang-models/_3gpp-common-trace.yang delete mode 100755 yang-models/_3gpp-common-yang-extensions.yang delete mode 100755 yang-models/_3gpp-common-yang-types.yang delete mode 100755 yang-models/_3gpp-nr-nrm-beam.yang delete mode 100755 yang-models/_3gpp-nr-nrm-bwp.yang delete mode 100755 yang-models/_3gpp-nr-nrm-cesmanagementfunction.yang delete mode 100755 yang-models/_3gpp-nr-nrm-commonbeamformingfunction.yang delete mode 100755 yang-models/_3gpp-nr-nrm-cpciconfigurationfunction.yang delete mode 100755 yang-models/_3gpp-nr-nrm-danrmanagementfunction.yang delete mode 100755 yang-models/_3gpp-nr-nrm-desmanagementfunction.yang delete mode 100755 yang-models/_3gpp-nr-nrm-dmrofunction.yang delete mode 100755 yang-models/_3gpp-nr-nrm-dpciconfigurationfunction.yang delete mode 100755 yang-models/_3gpp-nr-nrm-drachoptimizationfunction.yang delete mode 100755 yang-models/_3gpp-nr-nrm-ep.yang delete mode 100755 yang-models/_3gpp-nr-nrm-eutrancellrelation.yang delete mode 100755 yang-models/_3gpp-nr-nrm-eutranetwork.yang delete mode 100755 yang-models/_3gpp-nr-nrm-eutranfreqrelation.yang delete mode 100755 yang-models/_3gpp-nr-nrm-eutranfrequency.yang delete mode 100755 yang-models/_3gpp-nr-nrm-externalamffunction.yang delete mode 100755 yang-models/_3gpp-nr-nrm-externalenbfunction.yang delete mode 100755 yang-models/_3gpp-nr-nrm-externaleutrancell.yang delete mode 100755 yang-models/_3gpp-nr-nrm-externalgnbcucpfunction.yang delete mode 100755 yang-models/_3gpp-nr-nrm-externalgnbcuupfunction.yang delete mode 100755 yang-models/_3gpp-nr-nrm-externalgnbdufunction.yang delete mode 100755 yang-models/_3gpp-nr-nrm-externalnrcellcu.yang delete mode 100755 yang-models/_3gpp-nr-nrm-externalservinggwfunction.yang delete mode 100755 yang-models/_3gpp-nr-nrm-externalupffunction.yang delete mode 100755 yang-models/_3gpp-nr-nrm-gnbcucpfunction.yang delete mode 100755 yang-models/_3gpp-nr-nrm-gnbcuupfunction.yang delete mode 100755 yang-models/_3gpp-nr-nrm-gnbdufunction.yang delete mode 100755 yang-models/_3gpp-nr-nrm-nrcellcu.yang delete mode 100755 yang-models/_3gpp-nr-nrm-nrcelldu.yang delete mode 100755 yang-models/_3gpp-nr-nrm-nrcellrelation.yang delete mode 100755 yang-models/_3gpp-nr-nrm-nrfreqrelation.yang delete mode 100755 yang-models/_3gpp-nr-nrm-nrfrequency.yang delete mode 100755 yang-models/_3gpp-nr-nrm-nrnetwork.yang delete mode 100755 yang-models/_3gpp-nr-nrm-nrsectorcarrier.yang delete mode 100755 yang-models/_3gpp-nr-nrm-rrmpolicy.yang delete mode 100755 yang-models/_3gpp-ns-nrm-networkslice.yang delete mode 100755 yang-models/_3gpp-ns-nrm-networkslicesubnet.yang delete mode 100755 yang-models/_3gpp-ns-nrm-perfreq.yang delete mode 100755 yang-models/_3gpp-ns-nrm-serviceprofile.yang delete mode 100755 yang-models/_3gpp-ns-nrm-sliceprofile.yang delete mode 100755 yang-models/external-yams/ietf-inet-types.yang delete mode 100755 yang-models/external-yams/ietf-yang-schema-mount@2019-01-14.yang delete mode 100755 yang-models/external-yams/ietf-yang-types@2013-07-15.yang diff --git a/yang-models/README.md b/yang-models/README.md deleted file mode 100755 index eb452b55a..000000000 --- a/yang-models/README.md +++ /dev/null @@ -1,7 +0,0 @@ -Folder for all 3GPP SA5 YANG modules and submodules (YAMs) -A subfolder for used external YANG modules is included. - -All commited YANG modules MUST pass the - "pyang --strict -p external-yams _3gpp-*.yang" - validation command without errors. - diff --git a/yang-models/_3gpp-5g-common-yang-types.yang b/yang-models/_3gpp-5g-common-yang-types.yang deleted file mode 100755 index 9c07b5cf8..000000000 --- a/yang-models/_3gpp-5g-common-yang-types.yang +++ /dev/null @@ -1,105 +0,0 @@ -module _3gpp-5g-common-yang-types { - yang-version 1.1; - namespace "urn:3gpp:sa5:_3gpp-5g-common-yang-types"; - prefix "types5g3gpp"; - - - import _3gpp-common-yang-types { prefix types3gpp; } - - organization "3GPP SA5"; - contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; - description "The model defines common types for 5G networks and - network slicing."; - reference "3GPP TS 28.541"; - - revision 2020-11-05 { reference CR-0412 ; } - revision 2019-10-20 { reference "Initial version."; } - - grouping SNssai { - description - "Single Network Slice Selection Assistance Information(S-NSSAI)"; - reference "3GPP TS 23.003"; - - leaf sd { - description "Slice Differentiator - If not needed, the value can be set to FFFFFF."; - type string{ - length 6; - pattern '[a-fA-F0-9]*'; - } - reference "3GPP TS 23.003"; - } - - leaf sst { - type uint8; - description "Slice/Service Type. - Values 0 to 127 belong to standardized SST range and are defined in - 3GPP TS 23.501. Values 128 to 255 belong to operator-specific range."; - } - } - - grouping PLMNInfo { - description "The PLMNInfo data type define a S-NSSAI member in a specific - PLMNId, and it have two attributes PLMNId and S-NSSAI (PLMNId, S-NSSAI). - The PLMNId represents a data type that is comprised of mcc - (mobile country code) and mnc (mobile network code), (See TS 23.003 - subclause 2.2 and 12.1) and S-NSSAI represents an data type, that is - comprised of an SST (Slice/Service type) and an optional - SD (Slice Differentiator) field"; - uses types3gpp:PLMNId; - uses SNssai; - } - - typedef CommModelType { - reference "3GPP TS 23501"; - type enumeration { - enum DIRECT_COMMUNICATION_WO_NRF { - value 0; - description "Directly communicate to other pre-configured NF service."; - } - - enum DIRECT_COMMUNICATION_WITH_NRF { - value 1; - description "Directly communicate to other NF service discovered - by NRF."; - } - - enum INDIRECT_COMMUNICATION_WO_DEDICATED_DISCOVERY { - value 2; - description "Communicate to pre-configured other NF service through - SCP as a proxy."; - } - - enum INDIRECT_COMMUNICATION_WITH_DEDICATED_DISCOVERY { - value 3; - description "Communication to NF service discovered by NRF through SCP as a proxy."; - } - - } - } - - grouping CommModel { - leaf groupId { - type uint16; - } - leaf commModelType { - type CommModelType; - } - leaf-list targetNFServiceList { - type types3gpp:DistinguishedName; - } - leaf commModelConfiguration { - type string; - } - } - - grouping SupportedFunc { - leaf function { - type string; - } - leaf policy { - type string; - } - } - -} \ No newline at end of file diff --git a/yang-models/_3gpp-5gc-nrm-FiveQiDscpMappingSet.yang b/yang-models/_3gpp-5gc-nrm-FiveQiDscpMappingSet.yang deleted file mode 100755 index fabfe4336..000000000 --- a/yang-models/_3gpp-5gc-nrm-FiveQiDscpMappingSet.yang +++ /dev/null @@ -1,58 +0,0 @@ -module _3gpp-5gc-nrm-FiveQiDscpMappingSet { - yang-version 1.1; - - namespace urn:3gpp:sa5:_3gpp-5gc-nrm-FiveQiDscpMappingSet; - prefix FiveQiDscpMapping3gpp; - - import _3gpp-common-top { prefix top3gpp; } - import _3gpp-common-managed-element { prefix me3gpp; } - import _3gpp-5gc-nrm-smffunction { prefix smf3gpp; } - - organization "3gpp SA5"; - contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; - description " This IOC represents the set of mapping between 5QIs and DSCP."; - reference "3GPP TS 28.541"; - - revision 2020-08-03 { reference "CR-0321"; } - revision 2020-05-27 { reference "CR-0287"; } - - grouping FiveQiDscpMapping { - leaf-list fiveQIValues { - type uint32 { - range 0..255 ; - } - min-elements 1; - description " Identifies the 5QI values that are mapped to a same DSCP, as specified in TS 28.541."; - } - - leaf dscp { - type uint32 { - range 0..255 ; - } - mandatory true; - } - } - - grouping FiveQiDscpMappingSetGrp { - description "Represents the FiveQiDscpMappingSet IOC."; - list FiveQiDscpMappingList { - key "dscp"; - uses FiveQiDscpMapping; - } - } - - grouping FiveQiDscpMappingSetSubtree { - list FiveQiDscpMappingSet { - description "Specifies the mapping between 5QIs and DSCPs."; - key id; - uses top3gpp:Top_Grp; - container attributes { - uses FiveQiDscpMappingSetGrp; - } - } - } - - augment "/me3gpp:ManagedElement/smf3gpp:SMFFunction" { - uses FiveQiDscpMappingSetSubtree; - } -} \ No newline at end of file diff --git a/yang-models/_3gpp-5gc-nrm-GtpUPathQoSMonitoringControl.yang b/yang-models/_3gpp-5gc-nrm-GtpUPathQoSMonitoringControl.yang deleted file mode 100755 index d29d6d21a..000000000 --- a/yang-models/_3gpp-5gc-nrm-GtpUPathQoSMonitoringControl.yang +++ /dev/null @@ -1,142 +0,0 @@ -module _3gpp-5gc-nrm-GtpUPathQoSMonitoringControl { - yang-version 1.1; - - namespace urn:3gpp:sa5:_3gpp-5gc-nrm-GtpUPathQoSMonitoringControl; - prefix gtpUPathQMCtrl3gpp; - - import _3gpp-common-managed-element { prefix me3gpp; } - import _3gpp-5g-common-yang-types { prefix types5g3gpp; } - import _3gpp-5gc-nrm-smffunction { prefix smf3gpp; } - import _3gpp-common-top { prefix top3gpp; } - - organization "3gpp SA5"; - contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; - description "This IOC represents the capabilities and properties for control - of GTP-U path QoS monitoring defined in 3GPP TS 23.501."; - reference "3GPP TS 28.541"; - - revision 2020-11-05 { reference CR-0412 ; } - revision 2020-09-30 { reference "CR-0393"; } - revision 2020-08-03 { reference "CR-0321"; } - revision 2020-04-10 { reference "S5-202103"; } - - grouping GtpUPathDelayThresholdsType { - description "Thresholds for reporting the packet delay for GTP-U path QoS - monitoring "; - reference "3GPP TS 29.244"; - leaf n3AveragePacketDelayThreshold { - mandatory true; - type uint32; - } - leaf n3MinPacketDelayThreshold { - mandatory true; - type uint32; - } - leaf n3MaxPacketDelayThreshold { - mandatory true; - type uint32; - } - leaf n9AveragePacketDelayThreshold { - mandatory true; - type uint32; - } - leaf n9MinPacketDelayThreshold { - mandatory true; - type uint32; - } - leaf n9MaxPacketDelayThreshold { - mandatory true; - type uint32; - } - } - - grouping GtpUPathQoSMonitoringControlGrp { - description "Represents the GtpUPathQoSMonitoringControl IOC."; - - leaf gtpUPathQoSMonitoringState { - description "The state of GTP-U path QoS monitoring."; - mandatory true; - type enumeration { - enum ENABLED; - enum DISABLED; - } - } - - list gtpUPathMonitoredSNSSAIs { - key "sd sst"; - description "The S-NSSAIs for which the the GTP-U path QoS monitoring is - to be performed."; - reference "3GPP TS 23.003"; - uses types5g3gpp:SNssai; - } - - leaf-list monitoredDSCPs { - description "The DSCPs for which the GTP-U path QoS monitoring is to be - performed."; - reference "3GPP TS 29.244"; - type uint32; - } - - leaf isEventTriggeredGtpUPathMonitoringSupported { - description "It indicates whether the event triggered GTP-U path QoS - monitoring reporting based on thresholds is supported."; - mandatory true; - reference "3GPP TS 29.244"; - type boolean; - } - - leaf isPeriodicGtpUMonitoringSupported { - description "It indicates whether the periodic GTP-U path QoS monitoring - reporting is supported."; - mandatory true; - reference "3GPP TS 29.244"; - type boolean; - } - - leaf isImmediateGtpUMonitoringSupported { - description "It indicates whether the immediate GTP-U path QoS monitoring - reporting is supported."; - mandatory true; - reference "3GPP TS 29.244"; - type boolean; - } - - list gtpUPathDelayThresholds { - key n3AveragePacketDelayThreshold; - // if max-elements is increased later, the key may need to be modified - min-elements 1; - max-elements 1; - description "It specifies the thresholds for reporting the packet delay - for the GTO-U path QoS monitoring."; - uses GtpUPathDelayThresholdsType; - } - - leaf gtpUPathMinimumWaitTime { - description "It specifies the minimum waiting time (in seconds) between - two consecutive reports for event triggered GTP-U path QoS monitoring - reporting."; - type uint32; - } - - leaf gtpUPathMeasurementPeriod { - description "It specifies the period (in seconds) for reporting the packet - delay for GTP-U path QoS monitoring."; - type uint32; - } - } - - augment "/me3gpp:ManagedElement/smf3gpp:SMFFunction" { - - list GtpUPathQoSMonitoringControl { - description "Specifies the capabilities and properties for control of - GTP-U path QoS monitoring. For more information about the GTP-U path - QoS monitoring."; - reference "3GPP TS 23.501"; - key id; - uses top3gpp:Top_Grp; - container attributes { - uses GtpUPathQoSMonitoringControlGrp; - } - } - } -} \ No newline at end of file diff --git a/yang-models/_3gpp-5gc-nrm-QFQoSMonitoringControl.yang b/yang-models/_3gpp-5gc-nrm-QFQoSMonitoringControl.yang deleted file mode 100755 index a7290eb81..000000000 --- a/yang-models/_3gpp-5gc-nrm-QFQoSMonitoringControl.yang +++ /dev/null @@ -1,134 +0,0 @@ -module _3gpp-5gc-nrm-QFQoSMonitoringControl { - yang-version 1.1; - - namespace urn:3gpp:sa5:_3gpp-5gc-nrm-QFQoSMonitoringControl; - prefix qFQMCtrl3gpp; - - import _3gpp-common-managed-element { prefix me3gpp; } - import _3gpp-5gc-nrm-smffunction { prefix smf3gpp; } - import _3gpp-common-top { prefix top3gpp; } - import _3gpp-5g-common-yang-types { prefix types5g3gpp; } - - organization "3gpp SA5"; contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; - description "This IOC represents the capabilities and properties for control - of QoS monitoring per QoS flow per UE for URLLC service defined - -in 3GPP TS 23.501."; - reference "3GPP TS 28.541"; - - revision 2020-11-05 { reference CR-0412 ; } - revision 2020-08-03 { reference "CR-0321"; } - revision 2020-04-10 { reference "S5-202101"; } - - grouping QFPacketDelayThresholdsTypeGrp { - description "Represents the QFPacketDelayThresholdsType"; - leaf thresholdDl { - type uint32; - units milliseconds; - description "Downlink threshold"; - } - - leaf thresholdUl { - type uint32; - units milliseconds; - description "Uplink threshold"; - } - - leaf thresholdRtt { - type uint32; - units milliseconds; - description "Round trip threshold"; - } - } - - grouping QFQoSMonitoringControlGrp { - description "Represents the QFQoSMonitoringControl IOC."; - reference "3GPP TS 28.541"; - - leaf qFQoSMonitoringState { - description "The state of QoS monitoring per QoS flow per UE."; - mandatory true; - type enumeration { - enum ENABLED; - enum DISABLED; - } - } - - list qFMonitoredSNSSAIs { - description "The S-NSSAIs for which the QoS monitoring per QoS flow - per UE is to be performed."; - reference "3GPP TS 23.003"; - key "sd sst"; - uses types5g3gpp:SNssai;} - - leaf-list qFMonitored5QIs { - description "The 5QIs for which the QoS monitoring per QoS flow - per UE is to be performed."; - reference "3GPP TS 23.501"; - type uint32 { - range "0..255"; - } - } - - leaf isEventTriggeredQFMonitoringSupported { - description "It indicates whether the event based QoS monitoring - reporting per QoS flow per UE is supported."; - mandatory true; - reference "3GPP TS 29.244"; - type boolean; - } - - leaf isPeriodicQFMonitoringSupported { - description "It indicates whether the periodic QoS monitoring reporting - per QoS flow per UE is supported."; - mandatory true; - reference "3GPP TS 29.244"; - type boolean; - } - - leaf isSessionReleasedQFMonitoringSupported { - description "It indicates whether the session release based QoS monitoring - reporting per QoS flow per UE is supported."; - mandatory true; - reference "3GPP TS 29.244"; - type boolean; - } - - list qFPacketDelayThresholds { - key "idx"; - min-elements 1; - max-elements 1; - description "It specifies the thresholds for reporting the packet delay - between PSA and UE for QoS monitoring per QoS flow per UE."; - - leaf idx { type uint32 ; } - uses QFPacketDelayThresholdsTypeGrp; - } - - leaf qFMinimumWaitTime { - description "It specifies the minimum waiting time (in seconds) between - two consecutive reports for event triggered QoS monitoring reporting - per QoS flow per UE."; - type uint32; - } - - leaf qFMeasurementPeriod { - description "It specifies the period (in seconds) for reporting the - packet delay for QoS monitoring per QoS flow per UE."; - type uint32; - } - } - - augment "/me3gpp:ManagedElement/smf3gpp:SMFFunction" { - - list QFQoSMonitoringControl { - description "Represents the QFQoSMonitoringControl IOC."; - reference "3GPP TS 28.541"; - key id; - uses top3gpp:Top_Grp; - container attributes { - uses QFQoSMonitoringControlGrp; - } - } - } -} \ No newline at end of file diff --git a/yang-models/_3gpp-5gc-nrm-affunction.yang b/yang-models/_3gpp-5gc-nrm-affunction.yang deleted file mode 100755 index a668b8a3a..000000000 --- a/yang-models/_3gpp-5gc-nrm-affunction.yang +++ /dev/null @@ -1,38 +0,0 @@ -module _3gpp-5gc-nrm-affunction { - yang-version 1.1; - - namespace urn:3gpp:sa5:_3gpp-5gc-nrm-affunction; - prefix af3gpp; - - import _3gpp-common-managed-function { prefix mf3gpp; } - import _3gpp-common-managed-element { prefix me3gpp; } - import _3gpp-common-top { prefix top3gpp; } - - organization "3gpp SA5"; - description "This IOC is defined only to describe the IOCs representing - its interaction interface with 5GC (i.e. EP_Rx and EP_N5). - It has no attributes defined."; - reference "3GPP TS 28.541"; - - revision 2019-10-28 { reference S5-193518 ; } - - revision 2019-05-15 { - description "initial revision"; - } - - grouping AFFunctionGrp { - uses mf3gpp:ManagedFunctionGrp; - } - - augment "/me3gpp:ManagedElement" { - list AFFunction { - description "5G Core AF Function"; - reference "3GPP TS 28.541"; - key id; - uses top3gpp:Top_Grp; - container attributes { - uses AFFunctionGrp; - } - } - } -} \ No newline at end of file diff --git a/yang-models/_3gpp-5gc-nrm-amffunction.yang b/yang-models/_3gpp-5gc-nrm-amffunction.yang deleted file mode 100755 index 1ab54a9d3..000000000 --- a/yang-models/_3gpp-5gc-nrm-amffunction.yang +++ /dev/null @@ -1,89 +0,0 @@ -module _3gpp-5gc-nrm-amffunction { - yang-version 1.1; - namespace urn:3gpp:sa5:_3gpp-5gc-nrm-amffunction; - prefix amf3gpp; - - import _3gpp-common-managed-function { prefix mf3gpp; } - import _3gpp-common-managed-element { prefix me3gpp; } - import _3gpp-common-yang-types { prefix types3gpp; } - import _3gpp-5g-common-yang-types { prefix types5g3gpp; } - import ietf-inet-types { prefix inet; } - import _3gpp-common-top { prefix top3gpp; } - - organization "3gpp SA5"; - contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; - description "AMFFunction derived from basic ManagedFunction."; - - revision 2020-11-05 { reference CR-0412 ; } - revision 2019-10-25 { reference "S5-194457 S5-193518"; } - - revision 2019-05-31 { reference "Ericsson refactoring."; } - revision 2018-08-07 { reference "Initial revision"; } - - grouping AMFFunctionGrp { - description "Represents the AMFFunction IOC"; - uses mf3gpp:ManagedFunctionGrp; - - list pLMNIdList { - min-elements 1; - description "A list of PLMN identifiers (Mobile Country Code and Mobile - Network Code)."; - key "mcc mnc"; - uses types3gpp:PLMNId; - } - - container aMFIdentifier { - presence true; - description "An AMF identifier, comprising an AMF Region ID, an - AMF Set ID and an AMF Pointer."; - uses types3gpp:AmfIdentifier; - } - - leaf sBIFQDN { - description "The FQDN of the registered NF instance in the - service-based interface."; - type inet:domain-name; - } - - list sNSSAIList { - min-elements 1; - description "List of S-NSSAIs the managed object is capable of supporting. - (Single Network Slice Selection Assistance Information) - An S-NSSAI has an SST (Slice/Service type) and an optional SD - (Slice Differentiator) field."; - reference "3GPP TS 23.003"; - key "sd sst"; - uses types5g3gpp:SNssai; - } - - list managedNFProfile { - key idx; - min-elements 1; - max-elements 1; - uses types3gpp:ManagedNFProfile; - } - - list commModelList { - min-elements 1; - key "groupId"; - description "Specifies a list of commModel. It can be used by NF and - NF services to interact with each other in 5G Core network "; - reference "3GPP TS 23.501"; - uses types5g3gpp:CommModel; - } - - } - - augment "/me3gpp:ManagedElement" { - list AMFFunction { - description "5G Core AMF Function"; - reference "3GPP TS 28.541"; - key id; - uses top3gpp:Top_Grp; - container attributes { - uses AMFFunctionGrp; - } - uses mf3gpp:ManagedFunctionContainedClasses; - } - } -} \ No newline at end of file diff --git a/yang-models/_3gpp-5gc-nrm-amfregion.yang b/yang-models/_3gpp-5gc-nrm-amfregion.yang deleted file mode 100755 index 3746a58a6..000000000 --- a/yang-models/_3gpp-5gc-nrm-amfregion.yang +++ /dev/null @@ -1,83 +0,0 @@ -module _3gpp-5gc-nrm-amfregion { - yang-version 1.1; - namespace urn:3gpp:sa5:_3gpp-5gc-nrm-amfregion; - prefix amfr3gpp; - - import _3gpp-common-yang-types { prefix types3gpp; } - import _3gpp-common-subnetwork { prefix subnet3gpp; } - import _3gpp-common-top { prefix top3gpp; } - import _3gpp-common-managed-function { prefix mf3gpp; } - import _3gpp-5g-common-yang-types { prefix types5g3gpp; } - - organization "3gpp SA5"; - contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; - description "This IOC represents the AMF Region which consists one or - multiple AMF Sets."; - - revision 2020-11-05 { reference CR-0412 ; } - revision 2019-10-28 { reference S5-193518 ; } - revision 2019-06-11 { - reference "Ericsson refactoring."; } - - grouping AMFRegionGrp { - description "Represents the AMFRegion IOC"; - uses mf3gpp:ManagedFunctionGrp; - - list pLMNIdList { - description "List of at most six entries of PLMN Identifiers, but at - least one (the primary PLMN Id). - The PLMN Identifier is composed of a Mobile Country Code (MCC) - and a Mobile Network Code (MNC)."; - - min-elements 1; - max-elements 6; - key "mcc mnc"; - uses types3gpp:PLMNId; - } - - leaf-list nRTACList { - description "List of Tracking Area Codes (legacy TAC or extended TAC) - where the represented management function is serving."; - reference "TS 38.413 clause 9.3.3.10"; - min-elements 1; - config false; - type types3gpp:Tac; - } - - list sNSSAIList { - description "List of S-NSSAIs the managed object is capable of supporting. - (Single Network Slice Selection Assistance Information) - An S-NSSAI has an SST (Slice/Service type) and an optional SD - (Slice Differentiator) field."; - //conditional support only if the network slicing feature is supported. - reference "3GPP TS 23.003"; - key "sd sst"; - uses types5g3gpp:SNssai; - } - - leaf aMFRegionId { - description "Represents the AMF Region ID, which identifies the region."; - mandatory true; - type types3gpp:AmfRegionId; - } - - leaf-list aMFSet { - description "The AMFSet that the AFMRegion is associated with."; - min-elements 1; - type instance-identifier; - } - } - - augment "/subnet3gpp:SubNetwork" { - list AMFRegion { - description "5G Core AMFRegion IOC"; - reference "3GPP TS 28.541"; - key id; - uses top3gpp:Top_Grp; - container attributes { - uses AMFRegionGrp; - } - uses mf3gpp:ManagedFunctionContainedClasses; - } - } -} \ No newline at end of file diff --git a/yang-models/_3gpp-5gc-nrm-amfset.yang b/yang-models/_3gpp-5gc-nrm-amfset.yang deleted file mode 100755 index 8b978160e..000000000 --- a/yang-models/_3gpp-5gc-nrm-amfset.yang +++ /dev/null @@ -1,81 +0,0 @@ -module _3gpp-5gc-nrm-amfset { - yang-version 1.1; - namespace urn:3gpp:sa5:_3gpp-5gc-nrm-amfset; - prefix amfset3gpp; - - import _3gpp-common-yang-types { prefix types3gpp; } - import _3gpp-common-subnetwork { prefix subnet3gpp; } - import _3gpp-common-top { prefix top3gpp; } - import _3gpp-common-managed-function { prefix mf3gpp; } - import _3gpp-5g-common-yang-types { prefix types5g3gpp; } - - organization "3gpp SA5"; - contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; - description "This IOC represents the AMF Set which consists of some AMFs - that serve a given area and Network Slice."; - - revision 2020-11-05 { reference CR-0412 ; } - revision 2019-10-28 { reference S5-193518 ; } - revision 2019-06-11 { reference "Ericsson refactoring."; } - - grouping AMFSetGrp { - description "Represents the AMFSet IOC"; - uses mf3gpp:ManagedFunctionGrp; - - list pLMNIdList { - description "List of at most six entries of PLMN Identifiers, but at - least one (the primary PLMN Id). The PLMN Identifier is composed - of a Mobile Country Code (MCC) and a Mobile Network Code (MNC)."; - - min-elements 1; - max-elements 6; - key "mcc mnc"; - uses types3gpp:PLMNId; - } - - leaf-list nRTACList { - description "List of Tracking Area Codes (legacy TAC or extended TAC) - where the represented management function is serving."; - reference "TS 38.413 clause 9.3.3.10"; - min-elements 1; - config false; - type types3gpp:Tac; - } - - list sNSSAIList { - description "List of S-NSSAIs the managed object is capable of supporting. - (Single Network Slice Selection Assistance Information) - An S-NSSAI has an SST (Slice/Service type) and an optional SD - (Slice Differentiator) field."; - //conditional support only if the network slicing feature is supported. - reference "3GPP TS 23.003"; - key "sd sst"; - uses types5g3gpp:SNssai; - } - - leaf aMFRegion { - description "The AMFRegion that the AFMSet is associated with."; - type instance-identifier; - } - - leaf-list aMFSetMemberList { - description "List of DNs of AMFFunction instances of the AMFSet."; - min-elements 1; - max-elements 1; - type types3gpp:DistinguishedName; - } - } - - augment "/subnet3gpp:SubNetwork" { - list AMFSet { - description "5G Core AMFSet IOC"; - reference "3GPP TS 28.541"; - key id; - uses top3gpp:Top_Grp; - container attributes { - uses AMFSetGrp; - } - uses mf3gpp:ManagedFunctionContainedClasses; - } - } -} \ No newline at end of file diff --git a/yang-models/_3gpp-5gc-nrm-ausffunction.yang b/yang-models/_3gpp-5gc-nrm-ausffunction.yang deleted file mode 100755 index f94b6505e..000000000 --- a/yang-models/_3gpp-5gc-nrm-ausffunction.yang +++ /dev/null @@ -1,89 +0,0 @@ -module _3gpp-5gc-nrm-ausffunction { - yang-version 1.1; - - namespace urn:3gpp:sa5:_3gpp-5gc-nrm-ausffunction; - prefix ausf3gpp; - - import _3gpp-common-managed-function { prefix mf3gpp; } - import _3gpp-common-managed-element { prefix me3gpp; } - import ietf-inet-types { prefix inet; } - import _3gpp-5g-common-yang-types { prefix types5g3gpp; } - import _3gpp-common-yang-types { prefix types3gpp; } - import _3gpp-common-top { prefix top3gpp; } - - organization "3gpp SA5"; - contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; - description "This IOC represents the AUSF function in 5GC. For more - information about the AUSF, see 3GPP TS 23.501."; - reference "3GPP TS 28.541"; - - - revision 2020-11-05 { reference CR-0412 ; } - revision 2019-10-25 { reference "S5-194457 S5-193518"; } - - revision 2019-05-22 {reference "initial revision"; } - - grouping AUSFFuntionGrp { - description "Represents the AUSFFuntion IOC"; - uses mf3gpp:ManagedFunctionGrp; - - list pLMNIdList { - description "List of at most six entries of PLMN Identifiers, but at - least one (the primary PLMN Id). - The PLMN Identifier is composed of a Mobile Country Code (MCC) and - a Mobile Network Code (MNC)."; - - min-elements 1; - max-elements 6; - key "mcc mnc"; - uses types3gpp:PLMNId; - } - - leaf sBIFQDN { - description "The FQDN of the registered NF instance in the - service-based interface."; - type inet:domain-name; - } - - list sNSSAIList { - description "List of S-NSSAIs the managed object is capable of supporting. - (Single Network Slice Selection Assistance Information) - An S-NSSAI has an SST (Slice/Service type) and an optional SD - (Slice Differentiator) field."; - //optional support - reference "3GPP TS 23.003"; - key "sd sst"; - uses types5g3gpp:SNssai; - } - - list managedNFProfile { - key idx; - min-elements 1; - max-elements 1; - uses types3gpp:ManagedNFProfile; - } - - - list commModelList { - min-elements 1; - key "groupId"; - description "Specifies a list of commModel. It can be used by NF and - NF services to interact with each other in 5G Core network "; - reference "3GPP TS 23.501"; - uses types5g3gpp:CommModel; - } - } - - augment "/me3gpp:ManagedElement" { - list AUSFFunction { - description "5G Core AUSF Function"; - reference "3GPP TS 28.541"; - key id; - uses top3gpp:Top_Grp; - container attributes { - uses AUSFFuntionGrp; - } - uses mf3gpp:ManagedFunctionContainedClasses; - } - } -} \ No newline at end of file diff --git a/yang-models/_3gpp-5gc-nrm-configurable5qiset.yang b/yang-models/_3gpp-5gc-nrm-configurable5qiset.yang deleted file mode 100755 index 2a402a96e..000000000 --- a/yang-models/_3gpp-5gc-nrm-configurable5qiset.yang +++ /dev/null @@ -1,125 +0,0 @@ -module _3gpp-5gc-nrm-configurable5qiset { - yang-version 1.1; - - namespace urn:3gpp:sa5:_3gpp-5gc-nrm-configurable5qiset; - prefix Conf5QIs3gpp; - - import _3gpp-common-top { prefix top3gpp; } - import _3gpp-common-managed-element { prefix me3gpp; } - import _3gpp-common-subnetwork { prefix subnet3gpp; } - - organization "3gpp SA5"; - contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; - description "This IOC represents the non-standardized 5QIs, including - their QoS characteristics, that need to be pre-configured - (and configurable) to the 5G NFs."; - reference "3GPP TS 28.541"; - - revision 2020-08-03 { reference "CR-0321"; } - revision 2020-06-03 { reference "CR-0286"; } - - grouping PacketErrorRate { - leaf scalar { - type uint32 { - range 0..9 ; - } - mandatory true; - description "The Packet Error Rate of a 5QI expressed as Scalar x 10-k - where k is the Exponent."; - } - leaf exponent { - type uint32 { - range 0..9 ; - } - mandatory true; - description "The Packet Error Rate of a 5QI expressed as Scalar x 10-k, - where k is the Exponent."; - } - } - - grouping FiveQICharacteristics { - leaf fiveQIValue { - type uint32 { - range 0..255 ; - } - mandatory true; - description "Identifies the 5QI value."; - } - - leaf resourceType { - type enumeration { - enum GBR; - enum NON_GBR; - } - mandatory true; - description "It indicates the Resource Type of a 5QI, as specified - in TS 23.501 "; - } - - leaf priorityLevel { - type uint32 { - range 0..127 ; - } - } - - leaf packetDelayBudget { - type uint32 { - range 0..1023 ; - } - description "Indicates the Packet Delay Budget (in unit of 0.5ms)of a 5QI, - as specified in TS 23.501 "; - } - - list packetErrorRate { - key "scalar exponent"; - min-elements 0; - max-elements 1; - uses PacketErrorRate; - reference "TS 23.501"; - } - - leaf averagingWindow { - type uint32 { - range 0..4095 ; - } - units ms; - reference "TS 23.501"; - } - - leaf maximumDataBurstVolume { - type uint32{ - range 0..4095 ; - } - units byte; - } - } - - grouping Configurable5QISetGrp { - description "Represents the Configurable5QISet IOC."; - list configurable5QIs { - key "fiveQIValue"; - uses FiveQICharacteristics; - } - } - - grouping Configurable5QISetSubtree { - list Configurable5QISet { - description "Specifies the non-standardized 5QIs, including their QoS - characteristics, that need to be pre-configured (and configurable) to - the 5G NFs, see 3GPP TS 23.501."; - key id; - uses top3gpp:Top_Grp; - container attributes { - uses Configurable5QISetGrp; - } - } - } - - augment "/subnet3gpp:SubNetwork" { - uses Configurable5QISetSubtree; - } - - augment "/me3gpp:ManagedElement" { - uses Configurable5QISetSubtree; - } -} \ No newline at end of file diff --git a/yang-models/_3gpp-5gc-nrm-dnfunction.yang b/yang-models/_3gpp-5gc-nrm-dnfunction.yang deleted file mode 100755 index 675c3b1aa..000000000 --- a/yang-models/_3gpp-5gc-nrm-dnfunction.yang +++ /dev/null @@ -1,39 +0,0 @@ -module _3gpp-5gc-nrm-dnfunction { - yang-version 1.1; - - namespace urn:3gpp:sa5_3gpp-5gc-nrm-dnfunction; - prefix dn3gpp; - - import _3gpp-common-managed-function { prefix mf3gpp; } - import _3gpp-common-managed-element { prefix me3gpp; } - import _3gpp-common-top { prefix top3gpp; } - - organization "3gpp SA5"; - description "This IOC is defined only to describe the IOCs representing - Data Network (DN) interaction interface with 5GC (i.e. EP_N6). - It has no attributes defined."; - reference "3GPP TS 28.541"; - - revision 2019-10-28 { reference S5-193518 ; } - - revision 2019-05-15 { - description "initial revision"; - } - - grouping DNFunctionGrp { - uses mf3gpp:ManagedFunctionGrp; - } - - augment "/me3gpp:ManagedElement" { - list DNFunction { - description "5G Core DN Function"; - reference "3GPP TS 28.541"; - key id; - uses top3gpp:Top_Grp; - container attributes { - uses DNFunctionGrp; - } - uses mf3gpp:ManagedFunctionContainedClasses; - } - } -} \ No newline at end of file diff --git a/yang-models/_3gpp-5gc-nrm-dynamic5qiset.yang b/yang-models/_3gpp-5gc-nrm-dynamic5qiset.yang deleted file mode 100755 index 9b19f6a32..000000000 --- a/yang-models/_3gpp-5gc-nrm-dynamic5qiset.yang +++ /dev/null @@ -1,50 +0,0 @@ -module _3gpp-5gc-nrm-dynamic5qiset { - yang-version 1.1; - - namespace urn:3gpp:sa5:_3gpp-5gc-nrm-dynamic5qiset; - prefix dyn5QIs3gpp; - - import _3gpp-common-top { prefix top3gpp; } - import _3gpp-common-subnetwork { prefix subnet3gpp; } - import _3gpp-common-managed-element { prefix me3gpp; } - import _3gpp-5gc-nrm-configurable5qiset { prefix Conf5QIs3gpp; } - - organization "3gpp SA5"; - contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; - description "This IOC represents the dynamic 5QIs including their QoS - characteristics."; - reference "3GPP TS 28.541"; - - revision 2020-09-30 { reference "CR-0393"; } - revision 2020-08-06 { reference "CR-0333"; } - - grouping Dynamic5QISetGrp { - description "Represents the Dynamic5QISet IOC."; - list dynamic5QIs { - key "fiveQIValue"; - description "Represents the Dynamic5QISet IOC."; - uses Conf5QIs3gpp:FiveQICharacteristics; - } - } - - grouping Dynamic5QISetSubtree { - description "Helps augmenting Dynamic5QISet into multiple places."; - list Dynamic5QISet { - description "Specifies the dynamic 5QIs including their QoS - characteristics, see 3GPP TS 23.501."; - key "id"; - uses top3gpp:Top_Grp; - container attributes { - uses Dynamic5QISetGrp; - } - } - } - - augment "/subnet3gpp:SubNetwork" { - uses Dynamic5QISetSubtree; - } - - augment "/me3gpp:ManagedElement" { - uses Dynamic5QISetSubtree; - } -} \ No newline at end of file diff --git a/yang-models/_3gpp-5gc-nrm-ep.yang b/yang-models/_3gpp-5gc-nrm-ep.yang deleted file mode 100755 index fdd210297..000000000 --- a/yang-models/_3gpp-5gc-nrm-ep.yang +++ /dev/null @@ -1,646 +0,0 @@ -module _3gpp-5gc-nrm-ep { - yang-version 1.1; - namespace "urn:3gpp:tsg:sa5:nrm:_3gpp-5gc-nrm-ep"; - prefix "cep3gpp"; - - import _3gpp-common-ep-rp { prefix eprp3gpp; } - import _3gpp-common-managed-element { prefix me3gpp; } - import _3gpp-5gc-nrm-affunction { prefix af3gpp; } - import _3gpp-5gc-nrm-amffunction { prefix amf3gpp; } - import _3gpp-5gc-nrm-ausffunction { prefix ausf3gpp; } - import _3gpp-5gc-nrm-dnfunction { prefix dn3gpp; } - import _3gpp-5gc-nrm-lmffunction { prefix lmf3gpp; } - import _3gpp-5gc-nrm-n3iwffunction { prefix n3iwf3gpp; } - import _3gpp-5gc-nrm-ngeirfunction { prefix ngeir3gpp; } - import _3gpp-5gc-nrm-nrffunction { prefix nrf3gpp; } - import _3gpp-5gc-nrm-nssffunction { prefix nssf3gpp; } - import _3gpp-5gc-nrm-pcffunction { prefix pcf3gpp; } - import _3gpp-5gc-nrm-seppfunction { prefix sepp3gpp; } - import _3gpp-5gc-nrm-smffunction { prefix smf3gpp; } - import _3gpp-5gc-nrm-smsffunction { prefix smsf3gpp; } - import _3gpp-5gc-nrm-udmfunction { prefix udm3gpp; } - import _3gpp-5gc-nrm-upffunction { prefix upf3gpp; } - import _3gpp-common-yang-types { prefix types3gpp; } - import _3gpp-common-top { prefix top3gpp; } - import ietf-inet-types { prefix inet; } - - organization "3GPP SA5"; - description "Defines the YANG mapping of the 5GC related endpoint - Information Object Classes (IOCs) that are part of the 5G Core - Network Resource Model."; - reference "3GPP TS 28.541"; - - revision 2019-11-18 { - description "Ericsson refactoring."; - } - - revision 2018-07-31 { - description "Initial revision"; - } - - grouping EP_N2Grp { - uses eprp3gpp:EP_Common; - } - - grouping EP_N3Grp { - uses eprp3gpp:EP_Common; - } - - grouping EP_N4Grp { - uses eprp3gpp:EP_Common; - } - - grouping EP_N5Grp { - uses eprp3gpp:EP_Common; - } - - grouping EP_N6Grp { - uses eprp3gpp:EP_Common; - } - - grouping EP_N7Grp { - uses eprp3gpp:EP_Common; - } - - grouping EP_N8Grp { - uses eprp3gpp:EP_Common; - } - - grouping EP_N9Grp { - uses eprp3gpp:EP_Common; - } - - grouping EP_N10Grp { - uses eprp3gpp:EP_Common; - } - - grouping EP_N11Grp { - uses eprp3gpp:EP_Common; - } - - grouping EP_N12Grp { - uses eprp3gpp:EP_Common; - } - - grouping EP_N13Grp { - uses eprp3gpp:EP_Common; - } - - grouping EP_N14Grp { - uses eprp3gpp:EP_Common; - } - - grouping EP_N15Grp { - uses eprp3gpp:EP_Common; - } - - grouping EP_N16Grp { - uses eprp3gpp:EP_Common; - } - - grouping EP_N17Grp { - uses eprp3gpp:EP_Common; - } - - grouping EP_N20Grp { - uses eprp3gpp:EP_Common; - } - - grouping EP_N21Grp { - uses eprp3gpp:EP_Common; - } - - grouping EP_N22Grp { - uses eprp3gpp:EP_Common; - } - - grouping EP_N26Grp { - uses eprp3gpp:EP_Common; - } - - grouping EP_N27Grp { - uses eprp3gpp:EP_Common; - } - - grouping EP_N31Grp { - uses eprp3gpp:EP_Common; - } - - grouping EP_N32Grp { - uses eprp3gpp:EP_Common; - container remotePlmnId { - description "PLMN Identifiers of the remote sepp. - The PLMN Identifier is composed of a Mobile Country Code (MCC) and a Mobile Network Code (MNC)."; - uses types3gpp:PLMNId; - } - - leaf remoteSeppAddress { - description "The host address of the SEPP."; - type inet:host; - } - - leaf remoteSeppId { - type uint16; - } - - leaf n32cParas { - type string; - } - - leaf n32fPolicy { - type string; - } - - leaf withIPX { - type boolean; - } - } - - grouping EP_S5CGrp { - uses eprp3gpp:EP_Common; - } - - grouping EP_S5UGrp { - uses eprp3gpp:EP_Common; - } - - grouping EP_RxGrp { - uses eprp3gpp:EP_Common; - } - - grouping EP_MAP_SMSCGrp { - uses eprp3gpp:EP_Common; - } - - grouping EP_NLSGrp { - uses eprp3gpp:EP_Common; - } - - grouping EP_NLGGrp { - uses eprp3gpp:EP_Common; - } - - grouping EP_SBI_IPXGrp { - uses eprp3gpp:EP_Common; - leaf-list sBIService { - min-elements 1; - config false; - type string; - } - } - - augment "/me3gpp:ManagedElement/af3gpp:AFFunction" { - list EP_N6 { - description "Represents the EP_N6 IOC."; - key id; - uses top3gpp:Top_Grp; - container attributes { - uses EP_N6Grp; - } - } - - list EP_Rx { - description "Represents the EP_Rx IOC."; - key id; - uses top3gpp:Top_Grp; - container attributes { - uses EP_RxGrp; - } - } - } - - augment "/me3gpp:ManagedElement/amf3gpp:AMFFunction" { - list EP_N2 { - description "Represents the EP_N2 IOC."; - key id; - uses top3gpp:Top_Grp; - container attributes { - uses EP_N2Grp; - } - } - - list EP_N8 { - description "Represents the EP_N8 IOC."; - key id; - uses top3gpp:Top_Grp; - container attributes { - uses EP_N8Grp; - } - } - - list EP_N11 { - description "Represents the EP_N11 IOC."; - key id; - uses top3gpp:Top_Grp; - container attributes { - uses EP_N11Grp; - } - } - - list EP_N12 { - description "Represents the EP_N12 IOC."; - key id; - uses top3gpp:Top_Grp; - container attributes { - uses EP_N12Grp; - } - } - - list EP_N14 { - description "Represents the EP_N14 IOC."; - key id; - uses top3gpp:Top_Grp; - container attributes { - uses EP_N14Grp; - } - } - - list EP_N15 { - description "Represents the EP_N15 IOC."; - key id; - uses top3gpp:Top_Grp; - container attributes { - uses EP_N15Grp; - } - } - - list EP_N17 { - description "Represents the EP_N17 IOC."; - key id; - uses top3gpp:Top_Grp; - container attributes { - uses EP_N17Grp; - } - } - - list EP_N20 { - description "Represents the EP_N20 IOC."; - key id; - uses top3gpp:Top_Grp; - container attributes { - uses EP_N20Grp; - } - } - - list EP_N22 { - description "Represents the EP_N22 IOC."; - key id; - uses top3gpp:Top_Grp; - container attributes { - uses EP_N22Grp; - } - } - - list EP_N26 { - description "Represents the EP_N26 IOC."; - key id; - uses top3gpp:Top_Grp; - container attributes { - uses EP_N26Grp; - } - } - - list EP_NLS { - description "Represents the EP_NLS IOC."; - key id; - uses top3gpp:Top_Grp; - container attributes { - uses EP_NLSGrp; - } - } - - list EP_NLG { - description "Represents the EP_NLG IOC."; - key id; - uses top3gpp:Top_Grp; - container attributes { - uses EP_NLGGrp; - } - } - } - - augment "/me3gpp:ManagedElement/ausf3gpp:AUSFFunction" { - list EP_N12 { - description "Represents the EP_N12 IOC."; - key id; - uses top3gpp:Top_Grp; - container attributes { - uses EP_N12Grp; - } - } - - list EP_N13 { - description "Represents the EP_N13 IOC."; - key id; - uses top3gpp:Top_Grp; - container attributes { - uses EP_N13Grp; - } - } - } - - augment "/me3gpp:ManagedElement/dn3gpp:DNFunction" { - list EP_N6 { - description "Represents the EP_N6 IOC."; - key id; - uses top3gpp:Top_Grp; - container attributes { - uses EP_N6Grp; - } - } - } - - augment "/me3gpp:ManagedElement/lmf3gpp:LMFFunction" { - list EP_NLS { - description "Represents the EP_NLS IOC."; - key id; - uses top3gpp:Top_Grp; - container attributes { - uses EP_NLSGrp; - } - } - } - - augment "/me3gpp:ManagedElement/n3iwf3gpp:N3IWFFunction" { - list EP_N2 { - description "Represents the EP_N2 IOC."; - key id; - uses top3gpp:Top_Grp; - container attributes { - uses EP_N2Grp; - } - } - - list EP_N3 { - description "Represents the EP_N3 IOC."; - key id; - uses top3gpp:Top_Grp; - container attributes { - uses EP_N3Grp; - } - } - } - - augment "/me3gpp:ManagedElement/ngeir3gpp:NGEIRFunction" { - list EP_N17 { - description "Represents the EP_N17 IOC."; - key id; - uses top3gpp:Top_Grp; - container attributes { - uses EP_N17Grp; - } - } - } - - augment "/me3gpp:ManagedElement/nrf3gpp:NRFFunction" { - list EP_N27 { - description "Represents the EP_N27 IOC."; - key id; - uses top3gpp:Top_Grp; - container attributes { - uses EP_N26Grp; - } - } - - } - - augment "/me3gpp:ManagedElement/nssf3gpp:NSSFFunction" { - list EP_N22 { - description "Represents the EP_N22 IOC."; - key id; - uses top3gpp:Top_Grp; - container attributes { - uses EP_N22Grp; - } - } - - list EP_N31 { - description "Represents the EP_N31 IOC."; - key id; - uses top3gpp:Top_Grp; - container attributes { - uses EP_N31Grp; - } - } - } - - augment "/me3gpp:ManagedElement/pcf3gpp:PCFFunction" { - list EP_N5 { - description "Represents the EP_N5 IOC."; - key id; - uses top3gpp:Top_Grp; - container attributes { - uses EP_N5Grp; - } - } - - list EP_N7 { - description "Represents the EP_N7 IOC."; - key id; - uses top3gpp:Top_Grp; - container attributes { - uses EP_N7Grp; - } - } - - list EP_N15 { - description "Represents the EP_N15 IOC."; - key id; - uses top3gpp:Top_Grp; - container attributes { - uses EP_N15Grp; - } - } - - list EP_N16 { - description "Represents the EP_N16 IOC."; - key id; - uses top3gpp:Top_Grp; - container attributes { - uses EP_N16Grp; - } - } - - list EP_Rx { - description "Represents the EP_Rx IOC."; - key id; - uses top3gpp:Top_Grp; - container attributes { - uses EP_RxGrp; - } - } - } - - augment "/me3gpp:ManagedElement/sepp3gpp:SEPPFunction" { - list EP_N32 { - description "Represents the EP_N32 IOC."; - key id; - uses top3gpp:Top_Grp; - container attributes { - uses EP_N32Grp; - } - } - - } - augment "/me3gpp:ManagedElement/smsf3gpp:SMSFFunction" { - list EP_N20 { - description "Represents the EP_20 IOC."; - key id; - uses top3gpp:Top_Grp; - container attributes { - uses EP_N20Grp; - } - } - - list EP_N21 { - description "Represents the EP_N21 IOC."; - key id; - uses top3gpp:Top_Grp; - container attributes { - uses EP_N21Grp; - } - } - - list EP_MAP_SMSC { - description "Represents the EP_MAP_SMSC IOC."; - key id; - uses top3gpp:Top_Grp; - container attributes { - uses EP_MAP_SMSCGrp; - } - } - } - - augment "/me3gpp:ManagedElement/smf3gpp:SMFFunction" { - list EP_N4 { - description "Represents the EP_N4 IOC."; - key id; - uses top3gpp:Top_Grp; - container attributes { - uses EP_N4Grp; - } - } - - list EP_N7 { - description "Represents the EP_N7 IOC."; - key id; - uses top3gpp:Top_Grp; - container attributes { - uses EP_N7Grp; - } - } - - list EP_N10 { - description "Represents the EP_N10 IOC."; - key id; - uses top3gpp:Top_Grp; - container attributes { - uses EP_N10Grp; - } - } - - list EP_N11 { - description "Represents the EP_N11 IOC."; - key id; - uses top3gpp:Top_Grp; - container attributes { - uses EP_N11Grp; - } - } - - list EP_N16 { - description "Represents the EP_N16 IOC."; - key id; - uses top3gpp:Top_Grp; - container attributes { - uses EP_N16Grp; - } - } - - list EP_S5C { - description "Represents the EP_S5C IOC."; - key id; - uses top3gpp:Top_Grp; - container attributes { - uses EP_S5CGrp; - } - } - } - - augment "/me3gpp:ManagedElement/udm3gpp:UDMFunction" { - list EP_N8 { - description "Represents the EP_N8 IOC."; - key id; - uses top3gpp:Top_Grp; - container attributes { - uses EP_N8Grp; - } - } - - list EP_N10 { - description "Represents the EP_N10 IOC."; - key id; - uses top3gpp:Top_Grp; - container attributes { - uses EP_N10Grp; - } - } - - list EP_N13 { - description "Represents the EP_N13 IOC."; - key id; - uses top3gpp:Top_Grp; - container attributes { - uses EP_N13Grp; - } - } - - } - - augment "/me3gpp:ManagedElement/upf3gpp:UPFFunction" { - list EP_N4 { - description "Represents the EP_N4 IOC."; - key id; - uses top3gpp:Top_Grp; - container attributes { - uses EP_N4Grp; - } - } - - list EP_N3 { - description "Represents the EP_N3 IOC."; - key id; - uses top3gpp:Top_Grp; - container attributes { - uses EP_N3Grp; - } - } - - list EP_N9 { - description "Represents the EP_N9 IOC."; - key id; - uses top3gpp:Top_Grp; - container attributes { - uses EP_N9Grp; - } - } - - list EP_S5U { - description "Represents the EP_S5U IOC."; - key id; - uses top3gpp:Top_Grp; - container attributes { - uses EP_S5UGrp; - } - } - - list EP_EP_N6 { - description "Represents the EP_N6 IOC."; - key id; - uses top3gpp:Top_Grp; - container attributes { - uses EP_N6Grp; - } - } - } -} \ No newline at end of file diff --git a/yang-models/_3gpp-5gc-nrm-externalnrffunction.yang b/yang-models/_3gpp-5gc-nrm-externalnrffunction.yang deleted file mode 100755 index 95f1cea5e..000000000 --- a/yang-models/_3gpp-5gc-nrm-externalnrffunction.yang +++ /dev/null @@ -1,42 +0,0 @@ -module _3gpp-5gc-nrm-externalnrffunction { - yang-version 1.1; - namespace urn:3gpp:sa5:_3gpp-5gc-nrm-externalnrffunction; - prefix extnrf3gpp; - - import _3gpp-common-yang-types { prefix types3gpp; } - import _3gpp-common-subnetwork { prefix subnet3gpp; } - import _3gpp-common-top { prefix top3gpp; } - import _3gpp-common-managed-function { prefix mf3gpp; } - - description "This IOC represents external NRF function controlled by another management domain."; - - revision 2019-10-28 { reference S5-193518 ; } - revision 2019-06-11 { - description "Ericsson refactoring."; - } - - grouping ExternalNRFFunctionGrp { - uses mf3gpp:ManagedFunctionGrp; - - list pLMNIdList { - description "List of at most six entries of PLMN Identifiers, but at least one (the primary PLMN Id). - The PLMN Identifier is composed of a Mobile Country Code (MCC) and a Mobile Network Code (MNC)."; - min-elements 1; - max-elements 6; - key "mcc mnc"; - uses types3gpp:PLMNId; - } - } - - augment "/subnet3gpp:SubNetwork" { - list ExternalNRFFunction { - description "5G Core External NRF Function"; - reference "3GPP TS 28.541"; - key id; - uses top3gpp:Top_Grp; - container attributes { - uses ExternalNRFFunctionGrp; - } - uses mf3gpp:ManagedFunctionContainedClasses; } - } -} \ No newline at end of file diff --git a/yang-models/_3gpp-5gc-nrm-externalnssffunction.yang b/yang-models/_3gpp-5gc-nrm-externalnssffunction.yang deleted file mode 100755 index 665977805..000000000 --- a/yang-models/_3gpp-5gc-nrm-externalnssffunction.yang +++ /dev/null @@ -1,43 +0,0 @@ -module _3gpp-5gc-nrm-externalnssffunction { - yang-version 1.1; - namespace urn:3gpp:sa5:_3gpp-5gc-nrm-externalnssffunction; - prefix extnssf3gpp; - - import _3gpp-common-yang-types { prefix types3gpp; } - import _3gpp-common-subnetwork { prefix subnet3gpp; } - import _3gpp-common-top { prefix top3gpp; } - import _3gpp-common-managed-function { prefix mf3gpp; } - - description "This IOC represents external NSSF function controlled by another management domain."; - - revision 2019-10-28 { reference S5-193518 ; } - revision 2019-06-11 { - description "Ericsson refactoring."; - } - - grouping ExternalNSSFFunctionGrp { - uses mf3gpp:ManagedFunctionGrp; - - list pLMNIdList { - description "List of at most six entries of PLMN Identifiers, but at least one (the primary PLMN Id). - The PLMN Identifier is composed of a Mobile Country Code (MCC) and a Mobile Network Code (MNC)."; - min-elements 1; - max-elements 6; - key "mcc mnc"; - uses types3gpp:PLMNId; - } - } - - augment "/subnet3gpp:SubNetwork" { - list ExternalNSSFFunction { - description "5G Core External NSSF Function"; - reference "3GPP TS 28.541"; - key id; - uses top3gpp:Top_Grp; - container attributes { - uses ExternalNSSFFunctionGrp; - } - uses mf3gpp:ManagedFunctionContainedClasses; - } - } -} \ No newline at end of file diff --git a/yang-models/_3gpp-5gc-nrm-externalseppfunction.yang b/yang-models/_3gpp-5gc-nrm-externalseppfunction.yang deleted file mode 100755 index 38496aaaa..000000000 --- a/yang-models/_3gpp-5gc-nrm-externalseppfunction.yang +++ /dev/null @@ -1,55 +0,0 @@ -module _3gpp-5gc-nrm-externalseppfunction { - yang-version 1.1; - - namespace urn:3gpp:sa5:_3gpp-5gc-nrm-extternalseppfunction; - prefix extsepp3gpp; - - import _3gpp-common-managed-function { prefix mf3gpp; } - import _3gpp-common-managed-element { prefix me3gpp; } - import _3gpp-common-yang-types { prefix types3gpp; } - import _3gpp-common-top { prefix top3gpp; } - import ietf-inet-types { prefix inet; } - - organization "3gpp SA5"; - description "This IOC represents the external SEPP function which support message filtering - and policing on inter-PLMN control plane interface. For more information about the SEPP, see 3GPP TS 23.501."; - reference "3GPP TS 28.541"; - - revision 2019-11-17 { - description "initial revision"; - reference "Based on - 3GPP TS 28.541 V16.X.XX"; - } - - grouping ExternalSEPPFunctionGrp { - uses mf3gpp:ManagedFunctionGrp; - - container pLMNId { - description "PLMN Identifiers of the sepp. - The PLMN Identifier is composed of a Mobile Country Code (MCC) and a Mobile Network Code (MNC)."; - uses types3gpp:PLMNId; - } - - leaf sEPPId { - type uint16; - } - - leaf fqdn { - description "The domain name of the SEPP."; - type inet:domain-name; - } - - } - - augment "/me3gpp:ManagedElement" { - list ExternalSEPPFunction { - description "5G Core SEPP Function"; - reference "3GPP TS 28.541"; - key id; - uses top3gpp:Top_Grp; - container attributes { - uses ExternalSEPPFunctionGrp; - } - } - } -} \ No newline at end of file diff --git a/yang-models/_3gpp-5gc-nrm-lmffunction.yang b/yang-models/_3gpp-5gc-nrm-lmffunction.yang deleted file mode 100755 index ee9ec056a..000000000 --- a/yang-models/_3gpp-5gc-nrm-lmffunction.yang +++ /dev/null @@ -1,63 +0,0 @@ -module _3gpp-5gc-nrm-lmffunction { - yang-version 1.1; - - namespace urn:3gpp:sa5:_3gpp-5gc-nrm-lmffunction; - prefix lmf3gpp; - - import _3gpp-common-managed-function { prefix mf3gpp; } - import _3gpp-common-managed-element { prefix me3gpp; } - import _3gpp-common-yang-types { prefix types3gpp; } - import _3gpp-5g-common-yang-types { prefix types5g3gpp; } - import _3gpp-common-top { prefix top3gpp; } - - organization "3gpp SA5"; - description "This IOC represents the LMF function defined in 3GPP TS 23.501."; - reference "3GPP TS 28.541"; - - revision 2019-10-25 { reference "S5-194457 S5193518"; } - - revision 2019-05-15 { - description "initial revision"; - reference "Based on - 3GPP TS 28.541 V15.X.XX"; - } - - grouping LMFFunctionGrp { - uses mf3gpp:ManagedFunctionGrp; - - list pLMNIdList { - description "List of at most six entries of PLMN Identifiers, but at least one (the primary PLMN Id). - The PLMN Identifier is composed of a Mobile Country Code (MCC) and a Mobile Network Code (MNC)."; - - min-elements 1; - max-elements 6; - key "mcc mnc"; - uses types3gpp:PLMNId; - } - - list managedNFProfile { - key idx; - min-elements 1; - uses types3gpp:ManagedNFProfile; - } - - list commModelList { - min-elements 1; - key "groupId"; - uses types5g3gpp:CommModel; - } - } - - augment "/me3gpp:ManagedElement" { - list LMFFunction { - description "5G Core LMF Function"; - reference "3GPP TS 28.541"; - key id; - uses top3gpp:Top_Grp; - container attributes { - uses LMFFunctionGrp; - } - uses mf3gpp:ManagedFunctionContainedClasses; - } - } -} \ No newline at end of file diff --git a/yang-models/_3gpp-5gc-nrm-n3iwffunction.yang b/yang-models/_3gpp-5gc-nrm-n3iwffunction.yang deleted file mode 100755 index 05ca146ca..000000000 --- a/yang-models/_3gpp-5gc-nrm-n3iwffunction.yang +++ /dev/null @@ -1,55 +0,0 @@ -module _3gpp-5gc-nrm-n3iwffunction { - yang-version 1.1; - - namespace urn:3gpp:sa5:_3gpp-5gc-nrm-n3iwffunction; - prefix n3iwf3gpp; - - import _3gpp-common-managed-function { prefix mf3gpp; } - import _3gpp-common-managed-element { prefix me3gpp; } - import _3gpp-common-yang-types { prefix types3gpp; } - import _3gpp-5g-common-yang-types { prefix types5g3gpp; } - import _3gpp-common-top { prefix top3gpp; } - - organization "3gpp SA5"; - description "This IOC represents the N3IWF function which is used to enable non-3GPP - access networks connected to the 5GC. For more information about the N3IWF, see 3GPP TS 23.501."; - reference "3GPP TS 28.541"; - - revision 2019-10-28 { reference S5-193518 ; } - revision 2019-05-22 { - description "initial revision"; - } - - grouping N3IWFFunctionGrp { - uses mf3gpp:ManagedFunctionGrp; - - list pLMNIdList { - description "List of at most six entries of PLMN Identifiers, but at least one (the primary PLMN Id). - The PLMN Identifier is composed of a Mobile Country Code (MCC) and a Mobile Network Code (MNC)."; - - min-elements 1; - max-elements 6; - key "mcc mnc"; - uses types3gpp:PLMNId; - } - - list commModelList { - min-elements 1; - key "groupId"; - uses types5g3gpp:CommModel; - } - } - - augment "/me3gpp:ManagedElement" { - list N3IWFFunction { - description "5G Core N3IWF Function"; - reference "3GPP TS 28.541"; - key id; - uses top3gpp:Top_Grp; - container attributes { - uses N3IWFFunctionGrp; - } - uses mf3gpp:ManagedFunctionContainedClasses; - } - } -} \ No newline at end of file diff --git a/yang-models/_3gpp-5gc-nrm-neffunction.yang b/yang-models/_3gpp-5gc-nrm-neffunction.yang deleted file mode 100755 index fdb701ed4..000000000 --- a/yang-models/_3gpp-5gc-nrm-neffunction.yang +++ /dev/null @@ -1,68 +0,0 @@ -module _3gpp-5gc-nrm-neffunction { - yang-version 1.1; - - namespace urn:3gpp:sa5:_3gpp-5gc-nrm-neffunction; - prefix nef3gpp; - - import _3gpp-common-managed-function { prefix mf3gpp; } - import _3gpp-common-managed-element { prefix me3gpp; } - import ietf-inet-types { prefix inet; } - import _3gpp-common-top { prefix top3gpp; } - import _3gpp-5g-common-yang-types { prefix types5g3gpp; } - - organization "3gpp SA5"; - contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; - description "This IOC represents the NEF function in 5GC. For more - information about the NEF, see 3GPP TS 23.501."; - reference "3GPP TS 28.541"; - - revision 2020-11-05 { reference CR-0412 ; } - revision 2019-10-20 { reference "initial revision"; } - - grouping NEFFunctionGrp { - description "Represents the NEFFunction IOC"; - uses mf3gpp:ManagedFunctionGrp; - - leaf sBIFQDN { - description "The FQDN of the registered NF instance in the - service-based interface."; - type inet:domain-name; - } - - list sNSSAIList { - description "List of S-NSSAIs the managed object is capable of supporting. - (Single Network Slice Selection Assistance Information) - An S-NSSAI has an SST (Slice/Service type) and an optional SD - (Slice Differentiator) field."; - key "sd sst"; - uses types5g3gpp:SNssai; - } - - leaf-list capabilityList { - description "List of supported capabilities of the NEF."; - reference "3GPP TS 23.003"; - type string; - } - - leaf isINEF { - type boolean; - } - - leaf isCAPIFSup { - type boolean; - } - - } - - augment "/me3gpp:ManagedElement" { - list NEFFunction { - description "5G Core NEF Function"; - reference "3GPP TS 28.541"; - key id; - uses top3gpp:Top_Grp; - container attributes { - uses NEFFunctionGrp; - } - } - } -} \ No newline at end of file diff --git a/yang-models/_3gpp-5gc-nrm-nfprofile.yang b/yang-models/_3gpp-5gc-nrm-nfprofile.yang deleted file mode 100755 index c5b0d609a..000000000 --- a/yang-models/_3gpp-5gc-nrm-nfprofile.yang +++ /dev/null @@ -1,1095 +0,0 @@ -module _3gpp-5gc-nrm-nfprofile { - yang-version 1.1; - - namespace urn:3gpp:sa5:_3gpp-5gc-nrm-nfprofile; - prefix nfp3gpp; - - import _3gpp-common-yang-types { prefix types3gpp; } - import ietf-inet-types { prefix inet; } - import ietf-yang-types { prefix yang; } - import _3gpp-5gc-nrm-nfservice { prefix nfs3gpp; } - - organization "3gpp SA5"; - description "NF profile class."; - reference "3GPP TS 29.510"; - - revision 2019-06-17 { - description "initial revision"; - } - - grouping NFProfileGrp { - leaf nfInstanceID { - description "String uniquely identifying a NF instance."; - mandatory true; - type string; - } - - leaf nfType { - description "Type of Network Function."; - mandatory true; - type types3gpp:NfType; - } - - leaf nfStatus { - description "Status of the NF Instance."; - mandatory true; - type NFStatus; - } - - leaf heartBeatTimer { - description "Time in seconds expected between 2 consecutive heart-beat messages from - an NF Instance to the NRF. It may be included in the registration request. - When present in the request it shall contain the heartbeat time proposed by the NF service consumer."; - //conditional support - type uint16; - } - - list plmnList { - description "PLMN(s) of the Network Function. - This IE shall be present if this information is available for the NF. - If not provided, PLMN ID(s) of the PLMN of the NRF are assumed for the NF."; - - //conditional support - min-elements 1; - key "mcc mnc"; - uses types3gpp:PLMNId; - } - - list sNssais { //is the key unique - description "S-NSSAIs of the Network Function. If not provided, the NF can serve any S-NSSAI. - When present this IE represents the list of S-NSSAIs supported in all the PLMNs listed in the plmnList IE."; - min-elements 1; - //optional support - key "sst sd"; - uses Snssai; - } - - list perPlmnSnssaiList { - description "This IE may be included when the list of S-NSSAIs supported by the NF for each PLMN it is supporting is different. - When present, this IE shall include the S-NSSAIs supported by the Network Function - for each PLMN supported by the Network Function. When present, this IE shall override sNssais IE."; - min-elements 1; - //optional support - key idx; //no obvious leaf to use as a key - leaf idx { type uint32; } - uses PlmnSnssai; - } - - leaf-list nsiList { - description "NSI identities of the Network Function. - If not provided, the NF can serve any NSI."; - //optional support - min-elements 1; - type string; - } - - leaf fqdn { - description "FQDN of the Network Function. For AMF, the FQDN registered with the NRF - shall be that of the AMF Name."; - //conditional support - type inet:domain-name; - } - - leaf interPlmnFqdn { - description "If the NF needs to be discoverable by other NFs in a different PLMN, - then an FQDN that is used for inter-PLMN routing is specified."; - //conditional support - type inet:domain-name; - } - - leaf-list ipv4Addresses { - description "IPv4 address(es) of the Network Function."; - min-elements 1; - //conditional support - type inet:ipv4-address; - } - - leaf-list ipv6Addresses { - description "IPv6 address(es) of the Network Function."; - min-elements 1; - //conditional support - type inet:ipv6-address; - } - - list allowedPlmns { - description "PLMNs allowed to access the NF instance. - If not provided, any PLMN is allowed to access the NF."; - - min-elements 1; - //optional support - key "mcc mnc"; - uses types3gpp:PLMNId; - } - - leaf-list allowedNfTypes { - description "Type of the NFs allowed to access the NF instance. - If not provided, any NF type is allowed to access the NF."; - min-elements 1; - //optional support - type types3gpp:NfType; - } - - leaf-list allowedNfDomains { - description "Pattern representing the NF domain names allowed to access the NF instance. - If not provided, any NF domain is allowed to access the NF."; - min-elements 1; - //optional support - type string; - } - - list allowedNssais { //is the key unique - description "S-NSSAI of the allowed slices to access the NF instance. - If not provided, any slice is allowed to access the NF."; - min-elements 1; - //optional support - key "sst sd"; - uses Snssai; - } - - leaf priority { - description "Priority (relative to other NFs of the same type) in the range of 0-65535, to be used for NF selection; - lower values indicate a higher priority. If priority is also present in the nfServiceList parameters, - those will have precedence over this value. The NRF may overwrite the received priority value when exposing - an NFProfile with the Nnrf_NFDiscovery service."; - //optional support - type uint16; - } - - leaf capacity { - description "Static capacity information in the range of 0-65535, expressed as a weight - relative to other NF instances of the same type; if capacity is also present - in the nfServiceList parameters, those will have precedence over this value."; - //optional support - type uint16; - } - - leaf load { - description "Dynamic load information, ranged from 0 to 100, indicates the current load percentage of the NF."; - //optional support - type types3gpp:Load; - } - - leaf locality { - description "Operator defined information about the location of the NF instance (e.g. geographic location, data center)."; - //optional support - type string; - } - - grouping udrInfo { - //optional support - - leaf groupId { - description "Identity of the UDR group that is served by the UDR instance. - If not provided, the UDR instance does not pertain to any UDR group."; - //optional support - type string; - } - - list supiRanges { - description "List of ranges of SUPI's whose profile data is available in the UDR instance."; - key "start end pattern"; - min-elements 1; - //optional support - uses SupiRange; - } - - list gpsiRanges { - description "List of ranges of GPSIs whose profile data is available in the UDR instance."; - key "start end pattern"; - min-elements 1; - //optional support - uses IdentityRange; - } - - list externalGroupIdentifiersRanges { - description "List of ranges of external groups whose profile data is available in the UDR instance."; - key "start end pattern"; - min-elements 1; - //optional support - uses IdentityRange; - } - - leaf-list supportedDataSets { - description "List of supported data sets in the UDR instance. - If not provided, the UDR supports all data sets."; - min-elements 1; - //optional support - type DataSetId; - } - } - - grouping udmInfo { - //optional support - - leaf groupId { - description "Identity of the UDM group that is served by the UDM instance. - If not provided, the UDM instance does not pertain to any UDM group."; - //optional support - type string; - } - - list supiRanges { - description "List of ranges of SUPI's whose profile data is available in the UDM instance."; - key "start end pattern"; - min-elements 1; - //optional support - uses SupiRange; - } - - list gpsiRanges { - description "List of ranges of GPSIs whose profile data is available in the UDM instance."; - key "start end pattern"; - min-elements 1; - //optional support - uses IdentityRange; - } - - list externalGroupIdentifiersRanges { - description "List of ranges of external groups whose profile data is available in the UDM instance."; - key "start end pattern"; - min-elements 1; - //optional support - uses IdentityRange; - } - - leaf-list routingIndicators { - description "List of Routing Indicator information that allows to route network signalling with SUCI - to the UDM instance. If not provided, the UDM can serve any Routing Indicator. - Pattern: '^[0-9]{1,4}$'."; - //optional support - min-elements 1; - type string; - } - } - - grouping ausfInfo { - //optional support - - leaf groupId { - description "Identity of the AUSF group. If not provided, the AUSF instance does not pertain to any AUSF group."; - //optional support - type string; - } - - list supiRanges { - description "List of ranges of SUPIs that can be served by the AUSF instance. If not provided, the AUSF can serve any SUPI."; - key "start end pattern"; - min-elements 1; - //optional support - uses SupiRange; - } - - leaf-list routingIndicators { - description "List of Routing Indicator information that allows to route network signalling with SUCI - to the AUSF instance. If not provided, the AUSF can serve any Routing Indicator. - Pattern: '^[0-9]{1,4}$'."; - //optional support - min-elements 1; - type string; - } - } - - grouping amfInfo { - //optional support - - leaf amfRegionId { - description "AMF region identifier"; - type string; - } - - leaf amfSetId { - description "AMF set identifier"; - type string; - } - - list guamiList { - description "List of supported GUAMIs."; - - key idx; //no obvious leaf to use as a key - leaf idx { type uint32; } - - min-elements 1; - uses Guami; - } - - list taiList { - description "The list of TAIs the AMF can serve. It may contain the non-3GPP access TAI. - The absence of this attribute and the taiRangeList attribute indicate that - the AMF can be selected for any TAI in the serving network."; - - key idx; //no obvious leaf to use as a key - leaf idx { type uint32; } - - //optional support - min-elements 1; - uses Tai; - } - - list taiRangeList { - description "The range of TAIs the AMF can serve. The absence of this attribute and the taiList - attribute indicate that the AMF can be selected for any TAI in the serving network."; - //optional support - min-elements 1; - key idx; //no obvious leaf to use as a key - leaf idx { type uint32; } - uses TaiRange; - } - - list backupInfoAmfFailure { - description "List of GUAMIs for which the AMF acts as a backup for AMF failure."; - - key idx; //no obvious leaf to use as a key - leaf idx { type uint32; } - - //optional support - min-elements 1; - uses Guami; - } - - list backupInfoAmfRemoval { - description "List of GUAMIs for which the AMF acts as a backup for planned AMF removal."; - - key idx; //no obvious leaf to use as a key - leaf idx { type uint32; } - - //optional support - min-elements 1; - uses Guami; - } - - list n2InterfaceAmfInfo { - description "N2 interface information of the AMF. This information needs not be sent in NF Discovery responses. - It may be used by the NRF to update the DNS for AMF discovery by the 5G Access Network."; - - //optional support - max-elements 1; - key idx; //no obvious leaf to use as a key - leaf idx { type uint32; } - uses N2InterfaceAmfInfo; - } - } - - grouping smfInfo { - //optional support - - list sNssaiSmfInfoList { - description "List of parameters supported by the SMF per S-NSSAI."; - min-elements 1; - key idx; //no obvious leaf to use as a key - leaf idx { type uint32; } - uses sNssaiSmfInfoItem; - } - - list taiList { - description "The list of TAIs the SMF can serve. It may contain the non-3GPP access TAI. - The absence of this attribute and the taiRangeList attribute indicate that - the SMF can be selected for any TAI in the serving network."; - - key idx; //no obvious leaf to use as a key - leaf idx { type uint32; } - - //optional support - min-elements 1; - uses Tai; - } - - list taiRangeList { - description "The range of TAIs the SMF can serve. The absence of this attribute and the taiList - attribute indicate that the SMF can be selected for any TAI in the serving network."; - //optional support - min-elements 1; - key idx; //no obvious leaf to use as a key - leaf idx { type uint32; } - uses TaiRange; - } - - leaf pgwFqdn { - description "The FQDN of the PGW if the SMF is a combined SMF/PGW-C."; - //optional support - type inet:domain-name; - } - - leaf-list accessType { - description "If included, this IE shall contain the access type (3GPP_ACCESS and/or NON_3GPP_ACCESS) supported by the SMF. - If not included, it shall be assumed the both access types are supported."; - - //conditional support - min-elements 1; - max-elements 2; - type AccessType; - } - } - - grouping upfInfo { - //optional support - - list sNssaiUpfInfoList { - description "List of parameters supported by the UPF per S-NSSAI."; - min-elements 1; - key idx; //no obvious leaf to use as a key - leaf idx { type uint32; } - uses SnssaiUpfInfoItem; - } - - leaf-list smfServingArea { - description "The SMF service area(s) the UPF can serve. - If not provided, the UPF can serve any SMF service area."; - - //optional support - min-elements 1; - type string; - } - - list interfaceUpfInfo { - description "List of User Plane interfaces configured on the UPF. When this IE is provided in the NF Discovery response, - the NF Service Consumer (e.g. SMF) may use this information for UPF selection."; - - key idx; //no obvious leaf to use as a key - leaf idx { type uint32; } - - //optional support - min-elements 1; - uses InterfaceUpfInfoItem; - } - - leaf iwkEpsInd { - description "Indicates whether interworking with EPS is supported by the UPF. - true: Supported - false (default): Not Supported"; - - //optional support - type boolean; - } - - leaf-list pduSessionTypes { - description "List of PDU session type(s) supported by the UPF. The absence of this attribute indicates that the UPF can be selected - for any PDU session type."; - - //optional support - min-elements 1; - type PduSessionType; - } - } - - grouping pcfInfo { - //optional support - - leaf-list dnnList { - description "DNNs supported by the PCF. - If not provided, the PCF can serve any DNN."; - - //optional support - min-elements 1; - type string; - } - - list supiRanges { - description "List of ranges of SUPIs that can be served by the PCF instance. If not provided, the PCF can serve any SUPI."; - key "start end pattern"; - min-elements 1; - //optional support - uses SupiRange; - } - - leaf rxDiamHost { - description "This IE shall be present if the PCF supports Rx interface. - When present, this IE shall indicate the Diameter host of the Rx interface for the PCF. - Pattern: '^([A-Za-z0-9]+(-[A-Za-z0-9]+).)+[a-z]{2,}$'."; - - //conditional support - type string; - } - - leaf rxDiamRealm { - description "This IE shall be present if the PCF supports Rx interface. - When present, this IE shall indicate the Diameter realm of the Rx interface for the PCF. - Pattern: '^([A-Za-z0-9]+(-[A-Za-z0-9]+).)+[a-z]{2,}$'."; - - //conditional support - type string; - } - } - - grouping bsfInfo { - //optional support - - list ipv4AddressRanges { - description "List of ranges of IPv4 addresses handled by BSF. - If not provided, the BSF can serve any IPv4 address."; - //optional support - key "start end"; - uses types3gpp:Ipv4AddressRange; - } - - leaf-list dnnList { - description "List of DNNs handled by the BSF - If not provided, the BSF can serve any DNN."; - - //optional support - min-elements 1; - type string; - } - - leaf-list ipDomainList { - description "List of IPv4 address domains, as described in subclause 6.2 of 3GPP TS 29.513, handled by the BSF. - If not provided, the BSF can serve any IP domain."; - //optional support - min-elements 1; - type string; - } - - list ipv6PrefixRanges { - description "List of ranges of IPv6 prefixes handled by the BSF. - If not provided, the BSF can serve any IPv6 prefix."; - //optional support - key "start end"; - uses types3gpp:Ipv6PrefixRange; - } - } - - grouping chfInfo { - //optional support - - list supiRangeList { - description "List of ranges of SUPIs that can be served by the CHF instance. If not provided, the CHF can serve any SUPI."; - key "start end pattern"; - min-elements 1; - //optional support - uses SupiRange; - } - - list gpsiRangeList { - description "List of ranges of GPSI that can be served by the CHF instance. If not provided, the CHF can serve any GPSI."; - key "start end pattern"; - min-elements 1; - //optional support - uses IdentityRange; - } - - list plmnRangeList { - description "List of ranges of PLMNs (including the PLMN IDs of the CHF instance) that can be served by the CHF instance. - If not provided, the CHF can serve any PLMN."; - - min-elements 1; - //optional support - key "mcc mnc"; - uses types3gpp:PLMNId; - } - } - - grouping nrfInfoGrp { - //optional support - - list servedUdrInfo { - description "This attribute contains all the udrInfo attributes locally configured in the NRF or the NRF received during NF registration."; - //optional support - - key nfInstanceID; - leaf nfInstanceID { - description "String uniquely identifying a NF instance."; - type string; - } - - min-elements 1; - uses udrInfo; - } - - list servedUdmInfo { - description "This attribute contains all the udmInfo attributes locally configured in the NRF or the NRF received during NF registration."; - //optional support - - key nfInstanceID; - leaf nfInstanceID { - description "String uniquely identifying a NF instance."; - type string; - } - - min-elements 1; - uses udmInfo; - } - - list servedAusfInfo { - description "This attribute contains all the ausfInfo attributes locally configured in the NRF or the NRF received during NF registration."; - //optional support - - key nfInstanceID; - leaf nfInstanceID { - description "String uniquely identifying a NF instance."; - type string; - } - - min-elements 1; - uses ausfInfo; - } - - list servedAmfInfo { - description "This attribute contains all the amfInfo attributes locally configured in the NRF or the NRF received during NF registration."; - //optional support - - key nfInstanceID; - leaf nfInstanceID { - description "String uniquely identifying a NF instance."; - type string; - } - - min-elements 1; - uses amfInfo; - } - - list servedSmfInfo { - description "This attribute contains all the smfInfo attributes locally configured in the NRF or the NRF received during NF registration."; - //optional support - - key nfInstanceID; - leaf nfInstanceID { - description "String uniquely identifying a NF instance."; - type string; - } - - min-elements 1; - uses smfInfo; - } - - list servedUpfInfo { - description "This attribute contains all the upfInfo attributes locally configured in the NRF or the NRF received during NF registration."; - //optional support - - key nfInstanceID; - leaf nfInstanceID { - description "String uniquely identifying a NF instance."; - type string; - } - - min-elements 1; - uses upfInfo; - } - - list servedPcfInfo { - description "This attribute contains all the pcfInfo attributes locally configured in the NRF or the NRF received during NF registration."; - //optional support - - key nfInstanceID; - leaf nfInstanceID { - description "String uniquely identifying a NF instance."; - type string; - } - - min-elements 1; - uses pcfInfo; - } - - list servedBsfInfo { - description "This attribute contains all the bsfInfo attributes locally configured in the NRF or the NRF received during NF registration."; - //optional support - - key nfInstanceID; - leaf nfInstanceID { - description "String uniquely identifying a NF instance."; - type string; - } - - min-elements 1; - uses bsfInfo; - } - - list servedChfInfo { - description "This attribute contains all the bsfInfo attributes locally configured in the NRF or the NRF received during NF registration."; - //optional support - - key nfInstanceID; - leaf nfInstanceID { - description "String uniquely identifying a NF instance."; - type string; - } - - min-elements 1; - uses chfInfo; - } - } - - list nrfInfo { - key idx; //no obvious leaf to use as a key - leaf idx { type uint32; } - max-elements 1; - uses nrfInfoGrp; - } - - leaf customInfo { - description "Specific data for custom Network Functions."; - type string; - } - - leaf recoveryTime { - description "Timestamp when the NF was (re)started."; - //optional support - type yang:date-and-time; - } - - leaf nfServicePersistence { - description "If present, and set to true, it indicates that the different service instances of a same NF Service in this NF instance, - supporting a same API version, are capable to persist their resource state in shared storage and therefore these resources - are available after a new NF service instance supporting the same API version is selected by a NF Service Consumer (see 3GPP TS 23.527). - Otherwise, it indicates that the NF Service Instances of a same NF Service are not capable to share resource state inside the NF Instance."; - - //optional support - type boolean; - } - - list nfServices { - description "List of NF Service Instances. It shall include the services produced by the NF that can be discovered by other NFs."; - key serviceInstanceID; - //optional support - min-elements 1; - uses nfs3gpp:NFServiceGrp; - } - - leaf nfProfileChangesSupportInd { - description "NF Profile Changes Support Indicator. This IE may be present in the NFRegister or NFUpdate (NF Profile Complete Replacement) request and shall be absent in the response. - true: the NF Service Consumer supports receiving NF Profile Changes in the response. - false (default): the NF Service Consumer does not support receiving NF Profile Changes in the response."; - - //optional support - type boolean; - } - - leaf nfProfileChangesInd { - description "NF Profile Changes Indicator. This IE shall be absent in the request to the NRF and may be included by the NRF in NFRegister or NFUpdate (NF Profile Complete Replacement) response. - true: the NF Profile contains NF Profile changes. - false (default): complete NF Profile."; - - //optional support - type boolean; - } - - list defaultNotificationSubscriptions { - description "Notification endpoints for different notification types."; - key notificationType; - //optional support - min-elements 1; - uses types3gpp:DefaultNotificationSubscription; - } - } - - typedef NFStatus { - type enumeration { - enum REGISTERED; - enum SUSPENDED; - } - } - - typedef DataSetId { - type enumeration { - enum SUBSCRIPTION; - enum POLICY; - enum EXPOSURE; - enum APPLICATION; - } - } - - grouping SupiRange { - leaf start { - description "First value identifying the start of a SUPI range. To be used when the range of SUPI's can be represented as a numeric range (e.g., IMSI ranges)."; - type string { - pattern '^[0-9]+$'; - } - } - - leaf end { - description "Last value identifying the end of a SUPI range. To be used when the range of SUPI's can be represented as a numeric range (e.g. IMSI ranges)."; - type string { - pattern '^[0-9]+$'; - } - } - - leaf pattern { - description "Pattern representing the set of SUPI's belonging to this range. - A SUPI value is considered part of the range if and only if the SUPI string fully matches the regular expression."; - type string; - } - } - - grouping IdentityRange { - leaf start { - description "First value identifying the start of an identity range. To be used when the range of identities can be represented as a numeric range (e.g., MSISDN ranges)."; - type string { - pattern '^[0-9]+$'; - } - } - - leaf end { - description "Last value identifying the end of an identity range. To be used when the range of identities can be represented as a numeric range (e.g. MSISDN ranges)."; - type string { - pattern '^[0-9]+$'; - } - } - - leaf pattern { - description "Pattern representing the set of identities belonging to this range. - An identity value is considered part of the range if and only if the identity string fully matches the regular expression."; - type string; - } - } - - grouping TacRange { - leaf start { - description "First value identifying the start of a TAC range, to be used when the range of TAC's can be represented as a hexadecimal range (e.g., TAC ranges)."; - type string { - pattern '^([A-Fa-f0-9]{4}|[A-Fa-f0-9]{6}$)'; - } - } - - leaf end { - description "Last value identifying the end of a TAC range, to be used when the range of TAC's can be represented as a hexadecimal range (e.g. TAC ranges)."; - type string { - pattern '^([A-Fa-f0-9]{4}|[A-Fa-f0-9]{6})$'; - } - } - - leaf pattern { - description "Pattern representing the set of TAC's belonging to this range."; - type string; - } - } - - grouping SnssaiUpfInfoItem { - list sNssai { //is the key unique - description "Supported S-NSSAI."; - min-elements 1; - max-elements 1; - key "sst sd"; - uses Snssai; - } - - list dnnUpfInfoList { - description "List of parameters supported by the UPF per DNN."; - min-elements 1; - key dnn; - uses DnnUpfInfoItem; - } - } - - grouping DnnUpfInfoItem { - leaf dnn { - description "String representing a Data Network."; - mandatory true; - type string; - } - - leaf-list dnaiList { - description "List of Data network access identifiers supported by the UPF for this DNN. - The absence of this attribute indicates that the UPF can be selected for this DNN for any DNAI."; - min-elements 1; - type string; //dnai is the type but its only a string with desc: DNAI (Data network access identifier), is this needed as its own typedef or string is ok - } - - leaf-list pduSessionTypes { - description "List of PDU session type(s) supported by the UPF for a specific DNN."; - min-elements 1; - type PduSessionType; - } - } - - grouping Snssai { - leaf sst { - description "Unsigned integer, within the range 0 to 255, representing the Slice/Service Type. - It indicates the expected Network Slice behaviour in terms of features and services."; - mandatory true; - type uint32; - } - - leaf sd { - description "3-octet string, representing the Slice Differentiator, in hexadecimal representation."; - //optional - type string { - pattern '^[A-Fa-f0-9]{6}$'; - } - } - - reference "3GPP TS 29.571"; - } - - typedef PduSessionType { - type enumeration { - enum IPV4; - enum IPV6; - enum IPV4V6; - enum UNSTRUCTURED; - enum ETHERNET; - } - } - - grouping Guami { - list plmnId { - description "PLMN Identity."; - min-elements 1; - max-elements 1; - key "mcc mnc"; - uses types3gpp:PLMNId; - } - - list amfId { - description "AMF Identity."; - min-elements 1; - max-elements 1; - key "amfRegionId amfSetId amfPointer"; - uses types3gpp:AmfIdentifier; - } - } - - grouping Tai { - list plmnId { - description "PLMN Identity."; - min-elements 1; - max-elements 1; - key "mcc mnc"; - uses types3gpp:PLMNId; - } - - leaf tac { type types3gpp:Tac; } - } - - grouping InterfaceUpfInfoItem { - leaf interfaceType { - description "User Plane interface type."; - mandatory true; - type UPInterfaceType; - } - - ////At least one of the addressing parameters (ipv4address, ipv6adress or endpointFqdn) shall be included in the InterfaceUpfInfoItem. - choice address { - case ipv4EndpointAddresses { - leaf-list ipv4EndpointAddresses { - description "Available endpoint IPv4 address(es) of the User Plane interface."; - //conditional support - min-elements 1; - type inet:ipv4-address; - } - } - - case ipv6EndpointAddresses { - leaf-list ipv6EndpointAddresses { - description "Available endpoint IPv6 address(es) of the User Plane interface."; - //conditional support - min-elements 1; - type inet:ipv6-address; - } - } - - case endpointFqdn { - leaf endpointFqdn { - description "FQDN of available endpoint of the User Plane interface."; - //conditional support - type inet:domain-name; - } - } - } - - leaf networkInstance { - description "Network Instance associated to the User Plane interface."; - //optional support - type string; - } - } - - typedef UPInterfaceType { - type enumeration { - enum N3; - enum N6; - enum N9; - } - } - - grouping TaiRange { - list plmnId { - description "PLMN ID related to the TacRange."; - min-elements 1; - max-elements 1; - key "mcc mnc"; - uses types3gpp:PLMNId; - } - - list tacRangeList { //is this key unique - description "The range of the TACs."; - min-elements 1; - key "start end"; - uses TacRange; - } - } - - typedef AccessType { - type enumeration { - enum 3GPP_ACCESS; - enum NON_3GPP_ACCESS; - } - } - - grouping N2InterfaceAmfInfo { - //At least one of the addressing parameters (ipv4address or ipv6adress) shall be included. - choice address { - case ipv4EndpointAddress { - leaf-list ipv4EndpointAddress { - description "Available AMF endpoint IPv4 address(es) for N2."; - //conditional support - min-elements 1; - type inet:ipv4-address; - } - } - - case ipv6EndpointAddress { - leaf-list ipv6EndpointAddress { - description "Available AMF endpoint IPv6 address(es) for N2."; - //conditional support - min-elements 1; - type inet:ipv6-address; - } - } - } - - leaf amfName { - description "AMF name."; - type string; - } - } - - grouping sNssaiSmfInfoItem { - list sNssai { //is the key unique - description "Supported S-NSSAI."; - min-elements 1; - max-elements 1; - key "sst sd"; - uses Snssai; - } - - list dnnSmfInfoList { //is the key unique - description "List of parameters supported by the SMF per DNN."; - min-elements 1; - key dnn; - uses DnnSmfInfoItem; - } - } - - grouping DnnSmfInfoItem { - leaf dnn { - description "Supported DNN."; - mandatory true; - type string; - } - } - - grouping PlmnSnssai { - list plmnId { - description "PLMN ID for which list of supported S-NSSAI(s) is provided."; - min-elements 1; - max-elements 1; - key "mcc mnc"; - uses types3gpp:PLMNId; - } - - list sNssaiList { //is the key unique - description "The specific list of S-NSSAIs supported by the given PLMN."; - min-elements 1; - key "sst sd"; - uses Snssai; - } - } -} \ No newline at end of file diff --git a/yang-models/_3gpp-5gc-nrm-nfservice.yang b/yang-models/_3gpp-5gc-nrm-nfservice.yang deleted file mode 100755 index 3d3856931..000000000 --- a/yang-models/_3gpp-5gc-nrm-nfservice.yang +++ /dev/null @@ -1,302 +0,0 @@ -module _3gpp-5gc-nrm-nfservice { - yang-version 1.1; - - namespace urn:3gpp:sa5:_3gpp-5gc-nrm-nfservice; - prefix nfs3gpp; - - import _3gpp-common-yang-types { prefix types3gpp; } - import ietf-yang-types { prefix yang; } - import ietf-inet-types { prefix inet; } - import _3gpp-5g-common-yang-types { prefix types5g3gpp; } - - organization "3gpp SA5"; - contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; - description "NF service class."; - reference "3GPP TS 29.510"; - - revision 2021-01-25 { reference CR-0454 ; } - revision 2020-11-05 { reference CR-0412 ; } - revision 2019-06-17 { reference "initial revision"; } - - grouping NFServiceGrp { - description "Represents the NFService IOC"; - leaf serviceInstanceID { - description - "Unique ID of the service instance within a given NF Instance."; - mandatory true; - type string; - } - - leaf serviceName { - description "Name of the service instance (e.g. 'nudm-sdm')."; - mandatory true; - type ServiceName; - } - - list versions { //check in review if key is ok (unique) - description "API versions supported by the NF Service and if available, - the corresponding retirement date of the NF Service."; - min-elements 1; - key "apiVersionInUri apiFullVersion"; - uses NFServiceVersion; - } - - leaf scheme { - description "URI scheme (e.g. 'http', 'https')."; - mandatory true; - type UriScheme; - } - - leaf nfServiceStatus { - description "Status of the NF Service Instance."; - mandatory true; - type NFServiceStatus; - } - - leaf fqdn { - description "FQDN of the NF Service Instance."; - //optional support - type inet:domain-name; - } - - leaf interPlmnFqdn { - description "If the NF service needs to be discoverable by other NFs in a - different PLMN, then an FQDN that is used for inter PLMN routing."; - //optional support - type inet:domain-name; - } - - list ipEndPoints { - description "IP address(es) and port information of the Network Function - (including IPv4 and/or IPv6 address)where the service is listening - for incoming service requests."; - //optional support - - key idx; - leaf idx { - type string; - } - min-elements 1; - uses ipEndPoint; - } - - leaf apiPrefix { - description "Optional path segment(s) used to construct the {apiRoot} - variable of the different API URIs."; - //optional support - type string; - } - - list defaultNotificationSubscriptions { - description "Notification endpoints for different notification types."; - key notificationType; - //optional support - min-elements 1; - uses types3gpp:DefaultNotificationSubscription; - } - - list allowedPlmns { - description "PLMNs allowed to access the service instance. - The absence of this attribute indicates that any PLMN is allowed to - access the service instance."; - - min-elements 1; - //optional support - key "mcc mnc"; - uses types3gpp:PLMNId; - } - - leaf-list allowedNfTypes { - description "Type of the NFs allowed to access the service instance. - The absence of this attribute indicates that any NF type is allowed - to access the service instance."; - - min-elements 1; - //optional support - type types3gpp:NfType; - } - - leaf-list allowedNfDomains { - description "Pattern representing the NF domain names allowed to access the service instance."; - //optional support - min-elements 1; - type string; - } - - list allowedNssais { - description "S-NSSAI of the allowed slices to access the service instance. - The absence of this attribute indicates that any slice is allowed to - access the service instance."; - min-elements 1; - //optional support - key "sd sst"; - uses types5g3gpp:SNssai; - } - - leaf priority { - description "Priority (relative to other services of the same type) - in the range of 0-65535, to be used for NF Service selection; lower - values indicate a higher priority."; - //optional support - type uint16; - } - - leaf capacity { - description "Static capacity information in the range of 0-65535, - expressed as a weight relative to other services of the same type."; - //optional support - type uint16; - } - - leaf load { - description "Dynamic load information, ranged from 0 to 100, indicates - the current load percentage of the NF Service."; - //optional support - type types3gpp:Load; - } - - leaf recoveryTime { - description "Timestamp when the NF was (re)started."; - //optional support - type yang:date-and-time; - } - - list chfServiceInfo { //is the key unique - description "Specific data for a CHF service instance."; - //optional support - max-elements 1; - key "primaryChfServiceInstance secondaryChfServiceInstance"; - uses ChfServiceInfo; - } - - leaf supportedFeatures { - description "Supported Features of the NF Service instance."; - //optional support - type SupportedFeatures; - } - } - - typedef SupportedFeatures { - type string { - pattern '[A-Fa-f0-9]*'; - } - } - - grouping ipEndPoint { - choice address { - leaf ipv4Address { - type inet:ipv4-address; - } - - leaf ipv6Address { - type inet:ipv6-address; - } - - leaf ipv6Prefix { - type inet:ipv6-prefix; - } - } - - leaf transport { - type TransportProtocol; - } - - leaf port { - type uint16; - } - } - - typedef TransportProtocol { - type enumeration { - enum TCP; - enum STCP; - enum UDP; - } - } - - grouping NFServiceVersion { - leaf apiVersionInUri { - mandatory true; - type string; - } - - leaf apiFullVersion { - mandatory true; - type string; - } - - leaf expiry { - //optional to support - type yang:date-and-time; - } - } - - typedef ServiceName { - type enumeration { - enum NNRF_NFM; - enum NNRF_DISC; - enum NUDM_SDM; - enum NUDM_UECM; - enum NUDM_UEAU; - enum NUDM_EE; - enum NUDM_PP; - enum NAMF_COMM; - enum NAMF_EVTS; - enum NAMF_MT; - enum NAMF_LOC; - enum NSMF_PDUSESSION; - enum NSMF_EVENT-EXPOSURE; - enum NAUSF_AUTH; - enum NAUSF_SORPROTECTION; - enum NNEF_PFDMANAGEMENT; - enum NPCF_AM-POLICY-CONTROL; - enum NPCF_SMPOLICYCONTROL; - enum NPCF_POLICYAUTHORIZATION; - enum NPCF_BDTPOLICYCONTROL; - enum NPCF_EVENTEXPOSURE; - enum NPCF_UE_POLICY_CONTROL; - enum NSMSF_SMS; - enum NNSSF_NSSELECTION; - enum NNSSF_NSSAIAVAILABILITY; - enum NUDR_DR; - enum NLMF_LOC; - enum N5G_EIR_EIC; - enum NBSF_MANAGEMENT; - enum NCHF_SPENDINGLIMITCONTROL; - enum NCHF_CONVERGEDCHARGING; - enum NNWDAF_EVENTSSUBSCRIPTION; - enum NNWDAF_ANALYTICSINFO; - } - } - - typedef UriScheme { - type enumeration { - enum HTTP; - enum HTTPS; - } - } - - typedef NFServiceStatus { - type enumeration { - enum REGISTERED; - enum SUSPENDED; - enum UNDISCOVERABLE; - } - } - - grouping ChfServiceInfo { - leaf primaryChfServiceInstance { - description "Shall be present if the CHF service instance serves as a - secondary CHF instance of another primary CHF service instance."; - //conditional to support - type string; - } - - leaf secondaryChfServiceInstance { - description "Shall be present if the CHF service instance serves as a - primary CHF instance of another secondary CHF service instance."; - //conditional to support - type string; - } - } -} \ No newline at end of file diff --git a/yang-models/_3gpp-5gc-nrm-ngeirfunction.yang b/yang-models/_3gpp-5gc-nrm-ngeirfunction.yang deleted file mode 100755 index 9edbd01f0..000000000 --- a/yang-models/_3gpp-5gc-nrm-ngeirfunction.yang +++ /dev/null @@ -1,80 +0,0 @@ -module _3gpp-5gc-nrm-ngeirfunction { - yang-version 1.1; - - namespace urn:3gpp:sa5:_3gpp-5gc-nrm-ngeirfunction; - prefix ngeir3gpp; - - import _3gpp-common-managed-function { prefix mf3gpp; } - import _3gpp-common-managed-element { prefix me3gpp; } - import _3gpp-common-yang-types { prefix types3gpp; } - import _3gpp-5g-common-yang-types { prefix types5g3gpp; } - import _3gpp-common-top { prefix top3gpp; } - - organization "3gpp SA5"; - contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; - description "This IOC represents the 5G-EIR function in 5GC. For more - information about the 5G-EIR, see 3GPP TS 23.501."; - reference "3GPP TS 28.541"; - - revision 2020-11-05 { reference CR-0412 ; } - revision 2019-10-25 { reference "S5-194457 S5-195427 S5-193518"; } - - revision 2019-05-15 {reference "initial revision"; } - - grouping NGEIRFunctionGrp { - description "Represents the NGEIRFunction IOC"; - uses mf3gpp:ManagedFunctionGrp; - - list pLMNIdList { - description "List of at most six entries of PLMN Identifiers, but at - least one (the primary PLMN Id). - The PLMN Identifier is composed of a Mobile Country Code (MCC) and - a Mobile Network Code (MNC)."; - - min-elements 1; - max-elements 6; - key "mcc mnc"; - uses types3gpp:PLMNId; - } - - list sNSSAIList { - description "List of S-NSSAIs the managed object is capable of supporting. - (Single Network Slice Selection Assistance Information) - An S-NSSAI has an SST (Slice/Service type) and an optional SD - (Slice Differentiator) field."; - //optional support - reference "3GPP TS 23.003"; - key "sd sst"; - uses types5g3gpp:SNssai; - } - - list managedNFProfile { - key idx; - min-elements 1; - max-elements 1; - uses types3gpp:ManagedNFProfile; - } - - list commModelList { - min-elements 1; - key "groupId"; - description "Specifies a list of commModel. It can be used by NF and - NF services to interact with each other in 5G Core network "; - reference "3GPP TS 23.501"; - uses types5g3gpp:CommModel; - } - } - - augment "/me3gpp:ManagedElement" { - list NGEIRFunction { - description "5G Core NGEIR Function"; - reference "3GPP TS 28.541"; - key id; - uses top3gpp:Top_Grp; - container attributes { - uses NGEIRFunctionGrp; - } - uses mf3gpp:ManagedFunctionContainedClasses; - } - } -} \ No newline at end of file diff --git a/yang-models/_3gpp-5gc-nrm-nrffunction.yang b/yang-models/_3gpp-5gc-nrm-nrffunction.yang deleted file mode 100755 index 62e0ca74c..000000000 --- a/yang-models/_3gpp-5gc-nrm-nrffunction.yang +++ /dev/null @@ -1,88 +0,0 @@ -module _3gpp-5gc-nrm-nrffunction { - yang-version 1.1; - - namespace urn:3gpp:sa5:_3gpp-5gc-nrm-nrffunction; - prefix nrf3gpp; - - import _3gpp-common-managed-function { prefix mf3gpp; } - import _3gpp-common-managed-element { prefix me3gpp; } - import ietf-inet-types { prefix inet; } - import _3gpp-common-yang-types { prefix types3gpp; } - import _3gpp-5gc-nrm-nfprofile { prefix nfp3gpp; } - import _3gpp-common-top { prefix top3gpp; } - import _3gpp-5g-common-yang-types { prefix types5g3gpp; } - - organization "3gpp SA5"; - contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; - description "This IOC represents the NRF function in 5GC. - For more information about the NRF, see 3GPP TS 23.501 [2]."; - reference "3GPP TS 28.541"; - - revision 2020-11-05 { reference CR-0412 ; } - revision 2020-08-03 { reference "CR-0321"; } - revision 2019-10-28 { reference S5-193518 ; } - revision 2019-05-15 { reference "initial revision"; } - - grouping NRFFunctionGrp { - description "Represents the NRFFunction IOC"; - uses mf3gpp:ManagedFunctionGrp; - - list pLMNIdList { - description "List of at most six entries of PLMN Identifiers, but at - least one (the primary PLMN Id). - The PLMN Identifier is composed of a Mobile Country Code (MCC) and a - Mobile Network Code (MNC)."; - - min-elements 1; - max-elements 6; - key "mcc mnc"; - uses types3gpp:PLMNId; - } - - leaf sBIFQDN { - description "The FQDN of the registered NF instance in the service-based - interface."; - type inet:domain-name; - } - - leaf-list cNSIIdList { - description "NSI ID. NSI ID is an identifier for identifying the Core - Network part of a Network Slice instance when multiple Network Slice - instances of the same Network Slice are deployed, and there is a need - to differentiate between them in the 5GC, see clause 3.1 of TS 23.501 - and subclause 6.1.6.2.7 of 3GPP TS 29.531"; - type string; - } - - list sNSSAIList { - description "List of S-NSSAIs the managed object is capable of supporting. - (Single Network Slice Selection Assistance Information) - An S-NSSAI has an SST (Slice/Service type) and an optional SD - (Slice Differentiator) field."; - //optional support - reference "3GPP TS 23.003"; - key "sd sst"; - uses types5g3gpp:SNssai; - } - - list nFProfileList { - description "Set of NFProfile(s) to be registered in the NRF instance."; - //optional support - key nfInstanceID; - uses nfp3gpp:NFProfileGrp; - } - } - - augment "/me3gpp:ManagedElement" { - list NRFFunction { - description "5G Core NRF Function"; - reference "3GPP TS 28.541"; - key id; - uses top3gpp:Top_Grp; - container attributes { - uses NRFFunctionGrp; - } - uses mf3gpp:ManagedFunctionContainedClasses; - } - } -} \ No newline at end of file diff --git a/yang-models/_3gpp-5gc-nrm-nssffunction.yang b/yang-models/_3gpp-5gc-nrm-nssffunction.yang deleted file mode 100755 index b68d988ec..000000000 --- a/yang-models/_3gpp-5gc-nrm-nssffunction.yang +++ /dev/null @@ -1,87 +0,0 @@ -module _3gpp-5gc-nrm-nssffunction { - yang-version 1.1; - - namespace urn:3gpp:sa5:_3gpp-5gc-nrm-nssffunction; - prefix nssf3gpp; - - import _3gpp-common-managed-function { prefix mf3gpp; } - import _3gpp-common-managed-element { prefix me3gpp; } - import ietf-inet-types { prefix inet; } - import _3gpp-common-yang-types { prefix types3gpp; } - import _3gpp-common-top { prefix top3gpp; } - import _3gpp-5g-common-yang-types { prefix types5g3gpp; } - - organization "3gpp SA5"; - contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; - description "This IOC represents the NSSF function in 5GC. For more - information about the NSSF, see 3GPP TS 23.501."; - reference "3GPP TS 28.541"; - - revision 2020-11-05 { reference CR-0412 ; } - revision 2020-08-03 { reference "CR-0321"; } - revision 2019-10-25 { reference "S5-194457 S5-195427 S5-193518"; } - revision 2019-05-15 { reference "initial revision"; } - - grouping NSSFFunctionGrp { - description "Represents the NSSFFunction IOC"; - uses mf3gpp:ManagedFunctionGrp; - - list pLMNIdList { - description "List of at most six entries of PLMN Identifiers, but at least - one (the primary PLMN Id). - The PLMN Identifier is composed of a Mobile Country Code (MCC) and a - Mobile Network Code (MNC)."; - - min-elements 1; - max-elements 6; - key "mcc mnc"; - uses types3gpp:PLMNId; - } - - leaf sBIFQDN { - description "The FQDN of the registered NF instance in the service-based - interface."; - type inet:domain-name; - } - - list sNSSAIList { - description "List of S-NSSAIs the managed object is capable of supporting. - (Single Network Slice Selection Assistance Information) - An S-NSSAI has an SST (Slice/Service type) and an optional SD - (Slice Differentiator) field."; - - reference "3GPP TS 23.003"; - key "sd sst"; - uses types5g3gpp:SNssai; - } - - leaf-list cNSIIdList { - description "NSI ID. NSI ID is an identifier for identifying the Core - Network part of a Network Slice instance when multiple Network Slice - instances of the same Network Slice are deployed, and there is a need - to differentiate between them in the 5GC, see clause 3.1 of TS 23.501 - and subclause 6.1.6.2.7 of 3GPP TS 29.531"; - type string; - } - - list managedNFProfile { - key idx; - min-elements 1; - max-elements 1; - uses types3gpp:ManagedNFProfile; - } - } - - augment "/me3gpp:ManagedElement" { - list NSSFFunction { - description "5G Core NSSF Function"; - reference "3GPP TS 28.541"; - key id; - uses top3gpp:Top_Grp; - container attributes { - uses NSSFFunctionGrp; - } - uses mf3gpp:ManagedFunctionContainedClasses; - } - } -} \ No newline at end of file diff --git a/yang-models/_3gpp-5gc-nrm-nwdaffunction.yang b/yang-models/_3gpp-5gc-nrm-nwdaffunction.yang deleted file mode 100755 index bf143ba35..000000000 --- a/yang-models/_3gpp-5gc-nrm-nwdaffunction.yang +++ /dev/null @@ -1,86 +0,0 @@ -module _3gpp-5gc-nrm-nwdaffunction { - yang-version 1.1; - - namespace urn:3gpp:sa5:_3gpp-5gc-nrm-nwdaffunction; - prefix nwdaf3gpp; - - import _3gpp-common-managed-function { prefix mf3gpp; } - import _3gpp-common-managed-element { prefix me3gpp; } - import ietf-inet-types { prefix inet; } - import _3gpp-common-yang-types { prefix types3gpp; } - import _3gpp-5g-common-yang-types { prefix types5g3gpp; } - import _3gpp-common-top { prefix top3gpp; } - - organization "3gpp SA5"; - contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; - description "This IOC represents the NWDAF function in 5GC. For more information about the NWDAF, see 3GPP TS 23.501."; - reference "3GPP TS 28.541"; - - revision 2020-11-05 { reference CR-0412 ; } - revision 2019-10-25 { reference "S5-194457 S5-195427 S5-193518"; } - - revision 2019-05-15 {reference "initial revision"; } - - grouping NWDAFFunctionGrp { - description "Represents the NWDAFFunction IOC"; - uses mf3gpp:ManagedFunctionGrp; - - list pLMNIdList { - description "List of at most six entries of PLMN Identifiers, but at - least one (the primary PLMN Id). - The PLMN Identifier is composed of a Mobile Country Code (MCC) and a - Mobile Network Code (MNC)."; - - min-elements 1; - max-elements 6; - key "mcc mnc"; - uses types3gpp:PLMNId; - } - - leaf sBIFQDN { - description "The FQDN of the registered NF instance in the service-based - interface."; - type inet:domain-name; - } - - list sNSSAIList { - description "List of S-NSSAIs the managed object is capable of supporting. - (Single Network Slice Selection Assistance Information) - An S-NSSAI has an SST (Slice/Service type) and an optional SD - (Slice Differentiator) field."; - //optional support - reference "3GPP TS 23.003"; - key "sd sst"; - uses types5g3gpp:SNssai; - } - - list managedNFProfile { - key idx; - min-elements 1; - max-elements 1; - uses types3gpp:ManagedNFProfile; - } - - list commModelList { - min-elements 1; - key "groupId"; - description "Specifies a list of commModel. It can be used by NF and - NF services to interact with each other in 5G Core network "; - reference "3GPP TS 23.501"; - uses types5g3gpp:CommModel; - } - } - - augment "/me3gpp:ManagedElement" { - list NWDAFFunction { - description "5G Core NWDAF Function"; - reference "3GPP TS 28.541"; - key id; - uses top3gpp:Top_Grp; - container attributes { - uses NWDAFFunctionGrp; - } - uses mf3gpp:ManagedFunctionContainedClasses; - } - } -} \ No newline at end of file diff --git a/yang-models/_3gpp-5gc-nrm-pcffunction.yang b/yang-models/_3gpp-5gc-nrm-pcffunction.yang deleted file mode 100755 index a7f9bd152..000000000 --- a/yang-models/_3gpp-5gc-nrm-pcffunction.yang +++ /dev/null @@ -1,97 +0,0 @@ -module _3gpp-5gc-nrm-pcffunction { - yang-version 1.1; - - namespace urn:3gpp:sa5:_3gpp-5gc-nrm-pcffunction; - prefix pcf3gpp; - - import _3gpp-common-managed-function { prefix mf3gpp; } - import _3gpp-common-managed-element { prefix me3gpp; } - import ietf-inet-types { prefix inet; } - import _3gpp-common-yang-types { prefix types3gpp; } - import _3gpp-5g-common-yang-types { prefix types5g3gpp; } - import _3gpp-common-top { prefix top3gpp; } - - organization "3gpp SA5"; - contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; - description "This IOC represents the PCF function in 5GC. For more - information about the PCF, see 3GPP TS 23.501."; - reference "3GPP TS 28.541"; - - revision 2020-11-05 { reference CR-0412 ; } - revision 2020-08-06 { reference "CR-0333"; } - revision 2020-08-06 { reference "CR-0331"; } - revision 2019-10-25 { reference "S5-194457 S5-193518"; } - revision 2019-05-22 { reference "initial revision"; } - - grouping PCFFuntionGrp { - description "Represents the PCFFuntion IOC"; - uses mf3gpp:ManagedFunctionGrp; - - list pLMNIdList { - description "List of at most six entries of PLMN Identifiers, but at - least one (the primary PLMN Id). - The PLMN Identifier is composed of a Mobile Country Code (MCC) and a - Mobile Network Code (MNC)."; - - min-elements 1; - max-elements 6; - key "mcc mnc"; - uses types3gpp:PLMNId; - } - - leaf sBIFQDN { - description "The FQDN of the registered NF instance in the service-based - interface."; - type inet:domain-name; - } - - list sNSSAIList { - description "List of S-NSSAIs the managed object is capable of supporting. - (Single Network Slice Selection Assistance Information) - An S-NSSAI has an SST (Slice/Service type) and an optional SD - (Slice Differentiator) field."; - //optional support - reference "3GPP TS 23.003"; - key "sd sst"; - uses types5g3gpp:SNssai; - } - - list managedNFProfile { - key idx; - min-elements 1; - max-elements 1; - uses types3gpp:ManagedNFProfile; - } - list commModelList { - min-elements 1; - key "groupId"; - description "Specifies a list of commModel. It can be used by NF and - NF services to interact with each other in 5G Core network "; - reference "3GPP TS 23.501"; - uses types5g3gpp:CommModel; - } - leaf dynamic5QISetRef { - type types3gpp:DistinguishedName; - description "DN of the Dynamic5QISet that the PCFFunction supports - (is associated to)."; - } - leaf configurable5QISetRef { - type types3gpp:DistinguishedName; - description "DN of the Configurable5QISet that the PCFFunction supports - (is associated to)."; - } - } - - augment "/me3gpp:ManagedElement" { - list PCFFunction { - description "5G Core PCF Function"; - reference "3GPP TS 28.541"; - key id; - uses top3gpp:Top_Grp; - container attributes { - uses PCFFuntionGrp; - } - uses mf3gpp:ManagedFunctionContainedClasses; - } - } -} \ No newline at end of file diff --git a/yang-models/_3gpp-5gc-nrm-predefinedpccruleset.yang b/yang-models/_3gpp-5gc-nrm-predefinedpccruleset.yang deleted file mode 100755 index ac3faf5c6..000000000 --- a/yang-models/_3gpp-5gc-nrm-predefinedpccruleset.yang +++ /dev/null @@ -1,642 +0,0 @@ -module _3gpp-5gc-nrm-predefinedpccruleset { - yang-version 1.1; - - namespace urn:3gpp:sa5:_3gpp-5gc-nrm-predefinedpccruleset; - prefix PredPccRules3gpp; - - import _3gpp-common-managed-element { prefix me3gpp; } - import _3gpp-common-top { prefix top3gpp; } - import _3gpp-5gc-nrm-smffunction { prefix smf3gpp; } - import _3gpp-5gc-nrm-pcffunction { prefix pcf3gpp; } - import ietf-yang-types { prefix yang; } - - organization "3gpp SA5"; - contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; - description "This IOC represents the predefined PCC rules, which are - configured to SMF and referenced by PCF."; - reference "3GPP TS 28.541"; - - revision 2020-09-30 { reference "CR-0393"; } - revision 2020-08-21 { reference "CR-0330"; } - - grouping TscaiInputContainer { - description "It specifies the transports TSCAI input parameters for TSC - traffic at the ingress interface of the DS-TT/UE for a PCC rule."; - reference " 3GPP TS 29.512"; - leaf periodicity { - type uint32; - description "It identifies the time period between the start of two bursts - in reference to the TSN GM."; - reference "3GPP TS 29.571."; - } - leaf burstArrivalTime { - type yang:date-and-time; - description "It Indicates the arrival time (in date-time format) of the - data burst in reference to the TSN GM."; - reference "3GPP,TS 29.571."; - } - } - - grouping ConditionData { - description "It specifies the specifies the condition data for a PCC rule."; - leaf condId { - type string; - mandatory true; - description "It uniquely identifies the condition data."; - } - leaf activationTime { - type yang:date-and-time; - description " It indicates the time (in date-time format) when the decision - data shall be activated."; - reference "3GPP29.512 and TS 29.571."; - } - leaf deactivationTime { - type yang:date-and-time; - description "It indicates the time (in date-time format) when the decision - data shall be deactivated."; - reference "3GPPTS 29.512 and TS 29.571."; - } - leaf accessType { - type enumeration { - enum 3GPP_ACCESS; - enum NON_3GPP_ACCESS; - } - description "It provides the condition of access type of the UE when the - session AMBR shall be enforced."; - reference "3GPPTS 29.512."; - } - leaf ratType { - type enumeration { - enum NR; - enum EUTRA; - enum WLAN; - enum VIRTUAL; - enum NBIOT; - enum WIRELINE; - enum WIRELINE_CABLE; - enum WIRELINE_BBF; - enum LTE-M; - enum NR_U; - enum EUTRA_U; - enum TRUSTED_N3GA; - enum TRUSTED_WLAN; - enum UTRA; - enum GERA; - } - description "It provides the condition of RAT type of the UE when the - session AMBR shall be enforced."; - reference "3GPPTS 29.512 and TS 29.571."; - } - } - - grouping SteeringMode { - description "It specifies the traffic distribution rule, see TS 29.512."; - leaf steerModeValue { - type enumeration { - enum ACTIVE_STANDBY; - enum LOAD_BALANCING; - enum SMALLEST_DELAY; - enum PRIORITY_BASED; - } - mandatory true; - description "It indicates the value of the steering mode, see TS 29.512."; - } - leaf active { - type enumeration { - enum 3GPP_ACCESS; - enum NON_3GPP_ACCESS; - } - description "It indicates the active access, see TS 29.571."; - } - leaf standby { - type enumeration { - enum 3GPP_ACCESS; - enum NON_3GPP_ACCESS; - } - description "It indicates the Standby access, see TS 29.571."; - } - leaf threeGLoad { - type uint8 { - range 0..100; - } - description "It indicates the traffic load to steer to the 3GPP Access - expressed in one percent."; - } - leaf prioAcc { - type enumeration { - enum 3GPP_ACCESS; - enum NON_3GPP_ACCESS; - } - description "It indicates the high priority access."; - reference "3GPPTS 29.571"; - } - } - - grouping UpPathChgEvent { - description "It specifies the information about the AF subscriptions of the - UP path change."; - reference "3GPPTS 29.512"; - leaf notificationUri { - type string; - mandatory true; - description "It provides notification address (Uri) of AF receiving the - event notification."; - } - leaf notifCorreId { - type string; - mandatory true; - description "It is used to set the value of Notification Correlation ID in - the notification sent by the SMF, see TS 29.512"; - } - leaf dnaiChgType { - type enumeration { - enum EARLY; - enum EARLY_LATE; - enum LATE; - } - mandatory true; - description "It indicates the type of DNAI change, see TS 29.512"; - } - leaf afAckInd { - type boolean; - default false; - description "It identifies whether the AF acknowledgement of UP path - event notification is expected."; - } - } - - grouping RouteInformation { - description "It specifies the traffic routing information."; - leaf ipv4Addr { - type string; - description "It defines the Ipv4 address of the tunnel end point in the - data network, formatted in the dotted decimal notation."; - } - leaf ipv6Addr { - type string; - description "It defines the Ipv6 address of the tunnel end point in the - data network."; - } - leaf portNumber { - type uint32; - mandatory true; - description " It defines the UDP port number of the tunnel end point in - the data network, see TS 29.571"; - } - } - - grouping RouteToLocation { - description "It specifies a list of location which the traffic shall be - routed to for the AF request."; - leaf dnai { - type string; - mandatory true; - description "It represents the DNAI (Data network access identifier)."; - reference "3GPP 3GPP TS 23.501"; - } - container routeInfo{ - description "It provides the traffic routing information."; - uses RouteInformation; - } - leaf routeProfId { - type string; - description "It identifies the routing profile."; - } - } - - grouping RedirectInformaton { - description "It specifies the redirect information for traffic control in - the PCC rule."; - leaf redirectEnabled { - type boolean; - mandatory true; - description "It indicates whether the redirect instruction is enabled."; - } - leaf redirectAddressType { - type enumeration { - enum IPV4_ADDR; - enum IPV6_ADDR; - enum URL; - enum SIP_URI; - } - mandatory true; - description "It indicates the type of redirect address."; - reference "3GPPTS 29.512"; - } - leaf redirectServerAddress { - type string; - mandatory true; - description "It indicates the address of the redirect server."; - } - } - - grouping TrafficControlDataInformation { - description "It specifies the traffic control data for a service - flow of a PCC rule."; - leaf tcId { - type string; - mandatory true; - description "It univocally identifies the traffic control policy data - within a PDU session."; - } - leaf flowStatus { - type enumeration { - enum ENABLED-UPLINK; - enum ENABLED-DOWNLINK; - enum ENABLED; - enum DISABLED; - enum REMOVED; - } - mandatory true; - description "It represents whether the service data flow(s) are enabled - or disabled."; - } - container redirectInfo { - description "It contains the redirect information indicating whether the - detected application traffic should be redirected to another controlled - address."; - uses RedirectInformaton; - } - container addRedirectInfo { - description "It contains the additional redirect information indicating - whether the detected application traffic should be redirected to another - controlled address."; - list redirectInfo { - description "The list of redirect information indicating whether the - detected application traffic should be redirected to another - controlled address."; - key "redirectServerAddress"; - uses RedirectInformaton; - } - } - leaf muteNotif { - type boolean; - default false; - description "It indicates whether applicat'on's start or stop notification - is to be muted."; - } - leaf trafficSteeringPolIdDl { - type string; - description "It references to a pre-configured traffic steering policy for downlink traffic at the SMF, see TS 29.512"; - } - leaf trafficSteeringPolIdUl { - type string; - mandatory false; - description "It references to a pre-configured traffic steering policy for - uplink traffic at the SMF, see TS 29.512"; - } - container routeToLocs { - description "It provides a list of location which the traffic shall be - routed to for the AF request."; - list routeToLoc { - description "The list of location which the traffic shall be routed to - for the AF request."; - key "dnai"; - uses RouteToLocation; - } - } - uses UpPathChgEvent; - leaf steerFun { - type enumeration { - enum MPTCP; - enum ATSSS_LL; - } - description "It indicates the applicable traffic steering functionality."; - reference "3GPPTS 29.512"; - } - container steerModeDl { - description "It provides the traffic distribution rule across 3GPP and - Non-3GPP accesses to apply for downlink traffic."; - uses SteeringMode; - } - container steerModeUl { - description "It provides the traffic distribution rule across 3GPP and Non-3GPP accesses to apply for uplink traffic."; - uses SteeringMode; - } - leaf mulAccCtrl { - type enumeration { - enum ALLOWED; - enum NOT_ALLOWED; - } - description "It indicates whether the service data flow, corresponding to the service data flow template, is allowed or not allowed."; - } - } - - grouping ARP { - description "It specifies the allocation and retention priority of a QoS control policy."; - leaf priorityLevel { - type uint8 { - range 1..15; - } - mandatory true; - description "It defines the relative importance of a resource request."; - } - leaf preemptCap { - type enumeration { - enum NOT_PREEMPT; - enum MAY_PREEMPT; - } - mandatory true; - description "It defines whether a service data flow may get resources that were already assigned to another service data flow with a lower priority level."; - } - leaf preemptVuln { - type enumeration { - enum NOT_PREEMPTABLE; - enum PREEMPTABLE; - } - mandatory true; - description "It defines whether a service data flow may lose the resources assigned to it in order to admit a service data flow with higher priority level."; - } - } - - grouping QosDataInformation { - description "It specifies the QoS control policy data for a service flow of a PCC rule."; - leaf qosId { - type string; - mandatory true; - description "It identifies the QoS control policy data for a PCC rule."; - } - leaf fiveQIValue { - type uint8 { - range 0..255; - } - mandatory true; - description "It indicates the 5QI value."; - } - leaf maxbrUl { - type string; - description "It represents the maximum uplink bandwidth."; - } - leaf maxbrDl { - type string; - description "It represents the maximum downlink bandwidth."; - } - leaf gbrUl { - type string; - description "It represents the guaranteed uplink bandwidth."; - } - leaf gbrDl { - type string; - description "It represents the guaranteed downlink bandwidth."; - } - uses ARP; - leaf qosNotificationControl { - type boolean; - default false; - description "It indicates whether notifications are requested from 3GPP NG-RAN when the GFBR can no longer (or again) be guaranteed for a QoS Flow during the lifetime of the QoS Flow."; - } - leaf reflectiveQos { - type boolean; - default false; - description "Indicates whether the QoS information is reflective for the corresponding non-GBR service data flow"; - } - leaf sharingKeyDl { - type string; - description "It indicates, by containing the same value, what PCC rules may share resource in downlink direction."; - } - leaf sharingKeyUl { - type string; - description "It indicates, by containing the same value, what PCC rules may share resource in uplink direction."; - } - leaf maxPacketLossRateDl { - type uint16 { - range 0..1000; - } - description "It indicates the downlink maximum rate for lost packets that can be tolerated for the service data flow."; - } - leaf maxPacketLossRateUl { - type uint16 { - range 0..1000; - } - description "It indicates the uplink maximum rate for lost packets that can be tolerated for the service data flow."; - } - leaf extMaxDataBurstVol { - type uint32 { - range 4096..2000000; - } - description "It denotes the largest amount of data that is required to be transferred within a period of 5G-AN PDB, see TS 29.512"; - } - } - - grouping EthFlowDescription { - description "It describes an Ethernet flow."; - leaf destMacAddr { - type string; - mandatory true; - description "It specifies the destination MAC address formatted in the - hexadecimal ."; - reference "clause 1.1 and clause 2.1 of IETF RFC"; - } - leaf ethType { - type string; - mandatory true; - description "A two-octet string that represents the Ethertype."; - reference "IEEE 802.3 and IETF RFC 7042 in hexadecimal representation."; - } - leaf fDesc { - type string; - description "It contains the flow description for the Uplink or Downlink IP flow. It shall be present when the ethtype is IP."; - } - leaf fDir { - type enumeration { - enum DOWNLINK; - enum UPLINK; - } - mandatory true; - description "It indicates the packet filter direction."; - } - leaf sourceMacAddr { - type string; - mandatory true; - description "It specifies the source MAC address formatted in the - hexadecimal notation."; - reference "clause 1.1 and clause 2.1 of IETF RFC 7042"; - } - leaf-list vlanTags { - type string; - description "It specifies the Customer-VLAN and/or Service-VLAN tags - containing the VID, PCP/DEI fields as defined in IEEE 802.1Q and - IETF RFC 7042. The first/lower instance in the array stands for the - Customer-VLAN tag and the second/higher instance in the array stands - for the Service-VLAN tag."; - } - leaf srcMacAddrEnd { - type string; - description "It specifies the source MAC address end. If this attribute is present, the sourceMacAddr attribute specifies the source MAC address start. E.g. srcMacAddrEnd with value 00-10-A4-23-3E-FE and sourceMacAddr with value 00-10-A4-23-3E-02 means all MAC addresses from 00-10-A4-23-3E-02 up to and including 00-10-A4-23-3E-FE."; - } - leaf destMacAddrEnd { - type string; - description "It specifies the destination MAC address end. If this attribute is present, the destMacAddr attribute specifies the destination MAC address start."; - } - } - - grouping FlowInformation { - description "It specifies the flow information of a PCC rule."; - leaf flowDescription { - type string; - mandatory true; - description "It defines a packet filter for an IP flow."; - } - uses EthFlowDescription; - leaf packFiltId { - type string; - mandatory true; - description "It is the identifier of the packet filter."; - } - leaf packetFilterUsage { - type boolean; - default false; - description "It indicates if the packet shall be sent to the UE."; - } - leaf tosTrafficClass { - type string; - mandatory true; - description "It contains the Ipv4 Type-of-Service and mask field or the Ipv6 Traffic-Class field and mask field."; - } - leaf spi { - type string; - mandatory true; - description "It is the security parameter index of the IPSec packet."; - reference "IETF RFC 4301"; - } - leaf flowLabel { - type string; - description "It specifies the Ipv6 flow label header field."; - } - leaf flowDirection { - type enumeration { - enum DOWNLINK; - enum UPLINK; - enum BIDIRECTIONAL; - enum UNSPECIFIED; - } - mandatory true; - description "It indicates the direction/directions that a filter is applicable."; - } - } - - grouping PccRule { - description "It specifies the PCC rule, see TS 29.512"; - leaf pccRuleId { - type string; - mandatory true; - description "It identifies the PCC rule."; - } - container flowInfoList { - description "It is a list of IP flow packet filter information."; - list flowInfo { - description "The list of IP flow packet filter information."; - key "packFiltId"; - uses FlowInformation; - } - } - leaf applicationId { - type string; - default false; - description "A reference to the application detection filter configured - at the UPF."; - } - leaf appDescriptor { - type string; - description "It is the ATSSS rule application descriptor."; - } - leaf contentVersion { - type uint8; - description "Indicates the content version of the PCC rule."; - } - leaf precedence { - type uint8 { - range 0..255; - } - description "It indicates the order in which this PCC rule is applied - relative to other PCC rules within the same PDU session."; - } - leaf afSigProtocol { - type enumeration { - enum NO_INFORMATION; - enum SIP; - } - description "Indicates the protocol used for signalling between the UE - and the AF, the default value is NO_INFORMATION."; - } - leaf isAppRelocatable { - type boolean; - default false; - mandatory false; - description "It indicates the application relocation possibility, the - default value is NO_INFORMATION."; - } - leaf isUeAddrPreserved { - type boolean; - default false; - description "It Indicates whether UE IP address should be preserved."; - } - container qosData { - description "It contains the QoS control policy data for a PCC rule."; - list qosDataInfo { - description "The list of QoS control policy data."; - key "qosId"; - uses QosDataInformation; - } - } - container altQosParams { - description "It contains the QoS control policy data for the Alternative - QoS parameter sets of the service data flow."; - list qosDataInfo { - description "The list of QoS control policy data."; - key "qosId"; - uses QosDataInformation; - } - } - container trafficControlData { - description "It contains the traffic control policy data for a PCC rule."; - list trafficControlDataInfo { - description "The list of traffic control policy data."; - key "tcId"; - uses TrafficControlDataInformation; - } - } - uses ConditionData; - container tscaiInputUl { - description "It contains transports TSCAI input parameters for TSC traffic at the ingress interface of the DS-TT/UE (uplink flow direction)."; - uses TscaiInputContainer; - - } - container tscaiInputDl { - description "It contains transports TSCAI input parameters for TSC traffic at the ingress of the NW-TT (downlink flow direction)."; - uses TscaiInputContainer; - } - } - - grouping PredefinedPccRuleSetGrp { - description "Represents the PredefinedPccRuleSet IOC."; - list PredefinedPccRules { - description "The list of predefined PCC rules."; - key "pccRuleId"; - uses PccRule; - } - } - - grouping PredefinedPccRuleSetSubtree { - description "It specifies the PredefinedPccRuleSet IOC with inherited attributes."; - list PredefinedPccRuleSet { - description "Specifies the predefined PCC rules."; - key "id"; - uses top3gpp:Top_Grp; - container attributes { - description "It contains the attributes defined specifically in the PredefinedPccRuleSet IOC."; - uses PredefinedPccRuleSetGrp; - } - } - } - - augment "/me3gpp:ManagedElement/smf3gpp:SMFFunction" { - description "It specifies the containment relation of PredefinedPccRuleSet MOI with SMFFunction MOI."; - uses PredefinedPccRuleSetSubtree; - } - - augment "/me3gpp:ManagedElement/pcf3gpp:PCFFunction" { - description "It specifies the containment relation of PredefinedPccRuleSet MOI with PCFFunction MOI."; - uses PredefinedPccRuleSetSubtree; - } -} \ No newline at end of file diff --git a/yang-models/_3gpp-5gc-nrm-scpfunction.yang b/yang-models/_3gpp-5gc-nrm-scpfunction.yang deleted file mode 100755 index aa1f98072..000000000 --- a/yang-models/_3gpp-5gc-nrm-scpfunction.yang +++ /dev/null @@ -1,50 +0,0 @@ -module _3gpp-5gc-nrm-scpfunction { - yang-version 1.1; - - namespace urn:3gpp:sa5:_3gpp-5gc-nrm-scpfunction; - prefix scp3gpp; - - import _3gpp-common-managed-function { prefix mf3gpp; } - import _3gpp-common-managed-element { prefix me3gpp; } - import ietf-inet-types { prefix inet; } - import _3gpp-5g-common-yang-types { prefix types5g3gpp; } - import _3gpp-common-top { prefix top3gpp; } - - organization "3gpp SA5"; - description "This IOC represents the SCP function in 5GC. For more information about the SCP, see 3GPP TS 23.501."; - reference "3GPP TS 28.541"; - - revision 2019-10-20 { - description "initial revision"; - reference "Based on - 3GPP TS 28.541 V16.X.XX"; - } - - grouping SCPFunctionGrp { - uses mf3gpp:ManagedFunctionGrp; - - leaf address { - description "The host address of the SCP."; - type inet:host; - } - - list supportedFuncList { - min-elements 1; - key "function"; - uses types5g3gpp:SupportedFunc; - } - - } - - augment "/me3gpp:ManagedElement" { - list SCPFunction { - description "5G Core SCP Function"; - reference "3GPP TS 28.541"; - key id; - uses top3gpp:Top_Grp; - container attributes { - uses SCPFunctionGrp; - } - } - } -} \ No newline at end of file diff --git a/yang-models/_3gpp-5gc-nrm-seppfunction.yang b/yang-models/_3gpp-5gc-nrm-seppfunction.yang deleted file mode 100755 index e4793dd3f..000000000 --- a/yang-models/_3gpp-5gc-nrm-seppfunction.yang +++ /dev/null @@ -1,70 +0,0 @@ -module _3gpp-5gc-nrm-seppfunction { - yang-version 1.1; - - namespace urn:3gpp:sa5:_3gpp-5gc-nrm-seppfunction; - prefix sepp3gpp; - - import _3gpp-common-managed-function { prefix mf3gpp; } - import _3gpp-common-managed-element { prefix me3gpp; } - import _3gpp-common-yang-types { prefix types3gpp; } - import _3gpp-common-top { prefix top3gpp; } - import ietf-inet-types { prefix inet; } - - organization "3gpp SA5"; - description "This IOC represents the SEPP function which support message filtering - and policing on inter-PLMN control plane interface. For more information about the SEPP, see 3GPP TS 23.501."; - reference "3GPP TS 28.541"; - - revision 2020-08-03 { reference "CR-0321"; } - revision 2019-10-28 { reference S5-193518 ; } - - typedef SEPPType { - reference "3GPP TS 23501"; - type enumeration { - enum CSEPP { - value 0; - description "consumer SEPP"; - } - - enum PSEPP { - value 1; - description "producer SEPP"; - } - } - } - - grouping SEPPFunctionGrp { - uses mf3gpp:ManagedFunctionGrp; - - container pLMNId { - description "PLMN Identifiers of the sepp. - The PLMN Identifier is composed of a Mobile Country Code (MCC) and a Mobile Network Code (MNC)."; - uses types3gpp:PLMNId; - } - - leaf sEPPType { - type sepp3gpp:SEPPType; - } - - leaf sEPPId { - type uint16; - } - - leaf fqdn { - description "The domain name of the SEPP."; - type inet:domain-name; - } - } - - augment "/me3gpp:ManagedElement" { - list SEPPFunction { - description "5G Core SEPP Function"; - reference "3GPP TS 28.541"; - key id; - uses top3gpp:Top_Grp; - container attributes { - uses SEPPFunctionGrp; - } - uses mf3gpp:ManagedFunctionContainedClasses; } - } -} \ No newline at end of file diff --git a/yang-models/_3gpp-5gc-nrm-smffunction.yang b/yang-models/_3gpp-5gc-nrm-smffunction.yang deleted file mode 100755 index 04659fb71..000000000 --- a/yang-models/_3gpp-5gc-nrm-smffunction.yang +++ /dev/null @@ -1,102 +0,0 @@ -module _3gpp-5gc-nrm-smffunction { - yang-version 1.1; - namespace urn:3gpp:sa5:_3gpp-5gc-nrm-smffunction; - prefix smf3gpp; - - import _3gpp-common-managed-function { prefix mf3gpp; } - import _3gpp-common-managed-element { prefix me3gpp; } - import _3gpp-common-yang-types { prefix types3gpp; } - import _3gpp-5g-common-yang-types { prefix types5g3gpp; } - import ietf-inet-types { prefix inet; } - import _3gpp-common-top { prefix top3gpp; } - - organization "3gpp SA5"; - contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; - description "SMFFunction derived from basic ManagedFunction."; - - revision 2020-11-05 { reference CR-0412 ; } - revision 2020-08-06 { reference "CR-0333"; } - revision 2020-06-03 { reference "CR-0286"; } - revision 2019-10-25 { reference "S5-194457 S5-193518"; } - revision 2019-05-31 {reference "Ericsson refactoring."; } - revision 2018-08-07 { reference "Initial revision";} - - grouping SMFFunctionGrp { - description "Represents the SMFFuntion IOC"; - uses mf3gpp:ManagedFunctionGrp; - - list pLMNIdList { - min-elements 1; - description "A list of PLMN identifiers (Mobile Country Code and Mobile - Network Code)."; - key "mcc mnc"; - uses types3gpp:PLMNId; - } - - leaf-list nRTACList { - description "List of Tracking Area Codes (legacy TAC or extended TAC) - where the represented management function is serving."; - reference "TS 38.413 clause 9.3.3.10"; - min-elements 1; - config false; - type types3gpp:Tac; - } - - leaf sBIFQDN { - description "The FQDN of the registered NF instance in the service-based - interface."; - type inet:domain-name; - } - - list sNSSAIList { - description "List of S-NSSAIs the managed object is capable of supporting. - (Single Network Slice Selection Assistance Information) - An S-NSSAI has an SST (Slice/Service type) and an optional SD - (Slice Differentiator) field."; - reference "3GPP TS 23.003"; - key "sd sst"; - uses types5g3gpp:SNssai; - } - - list managedNFProfile { - key idx; - min-elements 1; - max-elements 1; - uses types3gpp:ManagedNFProfile; - } - - list commModelList { - min-elements 1; - key "groupId"; - description "Specifies a list of commModel. It can be used by NF and - NF services to interact with each other in 5G Core network "; - reference "3GPP TS 23.501"; - uses types5g3gpp:CommModel; - } - - leaf configurable5QISetRef { - type types3gpp:DistinguishedName; - description "DN of the Configurable5QISet that the SMFFunction supports - (is associated to)."; - } - - leaf dynamic5QISetRef { - type types3gpp:DistinguishedName; - description "DN of the Dynamic5QISet that the SMFFunction supports - (is associated to)."; - } - } - - augment "/me3gpp:ManagedElement" { - list SMFFunction { - description "5G Core SMF Function"; - reference "3GPP TS 28.541"; - key id; - uses top3gpp:Top_Grp; - container attributes { - uses SMFFunctionGrp; - } - uses mf3gpp:ManagedFunctionContainedClasses; - } - } -} \ No newline at end of file diff --git a/yang-models/_3gpp-5gc-nrm-smsffunction.yang b/yang-models/_3gpp-5gc-nrm-smsffunction.yang deleted file mode 100755 index 720d90417..000000000 --- a/yang-models/_3gpp-5gc-nrm-smsffunction.yang +++ /dev/null @@ -1,62 +0,0 @@ -module _3gpp-5gc-nrm-smsffunction { - yang-version 1.1; - - namespace urn:3gpp:sa5:_3gpp-5gc-nrm-smsffunction; - prefix smsf3gpp; - - import _3gpp-common-managed-function { prefix mf3gpp; } - import _3gpp-common-managed-element { prefix me3gpp; } - import _3gpp-common-yang-types { prefix types3gpp; } - import _3gpp-5g-common-yang-types { prefix types5g3gpp; } - import _3gpp-common-top { prefix top3gpp; } - - organization "3gpp SA5"; - description "This IOC represents the SMSF function defined in 3GPP TS 23.501."; - reference "3GPP TS 28.541"; - - revision 2019-10-25 { reference "S5-194457 S5-195427 S5-193518"; } - - revision 2019-05-15 { - description "initial revision"; - - } - - grouping SMSFFunctionGrp { - uses mf3gpp:ManagedFunctionGrp; - - list pLMNIdList { - description "List of at most six entries of PLMN Identifiers, but at least one (the primary PLMN Id). - The PLMN Identifier is composed of a Mobile Country Code (MCC) and a Mobile Network Code (MNC)."; - - min-elements 1; - max-elements 6; - key "mcc mnc"; - uses types3gpp:PLMNId; - } - - list managedNFProfile { - key idx; - min-elements 1; - uses types3gpp:ManagedNFProfile; - } - - list commModelList { - min-elements 1; - key "groupId"; - uses types5g3gpp:CommModel; - } - } - - augment "/me3gpp:ManagedElement" { - list SMSFFunction { - description "5G Core SMSF Function"; - reference "3GPP TS 28.541"; - key id; - uses top3gpp:Top_Grp; - container attributes { - uses SMSFFunctionGrp; - } - uses mf3gpp:ManagedFunctionContainedClasses; - } - } -} \ No newline at end of file diff --git a/yang-models/_3gpp-5gc-nrm-udmfunction.yang b/yang-models/_3gpp-5gc-nrm-udmfunction.yang deleted file mode 100755 index 74965272a..000000000 --- a/yang-models/_3gpp-5gc-nrm-udmfunction.yang +++ /dev/null @@ -1,86 +0,0 @@ -module _3gpp-5gc-nrm-udmfunction { - yang-version 1.1; - - namespace urn:3gpp:sa5:_3gpp-5gc-nrm-udmfunction; - prefix udm3gpp; - - import _3gpp-common-managed-function { prefix mf3gpp; } - import _3gpp-common-managed-element { prefix me3gpp; } - import ietf-inet-types { prefix inet; } - import _3gpp-common-yang-types { prefix types3gpp; } - import _3gpp-5g-common-yang-types { prefix types5g3gpp; } - import _3gpp-common-top { prefix top3gpp; } - - organization "3gpp SA5"; - contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; - description "This IOC represents the UDM function in 5GC. For more - information about the UDM, see 3GPP TS 23.501."; - reference "3GPP TS 28.541"; - - revision 2020-11-05 { reference CR-0412 ; } - revision 2019-10-25 { reference "S5-194457 S5-195427 S5-193518"; } - revision 2019-05-22 { reference "initial revision";} - - grouping UDMFuntionGrp { - description "Represents the UDMFuntion IOC"; - uses mf3gpp:ManagedFunctionGrp; - - list pLMNIdList { - description "List of at most six entries of PLMN Identifiers, but at - least one (the primary PLMN Id). - The PLMN Identifier is composed of a Mobile Country Code (MCC) and a - Mobile Network Code (MNC)."; - - min-elements 1; - max-elements 6; - key "mcc mnc"; - uses types3gpp:PLMNId; - } - - leaf sBIFQDN { - description "The FQDN of the registered NF instance in the service-based - interface."; - type inet:domain-name; - } - - list sNSSAIList { - description "List of S-NSSAIs the managed object is capable of supporting. - (Single Network Slice Selection Assistance Information) - An S-NSSAI has an SST (Slice/Service type) and an optional SD - (Slice Differentiator) field."; - //optional support - reference "3GPP TS 23.003"; - key "sd sst"; - uses types5g3gpp:SNssai; - } - - list managedNFProfile { - key idx; - min-elements 1; - max-elements 1; - uses types3gpp:ManagedNFProfile; - } - - list commModelList { - min-elements 1; - key "groupId"; - description "Specifies a list of commModel. It can be used by NF and - NF services to interact with each other in 5G Core network "; - reference "3GPP TS 23.501"; - uses types5g3gpp:CommModel; - } - } - - augment "/me3gpp:ManagedElement" { - list UDMFunction { - description "5G Core UDM Function"; - reference "3GPP TS 28.541"; - key id; - uses top3gpp:Top_Grp; - container attributes { - uses UDMFuntionGrp; - } - uses mf3gpp:ManagedFunctionContainedClasses; - } - } -} \ No newline at end of file diff --git a/yang-models/_3gpp-5gc-nrm-udrfunction.yang b/yang-models/_3gpp-5gc-nrm-udrfunction.yang deleted file mode 100755 index 5eabaac8b..000000000 --- a/yang-models/_3gpp-5gc-nrm-udrfunction.yang +++ /dev/null @@ -1,78 +0,0 @@ -module _3gpp-5gc-nrm-udrfunction { - yang-version 1.1; - - namespace urn:3gpp:sa5:_3gpp-5gc-nrm-udrfunction; - prefix udr3gpp; - - import _3gpp-common-managed-function { prefix mf3gpp; } - import _3gpp-common-managed-element { prefix me3gpp; } - import ietf-inet-types { prefix inet; } - import _3gpp-common-yang-types { prefix types3gpp; } - import _3gpp-common-top { prefix top3gpp; } - import _3gpp-5g-common-yang-types { prefix types5g3gpp; } - - organization "3gpp SA5"; - contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; - description "This IOC represents the UDR function in 5GC. For more information - about the UDR, see 3GPP TS 23.501."; - reference "3GPP TS 28.541"; - - revision 2020-11-05 { reference CR-0412 ; } - revision 2019-10-25 { reference "S5-194457 S5-195427 S5-193518"; } - - revision 2019-05-22 {reference "initial revision"; } - - grouping UDRFuntionGrp { - description "Representse the UDRFuntion IOC"; - uses mf3gpp:ManagedFunctionGrp; - - list pLMNIdList { - description "List of at most six entries of PLMN Identifiers, but at - least one (the primary PLMN Id). - The PLMN Identifier is composed of a Mobile Country Code (MCC) and a - Mobile Network Code (MNC)."; - - min-elements 1; - max-elements 6; - key "mcc mnc"; - uses types3gpp:PLMNId; - } - - leaf sBIFQDN { - description "The FQDN of the registered NF instance in the service-based - interface."; - type inet:domain-name; - } - - list sNSSAIList { - description "List of S-NSSAIs the managed object is capable of supporting. - (Single Network Slice Selection Assistance Information) - An S-NSSAI has an SST (Slice/Service type) and an optional SD - (Slice Differentiator) field."; - //optional support - reference "3GPP TS 23.003"; - key "sd sst"; - uses types5g3gpp:SNssai; - } - - list managedNFProfile { - key idx; - min-elements 1; - max-elements 1; - uses types3gpp:ManagedNFProfile; - } - } - - augment "/me3gpp:ManagedElement" { - list UDRFunction { - description "5G Core UDR Function"; - reference "3GPP TS 28.541"; - key id; - uses top3gpp:Top_Grp; - container attributes { - uses UDRFuntionGrp; - } - uses mf3gpp:ManagedFunctionContainedClasses; - } - } -} \ No newline at end of file diff --git a/yang-models/_3gpp-5gc-nrm-udsffunction.yang b/yang-models/_3gpp-5gc-nrm-udsffunction.yang deleted file mode 100755 index c0ef6f217..000000000 --- a/yang-models/_3gpp-5gc-nrm-udsffunction.yang +++ /dev/null @@ -1,79 +0,0 @@ -module _3gpp-5gc-nrm-udsffunction { - yang-version 1.1; - - namespace urn:3gpp:sa5:_3gpp-5gc-nrm-udsffunction; - prefix udsf3gpp; - - import _3gpp-common-managed-function { prefix mf3gpp; } - import _3gpp-common-managed-element { prefix me3gpp; } - import ietf-inet-types { prefix inet; } - import _3gpp-common-yang-types { prefix types3gpp; } - import _3gpp-common-top { prefix top3gpp; } - import _3gpp-5g-common-yang-types { prefix types5g3gpp; } - - organization "3gpp SA5"; - contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; - description "This IOC represents the UDSF function which can be interacted - with any other 5GC NF defined in 3GPP TS 23.501."; - reference "3GPP TS 28.541"; - - revision 2020-11-05 { reference CR-0412 ; } - revision 2019-10-25 { reference "S5-194457 S5-195427 S5-193518"; } - - revision 2019-05-22 { reference "initial revision"; } - - grouping UDSFFuntionGrp { - description "Represents the UDSFFuntion IOC"; - uses mf3gpp:ManagedFunctionGrp; - - list pLMNIdList { - description "List of at most six entries of PLMN Identifiers, but at - least one (the primary PLMN Id). - The PLMN Identifier is composed of a Mobile Country Code (MCC) and a - Mobile Network Code (MNC)."; - - min-elements 1; - max-elements 6; - key "mcc mnc"; - uses types3gpp:PLMNId; - } - - leaf sBIFQDN { - description "The FQDN of the registered NF instance in the - service-based interface."; - type inet:domain-name; - } - - list sNSSAIList { - description "List of S-NSSAIs the managed object is capable of supporting. - (Single Network Slice Selection Assistance Information) - An S-NSSAI has an SST (Slice/Service type) and an optional SD - (Slice Differentiator) field."; - //optional support - reference "3GPP TS 23.003"; - key "sd sst"; - uses types5g3gpp:SNssai; - } - - list managedNFProfile { - key idx; - min-elements 1; - max-elements 1; - description "Managed Network Function profile"; - reference "3GPP TS 23.501"; - uses types3gpp:ManagedNFProfile; - } - } - - augment "/me3gpp:ManagedElement" { - list UDSFFunction { - description "5G Core UDSF Function"; - reference "3GPP TS 28.541"; - key id; - uses top3gpp:Top_Grp; - container attributes { - uses UDSFFuntionGrp; - } - uses mf3gpp:ManagedFunctionContainedClasses; } - } -} \ No newline at end of file diff --git a/yang-models/_3gpp-5gc-nrm-upffunction.yang b/yang-models/_3gpp-5gc-nrm-upffunction.yang deleted file mode 100755 index 1443942e5..000000000 --- a/yang-models/_3gpp-5gc-nrm-upffunction.yang +++ /dev/null @@ -1,80 +0,0 @@ -module _3gpp-5gc-nrm-upffunction { - yang-version 1.1; - namespace urn:3gpp:sa5:_3gpp-5gc-nrm-upffunction; - prefix upf3gpp; - - import _3gpp-common-managed-function { prefix mf3gpp; } - import _3gpp-common-managed-element { prefix me3gpp; } - import _3gpp-common-yang-types { prefix types3gpp; } - import _3gpp-5g-common-yang-types { prefix types5g3gpp; } - import _3gpp-common-top { prefix top3gpp; } - - organization "3GPP SA5"; - contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; - description "UPFFunction derived from basic ManagedFunction."; - reference "3GPP TS 28.541 5G Network Resource Model (NRM)"; - - revision 2020-11-05 { reference CR-0412 ; } - revision 2019-10-25 { reference "S5-194457 S5-193518"; } - revision 2019-05-31 { reference "Ericsson refactoring."; } - revision 2018-08-07 { reference "Initial revision"; } - - grouping UPFFunctionGrp { - description "Represents the UPFFunction IOC"; - uses mf3gpp:ManagedFunctionGrp; - - list pLMNIdList { - description "A list of PLMN identifiers (Mobile Country Code and Mobile - Network Code)."; - min-elements 1; - key "mcc mnc"; - uses types3gpp:PLMNId; - } - - leaf-list nRTACList { - description "List of Tracking Area Codes (legacy TAC or extended TAC) - where the represented management function is serving."; - reference "TS 38.413 clause 9.3.3.10"; - min-elements 1; - config false; - type types3gpp:Tac; - } - - list sNSSAIList { - description "List of S-NSSAIs the managed object is capable of supporting. - (Single Network Slice Selection Assistance Information) - An S-NSSAI has an SST (Slice/Service type) and an optional SD - (Slice Differentiator) field."; - reference "3GPP TS 23.003"; - key "sd sst"; - uses types5g3gpp:SNssai; - } - - list managedNFProfile { - key idx; - min-elements 1; - max-elements 1; - reference "3GPP TS 23.003"; - uses types3gpp:ManagedNFProfile; - } - - leaf-list supportedBMOList { - type string; - description "List of supported BMOs (Bridge Managed Objects) required - for integration with TSN system."; - } - } - - augment /me3gpp:ManagedElement { - list UPFFunction { - description "5G Core UPF Function"; - reference "3GPP TS 28.541"; - key id; - uses top3gpp:Top_Grp; - container attributes { - uses UPFFunctionGrp; - } - uses mf3gpp:ManagedFunctionContainedClasses; - } - } -} \ No newline at end of file diff --git a/yang-models/_3gpp-common-ep-rp.yang b/yang-models/_3gpp-common-ep-rp.yang deleted file mode 100755 index 0dc1ddc30..000000000 --- a/yang-models/_3gpp-common-ep-rp.yang +++ /dev/null @@ -1,68 +0,0 @@ -module _3gpp-common-ep-rp { - yang-version 1.1; - namespace "urn:3gpp:sa5:_3gpp-common-ep-rp"; - prefix "eprp3gpp"; - - import _3gpp-common-yang-types { prefix types3gpp ; } - import ietf-inet-types { prefix inet; } - import _3gpp-common-measurements { prefix meas3gpp; } - - organization "3GPP SA5"; - contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; - description "Common/basic class/grouping to be inherited/reused. - This IOC represents an end point of a link used across a reference - point between two network entities."; - reference - "3GPP TS 28.622 - Generic Network Resource Model (NRM) - Integration Reference Point (IRP); - Information Service (IS) - - 3GPP TS 28.620 - Umbrella Information Model (UIM)"; - - revision 2020-06-08 { reference "CR-0092"; } - - revision 2019-06-17 { - description "Initial revision"; - } - - grouping EP_RPGrp { - description "Abstract class, represents an end point of a link used - across a reference point between two network entities. - - For naming the subclasses of EP_RP, the following rules shall apply: - - The name of the subclassed IOC shall have the form 'EP_', - where is a string that represents the name of the reference point. - Thus, two valid examples of EP_RP subclassed IOC names would be: - EP_S1 and EP_X2."; - - leaf userLabel { - type string; - description "A user-friendly (and user assignable) name of this object."; - } - - leaf farEndEntity { - config false; - type types3gpp:DistinguishedName; - } - } - - grouping EP_Common { - uses EP_RPGrp; - uses meas3gpp:SupportedPerfMetricGroupGrp; - list localAddress { - description "Local IP address and VLAN ID."; - key "ipAddress vlanId"; - min-elements 1; - max-elements 1; - uses types3gpp:AddressWithVlan; - } - - leaf remoteAddress { - description "Remote IP address."; - mandatory true; - type inet:ip-address; - } - } -} \ No newline at end of file diff --git a/yang-models/_3gpp-common-fm.yang b/yang-models/_3gpp-common-fm.yang deleted file mode 100755 index 10ea1a9c3..000000000 --- a/yang-models/_3gpp-common-fm.yang +++ /dev/null @@ -1,408 +0,0 @@ -module _3gpp-common-fm { - yang-version 1.1; - namespace "urn:3gpp:sa5:_3gpp-common-fm"; - prefix "fm3gpp"; - - import ietf-yang-types { prefix yang; } - import _3gpp-common-top { prefix top3gpp; } - import _3gpp-common-yang-types { prefix types3gpp; } - - organization "3GPP SA5"; - contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; - - description "Defines a Fault Management model"; - - reference "3GPP TS 28.623 - Generic Network Resource Model (NRM) - Integration Reference Point (IRP); - Solution Set (SS) definitions - - 3GPP TS 28.622 - Generic Network Resource Model (NRM) - Integration Reference Point (IRP); - Information Service (IS)"; - - revision 2020-06-03 { reference "CR-0091"; } - revision 2020-02-24 { - reference "S5-201365"; - } - - typedef eventType { - type enumeration { - enum COMMUNICATIONS_ALARM { - value 2; - } - - enum QUALITY_OF_SERVICE_ALARM { - value 3; - } - - enum PROCESSING_ERROR_ALARM { - value 4; - } - - enum EQUIPMENT_ALARM { - value 5; - } - - enum ENVIRONMENTAL_ALARM { - value 6; - } - - enum INTEGRITY_VIOLATION { - value 7; - } - - enum OPERATIONAL_VIOLATION { - value 8; - } - - enum PHYSICAL_VIOLATIONu { - value 9; - } - - enum SECURITY_SERVICE_OR_MECHANISM_VIOLATION { - value 10; - } - - enum TIME_DOMAIN_VIOLATION { - value 11; - } - } - - description "General category for the alarm."; - } - - typedef severity-level { - type enumeration { - enum CRITICAL { value 3; } - enum MAJOR { value 4; } - enum MINOR { value 5; } - enum WARNING { value 6; } - enum INDETERMINATE { value 7; } - enum CLEARED { value 8; } - } - - description "The possible alarm serverities. - Aligned with ERICSSON-ALARM-MIB."; - } - - grouping AlarmRecordGrp { - description "Contains alarm information of an alarmed object instance. - A new record is created in the alarm list when an alarmed object - instance generates an alarm and no alarm record exists with the same - values for objectInstance, alarmType, probableCause and specificProblem. - When a new record is created the MnS producer creates an alarmId, that - unambiguously identifies an alarm record in the AlarmList. - - Alarm records are maintained only for active alarms. Inactive alarms are - automatically deleted by the MnS producer from the AlarmList. - Active alarms are alarms whose - a) perceivedSeverity is not CLEARED, or whose - b) perceivedSeverity is CLEARED and its ackState is not ACKNOWLEDED."; - - leaf alarmId { - type string; - mandatory true; - description "Identifies the alarmRecord"; - } - - leaf objectInstance { - type string; - config false ; - mandatory true; - } - - leaf notificationId { - type string; - config false ; - mandatory true; - } - - leaf alarmRaisedTime { - type yang:date-and-time ; - config false ; - } - - leaf alarmChangedTime { - type yang:date-and-time ; - config false ; - description "not applicable if related alarm has not changed"; - } - - leaf alarmClearedTime { - type yang:date-and-time ; - config false ; - description "not applicable if related alarm was not cleared"; - } - - leaf alarmType { - type eventType; - config false ; - description "General category for the alarm."; - } - - leaf probableCause { - type string; - config false ; - } - - leaf specificProblem { - type string; - config false ; - reference "ITU-T Recommendation X.733 clause 8.1.2.2."; - } - - leaf perceivedSeverity { - type severity-level; - description "This is Writable only if producer supports consumer - to set perceivedSeverity to CLEARED"; - } - - leaf backedUpStatus { - type string; - config false ; - description "Indicates if an object (the MonitoredEntity) has a back - up. See definition in ITU-T Recommendation X.733 clause 8.1.2.4."; - } - - leaf backUpObject { - type string; - config false ; - } - - leaf trendIndication { - type string; - config false ; - description "Indicates if some observed condition is getting better, - worse, or not changing. "; - reference "ITU-T Recommendation X.733 clause 8.1.2.6."; - } - - grouping ThresholdPackGrp { - leaf thresholdLevel { - type string; - } - leaf thresholdValue { - type string; - } - leaf hysteresis { - type string; - description "The hysteresis has a threshold high and a threshold - low value that are different from the threshold value. - A hysteresis, therefore, defines the threshold-high and - threshold-low levels within which the measurementType value is - allowed to oscillate without triggering the threshold crossing - notification."; - } - } - - grouping ThresholdInfoGrp { - leaf measurementType { - type string; - mandatory true; - } - - leaf direction { - type enumeration { - enum INCREASING; - enum DECREASING; - } - mandatory true; - description " - If it is 'Increasing', the threshold crossing notification is - triggered when the measurement value equals or exceeds a - thresholdValue. - - If it is 'Decreasing', the threshold crossing notification is - triggered when the measurement value equals or below a - thresholdValue."; - } - - uses ThresholdPackGrp; - } - - list thresholdInfo { - config false ; - uses ThresholdInfoGrp; - } - - leaf stateChangeDefinition { - type string; - config false ; - description "Indicates MO attribute value changes. See definition - in ITU-T Recommendation X.733 clause 8.1.2.11."; - } - - leaf monitoredAttributes { - type string; - config false ; - description "Indicates MO attributes whose value changes are being - monitored. See definition in ITU-T Recommendation X.733 clause 8.1.2.11."; - } - - leaf proposedRepairActions { - type string; - config false ; - description "Indicates proposed repair actions. See definition in - ITU-T Recommendation X.733 clause 8.1.2.12."; - } - - leaf additionalText { - type string; - config false ; - } - - leaf additionalInformation { - type string; - config false ; - } - - leaf rootCauseIndicator { - type enumeration { - enum YES; - enum NO; - } - config false ; - description "It indicates that this AlarmInformation is the root cause - of the events captured by the notifications whose identifiers are in - the related CorrelatedNotification instances."; - } - - leaf ackTime { - type yang:date-and-time ; - config false ; - description "It identifies the time when the alarm has been - acknowledged or unacknowledged the last time, i.e. it registers the - time when ackState changes."; - } - - leaf ackUserId { - type string; - description "It identifies the last user who has changed the - Acknowledgement State."; - } - - leaf ackSystemId { - type string; - description "It identifies the system (Management System) that last - changed the ackState of an alarm, i.e. acknowledged or unacknowledged - the alarm."; - } - - leaf ackState { - type enumeration { - enum ACKNOWLEDGED { - description "The alarm has been acknowledged."; - } - enum UNACKNOWLEDGED { - description "The alarm has unacknowledged or the alarm has never - been acknowledged."; - } - } - } - - leaf clearUserId { - type string; - description "Carries the identity of the user who invokes the - clearAlarms operation."; - } - - leaf clearSystemId { - type string; - } - - leaf serviceUser { - type string; - config false ; - description "It identifies the service-user whose request for service - provided by the serviceProvider led to the generation of the - security alarm."; - } - - leaf serviceProvider { - type string; - config false ; - description "It identifies the service-provider whose service is - requested by the serviceUser and the service request provokes the - generation of the security alarm."; - } - - leaf securityAlarmDetector { - type string; - config false ; - } - } - - grouping AlarmListGrp { - description "Represents the AlarmList IOC."; - - leaf administrativeState { - type types3gpp:AdministrativeState ; - default LOCKED; - description "When set to UNLOCKED, the alarm list is updated. - When the set to LOCKED, the existing alarm records are not - updated, and new alarm records are not added to the alarm list."; - } - - leaf operationalState { - type types3gpp:OperationalState ; - default DISABLED; - config false; - description "The producer sets this attribute to ENABLED, indicating - that it has the resource and ability to record alarm in AlarmList - else, it sets the attribute to DISABLED."; - } - - leaf numOfAlarmRecords { - type uint32 ; - config false; - mandatory true; - description "The number of alarm records in the AlarmList"; - } - - leaf lastModification { - type yang:date-and-time ; - config false; - description "The last time when an alarm record was modified"; - } - - list alarmRecords { - key alarmId; - description "List of alarmRecords"; - uses AlarmRecordGrp; - } - } - - grouping FmSubtree { - description "Contains FM related classes. - Should be used in all classes (or classes inheriting from) - - SubNetwork - - ManagedElement - - If some YAM wants to augment these classes/list/groupings they must - augment all user classes!"; - - list AlarmList { - key id; - max-elements 1; - description "The AlarmList represents the capability to store and manage - alarm records. The management scope of an AlarmList is defined by all - descendant objects of the base managed object, which is the object - name-containing the AlarmList, and the base object itself. - - AlarmList instances are created by the system or are pre-installed. - They cannot be created nor deleted by MnS consumers. - - When the alarm list is locked or disabled, the existing alarm records - are not updated, and new alarm records are not added to the alarm list"; - - - uses top3gpp:Top_Grp ; - container attributes { - uses AlarmListGrp ; - } - } - } - -} \ No newline at end of file diff --git a/yang-models/_3gpp-common-managed-element.yang b/yang-models/_3gpp-common-managed-element.yang deleted file mode 100755 index 33acde382..000000000 --- a/yang-models/_3gpp-common-managed-element.yang +++ /dev/null @@ -1,248 +0,0 @@ -module _3gpp-common-managed-element { - yang-version 1.1; - namespace urn:3gpp:sa5:_3gpp-common-managed-element; - prefix "me3gpp"; - - import _3gpp-common-yang-types { prefix types3gpp ; } - import _3gpp-common-top { prefix top3gpp; } - import _3gpp-common-measurements { prefix meas3gpp; } - import _3gpp-common-subscription-control { prefix subscr3gpp; } - import _3gpp-common-fm { prefix fm3gpp; } - import _3gpp-common-trace { prefix trace3gpp; } - - organization "3GPP SA5"; - contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; - - description "Defines ManagedElement which will be augmented - by other IOCs"; - reference "3GPP TS 28.623 - Generic Network Resource Model (NRM) - Integration Reference Point (IRP); - Solution Set (SS) definitions - - 3GPP TS 28.622 - Generic Network Resource Model (NRM) - Integration Reference Point (IRP); - Information Service (IS) - - 3GPP TS 28.620 - Umbrella Information Model (UIM)"; - - revision 2021-01-16 { reference "CR-0120"; } - revision 2020-08-06 { reference "CR-0102"; } - revision 2020-08-03 { reference "CR-0095"; } - revision 2020-06-08 { reference "CR-0092"; } - revision 2020-05-12 { reference "CR0084"; } - revision 2020-02-24 { reference "S5-201365"; } - revision 2019-06-17 { reference " S5-203316"; } - revision 2019-05-08 { reference "Initial revision"; } - - feature MeasurementsUnderManagedElement { - description "The MeasurementSubtree shall be contained under - ManagedElement"; - } - - feature SubscriptionControlUnderManagedElement { - description "The SubscriptionControlSubtree shall be contained under - ManagedElement"; - } - - feature FmUnderManagedElement { - description "The FmSubtree shall be contained under ManagedElement"; - } - - feature TraceUnderManagedElement { - description "The TraceSubtree shall be contained under ManageElement"; - } - - feature DESManagementFunction { - description "Class representing Distributed SON or Domain-Centralized SON - Energy Saving feature. The DESManagementFunction shall be contained under - ManagedElement."; - } - - feature DMROFunction { - description "Class representing D-SON function of MRO feature. The - DMROFunction shall be contained under ManagedElement."; - } - - feature DRACHOptimizationFunction { - description "Class representing D-SON function of RACH optimization - feature. The DRACHOptimizationFunction shall be contained under - ManagedElement."; - } - - feature DPCIConfigurationFunction { - description "Class representing Distributed SON or Domain-Centralized SON - function of PCI configuration feature. The DPCIConfigurationFunction shall - be contained under ManagedElement."; - } - - feature CPCIConfigurationFunction { - description "Class representing Cross Domain-Centralized SON function of PCI - configuration feature. The CPCIConfigurationFunction shall be contained - under ManagedElement."; - } - - feature CESManagementFunction { - description "Class representing Cross Domain-Centralized SON Energy Saving - feature. The CESManagementFunction shall be contained under - ManagedElement."; - } - - grouping ManagedElement_Grp { - description "Abstract class representing telecommunications resources. - An ME communicates with a manager (directly or indirectly) for the - purpose of being monitored and/or controlled. MEs may perform element - management functionality. - An ME (and its contained Function_(s)) may or may not be geographically - distributed. An ME (and its contained Function_(s)) is often referred - to as a Network Element"; - - leaf dnPrefix { - description "Provides naming context that allows the Managed - Elements to be partitioned into logical domains. - A Distingushed Name(DN) is defined by 3GPP TS 32.300, - which splits the DN into a DN Prefix and Local DN"; - type types3gpp:DistinguishedName; - } - - leaf userLabel { - description "A user-friendly (and user assignable) name of this object."; - type string; - } - - leaf locationName { - description "The physical location (e.g. an address) of an entity - represented by a (derivative of) ManagedElement_. It may contain no - information to support the case where the derivative of - ManagedElement_ needs to represent a distributed multi-location NE."; - config false; - type string; - } - - leaf-list managedBy { - description "Relates to the role played by ManagementSystem_ in the - between ManagedSystem_ and ManagedElement_. This attribute contains - a list of the DN(s) of the related subclasses of - ManagementSystem_ instance(s)."; - - config false; - type types3gpp:DistinguishedName; - } - - leaf-list managedElementTypeList { - description "The type of functionality provided by the ManagedElement. - It may represent one ME functionality or a combination of - more than one functionality. - 1) The allowed values of this attribute are the names of the IOC(s) - that are (a) derived/subclassed from ManagedFunction and (b) directly - name-contained by ManagedElement IOC (on the first level below - ManagedElement), but with the string 'Function' excluded. - 2) If a ManagedElement contains multiple instances of a ManagedFunction - this attribute will not contain repeated values. - 3) The capitalisation (usage of upper/lower case) of characters in this - attribute is insignificant. Thus, the NodeB should be case insensitive - when reading these values. - 4) Two examples of allowed values are: - - NodeB; - - HLR, VLR."; - - config false; - min-elements 1; - type string; - } - } - - grouping ManagedElementGrp { - description "Represents telecommunications equipment or - TMN entities within the telecommunications network providing support - and/or service to the subscriber."; - - uses ManagedElement_Grp; - uses meas3gpp:SupportedPerfMetricGroupGrp; - - leaf vendorName { - config false; - type string; - } - - leaf userDefinedState { - type string; - description "An operator defined state for operator specific usage"; - } - - leaf swVersion { - config false; - type string; - } - - leaf priorityLabel { - type uint32; - mandatory true; - } - } - - list ManagedElement { - description "Represents telecommunications equipment or TMN entities within - the telecommunications network providing support and/or service to the - subscriber. An ManagedElement IOC is used to represent a Network Element - defined in TS 32.101 including virtualizeation or non-virtualization - scenario. An ManagedElement instance is used for communicating with a - manager (directly or indirectly) over one or more management interfaces - for the purpose of being monitored and/or controlled. ManagedElement may - or may not additionally perform element management functionality. - An ManagedElement contains equipment that may or may not be geographically - distributed. - - A telecommunication equipment has software and hardware components. The - ManagedElement IOC described above represents following two case: - - In the case when the software component is designed to run on dedicated - hardware component, the ManagedElement IOC description includes both - software and hardware components. - - In the case when the software is designed to run on ETSI NFV defined - NFVI [15], the ManagedElement IOC description would exclude the NFVI - component supporting the above mentioned subject software. - - A ManagedElement may be contained in either a SubNetwork or in a MeContext - instance. A single ManagedElement may also exist stand-alone with no - parent at all. - - The relation of ManagedElement IOC and ManagedFunction IOC can be - described as following: - - A ManaagedElement instance may have 1..1 containment relationship to a - ManagedFunction instance. In this case, the ManagedElement IOC may be - used to represent a NE with single functionality. For example, a - ManagedElement is used to represent the 3GPP defined RNC node; - - A ManagedElement instance may have 1..N containment relationship to - multiple ManagedFunction IOC instances. In this case, the ManagedElement - IOC may be used to represent a NE with combined ManagedFunction - funcationality (as indicated by the managedElementType attribute and the - contained instances of different ManagedFunction IOCs).For example, a - ManagedElement is used to represent the combined functionality of 3GPP - defined gNBCUCPFuntion, gNBCUUPFunction and gNBDUFunction"; - - key id; - uses top3gpp:Top_Grp; - container attributes { - uses ManagedElementGrp; - } - - uses meas3gpp:MeasurementSubtree { - if-feature MeasurementsUnderManagedElement; - } - - uses subscr3gpp:SubscriptionControlSubtree { - if-feature SubscriptionControlUnderManagedElement; - } - - uses fm3gpp:FmSubtree { - if-feature FmUnderManagedElement; - } - - uses trace3gpp:TraceSubtree { - if-feature TraceUnderManagedElement; - } - - } -} \ No newline at end of file diff --git a/yang-models/_3gpp-common-managed-function.yang b/yang-models/_3gpp-common-managed-function.yang deleted file mode 100755 index a46d86482..000000000 --- a/yang-models/_3gpp-common-managed-function.yang +++ /dev/null @@ -1,311 +0,0 @@ -module _3gpp-common-managed-function { - yang-version 1.1; - namespace urn:3gpp:sa5:_3gpp-common-managed-function; - prefix mf3gpp; - - import _3gpp-common-yang-types { prefix types3gpp; } - import _3gpp-common-top { prefix top3gpp; } - import _3gpp-common-measurements { prefix meas3gpp; } - import _3gpp-common-trace { prefix trace3gpp; } - - organization "3GPP SA5"; - contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; - description "The module defines a base class/grouping for major 3GPP - functions."; - reference - "3GPP TS 28.622 - Generic Network Resource Model (NRM) - Integration Reference Point (IRP); - Information Service (IS) - - 3GPP TS 28.620 - Umbrella Information Model (UIM)"; - - revision 2021-01-25 { reference "CR-0122"; } - revision 2020-09-30 { reference "CR-bbbb"; } - revision 2020-08-06 { reference "CR-0102"; } - revision 2020-08-03 { reference "CR-0095"; } - revision 2020-06-23 { reference "CR-085"; } - revision 2020-06-08 { reference "CR-0092"; } - revision 2019-11-21 { reference "S5-197275, S5-197735"; } - revision 2019-10-28 { reference S5-193518 ; } - revision 2019-06-18 { reference "Initial revision"; } - - feature MeasurementsUnderManagedFunction { - description "The MeasurementSubtree shall be contained under ManageElement"; - } - - feature TraceUnderManagedFunction { - description "The TraceSubtree shall be contained under ManagedFunction"; - } - - grouping Operation { - description "This data type represents an Operation."; - reference "3gpp TS 28.622"; - - leaf name { - type string; - mandatory true; - } - - leaf-list allowedNFTypes { - type string; - min-elements 1; - description "The type of the managed NF service instance - The specifc values allowed are described in TS 23.501"; - } - - leaf operationSemantics { - type enumeration { - enum REQUEST_RESPONSE; - enum SUBSCRIBE_NOTIFY; - - } - config false; - mandatory true; - description "Semantics type of the operation."; - reference "3GPP TS 23.502"; - } - } - - grouping ManagedNFServiceGrp { - description "A ManagedNFService represents a Network Function (NF) service."; - reference "Clause 7 of 3GPP TS 23.501."; - - leaf userLabel { - type string; - description "A user-friendly (and user assignable) name of this object."; - } - - leaf nFServiceType { - config false; - mandatory true; - type string; - description "The type of the managed NF service instance - The specifc values allowed are described in clause 7.2 of TS 23.501"; - } - - list sAP { - key "host port"; - min-elements 1; - max-elements 1; - description "The service access point of the managed NF service instance"; - uses types3gpp:SAP; - } - - list operations { - key name; - min-elements 1; - uses Operation ; - description "Set of operations supported by the managed NF - service instance"; - } - - leaf administrativeState { - type types3gpp:AdministrativeState; - mandatory true; - description "Permission to use or prohibition against using the instance"; - } - - leaf operationalState { - type types3gpp:OperationalState; - config false; - mandatory true; - description "Describes whether the resource is installed and working"; - } - - leaf usageState { - type types3gpp:usageState ; - config false; - mandatory true; - description "Describes whether the resource is actively in use at a - specific instant, and if so, whether or not it has spare - capacity for additional users."; - } - - leaf registrationState { - type enumeration { - enum REGISTERED; - enum DEREGISTERED; - } - config false; - } - } - - grouping Function_Grp { - description "A base grouping for 3GPP functions."; - - leaf userLabel { - type string; - description "A user-friendly (and user assignable) name of this object."; - } - } - - grouping ManagedFunctionGrp { - description "Abstract root class to be inherited/reused by classes - representing 3GPP functions. - - Anywhere this grouping is used by classes inheriting from ManagedFunction - the list representing the inheriting class needs to include all - contained classes of ManagedFunction too. Contained classes are - either - - augmented into the Function class or - - shall be included in the list representing the inheriting class - using the grouping ManagedFunctionContainedClasses: - 1) EP_RP solved using augment - 2) uses mf3gpp:ManagedFunctionContainedClasses; - "; - - uses Function_Grp; - - list vnfParametersList { - key vnfInstanceId; - description "Contains the parameter set of the VNF - instance(s) corresponding to an NE. - The presence of this list indicates that the ManagedFunction - represented is realized by one or more VNF instance(s). Otherwise it - shall be absent. - The presence of a vnfParametersList entry, whose vnfInstanceId with a - string length of zero, in createMO operation can trigger the - instantiation of the related VNF/VNFC instances."; - - leaf vnfInstanceId { - type string ; - description "VNF instance identifier"; - reference "ETSI GS NFV-IFA 008 v2.1.1: - Network Functions Virtualisation (NFV); Management and Orchestration; - Ve-Vnfm reference point - Interface and Information Model Specification - section 9.4.2 - - ETSI GS NFV-IFA 015 v2.1.2: Network Functions Virtualisation (NFV); - Management and Orchestration; Report on NFV Information Model - section B2.4.2.1.2.3"; - } - - leaf vnfdId { - type string ; - description "Identifier of the VNFD on which the VNF instance is based. - The absence of the leaf or a string length of zero for vnfInstanceId - means the VNF instance(s) does not exist (e.g. has not been - instantiated yet, has already been terminated)."; - reference "ETSI GS NFV-IFA 008 v2.1.1: - Network Functions Virtualisation (NFV); Management and Orchestration; - Ve-Vnfm reference point - Interface and Information Model Specification - section 9.4.2"; - } - - leaf flavourId { - type string ; - description "Identifier of the VNF Deployment Flavour applied to this - VNF instance."; - reference "ETSI GS NFV-IFA 008 v2.1.1: - Network Functions Virtualisation (NFV) Management and Orchestration"; - } - - leaf autoScalable { - type boolean ; - mandatory true; - description "Indicator of whether the auto-scaling of this - VNF instance is enabled or disabled."; - } - } - - list peeParametersList { - key idx; - description "Contains the parameter set for the control - and monitoring of power, energy and environmental parameters of - ManagedFunction instance(s)."; - - leaf idx { type uint32; } - - leaf siteIdentification { - type string; - mandatory true; - description "The identification of the site where the - ManagedFunction resides."; - } - - leaf siteLatitude { - type decimal64 { - fraction-digits 4; - range "-90.0000..+90.0000"; - } - description "The latitude of the site where the ManagedFunction - instance resides, based on World Geodetic System (1984 version) - global reference frame (WGS 84). Positive values correspond to - the northern hemisphere. This attribute is optional in case of - BTSFunction and RNCFunction instance(s)."; - } - - leaf siteLongitude { - type decimal64 { - fraction-digits 4; - range "-180.0000..+180.0000"; - } - description "The longitude of the site where the ManagedFunction - instance resides, based on World Geodetic System (1984 version) - global reference frame (WGS 84). Positive values correspond to - degrees east of 0 degrees longitude. This attribute is optional in - case of BTSFunction and RNCFunction instance(s)."; - } - - leaf siteDescription { - type string; - mandatory true; - description "An operator defined description of the site where - the ManagedFunction instance resides."; - } - - leaf equipmentType { - type string; - mandatory true; - description "The type of equipment where the managedFunction - instance resides."; - reference "clause 4.4.1 of ETSI ES 202 336-12"; - } - - leaf environmentType { - type string; - mandatory true; - description "The type of environment where the managedFunction - instance resides."; - reference "clause 4.4.1 of ETSI ES 202 336-12"; - } - - leaf powerInterface { - type string; - mandatory true; - description "The type of power."; - reference "clause 4.4.1 of ETSI ES 202 336-12"; - } - } - - leaf priorityLabel { - mandatory true; - type uint32; - } - uses meas3gpp:SupportedPerfMetricGroupGrp; - } - - grouping ManagedFunctionContainedClasses { - description "A grouping used to containe classes (lists) contained by - the abstract IOC ManagedFunction"; - list ManagedNFService { - description "Represents a Network Function (NF)"; - reference "3GPP TS 23.501"; - key id; - uses top3gpp:Top_Grp; - container attributes { - uses ManagedNFServiceGrp; - } - } - - uses meas3gpp:MeasurementSubtree { - if-feature MeasurementsUnderManagedFunction ; - } - - uses trace3gpp:TraceSubtree { - if-feature TraceUnderManagedFunction ; - } - } -} \ No newline at end of file diff --git a/yang-models/_3gpp-common-measurements.yang b/yang-models/_3gpp-common-measurements.yang deleted file mode 100755 index 30627565c..000000000 --- a/yang-models/_3gpp-common-measurements.yang +++ /dev/null @@ -1,542 +0,0 @@ -module _3gpp-common-measurements { - yang-version 1.1; - namespace "urn:3gpp:sa5:_3gpp-common-measurements"; - prefix "meas3gpp"; - - import _3gpp-common-top { prefix top3gpp; } - import _3gpp-common-yang-types { prefix types3gpp; } - - organization "3GPP SA5"; - contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; - - description "Defines Measurement and KPI related groupings - Any list/class intending to use this should include 2 or 3 uses statements - controlled by a feature: - - A) -+++ feature MeasurementsUnderMyClass { -+++ description 'Indicates whether measurements and/or KPIs are supported -+++ for this class.'; -+++ } - - B) include the attribute measurementsList and/or kPIsList indicating the - supported measurment and KPI types and GPs. Note that for classes - inheriting from ManagedFunction, EP_RP or SubNetwork these attributes are - already inherited, so there is no need to include them once more. E.g. - -+++ grouping MyClassGrp { -+++ uses meas3gpp:SupportedPerfMetricGroup; -+++ } - - C) include the class PerfmetricJob to control the measurements/KPIs. E.g. - - list MyClass { - container attributes { - uses MyClassGrp; - } -+++ uses meas3gpp:MeasurementSubtree { -+++ if-feature MeasurementsUnderMyClass ; -+++ } - } - - Measurements can be contained under ManagedElement, SubNetwork, or - any list representing a class inheriting from Subnetwork or - ManagedFunction. Note: KPIs will only be supported under SubNetwork"; - - reference "3GPP TS 28.623 - Generic Network Resource Model (NRM) - Integration Reference Point (IRP); - Solution Set (SS) definitions - - 3GPP TS 28.622 - Generic Network Resource Model (NRM) - Integration Reference Point (IRP); - Information Service (IS)"; - - revision 2020-11-06 { reference "CR-0118"; } - revision 2020-09-04 { reference "CR-000107"; } - revision 2020-06-08 { reference "CR-0092"; } - revision 2020-05-31 { reference "CR-0084"; } - revision 2020-03-11 { reference "S5-201581, SP-200229"; } - revision 2019-11-21 { reference "S5-197275, S5-197735"; } - revision 2019-10-28 { reference "S5-193516"; } - revision 2019-06-17 { } - - grouping ThresholdInfoGrp { - description "Defines a single threshold level."; - - leaf-list measurementTypes { - type string; - description "The Measurement type can be those specified in TS 28.552, - TS 32.404 and can be those specified by other SDOs or can be - vendor-specific."; - } - - leaf thresholdLevel { - type uint64; - mandatory true; - description "Number (key) for a single threshold in the threshold list - applicable to the monitored performance metric."; - } - - leaf thresholdDirection { - type enumeration { - enum UP; - enum DOWN; - enum UP_AND_DOWN; - } - must '. = "UP_AND_DOWN" or not(../hysteresis)' { - error-message "In case a threshold with hysteresis is configured, the " - +"threshold direction attribute shall be set to 'UP_AND_DOWN'."; - } - mandatory true; - description "Direction of a threshold indicating the direction for which - a threshold crossing triggers a threshold. - - When the threshold direction is configured to 'UP', the associated - treshold is triggered only when the performance metric value is going - up upon reaching or crossing the threshold value. The treshold is not - triggered, when the performance metric is going down upon reaching or - crossing the threshold value. - - Vice versa, when the threshold direction is configured to 'DOWN', the - associated treshold is triggered only when the performance metric is - going down upon reaching or crossing the threshold value. The treshold - is not triggered, when the performance metric is going up upon reaching - or crossing the threshold value. - - When the threshold direction is set to 'UP_AND_DOWN' the treshold is - active in both direcions. - - In case a threshold with hysteresis is configured, the threshold - direction attribute shall be set to 'UP_AND_DOWN'."; - } - - leaf thresholdValue { - type union { - type int64; - type decimal64 { - fraction-digits 2; - } - } - mandatory true; - description "Value against which the monitored performance metric is - compared at a threshold level in case the hysteresis is zero"; - } - - leaf hysteresis { - type union { - type uint64; - type decimal64 { - fraction-digits 2; - range "0..max"; - } - } - description "Hysteresis of a threshold. If this attribute is present - the monitored performance metric is not compared against the - threshold value as specified by the thresholdValue attribute but - against a high and low threshold value given by - - threshold-high = thresholdValue + hysteresis - threshold-low = thresholdValue - hysteresis - - When going up, the threshold is triggered when the performance metric - reaches or crosses the high threshold value. When going down, the - hreshold is triggered when the performance metric reaches or crosses - the low threshold value. - - A hysteresis may be present only when the monitored performance - metric is not of type counter that can go up only. If present - for a performance metric of type counter, it shall be ignored."; - } - } - - grouping SupportedPerfMetricGroupGrp { - list SupportedPerfMetricGroup { - config false; - description "Captures a group of supported performance metrics and - associated parameters related to their production and reporting. - A SupportedPerfMetricGroup attribute which is part of an MOI may - define performanceMetrics for any MOI under the subtree contained - under that MOI, e.g. SupportedPerfMetricGroup on a ManagedElement - can specify supported metrics for contained ManagedFunctions - like a GNBDUFunction."; - - leaf-list performanceMetrics { - type string; - min-elements 1; - description "Performance metrics include measurements defined in - TS 28.552 and KPIs defined in TS 28.554. Performance metrics can - also be those specified by other SDOs or vendor specific metrics. - Performance metrics are identfied with their names. A name can also - identify a vendor specific group of performance metrics. - - For measurements defined in TS 28.552 the name is constructed as - follows: - - 'family.measurementName.subcounter' for measurement types with - subcounters - - 'family.measurementName' for measurement types without subcounters - - 'family' for measurement families - - For KPIs defined in TS 28.554 the name is defined in the KPI - definitions template as the component designated with e)."; - } - - leaf-list granularityPeriods { - type uint32 { - range 1..max ; - } - units seconds; - } - - leaf-list reportingMethods { - type enumeration { - enum FILE_BASED_LOC_SET_BY_PRODUCER; - enum FILE_BASED_LOC_SET_BY_CONSUMER; - enum STREAM_BASED; - } - min-elements 1; - } - - leaf-list monitorGranularityPeriods { - type uint32 { - range 1..max ; - } - units seconds; - description "Granularity periods supported for the monitoring of - associated measurement types for thresholds"; - } - } - } - - grouping PerfMetricJobGrp { - description "Represents the attributtes of the IOC PerfMetricJob"; - - leaf administrativeState { - default UNLOCKED; - type types3gpp:AdministrativeState ; - description "Enable or disables production of the metrics"; - } - - leaf operationalState { - config false; - mandatory true; - type types3gpp:OperationalState ; - description "Indicates whether the PerfMetricJob is working."; - } - - leaf jobId { - type string; - description "Id for a PerfMetricJob job."; - } - - leaf-list performanceMetrics { - type string; - min-elements 1; - description "Performance metrics include measurements defined in - TS 28.552 and KPIs defined in TS 28.554. Performance metrics can - also be those specified by other SDOs or vendor specific metrics. - Performance metrics are identfied with their names. A name can also - identify a vendor specific group of performance metrics. - - For measurements defined in TS 28.552 the name is constructed as - follows: - - 'family.measurementName.subcounter' for measurement types with - subcounters - - 'family.measurementName' for measurement types without subcounters - - 'family' for measurement families - - For KPIs defined in TS 28.554 the name is defined in the KPI - definitions template as the component designated with e)."; - } - - leaf granularityPeriod { - type uint32 { - range 1..max ; - } - units seconds; - mandatory true; - description "Granularity period used to produce measurements. The value - must be one of the supported granularity periods for the metric."; - } - - leaf-list objectInstances { - type types3gpp:DistinguishedName; - } - - leaf-list rootObjectInstances { - type types3gpp:DistinguishedName; - description "Each object instance designates the root of a subtree that - contains the root object and all descendant objects."; - } - - choice reportingCtrl { - mandatory true; - description "This choice defines the method for reporting collected - performance metrics to MnS consumers as well as the parameters for - configuring the reporting function. It is a choice between the control - parameter required for the reporting methods, whose presence selects - the reporting method as follows: - - When only the fileReportingPeriod attribute is present, the MnS - producer shall store files on the MnS producer at a location selected - by the MnS producer and inform the MnS consumer about the availability - of new files and the file location using the notifyFileReady - notification. - - When only the fileReportingPeriod and fileLocation attributes are - present, the MnS producer shall store the files on the MnS consumer at - the location specified by fileLocation. No notification is emitted by - the MnS producer. - - When only the streamTarget attribute is present, the MnS producer - shall stream the data to the location specified by streamTarget. - - For the file-based reporting methods the fileReportingPeriod attribute - specifies the time window during which collected measurements are stored - into the same file before the file is closed and a new file is opened."; - - case file-based-reporting { - leaf fileReportingPeriod { - type uint32 { - range 1..max; - } - units minutes; - must '(number(.)*"60") mod number(../granularityPeriod) = "0"' { - error-message - "The time-period must be a multiple of the granularityPeriod."; - } - mandatory true; - description "For the file-based reporting method this is the time - window during which collected measurements are stored into the same - file before the file is closed and a new file is opened. - The time-period must be a multiple of the granularityPeriod. - - Applicable when the file-based reporting method is supported"; - } - - leaf fileLocation { - type string ; - description "Applicable and must be present when the file-based - reporting method is supported, and the files are stored on the MnS - consumer."; - } - } - case stream-based-reporting { - leaf streamTarget { - type string; - mandatory true; - description "Applicable when stream-based reporting method is - supported."; - } - } - } - } - - - grouping ThresholdMonitorGrp { - description "A threshold monitor that is created by the consumer for - the monitored entities whose measurements are required by consumer - to monitor."; - - leaf administrativeState { - default UNLOCKED; - type types3gpp:AdministrativeState ; - description "Enables or disables the ThresholdMonitor."; - } - - leaf operationalState { - config false; - mandatory true; - type types3gpp:OperationalState ; - description "Indicates whether the ThresholdMonitor is working."; - } - - list thresholdInfoList { - key idx; - min-elements 1; - leaf idx { type uint32 ; } - uses ThresholdInfoGrp; - } - - leaf monitorGranularityPeriod { - type uint32 { - range "1..max"; - } - units second; - mandatory true; - description " Granularity period used to monitor measurements for - threshold crossings. "; - } - - leaf-list objectInstances { - type types3gpp:DistinguishedName; - } - - leaf-list rootObjectInstances { - type types3gpp:DistinguishedName; - description "Each object instance designates the root of a subtree that - contains the root object and all descendant objects."; - } - } - - grouping MeasurementSubtree { - description "Contains classes that define measurements. - Should be used in all classes (or classes inheriting from) - - SubNnetwork - - ManagedElement - - ManagedFunction - - If a YANG module wants to augment these classes/list/groupings they must - augment all user classes! - - If a class uses this grouping in its list it shall also use the - grouping SupportedPerfMetricGroupGrp to add SupportedPerfMetricGroup as - an attribute to its grouping"; - - list PerfMetricJob { - description "This IOC represents a performance metric production job. It - can be name-contained by SubNetwork, ManagedElement, or ManagedFunction. - - To activate the production of the specified performance metrics, a MnS - consumer needs to create a PerfMetricJob instance on the MnS producer - and ensure that the adminState is sUNLOCKED>. - For ultimate deactivation of metric production, the MnS consumer should - delete the job to free up resources on the MnS producer. - - For temporary suspension of metric production, the MnS consumer can - manipulate the value of the administrative state attribute. The MnS - producer may disable metric production as well, for example in overload - situations. This situation is indicated by the MnS producer with setting - the operational state attribute to disabled. When production is resumed - the operational state is set again to enabled. - - The jobId attribute can be used to associate metrics from multiple - PerfMetricJob instances. The jobId can be included when reporting - performance metrics to allow a MnS consumer to associate received - metrics for the same purpose. For example, it is possible to configure - the same jobId value for multiple PerfMetricJob instances required to - produce the measurements for a specific KPI. - - The attribute performanceMetrics defines the performance metrics to be - produced and the attribute granularityPeriod defines the granularity - period to be applied. - - All object instances below and including the instance name-containing - the PerfMetricJob (base object instance) are scoped for performance - metric production. Performance metrics are produced only on those object - instances whose object class matches the object class associated to the - performance metrics to be produced. - - The attributes objectInstances and rootObjectInstances allow to restrict - the scope. When the attribute objectInstances is present, only the object - instances identified by this attribute are scoped. When the attribute - rootObjectInstances is present, then the subtrees whose root objects are - identified by this attribute are scoped. Both attributes may be present - at the same time meaning the total scope is equal to the sum of both - scopes. Object instances may be scoped by both the objectInstances and - rootObjectInstances attributes. This shall not be considered as an error - by the MnS producer. - - When the performance metric requires performance metric production on - multiple managed objects, which is for example the case for KPIs, the - MnS consumer needs to ensure all required objects are scoped. Otherwise - a PerfMetricJob creation request shall fail. - - The attribute reportingCtrl specifies the method and associated control - parameters for reporting the produced measurements to MnS consumers. - Three methods are available: file-based reporting with selection of the - file location by the MnS producer, file-based reporting with selection - of the file location by the MnS consumer and stream-based reporting. - - A PerfMetricJob creation request shall fail, when the requested - performance metrics, the requested granularity period, the requested - repoting method, or the requested combination thereof is not supported - by the MnS producer. - - Creation and deletion of PerfMetricJob instances by MnS consumers is - optional; when not supported, PerfMetricJob instances may be created and - deleted by the system or be pre-installed."; - - key id; - uses top3gpp:Top_Grp ; - container attributes { - uses PerfMetricJobGrp ; - } - } - - list ThresholdMonitor { - key id; - description "Represents a threshold monitor for performance metrics. - It can be contained by SubNetwork, ManagedElement, or ManagedFunction. - A threshold monitor checks for threshold crossings of performance metric - values and generates a notification when that happens. - - To activate threshold monitoring, a MnS consumer needs to create a - ThresholdMonitor instance on the MnS producer. For ultimate deactivation - of threshold monitoring, the MnS consumer should delete the monitor to - free up resources on the MnS producer. - - For temporary suspension of threshold monitoring, the MnS consumer can - manipulate the value of the administrative state attribute. The MnS - producer may disable threshold monitoring as well, for example in - overload situations. This situation is indicated by the MnS producer with - setting the operational state attribute to disabled. When monitoring is - resumed the operational state is set again to enabled. - - All object instances below and including the instance containing the - ThresholdMonitor (base object instance) are scoped for performance - metric production. Performance metrics are monitored only on those - object instances whose object class matches the object class associated - to the performance metrics to be monitored. - - The optional attributes objectInstances and rootObjectInstances allow to - restrict the scope. When the attribute objectInstances is present, only - the object instances identified by this attribute are scoped. When the - attribute rootObjectInstances is present, then the subtrees whose root - objects are identified by this attribute are scoped. Both attributes may - be present at the same time meaning the total scope is equal to the sum - of both scopes. Object instances may be scoped by both the objectInstances - and rootObjectInstances attributes. This shall not be considered as an - error by the MnS producer. - - Multiple thresholds can be defined for multiple performance metric sets - in a single monitor using thresholdInfoList. The attribute - monitorGranularityPeriod defines the granularity period to be applied. - - Each threshold is identified with a number (key) called thresholdLevel. - A threshold is defined using the attributes thresholdValue , - thresholdDirection and hysteresis. - - When hysteresis is absent or carries no information, a threshold is - triggered when the thresholdValue is reached or crossed. When hysteresis - is present, two threshold values are specified for the threshold as - follows: A high treshold value equal to the threshold value plus the - hysteresis value, and a low threshold value equal to the threshold value - minus the hysteresis value. When the monitored performance metric - increases, the threshold is triggered when the high threshold value is - reached or crossed. When the monitored performance metric decreases, the - threshold is triggered when the low threshold value is reached or crossed. - The hsyteresis ensures that the performance metric value can oscillate - around a comparison value without triggering each time the threshold when - the threshold value is crossed. - - Using the thresholdDirection attribute a threshold can be configured in - such a manner that it is triggered only when the monitored performance - metric is going up or down upon reaching or crossing the threshold. - - A ThresholdMonitor creation request shall be rejected, if the performance - metrics requested to be monitored, the requested granularity period, or - the requested combination thereof is not supported by the MnS producer. - A creation request may fail, when the performance metrics requested to be - monitored are not produced by a PerfMetricJob. - - Creation and deletion of ThresholdMonitor instances by MnS consumers is - optional; when not supported, ThresholdMonitor instances may be created - and deleted by the system or be pre-installed."; - - - uses top3gpp:Top_Grp ; - container attributes { - uses ThresholdMonitorGrp ; - } - } - } -} \ No newline at end of file diff --git a/yang-models/_3gpp-common-subnetwork.yang b/yang-models/_3gpp-common-subnetwork.yang deleted file mode 100755 index 36776b38a..000000000 --- a/yang-models/_3gpp-common-subnetwork.yang +++ /dev/null @@ -1,214 +0,0 @@ -module _3gpp-common-subnetwork { - yang-version 1.1; - namespace "urn:3gpp:sa5:_3gpp-common-subnetwork"; - prefix "subnet3gpp"; - - import _3gpp-common-yang-types { prefix types3gpp; } - import _3gpp-common-top { prefix top3gpp; } - import _3gpp-common-measurements { prefix meas3gpp; } - import _3gpp-common-subscription-control { prefix subscr3gpp; } - import _3gpp-common-fm { prefix fm3gpp; } - import _3gpp-common-trace { prefix trace3gpp; } - import ietf-yang-schema-mount { prefix yangmnt; } - - organization "3GPP SA5"; - contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; - - description "Defines basic SubNetwork which will be augmented by other IOCs"; - reference "3GPP TS 28.623 - Generic Network Resource Model (NRM) - Integration Reference Point (IRP); - Solution Set (SS) definitions - - 3GPP TS 28.622 - Generic Network Resource Model (NRM) - Integration Reference Point (IRP); - Information Service (IS) - - 3GPP TS 28.620 - Umbrella Information Model (UIM)"; - - revision 2021-01-16 { reference "CR-0120"; } - revision 2020-08-06 { reference "CR-0102"; } - revision 2020-06-08 { reference "CR-0092"; } - revision 2020-05-08 { - reference "S5-203316"; - } - - - revision 2020-03-11 { - description "Added KPIs and corrections"; - reference "S5-201365, S5-201581, SP-200229"; - } - - revision 2020-02-24 { - reference "S5-201365"; - } - - revision 2019-06-17 { - reference "Initial revision"; - } - - feature ExternalsUnderSubNetwork { - description "Classes representing external entities like EUtranFrequency, - ExternalGNBCUCPFunction, ExternalENBFunction - are contained under a Subnetwork list/class."; - } - - feature MeasurementsUnderSubNetwork { - description "The MeasurementSubtree shall be contained under SubNetwork"; - } - - feature SubscriptionControlUnderSubNetwork { - description "The SubscriptionControlSubtree shall be contained under - SubNetwork"; - } - - feature FmUnderSubNetwork { - description "The FmSubtree shall be contained under SubNetwork"; - } - - feature TraceUnderSubNetwork { - description "The TraceSubtree shall be contained under SubNetwork"; - } - - feature DESManagementFunction { - description "Class representing Distributed SON or Domain-Centralized SON - Energy Saving feature. The DESManagementFunction shall be contained under - SubNetwork."; - } - - feature DMROFunction { - description "Class representing D-SON function of MRO feature. The - DMROFunction shall be contained under SubNetwork."; - } - - feature DRACHOptimizationFunction { - description "Class representing D-SON function of RACH optimization feature. - The DRACHOptimizationFunction shall be contained under SubNetwork."; - } - - feature DPCIConfigurationFunction { - description "Class representing Distributed SON or Domain-Centralized SON - function of PCI configuration feature. The DPCIConfigurationFunction shall - be contained under SubNetwork."; - } - - feature CPCIConfigurationFunction { - description "Class representing Cross Domain-Centralized SON function of PCI - configuration feature. The CPCIConfigurationFunction shall be contained - under SubNetwork."; - } - - feature CESManagementFunction { - description "Class representing Cross Domain-Centralized SON Energy Saving - feature. The CESManagementFunction shall be contained under SubNetwork."; - } - - grouping Domain_Grp { - description "A domain is a partition of instances of managed entities - such that : - - the group represents a topological structure which describes the - potential for connectivity - - Subject to common administration - - With common characteristics"; - - leaf dnPrefix { - type types3gpp:DistinguishedName; - reference "Annex C of 32.300 "; - } - - leaf userLabel { - type string; - description "A user-friendly (and user assignable) name of this object."; - } - - leaf userDefinedNetworkType { - type string; - description "Textual information indicating network type, e.g. 'UTRAN'."; - } - } - - grouping SubNetworkGrp { - uses Domain_Grp; - uses meas3gpp:SupportedPerfMetricGroupGrp; - - - leaf-list setOfMcc { - description "Set of Mobile Country Code (MCC). - The MCC uniquely identifies the country of domicile - of the mobile subscriber. MCC is part of the IMSI (3GPP TS 23.003) - - This list contains all the MCC values in subordinate object - instances to this SubNetwork instance. - - See clause 2.3 of 3GPP TS 23.003 for MCC allocation principles. - - It shall be supported if there is more than one value in setOfMcc - of the SubNetwork. Otherwise the support is optional."; - type types3gpp:Mcc; - } - - leaf priorityLabel { - mandatory true; - type uint32; - } - - } - - list SubNetwork { - key id; - description "Represents a set of managed entities"; - - uses top3gpp:Top_Grp; - container attributes { - uses SubNetworkGrp; - leaf-list parents { - description "Reference to all containg SubNetwork instances - in strict order from the root subnetwork down to the immediate - parent subnetwork. - If subnetworks form a containment hierarchy this is - modeled using references between the child SubNetwork and the parent - SubNetworks. - This reference MUST NOT be present for the top level SubNetwork and - MUST be present for other SubNetworks."; - type leafref { - path "../../../SubNetwork/id"; - } - } - - leaf-list containedChildren{ - description "Reference to all directly contained SubNetwork instances. - If subnetworks form a containment hierarchy this is - modeled using references between the child SubNetwork and the parent - SubNetwork."; - type leafref { - path "../../../SubNetwork/id"; - } - } - } - - uses meas3gpp:MeasurementSubtree { - if-feature MeasurementsUnderSubNetwork; - } - - uses subscr3gpp:SubscriptionControlSubtree { - if-feature SubscriptionControlUnderSubNetwork; - } - - uses fm3gpp:FmSubtree { - if-feature FmUnderSubNetwork; - } - - uses trace3gpp:TraceSubtree { - if-feature TraceUnderSubNetwork; - } - - yangmnt:mount-point children-of-SubNetwork { - description "Mountpoint for ManagedElement"; - reference "RFC8528 YANG Schema Mount"; - } - - // augment external parts here - } -} \ No newline at end of file diff --git a/yang-models/_3gpp-common-subscription-control.yang b/yang-models/_3gpp-common-subscription-control.yang deleted file mode 100755 index 25bde6927..000000000 --- a/yang-models/_3gpp-common-subscription-control.yang +++ /dev/null @@ -1,209 +0,0 @@ -module _3gpp-common-subscription-control { - yang-version 1.1; - namespace "urn:3gpp:sa5:_3gpp-common-subscription-control"; - prefix "subscr3gpp"; - - import _3gpp-common-top { prefix top3gpp; } - - organization "3GPP SA5"; - contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; - - description "Defines IOCs for subscription and heartbeat control."; - reference "3GPP TS 28.623 - Generic Network Resource Model (NRM) - Integration Reference Point (IRP); - Solution Set (SS) definitions - 3GPP TS 28.623"; - - revision 2021-01-16 { reference "CR-0120"; } - revision 2020-08-26 { reference "CR-0106"; } - revision 2019-11-29 { reference "S5-197648 S5-197647 S5-197829 S5-197828"; } - - grouping NtfSubscriptionControlGrp { - description "Attributes of a specific notification subscription"; - - leaf notificationRecipientAddress { - type string; - mandatory true; - } - - leaf-list notificationTypes { - type string; - description "Defines the types of notifications that are candidates - for being forwarded to the notification recipient. - If the notificationFilter attribute is not supported or not present - all candidate notifications types are forwarded to the notification; - discriminated by notificationFilter attribute."; - } - - list scope { - key "scopeType"; - min-elements 1; - max-elements 1; - description "Describes which object instances are selected with - respect to a base object instance."; - - leaf scopeType { - type enumeration { - enum BASE_ONLY; - enum BASE_ALL; - enum BASE_NTH_LEVEL; - enum BASE_SUBTREE; - } - description "If the optional scopeLevel parameter is not supported - or absent, allowed values of scopeType are BASE_ONLY and BASE_ALL. - - The value BASE_ONLY indicates only the base object is selected. - The value BASE_ALL indicates the base object and all of its - subordinate objects (incl. the leaf objects) are selected. - - If the scopeLevel parameter is supported and present, allowed - values of scopeType are BASE_ALL, BASE_ONLY, BASE_NTH_LEVEL - and BASE_SUBTREE. - - The value BASE_NTH_LEVEL indicates all objects on the level, - which is specified by the scopeLevel parameter, below the base - object are selected. The base object is at scopeLevel zero. - The value BASE_SUBTREE indicates the base object and all of its - subordinate objects down to and including the objects on the level, - which is specified by the scopeLevel parameter, are selected. - The base object is at scopeLevel zero."; - } - - leaf scopeLevel { - when '../scopeType = "BASE_NTH_LEVEL" or ../scopeType = "BASE_SUBTREE"'; - type uint16; - mandatory true; - description "See description of scopeType."; - } - } - - leaf notificationFilter { - type string; - description "Defines a filter to be applied to candidate notifications - identified by the notificationTypes attribute. - If notificationFilter is present, only notifications that pass the - filter criteria are forwarded to the notification recipient; all other - notifications are discarded. - The filter can be applied to any field of a notification."; - } - } - - grouping HeartbeatControlGrp { - description "Attributes of HeartbeatControl. Note the triggerHeartbeatNtf - attribute has no mapping in the present release."; - - leaf heartbeatNtfPeriod { - type uint32; - mandatory true; - units seconds; - description "Specifies the periodicity of heartbeat notification emission. - The value of zero has the special meaning of stopping the heartbeat - notification emission."; - } - } - - grouping SubscriptionControlSubtree { - description "Contains notification subscription related classes. - Should be used in all classes (or classes inheriting from) - - SubNetwork - - ManagedElement - - If some YAM wants to augment these classes/list/groupings they must - augment all user classes!"; - - list NtfSubscriptionControl { - description "A NtfSubscriptionControl instance represents the - notification subscription of a particular notification recipient. - The scope attribute is used to select managed object instances. - The base object instance of the scope is the object instance - name-containing the NtfSubscriptionControl instance. - The notifications related to the selected managed object instances - are candidates to be sent to the address specified by the - notificationRecipientAddress attribute. - The notificationType attribute and notificationFilter attribute - allow MnS consumers to exercise control over which candidate - notifications are sent to the notificationRecipientAddress. - If the notificationType attribute is supported and present, its - value identifies the - types of notifications that are candidate to be sent to the - notificationRecipientAddress. If the notificationType attribute is - not supported or not present, all types of notifications are - candidate to be sent to notificationRecipientAddress. - If supported, the notificationFilter attribute defines a filter that - is applied to the set of candidate notifications. Only candidate - notifications that pass the filter criteria are sent to the - notificationRecipientAddress. If the notificationFilter attribute is - not supported all candidate notificatios are sent to the - notificationRecipientAddress. - To receive notifications, a MnS consumer has to create - NtfSubscriptionControl object instancess on the MnS producer. - A MnS consumer can create a subscription for another MnS consumer - since it is not required the notificationRecipientAddress be his own - address. - When a MnS consumer does not wish to receive notifications any more - the MnS consumer shall delete the corresponding NtfSubscriptionControl - instance. - Creation and deletion of NtfSubscriptionControl instances by MnS - consumers is optional; when not supported, the NtfSubscriptionControl - instances may be created and deleted by the system or be - pre-installed."; - - key id; - uses top3gpp:Top_Grp; - container attributes { - uses NtfSubscriptionControlGrp; - } - - list HeartbeatControl { - description "MnS consumers (i.e. notification recipients) use heartbeat - notifications to monitor the communication channels between them and - data reporting MnS producers emitting notifications such as - notifyNewAlarm and notifyFileReady. - - A HeartbeatControl instance allows controlling the emission of - heartbeat notifications by MnS producers. The recipients of heartbeat - notifications are specified by the notificationRecipientAddress - attribute of the NtfSubscriptionControl instance containing the - HeartbeatControl instance. - - Note that the MnS consumer managing the HeartbeatControl instance - and the MnS consumer receiving the heartbeat notifications may not be - the same. - - As a pre-condition for the emission of heartbeat notifications, a - HeartbeatControl instance needs to be created. Creation of an instance - with an initial non-zero value of the heartbeatNtfPeriod attribute - triggers an immediate heartbeat notification emission. Creation of an - instance with an initial zero value of the heartbeatPeriod attribute - does not trigger an emission of a heartbeat notification. Deletion of - an instance does not trigger an emission of a heartbeat notification. - - Once the instance is created, heartbeat notifications are emitted with - a periodicity defined by the value of the heartbeatNtfPeriod - attribute. No heartbeat notifications are emitted if the value is - equal to zero. Setting a zero value to a non zero value, or a non zero - value to a different non zero value, triggers an immediate heartbeat - notification, that is the base for the new heartbeat period. Setting a - non zero value to a zero value stops emitting heartbeats immediately; - no final heartbeat notification is sent. - - Creation and deletion of HeartbeatControl instances by MnS Consumers - is optional; when not supported, the HeartbeatControl instances may be - created and deleted by the system or be pre-installed. - - Whether and when to emit heartbeat notifications is controlled by - HeartbeatControl. Subscription for heartbeat is not supported via the - NtfSubscriptionControl."; - - max-elements 1; - key id; - uses top3gpp:Top_Grp; - - container attributes { - uses HeartbeatControlGrp; - } - } - } - } -} \ No newline at end of file diff --git a/yang-models/_3gpp-common-top.yang b/yang-models/_3gpp-common-top.yang deleted file mode 100755 index c58adbea7..000000000 --- a/yang-models/_3gpp-common-top.yang +++ /dev/null @@ -1,36 +0,0 @@ -module _3gpp-common-top { - yang-version 1.1; - - namespace urn:3gpp:sa5:_3gpp-common-top; - prefix top3gpp; - - organization "3gpp SA5"; - description "The model defines a YANG mapping of the top level - information classes used for management of 5G networks and - network slicing."; - reference - "3GPP TS 28.622 - Generic Network Resource Model (NRM) - Integration Reference Point (IRP); - Information Service (IS) - - 3GPP TS 28.620 - Umbrella Information Model (UIM)"; - - revision 2019-06-17 { - description "Initial revision"; - } - - grouping Top_Grp { - description "Abstract class supplying a naming attribute"; - reference "3GPP TS 28.620"; - - leaf id { - type string; - description "Key leaf (namingAttribute) for a class/list. - Should be used as a key leaf for lists representing - stage 2 classes."; - reference "3GPP TS 32.300 Name convention for managed objects"; - } - } -} \ No newline at end of file diff --git a/yang-models/_3gpp-common-trace.yang b/yang-models/_3gpp-common-trace.yang deleted file mode 100755 index 13b3f026d..000000000 --- a/yang-models/_3gpp-common-trace.yang +++ /dev/null @@ -1,895 +0,0 @@ -module _3gpp-common-trace { - yang-version 1.1; - namespace "urn:3gpp:sa5:_3gpp-common-trace"; - prefix "trace3gpp"; - - import _3gpp-common-top { prefix top3gpp; } - import _3gpp-common-yang-types {prefix types3gpp; } - import ietf-inet-types { prefix inet; } - - organization "3GPP SA5"; - contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; - - description "Trace handling"; - - reference "3GPP TS 28.623 - Generic Network Resource Model (NRM) - Integration Reference Point (IRP); - Solution Set (SS) definitions - - 3GPP TS 28.622 - Generic Network Resource Model (NRM) - Integration Reference Point (IRP); - Information Service (IS)"; - - revision 2021-01-25 { reference "CR-0122"; } - revision 2020-11-16 { reference "CR-0117"; } - revision 2020-08-06 { reference "CR-0102"; } - - grouping TraceJobGrp { - leaf tjJobType { - type enumeration { - enum IMMEDIATE_MDT_ONLY; - enum LOGGED_MDT_ONLY; - enum TRACE_ONLY; - enum IMMEDIATE_MDT_AND_TRACE; - enum RLF_REPORT_ONLY; - enum RCEF_REPORT_ONLY; - enum LOGGED_MBSFN_MDT; - } - default TRACE_ONLY; - description "Specifies the MDT mode and it specifies also whether the - TraceJob represents only MDT, Logged MBSFN MDT, Trace or a combined - Trace and MDT job. The attribute is applicable for Trace, MDT, RCEF and - RLF reporting."; - reference "Clause 5.9a of 3GPP TS 32.422 for additional details on the - allowed values."; - } - - list tjListOfInterfaces { - key idx; - must 'count(MSCServerInterfaces)+count(MGWInterfaces)+count(RNCInterfaces)' - +'+count(SGSNInterfaces)+count(GGSNInterfaces)+count(S-CSCFInterfaces)' - +'+count(P-CSCFInterfaces)+count(I-CSCFInterfaces)+count(MRFCInterfaces)' - +'+count(MGCFInterfaces)+count(IBCFInterfaces)+count(E-CSCFInterfaces)' - +'+count(BGCFInterfaces)+count(ASInterfaces)+count(HSSInterfaces)' - +'+count(EIRInterfaces)+count(BM-SCInterfaces)+count(MMEInterfaces)' - +'+count(SGWInterfaces)+count(PDN_GWInterfaces)+count(eNBInterfaces)' - +'+count(en-gNBInterfaces)+count(AMFInterfaces)+count(AUSFInterfaces)' - +'+count(NEFInterfaces)+count(NRFInterfaces)+count(NSSFInterfaces)' - +'+count(PCFInterfaces)+count(SMFInterfaces)+count(SMSFInterfaces)' - +'+count(UDMInterfaces)+count(UPFInterfaces)+count(ng-eNBInterfaces)' - +'+count(gNB-CU-CPInterfaces)+count(gNB-CU-UPInterfaces)+count(gNB-DUInterfaces)'; - - description "Specifies the interfaces that need to be traced in the given - ManagedEntityFunction.The attribute is applicable only for Trace. In - case this attribute is not used, it carries a null semantic."; - reference "Clause 5.5 of 3GPP TS 32.422 for additional details on the - allowed values."; - - leaf idx { type uint32 ; } - - leaf-list MSCServerInterfaces { - type enumeration { - enum A ; - enum Iu-CS ; - enum Mc ; - enum MAP-G ; - enum MAP-B ; - enum MAP-E ; - enum MAP-F ; - enum MAP-D ; - enum MAP-C ; - enum CAP ; - } - } - leaf-list MGWInterfaces { - type enumeration { - enum Mc ; - enum Nb-UP ; - enum Iu-UP ; - } - } - leaf-list RNCInterfaces { - type enumeration { - enum Iu-CS ; - enum Iu-PS ; - enum Iur ; - enum Iub ; - enum Uu ; - } - } - leaf-list SGSNInterfaces { - type enumeration { - enum Gb ; - enum Iu-PS ; - enum Gn ; - enum MAP-Gr ; - enum MAP-Gd ; - enum MAP-Gf ; - enum Ge ; - enum Gs ; - enum S6d ; - enum S4 ; - enum S3 ; - enum S13 ; - } - } - leaf-list GGSNInterfaces { - type enumeration { - enum Gn ; - enum Gi ; - enum Gmb ; - } - } - leaf-list S-CSCFInterfaces { - type enumeration { - enum Mw ; - enum Mg ; - enum Mr ; - enum Mi ; - } - } - leaf-list P-CSCFInterfaces { - type enumeration { - enum Gm ; - enum Mw ; - } - } - leaf-list I-CSCFInterfaces { - type enumeration { - enum Cx ; - enum Dx ; - enum Mg ; - enum Mw ; - } - } - leaf-list MRFCInterfaces { - type enumeration { - enum Mp ; - enum Mr ; - } - } - leaf-list MGCFInterfaces { - type enumeration { - enum Mg ; - enum Mj ; - enum Mn ; - } - } - leaf-list IBCFInterfaces { - type enumeration { - enum Ix ; - enum Mx ; - } - } - leaf-list E-CSCFInterfaces { - type enumeration { - enum Mw ; - enum Ml ; - enum Mm ; - enum Mi-Mg ; - } - } - leaf-list BGCFInterfaces { - type enumeration { - enum Mi ; - enum Mj ; - enum Mk ; - } - } - leaf-list ASInterfaces { - type enumeration { - enum Dh ; - enum Sh ; - enum ISC ; - enum Ut ; - } - } - leaf-list HSSInterfaces { - type enumeration { - enum MAP-C ; - enum MAP-D ; - enum Gc ; - enum Gr ; - enum Cx ; - enum S6d ; - enum S6a ; - enum Sh ; - } - } - leaf-list EIRInterfaces { - type enumeration { - enum MAP-F ; - enum S13 ; - enum MAP-Gf ; - } - } - leaf-list BM-SCInterfaces { - type enumeration { - enum Gmb ; - } - } - leaf-list MMEInterfaces { - type enumeration { - enum S1-MME ; - enum S3 ; - enum S6a ; - enum S10 ; - enum S11 ; - enum S13 ; - } - } - leaf-list SGWInterfaces { - type enumeration { - enum S4 ; - enum S5 ; - enum S8 ; - enum S11 ; - enum Gxc ; - } - } - leaf-list PDN_GWInterfaces { - type enumeration { - enum S2a ; - enum S2b ; - enum S2c ; - enum S5 ; - enum S6b ; - enum Gx ; - enum S8 ; - enum SGi ; - } - } - leaf-list eNBInterfaces { - type enumeration { - enum S1-MME ; - enum X2 ; - } - } - leaf-list en-gNBInterfaces { - type enumeration { - enum S1-MME ; - enum X2 ; - enum Uu ; - enum F1-C ; - enum E1 ; - } - } - leaf-list AMFInterfaces { - type enumeration { - enum N1 ; - enum N2 ; - enum N8 ; - enum N11 ; - enum N12 ; - enum N14 ; - enum N15 ; - enum N20 ; - enum N22 ; - enum N26 ; - } - } - leaf-list AUSFInterfaces { - type enumeration { - enum N12 ; - enum N13 ; - } - } - leaf-list NEFInterfaces { - type enumeration { - enum N29 ; - enum N30 ; - enum N33 ; - } - } - leaf-list NRFInterfaces { - type enumeration { - enum N27 ; - } - } - leaf-list NSSFInterfaces { - type enumeration { - enum N22 ; - enum N31 ; - } - } - leaf-list PCFInterfaces { - type enumeration { - enum N5 ; - enum N7 ; - enum N15 ; - } - } - leaf-list SMFInterfaces { - type enumeration { - enum N4 ; - enum N7 ; - enum N10 ; - enum N11 ; - enum S5-C ; - } - } - leaf-list SMSFInterfaces { - type enumeration { - enum N20 ; - enum N21 ; - } - } - leaf-list UDMInterfaces { - type enumeration { - enum N8 ; - enum N10 ; - enum N13 ; - enum N21 ; - } - } - leaf-list UPFInterfaces { - type enumeration { - enum N4 ; - } - } - leaf-list ng-eNBInterfaces { - type enumeration { - enum NG-C ; - enum Xn-C ; - enum Uu ; - } - } - leaf-list gNB-CU-CPInterfaces { - type enumeration { - enum NG-C ; - enum Xn-C ; - enum Uu ; - enum F1-C ; - enum E1 ; - enum X2-C ; - } - } - leaf-list gNB-CU-UPInterfaces { - type enumeration { - enum E1 ; - } - } - leaf-list gNB-DUInterfaces { - type enumeration { - enum F1-C ; - } - } - } - - leaf-list tjListOfNeTypes { - type enumeration { - enum MSC_SERVER; - enum SGSN; - enum MGW; - enum GGSN; - enum RNC; - enum BM_SC; - enum MME; - enum SGW; - enum PGW; - enum ENB; - enum EN_GNB; - enum GNB_CU_CP; - enum GNB_CU_UP; - enum GNB_DU; - } - description "Specifies in which type of ManagedFunction the trace should - be activated. The attribute is applicable only for Trace with - Signalling Based Trace activation. In case this attribute is not used, - it carries a null semantic"; - reference "Clause 5.4 of 3GPP TS 32.422 for additional details on the - allowed values"; - } - - leaf tjPLMNTarget { - type string; - mandatory true; - description "Specifies which PLMN that the subscriber of the session to - be recorded uses as selected PLMN. PLMN Target might differ from the - PLMN specified in the Trace Reference"; - reference "Clause 5.9b of 3GPP TS 32.422"; - } - - leaf tjStreamingTraceConsumerURI { - when './tjTraceReportingFormat = "STREAMING"'; - type inet:uri; - mandatory true; - description "URI of the Streaming Trace data reporting MnS consumer - (a.k.a. streaming target). - This attribute shall be present if file based trace data reporting is - supported and tjTraceReportingFormat set to 'file based' or when - tjJobType is set to Logged MDT or Logged MBSFN MDT."; - reference "Clause 5.9 of 3GPP TS 32.422"; - } - - leaf tjTraceCollectionEntityAddress { - when './tjTraceReportingFormat = "FILE_BASED" or ' - +'./tjJobType = "LOGGED_MDT_ONLY" or ./tjJobType = "LOGGED_MBSFN_MDT"'; - type union { - type inet:uri; - type inet:ip-address; - } - mandatory true; - description "Specifies the address of the Trace Collection Entity when - the attribute tjTraceReportingFormat is configured for the file-based - reporting. The attribute is applicable for both Trace and MDT."; - reference "Clause 5.9 of 3GPP TS 32.422"; - } - - leaf tjTraceDepth { - when './tjJobType = "TRACE_ONLY" or ./tjJobType = "IMMEDIATE_MDT_AND_TRACE"'; - type enumeration { - enum MINIMUM; - enum MEDIUM; - enum MAXIMUM; - enum VENDORMINIMUM; - enum VENDORMEDIUM; - enum VENDORMAXIMUM; - } - default MAXIMUM; - description "Specifies how detailed information should be recorded in the - Network Element. The Trace Depth is a paremeter for Trace Session level, - i.e., the Trace Depth is the same for all of the NEs to be traced in - the same Trace Session. - The attribute is applicable only for Trace, otherwise it carries a null - semantic."; - reference "Clause 5.3 of 3GPP TS 32.422"; - } - - leaf tjTraceReference { - type uint64; - mandatory true; - description "A globally unique identifier, which uniquely identifies the - Trace Session that is created by the TraceJob. - In case of shared network, it is the MCC and MNC of the Participating - Operator that request the trace session that shall be provided. - The attribute is applicable for both Trace and MDT."; - } - - leaf tjTraceReportingFormat { - type enumeration { - enum FILE_BASED; - enum STREAMING; - } - default FILE_BASED; - description "Specifies the trace reporting format - streaming trace - reporting or file-based trace reporting"; - reference "3GPP TS 32.422 clause 5.11"; - } - list tjTraceTarget { - key "targetIdType targetIdValue"; - max-elements 1; - - leaf targetIdType { - type enumeration { - enum IMSI; - enum IMEI; - enum IMEISV; - enum PUBLIC_ID; - enum UTRAN_CELL; - enum E_UTRAN_CELL; - enum NG_RAN_CELL; - enum ENB; - enum RNC; - enum GNB; - enum SUPI; - } - } - - leaf targetIdValue { - type string; - } - - description "Specifies the target object of the Trace and MDT. The - attribute is applicable for both Trace and MDT. This attribute - includes the ID type of the target as an enumeration and the ID value. - - The tjTraceTarget shall be public ID in case of a Management Based - Activation is done to an ScscfFunction. The tjTraceTarget shall be - cell only in case of the UTRAN cell traffic trace function. - - The tjTraceTarget shall be E-UtranCell only in case of E-UTRAN cell - traffic trace function.The tjTraceTarget shall be either IMSI or - IMEI(SV) if the Trace Session is activated to any of the following - ManagedEntity(ies): - - HssFunction - - MscServerFunction - - SgsnFunction - - GgsnFunction - - BmscFunction - - RncFunction - - MmeFunction - - The tjTraceTarget shall be IMSI if the Trace Session is activated to a - ManagedEntity playing a role of ServinGWFunction. - - In case of signaling based Trace/MDT, the tjTraceTarget attribute shall be - able to carry (IMSI or IMEI(SV)or SUPI), the tjMDTAreaScope attribute shall be - able to carry a list of (cell or E-UtranCell or NRCellDU or TA/LA/RA). - - In case of management based Immediate MDT, the tjTraceTarget attribute - shall be null value, the tjMDTAreaScope attribute shall carry a list of - (Utrancell or E-UtranCell or NRCellDU). - - In case of management based Logged MDT, the tjTraceTarget attribute - shall carry an eBs or a RNC or gNBs. The Logged MDT should be initiated on - the specified eNB or RNC or gNB in tjTraceTarget. The tjMDTAreaScope attribute - shall carry a list of (Utrancell or E-UtranCell or NRCellDU or TA/LA/RA). - - In case of RLF reporting, or RCEF reporting, the tjTraceTarget attribute - shall be null value, the tjMDTAreaScope attribute shall carry one or - list of eNBs/gNBs"; - reference "3GPP TS 32.422"; - } - - leaf tjTriggeringEvent { - when './tjJobType = "TRACE" or ./tjJobType = "IMMEDIATE_MDT_AND_TRACE"'; - type string ; - mandatory true; - description "Specifies the triggering event parameter of the trace session. - The attribute is applicable only for Trace. In case this attribute is - not used, it carries a null semantic."; - reference "Clause 5.1 of 3GPP TS 32.422"; - } - - leaf tjMDTAnonymizationOfData { - when ./tjMDTAreaScope ; - type enumeration { - enum NO_IDENTITY; - enum TAC_OF_IMEI; - } - default NO_IDENTITY; - description "Specifies level of MDT anonymization."; - reference "3GPP TS 32.422 clause 5.10.12."; - } - - list tjMDTAreaConfigurationForNeighCell { - when './tjJobType = "LOGGED_MDT_ONLY"'; - key "idx"; - min-elements 1; - leaf idx { type uint32 ; } - - description "It specifies the area for which UE is requested to perform - measurement logging for neighbour cells which have list of frequencies. - If it is not configured, the UE shall perform measurement logging for - all the neighbour cells. - - Applicable only to NR Logged MDT."; - reference "3GPP TS 32.422 clause 5.10.26."; - - leaf frequency { - type string; - } - - leaf cell { - type string; - } - } - - leaf-list tjMDTAreaScope { - type string; - description "specifies MDT area scope when activates an MDT job. - - For RLF and RCEF reporting it specifies the eNB or list of eNBs where the - RLF or RCEF reports should be collected. - - - List of cells/TA/LA/RA for signaling based MDT or management based Logged - MDT. - - List of cells for management based Immediate MDT. - - Cell, TA, LA, RA are mutually exclusive. - - One or list of eNBs for RLF and RCEFreporting"; - reference "Clause 5.10.2 of 3GPP TS 32.422"; - } - - leaf tjMDTCollectionPeriodRrmLte { - when './tjJobType = "IMMEDIATE_MDT_ONLY" or ./tjJobType = "IMMEDIATE_MDT_AND_TRACE"'; - type uint32 { - range "250|500|1000|2000|3000|4000|6000|8000|12000|16000|20000|" - +"24000|28000|32000|64000"; - } - units milliseconds; - description "Specifies the collection period for collecting RRM configured - measurement samples for M2, M3 in LTE. The attribute is applicable only - for Immediate MDT. In case this attribute is not used, it carries a - null semantic."; - reference "Clause 5.10.20 of 3GPP TS 32.422"; - } - - leaf tjMDTCollectionPeriodRrmUmts { - when './tjJobType = "IMMEDIATE_MDT_ONLY" or ./tjJobType = "IMMEDIATE_MDT_AND_TRACE"'; - type uint32 { - range "1024|1280|2048|2560|5120|" - +"10240|60000"; - } - units milliseconds; - description "Specifies the collection period for collecting RRM configured - measurement samples for M3, M4, M5 in UMTS. The attribute is applicable - only for Immediate MDT. In case this attribute is not used, it carries - a null semantic"; - reference "Clause 5.10.21 of 3GPP TS 32.422"; - } - - leaf tjMDTCollectionPeriodRrmNR { - when './tjJobType = "IMMEDIATE_MDT_ONLY" or ./tjJobType = "IMMEDIATE_MDT_AND_TRACE"'; - type uint32 { - range "1024|2048|5120|10240|60000"; - } - units milliseconds; - description "Specifies the collection period for collecting RRM configured - measurement samples for M4, M5 in NR. The attribute is applicable only - for Immediate MDT. In case this attribute is not used, it carries a - null semantic."; - reference "Clause 5.10.30 of 3GPP TS 32.422"; - } - - leaf tjMDTEventListForTriggeredMeasurement { - when './tjJobType = "LOGGED_MDT_ONLY"'; - type enumeration { - enum OUT_OF_COVERAGE ; - enum A2_EVENT ; - } - mandatory true; - description "Specifies event types for event triggered measurement in the - case of logged NR MDT. Each trace session may configure at most one - event. The UE shall perform logging of measurements only upon certain - condition being fulfilled: - - Out of coverage. - - A2 event."; - reference "Clause 5.10.28 of 3GPP TS 32.422"; - } - - leaf tjMDTEventThreshold { - type int64; - description "Specifies the threshold which should trigger the reporting - in case A2 event reporting in LTE or 1F/1l event in UMTS. The attribute - is applicable only for Immediate MDT and when reportingTrigger is - configured for A2 event in LTE or 1F event or 1l event in UMTS. In - case this attribute is not used, it carries a null semantic."; - reference "Clauses 5.10.7 and 5.10.7a of 3GPP TS 32.422"; - } - - leaf tjMDTListOfMeasurements { - when './tjJobType = "IMMEDIATE_MDT"'; - type int64; - mandatory true; - description "It specifies the UE measurements that shall be collected in - an Immediate MDT job. The attribute is applicable only for Immediate MDT. - In case this attribute is not used, it carries a null semantic."; - reference "3GPP TS 32.422 clause 5.10.3"; - } - - leaf tjMDTLoggingDuration { - when './tjJobType = "LOGGED_MDT_ONLY" or ./tjJobType = "LOGGED_MBSFN_MDT"'; - type uint32 { - range "600|1200|2400|3600|5400|7200"; - } - units seconds; - mandatory true; - description "Specifies how long the MDT configuration is valid at the - UE in case of Logged MDT. The attribute is applicable only for - Logged MDT and Logged MBSFN MDT. In case this attribute is not used, it - carries a null semantic."; - reference "5.10.9 of 3GPP TS 32.422"; - } - - leaf tjMDTLoggingInterval { - when './tjJobType = "LOGGED_MDT_ONLY" or ./tjJobType = "LOGGED_MBSFN_MDT"'; - type uint32 { - range "1280|2560|5120|10240|20480|" - +"30720|40960|61440"; - } - units milliseconds; - mandatory true; - description "Specifies the periodicty for Logged MDT. The attribute is - applicable only for Logged MDT and Logged MBSFN MDT. In case this - attribute is not used, it carries a null semantic"; - reference "5.10.8 of 3GPP TS 32.422"; - } - - leaf-list tjMDTMBSFNAreaList { - when './tjJobType = "LOGGED_MBSFN_MDT"'; - type string; - min-elements 1; - max-elements 8; - description "The MBSFN Area consists of a MBSFN Area ID and Carrier - Frequency (EARFCN). The target MBSFN area List can have up to 8 entries. - This parameter is applicable only if the job type is Logged MBSFN MDT."; - reference "5.10.25 of 3GPP TS 32.422"; - } - - leaf tjMDTMeasurementPeriodLTE { - when './tjJobType = "IMMEDIATE_MDT_ONLY" or ./tjJobType = "IMMEDIATE_MDT_AND_TRACE"'; - type uint32 { - range "1024|1280|2048|2560|5120|" - +"10240|60000"; - } - units milliseconds; - mandatory true; - description "It specifies the measurement period for the Data Volume and - Scheduled IP throughput measurements for MDT taken by the eNB. - The attribute is applicable only for Immediate MDT. In case this - attribute is not used, it carries a null semantic."; - reference "Clause 5.10.23 of 3GPP TS 32.422"; - } - - leaf tjMDTMeasurementPeriodUMTS { - when './tjJobType = "IMMEDIATE_MDT_ONLY" or ./tjJobType = "IMMEDIATE_MDT_AND_TRACE"'; - type uint32 { - range "250|500|1000|2000|3000|4000|6000|8000|12000|16000|20000|" - +"24000|28000|32000|64000"; - } - units milliseconds; - mandatory true; - description "It specifies the measurement period for the Data Volume and - Throughput measurements for MDT taken by RNC. - The attribute is applicable only for Immediate MDT. In case this - attribute is not used, it carries a null semantic."; - reference "Clause 5.10.22 of 3GPP TS 32.422"; - } - - leaf tjMDTMeasurementQuantity { - when './tjJobType = "IMMEDIATE_MDT_ONLY" or ./tjJobType = "IMMEDIATE_MDT_AND_TRACE"'; - type uint64 ; - mandatory true; - description "It specifies the measurements that are collected in an MDT - job for a UMTS MDT configured for event triggered reporting."; - reference "Clause 5.10.15 of 3GPP TS 32.422"; - } - - list tjMDTPLMList { - when './tjJobType = "LOGGED_MDT_ONLY"'; - key "mcc mnc"; - uses types3gpp:PLMNId; - min-elements 1; - max-elements 16; - description "It indicates the PLMNs where measurement collection, status - indication and log reporting is allowed."; - reference "Clause 5.10.24 of 3GPP TS 32.422"; - } - - leaf tjMDTPositioningMethod { - when './tjJobType = "IMMEDIATE_MDT_ONLY" or ./tjJobType = "IMMEDIATE_MDT_AND_TRACE"'; - type enumeration { - enum GNSS; - enum E_CELL_ID; - } - mandatory true; - description "It specifies what positioning method should be used in the - MDT job."; - reference "Clause 5.10.19 of 3GPP TS 32.422"; - } - - leaf tjMDTReportAmount { - when './tjJobType = "IMMEDIATE_MDT_ONLY" and ./tjMDTReportingTrigger = "PERIODICAL"'; - type union { - type uint32 { - range "1|4|8|16|32|64" ; - } - type enumeration { - enum INFINITY; - } - } - mandatory true; - description "It specifies the number of measurement reports that shall be - taken for periodic reporting while the UE is in connected. - The attribute is applicable only for Immediate MDT and when - tjMDTReportingTrigger is configured for periodical measurements. In - case this attribute is not used, it carries a null semantic."; - reference "Clause 5.10.6 of 3GPP TS 32.422"; - } - - leaf tjMDTReportingTrigger { - when './tjJobType = "IMMEDIATE_MDT_ONLY"'; - type enumeration { - enum PERIODICAL; - enum A2_FOR_LTE; - enum 1F_FOR_UMTS; - enum 1I_FOR_UMTS_MCPS_TDD; - enum A2_TRIGGERED_PERIODIC_FOR_LTE; - enum ALL_CONFIGURED_RRM_FOR_LTE; - enum ALL_CONFIGURED_RRM_FOR_UMTS; - } - description "It specifies whether periodic or event based measurements - should be collected. - The attribute is applicable only for Immediate MDT and when the - tjMDTListOfMeasurements is configured for M1 (for both UMTS and LTE) - or M2 (only for UMTS). In case this attribute is not used, it carries - a null semantic."; - reference "Clause 5.10.4 of 3GPP TS 32.422"; - } - - leaf tjMDTReportInterval { - when './tjJobType = "IMMEDIATE_MDT_ONLY" and ./tjMDTReportingTrigger = "PERIODICAL"'; - type uint32 { - range "120|240|250|480|500|640|1000|1024|2000|2048|3000|4000|" - +"5120|6000|8000|10240|12000|16000|20000|" - +"24000|28000|32000|60000|64000|" - +"360000|720000|1800000|3600000"; - } - units milliseconds; - mandatory true; - description "It specifies the interval between the periodical measurements - that shall be taken when the UE is in connected mode. - The attribute is applicable only for Immediate MDT and when - tjMDTReportingTrigger is configured for periodical measurements. In case - this attribute is not used, it carries a null semantic."; - reference "5.10.5 of 3GPP TS 32.422"; - } - - leaf tjMDTReportType { - when './tjJobType = "LOGGED_MDT_ONLY"'; - type enumeration { - enum PERIODICAL; - enum EVENT_TRIGGERED; - } - mandatory true; - description "It specifies report type for logged NR MDT"; - reference "Clause 5.10.27 of 3GPP TS 32.422"; - } - - leaf tjMDTSensorInformation { - type bits { - bit BAROMETRIC_PRESSURE; - bit UE_SPEED; - bit UE_ORIENTATION; - } - default ""; - description "It specifies which sensor information shall be included in - logged NR MDT and immediate NR MDT measurement if they are available. - The following sensor measurement can be included or excluded for the UE."; - reference "Clause 5.10.29 of 3GPP TS 32.422"; - } - - leaf tjMDTTraceCollectionEntityID { - when './tjJobType = "LOGGED_MDT_ONLY" or ./tjJobType = "LOGGED_MBSFN_MDT"'; - type uint8; - mandatory true; - description "It specifies the TCE Id which is sent to the UE in Logged MDT."; - reference "Clause 5.10.11 of 3GPP TS 32.422"; - } - } - - grouping TraceSubtree { - description "Contains classes that manage Tracing. - Should be used in all classes (or classes inheriting from) - - SubNnetwork - - ManagedElement - - ManagedFunction - - If a YANG module wants to augment these classes/list/groupings they must - augment all user classes!"; - - list TraceJob { - description "Represents the Trace Control and Configuration parameters of a - particular Trace Job (see TS 32.421 and TS 32.422 for details). - - To activate Trace Jobs, a MnS consumer has to create TraceJob object - instances on the MnS producer. A MnS consumer can activate a Trace Job - for another MnS consumer since it is not required the value of - tjTraceCollectionEntityAddress or tjStreamingTraceConsumerUri to be his - own. - - When a MnS consumer wishes to deactivate a Trace Job, the MnS consumer - shall delete the corresponding TraceJob instance. - - For details of management Trace Job activation/deactivation see clause - 4.1.1.1.2 of TS 32.422. - - Creation and deletion of TraceJob instances by MnS consumers is optional; - when not supported, the TraceJob instances may be created and deleted by - the system or be pre-installed."; - - key id; - uses top3gpp:Top_Grp ; - container attributes { - uses TraceJobGrp ; - } - } - } -} \ No newline at end of file diff --git a/yang-models/_3gpp-common-yang-extensions.yang b/yang-models/_3gpp-common-yang-extensions.yang deleted file mode 100755 index 9bc0a82be..000000000 --- a/yang-models/_3gpp-common-yang-extensions.yang +++ /dev/null @@ -1,95 +0,0 @@ -module _3gpp-common-yang-extensions { - yang-version 1.1; - namespace urn:3gpp:sa5:_3gpp-common-yang-extensions ; - prefix yext3gpp ; - - organization "3GPP SA5"; - description "The module defines YANG extensions needed - 3GPP YANG modeling. - - Copyright (c) 2019 3GPP. All rights reserved. - - Extensions MUST be defined with the following structure in the - description statement: - - What is this statement. - - Newline, - - This statement can be a substatement of the xxx statements with - cardinality x..y. - - This statement can have the following substatements with - cardinality x..y. - - Newline - - Is changing this statement an editorial, BC(backwards compatible) - or NBC(non-BC) change? - - Newline. - - The argument its meaning and type. Preferably use YANG types and - constraints to define the argument's type. - - Any extension statement can be added with a - deviation/deviate add statement. In this case the restriction about - the parent statement of the extension SHALL be evaluated based on the - target of the deviation statement. - - Support for this module does not mean that a YANG server implements - support for each of these extensions. - Implementers of each specific module using an extensions MUST check - if the server implements support for the used extension. - Note: modules use many extensions which individual - implementations MAY or MAY NOT support. - If support for an extension is missing the extension statement needs - individual handling or it SHOULD be removed from the module using - the extension e.g. with a deviation. - "; - - revision "2019-06-23" { - description "Initial version"; - } - - extension inVariant { - description - "Indicates that the value for the data node can only be set when its - parent data node is being created. To change the value after that, the - parent data node must be deleted and recreated with the data node - having the new value. - - It is unnecessary to use and MUST NOT be used for key leafs. - - The statement MUST only be a substatement of a leaf, leaf-list, list - statements that is config=true. - Zero or one inVariant statement is allowed per parent statement. - NO substatements are allowed. - - Adding this statement is an NBC change, removing it is BC."; - } - - extension initial-value { - description "Specifies a value that the system will set for a leaf - leaf-list if a value is not specified for it when its parent list - or container is created. The value has no effect in any other - modification e.g. changing or removing the value. - - The description statement of the parent statement SHOULD contain - the label 'Initial-value: ' followed by the text from the argument. - - The statement MUST only be a substatement of a leaf or leaf-list. - The statement MUST NOT be present if the leaf or the leaf-list - has a default statement or the type used for the data node - has a default value. - The statement MUST NOT be used for config=false data or in an - action, rpc or notification. - Zero or one initial-value statements are allowed for a leaf parent - statement. Zero or more initial-value statements are allowed for a - leaf-list parent statement. If the leaf-list is ordered-by user, the - initial values are stored in the order they appear in the YANG definition. - NO substatements are allowed. - - Always consider using a YANG-default statement instead. - - Modification of the initial-value is a non-backwards-compatible change. - - The argument specifies a single initial value for a leaf or leaf-list. - The value MUST be part of the valuespace of the leaf/leaf-list. - It follows the same rules as the argument of the default statement."; - - argument "initial-value"; - } -} \ No newline at end of file diff --git a/yang-models/_3gpp-common-yang-types.yang b/yang-models/_3gpp-common-yang-types.yang deleted file mode 100755 index f71e5420b..000000000 --- a/yang-models/_3gpp-common-yang-types.yang +++ /dev/null @@ -1,512 +0,0 @@ -module _3gpp-common-yang-types { - yang-version 1.1; - namespace "urn:3gpp:sa5:_3gpp-common-yang-types"; - prefix "types3gpp"; - - import ietf-inet-types { prefix inet; } - import ietf-yang-types { prefix yang; } - - organization "3GPP SA5"; - contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; - description "The model defines a YANG mapping of the top level - information classes used for management of 5G networks and - network slicing."; - reference "3GPP TS 28.541"; - - revision 2020-11-06 { - description "Removed incorrect S-NSSAI definitions."; - reference "CR-0118"; - } - - revision 2020-03-10 { - description "Removed faulty when statements."; - reference "SP-200229"; - } - - revision 2019-10-25 { - description "Added ManagedNFProfile."; - reference "S5-194457"; - } - - revision 2019-10-16 { - description "Added SAP and usageState."; - reference "S5-193518"; - } - - revision 2019-06-23 { - reference "Initial version."; - } - - grouping ManagedNFProfile { - description "Defines profile for managed NF"; - reference "3GPP TS 23.501"; - - leaf idx { type uint32 ; } - - leaf nfInstanceID { - config false; - mandatory true; - type yang:uuid ; - description "This parameter defines profile for managed NF. - The format of the NF Instance ID shall be a - Universally Unique Identifier (UUID) version 4, - as described in IETF RFC 4122 " ; - } - - leaf-list nfType { - config false; - min-elements 1; - type NfType; - description "Type of the Network Function" ; - } - - leaf hostAddr { - mandatory true; - type inet:host ; - description "Host address of a NF"; - } - - leaf authzInfo { - type string ; - description "This parameter defines NF Specific Service authorization - information. It shall include the NF type (s) and NF realms/origins - allowed to consume NF Service(s) of NF Service Producer."; - reference "See TS 23.501" ; - } - - leaf location { - type string ; - description "Information about the location of the NF instance - (e.g. geographic location, data center) defined by operator"; - reference "TS 29.510" ; - } - - leaf capacity { - mandatory true; - type uint16 ; - description "This parameter defines static capacity information - in the range of 0-65535, expressed as a weight relative to other - NF instances of the same type; if capacity is also present in the - nfServiceList parameters, those will have precedence over this value."; - reference "TS 29.510" ; - } - - leaf nFSrvGroupId { - type string ; - description "This parameter defines identity of the group that is - served by the NF instance. - May be config false or true depending on the ManagedFunction. - Config=true for Udrinfo. Config=false for UdmInfo and AusfInfo. - Shall be present if ../nfType = UDM or AUSF or UDR. "; - reference "TS 29.510" ; - } - - leaf-list supportedDataSetIds { - type enumeration { - enum SUBSCRIPTION; - enum POLICY; - enum EXPOSURE; - enum APPLICATION; - } - description "List of supported data sets in the UDR instance. - May be present if ../nfType = UDR"; - reference "TS 29.510" ; - } - - leaf-list smfServingAreas { - type string ; - description "Defines the SMF service area(s) the UPF can serve. - Shall be present if ../nfType = UPF"; - reference "TS 29.510" ; - } - - leaf priority { - type uint16; - description "This parameter defines Priority (relative to other NFs - of the same type) in the range of 0-65535, to be used for NF selection; - lower values indicate a higher priority. If priority is also present - in the nfServiceList parameters, those will have precedence over - this value. Shall be present if ../nfType = AMF "; - reference "TS 29.510" ; - } - } - - typedef usageState { - type enumeration { - enum IDLE; - enum ACTIVE; - enum BUSY; - } - description "It describes whether or not the resource is actively in - use at a specific instant, and if so, whether or not it has spare - capacity for additional users at that instant. The value is READ-ONLY."; - reference "ITU T Recommendation X.731"; - } - - grouping SAP { - leaf host { - type inet:host; - mandatory true; - } - leaf port { - type inet:port-number; - mandatory true; - } - description "Service access point."; - reference "TS 28.622"; - } - - typedef Mcc { - description "The mobile country code consists of three decimal digits, - The first digit of the mobile country code identifies the geographic - region (the digits 1 and 8 are not used):"; - type string { - pattern '[02-79][0-9][0-9]'; - } - reference "3GPP TS 23.003 subclause 2.2 and 12.1"; - } - - typedef Mnc { - description "The mobile network code consists of two or three - decimal digits (for example: MNC of 001 is not the same as MNC of 01)"; - type string { - pattern '[0-9][0-9][0-9]|[0-9][0-9]'; - } - reference "3GPP TS 23.003 subclause 2.2 and 12.1"; - } - - grouping PLMNId { - leaf mcc { - mandatory true; - type Mcc; - } - leaf mnc { - mandatory true; - type Mnc; - } - reference "TS 23.658"; - } - - typedef Nci { - description "NR Cell Identity. The NCI shall be of fixed length of 36 bits - and shall be coded using full hexadecimal representation. - The exact coding of the NCI is the responsibility of each PLMN operator"; - reference "TS 23.003"; - type union { - type string { - length 36; - pattern '[01]+'; - } - type string { - length 9; - pattern '[a-fA-F0-9]*'; - } - } - } - - typedef OperationalState { - reference "3GPP TS 28.625 and ITU-T X.731"; - type enumeration { - enum DISABLED { - value 0; - description "The resource is totally inoperable."; - } - - enum ENABLED { - value 1; - description "The resource is partially or fully operable."; - } - - } - } - - typedef AdministrativeState { - reference "3GPP TS 28.625 and ITU-T X.731"; - type enumeration { - enum LOCKED { - value 0; - description "The resource is administratively prohibited from performing - services for its users."; - } - - enum UNLOCKED { - value 1; - description "The resource is administratively permitted to perform - services for its users. This is independent of its inherent - operability."; - } - - enum SHUTTINGDOWN { - value 2; - description "Use of the resource is administratively permitted to - existing instances of use only. While the system remains in - the shutting down state the manager or the managed element - may at any time cause the resource to transition to the - locked state."; - } - } - } - - typedef AvailabilityStatus { - type enumeration { - enum IN_TEST; - enum FAILED; - enum POWER_OFF; - enum OFF_LINE; - enum OFF_DUTY; - enum DEPENDENCY; - enum DEGRADED; - enum NOT_INSTALLED; - enum LOG_FULL; - } - } - - typedef CellState { - type enumeration { - enum IDLE; - enum INACTIVE; - enum ACTIVE; - } - } - - typedef Nrpci { - type uint32; - description "Physical Cell Identity (PCI) of the NR cell."; - reference "TS 36.211 subclause 6.11"; - } - - typedef Tac { - type int32 { - range 0..16777215 ; - } - description "Tracking Area Code"; - reference "TS 23.003 clause 19.4.2.3"; - } - - typedef AmfRegionId { - type union { - type uint8 ; - type string { - length 8; - pattern '[01]*'; - } - } - reference "clause 2.10.1 of 3GPP TS 23.003"; - } - - typedef AmfSetId { - type union { - type uint16 { - range '0..1023'; - } - type string { - length 8; - pattern '[01]*'; - } - } - reference "clause 2.10.1 of 3GPP TS 23.003"; - } - - typedef AmfPointer { - type union { - type uint8 { - range '0..63'; - } - type string { - length 6; - pattern '[01]*'; - } - } - reference "clause 2.10.1 of 3GPP TS 23.003"; - } - - grouping AmfIdentifier { - leaf amfRegionId { - type AmfRegionId; - } - leaf amfSetId { - type AmfSetId; - } - leaf amfPointer { - type AmfPointer; - } - description "The AMFI is constructed from an AMF Region ID, - an AMF Set ID and an AMF Pointer. - The AMF Region ID identifies the region, - the AMF Set ID uniquely identifies the AMF Set within the AMF Region, and - the AMF Pointer uniquely identifies the AMF within the AMF Set. "; - } - -// type definitions especially for core NFs - - typedef NfType { - type enumeration { - enum NRF; - enum UDM; - enum AMF; - enum SMF; - enum AUSF; - enum NEF; - enum PCF; - enum SMSF; - enum NSSF; - enum UDR; - enum LMF; - enum GMLC; - enum 5G_EIR; - enum SEPP; - enum UPF; - enum N3IWF; - enum AF; - enum UDSF; - enum BSF; - enum CHF; - } - } - - typedef NotificationType { - type enumeration { - enum N1_MESSAGES; - enum N2_INFORMATION; - enum LOCATION_NOTIFICATION; - } - } - - typedef Load { - description "Latest known load information of the NF, percentage "; - type uint8 { - range 0..100; - } - } - - typedef N1MessageClass { - type enumeration { - enum 5GMM; - enum SM; - enum LPP; - enum SMS; - } - } - - typedef N2InformationClass { - type enumeration { - enum SM; - enum NRPPA; - enum PWS; - enum PWS_BCAL; - enum PWS_RF; - } - } - - grouping DefaultNotificationSubscription { - - leaf notificationType { - type NotificationType; - } - - leaf callbackUri { - type inet:uri; - } - - leaf n1MessageClass { - type N1MessageClass; - } - - leaf n2InformationClass { - type N2InformationClass; - } - } - - grouping Ipv4AddressRange { - leaf start { - type inet:ipv4-address; - } - leaf end { - type inet:ipv4-address; - } - } - - grouping Ipv6PrefixRange { - leaf start { - type inet:ipv6-prefix; - } - leaf end { - type inet:ipv6-prefix; - } - } - - typedef NsiId { - type string; - } - - typedef UeMobilityLevel { - type enumeration { - enum STATIONARY; - enum NOMADIC; - enum RESTRICTED_MOBILITY; - enum FULLY_MOBILITY; - } - } - - typedef ResourceSharingLevel { - type enumeration { - enum SHARED; - enum NOT_SHARED; - } - } - - typedef TxDirection { - type enumeration { - enum DL; - enum UL; - enum DL_AND_UL; - } - } - - grouping AddressWithVlan { - leaf ipAddress { - type inet:ip-address; - } - leaf vlanId { - type uint16; - } - } - - typedef DistinguishedName { // TODO is this equivalent to TS 32.300 ? - type string { - pattern '([a-zA-Z][a-zA-Z0-9-]*=(\\( |#|\\|>|<|;|"|\+|,|[a-fA-F0-9]{2})|[^\\><;"+,# ])' - + '((\\( |#|\\|>|<|;|"|\+|,|[a-fA-F0-9]{2})|[^\\><;"+,])*' - + '(\\( |#|\\|>|<|;|"|\+|,|[a-fA-F0-9]{2})|[^\\><;"+, ]))?' - + '[,\+])*[a-zA-Z][a-zA-Z0-9-]*=(\\( |#|\\|>|<|;|"|\+|,|[a-fA-F0-9]{2})|[^\\><;"+,# ])' - + '((\\( |#|\\|>|<|;|"|\+|,|[a-fA-F0-9]{2})' - + '|[^\\><;"+,])*(\\( |#|\\|>|<|;|"|\+|,|[a-fA-F0-9]{2})|[^\\><;"+, ]))?'; - } - description "Represents the international standard for the representation - of Distinguished Name (RFC 4512). - The format of the DistinguishedName REGEX is: - {AttributeType = AttributeValue} - - AttributeType consists of alphanumeric and hyphen (OIDs not allowed). - All other characters are restricted. - The Attribute value cannot contain control characters or the - following characters : \\ > < ; \" + , (Comma) and White space - The Attribute value can contain the following characters if they - are excaped : \\ > < ; \" + , (Comma) and White space - The Attribute value can contain control characters if its an escaped - double digit hex number. - Examples could be - UID=nobody@example.com,DC=example,DC=com - CN=John Smith,OU=Sales,O=ACME Limited,L=Moab,ST=Utah,C=US"; - reference "RFC 4512 Lightweight Directory Access Protocol (LDAP): - Directory Information Models"; - } // recheck regexp it doesn't handle posix [:cntrl:] - - typedef QOffsetRange { - type int8 { - range "-24 | -22 | -20 | -18 | -16 | -14 | -12 | -10 | -8 | -6 | " + - " -5 | -4 | -3 | -2 | -1 | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 8 | 10 | " + - " 12 | 14 | 16 | 18 | 20 | 22 | 24"; - } - units dB; - } -} \ No newline at end of file diff --git a/yang-models/_3gpp-nr-nrm-beam.yang b/yang-models/_3gpp-nr-nrm-beam.yang deleted file mode 100755 index 95f4677b7..000000000 --- a/yang-models/_3gpp-nr-nrm-beam.yang +++ /dev/null @@ -1,96 +0,0 @@ -module _3gpp-nr-nrm-beam { - yang-version 1.1; - namespace "urn:3gpp:sa5:_3gpp-nr-nrm-nrnetwork-beam"; - prefix "beam3gpp"; - - import _3gpp-nr-nrm-commonbeamformingfunction { prefix cbeamff3gpp; } - import _3gpp-common-top { prefix top3gpp; } - import _3gpp-common-managed-function { prefix mf3gpp; } - import _3gpp-common-managed-element { prefix me3gpp; } - import _3gpp-nr-nrm-gnbdufunction { prefix gnbdu3gpp; } - import _3gpp-nr-nrm-nrsectorcarrier { prefix nrsectcarr3gpp; } - - organization "3GPP SA5"; - description "Defines the YANG mapping of the Beam Information - Object Class (IOC) that is part of the NR Network Resource Model (NRM)."; - reference "3GPP TS 28.541 5G Network Resource Model (NRM)"; - - revision 2019-11-22 { - description "Initial revision"; - reference "S5-197643"; - } - - typedef BeamType { - type enumeration { - enum SSB-BEAM; - } - } - - grouping BeamGrp { - description "Represents the Beam IOC."; - reference "3GPP TS 28.541"; - uses mf3gpp:ManagedFunctionGrp; - - leaf beamIndex { - description "Index of the beam. "; - mandatory true; - type int32; - } - - leaf beamType { - description "The type of the beam. "; - mandatory false; - type BeamType; - } - - leaf beamAzimuth { - description "The azimuth of a beam transmission, which means the horizontal beamforming pointing angle (beam peak direction) in the (Phi) ?-axis in 1/10th degree resolution. The pointing angle is the direction equal to the geometric centre of the half-power contour of the beam relative to the reference plane. Zero degree implies explicit antenna bearing (boresight). Positive angle implies clockwise from the antenna bearing."; - reference "3GPP TS 38.104, TS 38.901, TS 28.662"; - mandatory false; - type int32 { range "-1800..1800"; } - units "0.1"; - } - - leaf beamTilt { - description "The tilt of a beam transmission, which means the vertical beamforming pointing angle (beam peak direction) in the (Theta) ?-axis in 1/10th degree resolution. -The pointing angle is the direction equal to the geometric centre of the half-power contour of the beam relative to the reference plane. Positive value implies downtilt."; - reference "3GPP TS 38.104, TS 38.901, TS 28.662"; - mandatory false; - type int32 { range "-900..900"; } - units "0.1"; - } - - - - leaf beamHorizWidth { - description " The Horizontal beamWidth of a beam transmission, which means the horizontal beamforming half-power (3dB down) beamwidth in the (Phi) ?-axis in 1/10th degree resolution."; - reference "3GPP TS 38.104, TS 38.901"; - mandatory false; - type int32 { range "0..3599"; } - units "0.1"; - } - - leaf beamVertWidth { - description " The Vertical beamWidth of a beam transmission, which means the vertical beamforming half-power (3dB down) beamwidth in the (Theta) ?-axis in 1/10th degree resolution."; - reference "3GPP TS 38.104, TS 38.901"; - mandatory false; - type int32 { range "0..1800"; } - units "0.1"; - } - - - } - - augment "/me3gpp:ManagedElement/gnbdu3gpp:GNBDUFunction/nrsectcarr3gpp:NRSectorCarrier/cbeamff3gpp:CommonBeamformingFunction" { - - list Beam { - description "Represents the per-Beam information required for, e.g. beam performance management utilizing measurements generated in the RAN. Can have spatial attributes of horizontal/azimuth (ie: Phi ?-axis) and vertical/tilt (ie: Theta ?-axis) beam pointing direction and beam width attributes."; - reference "3GPP TS 28.541"; - key id; - uses top3gpp:Top_Grp; - container attributes { - uses BeamGrp; - } - } - } -} \ No newline at end of file diff --git a/yang-models/_3gpp-nr-nrm-bwp.yang b/yang-models/_3gpp-nr-nrm-bwp.yang deleted file mode 100755 index bd18865a6..000000000 --- a/yang-models/_3gpp-nr-nrm-bwp.yang +++ /dev/null @@ -1,104 +0,0 @@ -module _3gpp-nr-nrm-bwp { - yang-version 1.1; - namespace "urn:3gpp:sa5:_3gpp-nr-nrm-bwp"; - prefix "bwp3gpp"; - - import _3gpp-common-managed-element { prefix me3gpp; } - import _3gpp-common-managed-function { prefix mf3gpp; } - import _3gpp-common-top { prefix top3gpp; } - import _3gpp-nr-nrm-gnbdufunction { prefix gnbdu3gpp; } - - organization "3GPP SA5"; - contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; - description "Defines the YANG mapping of the BWP Information Object Class - (IOC) that is part of the NR Network Resource Model (NRM)."; - reference "3GPP TS 28.541 5G Network Resource Model (NRM)"; - - revision 2020-11-17 { reference CR-0410 ; } - revision 2019-10-28 { reference S5-193518 ; } - revision 2019-06-17 { reference "Initial revision"; } - - typedef CyclicPrefix { - type enumeration { - enum NORMAL; - enum EXTENDED; - } - } - - typedef BwpContext { - type enumeration { - enum DL; - enum UL; - enum SUL; - } - } - typedef IsInitialBwp { - type enumeration { - enum INITIAL; - enum OTHER; - } - } - - grouping BWPGrp { - description "Represents the BWP IOC."; - reference "3GPP TS 28.541"; - uses mf3gpp:ManagedFunctionGrp; - - leaf bwpContext { - description "Identifies whether the object is used for downlink, uplink - or supplementary uplink."; - mandatory true; - type BwpContext; - } - - leaf isInitialBwp { - description "Identifies whether the object is used for initial or other - BWP."; - mandatory true; - type IsInitialBwp; - } - - leaf subCarrierSpacing { - description "Subcarrier spacing configuration for a BWP."; - reference "3GPP TS 38.104"; - mandatory true; - type uint32 { range "15 | 30 | 60 | 120"; } - units kHz; - } - - leaf cyclicPrefix { - description "Cyclic prefix, which may be normal or extended."; - reference "3GPP TS 38.211"; - mandatory true; - type CyclicPrefix; - } - - leaf startRB { - description "Offset in common resource blocks to common resource block 0 - for the applicable subcarrier spacing for a BWP."; - reference "N_BWP_start in 3GPP TS 38.211"; - mandatory true; - type uint32; - } - - leaf numberOfRBs { - description "Number of physical resource blocks for a BWP."; - reference "N_BWP_size in 3GPP TS 38.211"; - mandatory true; - type uint32; - } - } - - augment "/me3gpp:ManagedElement/gnbdu3gpp:GNBDUFunction" { - - list BWP { - description "Represents a bandwidth part (BWP)."; - key id; - uses top3gpp:Top_Grp; - container attributes { - uses BWPGrp; - } - uses mf3gpp:ManagedFunctionContainedClasses; - } - } -} \ No newline at end of file diff --git a/yang-models/_3gpp-nr-nrm-cesmanagementfunction.yang b/yang-models/_3gpp-nr-nrm-cesmanagementfunction.yang deleted file mode 100755 index 8aa498d81..000000000 --- a/yang-models/_3gpp-nr-nrm-cesmanagementfunction.yang +++ /dev/null @@ -1,64 +0,0 @@ -module _3gpp-nr-nrm-cesmanagementfunction { - yang-version 1.1; - namespace "urn:3gpp:sa5:_3gpp-nr-nrm-cesmanagementfunction"; - prefix "cesmanagementfunction3gpp"; - - import _3gpp-common-subnetwork { prefix subnet3gpp; } - import _3gpp-common-top { prefix top3gpp; } - import _3gpp-nr-nrm-nrcellcu { prefix nrcellcu3gpp; } - import _3gpp-nr-nrm-gnbcucpfunction { prefix gnbcucp3gpp; } - import _3gpp-common-managed-element { prefix me3gpp; } - - - organization "3GPP SA5"; - contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; - description "Defines the YANG mapping of the CESManagementFunction Information Object Class - (IOC) that is part of the NR Network Resource Model (NRM)."; - reference "3GPP TS 28.541 5G Network Resource Model (NRM)"; - - revision 2020-05-08 { reference S5-203316; } - - - grouping CESManagementFunctionGrp { - description "Represents the CESManagementFunction IOC."; - reference "3GPP TS 28.541"; - uses top3gpp:Top_Grp; - - leaf cesSwitch { - description "This attribute determines whether the Cross Domain-Centralized SON energy saving function is enabled or disabled."; - type boolean; - } - - leaf energySavingState { - description "Specifies the status regarding the energy saving in the cell. If the value of energySavingControl is toBeEnergySaving, then it shall be tried to achieve the value isEnergySaving for the energySavingState. If the value of energySavingControl is toBeNotEnergySaving, then it shall be tried to achieve the value isNotEnergySaving for the energySavingState. "; - type enumeration{ - enum isNotEnergySaving; - enum isEnergySaving; - } - } - - - leaf energySavingControl { - description "This attribute allows the Cross Domain-Centralized SON energy saving function to initiate energy saving activation or deactivation."; - type enumeration{ - enum toBeEnergySaving; - enum toBeNotEnergySaving; - } - } - - - } - - augment "/me3gpp:ManagedElement/gnbcucp3gpp:GNBCUCPFunction/nrcellcu3gpp:NRCellCU" { - if-feature nrcellcu3gpp:CESManagementFunction; - uses CESManagementFunctionGrp; - } - augment "/me3gpp:ManagedElement" { - if-feature me3gpp:CESManagementFunction; - uses CESManagementFunctionGrp; - } - augment "/subnet3gpp:SubNetwork" { - if-feature subnet3gpp:CESManagementFunction; - uses CESManagementFunctionGrp; - } -} \ No newline at end of file diff --git a/yang-models/_3gpp-nr-nrm-commonbeamformingfunction.yang b/yang-models/_3gpp-nr-nrm-commonbeamformingfunction.yang deleted file mode 100755 index e900d4fc4..000000000 --- a/yang-models/_3gpp-nr-nrm-commonbeamformingfunction.yang +++ /dev/null @@ -1,62 +0,0 @@ -module _3gpp-nr-nrm-commonbeamformingfunction { - yang-version 1.1; - namespace "urn:3gpp:sa5:_3gpp-nr-nrm-nrnetwork-commonbeamformingfunction"; - prefix "combeamformfunc3gpp"; - - import _3gpp-nr-nrm-nrsectorcarrier { prefix nrsectcarr3gpp; } - import _3gpp-common-top { prefix top3gpp; } - import _3gpp-common-managed-function { prefix mf3gpp; } - import _3gpp-common-managed-element { prefix me3gpp; } - import _3gpp-nr-nrm-gnbdufunction { prefix gnbdu3gpp; } - - - organization "3GPP SA5"; - description "Defines the YANG mapping of the CommonBeamformingFuntion Information - Object Class (IOC) that is part of the NR Network Resource Model (NRM)."; - reference "3GPP TS 28.541 5G Network Resource Model (NRM)"; - - revision 2019-11-22 { - description "Initial revision"; - reference "S5-197643"; - } - - grouping CommonBeamformingFunctionGrp { - description "Represents the CommonBeamformingFunction IOC."; - reference "3GPP TS 28.541"; - uses mf3gpp:ManagedFunctionGrp; - - leaf coverageShape { - description "Identifies the sector carrier coverage shape described by the envelope of the contained SSB beams. The coverage shape is implementation dependent."; - mandatory true; - type int32 { range "0..65535"; } - } - - leaf digitalAzimuth { - description "Digitally-controlled azimuth through beamforming. It represents the horizontal pointing direction of the antenna relative to the antenna bore sight, representing the total non-mechanical horizontal pan of the selected coverageShape. Positive value gives azimuth to the right and negative value gives an azimuth to the left."; - - reference "3GPP TS 38.104, TS 38.901, TS 28.662"; - type int32 { range "-1800..1800"; } - units "0.1"; - } - - leaf digitalTilt { - description "Digitally-controlled tilt through beamforming. It represents the vertical pointing direction of the antenna relative to the antenna bore sight, representing the total non-mechanical vertical tilt of the selected coverageShape. Positive value gives downwards tilt and negative value gives upwards tilt."; - reference "3GPP TS 38.104, TS 38.901, TS 28.662"; - type int32 { range "-900..900"; } - units "0.1"; - } - } - - augment "/me3gpp:ManagedElement/gnbdu3gpp:GNBDUFunction/nrsectcarr3gpp:NRSectorCarrier" { - - list CommonBeamformingFunction { - description "Represents common beamforming functionality (eg: SSB beams) for the NRSectorCarrier."; - reference "3GPP TS 28.541"; - key id; - uses top3gpp:Top_Grp; - container attributes { - uses CommonBeamformingFunctionGrp; - } - } - } -} \ No newline at end of file diff --git a/yang-models/_3gpp-nr-nrm-cpciconfigurationfunction.yang b/yang-models/_3gpp-nr-nrm-cpciconfigurationfunction.yang deleted file mode 100755 index 1437acece..000000000 --- a/yang-models/_3gpp-nr-nrm-cpciconfigurationfunction.yang +++ /dev/null @@ -1,67 +0,0 @@ -module _3gpp-nr-nrm-cpciconfigurationfunction { - yang-version 1.1; - namespace "urn:3gpp:sa5:_3gpp-nr-nrm-cpciconfigurationfunction"; - prefix "cpciconfigurationfunction3gpp"; - - import _3gpp-common-subnetwork { prefix subnet3gpp; } - import _3gpp-common-top { prefix top3gpp; } - import _3gpp-nr-nrm-nrcelldu { prefix nrcelldu3gpp; } - import _3gpp-nr-nrm-gnbdufunction { prefix gnbdu3gpp; } - import _3gpp-common-managed-element { prefix me3gpp; } - - organization "3GPP SA5"; - contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; - description "Defines the YANG mapping of the CPCIConfigurationFunction Information Object Class - (IOC) that is part of the NR Network Resource Model (NRM)."; - reference "3GPP TS 28.541 5G Network Resource Model (NRM)"; - - revision 2020-05-08 { reference S5-203316; } - - - grouping CPCIConfigurationFunctionGrp { - description "Represents the CPCICONFIGURATIONFunction IOC."; - reference "3GPP TS 28.541"; - uses top3gpp:Top_Grp; - - - list cSonPciList { - key NRPci; - description " This holds a list of physical cell identities that can be assigned to the pci attribute by gNB. The assignment algorithm is not specified. This attribute shall be supported if and only if the C-SON PCI configuration is supported."; - leaf NRPci {type int32;} - container attributes { - uses CSonPciListGrp; - } - } - - - leaf cPciConfigurationControl { - description "This attribute determines whether the Cross Domain-Centralized SON PCI configuration function is enabled or disabled."; - type boolean; - } - - } - - grouping CSonPciListGrp { - description "Represents the C-SON PCI list for the PCI configuration function."; - - leaf NRPci { - description "This attribute determines the NR PCI."; - type int32 { range "0..1007"; } - units "1"; - } - } - - - augment "/me3gpp:ManagedElement/gnbdu3gpp:GNBDUFunction/nrcelldu3gpp:NRCellDU" { - if-feature nrcelldu3gpp:CPCIConfigurationFunction; - uses CPCIConfigurationFunctionGrp; - } - augment "/me3gpp:ManagedElement" { - if-feature me3gpp:CPCIConfigurationFunction; - uses CPCIConfigurationFunctionGrp; - } - augment "/subnet3gpp:SubNetwork" { - if-feature subnet3gpp:CPCIConfigurationFunction; - uses CPCIConfigurationFunctionGrp; - } -} \ No newline at end of file diff --git a/yang-models/_3gpp-nr-nrm-danrmanagementfunction.yang b/yang-models/_3gpp-nr-nrm-danrmanagementfunction.yang deleted file mode 100755 index 9ec94fc20..000000000 --- a/yang-models/_3gpp-nr-nrm-danrmanagementfunction.yang +++ /dev/null @@ -1,44 +0,0 @@ -module _3gpp-nr-nrm-danrmanagementfunction { - yang-version 1.1; - namespace "urn:3gpp:sa5:_3gpp-nr-nrm-danrmanagementfunction"; - prefix "danrmanagementfunction3gpp"; - - - import _3gpp-common-top { prefix top3gpp; } - import _3gpp-nr-nrm-gnbcucpfunction { prefix gnbcucp3gpp; } - import _3gpp-common-managed-element { prefix me3gpp; } - - - - organization "3GPP SA5"; - contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; - description "Defines the YANG mapping of the DANRManagementFunction Information Object Class - (IOC) that is part of the NR Network Resource Model (NRM)."; - reference "3GPP TS 28.541 5G Network Resource Model (NRM)"; - - revision 2020-05-08 { reference S5-203316; } - - - grouping DANRManagementFunctionGrp { - description "Represents the DANRManagementFunction IOC."; - reference "3GPP TS 28.541"; - uses top3gpp:Top_Grp; - - leaf intrasystemANRManagementSwitch { - description "This attribute determines whether the intra-system ANR function is activated or deactivated."; - type boolean; - } - - leaf intersystemANRManagementSwitch { - description "This attribute determines whether the inter-system ANR function is activated or deactivated."; - type boolean; - } - - - } - - augment "/me3gpp:ManagedElement/gnbcucp3gpp:GNBCUCPFunction" { - if-feature gnbcucp3gpp:DANRManagementFunction; - uses DANRManagementFunctionGrp; - } -} \ No newline at end of file diff --git a/yang-models/_3gpp-nr-nrm-desmanagementfunction.yang b/yang-models/_3gpp-nr-nrm-desmanagementfunction.yang deleted file mode 100755 index b4b86d2b0..000000000 --- a/yang-models/_3gpp-nr-nrm-desmanagementfunction.yang +++ /dev/null @@ -1,261 +0,0 @@ -module _3gpp-nr-nrm-desmanagementfunction { - yang-version 1.1; - namespace "urn:3gpp:sa5:_3gpp-nr-nrm-desmanagementfunction"; - prefix "desmanagementfunction3gpp"; - - - import _3gpp-common-top { prefix top3gpp; } - import _3gpp-nr-nrm-gnbcucpfunction { prefix gnbcucp3gpp; } - import _3gpp-common-managed-element { prefix me3gpp; } - import _3gpp-nr-nrm-nrcellcu { prefix nrcellcu3gpp; } - import _3gpp-common-subnetwork { prefix subnet3gpp; } - - - organization "3GPP SA5"; - contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; - description "Defines the YANG mapping of the DESManagementFunction Information Object Class - (IOC) that is part of the NR Network Resource Model (NRM)."; - reference "3GPP TS 28.541 5G Network Resource Model (NRM)"; - - revision 2020-05-08 { reference S5-203316; } - - - grouping DESManagementFunctionGrp { - description "Represents the DESManagementFunction IOC."; - reference "3GPP TS 28.541"; - uses top3gpp:Top_Grp; - - leaf desSwitch { - description "This attribute determines whether the Distributed SON or Domain-Centralized SON energy saving function is enabled or disabled."; - type boolean; - } - - list intraRatEsActivationOriginalCellLoadParameters { - key loadThreshold; - description "This attributes is relevant, if the cell acts as an original cell.This attribute indicates the traffic load threshold and the time duration, which are used by distributed ES algorithms to allow a cell to enter the energySaving state."; - leaf loadThreshold {type int32;} - container attributes { - uses IntraRatEsActivationOriginalCellLoadParametersGrp; - } - } - - - list intraRatEsActivationCandidateCellsLoadParameters { - key loadThreshold; - description "This attribute indicates the traffic load threshold and the time duration, which are used by distributed ES algorithms level to allow a n 'original' cell to enter the energySaving state."; - leaf loadThreshold {type int32;} - container attributes { - uses IntraRatEsActivationCandidateCellsLoadParametersGrp; - } - } - - list intraRatEsDeactivationCandidateCellsLoadParameters { - key loadThreshold; - description "This attributes is relevant, if the cell acts as a candidate cell.This attribute indicates the traffic load threshold and the time duration which is used by distributed ES algorithms to allow a cell to leave the energySaving state."; - leaf loadThreshold {type int32;} - container attributes { - uses IntraRatEsDeactivationCandidateCellsLoadParametersGrp; - } - } - - list esNotAllowedTimePeriod { - key startTimeandendTime; - description "This attribute indicates a list of time periods during which inter-RAT energy saving is not allowed."; - leaf startTimeandendTime {type string;} - container attributes { - uses EsNotAllowedTimePeriodGrp; - } - } - - list interRatEsActivationOriginalCellParameters { - key loadThreshold; - description "This attribute indicates the traffic load threshold and the time duration, which are used by distributed inter-RAT ES algorithms to allow an original cell to enter the energySaving state."; - leaf loadThreshold {type int32;} - container attributes { - uses InterRatEsActivationOriginalCellParametersGrp; - } - } - - list interRatEsActivationCandidateCellParameters { - key loadThreshold; - description "This attribute indicates the traffic load threshold and the time duration, which are used by distributed inter-RAT ES algorithms to allow an original cell to enter the energySaving state."; - leaf loadThreshold {type int32;} - container attributes { - uses InterRatEsActivationCandidateCellParametersGrp; - } - } - - list interRatEsDeactivationCandidateCellParameters { - key loadThreshold; - description "This attribute indicates the traffic load threshold and the time duration which is used by distributed inter-RAT ES algorithms to allow an original cell to leave the energySaving state."; - leaf loadThreshold {type int32;} - container attributes { - uses InterRatEsDeactivationCandidateCellParametersGrp; - } - } - - leaf energySavingState { - description "Specifies the status regarding the energy saving in the cell."; - type enumeration { - enum isNotEnergySaving; - enum isEnergySaving; - } - } - - leaf isProbingCapable { - description " This attribute indicates whether this cell is capable of performing the ES probing procedure."; - type enumeration{ - enum yes; - enum no; - } - } - - } - - grouping IntraRatEsActivationOriginalCellLoadParametersGrp { - description "Represents the the traffic load threshold and the time duration."; - - leaf loadThreshold { - description "This attribute is used by distributed ES algorithms to allow a cell to enter the energySaving state."; - type int32 { range "0..10000"; } - units "1"; - } - - - leaf timeDuration { - description " The time duration indicates how long the load needs to have been below the threshold."; - type int32 { range "0..900"; } - units "1"; - } - } - - grouping IntraRatEsActivationCandidateCellsLoadParametersGrp { - description "Represents the the traffic load threshold and the time duration."; - - leaf loadThreshold { - description "This attribute is used by distributed ES algorithms to allow a cell to enter the energySaving state."; - type int32 { range "0..10000"; } - units "1"; - } - - - leaf timeDuration { - description " The time duration indicates how long the load needs to have been below the threshold."; - type int32 { range "0..900"; } - units "1"; - } - } - - grouping IntraRatEsDeactivationCandidateCellsLoadParametersGrp { - description "Represents the the traffic load threshold and the time duration."; - - leaf loadThreshold { - description "This attribute is used by distributed ES algorithms to allow a cell to enter the energySaving state."; - type int32 { range "0..10000"; } - units "1"; - } - - - leaf timeDuration { - description " The time duration indicates how long the load needs to have been below the threshold."; - type int32 { range "0..900"; } - units "1"; - } - } - - grouping EsNotAllowedTimePeriodGrp { - description "Represents the the traffic load threshold and the time duration."; - - leaf startTimeandendTime { - description "This field indicate valid UTC time."; - type string; - } - - - leaf periodOfDay { - description "This field indicate the period of day."; - type string; - } - - leaf daysOfWeekList { - description "This field indicate the list of weekday."; - type string; - } - - leaf listoftimeperiods { - description "This field indicate the list of time periods."; - type string; - } - - } - - grouping InterRatEsActivationOriginalCellParametersGrp { - description "Represents the the traffic load threshold and the time duration."; - - leaf loadThreshold { - description "The time duration indicates how long the traffic load (both for UL and DL) needs to have been below the threshold."; - type int32 { range "0..10000"; } - units "1"; - } - - - leaf timeDuration { - description " The time duration indicates how long the load needs to have been below the threshold."; - type int32 { range "0..900"; } - units "1"; - } - } - - grouping InterRatEsActivationCandidateCellParametersGrp { - description "Represents the the traffic load threshold and the time duration."; - - leaf loadThreshold { - description "This attribute is used by distributed ES algorithms to allow a cell to enter the energySaving state."; - type int32 { range "0..10000"; } - units "1"; - } - - - leaf timeDuration { - description "The time duration indicates how long the traffic load (both for UL and DL) in the candidate cell needs to have been below the threshold before any original cells which will be provided backup coverage by the candidate cell enters energySaving state."; - type int32 { range "0..900"; } - units "1"; - } - } - - grouping InterRatEsDeactivationCandidateCellParametersGrp { - description "Represents the the traffic load threshold and the time duration."; - - leaf loadThreshold { - description "This attribute is used by distributed ES algorithms to allow a cell to enter the energySaving state."; - type int32 { range "0..10000"; } - units "1"; - } - - - leaf timeDuration { - description "The time duration indicates how long the traffic load (either for UL or DL) in the candidate cell needs to have been above the threshold to wake up one or more original cells which have been provided backup coverage by the candidate cell."; - type int32 { range "0..900"; } - units "1"; - } - } - - - augment "/me3gpp:ManagedElement/gnbcucp3gpp:GNBCUCPFunction/nrcellcu3gpp:NRCellCU" { - if-feature nrcellcu3gpp:DESManagementFunction; - uses DESManagementFunctionGrp; - } - augment "/me3gpp:ManagedElement/gnbcucp3gpp:GNBCUCPFunction" { - if-feature gnbcucp3gpp:DESManagementFunction; - uses DESManagementFunctionGrp; - } - augment "/me3gpp:ManagedElement" { - if-feature me3gpp:DESManagementFunction; - uses DESManagementFunctionGrp; - } - augment "/subnet3gpp:SubNetwork" { - if-feature subnet3gpp:DESManagementFunction; - uses DESManagementFunctionGrp; - } - -} \ No newline at end of file diff --git a/yang-models/_3gpp-nr-nrm-dmrofunction.yang b/yang-models/_3gpp-nr-nrm-dmrofunction.yang deleted file mode 100755 index c657f1587..000000000 --- a/yang-models/_3gpp-nr-nrm-dmrofunction.yang +++ /dev/null @@ -1,70 +0,0 @@ -module _3gpp-nr-nrm-dmrofunction { - yang-version 1.1; - namespace "urn:3gpp:sa5:_3gpp-nr-nrm-dmrofunction"; - prefix "dmrofunction3gpp"; - - import _3gpp-common-subnetwork { prefix subnet3gpp; } - import _3gpp-common-top { prefix top3gpp; } - import _3gpp-nr-nrm-gnbcucpfunction { prefix gnbcucp3gpp; } - import _3gpp-common-managed-element { prefix me3gpp; } - import _3gpp-nr-nrm-nrcellcu { prefix nrcellcu3gpp; } - - - organization "3GPP SA5"; - contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; - description "Defines the YANG mapping of the DMROFunction Information Object Class - (IOC) that is part of the NR Network Resource Model (NRM)."; - reference "3GPP TS 28.541 5G Network Resource Model (NRM)"; - - revision 2020-05-08 { reference S5-203316; } - - - grouping DMROFunctionGrp { - description "Represents the DMROFunction IOC."; - reference "3GPP TS 28.541"; - uses top3gpp:Top_Grp; - - leaf maximumDeviationHoTrigger { - description "This parameter defines the maximum allowed absolute deviation of the Handover Trigger, from the default point of operation."; - type int32 { range "-20..20"; } - units "0.5"; - } - - leaf minimumTimeBetweenHoTriggerChange { - description "This parameter defines the minimum allowed time interval between two Handover Trigger change performed by MRO. This is used to control the stability and convergence of the algorithm."; - type int32 { range "0..604800"; } - units "1"; - } - - leaf tstoreUEcntxt { - description "The timer used for detection of too early HO, too late HO and HO to wrong cell."; - type int32 { range "0..1023"; } - units "100"; - } - - - leaf dmroControl { - description " This attribute determines whether the MRO function is enabled or disabled."; - type boolean; - } - - } - - - augment "/me3gpp:ManagedElement/gnbcucp3gpp:GNBCUCPFunction/nrcellcu3gpp:NRCellCU" { - if-feature nrcellcu3gpp:DMROFunction; - uses DMROFunctionGrp; - } - augment "/me3gpp:ManagedElement/gnbcucp3gpp:GNBCUCPFunction" { - if-feature gnbcucp3gpp:DMROFunction; - uses DMROFunctionGrp; - } - augment "/me3gpp:ManagedElement" { - if-feature me3gpp:DMROFunction; - uses DMROFunctionGrp; - } - augment "/subnet3gpp:SubNetwork" { - if-feature subnet3gpp:DMROFunction; - uses DMROFunctionGrp; - } -} \ No newline at end of file diff --git a/yang-models/_3gpp-nr-nrm-dpciconfigurationfunction.yang b/yang-models/_3gpp-nr-nrm-dpciconfigurationfunction.yang deleted file mode 100755 index dce102ff2..000000000 --- a/yang-models/_3gpp-nr-nrm-dpciconfigurationfunction.yang +++ /dev/null @@ -1,69 +0,0 @@ -module _3gpp-nr-nrm-dpciconfigurationfunction { - yang-version 1.1; - namespace "urn:3gpp:sa5:_3gpp-nr-nrm-dpciconfigurationfunction"; - prefix "dpciconfigurationfunction3gpp"; - - import _3gpp-common-subnetwork { prefix subnet3gpp; } - import _3gpp-common-top { prefix top3gpp; } - import _3gpp-nr-nrm-nrcellcu { prefix nrcellcu3gpp; } - import _3gpp-nr-nrm-gnbcucpfunction { prefix gnbcucp3gpp; } - import _3gpp-common-managed-element { prefix me3gpp; } - - organization "3GPP SA5"; - contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; - description "Defines the YANG mapping of the DPCIConfigurationFunction Information Object Class - (IOC) that is part of the NR Network Resource Model (NRM)."; - reference "3GPP TS 28.541 5G Network Resource Model (NRM)"; - - revision 2021-01-25 { reference CR-0454 ; } - revision 2020-11-25 { reference CR-0386 ; } - revision 2020-05-08 { reference S5-203316; } - - - grouping DPCIConfigurationFunctionGrp { - description "Represents the DPCICONFIGURATIONFunction IOC."; - reference "3GPP TS 28.541"; - uses top3gpp:Top_Grp; - - - list nRPciList { - key NRPci; - description "This holds a list of physical cell identities that can be assigned to the NR cells. This attribute shall be supported if D-SON PCI configuration or domain Centralized SON PCI configuration function is supported."; - leaf NRPci {type int32;} - container attributes { - uses NRPciListGrp; - } - } - - - leaf dPciConfigurationControl { - description " This attribute determines whether the Distributed SON or Domain-Centralized SON PCI configuration Function is enabled or disabled."; - type boolean; - } - - } - - grouping NRPciListGrp { - description "Represents the NR PCI list for the PCI configuration function."; - - leaf NRPci { - description "This attribute determines the NR PCI."; - type int32 { range "0..1007"; } - units "1"; - } - } - - - augment "/me3gpp:ManagedElement/gnbcucp3gpp:GNBCUCPFunction/nrcellcu3gpp:NRCellCU" { - if-feature nrcellcu3gpp:DPCIConfigurationFunction; - uses DPCIConfigurationFunctionGrp; - } - augment "/me3gpp:ManagedElement" { - if-feature me3gpp:DPCIConfigurationFunction; - uses DPCIConfigurationFunctionGrp; - } - augment "/subnet3gpp:SubNetwork" { - if-feature subnet3gpp:DPCIConfigurationFunction; - uses DPCIConfigurationFunctionGrp; - } -} \ No newline at end of file diff --git a/yang-models/_3gpp-nr-nrm-drachoptimizationfunction.yang b/yang-models/_3gpp-nr-nrm-drachoptimizationfunction.yang deleted file mode 100755 index 7ef35373c..000000000 --- a/yang-models/_3gpp-nr-nrm-drachoptimizationfunction.yang +++ /dev/null @@ -1,120 +0,0 @@ -module _3gpp-nr-nrm-drachoptimizationfunction { - yang-version 1.1; - namespace "urn:3gpp:sa5:_3gpp-nr-nrm-drachoptimizationfunction"; - prefix "drachoptimizationfunction3gpp"; - - import _3gpp-common-subnetwork { prefix subnet3gpp; } - import _3gpp-common-top { prefix top3gpp; } - import _3gpp-common-managed-element { prefix me3gpp; } - import _3gpp-nr-nrm-nrcelldu { prefix nrcelldu3gpp; } - import _3gpp-nr-nrm-gnbdufunction { prefix gnbdu3gpp; } - - organization "3GPP SA5"; - contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; - description "Defines the YANG mapping of the DRACHOptimizationFunction Information Object Class - (IOC) that is part of the NR Network Resource Model (NRM)."; - reference "3GPP TS 28.541 5G Network Resource Model (NRM)"; - - revision 2021-01-25 { reference CR-0454 ; } - revision 2020-10-02 { reference "CR-0384, CR-0382" ; } - revision 2020-05-08 { reference S5-203316; } - - grouping DRACHOptimizationFunctionGrp { - description "Represents the DRACHOptimizationFunction IOC."; - reference "3GPP TS 28.541"; - uses top3gpp:Top_Grp; - - list ueAccProbilityDist { - key targetProbability; - description "This is a list of target Access Probability (APn) for the RACH optimization function."; - leaf targetProbability {type TargetProbability;} - container attributes { - uses UeAccProbilityDistGrp; - } - } - - list ueAccDelayProbilityDist { - key targetProbability; - description "This is a list of target Access Delay probability (ADP) for the RACH optimization function."; - leaf targetProbability {type TargetProbability;} - container attributes { - uses UeAccDelayProbilityDistGrp; - } - } - - leaf drachOptimizationControl { - description "This attribute determines whether the RACH Optimization function is enabled or disabled."; - type boolean; - } - } - typedef TargetProbability { - type enumeration { - enum 25; - enum 50; - enum 75; - enum 90; - } - } - - typedef Numberofpreamblessent { - type int32 { range "1..200"; } - units "1"; - } - - typedef Accessdelay { - type int32 { range "10..560"; } - units "1"; - } - - - grouping UeAccProbilityDistGrp { - description "Represents the target Access Probability (APn) for the RACH optimization function."; - - leaf targetProbability { - description "This attribute determines the target Probability."; - mandatory true; - type TargetProbability; - } - - - leaf numberofpreamblessent { - description "This attribute determines the number of preambles sent."; - mandatory true; - type Numberofpreamblessent; - } - } - - grouping UeAccDelayProbilityDistGrp { - description "Represents the target Access Delay probability (ADP) for the RACH optimization function."; - - leaf targetProbability { - description "This attribute determines the target Probability."; - mandatory true; - type TargetProbability; - } - - - leaf accessdelay { - description "This attribute determines the access delay."; - mandatory true; - type Accessdelay; - } - } - - augment "/me3gpp:ManagedElement/gnbdu3gpp:GNBDUFunction/nrcelldu3gpp:NRCellDU" { - if-feature nrcelldu3gpp:DRACHOptimizationFunction; - uses DRACHOptimizationFunctionGrp; - } - augment "/me3gpp:ManagedElement/gnbdu3gpp:GNBDUFunction" { - if-feature gnbdu3gpp:DRACHOptimizationFunction; - uses DRACHOptimizationFunctionGrp; - } - augment "/me3gpp:ManagedElement" { - if-feature me3gpp:DRACHOptimizationFunction; - uses DRACHOptimizationFunctionGrp; - } - augment "/subnet3gpp:SubNetwork" { - if-feature nrcelldu3gpp:DRACHOptimizationFunction; - uses DRACHOptimizationFunctionGrp; - } -} \ No newline at end of file diff --git a/yang-models/_3gpp-nr-nrm-ep.yang b/yang-models/_3gpp-nr-nrm-ep.yang deleted file mode 100755 index 835e2e05c..000000000 --- a/yang-models/_3gpp-nr-nrm-ep.yang +++ /dev/null @@ -1,256 +0,0 @@ -module _3gpp-nr-nrm-ep { - yang-version 1.1; - namespace "urn:3gpp:sa5:_3gpp-nr-nrm-ep"; - prefix "ep3gpp"; - - import _3gpp-common-ep-rp { prefix eprp3gpp; } - import _3gpp-common-managed-element { prefix me3gpp; } - import _3gpp-common-top { prefix top3gpp; } - import _3gpp-nr-nrm-gnbcucpfunction { prefix gnbcucp3gpp; } - import _3gpp-nr-nrm-gnbcuupfunction { prefix gnbcuup3gpp; } - import _3gpp-nr-nrm-gnbdufunction { prefix gnbdu3gpp; } - - organization "3GPP SA5"; - contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; - description "Defines the YANG mapping of the NR related endpoint - Information Object Classes (IOCs) that are part of the NR Network - Resource Model (NRM)."; - reference "3GPP TS 28.541 5G Network Resource Model (NRM)"; - - revision 2021-03-03 { reference CR-0435 ; } - revision 2021-02-17 { reference CR-0470; } - revision 2020-11-17 { reference CR-0410 ; } - revision 2020-03-02 { reference S5-201191; } - revision 2019-06-17 { reference "Initial revision"; } - - feature EPClassesUnderGNBCUCPFunction { - description "Endpoint classes shall be contained under GNBCUCPFunction"; - } - - feature EPClassesUnderGNBCUUPFunction { - description "Endpoint classes shall be contained under GNBCUUPFunction"; - } - - feature EPClassesUnderGNBDUFunction { - description "Endpoint classes shall be contained under GNBDUFunction"; - } - - grouping EP_E1Grp { - description "Represents the EP_E1 IOC."; - reference "3GPP TS 28.541, 3GPP TS 38.401"; - uses eprp3gpp:EP_Common; - } - - grouping EP_F1CGrp { - description "Represents the EP_F1C IOC."; - reference "3GPP TS 28.541, 3GPP TS 38.470"; - uses eprp3gpp:EP_Common; - } - - grouping EP_F1UGrp { - description "Represents the EP_F1U IOC."; - reference "3GPP TS 28.541, 3GPP TS 38.470"; - uses eprp3gpp:EP_Common; - } - - grouping EP_XnCGrp { - description "Represents the EP_XnC IOC."; - reference "3GPP TS 28.541, 3GPP TS 38.420"; - uses eprp3gpp:EP_Common; - } - - grouping EP_XnUGrp { - description "Represents the EP_XnU IOC."; - reference "3GPP TS 28.541, 3GPP TS 38.420"; - uses eprp3gpp:EP_Common; - } - - grouping EP_NgCGrp { - description "Represents the EP_NgC IOC."; - reference "3GPP TS 28.541, 3GPP TS 38.470"; - uses eprp3gpp:EP_Common; - } - - grouping EP_NgUGrp { - description "Represents the EP_NgU IOC."; - reference "3GPP TS 28.541, 3GPP TS 38.470"; - uses eprp3gpp:EP_Common; - } - - grouping EP_X2CGrp { - description "Represents the EP_X2C IOC."; - reference "3GPP TS 28.541, 3GPP TS 36.423"; - uses eprp3gpp:EP_Common; - } - - grouping EP_X2UGrp { - description "Represents the EP_X2U IOC."; - reference "3GPP TS 28.541, 3GPP TS 36.425"; - uses eprp3gpp:EP_Common; - } - - grouping EP_S1UGrp { - description "Represents the EP_S1U IOC."; - reference "3GPP TS 28.541, 3GPP TS 36.410"; - uses eprp3gpp:EP_Common; - } - - augment "/me3gpp:ManagedElement/gnbcucp3gpp:GNBCUCPFunction" { - if-feature EPClassesUnderGNBCUCPFunction; - - list EP_E1 { - description "Represents the local end point of the logical link, - supporting E1 interface between gNB-CU-CP and gNB-CU-UP."; - reference "3GPP TS 28.541, 3GPP TS 38.401"; - key id; - uses top3gpp:Top_Grp; - container attributes { - uses EP_E1Grp; - } - } - - list EP_F1C { - description "Represents the local end point of the control plane - interface (F1-C) between the DU and CU or CU-CP."; - reference "3GPP TS 28.541, 3GPP TS 38.470"; - key id; - uses top3gpp:Top_Grp; - container attributes { - uses EP_F1CGrp; - } - } - - list EP_NgC { - description "Represents the local end point of the control plane - interface (NG-C) between the gNB and NG-Core entity."; - reference "3GPP TS 28.541, 3GPP TS 38.470"; - key id; - uses top3gpp:Top_Grp; - container attributes { - uses EP_NgCGrp; - } - } - - list EP_XnC { - description "Represents the local gNB node end point of the logical - link, supporting Xn application protocols, to a neighbour NG-RAN node - (including gNB and ng-eNB). The Xn Application PDUs are carried over - SCTP/IP/Data link layer/Physical layer stack."; - reference "3GPP TS 28.541, 3GPP TS 38.420 subclause 7"; - key id; - uses top3gpp:Top_Grp; - container attributes { - uses EP_XnCGrp; - } - } - - list EP_X2C { - description "Represents the local end point of the logical link, - supporting X2-C application protocols used in EN-DC, to a neighbour - eNB or en-gNB node."; - reference "3GPP TS 28.541, 3GPP TS 36.423"; - key id; - uses top3gpp:Top_Grp; - container attributes { - uses EP_X2CGrp; - } - } - } - - augment "/me3gpp:ManagedElement/gnbcuup3gpp:GNBCUUPFunction" { - if-feature EPClassesUnderGNBCUUPFunction; - - list EP_E1 { - description "Represents the local end point of the logical link, - supporting E1 interface between gNB-CU-CP and gNB-CU-UP."; - reference "3GPP TS 28.541, 3GPP TS 38.401"; - key id; - uses top3gpp:Top_Grp; - container attributes { - uses EP_E1Grp; - } - } - - list EP_F1U { - description "Represents the local end point of the user plane - interface (F1-U) between the DU and CU or CU-UP."; - reference "3GPP TS 28.541, 3GPP TS 38.470"; - key id; - uses top3gpp:Top_Grp; - container attributes { - uses EP_F1UGrp; - } - } - - list EP_NgU { - description "Represents the local end point of the NG user plane - (NG-U) interface between the gNB and UPF."; - reference "3GPP TS 28.541, 3GPP TS 38.470"; - key id; - uses top3gpp:Top_Grp; - container attributes { - uses EP_NgUGrp; - } - } - - list EP_XnU { - description "Represents the one end-point of a logical link supporting - the Xn user plane (Xn-U) interface. The Xn-U interface provides - non-guaranteed delivery of user plane PDUs between two NG-RAN nodes."; - reference "3GPP TS 28.541, 3GPP TS 38.420"; - key id; - uses top3gpp:Top_Grp; - container attributes { - uses EP_XnUGrp; - } - } - - list EP_X2U { - description "Represents the local end-point of a logical link supporting - the X2 user plane (X2-U) interface used in EN-DC."; - reference "3GPP TS 28.541, 3GPP TS 36.425"; - key id; - uses top3gpp:Top_Grp; - container attributes { - uses EP_X2UGrp; - } - } - - list EP_S1U { - description "Represents the local end point of the logical link, - supporting S1-U interface towards a S-GW node."; - reference "3GPP TS 28.541, 3GPP TS 36.410"; - key id; - uses top3gpp:Top_Grp; - container attributes { - uses EP_S1UGrp; - } - } - } - - augment "/me3gpp:ManagedElement/gnbdu3gpp:GNBDUFunction" { - if-feature EPClassesUnderGNBDUFunction; - - list EP_F1C { - description "Represents the local end point of the control plane - interface (F1-C) between the DU and CU or CU-CP."; - reference "3GPP TS 28.541, 3GPP TS 38.470"; - key id; - uses top3gpp:Top_Grp; - container attributes { - uses EP_F1CGrp; - } - } - - list EP_F1U { - description "Represents the local end point of the user plane - interface (F1-U) between the DU and CU or CU-UP."; - reference "3GPP TS 28.541, 3GPP TS 38.470"; - key id; - uses top3gpp:Top_Grp; - container attributes { - uses EP_F1UGrp; - } - } - } -} \ No newline at end of file diff --git a/yang-models/_3gpp-nr-nrm-eutrancellrelation.yang b/yang-models/_3gpp-nr-nrm-eutrancellrelation.yang deleted file mode 100755 index 4eee4a401..000000000 --- a/yang-models/_3gpp-nr-nrm-eutrancellrelation.yang +++ /dev/null @@ -1,160 +0,0 @@ -module _3gpp-nr-nrm-eutrancellrelation { - yang-version 1.1; - namespace "urn:3gpp:sa5:_3gpp-nr-nrm-eutrancellrelation"; - prefix "eutrancellrel3gpp"; - - import _3gpp-common-yang-types { prefix types3gpp; } - import _3gpp-common-managed-function { prefix mf3gpp; } - import _3gpp-common-managed-element { prefix me3gpp; } - import _3gpp-nr-nrm-gnbcucpfunction { prefix gnbcucp3gpp; } - import _3gpp-nr-nrm-nrcellcu { prefix nrcellcu3gpp; } - import _3gpp-common-top { prefix top3gpp; } - - organization "3GPP SA5"; - description "Defines the YANG mapping of the EUtranCellRelation Information - Object Class (IOC) that is part of the NR Network Resource Model (NRM)."; - reference "3GPP TS 28.541 5G Network Resource Model (NRM)"; - - revision 2019-10-28 { reference S5-193518 ; } - revision 2019-06-17 { - description "Initial revision"; - } - - typedef ActionAllowed { - type enumeration { - enum YES; - enum NO; - } - } - - typedef EnergySavingCoverage { - type enumeration { - enum YES; - enum NO; - enum PARTIAL; - } - } - - grouping EUtranCellRelationGrp { - description "Represents the EUtranCellRelation IOC."; - reference "3GPP TS 28.541, EUtranRelation in 3GPP TS 28.658"; - uses mf3gpp:ManagedFunctionGrp; - - leaf tCI { - description "Target Cell Identifier. Consists of E-UTRAN Cell Global - Identifier (ECGI) and Physical Cell Identifier (PCI) of the target - cell. Identifies the target cell from the perspective of the parent - cell instance."; - mandatory true; - type uint64; - } - - leaf isRemoveAllowed { - description "Indicates if the subject EUtranCellRelation can be removed - (deleted) or not. If YES, the subject EUtranCellRelation instance can - be removed (deleted). If NO, the subject EUtranCellRelation instance - shall not be removed (deleted) by any entity but an IRPManager."; - mandatory true; - type ActionAllowed; - } - - leaf isHOAllowed { - description "Indicates if handover is allowed or prohibited. If YES, - handover is allowed from source cell to target cell. Source cell is - represented by the parent cell instance. Target cell is the adjacent - cell referenced by this EUtranCellRelation instance. If NO, handover - shall not be allowed."; - mandatory true; - type ActionAllowed; - } - leaf isENDCAllowed { - description "Indicates if EN-DC is allowed or prohibited. If TRUE, - the target cell is allowed to be used for EN-DC. The target cell is - referenced by the NRCellRelation that contains this isENDCAllowed. - If FALSE, EN-DC shall not be allowed."; - mandatory true; - type ActionAllowed; - } - - - leaf isICICInformationSendAllowed { - description "Indicates if ICIC (Inter Cell Interference Coordination) - load information message sending is allowed or prohibited. If YES, - ICIC load information message sending is allowed from source cell to - target cell. Source cell is represented by the parent cell instance. - Target cell is the adjacent cell referenced by this EUtranCellRelation - instance. If NO, ICIC load information message sending shall not be - allowed."; - reference "3GPP TS 36.423"; - mandatory true; - type ActionAllowed; - } - - leaf isLBAllowed { - description "Indicates if load balancing is allowed or prohibited from - source cell to target cell. If YES, load balancing is allowed from - source cell to target cell. Source cell is represented by the parent - cell instance. Target cell is the adjacent cell referenced by this - EUtranCellRelation instance. If NO, load balancing shall be prohibited - from source cell to target cell."; - mandatory true; - type ActionAllowed; - } - - leaf isESCoveredBy { - description "Indicates whether the adjacent cell according to this - planning provides no, partial or full coverage for the parent cell - instance. Adjacent cells with this attribute equal to YES are - recommended to be considered as candidate cells to take over the - coverage when the original cell is about to be transferred to energy - saving state. The entirety of adjacent cells with this property equal - to PARTIAL are recommended to be considered as entirety of candidate - cells to take over the coverage when the original cell is about to be - transferred to energy saving state."; - mandatory true; - type EnergySavingCoverage; - } - - leaf qOffset { - description "Offset applicable to a specific neighbouring cell used for - evaluating the cell as a candidate for cell re-selection. Corresponds - to parameter q-OffsetCell broadcast in SIB4 for intra-frequency cells - and in SIB5 for inter-frequency cells. Used for Mobility Robustness - Optimization."; - reference "3GPP TS 36.331"; - mandatory true; - type types3gpp:QOffsetRange; - } - - leaf cellIndividualOffset { - description "Offset applicable to a neighbouring cell. It is used for - evaluating the neighbouring cell for handover in connected mode. Used - by the HandOver parameter Optimization (HOO) function or Load - Balancing Optimization (LBO) function."; - reference "3GPP TS 36.331"; - config false; - type types3gpp:QOffsetRange; - } - - leaf adjacentCell { - description "Reference to an EUtranCellFDD/TDD or - ExternalEUtranCellFDD/TDD instance."; - mandatory true; - type types3gpp:DistinguishedName; - } - } - - augment /me3gpp:ManagedElement/gnbcucp3gpp:GNBCUCPFunction/nrcellcu3gpp:NRCellCU { - - list EUtranCellRelation { - description "Represents a relation between an NR cell and an E-UTRAN cell."; - reference "3GPP TS 28.541"; - key id; - uses top3gpp:Top_Grp; - container attributes { - uses EUtranCellRelationGrp; - } - uses mf3gpp:ManagedFunctionContainedClasses; - } - } -} \ No newline at end of file diff --git a/yang-models/_3gpp-nr-nrm-eutranetwork.yang b/yang-models/_3gpp-nr-nrm-eutranetwork.yang deleted file mode 100755 index 068bc246c..000000000 --- a/yang-models/_3gpp-nr-nrm-eutranetwork.yang +++ /dev/null @@ -1,61 +0,0 @@ -module _3gpp-nr-nrm-eutranetwork { - yang-version 1.1; - namespace "urn:3gpp:sa5:_3gpp-nr-nrm-eutranetwork"; - prefix "eutranet3gpp"; - - import _3gpp-common-subnetwork { prefix subnet3gpp; } - import _3gpp-common-top { prefix top3gpp; } - - organization "3GPP SA5"; - description "Defines the YANG mapping of the EUtraNetwork Information Object - Class (IOC) that is part of the NR Network Resource Model (NRM)."; - reference "3GPP TS 28.541 5G Network Resource Model (NRM)"; - - revision 2019-06-17 { - description "Initial revision"; - } - - feature ExternalsUnderEUtraNetwork { - description "Classes representing external entities like EUtranFrequency, - ExternalENBFunction are contained under a EUtraNetwork list/class."; - } - - grouping EUtraNetworkGrp { - description "Represents the EUtraNetwork IOC."; - reference "3GPP TS 28.541"; - uses subnet3gpp:SubNetworkGrp; - } - - list EUtraNetwork { - description "A subnetwork containing gNB external E-UTRAN entities."; - reference "3GPP TS 28.541"; - key id; - uses top3gpp:Top_Grp; - container attributes { - uses EUtraNetworkGrp; - leaf-list parents { - description "Reference to all containg EUtraNetwork instances - in strict order from the root EUtraNetwork down to the immediate - parent EUtraNetwork. - If EUtraNetworks form a containment hierarchy this is - modeled using references between the child EUtraNetwork and the parent - EUtraNetworks. - This reference MUST NOT be present for the top level EUtraNetwork and - MUST be present for other EUtraNetworks."; - type leafref { - path "../../../EUtraNetwork/id"; - } - } - - leaf-list containedChildren{ - description "Reference to all directly contained EUtraNetwork instances. - If EUtraNetworks form a containment hierarchy this is - modeled using references between the child EUtraNetwork and the parent - EUtraNetwork."; - type leafref { - path "../../../EUtraNetwork/id"; - } - } - } - } -} \ No newline at end of file diff --git a/yang-models/_3gpp-nr-nrm-eutranfreqrelation.yang b/yang-models/_3gpp-nr-nrm-eutranfreqrelation.yang deleted file mode 100755 index fce8aa7ff..000000000 --- a/yang-models/_3gpp-nr-nrm-eutranfreqrelation.yang +++ /dev/null @@ -1,208 +0,0 @@ -module _3gpp-nr-nrm-eutranfreqrelation { - yang-version 1.1; - namespace "urn:3gpp:sa5:_3gpp-nr-nrm-eutranfreqrelation"; - prefix "eutranfreqrel3gpp"; - - import _3gpp-common-yang-types { prefix types3gpp; } - import _3gpp-common-managed-function { prefix mf3gpp; } - import _3gpp-common-managed-element { prefix me3gpp; } - import _3gpp-common-top { prefix top3gpp; } - import _3gpp-nr-nrm-gnbcucpfunction { prefix gnbcucp3gpp; } - import _3gpp-nr-nrm-nrcellcu { prefix nrcellcu3gpp; } - - organization "3GPP SA5"; - description "Defines the YANG mapping of the EUtranFreqRelation Information - Object Class (IOC) that is part of the NR Network Resource Model (NRM)."; - reference "3GPP TS 28.541 5G Network Resource Model (NRM)"; - - revision 2019-10-28 { reference S5-193518 ; } - revision 2019-06-17 { - description "Initial revision"; - } - - grouping EUtranFreqRelationGrp { - description "Represents the EUtranFreqRelation IOC."; - reference "3GPP TS 28.541"; - uses mf3gpp:ManagedFunctionGrp; - - leaf cellIndividualOffset { - description "Offset applicable to a neighbouring cell. Used for - evaluating the neighbouring cell for handover in connected mode. - Used by the HandOver parameter Optimization (HOO) function or - Load Balancing Optimization (LBO) function."; - reference "cellIndividualOffset in MeasObjectEUTRA in 3GPP TS 38.331"; - default 0; - type types3gpp:QOffsetRange; - } - - leaf-list blackListEntry { - description "A list of Physical Cell Identities (PCIs) that are - blacklisted in E-UTRAN measurements."; - reference "3GPP TS 38.331"; - min-elements 0; - type uint16 { range "0..1007"; } - } - - leaf-list blackListEntryIdleMode { - description "A list of Physical Cell Identities (PCIs) that are - blacklisted in SIB4 and SIB5."; - min-elements 0; - type uint16 { range "0..1007"; } - } - - leaf cellReselectionPriority { - description "The absolute priority of the carrier frequency used by the - cell reselection procedure. Value 0 means lowest priority. The value - must not already used by other RAT, i.e. equal priorities between RATs - are not supported. The UE behaviour when no value is entered is - specified in subclause 5.2.4.1 of 3GPP TS 38.304."; - reference "CellReselectionPriority in 3GPP TS 38.331, priority in - 3GPP TS 38.304"; - mandatory true; - type int32 { range "0..7"; } - } - - leaf cellReselectionSubPriority { - description "Indicates a fractional value to be added to the value of - cellReselectionPriority to obtain the absolute priority of the - concerned carrier frequency for E-UTRA and NR."; - reference "3GPP TS 38.331"; - type uint8 { range "2 | 4 | 6 | 8"; } - units "0.1"; - } - - leaf pMax { - description "Used for calculation of the parameter Pcompensation - (defined in 3GPP TS 38.304), at cell reselection to a cell."; - reference "PEMAX in 3GPP TS 38.101-1"; - mandatory true; - type int32 { range "-30..33"; } - units dBm; - } - - leaf qOffsetFreq { - description "The frequency specific offset applied when evaluating - candidates for cell reselection."; - type int32; - default 0; - } - - leaf qQualMin { - description "Indicates the minimum required quality level in the cell. - Value 0 means that it is not sent and UE applies in such case the - (default) value of negative infinity for Qqualmin. Sent in SIB3 or - SIB5."; - reference "qQualMin in TS 38.304"; - mandatory true; - type int32 { range "-34..-3 | 0"; } - units dB; - } - - leaf qRxLevMin { - description "Indicates the required minimum received Reference Symbol - Received Power (RSRP) level in the (E-UTRA) frequency for cell - reselection. Broadcast in SIB3 or SIB5, depending on whether the - related frequency is intra- or inter-frequency. Resolution is 2."; - reference "Qrxlevmin in 3GPP TS 38.304"; - mandatory true; - type int32 { range "-140..-44"; } - units dBm; - } - - leaf threshXHighP { - description "Specifies the Srxlev threshold used by the UE when - reselecting towards a higher priority RAT/frequency than the current - serving frequency. Each frequency of NR and E-UTRAN might have a - specific threshold. Resolution is 2."; - reference "ThreshX, HighP in 3GPP TS 38.304"; - mandatory true; - type int32 { range "0..62"; } - units dB; - } - - leaf threshXHighQ { - description "Specifies the Squal threshold used by the UE when - reselecting towards a higher priority RAT/frequency than the current - serving frequency. Each frequency of NR and E-UTRAN might have a - specific threshold."; - reference "ThreshX, HighQ in 3GPP TS 38.304"; - mandatory true; - type int32 { range 0..31; } - units dB; - } - - leaf threshXLowP { - description "Specifies the Srxlev threshold used by the UE when - reselecting towards a lower priority RAT/frequency than the current - serving frequency. Each frequency of NR and E-UTRAN might have a - specific threshold. Resolution is 2."; - reference "ThreshX, LowP in 3GPP TS 38.304"; - mandatory true; - type int32 { range "0..62"; } - units dB; - } - - leaf threshXLowQ { - description "Specifies the Squal threshold used by the UE when - reselecting towards a lower priority RAT/frequency than the current - serving frequency. Each frequency of NR and E-UTRAN might have a - specific threshold."; - reference "ThreshX, LowQ in 3GPP TS 38.304"; - mandatory false; - type int32 { range "0..31"; } - units dB; - } - - leaf tReselectionEutra { - description "Cell reselection timer for intra frequency E-UTRA cell - reselection. May be used for Mobility Robustness Optimization."; - reference "t-ReselectionEUTRA in 3GPP TS 36.331 and in 3GPP TS 23.207"; - mandatory true; - type uint8 { range "0..7"; } - units s; - } - - leaf tReselectionEutraSfHigh { - description "The attribute tReselectionEutra (parameter TreselectionEUTRA - in 3GPP TS 38.304) multiplied with this scaling factor if the UE is in - high mobility state."; - reference "Speed dependent ScalingFactor for TreselectionEUTRA for high - mobility state in 3GPP TS 38.304"; - mandatory true; - type uint8 { range "25 | 50 | 75 | 100"; } - units %; - } - - leaf tReselectionEutraSfMedium { - description "The attribute tReselectionEutra (parameter TreselectionEUTRA - in 3GPP TS 38.304) multiplied with this scaling factor if the UE is in - medium mobility state."; - reference "Speed dependent ScalingFactor for TreselectionEUTRA for medium - mobility state in 3GPP TS 38.304"; - mandatory true; - type uint8 { range "25 | 50 | 75 | 100"; } - units %; - } - - leaf eUtranFrequencyRef { - description "Reference to a corresponding EUtranFrequency instance."; - mandatory true; - type types3gpp:DistinguishedName; - } - } - - augment /me3gpp:ManagedElement/gnbcucp3gpp:GNBCUCPFunction/nrcellcu3gpp:NRCellCU { - - list EUtranFreqRelation { - description "Represents a frequency relation between an NR cell and an - E-UTRAN cell."; - reference "3GPP TS 28.541"; - key id; - uses top3gpp:Top_Grp; - container attributes { - uses EUtranFreqRelationGrp; - } - uses mf3gpp:ManagedFunctionContainedClasses; - } - } -} \ No newline at end of file diff --git a/yang-models/_3gpp-nr-nrm-eutranfrequency.yang b/yang-models/_3gpp-nr-nrm-eutranfrequency.yang deleted file mode 100755 index 2d8a4534a..000000000 --- a/yang-models/_3gpp-nr-nrm-eutranfrequency.yang +++ /dev/null @@ -1,64 +0,0 @@ -module _3gpp-nr-nrm-eutranfrequency { - yang-version 1.1; - namespace "urn:3gpp:sa5:_3gpp-nr-nrm-eutranfrequency"; - prefix "eutraneteutranfreq3gpp"; - - import _3gpp-common-managed-function { prefix mf3gpp; } - import _3gpp-nr-nrm-eutranetwork { prefix eutranet3gpp; } - import _3gpp-common-subnetwork { prefix subnet3gpp; } - import _3gpp-common-top { prefix top3gpp; } - - organization "3GPP SA5"; - description "Defines the YANG mapping of the EUtranFrequency Information - Object Class (IOC), that is part of the NR Network Resource Model (NRM)."; - reference "3GPP TS 28.541 5G Network Resource Model (NRM), - 3GPP TS 28.658 (E-UTRAN) Network Resource Model (NRM)"; - - revision 2019-10-28 { reference S5-193518 ; } - revision 2019-06-17 { - description "Initial revision"; - } - - grouping EUtranFrequencyGrp { - description "Represents the EUtranFrequency IOC."; - reference "3GPP TS 28.541"; - uses mf3gpp:ManagedFunctionGrp; - - leaf earfcnDL { - description "Specifies the channel number for the central DL frequency."; - reference "3GPP TS 36.101"; - mandatory true; - type uint32 { range "0..262143"; } - } - - leaf-list multiBandInfoListEutra { - description "List of additional frequency bands the frequency belongs to."; - config false; - min-elements 0; - type uint16 { range "1..256"; } - } - } - - grouping EUtranFrequencyWrapper { - list EUtranFrequency { - description "Represents certain E-UTRAN frequency properties."; - reference "3GPP TS 28.658"; - key id; - uses top3gpp:Top_Grp; - container attributes { - uses EUtranFrequencyGrp; - } - uses mf3gpp:ManagedFunctionContainedClasses; - } - } - - augment "/subnet3gpp:SubNetwork" { - if-feature subnet3gpp:ExternalsUnderSubNetwork ; - uses EUtranFrequencyWrapper ; - } - - augment "/eutranet3gpp:EUtraNetwork" { - if-feature eutranet3gpp:ExternalsUnderEUtraNetwork; - uses EUtranFrequencyWrapper ; - } -} \ No newline at end of file diff --git a/yang-models/_3gpp-nr-nrm-externalamffunction.yang b/yang-models/_3gpp-nr-nrm-externalamffunction.yang deleted file mode 100755 index bfd30c58a..000000000 --- a/yang-models/_3gpp-nr-nrm-externalamffunction.yang +++ /dev/null @@ -1,69 +0,0 @@ -module _3gpp-nr-nrm-externalamffunction { - yang-version 1.1; - namespace "urn:3gpp:sa5:_3gpp-nr-nrm-externalamffunction"; - prefix "extamf3gpp"; - - import _3gpp-common-managed-function { prefix mf3gpp; } - import _3gpp-common-subnetwork { prefix subnet3gpp; } - import _3gpp-nr-nrm-nrnetwork { prefix nrnet3gpp; } - import _3gpp-common-top { prefix top3gpp; } - import _3gpp-common-yang-types { prefix types3gpp; } - - organization "3GPP SA5"; - description "Defines the YANG mapping of the ExternalAMFFunction Information - Object Class (IOC) that is part of the NR Network Resource Model (NRM)."; - reference "3GPP TS 28.541 5G Network Resource Model (NRM)"; - - revision 2019-10-28 { reference S5-193518 ; } - revision 2019-06-17 { - description "Initial revision"; - } - - grouping ExternalAMFFunctionGrp { - description "Represents the ExternalAMFFunction IOC."; - reference "3GPP TS 28.541"; - uses mf3gpp:ManagedFunctionGrp; - - list pLMNIdList { - description "List of at most six entries of PLMN Identifiers, but at least - one (the primary PLMN Id). - The PLMN Identifier is composed of a Mobile Country Code (MCC) and a - Mobile Network Code (MNC)."; - min-elements 1; - max-elements 6; - key "mcc mnc"; - uses types3gpp:PLMNId; - } - - container aMFIdentifier { - presence true; - description "An AMF identifier, comprising an AMF Region ID, an AMF Set ID and an AMF Pointer."; - uses types3gpp:AmfIdentifier; - } - } - - grouping ExternalAMFFunctionWrapper { - list ExternalAMFFunction { - description "Represents the properties, known by the management - function, of a AMFFunction managed by another management - function."; - reference "3GPP TS 28.541"; - key id; - uses top3gpp:Top_Grp; - container attributes { - uses ExternalAMFFunctionGrp; - } - uses mf3gpp:ManagedFunctionContainedClasses; - } - } - - augment "/subnet3gpp:SubNetwork" { - if-feature subnet3gpp:ExternalsUnderSubNetwork ; - uses ExternalAMFFunctionWrapper; - } - - augment "/nrnet3gpp:NRNetwork" { - if-feature nrnet3gpp:ExternalsUnderNRNetwork; - uses ExternalAMFFunctionWrapper; - } -} \ No newline at end of file diff --git a/yang-models/_3gpp-nr-nrm-externalenbfunction.yang b/yang-models/_3gpp-nr-nrm-externalenbfunction.yang deleted file mode 100755 index 7dab2e970..000000000 --- a/yang-models/_3gpp-nr-nrm-externalenbfunction.yang +++ /dev/null @@ -1,60 +0,0 @@ -module _3gpp-nr-nrm-externalenbfunction { - yang-version 1.1; - namespace "urn:3gpp:sa5:_3gpp-nr-nrm-externalenbfunction"; - prefix "extenb3gpp"; - - import _3gpp-common-managed-function { prefix mf3gpp; } - import _3gpp-nr-nrm-eutranetwork { prefix eutranet3gpp; } - import _3gpp-common-subnetwork { prefix subnet3gpp; } - import _3gpp-common-top { prefix top3gpp; } - - organization "3GPP SA5"; - description "Defines the YANG mapping of the ExternalENBFunction - Information Object Class (IOC) that is part of the NR Network Resource - Model (NRM)."; - reference "3GPP TS 28.541 5G Network Resource Model (NRM), - 3GPP TS 28.658 (E-UTRAN) Network Resource Model (NRM)"; - - revision 2019-10-28 { reference S5-193518 ; } - revision 2019-06-17 { - description "Initial revision"; - } - - grouping ExternalENBFunctionGrp { - description "Represets the ExternalENBFunction IOC."; - reference "3GPP TS 28.658"; - uses mf3gpp:ManagedFunctionGrp; - - leaf eNBId { - description "Unambiguously identifies an eNodeB within a PLMN."; - reference "3GPP TS 36.413, 3GPP TS 36.300"; - mandatory true; - type int32 { range "0..268435455"; } // Representing 28 bit eNB ID. - // 18, 20 and 21 bit eNB IDs also - // allowed. - } - } - - grouping ExternalENBFunctionWrapper { - list ExternalENBFunction { - description "Represents an external eNB functionality."; - reference "3GPP TS 28.658"; - key id; - uses top3gpp:Top_Grp; - container attributes { - uses ExternalENBFunctionGrp; - } - uses mf3gpp:ManagedFunctionContainedClasses; - } - } - - augment "/subnet3gpp:SubNetwork" { - if-feature subnet3gpp:ExternalsUnderSubNetwork ; - uses ExternalENBFunctionWrapper; - } - - augment "/eutranet3gpp:EUtraNetwork" { - if-feature eutranet3gpp:ExternalsUnderEUtraNetwork; - uses ExternalENBFunctionWrapper; - } -} \ No newline at end of file diff --git a/yang-models/_3gpp-nr-nrm-externaleutrancell.yang b/yang-models/_3gpp-nr-nrm-externaleutrancell.yang deleted file mode 100755 index df62f1c5f..000000000 --- a/yang-models/_3gpp-nr-nrm-externaleutrancell.yang +++ /dev/null @@ -1,153 +0,0 @@ -module _3gpp-nr-nrm-externaleutrancell { - yang-version 1.1; - namespace "urn:3gpp:sa5:_3gpp-nr-nrm-externaleutrancell"; - prefix "exteutrancell3gpp"; - - import _3gpp-common-yang-types { prefix types3gpp; } - import _3gpp-common-managed-function { prefix mf3gpp; } - import _3gpp-common-subnetwork { prefix subnet3gpp; } - import _3gpp-nr-nrm-eutranetwork { prefix eutranet3gpp; } - import _3gpp-nr-nrm-externalenbfunction { prefix extenb3gpp; } - import _3gpp-common-top { prefix top3gpp; } - - organization "3GPP SA5"; - description "Defines the YANG mapping of the ExternalEUtranCellFDD and - ExternalEUtranCellTDD Information Object Classes (IOCs) that are part - of the NR Network Resource Model (NRM)."; - reference "3GPP TS 28.541 5G Network Resource Model (NRM), - 3GPP TS 28.658 (E-UTRAN) Network Resource Model (NRM)"; - - revision 2019-10-28 { reference S5-193518 ; } - revision 2019-06-17 { - description "Initial revision"; - } - - grouping ExternalEUtranGenericCellGrp { - description "Represents the ExternalEUtranGenericCell IOC."; - reference "3GPP TS 28.658"; - uses mf3gpp:ManagedFunctionGrp; - - leaf pci { - description "The Physical Cell Identity (PCI) of the cell (for - NM-Centralized, EM-Centralized and Distributed PCI assignment cases). - In the case of NM-Centralized PCI assignment, see 3GPP TS 36.300."; - reference "3GPP TS 36.211"; - mandatory true; - type int32 { range "0..503"; } - } - - list plmnIdList { - description "List of unique identities for PLMNs. A cell can broadcast - up to 6 PLMN IDs. This is to support the case that one cell can be - used by up to 6 operator's core networks. The PLMN(s) included in this - list will use the same single tracking area code (TAC) and the same - Cell Identity (cellLocalId) for sharing the radio access network - resources. One member of plmnIdList is the primary PLMN ID. A PLMN ID - included in this list cannot be included in the cellAccessInfoList. - The PLMN ID is composed of a Mobile Country Code (MCC) and a Mobile - Network Code (MNC)."; - reference "3GPP TS 36.300, 3GPP TS 36.331, 3GPP TS 23.003"; - key "mcc mnc"; - min-elements 1; - max-elements 6; - uses types3gpp:PLMNId; - } - - leaf cellLocalId { - description "Unambiguously identifies a cell within an eNodeB."; - reference "NCI defined in 3GPP TS 38.300"; - type int32 {range "0..255"; } - } - - leaf eNBId { - description "Unambiguously identifies an eNodeB within a PLMN."; - reference "3GPP TS 36.413, 3GPP TS 36.300"; - mandatory true; - type int32 { range "0..268435455"; } // Representing 28 bit eNB ID. - // 18, 20 and 21 bit eNB IDs also - // allowed. - } - } - - grouping ExternalEUtranCellFDDGrp { - description "Represents the ExternalEUtranCellFDD IOC."; - reference "3GPP TS 28.658"; - uses ExternalEUtranGenericCellGrp; - - leaf earfcnDL { - description "The channel number for the central DL frequency."; - reference "3GPP TS 36.101"; - mandatory true; - type int32 { range "0..17999 | 46590..262143"; } - } - - leaf earfcnUL { - description "The channel number for the central UL frequency. Value 0 - means that the UL channel number is N/A for the DL-only bands."; - reference "3GPP TS 36.101"; - mandatory true; - type int32 { range "0 | 18000..35999 | 46590..262143"; } - } - } - - grouping ExternalEUtranCellTDDGrp { - description "Represents the ExternalEUtranCellTDD IOC."; - reference "3GPP TS 28.658"; - uses ExternalEUtranGenericCellGrp; - - leaf earfcn { - description "The frequency number for the central frequency."; - reference "3GPP TS 36.104"; - mandatory true; - type int32 { range "36000..262143"; } - } - } - - grouping ExternalEUtranCellFDDWrapper { - list ExternalEUtranCellFDD { - description "Represents the common properties of external E-UTRAN FDD - cell provided by eNB or NG-RAN FDD cell provided by ng-eNB."; - reference "3GPP TS 28.658"; - key id; - uses top3gpp:Top_Grp; - container attributes { - uses ExternalEUtranCellFDDGrp; - } - uses mf3gpp:ManagedFunctionContainedClasses; - } - } - - grouping ExternalEUtranCellTDDWrapper { - list ExternalEUtranCellTDD { - description "Represents the common properties of external E-UTRAN cell - TDD provided by eNB or NG-RAN TDD cell provided by ng-eNB."; - reference "3GPP TS 28.658"; - key id; - uses top3gpp:Top_Grp; - container attributes { - uses ExternalEUtranCellTDDGrp; - } - uses mf3gpp:ManagedFunctionContainedClasses; - } - } - - augment "/subnet3gpp:SubNetwork/extenb3gpp:ExternalENBFunction" { - if-feature subnet3gpp:ExternalsUnderSubNetwork; - uses ExternalEUtranCellFDDWrapper; - } - - augment "/eutranet3gpp:EUtraNetwork/extenb3gpp:ExternalENBFunction" { - if-feature eutranet3gpp:ExternalsUnderEUtraNetwork; - uses ExternalEUtranCellFDDWrapper; - } - - augment "/subnet3gpp:SubNetwork/extenb3gpp:ExternalENBFunction" { - if-feature subnet3gpp:ExternalsUnderSubNetwork; - uses ExternalEUtranCellTDDWrapper; - } - - augment "/eutranet3gpp:EUtraNetwork/extenb3gpp:ExternalENBFunction" { - if-feature eutranet3gpp:ExternalsUnderEUtraNetwork; - uses ExternalEUtranCellTDDWrapper; - } -} \ No newline at end of file diff --git a/yang-models/_3gpp-nr-nrm-externalgnbcucpfunction.yang b/yang-models/_3gpp-nr-nrm-externalgnbcucpfunction.yang deleted file mode 100755 index 531e45bed..000000000 --- a/yang-models/_3gpp-nr-nrm-externalgnbcucpfunction.yang +++ /dev/null @@ -1,76 +0,0 @@ -module _3gpp-nr-nrm-externalgnbcucpfunction { - yang-version 1.1; - namespace "urn:3gpp:sa5:_3gpp-nr-nrm-externalgnbcucpfunction"; - prefix "extgnbcucp3gpp"; - - import _3gpp-common-yang-types { prefix types3gpp; } - import _3gpp-common-managed-function { prefix mf3gpp; } - import _3gpp-nr-nrm-nrnetwork { prefix nrnet3gpp; } - import _3gpp-common-subnetwork { prefix subnet3gpp; } - import _3gpp-common-top { prefix top3gpp; } - - organization "3GPP SA5"; - description "Defines the YANG mapping of the ExternalGNBCUCPFunction - Information Object Class (IOC), that is part of the NR Network Resource - Model (NRM)."; - reference "3GPP TS 28.541 5G Network Resource Model (NRM)"; - - revision 2019-10-28 { reference S5-193518 ; } - revision 2019-06-17 { - description "Initial revision"; - } - - grouping ExternalGNBCUCPFunctionGrp { - description "Represets the ExternalGNBCUCPFunction IOC."; - reference "3GPP TS 28.541"; - uses mf3gpp:ManagedFunctionGrp; - - leaf gNBId { - description "Identifies a gNB within a PLMN."; - reference "gNB Identifier (gNB ID) in 3GPP TS 38.300, Global gNB ID - in 3GPP TS 38.413"; - mandatory true; - type int64 { range "0..4294967295"; } - } - - leaf gNBIdLength { - description "Indicates the number of bits for encoding the gNB ID."; - reference "gNB ID in 3GPP TS 38.300, Global gNB ID in 3GPP TS 38.413"; - mandatory true; - type int32 { range "22..32"; } - } - - list pLMNId { - description "Specifies the PLMN identifier to be used as part of the - global RAN node identity."; - key "mcc mnc"; - min-elements 1; - max-elements 1; - uses types3gpp:PLMNId; - } - } - - grouping ExternalGNBCUCPFunctionWrapper { - list ExternalGNBCUCPFunction { - description "Represents the properties, known by the management function, - of a GNBCUCPFunction managed by another management function."; - reference "3GPP TS 28.541"; - key id; - uses top3gpp:Top_Grp; - container attributes { - uses ExternalGNBCUCPFunctionGrp; - } - uses mf3gpp:ManagedFunctionContainedClasses; - } - } - - augment "/subnet3gpp:SubNetwork" { - if-feature subnet3gpp:ExternalsUnderSubNetwork ; - uses ExternalGNBCUCPFunctionWrapper; - } - - augment "/nrnet3gpp:NRNetwork" { - if-feature nrnet3gpp:ExternalsUnderNRNetwork; - uses ExternalGNBCUCPFunctionWrapper; - } -} \ No newline at end of file diff --git a/yang-models/_3gpp-nr-nrm-externalgnbcuupfunction.yang b/yang-models/_3gpp-nr-nrm-externalgnbcuupfunction.yang deleted file mode 100755 index bcdeecbcc..000000000 --- a/yang-models/_3gpp-nr-nrm-externalgnbcuupfunction.yang +++ /dev/null @@ -1,66 +0,0 @@ -module _3gpp-nr-nrm-externalgnbcuupfunction { - yang-version 1.1; - namespace "urn:3gpp:sa5:_3gpp-nr-nrm-externalgnbcuupfunction"; - prefix "extgnbcuup3gpp"; - - import _3gpp-common-managed-function { prefix mf3gpp; } - import _3gpp-nr-nrm-nrnetwork { prefix nrnet3gpp; } - import _3gpp-common-subnetwork { prefix subnet3gpp; } - import _3gpp-common-top { prefix top3gpp; } - - organization "3GPP SA5"; - description "Defines the YANG mapping of the ExternalGNBCUUPFunction - Information Object Class (IOC), that is part of the NR Network - Resource Model (NRM)."; - reference "3GPP TS 28.541 5G Network Resource Model (NRM)"; - - revision 2019-10-28 { reference S5-193518 ; } - revision 2019-06-17 { - description "Initial revision"; - } - - grouping ExternalGNBCUUPFunctionGrp { - description "Represets the ExternalGNBCUUPFunction IOC."; - reference "3GPP TS 28.541"; - uses mf3gpp:ManagedFunctionGrp; - - leaf gNBId { - description "Identifies a gNB within a PLMN."; - reference "gNB Identifier (gNB ID) in 3GPP TS 38.300, Global gNB ID - in 3GPP TS 38.413"; - mandatory true; - type int64 { range "0..4294967295"; } - } - - leaf gNBIdLength { - description "Indicates the number of bits for encoding the gNB ID."; - reference "gNB ID in 3GPP TS 38.300, Global gNB ID in 3GPP TS 38.413"; - mandatory true; - type int32 { range "22..32"; } - } - } - - grouping ExternalGNBCUUPFunctionWrapper { - list ExternalGNBCUUPFunction { - description "Represents the properties, known by the management function, - of a GNBCUUPFunction managed by another management function."; - reference "3GPP TS 28.541"; - key id; - uses top3gpp:Top_Grp; - container attributes { - uses ExternalGNBCUUPFunctionGrp; - } - uses mf3gpp:ManagedFunctionContainedClasses; - } - } - - augment "/subnet3gpp:SubNetwork" { - if-feature subnet3gpp:ExternalsUnderSubNetwork ; - uses ExternalGNBCUUPFunctionWrapper; - } - - augment "/nrnet3gpp:NRNetwork" { - if-feature nrnet3gpp:ExternalsUnderNRNetwork; - uses ExternalGNBCUUPFunctionWrapper; - } -} \ No newline at end of file diff --git a/yang-models/_3gpp-nr-nrm-externalgnbdufunction.yang b/yang-models/_3gpp-nr-nrm-externalgnbdufunction.yang deleted file mode 100755 index 844933025..000000000 --- a/yang-models/_3gpp-nr-nrm-externalgnbdufunction.yang +++ /dev/null @@ -1,76 +0,0 @@ -module _3gpp-nr-nrm-externalgnbdufunction { - yang-version 1.1; - namespace "urn:3gpp:sa5:_3gpp-nr-nrm-externalgnbdufunction"; - prefix "extgnbdu3gpp"; - - import _3gpp-common-yang-types { prefix types3gpp; } - import _3gpp-common-managed-function { prefix mf3gpp; } - import _3gpp-nr-nrm-nrnetwork { prefix nrnet3gpp; } - import _3gpp-common-subnetwork { prefix subnet3gpp; } - import _3gpp-common-top { prefix top3gpp; } - - organization "3GPP SA5"; - description "Defines the YANG mapping of the ExternalGNBDUFunction - Information Object Class (IOC) that is part of the NR Network Resource - Model (NRM)."; - reference "3GPP TS 28.541 5G Network Resource Model (NRM)"; - - revision 2019-10-28 { reference S5-193518 ; } - revision 2019-06-17 { - description "Initial revision"; - } - - grouping ExternalGNBDUFunctionGrp { - description "Represets the ExternalGNBDUFunction IOC."; - reference "3GPP TS 28.541"; - uses mf3gpp:ManagedFunctionGrp; - - leaf gNBId { - description "Identifies a gNB within a PLMN."; - reference "gNB Identifier (gNB ID) in 3GPP TS 38.300, Global gNB ID - in 3GPP TS 38.413"; - mandatory true; - type int64 { range "0..4294967295"; } - } - - leaf gNBIdLength { - description "Indicates the number of bits for encoding the gNB ID."; - reference "gNB ID in 3GPP TS 38.300, Global gNB ID in 3GPP TS 38.413"; - mandatory true; - type int32 { range "22..32"; } - } - - list pLMNId { - description "Specifies the PLMN identifier to be used as part of the - global RAN node identity."; - key "mcc mnc"; - min-elements 1; - max-elements 1; - uses types3gpp:PLMNId; - } - } - - grouping ExternalGNBDUFunctionWrapper { - list ExternalGNBDUFunction { - description "Represents the properties, known by the management function, - of a GNBDUFunction managed by another management function."; - reference "3GPP TS 28.541"; - key id; - uses top3gpp:Top_Grp; - container attributes { - uses ExternalGNBDUFunctionGrp; - } - uses mf3gpp:ManagedFunctionContainedClasses; - } - } - - augment "/subnet3gpp:SubNetwork" { - if-feature subnet3gpp:ExternalsUnderSubNetwork ; - uses ExternalGNBDUFunctionWrapper; - } - - augment "/nrnet3gpp:NRNetwork" { - if-feature nrnet3gpp:ExternalsUnderNRNetwork; - uses ExternalGNBDUFunctionWrapper; - } -} \ No newline at end of file diff --git a/yang-models/_3gpp-nr-nrm-externalnrcellcu.yang b/yang-models/_3gpp-nr-nrm-externalnrcellcu.yang deleted file mode 100755 index 78e4671f0..000000000 --- a/yang-models/_3gpp-nr-nrm-externalnrcellcu.yang +++ /dev/null @@ -1,85 +0,0 @@ -module _3gpp-nr-nrm-externalnrcellcu { - yang-version 1.1; - namespace "urn:3gpp:sa5:_3gpp-nr-nrm-externalnrcellcu"; - prefix "extnrcellcu3gpp"; - - import _3gpp-common-yang-types { prefix types3gpp; } - import _3gpp-common-managed-function { prefix mf3gpp; } - import _3gpp-nr-nrm-nrnetwork { prefix nrnet3gpp; } - import _3gpp-common-subnetwork { prefix subnet3gpp; } - import _3gpp-nr-nrm-externalgnbcucpfunction { prefix extgnbcucp3gpp; } - import _3gpp-common-top { prefix top3gpp; } - - organization "3GPP SA5"; - description "Defines the YANG mapping of the ExternalNRCellCU Information - Object Class (IOC), that is part of the NR Network Resource Model (NRM)."; - reference "3GPP TS 28.541 5G Network Resource Model (NRM)"; - - revision 2019-10-28 { reference S5-193518 ; } - - revision 2019-06-17 { - description "Initial revision"; - } - - grouping ExternalNRCellCUGrp { - description "Represents the ExternalNRCellCU IOC."; - reference "3GPP TS 28.541"; - uses mf3gpp:ManagedFunctionGrp; - - leaf cellLocalId { - description "Identifies an NR cell of a gNB. Together with corresponding - gNB ID it forms the NR Cell Identifier (NCI)."; - reference "NCI in 3GPP TS 38.300"; - mandatory true; - type int32 {range "0..16383"; } - } - - leaf nRPCI { - description "The Physical Cell Identity (PCI) of the NR cell."; - reference "3GPP TS 36.211"; - mandatory true; - type int32 { range "0..1007"; } - } - - list pLMNIdList { - description "Defines which PLMNs that are assumed to be served by the - NR cell in another gNB CU-CP. This list is either updated by the - managed element itself (e.g. due to ANR, signalling over Xn, etc.) or - by consumer over the standard interface."; - key "mcc mnc"; - min-elements 1; - max-elements 12; - uses types3gpp:PLMNId; - } - - leaf nRFrequencyRef { - description "Reference to corresponding NRFrequency instance."; - mandatory true; - type types3gpp:DistinguishedName; - } - } - - grouping ExternalNRCellCUWrapper { - list ExternalNRCellCU { - description "Represents the properties of an NRCellCU controlled by - another Management Service Provider."; - reference "3GPP TS 28.541"; - key id; - uses top3gpp:Top_Grp; - container attributes { - uses ExternalNRCellCUGrp; - } - uses mf3gpp:ManagedFunctionContainedClasses; - } - } - - augment "/subnet3gpp:SubNetwork/extgnbcucp3gpp:ExternalGNBCUCPFunction" { - if-feature subnet3gpp:ExternalsUnderSubNetwork ; - uses ExternalNRCellCUWrapper; - } - - augment "/nrnet3gpp:NRNetwork/extgnbcucp3gpp:ExternalGNBCUCPFunction" { - if-feature nrnet3gpp:ExternalsUnderNRNetwork; - uses ExternalNRCellCUWrapper; - } -} \ No newline at end of file diff --git a/yang-models/_3gpp-nr-nrm-externalservinggwfunction.yang b/yang-models/_3gpp-nr-nrm-externalservinggwfunction.yang deleted file mode 100755 index 96f51bd22..000000000 --- a/yang-models/_3gpp-nr-nrm-externalservinggwfunction.yang +++ /dev/null @@ -1,52 +0,0 @@ -module _3gpp-nr-nrm-externalservinggwfunction { - yang-version 1.1; - namespace "urn:3gpp:sa5:_3gpp-nr-nrm-externalservinggwfunction"; - prefix "extservgw3gpp"; - - import _3gpp-common-managed-function { prefix mf3gpp; } - import _3gpp-common-subnetwork { prefix subnet3gpp; } - import _3gpp-nr-nrm-eutranetwork { prefix eutranet3gpp; } - import _3gpp-common-top { prefix top3gpp; } - - organization "3GPP SA5"; - description "Defines the YANG mapping of the ExternalServingGWFunction - Information Object Class (IOC) that is part of the NR Network Resource - Model (NRM)."; - reference "3GPP TS 28.541 5G Network Resource Model (NRM)"; - - revision 2019-10-28 { reference S5-193518 ; } - revision 2019-06-17 { - description "Initial revision"; - } - - grouping ExternalServingGWFunctionGrp { - description "Represents the ExternalServingGWFunction IOC."; - reference "3GPP TS 28.541"; - uses mf3gpp:ManagedFunctionGrp; - } - - grouping ExternalServingGWFunctionWrapper { - list ExternalServingGWFunction { - description "Represents the properties, known by the management - function, of a ServingGWFunction managed by another management - function."; - reference "3GPP TS 28.658"; - key id; - uses top3gpp:Top_Grp; - container attributes { - uses ExternalServingGWFunctionGrp; - } - uses mf3gpp:ManagedFunctionContainedClasses; - } - } - - augment "/subnet3gpp:SubNetwork" { - if-feature subnet3gpp:ExternalsUnderSubNetwork ; - uses ExternalServingGWFunctionWrapper; - } - - augment "/eutranet3gpp:EUtraNetwork" { - if-feature eutranet3gpp:ExternalsUnderEUtraNetwork; - uses ExternalServingGWFunctionWrapper; - } -} \ No newline at end of file diff --git a/yang-models/_3gpp-nr-nrm-externalupffunction.yang b/yang-models/_3gpp-nr-nrm-externalupffunction.yang deleted file mode 100755 index 1175c8c60..000000000 --- a/yang-models/_3gpp-nr-nrm-externalupffunction.yang +++ /dev/null @@ -1,51 +0,0 @@ -module _3gpp-nr-nrm-externalupffunction { - yang-version 1.1; - namespace "urn:3gpp:sa5:_3gpp-nr-nrm-externalupffunction"; - prefix "extupf3gpp"; - - import _3gpp-common-managed-function { prefix mf3gpp; } - import _3gpp-common-subnetwork { prefix subnet3gpp; } - import _3gpp-nr-nrm-nrnetwork { prefix nrnet3gpp; } - import _3gpp-common-top { prefix top3gpp; } - - organization "3GPP SA5"; - description "Defines the YANG mapping of the ExternalUPFFunction Information - Object Class (IOC) that is part of the NR Network Resource Model (NRM)."; - reference "3GPP TS 28.541 5G Network Resource Model (NRM)"; - - revision 2019-10-28 { reference S5-193518 ; } - revision 2019-06-17 { - description "Initial revision"; - } - - grouping ExternalUPFFunctionGrp { - description "Represents the ExternalUPFFunction IOC."; - reference "3GPP TS 28.541"; - uses mf3gpp:ManagedFunctionGrp; - } - - grouping ExternalUPFFunctionWrapper { - list ExternalUPFFunction { - description "Represents the properties, known by the management - function, of a UPFFunction managed by another management - function."; - reference "3GPP TS 28.541"; - key id; - uses top3gpp:Top_Grp; - container attributes { - uses ExternalUPFFunctionGrp; - } - uses mf3gpp:ManagedFunctionContainedClasses; - } - } - - augment "/subnet3gpp:SubNetwork" { - if-feature subnet3gpp:ExternalsUnderSubNetwork ; - uses ExternalUPFFunctionWrapper; - } - - augment "/nrnet3gpp:NRNetwork" { - if-feature nrnet3gpp:ExternalsUnderNRNetwork; - uses ExternalUPFFunctionWrapper; - } -} \ No newline at end of file diff --git a/yang-models/_3gpp-nr-nrm-gnbcucpfunction.yang b/yang-models/_3gpp-nr-nrm-gnbcucpfunction.yang deleted file mode 100755 index 8e8d2adf3..000000000 --- a/yang-models/_3gpp-nr-nrm-gnbcucpfunction.yang +++ /dev/null @@ -1,132 +0,0 @@ -module _3gpp-nr-nrm-gnbcucpfunction { - yang-version 1.1; - namespace "urn:3gpp:sa5:_3gpp-nr-nrm-gnbcucpfunction"; - prefix "gnbcucp3gpp"; - - import _3gpp-common-yang-types { prefix types3gpp; } - import _3gpp-common-managed-function { prefix mf3gpp; } - import _3gpp-common-managed-element { prefix me3gpp; } - import _3gpp-common-top { prefix top3gpp; } - import _3gpp-nr-nrm-rrmpolicy { prefix nrrrmpolicy3gpp; } - - organization "3GPP SA5"; - contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; - description "Defines the YANG mapping of the GNBCUCPFunction Information - Object Class (IOC) that is part of the NR Network Resource Model (NRM)."; - reference "3GPP TS 28.541 5G Network Resource Model (NRM)"; - - revision 2020-10-02 { reference CR-0384 ; } - revision 2020-08-06 { reference "CR-0333"; } - revision 2020-08-03 { reference "CR-0321"; } - revision 2020-06-03 { reference "CR-0286"; } - revision 2020-05-08 { reference S5-203316 ; } - revision 2020-04-28 { reference "0260"; } - revision 2020-02-14 { reference S5-20XXXX ; } - revision 2019-10-28 { reference S5-193518 ; } - revision 2019-06-17 { - description "Initial revision"; - } - - feature DESManagementFunction { - description "Classs representing Distributed SON or Domain-Centralized SON Energy Saving feature"; - } - - feature DANRManagementFunction { - description "Classs representing D-SON function of ANR Management feature"; - } - - - feature DMROFunction { - description "Classs representing D-SON function of MRO feature"; - } - - grouping GNBCUCPFunctionGrp { - description "Represents the GNBCUCPFunction IOC."; - reference "3GPP TS 28.541"; - uses mf3gpp:ManagedFunctionGrp; - uses nrrrmpolicy3gpp:RRMPolicy_Grp; - - leaf gNBId { - description "Identifies a gNB within a PLMN. The gNB Identifier (gNB ID) - is part of the NR Cell Identifier (NCI) of the gNB cells."; - reference "gNB ID in 3GPP TS 38.300, Global gNB ID in 3GPP TS 38.413"; - mandatory true; - type int64 { range "0..4294967295"; } - } - - leaf gNBIdLength { - description "Indicates the number of bits for encoding the gNB ID."; - reference "gNB ID in 3GPP TS 38.300, Global gNB ID in 3GPP TS 38.413"; - mandatory true; - type int32 { range "22..32"; } - } - - leaf gNBCUName { - description "Identifies the Central Unit of an gNB."; - reference "3GPP TS 38.473"; - mandatory true; - type string { length "1..150"; } - } - - list pLMNId { - description "The PLMN identifier to be used as part of the global RAN - node identity."; - key "mcc mnc"; - min-elements 1; - max-elements 1; - uses types3gpp:PLMNId; - } - - leaf-list x2BlackList { - type string; - description "List of nodes to which X2 connections are prohibited."; - } - - leaf-list x2WhiteList { - type string; - description "List of nodes to which X2 connections are enforced."; - } - - leaf-list xnBlackList { - type string; - description "List of nodes to which Xn connections are prohibited."; - } - - leaf-list xnWhiteList { - type string; - description "List of nodes to which X2 connections are enforced."; - } - - leaf-list xnHOBlackList { - type string; - description "List of nodes to which handovers over Xn are prohibited."; - } - leaf configurable5QISetRef { - type types3gpp:DistinguishedName; - description "DN of the Configurable5QISet that the GNBCUCPFunction supports (is associated to)."; - } - - leaf-list x2HOBlackList { - type string; - description "List of nodes to which handovers over X2 are prohibited."; - } - leaf dynamic5QISetRef { - type types3gpp:DistinguishedName; - description "DN of the Dynamic5QISet that the GNBCUCPFunction supports (is associated to)."; - } - } - - augment "/me3gpp:ManagedElement" { - - list GNBCUCPFunction { - description "Represents the logical function CU-CP of gNB and en-gNB."; - reference "3GPP TS 28.541"; - key id; - uses top3gpp:Top_Grp; - container attributes { - uses GNBCUCPFunctionGrp; - } - uses mf3gpp:ManagedFunctionContainedClasses; - } - } -} \ No newline at end of file diff --git a/yang-models/_3gpp-nr-nrm-gnbcuupfunction.yang b/yang-models/_3gpp-nr-nrm-gnbcuupfunction.yang deleted file mode 100755 index 944da20a7..000000000 --- a/yang-models/_3gpp-nr-nrm-gnbcuupfunction.yang +++ /dev/null @@ -1,172 +0,0 @@ -module _3gpp-nr-nrm-gnbcuupfunction { - yang-version 1.1; - namespace "urn:3gpp:sa5:_3gpp-nr-nrm-gnbcuupfunction"; - prefix "gnbcuup3gpp"; - - import _3gpp-common-yang-types { prefix types3gpp; } - import _3gpp-common-managed-function { prefix mf3gpp; } - import _3gpp-common-managed-element { prefix me3gpp; } - import _3gpp-common-top { prefix top3gpp; } - import _3gpp-nr-nrm-rrmpolicy { prefix nrrrmpolicy3gpp; } - import _3gpp-5g-common-yang-types { prefix types5g3gpp; } - - organization "3GPP SA5"; - contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; - description "Defines the YANG mapping of the GNBCUUPFunction Information - Object Class (IOC) that is part of the NR Network Resource Model (NRM)."; - reference "3GPP TS 28.541 5G Network Resource Model (NRM)"; - - revision 2020-11-05 { reference CR-0412 ; } - revision 2020-08-06 { reference "CR-0333"; } - revision 2020-08-03 { reference "CR-0321"; } - revision 2020-06-03 { reference "CR-0286"; } - revision 2020-05-28 { reference "CR-0318"; } - revision 2020-03-12 { reference "SP-200233 S5-201547"; } - revision 2020-02-14 { reference S5-20XXXX ; } - revision 2019-10-28 { reference S5-193518 ; } - revision 2019-08-21 { reference "Initial revision"; } - - grouping TAIGrp { - description "Tracking Area Identity"; - - list pLMNId { - key "mcc mnc"; - description "PLMN IDs for the Tracking area"; - uses types3gpp:PLMNId; - } - - leaf nRTAC { - type int64; - description "Identity of the common Tracking Area Code for the PLMNs - allowedValues: - a) It is the TAC or Extended-TAC. - b) A cell can only broadcast one TAC or Extended-TAC. - See TS 36.300, subclause 10.1.7 (PLMNID and TAC relation). - c) TAC is defined in subclause 19.4.2.3 of 3GPP TS 23.003 and - Extended-TAC is defined in subclause 9.3.1.29 of 3GPP TS 38.473. - d) For a 5G SA (Stand Alone), it has a non-null value."; - } - } - - grouping BackhaulAddressGrp { - description "Indicates the backhauladdress of gNB."; - - leaf gNBId { - type uint32 { - range "0..4294967295"; - } - description "It identifies a gNB within a PLMN. The gNB ID is part of - the NR Cell Identifier (NCI) of the gNB cells."; - reference "gNB Identifier (gNB ID) of subclause 8.2 of TS 38.300. - Global gNB ID in subclause 9.3.1.6 of TS 38.413"; - } - - list tAI { - key nRTAC; - min-elements 1; - max-elements 1; - description "Tracking Area Identity"; - reference "subclause 9.3.3.11 in TS 38.413"; - uses TAIGrp; - } - } - - grouping MappingSetIDBackhaulAddressGrp { - description "Mapping relationship between setID and backhaulAddress of gNB"; - - leaf idx { - type uint32 ; - description "ID value"; - } - - leaf setID { - type uint32; - mandatory true; - description "Indicates the setID of gNB."; - reference "Subclause 7.4.1.6 in TS 38.211"; - } - - list backhaulAddress { - key gNBId; - min-elements 1; - max-elements 1; - description "Indicates the backhauladdress of gNB."; - uses BackhaulAddressGrp; - } - } - grouping GNBCUUPFunctionGrp { - description "Represents the GNBCUUPFunction IOC."; - reference "3GPP TS 28.541"; - uses mf3gpp:ManagedFunctionGrp; - uses nrrrmpolicy3gpp:RRMPolicy_Grp; - - leaf gNBCUUPId { - type uint64 { - range "0..68719476735" ; - } - config false; - mandatory true; - description "Identifies the gNB-CU-UP at least within a gNB-CU-CP"; - reference "'gNB-CU-UP ID' in subclause 9.3.1.15 of 3GPP TS 38.463"; - } - - leaf gNBId { - type uint32; - mandatory true; - description "Identifies a gNB within a PLMN. The gNB ID is part of the - NR Cell Identifier (NCI) of the gNB cells. "; - reference "gNB Identifier (gNB ID) of subclause 8.2 of TS 38.300. - Global gNB ID in subclause 9.3.1.6 of TS 38.413"; - } - - leaf gNBIdLength { - mandatory true; - type int32 { range "22..32"; } - description "Indicates the number of bits for encoding the gNB Id."; - reference "gNB Id in 3GPP TS 38.300, Global gNB ID in 3GPP TS 38.413"; - } - - list pLMNInfoList { - description "The PLMNInfoList is a list of PLMNInfo data type. It - defines which PLMNs that can be served by the GNBCUUPFunction and - which S-NSSAIs can be supported by the GNBCUUPFunction for - corresponding PLMN in case of network slicing feature is supported"; - key "mcc mnc sd sst"; - uses types5g3gpp:PLMNInfo; - } - - list mappingSetIDBackhaulAddressList { - key idx; - description "Specifies a list of mappingSetIDBackhaulAddress used to - retrieve the backhaul address of the victim set. - Must be present if Remote Interference Management function is - supported."; - uses MappingSetIDBackhaulAddressGrp; - } - - leaf configurable5QISetRef { - type types3gpp:DistinguishedName; - description "DN of the Configurable5QISet that the GNBCUUPFunction - supports (is associated to)."; - } - leaf dynamic5QISetRef { - type types3gpp:DistinguishedName; - description "DN of the Dynamic5QISet that the GNBCUUPFunction - supports (is associated to)."; - } - } - - augment "/me3gpp:ManagedElement" { - - list GNBCUUPFunction { - key id; - description "Represents the logical function CU-UP of gNB or en-gNB."; - reference "3GPP TS 28.541"; - uses top3gpp:Top_Grp; - container attributes { - uses GNBCUUPFunctionGrp; - } - uses mf3gpp:ManagedFunctionContainedClasses; - } - } -} \ No newline at end of file diff --git a/yang-models/_3gpp-nr-nrm-gnbdufunction.yang b/yang-models/_3gpp-nr-nrm-gnbdufunction.yang deleted file mode 100755 index d317ae74e..000000000 --- a/yang-models/_3gpp-nr-nrm-gnbdufunction.yang +++ /dev/null @@ -1,93 +0,0 @@ -module _3gpp-nr-nrm-gnbdufunction { - yang-version 1.1; - namespace "urn:3gpp:sa5:_3gpp-nr-nrm-gnbdufunction"; - prefix "gnbdu3gpp"; - - import _3gpp-common-managed-function { prefix mf3gpp; } - import _3gpp-common-managed-element { prefix me3gpp; } - import _3gpp-common-top { prefix top3gpp; } - import _3gpp-nr-nrm-rrmpolicy { prefix nrrrmpolicy3gpp; } - - organization "3GPP SA5"; - description "Defines the YANG mapping of the GNBDUFunction Information - Object Class (IOC) that is part of the NR Network Resource Model (NRM)."; - reference "3GPP TS 28.541 5G Network Resource Model (NRM)"; - - revision 2020-10-02 { reference CR-0384 ; } - revision 2020-03-12 { reference "SP-200233 S5-201547" ; } - revision 2020-02-14 { reference S5-20XXXX ; } - revision 2019-10-28 { reference S5-193518 ; } - revision 2019-08-21 { - description "Initial revision."; - } - - feature DRACHOptimizationFunction { - description "Classs representing D-SON function of RACH optimization -feature"; - } - - grouping GNBDUFunctionGrp { - description "Represents the GNBDUFunction IOC."; - reference "3GPP TS 28.541"; - uses mf3gpp:ManagedFunctionGrp; - uses nrrrmpolicy3gpp:RRMPolicy_Grp; - - leaf gNBId { - type int64 { range "0..4294967295"; } - config false; - mandatory true; - description "Identifies a gNB within a PLMN. The gNB Identifier (gNB ID) - is part of the NR Cell Identifier (NCI) of the gNB cells."; - reference "gNB ID in 3GPP TS 38.300, Global gNB ID in 3GPP TS 38.413"; - } - - leaf gNBIdLength { - type int32 { range "22..32"; } - mandatory true; - description "Indicates the number of bits for encoding the gNB ID."; - reference "gNB ID in 3GPP TS 38.300, Global gNB ID in 3GPP TS 38.413"; - } - - leaf gNBDUId { - type int64 { range "0..68719476735"; } - mandatory true; - description "Uniquely identifies the DU at least within a gNB."; - reference "3GPP TS 38.473"; - } - - leaf gNBDUName { - type string { length "1..150"; } - description "Identifies the Distributed Unit of an NR node"; - reference "3GPP TS 38.473"; - } - - leaf aggressorSetID { - type uint32 { range "0..4194304"; } - config false; - description "Indicates the associated aggressor gNB Set ID of the cell - Valid when Remote Interference Management function is supported."; - reference "3GPP TS 38.211 subclause 7.4.1.6"; - } - leaf victimSetID { - type uint32 { range "0..4194304"; } - config false; - description "Indicates the associated victim gNB Set ID of the cell - Valid when Remote Interference Management function is supported."; - reference "3GPP TS 38.211 subclause 7.4.1.6"; - } - } - - augment "/me3gpp:ManagedElement" { - - list GNBDUFunction { - key id; - description "Represents the logical function DU of gNB or en-gNB."; - reference "3GPP TS 28.541"; - uses top3gpp:Top_Grp; - container attributes { - uses GNBDUFunctionGrp; - } - uses mf3gpp:ManagedFunctionContainedClasses; - } - } -} \ No newline at end of file diff --git a/yang-models/_3gpp-nr-nrm-nrcellcu.yang b/yang-models/_3gpp-nr-nrm-nrcellcu.yang deleted file mode 100755 index 3aa5db4d5..000000000 --- a/yang-models/_3gpp-nr-nrm-nrcellcu.yang +++ /dev/null @@ -1,93 +0,0 @@ -module _3gpp-nr-nrm-nrcellcu { - yang-version 1.1; - namespace "urn:3gpp:sa5:_3gpp-nr-nrm-nrcellcu"; - prefix "nrcellcu3gpp"; - - import _3gpp-common-yang-types { prefix types3gpp; } - import _3gpp-common-managed-function { prefix mf3gpp; } - import _3gpp-common-managed-element { prefix me3gpp; } - import _3gpp-nr-nrm-gnbcucpfunction { prefix gnbcucp3gpp; } - import _3gpp-common-top { prefix top3gpp; } - import _3gpp-5g-common-yang-types { prefix types5g3gpp; } - - organization "3GPP SA5"; - contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; - description "Defines the YANG mapping of the NRCellCU Information Object - Class (IOC) that is part of the NR Network Resource Model (NRM)."; - reference "3GPP TS 28.541 5G Network Resource Model (NRM)"; - - revision 2021-01-25 { reference CR-0454 ; } - revision 2020-11-25 { reference CR-0386 ; } - revision 2020-11-05 { reference CR-0412 ; } - revision 2020-10-02 { reference CR-0384 ; } - revision 2020-05-08 { reference S5-203316 ; } - revision 2020-02-14 { reference S5-20XXXX ; } - revision 2019-10-28 { reference S5-193518 ; } - revision 2019-06-17 { reference "Initial revision"; } - - feature DPCIConfigurationFunction { - description "Class representing Distributed SON or Domain-Centralized SON - function of PCI configuration feature"; - } - - feature DESManagementFunction { - description "Class representing Distributed SON or Domain-Centralized SON - Energy Saving feature"; - } - - feature DMROFunction { - description "Class representing D-SON function of MRO feature"; - } - - feature CESManagementFunction { - description "Class representing Cross Domain-Centralized SON Energy Saving - feature"; - } - - grouping NRCellCUGrp { - description "Represents the NRCellCU IOC."; - reference "3GPP TS 28.541"; - uses mf3gpp:ManagedFunctionGrp; - - leaf cellLocalId { - description "Identifies an NR cell of a gNB. Together with corresponding - gNB ID it forms the NR Cell Identifier (NCI)."; - mandatory true; - type int32 { range "0..16383"; } - } - - list pLMNInfoList { - description "The PLMNInfoList is a list of PLMNInfo data type. It defines - which PLMNs that can be served by the NR cell, and which S-NSSAIs that - can be supported by the NR cell for corresponding PLMN in case of - network slicing feature is supported."; - // Note: Whether the attribute pLMNId in the pLMNInfo can be writable - // depends on the implementation. - key "mcc mnc sd sst"; - min-elements 1; - uses types5g3gpp:PLMNInfo; - } - - leaf nRFrequencyRef { - description "Reference to corresponding NRFrequency instance."; - config false; - type types3gpp:DistinguishedName; - } - } - - augment "/me3gpp:ManagedElement/gnbcucp3gpp:GNBCUCPFunction" { - - list NRCellCU { - description "Represents the information required by CU that is - responsible for the management of inter-cell mobility and neighbour - relations via ANR."; - reference "3GPP TS 28.541"; - key id; - uses top3gpp:Top_Grp; - container attributes { - uses NRCellCUGrp; - } - uses mf3gpp:ManagedFunctionContainedClasses; - } - } -} \ No newline at end of file diff --git a/yang-models/_3gpp-nr-nrm-nrcelldu.yang b/yang-models/_3gpp-nr-nrm-nrcelldu.yang deleted file mode 100755 index f81da5001..000000000 --- a/yang-models/_3gpp-nr-nrm-nrcelldu.yang +++ /dev/null @@ -1,226 +0,0 @@ -module _3gpp-nr-nrm-nrcelldu { - yang-version 1.1; - namespace "urn:3gpp:sa5:_3gpp-nr-nrm-nrcelldu"; - prefix "nrcelldu3gpp"; - - import _3gpp-common-yang-types { prefix types3gpp; } - import _3gpp-common-managed-function { prefix mf3gpp; } - import _3gpp-common-managed-element { prefix me3gpp; } - import _3gpp-common-top { prefix top3gpp; } - import _3gpp-nr-nrm-gnbdufunction { prefix gnbdu3gpp; } - import _3gpp-nr-nrm-rrmpolicy { prefix nrrrmpolicy3gpp; } - import _3gpp-5g-common-yang-types { prefix types5g3gpp; } - - - organization "3GPP SA5"; - contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; - description "Defines the YANG mapping of the NRCellDU Information Object - Class (IOC) that is part of the NR Network Resource Model (NRM)."; - reference "3GPP TS 28.541 5G Network Resource Model (NRM)"; - - revision 2021-01-25 { reference CR-0454 ; } - revision 2020-11-25 { reference CR-0386 ; } - revision 2020-11-05 { reference CR-0412 ; } - revision 2020-10-02 { reference CR-0384 ; } - revision 2020-05-08 { reference S5-203316 ; } - revision 2020-02-14 { reference S5-20XXXX ; } - revision 2019-10-28 { reference S5-193518 ; } - revision 2019-09-03 { reference "Initial revision"; } - - feature DRACHOptimizationFunction { - description "Class representing D-SON function of RACH optimization - feature"; - } - - feature CPCIConfigurationFunction { - description "Class representing Cross Domain-Centralized SON function of - PCI configuration feature"; - } - - grouping NRCellDUGrp { - description "Represents the NRCellDU IOC."; - reference "3GPP TS 28.541"; - uses mf3gpp:ManagedFunctionGrp; - uses nrrrmpolicy3gpp:RRMPolicy_Grp; - - leaf cellLocalId { - description "Identifies an NR cell of a gNB. Together with the - corresponding gNB identifier in forms the NR Cell Identity (NCI)."; - reference "NCI in 3GPP TS 38.300"; - mandatory true; - type int32 { range "0..16383"; } - } - - leaf operationalState { - description "Operational state of the NRCellDU instance. Indicates - whether the resource is installed and partially or fully operable - (ENABLED) or the resource is not installed or not operable - (DISABLED)."; - config false; - type types3gpp:OperationalState; - } - - leaf administrativeState { - description "Administrative state of the NRCellDU. Indicates the - permission to use or prohibition against using the cell, imposed - through the OAM services."; - type types3gpp:AdministrativeState; - default LOCKED; - } - - leaf cellState { - description "Cell state of the NRCellDU instance. Indicates whether the - cell is not currently in use (IDLE), or currently in use but not - configured to carry traffic (INACTIVE), or currently in use and is - configured to carry traffic (ACTIVE)."; - config false; - type types3gpp:CellState; - } - - list pLMNInfoList { - description "The PLMNInfoList is a list of PLMNInfo data type. It - defines which PLMNs that can be served by the NR cell, and which - S-NSSAIs that can be supported by the NR cell for corresponding PLMN - in case of network slicing feature is supported. The plMNId of the - first entry of the list is the PLMNId used to construct the nCGI for - the NR cell."; - key "mcc mnc sd sst"; - min-elements 1; - ordered-by user; - uses types5g3gpp:PLMNInfo; - } - - leaf nRPCI { - description "The Physical Cell Identity (PCI) of the NR cell."; - reference "3GPP TS 36.211"; - mandatory true; - type int32 { range "0..1007"; } - } - - leaf nRTAC { - description "The common 5GS Tracking Area Code for the PLMNs."; - reference "3GPP TS 23.003, 3GPP TS 38.473"; - type types3gpp:Tac; - } - - leaf arfcnDL { - description "NR Absolute Radio Frequency Channel Number (NR-ARFCN) for - downlink."; - reference "3GPP TS 38.104"; - mandatory true; - type int32; - } - - leaf arfcnUL { - description "NR Absolute Radio Frequency Channel Number (NR-ARFCN) for - uplink."; - reference "3GPP TS 38.104"; - type int32; - } - - leaf arfcnSUL { - description "NR Absolute Radio Frequency Channel Number (NR-ARFCN) for - supplementary uplink."; - reference "3GPP TS 38.104"; - type int32; - } - - leaf bSChannelBwDL { - description "Base station channel bandwidth for downlink."; - reference "3GPP TS 38.104"; - type int32; - units MHz; - } - - leaf bSChannelBwUL { - description "Base station channel bandwidth for uplink."; - reference "3GPP TS 38.104"; - type int32; - units MHz; - } - - leaf bSChannelBwSUL { - description "Base station channel bandwidth for supplementary uplink."; - reference "3GPP TS 38.104"; - type int32; - units MHz; - } - - leaf ssbFrequency { - description "Indicates cell defining SSB frequency domain position. - Frequency (in terms of NR-ARFCN) of the cell defining SSB transmission. - The frequency identifies the position of resource element RE=#0 - (subcarrier #0) of resource block RB#10 of the SS block. The frequency - must be positioned on the NR global frequency raster, as defined in - 3GPP TS 38.101-1, and within bSChannelBwDL."; - mandatory true; - type int32 { range "0..3279165"; } - } - - leaf ssbPeriodicity { - description "Indicates cell defined SSB periodicity. The SSB periodicity - is used for the rate matching purpose."; - mandatory true; - type int32 { range "5 | 10 | 20 | 40 | 80 | 160"; } - units "subframes (ms)"; - } - - leaf ssbSubCarrierSpacing { - description "Subcarrier spacing of SSB. Only the values 15 kHz or 30 kHz - (< 6 GHz), 120 kHz or 240 kHz (> 6 GHz) are applicable."; - reference "3GPP TS 38.211"; - mandatory true; - type int32 { range "15 | 30 | 120 | 240"; } - units kHz; - } - - leaf ssbOffset { - description "Indicates cell defining SSB time domain position. Defined - as the offset of the measurement window, in which to receive SS/PBCH - blocks, where allowed values depend on the ssbPeriodicity - (ssbOffset < ssbPeriodicity)."; - mandatory true; - type int32 { range "0..159"; } - units "subframes (ms)"; - } - - leaf ssbDuration { - description "Duration of the measurement window in which to receive - SS/PBCH blocks."; - reference "3GPP TS 38.213"; - mandatory true; - type int32 { range "1..5"; } - units "subframes (ms)"; - } - - leaf-list nRSectorCarrierRef { - description "Reference to corresponding NRSectorCarrier instance."; - min-elements 1; - type types3gpp:DistinguishedName; - } - - leaf-list bWPRef { - description "Reference to corresponding BWP instance."; - type types3gpp:DistinguishedName; - } - - leaf-list nRFrequencyRef { - description "Reference to corresponding NRFrequency instance."; - type types3gpp:DistinguishedName; - } - } - - augment "/me3gpp:ManagedElement/gnbdu3gpp:GNBDUFunction" { - - list NRCellDU { - description "Represents the information of a cell known by DU."; - reference "3GPP TS 28.541"; - key id; - uses top3gpp:Top_Grp; - container attributes { - uses NRCellDUGrp; - } - uses mf3gpp:ManagedFunctionContainedClasses; - } - } -} \ No newline at end of file diff --git a/yang-models/_3gpp-nr-nrm-nrcellrelation.yang b/yang-models/_3gpp-nr-nrm-nrcellrelation.yang deleted file mode 100755 index 6e2a77b91..000000000 --- a/yang-models/_3gpp-nr-nrm-nrcellrelation.yang +++ /dev/null @@ -1,144 +0,0 @@ -module _3gpp-nr-nrm-nrcellrelation { - yang-version 1.1; - namespace "urn:3gpp:sa5:_3gpp-nr-nrm-nrcellrelation"; - prefix "nrcellrel3gpp"; - - import _3gpp-common-yang-types { prefix types3gpp; } - import _3gpp-common-managed-function { prefix mf3gpp; } - import _3gpp-common-managed-element { prefix me3gpp; } - import _3gpp-common-top { prefix top3gpp; } - import _3gpp-nr-nrm-gnbcucpfunction { prefix gnbcucp3gpp; } - import _3gpp-nr-nrm-nrcellcu { prefix nrcellcu3gpp; } - - organization "3GPP SA5"; - description "Defines the YANG mapping of the NRCellRelation Information - Object Class (IOC) that is part of the NR Network Resource Model (NRM)."; - reference "3GPP TS 28.541 5G Network Resource Model (NRM)"; - - revision 2021-01-25 { reference CR-0454 ; } - revision 2020-06-03 { reference S5-202333 ; } - revision 2020-04-23 { reference CR0281 ; } - revision 2019-10-28 { reference S5-193518 ; } - revision 2019-08-30 { - description "Initial revision"; - } - - - typedef EnergySavingCoverage { - type enumeration { - enum FULL; - enum NO; - enum PARTIAL; - } - } - - grouping NRCellRelationGrp { - description "Represents the NRCellRelation IOC."; - reference "3GPP TS 28.541"; - - leaf nRTCI { - description "Target NR Cell Identifier. It consists of NR Cell - Identifier (NCI) and Physical Cell Identifier of the target NR cell - (nRPCI)."; - type uint64; - } - - container cellIndividualOffset { - description "A set of offset values for the neighbour cell. Used when - UE is in connected mode. Defined for rsrpOffsetSSB, rsrqOffsetSSB, - sinrOffsetSSB, rsrpOffsetCSI-RS, rsrqOffsetCSI-RS and - sinrOffsetCSI-RS."; - reference "cellIndividualOffset in MeasObjectNR in 3GPP TS 38.331"; - - leaf rsrpOffsetSsb { - description "Offset value of rsrpOffsetSSB."; - default 0; - type types3gpp:QOffsetRange; - } - - leaf rsrqOffsetSsb{ - description "Offset value of rsrqOffsetSSB."; - default 0; - type types3gpp:QOffsetRange; - } - - leaf sinrOffsetSsb { - description "Offset value of sinrOffsetSSB."; - default 0; - type types3gpp:QOffsetRange; - } - - leaf rsrpOffsetCsiRs{ - description "Offset value of rsrpOffsetCSI-RS."; - default 0; - type types3gpp:QOffsetRange; - } - - leaf rsrqOffsetCsiRs { - description "Offset value of rsrqOffsetCSI-RS."; - default 0; - type types3gpp:QOffsetRange; - } - - leaf sinrOffsetCsiRs { - description "Offset value of sinrOffsetCSI-RS."; - default 0; - type types3gpp:QOffsetRange; - } - } - - leaf nRFreqRelationRef { - description "Reference to a corresponding NRFreqRelation instance."; - mandatory true; - type types3gpp:DistinguishedName; - } - - leaf adjacentNRCellRef { - description "Reference to an adjacent NR cell (NRCellCU or - ExternalNRCellCU)."; - mandatory true; - type types3gpp:DistinguishedName; - } - - leaf isRemoveAllowed { - type boolean; - default true; - description "True if the ANR function in the node is allowed to remove this relation."; - } - - leaf isHOAllowed { - type boolean; - default true; - description "True if handovers are allowed over this relation."; - } - - leaf isESCoveredBy { - description "Indicates whether the adjacent cell - provides no, partial or full coverage for the parent cell - instance. Adjacent cells with this attribute equal to FULL are - recommended to be considered as candidate cells to take over the - coverage when the original cell is about to be changed to energy - saving state. All adjacent cells with this property equal - to PARTIAL are recommended to be considered as entirety of candidate - cells to take over the coverage when the original cell is about to be - changed to energy saving state."; - type EnergySavingCoverage; - } - } - - augment /me3gpp:ManagedElement/gnbcucp3gpp:GNBCUCPFunction/nrcellcu3gpp:NRCellCU { - - list NRCellRelation { - description "Represents a neighbour cell relation from a source cell - to a target cell, where the target cell is an NRCellCU or - ExternalNRCellCU instance."; - reference "3GPP TS 28.541"; - key id; - uses top3gpp:Top_Grp; - container attributes { - uses NRCellRelationGrp; - } - uses mf3gpp:ManagedFunctionContainedClasses; - } - } -} \ No newline at end of file diff --git a/yang-models/_3gpp-nr-nrm-nrfreqrelation.yang b/yang-models/_3gpp-nr-nrm-nrfreqrelation.yang deleted file mode 100755 index 3d25d85d0..000000000 --- a/yang-models/_3gpp-nr-nrm-nrfreqrelation.yang +++ /dev/null @@ -1,245 +0,0 @@ -module _3gpp-nr-nrm-nrfreqrelation { - yang-version 1.1; - namespace "urn:3gpp:sa5:_3gpp-nr-nrm-nrfreqrelation"; - prefix "nrfreqrel3gpp"; - - import _3gpp-common-yang-types { prefix types3gpp; } - import _3gpp-common-managed-function { prefix mf3gpp; } - import _3gpp-common-managed-element { prefix me3gpp; } - import _3gpp-common-top { prefix top3gpp; } - import _3gpp-nr-nrm-gnbcucpfunction { prefix gnbcucp3gpp; } - import _3gpp-nr-nrm-nrcellcu { prefix nrcellcu3gpp; } - - organization "3GPP SA5"; - description "Defines the YANG mapping of the NRFreqRelation Information - Object Class (IOC) that is part of the NR Network Resource Model (NRM)."; - reference "3GPP TS 28.541 5G Network Resource Model (NRM)"; - - revision 2020-04-23 { reference CR0281 ; } - revision 2019-10-28 { reference S5-193518 ; } - revision 2019-06-17 { - description "Initial revision"; - } - - grouping NRFreqRelationGrp { - description "Represents the NRFreqRelation IOC."; - reference "3GPP TS 28.541"; - - container offsetMO { - description "A set of offset values applicable to all measured cells - with reference signal(s) indicated in corresponding MeasObjectNR. It - is used to indicate a cell, beam or measurement object specific offset - to be applied when evaluating candidates for cell re-selection or when - evaluating triggering conditions for measurement reporting. It is - defined for rsrpOffsetSSB, rsrqOffsetSSB, sinrOffsetSSB, - rsrpOffsetCSI-RS, rsrqOffsetCSI-RS and sinrOffsetCSI-RS."; - reference "offsetMO in MeasObjectNR in 3GPP TS 38.331"; - - leaf rsrpOffsetSsb { - description "Offset value of rsrpOffsetSSB."; - default 0; - type types3gpp:QOffsetRange; - } - - leaf rsrqOffsetSsb { - description "Offset value of rsrqOffsetSSB."; - default 0; - type types3gpp:QOffsetRange; - } - - leaf sinrOffsetSsb { - description "Offset value of sinrOffsetSSB."; - default 0; - type types3gpp:QOffsetRange; - } - - leaf rsrpOffsetCsiRs { - description "Offset value of rsrpOffsetCSI-RS."; - default 0; - type types3gpp:QOffsetRange; - } - - leaf rsrqOffsetCsiRs { - description "Offset value of rsrqOffsetCSI-RS."; - default 0; - type types3gpp:QOffsetRange; - } - - leaf sinrOffsetCsiRs { - description "Offset value of sinrOffsetCSI-RS."; - default 0; - type types3gpp:QOffsetRange; - } - } - - leaf-list blackListEntry { - description "A list of Physical Cell Identities (PCIs) that are - blacklisted in NR measurements."; - reference "3GPP TS 38.331"; - min-elements 0; - type uint16 { range "0..1007"; } - } - - leaf-list blackListEntryIdleMode { - description "A list of Physical Cell Identities (PCIs) that are - blacklisted in SIB4 and SIB5."; - min-elements 0; - type uint16 { range "0..1007"; } - } - - leaf cellReselectionPriority { - description "The absolute priority of the carrier frequency used by the - cell reselection procedure. Value 0 means lowest priority. The value - must not already used by other RAT, i.e. equal priorities between RATs - are not supported. The UE behaviour when no value is entered is - specified in subclause 5.2.4.1 of 3GPP TS 38.304."; - reference "CellReselectionPriority in 3GPP TS 38.331, priority in - 3GPP TS 38.304"; - type uint32; - default 0; - } - - leaf cellReselectionSubPriority { - description "Indicates a fractional value to be added to the value of - cellReselectionPriority to obtain the absolute priority of the - concerned carrier frequency for E-UTRA and NR."; - reference "3GPP TS 38.331"; - type uint8 { range "2 | 4 | 6 | 8"; } - units "0.1"; - } - - leaf pMax { - description "Used for calculation of the parameter Pcompensation - (defined in 3GPP TS 38.304), at cell reselection to a cell."; - reference "PEMAX in 3GPP TS 38.101-1"; - mandatory false; - type int32 { range "-30..33"; } - units dBm; - } - - leaf qOffsetFreq { - description "The frequency specific offset applied when evaluating - candidates for cell reselection."; - mandatory false; - type types3gpp:QOffsetRange; - default 0; - } - - leaf qQualMin { - description "Indicates the minimum required quality level in the cell. - Value 0 means that it is not sent and UE applies in such case the - (default) value of negative infinity for Qqualmin. Sent in SIB3 or - SIB5."; - reference "3GPP TS 38.304"; - type int32 { range "-34..-3 | 0"; } - units dB; - default 0; - } - - leaf qRxLevMin { - description "Indicates the required minimum received Reference Symbol - Received Power (RSRP) level in the NR frequency for cell reselection. - Broadcast in SIB3 or SIB5, depending on whether the related frequency - is intra- or inter-frequency. Resolution is 2."; - reference "3GPP TS 38.304"; - mandatory true; - type int32 { range "-140..-44"; } - units dBm; - } - - leaf threshXHighP { - description "Specifies the Srxlev threshold used by the UE when - reselecting towards a higher priority RAT/frequency than the current - serving frequency. Each frequency of NR and E-UTRAN might have a - specific threshold. Resolution is 2."; - reference "ThreshX, HighP in 3GPP TS 38.304"; - mandatory true; - type int32 { range "0..62"; } - units dB; - } - - leaf threshXHighQ { - description "Specifies the Squal threshold used by the UE when - reselecting towards a higher priority RAT/frequency than the current - serving frequency. Each frequency of NR and E-UTRAN might have a - specific threshold."; - reference "ThreshX, HighQ in 3GPP TS 38.304"; - mandatory true; - type int32 { range "0..31"; } - units dB; - } - - leaf threshXLowP { - description "Specifies the Srxlev threshold used by the UE when - reselecting towards a lower priority RAT/frequency than the current - serving frequency. Each frequency of NR and E-UTRAN might have a - specific threshold. Resolution is 2."; - reference "ThreshX, LowP in 3GPP TS 38.304"; - mandatory true; - type int32 { range "0..62"; } - units dB; - } - - leaf threshXLowQ { - description "Specifies the Squal threshold used by the UE when - reselecting towards a lower priority RAT/frequency than the current - serving frequency. Each frequency of NR and E-UTRAN might have a - specific threshold."; - reference "ThreshX, LowQ in 3GPP TS 38.304"; - mandatory true; - type int32 { range "0..31"; } - units dB; - } - - leaf tReselectionNR { - description "Cell reselection timer for NR."; - reference "TreselectionRAT for NR in 3GPP TS 38.331"; - mandatory true; - type int32 { range "0..7"; } - units s; - } - - leaf tReselectionNRSfHigh { - description "The attribute tReselectionNr (parameter TreselectionNR in - 3GPP TS 38.304) is multiplied with this scaling factor if the UE is - in high mobility state."; - reference "Speed dependent ScalingFactor for TreselectionNR for high - mobility state in 3GPP TS 38.304"; - mandatory true; - type uint8 { range "25 | 50 | 75 | 100"; } - units %; - } - - leaf tReselectionNRSfMedium { - description "The attribute tReselectionNr (parameter TreselectionNR in - 3GPP TS 38.304) multiplied with this scaling factor if the UE is in - medium mobility state."; - reference "Speed dependent ScalingFactor for TreselectionNR for medium - mobility state in 3GPP TS 38.304"; - mandatory true; - type uint8 { range "25 | 50 | 75 | 100"; } - units %; - } - - leaf nRFrequencyRef { - description "Reference to a corresponding NRFrequency instance."; - mandatory true; - type types3gpp:DistinguishedName; - } - } - - augment /me3gpp:ManagedElement/gnbcucp3gpp:GNBCUCPFunction/nrcellcu3gpp:NRCellCU { - - list NRFreqRelation { - description "Together with the target NRFrequency, it represents the - frequency properties applicable to the referencing NRFreqRelation."; - reference "3GPP TS 28.541"; - key id; - uses top3gpp:Top_Grp; - container attributes { - uses NRFreqRelationGrp; - } - uses mf3gpp:ManagedFunctionContainedClasses; - } - } -} \ No newline at end of file diff --git a/yang-models/_3gpp-nr-nrm-nrfrequency.yang b/yang-models/_3gpp-nr-nrm-nrfrequency.yang deleted file mode 100755 index 77c905ead..000000000 --- a/yang-models/_3gpp-nr-nrm-nrfrequency.yang +++ /dev/null @@ -1,71 +0,0 @@ -module _3gpp-nr-nrm-nrfrequency { - yang-version 1.1; - namespace "urn:3gpp:sa5:_3gpp-nr-nrm-nrnetwork-nrfrequency"; - prefix "nrfreq3gpp"; - - import _3gpp-common-managed-function { prefix mf3gpp; } - import _3gpp-nr-nrm-nrnetwork { prefix nrnet3gpp; } - import _3gpp-common-subnetwork { prefix subnet3gpp; } - import _3gpp-common-top { prefix top3gpp; } - - organization "3GPP SA5"; - description "Defines the YANG mapping of the NRFrequency Information Object - Class (IOC) that is part of the NR Network Resource Model (NRM)."; - reference "3GPP TS 28.541 5G Network Resource Model (NRM)"; - - revision 2019-10-28 { reference S5-193518 ; } - revision 2019-06-17 { - description "Initial revision"; - } - - grouping NRFrequencyGrp { - description "Represents the NRFrequency IOC."; - reference "3GPP TS 28.541"; - uses mf3gpp:ManagedFunctionGrp; - - leaf absoluteFrequencySSB { - description "The absolute frequency applicable for a downlink NR carrier - frequency associated with the SSB, in terms of NR-ARFCN."; - mandatory true; - type uint32 { range "0.. 3279165"; } - } - - leaf sSBSubCarrierSpacing { - description "Sub-carrier spacing of the SSB."; - mandatory true; - type uint8 { range "15 | 30 | 60 | 120"; } - units "kHz"; - } - - leaf-list multiFrequencyBandListNR { - description "List of additional frequency bands the frequency belongs to. - The list is automatically set by the gNB."; - config false; - min-elements 0; - type uint16 { range "1..256"; } - } - } - - grouping NRFrequencyWrapper { - list NRFrequency { - description "Represents certain NR frequency properties."; - reference "3GPP TS 28.541"; - key id; - uses top3gpp:Top_Grp; - container attributes { - uses NRFrequencyGrp; - } - uses mf3gpp:ManagedFunctionContainedClasses; - } - } - - augment "/subnet3gpp:SubNetwork" { - if-feature subnet3gpp:ExternalsUnderSubNetwork ; - uses NRFrequencyWrapper; - } - - augment "/nrnet3gpp:NRNetwork" { - if-feature nrnet3gpp:ExternalsUnderNRNetwork; - uses NRFrequencyWrapper; - } -} \ No newline at end of file diff --git a/yang-models/_3gpp-nr-nrm-nrnetwork.yang b/yang-models/_3gpp-nr-nrm-nrnetwork.yang deleted file mode 100755 index 0e0bfc559..000000000 --- a/yang-models/_3gpp-nr-nrm-nrnetwork.yang +++ /dev/null @@ -1,39 +0,0 @@ -module _3gpp-nr-nrm-nrnetwork { - yang-version 1.1; - namespace "urn:3gpp:sa5:_3gpp-nr-nrm-nrnetwork"; - prefix "nrnet3gpp"; - - import _3gpp-common-subnetwork { prefix subnet3gpp; } - import _3gpp-common-top { prefix top3gpp; } - - organization "3GPP SA5"; - description "Defines the YANG mapping of the NRNetwork Information Object - Class (IOC) that is part of the NR Network Resource Model (NRM)."; - reference "3GPP TS 28.541 5G Network Resource Model (NRM)"; - - revision 2019-06-17 { - description "Initial revision"; - } - - feature ExternalsUnderNRNetwork { - description "Classes representing external entities like NRFrequency, - ExternalGNBCUCPFunction, ExternalGNBDUFunction - are contained under a NRNetwork list/class."; - } - - grouping NRNetworkGrp { - description "Represents the NRNetwork IOC."; - reference "3GPP TS 28.541"; - uses subnet3gpp:SubNetworkGrp; - } - - list NRNetwork { - description "A subnetwork containing gNB external NR entities."; - reference "3GPP TS 28.541"; - key id; - uses top3gpp:Top_Grp; - container attributes { - uses NRNetworkGrp; - } - } -} \ No newline at end of file diff --git a/yang-models/_3gpp-nr-nrm-nrsectorcarrier.yang b/yang-models/_3gpp-nr-nrm-nrsectorcarrier.yang deleted file mode 100755 index 2f55cf1db..000000000 --- a/yang-models/_3gpp-nr-nrm-nrsectorcarrier.yang +++ /dev/null @@ -1,119 +0,0 @@ -module _3gpp-nr-nrm-nrsectorcarrier { - yang-version 1.1; - namespace "urn:3gpp:sa5:_3gpp-nr-nrm-nrnetwork-nrsectorcarrier"; - prefix "nrsectcarr3gpp"; - - import _3gpp-common-yang-types { prefix types3gpp; } - import _3gpp-common-managed-function { prefix mf3gpp; } - import _3gpp-common-managed-element { prefix me3gpp; } - import _3gpp-nr-nrm-gnbdufunction { prefix gnbdu3gpp; } - import _3gpp-common-top { prefix top3gpp; } - - organization "3GPP SA5"; - contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; - description "Defines the YANG mapping of the NRSectorCarrier Information - Object Class (IOC) that is part of the NR Network Resource Model (NRM)."; - reference "3GPP TS 28.541 5G Network Resource Model (NRM)"; - - revision 2020-05-28 { reference CR-0316 ; } - revision 2019-10-28 { reference S5-193518 ; } - revision 2019-06-17 { - description "Initial revision"; - } - - grouping NRSectorCarrierGrp { - description "Represents the NRSectorCarrier IOC."; - reference "3GPP TS 28.541"; - uses mf3gpp:ManagedFunctionGrp; - - leaf txDirection { - description "Indicates if the transmission direction is downlink, - uplink, or both downlink and uplink."; - mandatory true; - type types3gpp:TxDirection; - } - - leaf configuredMaxTxPower { - description "Maximum transmisssion power at the antenna port for all - downlink channels, used simultaneously in a cell, added together. - Condition: The sector-carrier has a downlink and the - configuration of Tx power at antenna port reference point is supported."; - mandatory true; - type int32; - units mW; - } - - leaf configuredMaxTxEIRP { - type int64; - units dBm; - mandatory true; - description "The maximum emitted isotroptic radiated power (EIRP) in dBm - for all downlink channels, used simultaneously in a cell, added together. - Condition: the sector-carrier has a downlink and the - configuration of emitted isotropic radiated power is supported"; - } - - leaf arfcnDL { - description "NR Absolute Radio Frequency Channel Number (NR-ARFCN) - for downlink. - Condition: The sector-carrier has a downlink AND the value - differs from the referring cell's value of arfcnDL."; - reference "3GPP TS 38.104"; - mandatory true; - type int32 { range "0..3279165"; } - } - - leaf arfcnUL { - description "NR Absolute Radio Frequency Channel Number (NR-ARFCN) - for uplink. - Condition: The sector-carrier has an uplink AND the value - differs from the referring cell's value of arfcnUL."; - reference "3GPP TS 38.104"; - mandatory true; - type int32 { range "0..3279165"; } - } - - leaf bSChannelBwDL { - description "Base station channel bandwitdth for downlink. - Condition: The sector-carrier has a downlink AND the value - differs from the referring cell's value of bSChannelBwDL."; - reference "3GPP TS 38.104"; - mandatory true; - type int32 { range "5 | 10 | 15 | 20 | 30 | 40 | 50 | 60 | 70 | 80 | - 90 | 100"; } - units MHz; - } - - leaf bSChannelBwUL { - description "Base station channel bandwitdth for uplink."; - reference "3GPP TS 38.104"; - mandatory true; - type int32 { range "5 | 10 | 15 | 20 | 30 | 40 | 50 | 60 | 70 | 80 | - 90 | 100"; } - units MHz; - } - - leaf sectorEquipmentFunctionRef { - description "Reference to corresponding SectorEquipmentFunction - instance."; - reference "3GPP TS 23.622"; - mandatory true; - type types3gpp:DistinguishedName; - } - } - - augment "/me3gpp:ManagedElement/gnbdu3gpp:GNBDUFunction" { - - list NRSectorCarrier { - description "Represents the resources of each transmission point - included in the cell."; - reference "3GPP TS 28.541"; - key id; - uses top3gpp:Top_Grp; - container attributes { - uses NRSectorCarrierGrp; - } - uses mf3gpp:ManagedFunctionContainedClasses; - } - } -} \ No newline at end of file diff --git a/yang-models/_3gpp-nr-nrm-rrmpolicy.yang b/yang-models/_3gpp-nr-nrm-rrmpolicy.yang deleted file mode 100755 index 3480c753c..000000000 --- a/yang-models/_3gpp-nr-nrm-rrmpolicy.yang +++ /dev/null @@ -1,122 +0,0 @@ -module _3gpp-nr-nrm-rrmpolicy { - yang-version 1.1; - namespace "urn:3gpp:sa5:_3gpp-nr-nrm-rrmpolicy"; - prefix "nrrrmpolicy3gpp"; - - import _3gpp-5g-common-yang-types { prefix types5g3gpp; } - import _3gpp-common-top { prefix top3gpp; } - - organization "3GPP SA5"; - contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; - description "Defines the YANG mapping of the RRMPolicy abstract class that - is part of the NR Network Resource Model (NRM)."; - reference "3GPP TS 28.541 5G Network Resource Model (NRM)"; - - revision 2020-11-05 { reference CR-0412 ; } - revision 2020-04-28 { reference "CR0285"; } - revision 2020-02-14 { reference "Initial revision"; } - - grouping rRMPolicyMemberGrp { - description "This data type represents an RRM Policy member that will be - part of a rRMPolicyMemberList. A RRMPolicyMember is defined by its - pLMNId and sNSSAI (S-NSSAI). - The members in a rRMPolicyMemberList are assigned a specific amount of - RRM resources based on settings in RRMPolicy."; - - uses types5g3gpp:PLMNInfo; - } - - typedef CyclicPrefix { - type enumeration { - enum NORMAL; - enum EXTENDED; - } - } - - grouping RRMPolicy_Grp { - description "This IOC represents the properties of an abstract RRMPolicy - . The RRMPolicy_ IOC needs to be subclassed to be instantiated. - It defines two attributes apart from those inherited from Top IOC, the - resourceType attribute defines type of resource (PRB, RRC - connected users, DRB usage etc.) and the rRMPolicyMemberList attribute - defines the RRMPolicyMember(s)that are subject to this policy. - An RRM resource (defined in resourceType - attribute) is located in NRCellDU, NRCellCU, GNBDUFunction, - GNBCUCPFunction or in GNBCUUPFunction. The RRMPolicyRatio IOC is one - realization of a RRMPolicy_ IOC. This RRM framework allows adding new - policies, both standardized (like RRMPolicyRatio) or as vendor specific, - by inheriting from the abstract RRMPolicy_ IOC."; - - leaf resourceType { - description "The resourceType attribute defines type of resource (PRB, - RRC connected users, DRB usage etc.) that is subject to policy. - Valid values are 'PRB', 'RRC' or 'DRB'"; - mandatory true; - type string; - } - - list rRMPolicyMemberList{ - description "It represents the list of RRMPolicyMember (s) that the - managed object is supporting. A RRMPolicyMember <> include - the PLMNId <> and S-NSSAI <>." ; - min-elements 1; - key "mcc mnc sd sst"; - uses rRMPolicyMemberGrp; - } - } // grouping - - - grouping RRMPolicyRatioGrp { - description "Represents the RRMPolicyRatio concrete IOC."; - - uses RRMPolicy_Grp; // Inherits RRMPolicy_ - - - leaf rRMPolicyMaxRatio { - description " This attribute specifies the maximum percentage of radio - resource that can be used by the associated rRMPolicyMemberList. - The maximum percentage of radio resource include at least one of - the shared resources, prioritized resources and dedicated resources. - The sum of the rRMPolicyMaxRatio values assigned to all RRMPolicyRatio(s) - name-contained by same ManagedEntity can be greater that 100."; - default 100; - type uint8 { range "0..100"; } - units percent; - } - - leaf rRMPolicyMinRatio { - description " This attribute specifies the minimum percentage of radio - resources that can be used by the associated rRMPolicyMemberList. - The minimum percentage of radio resources including at least one of - prioritized resources and dedicated resources. The sum of the - rRMPolicyMinRatio values assigned to all RRM PolicyRatio(s) - name-contained by same ManagedEntity shall be less or equal 100."; - default 0; - type uint8 { range "0..100"; } - units percent; - } - - leaf rRMPolicyDedicatedRatio { - description " This attribute specifies the percentage of radio resource - that dedicatedly used by the associated rRMPolicyMemberList. The sum of - the rRMPolicyDeidctaedRatio values assigned to all RRMPolicyRatio(s) - name-contained by same ManagedEntity shall be less or equal 100. "; - default 0; - type uint8 { range "0..100"; } - units percent; - } - } - - list RRMPolicyRatio { - description " The RRMPolicyRatio IOC is one realization of a RRMPolicy_ IOC, - see the inheritance in Figure 4.2.1.2-1. This RRM framework allows - adding new policies, both standardized (like RRMPolicyRatio) or as - vendor specific, by inheriting from the - abstract RRMPolicy_ IOC. For details see subclause 4.3.36."; - key id; - uses top3gpp:Top_Grp; - container attributes { - uses RRMPolicyRatioGrp; - } - } -} \ No newline at end of file diff --git a/yang-models/_3gpp-ns-nrm-networkslice.yang b/yang-models/_3gpp-ns-nrm-networkslice.yang deleted file mode 100755 index d7b0d5044..000000000 --- a/yang-models/_3gpp-ns-nrm-networkslice.yang +++ /dev/null @@ -1,74 +0,0 @@ -module _3gpp-ns-nrm-networkslice { - yang-version 1.1; - namespace urn:3gpp:sa5:_3gpp-ns-nrm-networkslice; - prefix ns3gpp; - - import _3gpp-ns-nrm-networkslicesubnet { prefix nss3gpp; } - import _3gpp-common-subnetwork { prefix subnet3gpp; } - import _3gpp-common-yang-types { prefix types3gpp; } - import _3gpp-common-top { prefix top3gpp; } - - include _3gpp-ns-nrm-serviceprofile; - - organization "3GPP SA5"; - contact - "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; - description "A network slice instance in a 5G network."; - reference "3GPP TS 28.541 - Management and orchestration; - 5G Network Resource Model (NRM); - Information model definitions for network slice NRM (chapter 6) - "; - - revision 2020-02-19 { - description "Introduction of YANG definitions for network slice NRM"; - reference "CR-0458"; - } - - grouping NetworkSliceGrp { - - uses subnet3gpp:SubNetworkGrp; // Inherits from SubNetwork - - leaf operationalState { - description "The operational state of the network slice instance. - It describes whether or not the resource is physically installed - and working."; - config false; - type types3gpp:OperationalState; - } - - leaf administrativeState { - description "The administrative state of the network slice instance. - It describes the permission to use or prohibition against - using the instance, imposed through the OAM services."; - type types3gpp:AdministrativeState; - } - - list serviceProfileList { - description "A list of service profiles supported by the network - slice instance."; - key serviceProfileId; - uses ServiceProfileGrp; - } - - leaf networkSliceSubnetRef { - type leafref { - path /nss3gpp:NetworkSliceSubnet/nss3gpp:id; - } - description "The NetworkSliceSubnet that the NetworkSlice is - associated with."; - } - } - - list NetworkSlice { - description "Represents the properties of a network slice instance in - a 5G network."; - key id; - - container attributes { - uses NetworkSliceGrp; - } - - uses top3gpp:Top_Grp; - } -} diff --git a/yang-models/_3gpp-ns-nrm-networkslicesubnet.yang b/yang-models/_3gpp-ns-nrm-networkslicesubnet.yang deleted file mode 100755 index be7f4c6f7..000000000 --- a/yang-models/_3gpp-ns-nrm-networkslicesubnet.yang +++ /dev/null @@ -1,206 +0,0 @@ -module _3gpp-ns-nrm-networkslicesubnet { - yang-version 1.1; - - namespace urn:3gpp:sa5:_3gpp-ns-nrm-networkslicesubnet; - prefix nss3gpp; - - import _3gpp-common-yang-types { prefix types3gpp; } - import _3gpp-common-subnetwork { prefix subnet3gpp; } - import _3gpp-common-measurements { prefix meas3gpp; } - import _3gpp-common-top { prefix top3gpp; } - - include _3gpp-ns-nrm-sliceprofile; - - organization "3GPP SA5"; - contact - "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; - description "This IOC represents the properties of a network slice subnet - instance in a 5G network."; - reference "3GPP TS 28.541 - Management and orchestration; - 5G Network Resource Model (NRM); - Information model definitions for network slice NRM (chapter 6) - "; - - revision 2020-02-19 { - description "Introduction of YANG definitions for network slice NRM"; - reference "CR-0458"; - } - - revision 2019-06-07 { - description "initial revision"; - reference "Based on - 3GPP TS 28.541 V15.X.XX"; - } - - feature MeasurementsUnderNetworkSliceSubnet { - description "The MeasurementSubtree shall be contained under - NetworkSliceSubnet."; - } - - typedef ETSI-GS-NFV-Identifier { - type string; - reference "ETSI GS NFV-IFA 013"; - } - - grouping EPTransportGrp { - leaf ipAddress { - description "This parameter specifies the IP address assigned to a - logical transport interface/endpoint. It can be an IPv4 address - (See RFC 791) or an IPv6 address (See RFC 2373)."; - mandatory true; - type string; - } - leaf logicInterfaceId { - description "This parameter specifies the identify of a logical - transport interface. It could be VLAN ID (See IEEE 802.1Q), - MPLS Tag or Segment ID."; - mandatory true; - type string; - } - leaf-list nextHopInfo { - description "This parameter is used to identify ingress transport - node. Each node can be identified by any of combination of IP - address of next-hop router of transport network, system name, - port name, IP management address of transport nodes."; - type string; - } - leaf-list qosProfile { - description "This parameter specifies reference to QoS Profile for - a logical transport interface. A QoS profile includes a set of - parameters which are locally provisioned on both sides of a logical - transport interface."; - type string; - } - leaf-list epApplicationRef { - description "This parameter specifies a list of application level - EPs associated with the logical transport interface."; - min-elements 1; - type types3gpp:DistinguishedName; - } - uses top3gpp:Top_Grp; - } - - grouping NsInfoGrp { - description "The NsInfo of the NS instance corresponding to the network - slice subnet instance."; - //suport condition: It shall be supported if the NSS instance is - //realized in the virtualized environment. - // Otherwise this attribute shall be absent. - reference "ETSI GS NFV-IFA 013 clause 8.3.3.2.2, which can be found at - https://www.etsi.org/deliver/etsi_gs/NFV-IFA/001_099/013 - /03.04.01_60/gs_NFV-IFA013v030401p.pdf page 123-124"; - leaf nSInstanceId { - description "Uniquely identifies the NS instance."; - config false; - type ETSI-GS-NFV-Identifier; - } - leaf nsName { - description "Human readable name of the NS instance."; - type string; - config false; - } - leaf description { - description "Human readable description of the NS instance."; - config false; - type string; - } - } - - grouping NetworkSliceSubnetGrp { - - uses subnet3gpp:SubNetworkGrp; - uses EPTransportGrp; - - leaf operationalState { - description "The operational state of the network slice instance. - It describes whether or not the resource is physically installed - and working."; - mandatory true; - config false; - type types3gpp:OperationalState; - } - - leaf administrativeState { - description "The administrative state of the network slice instance. - It describes the permission to use or prohibition against - using the instance, imposed through the OAM services."; - mandatory true; - type types3gpp:AdministrativeState; - } - - list nsInfo { - description "This list represents the properties of network service - information corresponding to the network slice subnet instance."; - reference "ETSI GS NFV-IFA 013 clause 8.3.3.2.2"; - config false; - key nSInstanceId; - max-elements 1; - uses NsInfoGrp; - } - - list sliceProfileList { - description "List of SliceProfiles supported by the network slice - subnet instance"; - key sliceProfileId; - uses SliceProfileGrp; - } - - list managedFunctionRef { - description "The managed functions that the NetworkSliceSubnet is - associated with."; - key aggregatedManagedFunction; - leaf aggregatedManagedFunction { - type instance-identifier; - } - } - - leaf-list networkSliceSubnetRef { - type leafref { - path /NetworkSliceSubnet/id; - } - description "Lists the NetworkSliceSubnet instances associated with - this NetworkSliceSubnet."; - } - } - - list NetworkSliceSubnet { - description "Represents the properties of a network slice subnet - instance in a 5G network."; - key id; - - container attributes { - - uses NetworkSliceSubnetGrp; - - leaf-list parents { - description "Reference to direct parent NetworkSliceSubnet - instances. - If NetworkSliceSubnets form a containment hierarchy this is - modeled using references between the child NetworkSliceSubnet - and the parent NetworkSliceSubnet. - This reference MUST NOT be present for the top level - NetworkSliceSubnet and MUST be present for other - NetworkSliceSubnets."; - type leafref { - path "/NetworkSliceSubnet/id"; - } - } - - leaf-list containedChildren { - description "Reference to all directly contained NetworkSliceSubnet - instances. If NetworkSliceSubnets form a containment hierarchy - this is modeled using references between the child - NetworkSliceSubnet and the parent NetworkSliceSubnet."; - type leafref { - path "/NetworkSliceSubnet/id"; - } - } - } - - uses top3gpp:Top_Grp; - uses meas3gpp:MeasurementSubtree { - if-feature MeasurementsUnderNetworkSliceSubnet; - } - } -} \ No newline at end of file diff --git a/yang-models/_3gpp-ns-nrm-perfreq.yang b/yang-models/_3gpp-ns-nrm-perfreq.yang deleted file mode 100755 index 7d0429304..000000000 --- a/yang-models/_3gpp-ns-nrm-perfreq.yang +++ /dev/null @@ -1,170 +0,0 @@ -module _3gpp-ns-nrm-perfreq { - yang-version 1.1; - namespace urn:3gpp:sa5:_3gpp-ns-nrm-perfreq; - prefix perf3gpp; - - organization "3GPP SA5"; - contact - "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; - description "The performance requirements for the NSI in terms of the - scenarios defined in the 3GPP TS 22.261, such as experienced data rate, - area traffic capacity (density) information of UE density."; - reference "3GPP TS 28.541 - Management and orchestration; - 5G Network Resource Model (NRM); - Information model definitions for network slice NRM (chapter 6) - "; - - revision 2020-02-19 { - description "Introduction of YANG definitions for network slice NRM"; - reference "CR-0458"; - } - - typedef data-rate { - type uint32; - units kbits/s; - } - typedef integer-percentage { - type uint8 { - range 0..100; - } - units percent; - } - typedef reliability-string { - description "Mean time between failures. - E.g. '1 day', or '3 months'"; - type string { - pattern "[0-9]+ (day|week|month|year)s?"; - } - reference "3GPP TS 22.104 clause 5.2-5.5"; - } - typedef message-size-string { - description "Message size in bytes. - E.g. '80', or '250-2000'"; - type string { - pattern '[0-9]+(-[0-9]+)?'; - } - units bytes; - reference "3GPP TS 22.104 clause 5.2-5.5"; - } - typedef transfer-interval-string { - description "Transfer interval time. If multiple values are given, - the first value is the application requirement, the other values are - the requirement with multiple transmission of the same information - two or three times, respectively). - E.g. '40ms', or '0ms-5ms,0ms-2.5ms,0ms-1.7ms'"; - type string { - pattern '[0-9]+(\.[0-9]+)?m?s-[0-9]+(\.[0-9]+)?m?s' + - '(,[0-9]+(\.[0-9]+)?m?s-[0-9]+(\.[0-9]+)?){0,2}'; - } - reference "3GPP TS 22.104 clause 5.2-5.5"; - } - typedef survival-time-string { - description "Survival time in milliseconds (ms) or in multiples of - the transfer interval (x). If multiple values are given, - the first value is the application requirement, the other values are - the requirement with multiple transmission of the same information - two or three times, respectively). - E.g. '12ms', or '0x,2x'"; - type string { - pattern '[0-9]+(x|ms)(,[0-9]+(x|ms)){0,2}'; - } - reference "3GPP TS 22.104 clause 5.2-5.5"; - } - - grouping PerfReqGrp { - //Stage2 issue: The perfReq object does not have any proper definition - // in 28.541 chapter 6. - //Stage2 issue: The text that exists on the perfReq mentions an sST - // element. There is potentially several sST elements in - // the SliceProfile/sNSSAIList which could be used as basis - // for deciding which perfReq elements are relevant. - // Operators can construct their own sST values. It is not - // clear which of the perfReq elements below would be - // relevant in such a case. Leaving all perfReq elements - // available in all use cases for now. - - // eMBB leafs, SST = 1 - leaf expDataRateDL { - description "User experienced data rate over downlink"; - //TODO: add when 'somepath/sST = 1'; - type data-rate; - reference "3GPP TS 22.261 clause 7.1, table 7.1-1"; - } - leaf expDataRateUL { - description "User experienced data rate over uplink"; - //TODO: add when 'somepath/sST = 1'; - type data-rate; - reference "3GPP TS 22.261 clause 7.1, table 7.1-1"; - } - leaf areaTrafficCapDL { - description "Area traffic capacity over downlink"; - //TODO: add when 'somepath/sST = 1'; - type data-rate; - units kbits/s/km2; - reference "3GPP TS 22.261 clause 7.1, table 7.1-1"; - } - leaf areaTrafficCapUL { - description "Area traffic capacity over uplink"; - //TODO: add when 'somepath/sST = 1'; - type data-rate; - units kbits/s/km2; - reference "3GPP TS 22.261 clause 7.1, table 7.1-1"; - } - leaf overallUserDensity { - description "Overall user density"; - //TODO: add when 'somepath/sST = 1'; - type uint32; - units users/km2; - reference "3GPP TS 22.261 clause 7.1, table 7.1-1"; - } - leaf activityFactor { - description "Percentage value of the amount of simultaneous active - UEs to the total number of UEs where active means the UEs are - exchanging data with the network."; - //TODO: add when 'somepath/sST = 1'; - type integer-percentage; - reference "3GPP TS 22.261 clause 7.1, table 7.1-1"; - } - - // uRLLC leafs, SST = 2 - leaf cSAvailabilityTarget { - description "Reliability uptime target"; - //TODO: add when 'somepath/sST = 2'; - type decimal64 { - fraction-digits 6; // E.g. 99.999999 - range 0..100; - } - reference "3GPP TS 22.104 clause 5.2-5.5"; - } - leaf cSReliabilityMeanTime { - description "Mean time between failures"; - //TODO: add when 'somepath/sST = 2'; - type reliability-string; - } - leaf expDataRate { - description "User experienced data rate"; - //TODO: add when 'somepath/sST = 2'; - type data-rate; - reference "3GPP TS 22.104 clause 5.2-5.5"; - } - leaf msgSizeByte { - description "PDU size"; - //TODO: add when 'somepath/sST = 2'; - type message-size-string; - } - leaf transferIntervalTarget { - description "Time difference between two consecutive transfers - of application data from an application via the service interface - to 3GPP system"; - //TODO: add when 'somepath/sST = 2'; - type transfer-interval-string; - } - leaf survivalTime { - description "The time that an application consuming a communication - service may continue without an anticipated message"; - //TODO: add when 'somepath/sST = 2'; - type survival-time-string; - } - } -} \ No newline at end of file diff --git a/yang-models/_3gpp-ns-nrm-serviceprofile.yang b/yang-models/_3gpp-ns-nrm-serviceprofile.yang deleted file mode 100755 index f83dde353..000000000 --- a/yang-models/_3gpp-ns-nrm-serviceprofile.yang +++ /dev/null @@ -1,569 +0,0 @@ -submodule _3gpp-ns-nrm-serviceprofile { - yang-version 1.1; - belongs-to _3gpp-ns-nrm-networkslice { prefix ns3gpp; } - - import _3gpp-common-yang-types { prefix types3gpp; } - import _3gpp-5g-common-yang-types { prefix types5g3gpp; } - - organization "3GPP SA5"; - contact - "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; - description "A network slice instance in a 5G network."; - reference "3GPP TS 28.541 - Management and orchestration; - 5G Network Resource Model (NRM); - Information model definitions for network slice NRM (chapter 6) - "; - - revision 2020-02-19 { - description "Introduction of YANG definitions for network slice NRM"; - reference "CR-0458"; - } - - revision 2019-06-23 { - description "Initial revision"; - reference "3GPP TS 28.541 V15.X.XX"; - } - - typedef availability-percentage { - description " - Percentage value of the amount of time the end-to-end communication - service is delivered according to an agreed QoS, divided by the amount - of time the system is expected to deliver the end-to-end service - according to the specification in a specific area."; - reference "3GPP TS 22.261 3.1"; - type decimal64 { - fraction-digits 4; // E.g. 99.9999 - range 0..100; - } - } - typedef Category-enum { - type enumeration { - enum character; - enum scalability; - } - } - typedef Tagging-enum { - type enumeration { - enum performance; - enum function; - enum operation; - } - } - typedef Exposure-enum { - type enumeration { - enum API; - enum KPI; - } - } - typedef Support-enum { - type enumeration { - enum NOT_SUPPORTED; - enum SUPPORTED; - } - } - grouping ServAttrComGrp { - leaf category { - description "This attribute specifies the category of a service - requirement/attribute of GST"; - type Category-enum; - } - leaf-list tagging { - description "This attribute specifies the tagging of a service - requirement/attribute of GST in character category"; - when "../category = 'character'"; - type Tagging-enum; - } - leaf exposure { - description "This attribute specifies exposure mode of a service - requirement/attribute of GST"; - type Exposure-enum; - } - } - typedef DeterminCommAvailability { - type Support-enum; - } - grouping DLThptGrp { - list servAttrCom { - description "This list represents the common properties of service - requirement related attributes."; - reference "GSMA NG.116 corresponding to Attribute categories, - tagging and exposure"; - config false; - key idx; - max-elements 1; - leaf idx { - description "Synthetic index for the element."; - type uint32; - } - uses ServAttrComGrp; - } - leaf guaThpt { - description "This attribute describes the guaranteed data rate."; - type uint64; - units kbits/s; - } - leaf maxThpt { - description "This attribute describes the maximum data rate."; - type uint64; - units kbits/s; - } - } - typedef V2XMode-enum { - type enumeration { - enum NOT_SUPPORTED; - enum SUPPORTED_BY_NR; - } - } - - grouping ServiceProfileGrp { - - leaf serviceProfileId { - description "Service profile identifier."; - type types3gpp:DistinguishedName; - } - - list sNSSAIList { - description "The S-NSSAI list to be supported by the new NSI to be - created or the existing NSI to be re-used."; - min-elements 1; - key idx; - unique "sst sd"; - leaf idx { - description "Synthetic index for the element."; - type uint32; - } - uses types5g3gpp:SNssai; - } - - list pLMNIdList { - description "List of PLMN IDs."; - min-elements 1; - key "mcc mnc"; - ordered-by user; - uses types3gpp:PLMNId; - } - - leaf maxNumberofUEs { - description "The maximum number of UEs that may simultaneously - access the network slice instance."; - mandatory true; - type uint64; - } - - leaf-list coverageArea { - min-elements 1; - description "A list of TrackingAreas where the NSI can be selected."; - type types3gpp:Tac; - } - - leaf latency { - description "The packet transmission latency (milliseconds) through - the RAN, CN, and TN part of 5G network, used to evaluate utilization - performance of the end-to-end network slice instance."; - reference "3GPP TS 28.554 clause 6.3.1"; - mandatory true; - type uint16; - units milliseconds; - } - - leaf uEMobilityLevel { - description "The mobility level of UE accessing the network slice - instance."; - reference "3GPP TS 22.261 clause 6.2.1"; - type types3gpp:UeMobilityLevel; - } - - leaf resourceSharingLevel { - description "Specifies whether the resources to be allocated to the - network slice instance may be shared with another network slice - instance(s)."; - type types3gpp:ResourceSharingLevel; - } - - //Stage2 issue: The sNSSAIList above specifies one or potentially - // several sST objects for the service profile. - // How do they relate? - leaf sST { - description "Specifies the slice/service type. See 3GPP TS 23.501 - for defined values."; - mandatory true; - type uint32; - reference "3GPP TS 23.501 5.15.2.2"; - } - - leaf availability { - description "The availability requirement for a network slice - instance, expressed as a percentage."; - type availability-percentage; - } - - list delayTolerance { - description "An attribute specifies the properties of service delivery - flexibility, especially for the vertical services that are not - chasing a high system performance."; - reference "TS 22.104 clause 4.3"; - config false; - key idx; - max-elements 1; - leaf idx { - description "Synthetic index for the element."; - type uint32; - } - list servAttrCom { - description "This list represents the common properties of service - requirement related attributes."; - reference "GSMA NG.116 corresponding to Attribute categories, - tagging and exposure"; - key idx; - max-elements 1; - leaf idx { - description "Synthetic index for the element."; - type uint32; - } - uses ServAttrComGrp; - } - leaf support { - description "An attribute specifies whether or not the network - slice supports service delivery flexibility, especially for the - vertical services that are not chasing a high system performance."; - type Support-enum; - } - } - list deterministicComm { - //Stage2 issue: deterministicComm is not defined in 28.541 chapter 6, - // but I guess determinComm is meant - description "This list represents the properties of the deterministic - communication for periodic user traffic. Periodic traffic refers to the - type of traffic with periodic transmissions."; - key idx; - max-elements 1; - leaf idx { - description "Synthetic index for the element."; - type uint32; - } - list servAttrCom { - description "This list represents the common properties of service - requirement related attributes."; - reference "GSMA NG.116 corresponding to Attribute categories, - tagging and exposure"; - config false; - key idx; - max-elements 1; - leaf idx { - description "Synthetic index for the element."; - type uint32; - } - uses ServAttrComGrp; - } - leaf availability { - //Stage2 issue: Defined differently in 28.541 chapter 6, but XML - // uses DeterminCommAvailability - config false; - type DeterminCommAvailability; - } - leaf periodicityList { - //Stage2 issue: Not defined in 28.541 chapter 6. XML and YAML - // says "string". - type string; - } - } - list dLThptPerSlice { - description "This attribute defines achievable data rate of the - network slice in downlink that is available ubiquitously across - the coverage area of the slice"; - key idx; - max-elements 1; - leaf idx { - description "Synthetic index for the element."; - type uint32; - } - uses DLThptGrp; - } - list dLThptPerUE { - description "This attribute defines data rate supported by the network - slice per UE"; - key idx; - max-elements 1; - leaf idx { - description "Synthetic index for the element."; - type uint32; - } - uses DLThptGrp; - } - list uLThptPerSlic { - key idx; - max-elements 1; - leaf idx { - description "Synthetic index for the element."; - type uint32; - } - description "This attribute defines achievable data rate of the - network slice in uplink that is available ubiquitously across - the coverage area of the slice"; - uses DLThptGrp; - } - list uLThptPerUE { - key idx; - max-elements 1; - leaf idx { - description "Synthetic index for the element."; - type uint32; - } - description "This attribute defines data rate supported by the - network slice per UE"; - uses DLThptGrp; - } - list maxPktSize { - config false; - key idx; - max-elements 1; - leaf idx { - description "Synthetic index for the element."; - type uint32; - } - description "This parameter specifies the maximum packet size - supported by the network slice"; - list servAttrCom { - description "This list represents the common properties of service - requirement related attributes."; - reference "GSMA NG.116 corresponding to Attribute categories, - tagging and exposure"; - key idx; - max-elements 1; - leaf idx { - description "Synthetic index for the element."; - type uint32; - } - uses ServAttrComGrp; - } - leaf maxSize { - //Stage2 issue: Not defined in 28.541, guessing integer bytes - type uint32; - units bytes; - } - } - list maxNumberofPDUSessions { - description "Represents the maximum number of - concurrent PDU sessions supported by the network slice"; - config false; - key idx; - max-elements 1; - leaf idx { - description "Synthetic index for the element."; - type uint32; - } - list servAttrCom { - description "This list represents the common properties of service - requirement related attributes."; - reference "GSMA NG.116 corresponding to Attribute categories, - tagging and exposure"; - key idx; - max-elements 1; - leaf idx { - description "Synthetic index for the element."; - type uint32; - } - uses ServAttrComGrp; - } - leaf nOofPDUSessions { - //Stage2 issue: Not defined in 28.541, guessing integer - type uint32; - } - } - list kPIMonitoring { - description "Represents performance monitoring"; - config false; - key idx; - max-elements 1; - leaf idx { - description "Synthetic index for the element."; - type uint32; - } - list servAttrCom { - description "This list represents the common properties of service - requirement related attributes."; - reference "GSMA NG.116 corresponding to Attribute categories, - tagging and exposure"; - key idx; - max-elements 1; - leaf idx { - description "Synthetic index for the element."; - type uint32; - } - uses ServAttrComGrp; - } - leaf kPIList { - //Stage2 issue: Data format not specified, low interoperability - description "An attribute specifies the name list of KQIs and KPIs - available for performance monitoring"; - type string; - } - } - list userMgmtOpen { - description "An attribute specifies whether or not the network slice - supports the capability for the NSC to manage their users or groups - of users’ network services and corresponding requirements."; - config false; - key idx; - max-elements 1; - leaf idx { - description "Synthetic index for the element."; - type uint32; - } - list servAttrCom { - description "This list represents the common properties of service - requirement related attributes."; - reference "GSMA NG.116 corresponding to Attribute categories, - tagging and exposure"; - key idx; - max-elements 1; - leaf idx { - description "Synthetic index for the element."; - type uint32; - } - uses ServAttrComGrp; - } - leaf support { - type Support-enum; - } - } - list v2XCommModels { - description "An attribute specifies whether or not the V2X - communication mode is supported by the network slice."; - config false; - key idx; - max-elements 1; - leaf idx { - description "Synthetic index for the element."; - type uint32; - } - list servAttrCom { - description "This list represents the common properties of service - requirement related attributes."; - reference "GSMA NG.116 corresponding to Attribute categories, - tagging and exposure"; - key idx; - max-elements 1; - leaf idx { - description "Synthetic index for the element."; - type uint32; - } - uses ServAttrComGrp; - } - leaf v2XMode { - type V2XMode-enum; - } - } - list termDensity { - description "An attribute specifies the overall user density over - the coverage area of the network slice"; - config false; - key idx; - max-elements 1; - leaf idx { - description "Synthetic index for the element."; - type uint32; - } - list servAttrCom { - description "This list represents the common properties of service - requirement related attributes."; - reference "GSMA NG.116 corresponding to Attribute categories, - tagging and exposure"; - key idx; - max-elements 1; - leaf idx { - description "Synthetic index for the element."; - type uint32; - } - uses ServAttrComGrp; - } - leaf density { - type uint32; - units users/km2; - } - } - leaf activityFactor { - //Stage2 issue: This is modeled as writable/config true in 28.542, - // but that does not appear to match the description - description "An attribute specifies the percentage value of the - amount of simultaneous active UEs to the total number of UEs where - active means the UEs are exchanging data with the network"; - reference "TS 22.261 Table 7.1-1"; - type decimal64 { - fraction-digits 1; - } - } - leaf uESpeed { - //Stage2 issue: This is modeled as writable/config true in 28.542, - // but that does not appear to match the description - description "An attribute specifies the maximum speed (in km/hour) - supported by the network slice at which a defined QoS can be - achieved"; - type uint32; - units km/h; - } - leaf jitter { - //Stage2 issue: This is modeled as writable/config true in 28.542, - // but that does not appear to match the description - description "An attribute specifies the deviation from the desired - value to the actual value when assessing time parameters"; - reference "TS 22.104 clause C.4.1"; - type uint32; - units microseconds; - } - leaf survivalTime { - description "An attribute specifies the time that an application - consuming a communication service may continue without an - anticipated message."; - reference "TS 22.104 clause 5"; - type string; - } - leaf reliability { - description "An attribute specifies in the context of network layer - packet transmissions, percentage value of the amount of sent - network layer packets successfully delivered to a given system - entity within the time constraint required by the targeted service, - divided by the total number of sent network layer packets."; - reference "TS 22.261, TS 22.104"; - type string; - } - leaf maxDLDataVolume { - //Stage2 issue: Not defined in 28.541. XML and YAML says "string" - type string; - } - leaf maxULDataVolume { - //Stage2 issue: Not defined in 28.541. XML and YAML says "string" - type string; - } - list nBIoT { - description "An attribute specifies whether NB-IoT is supported in - the RAN in the network slice"; - config false; - key idx; - max-elements 1; - leaf idx { - description "Synthetic index for the element."; - type uint32; - } - list servAttrCom { - description "This list represents the common properties of service - requirement related attributes."; - reference "GSMA NG.116 corresponding to Attribute categories, - tagging and exposure"; - key idx; - max-elements 1; - leaf idx { - description "Synthetic index for the element."; - type uint32; - } - uses ServAttrComGrp; - } - leaf support { - description "An attribute specifies whether NB-IoT is supported - in the RAN in the network slice"; - type Support-enum; - } - } - } -} \ No newline at end of file diff --git a/yang-models/_3gpp-ns-nrm-sliceprofile.yang b/yang-models/_3gpp-ns-nrm-sliceprofile.yang deleted file mode 100755 index df200ad18..000000000 --- a/yang-models/_3gpp-ns-nrm-sliceprofile.yang +++ /dev/null @@ -1,124 +0,0 @@ -submodule _3gpp-ns-nrm-sliceprofile { - yang-version 1.1; - belongs-to _3gpp-ns-nrm-networkslicesubnet { prefix nss3gpp; } - - import _3gpp-common-yang-types { prefix types3gpp; } - import _3gpp-5g-common-yang-types { prefix types5g3gpp; } - import _3gpp-ns-nrm-perfreq { prefix perf3gpp; } - - organization "3GPP SA5"; - contact - "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; - description "Represents the properties of network slice subnet related - requirement that should be supported by the network slice subnet - instance in a 5G network."; - reference "3GPP TS 28.541 - Management and orchestration; - 5G Network Resource Model (NRM); - Information model definitions for network slice NRM (chapter 6) - "; - - revision 2020-02-19 { - description "Introduction of YANG definitions for network slice NRM"; - reference "CR-0458"; - } - - revision 2019-05-27 { - description "initial revision."; - reference "Based on - 3GPP TS 28.541 V15.X.XX"; - } - - grouping SliceProfileGrp { - leaf sliceProfileId { - description "A unique identifier of the property of network slice - subnet related requirement should be supported by the network - slice subnet instance."; - type types3gpp:DistinguishedName; - } - - list sNSSAIList { - description "List of S-NSSAIs the managed object is capable of - supporting. (Single Network Slice Selection Assistance Information) - An S-NSSAI has an SST (Slice/Service type) and an optional SD - (Slice Differentiator) field."; - key idx; - unique "sst sd"; - leaf idx { - description "Synthetic index for the element."; - type uint32; - } - uses types5g3gpp:SNssai; - } - - list pLMNIdList { - description "List of at most six entries of PLMN Identifiers, but at - least one (the primary PLMN Id). The PLMN Identifier is composed - of a Mobile Country Code (MCC) and a Mobile Network Code (MNC)."; - min-elements 1; - max-elements 6; - key "mcc mnc"; - ordered-by user; - uses types3gpp:PLMNId; - } - - //Stage2 issue: The perfReq object does not have any proper definition - // in 28.541 chapter 6. - //Stage2 issue: The text that exists on the perfReq mentions an sST - // element. There is no sST element in SliceProfile which - // references perfReq, nor in perfReq itself. There are - // potentially several in the sNSSAIList. Should we take the - // union of those to control whivh perfReq elements are - // relevant? For now, making all perfReq elements available - // in all slice profiles. - list perfReq { - description "The performance requirements for the NSI in terms of the - scenarios defined in the 3GPP TS 22.261, such as experienced data - rate, area traffic capacity (density) information of UE density."; - key idx; //this list uses a grouping/choice and has no obvious key - leaf idx { type uint32; } - uses perf3gpp:PerfReqGrp; - } - - leaf maxNumberofUEs { - description "Specifies the maximum number of UEs may simultaneously - access the network slice instance."; - //optional support - mandatory true; - type uint64; - } - - leaf-list coverageAreaTAList { - description "A list of TrackingAreas where the NSI can be selected."; - //optional support - min-elements 1; - type types3gpp:Tac; - } - - leaf latency { - description "The packet transmission latency (milliseconds) through - the RAN, CN, and TN part of 5G network, used to evaluate - utilization performance of the end-to-end network slice instance."; - reference "3GPP TS 28.554 clause 6.3.1"; - //optional support - mandatory true; - type uint16; - units milliseconds; - } - - leaf uEMobilityLevel { - description "The mobility level of UE accessing the network slice - instance."; - //optional support - type types3gpp:UeMobilityLevel; - } - - leaf resourceSharingLevel { - description "Specifies whether the resources to be allocated to the - network slice subnet instance may be shared with another network - slice subnet instance(s)."; - //optional support - type types3gpp:ResourceSharingLevel; - } - } -} \ No newline at end of file diff --git a/yang-models/external-yams/ietf-inet-types.yang b/yang-models/external-yams/ietf-inet-types.yang deleted file mode 100755 index a69ac0579..000000000 --- a/yang-models/external-yams/ietf-inet-types.yang +++ /dev/null @@ -1,472 +0,0 @@ -module ietf-inet-types { - - yang-version 1; - - namespace - "urn:ietf:params:xml:ns:yang:ietf-inet-types"; - - prefix inet; - - organization - "IETF NETMOD (NETCONF Data Modeling Language) Working Group"; - - contact - "WG Web: - WG List: - - WG Chair: David Kessens - - - WG Chair: Juergen Schoenwaelder - - - Editor: Juergen Schoenwaelder - "; - - description - "This module contains a collection of generally useful derived - YANG data types for Internet addresses and related things. - - Copyright (c) 2013 IETF Trust and the persons identified as - authors of the code. All rights reserved. - - Redistribution and use in source and binary forms, with or - without modification, is permitted pursuant to, and subject - to the license terms contained in, the Simplified BSD License - set forth in Section 4.c of the IETF Trust's Legal Provisions - Relating to IETF Documents - (http://trustee.ietf.org/license-info). - - This version of this YANG module is part of RFC 6991; see - the RFC itself for full legal notices."; - - revision "2013-07-15" { - description - "This revision adds the following new data types: - - ip-address-no-zone - - ipv4-address-no-zone - - ipv6-address-no-zone"; - reference - "RFC 6991: Common YANG Data Types"; - - } - - revision "2010-09-24" { - description "Initial revision."; - reference - "RFC 6021: Common YANG Data Types"; - - } - - - typedef ip-version { - type enumeration { - enum "unknown" { - value 0; - description - "An unknown or unspecified version of the Internet - protocol."; - } - enum "ipv4" { - value 1; - description - "The IPv4 protocol as defined in RFC 791."; - } - enum "ipv6" { - value 2; - description - "The IPv6 protocol as defined in RFC 2460."; - } - } - description - "This value represents the version of the IP protocol. - - In the value set and its semantics, this type is equivalent - to the InetVersion textual convention of the SMIv2."; - reference - "RFC 791: Internet Protocol - RFC 2460: Internet Protocol, Version 6 (IPv6) Specification - RFC 4001: Textual Conventions for Internet Network Addresses"; - - } - - typedef dscp { - type uint8 { - range "0..63"; - } - description - "The dscp type represents a Differentiated Services Code Point - that may be used for marking packets in a traffic stream. - In the value set and its semantics, this type is equivalent - to the Dscp textual convention of the SMIv2."; - reference - "RFC 3289: Management Information Base for the Differentiated - Services Architecture - RFC 2474: Definition of the Differentiated Services Field - (DS Field) in the IPv4 and IPv6 Headers - RFC 2780: IANA Allocation Guidelines For Values In - the Internet Protocol and Related Headers"; - - } - - typedef ipv6-flow-label { - type uint32 { - range "0..1048575"; - } - description - "The ipv6-flow-label type represents the flow identifier or Flow - Label in an IPv6 packet header that may be used to - discriminate traffic flows. - - In the value set and its semantics, this type is equivalent - to the IPv6FlowLabel textual convention of the SMIv2."; - reference - "RFC 3595: Textual Conventions for IPv6 Flow Label - RFC 2460: Internet Protocol, Version 6 (IPv6) Specification"; - - } - - typedef port-number { - type uint16 { - range "0..65535"; - } - description - "The port-number type represents a 16-bit port number of an - Internet transport-layer protocol such as UDP, TCP, DCCP, or - SCTP. Port numbers are assigned by IANA. A current list of - all assignments is available from . - - Note that the port number value zero is reserved by IANA. In - situations where the value zero does not make sense, it can - be excluded by subtyping the port-number type. - In the value set and its semantics, this type is equivalent - to the InetPortNumber textual convention of the SMIv2."; - reference - "RFC 768: User Datagram Protocol - RFC 793: Transmission Control Protocol - RFC 4960: Stream Control Transmission Protocol - RFC 4340: Datagram Congestion Control Protocol (DCCP) - RFC 4001: Textual Conventions for Internet Network Addresses"; - - } - - typedef as-number { - type uint32; - description - "The as-number type represents autonomous system numbers - which identify an Autonomous System (AS). An AS is a set - of routers under a single technical administration, using - an interior gateway protocol and common metrics to route - packets within the AS, and using an exterior gateway - protocol to route packets to other ASes. IANA maintains - the AS number space and has delegated large parts to the - regional registries. - - Autonomous system numbers were originally limited to 16 - bits. BGP extensions have enlarged the autonomous system - number space to 32 bits. This type therefore uses an uint32 - base type without a range restriction in order to support - a larger autonomous system number space. - - In the value set and its semantics, this type is equivalent - to the InetAutonomousSystemNumber textual convention of - the SMIv2."; - reference - "RFC 1930: Guidelines for creation, selection, and registration - of an Autonomous System (AS) - RFC 4271: A Border Gateway Protocol 4 (BGP-4) - RFC 4001: Textual Conventions for Internet Network Addresses - RFC 6793: BGP Support for Four-Octet Autonomous System (AS) - Number Space"; - - } - - typedef ip-address { - type union { - type ipv4-address; - type ipv6-address; - } - description - "The ip-address type represents an IP address and is IP - version neutral. The format of the textual representation - implies the IP version. This type supports scoped addresses - by allowing zone identifiers in the address format."; - reference - "RFC 4007: IPv6 Scoped Address Architecture"; - - } - - typedef ipv4-address { - type string { - pattern - '(([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])\.){3}' - + '([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])' - + '(%[\p{N}\p{L}]+)?'; - } - description - "The ipv4-address type represents an IPv4 address in - dotted-quad notation. The IPv4 address may include a zone - index, separated by a % sign. - - The zone index is used to disambiguate identical address - values. For link-local addresses, the zone index will - typically be the interface index number or the name of an - interface. If the zone index is not present, the default - zone of the device will be used. - - The canonical format for the zone index is the numerical - format"; - } - - typedef ipv6-address { - type string { - pattern - '((:|[0-9a-fA-F]{0,4}):)([0-9a-fA-F]{0,4}:){0,5}' - + '((([0-9a-fA-F]{0,4}:)?(:|[0-9a-fA-F]{0,4}))|' - + '(((25[0-5]|2[0-4][0-9]|[01]?[0-9]?[0-9])\.){3}' - + '(25[0-5]|2[0-4][0-9]|[01]?[0-9]?[0-9])))' - + '(%[\p{N}\p{L}]+)?'; - pattern - '(([^:]+:){6}(([^:]+:[^:]+)|(.*\..*)))|' - + '((([^:]+:)*[^:]+)?::(([^:]+:)*[^:]+)?)' - + '(%.+)?'; - } - description - "The ipv6-address type represents an IPv6 address in full, - mixed, shortened, and shortened-mixed notation. The IPv6 - address may include a zone index, separated by a % sign. - - The zone index is used to disambiguate identical address - values. For link-local addresses, the zone index will - typically be the interface index number or the name of an - interface. If the zone index is not present, the default - zone of the device will be used. - - - - The canonical format of IPv6 addresses uses the textual - representation defined in Section 4 of RFC 5952. The - canonical format for the zone index is the numerical - format as described in Section 11.2 of RFC 4007."; - reference - "RFC 4291: IP Version 6 Addressing Architecture - RFC 4007: IPv6 Scoped Address Architecture - RFC 5952: A Recommendation for IPv6 Address Text - Representation"; - - } - - typedef ip-address-no-zone { - type union { - type ipv4-address-no-zone; - type ipv6-address-no-zone; - } - description - "The ip-address-no-zone type represents an IP address and is - IP version neutral. The format of the textual representation - implies the IP version. This type does not support scoped - addresses since it does not allow zone identifiers in the - address format."; - reference - "RFC 4007: IPv6 Scoped Address Architecture"; - - } - - typedef ipv4-address-no-zone { - type ipv4-address { - pattern '[0-9\.]*'; - } - description - "An IPv4 address without a zone index. This type, derived from - ipv4-address, may be used in situations where the zone is - known from the context and hence no zone index is needed."; - } - - typedef ipv6-address-no-zone { - type ipv6-address { - pattern '[0-9a-fA-F:\.]*'; - } - description - "An IPv6 address without a zone index. This type, derived from - ipv6-address, may be used in situations where the zone is - known from the context and hence no zone index is needed."; - reference - "RFC 4291: IP Version 6 Addressing Architecture - RFC 4007: IPv6 Scoped Address Architecture - RFC 5952: A Recommendation for IPv6 Address Text - Representation"; - - } - - typedef ip-prefix { - type union { - type ipv4-prefix; - type ipv6-prefix; - } - description - "The ip-prefix type represents an IP prefix and is IP - version neutral. The format of the textual representations - implies the IP version."; - } - - typedef ipv4-prefix { - type string { - pattern - '(([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])\.){3}' - + '([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])' - + '/(([0-9])|([1-2][0-9])|(3[0-2]))'; - } - description - "The ipv4-prefix type represents an IPv4 address prefix. - The prefix length is given by the number following the - slash character and must be less than or equal to 32. - - A prefix length value of n corresponds to an IP address - mask that has n contiguous 1-bits from the most - significant bit (MSB) and all other bits set to 0. - - The canonical format of an IPv4 prefix has all bits of - the IPv4 address set to zero that are not part of the - IPv4 prefix."; - } - - typedef ipv6-prefix { - type string { - pattern - '((:|[0-9a-fA-F]{0,4}):)([0-9a-fA-F]{0,4}:){0,5}' - + '((([0-9a-fA-F]{0,4}:)?(:|[0-9a-fA-F]{0,4}))|' - + '(((25[0-5]|2[0-4][0-9]|[01]?[0-9]?[0-9])\.){3}' - + '(25[0-5]|2[0-4][0-9]|[01]?[0-9]?[0-9])))' - + '(/(([0-9])|([0-9]{2})|(1[0-1][0-9])|(12[0-8])))'; - pattern - '(([^:]+:){6}(([^:]+:[^:]+)|(.*\..*)))|' - + '((([^:]+:)*[^:]+)?::(([^:]+:)*[^:]+)?)' - + '(/.+)'; - } - description - "The ipv6-prefix type represents an IPv6 address prefix. - The prefix length is given by the number following the - slash character and must be less than or equal to 128. - - A prefix length value of n corresponds to an IP address - mask that has n contiguous 1-bits from the most - significant bit (MSB) and all other bits set to 0. - - The IPv6 address should have all bits that do not belong - to the prefix set to zero. - - The canonical format of an IPv6 prefix has all bits of - the IPv6 address set to zero that are not part of the - IPv6 prefix. Furthermore, the IPv6 address is represented - as defined in Section 4 of RFC 5952."; - reference - "RFC 5952: A Recommendation for IPv6 Address Text - Representation"; - - } - - typedef domain-name { - type string { - length "1..253"; - pattern - '((([a-zA-Z0-9_]([a-zA-Z0-9\-_]){0,61})?[a-zA-Z0-9]\.)*' - + '([a-zA-Z0-9_]([a-zA-Z0-9\-_]){0,61})?[a-zA-Z0-9]\.?)' - + '|\.'; - } - description - "The domain-name type represents a DNS domain name. The - name SHOULD be fully qualified whenever possible. - - Internet domain names are only loosely specified. Section - 3.5 of RFC 1034 recommends a syntax (modified in Section - 2.1 of RFC 1123). The pattern above is intended to allow - for current practice in domain name use, and some possible - future expansion. It is designed to hold various types of - domain names, including names used for A or AAAA records - (host names) and other records, such as SRV records. Note - that Internet host names have a stricter syntax (described - in RFC 952) than the DNS recommendations in RFCs 1034 and - 1123, and that systems that want to store host names in - schema nodes using the domain-name type are recommended to - adhere to this stricter standard to ensure interoperability. - - The encoding of DNS names in the DNS protocol is limited - to 255 characters. Since the encoding consists of labels - prefixed by a length bytes and there is a trailing NULL - byte, only 253 characters can appear in the textual dotted - notation. - - The description clause of schema nodes using the domain-name - type MUST describe when and how these names are resolved to - IP addresses. Note that the resolution of a domain-name value - may require to query multiple DNS records (e.g., A for IPv4 - and AAAA for IPv6). The order of the resolution process and - which DNS record takes precedence can either be defined - explicitly or may depend on the configuration of the - resolver. - - Domain-name values use the US-ASCII encoding. Their canonical - format uses lowercase US-ASCII characters. Internationalized - domain names MUST be A-labels as per RFC 5890."; - reference - "RFC 952: DoD Internet Host Table Specification - RFC 1034: Domain Names - Concepts and Facilities - RFC 1123: Requirements for Internet Hosts -- Application - and Support - RFC 2782: A DNS RR for specifying the location of services - (DNS SRV) - RFC 5890: Internationalized Domain Names in Applications - (IDNA): Definitions and Document Framework"; - - } - - typedef host { - type union { - type ip-address; - type domain-name; - } - description - "The host type represents either an IP address or a DNS - domain name."; - } - - typedef uri { - type string; - description - "The uri type represents a Uniform Resource Identifier - (URI) as defined by STD 66. - - Objects using the uri type MUST be in US-ASCII encoding, - and MUST be normalized as described by RFC 3986 Sections - 6.2.1, 6.2.2.1, and 6.2.2.2. All unnecessary - percent-encoding is removed, and all case-insensitive - characters are set to lowercase except for hexadecimal - digits, which are normalized to uppercase as described in - Section 6.2.2.1. - - The purpose of this normalization is to help provide - unique URIs. Note that this normalization is not - sufficient to provide uniqueness. Two URIs that are - textually distinct after this normalization may still be - equivalent. - - Objects using the uri type may restrict the schemes that - they permit. For example, 'data:' and 'urn:' schemes - might not be appropriate. - - A zero-length URI is not a valid URI. This can be used to - express 'URI absent' where required. - - In the value set and its semantics, this type is equivalent - to the Uri SMIv2 textual convention defined in RFC 5017."; - reference - "RFC 3986: Uniform Resource Identifier (URI): Generic Syntax - RFC 3305: Report from the Joint W3C/IETF URI Planning Interest - Group: Uniform Resource Identifiers (URIs), URLs, - and Uniform Resource Names (URNs): Clarifications - and Recommendations - RFC 5017: MIB Textual Conventions for Uniform Resource - Identifiers (URIs)"; - - } - } // module ietf-inet-types diff --git a/yang-models/external-yams/ietf-yang-schema-mount@2019-01-14.yang b/yang-models/external-yams/ietf-yang-schema-mount@2019-01-14.yang deleted file mode 100755 index c49458a11..000000000 --- a/yang-models/external-yams/ietf-yang-schema-mount@2019-01-14.yang +++ /dev/null @@ -1,224 +0,0 @@ -module ietf-yang-schema-mount { - yang-version 1.1; - namespace "urn:ietf:params:xml:ns:yang:ietf-yang-schema-mount"; - prefix yangmnt; - - import ietf-inet-types { - prefix inet; - reference - "RFC 6991: Common YANG Data Types"; - } - - import ietf-yang-types { - prefix yang; - reference - "RFC 6991: Common YANG Data Types"; - } - - organization - "IETF NETMOD (NETCONF Data Modeling Language) Working Group"; - - contact - "WG Web: - WG List: - - Editor: Martin Bjorklund - - - Editor: Ladislav Lhotka - "; - - description - "This module defines a YANG extension statement that can be used - to incorporate data models defined in other YANG modules in a - module. It also defines operational state data that specify the - overall structure of the data model. - - The key words 'MUST', 'MUST NOT', 'REQUIRED', 'SHALL', 'SHALL - NOT', 'SHOULD', 'SHOULD NOT', 'RECOMMENDED', 'NOT RECOMMENDED', - 'MAY', and 'OPTIONAL' in this document are to be interpreted as - described in BCP 14 (RFC 2119) (RFC 8174) when, and only when, - they appear in all capitals, as shown here. - - Copyright (c) 2019 IETF Trust and the persons identified as - authors of the code. All rights reserved. - - Redistribution and use in source and binary forms, with or - without modification, is permitted pursuant to, and subject to - the license terms contained in, the Simplified BSD License set - forth in Section 4.c of the IETF Trust's Legal Provisions - Relating to IETF Documents - (https://trustee.ietf.org/license-info). - - This version of this YANG module is part of RFC 8528; - see the RFC itself for full legal notices."; - - revision 2019-01-14 { - description - "Initial revision."; - reference - "RFC 8528: YANG Schema Mount"; - } - - /* - * Extensions - */ - - extension mount-point { - argument label; - description - "The argument 'label' is a YANG identifier, i.e., it is of the - type 'yang:yang-identifier'. - - The 'mount-point' statement MUST NOT be used in a YANG - version 1 module, neither explicitly nor via a 'uses' - statement. - The 'mount-point' statement MAY be present as a substatement - of 'container' and 'list' and MUST NOT be present elsewhere. - There MUST NOT be more than one 'mount-point' statement in a - given 'container' or 'list' statement. - - If a mount point is defined within a grouping, its label is - bound to the module where the grouping is used. - - A mount point defines a place in the node hierarchy where - other data models may be attached. A server that implements a - module with a mount point populates the - '/schema-mounts/mount-point' list with detailed information on - which data models are mounted at each mount point. - - Note that the 'mount-point' statement does not define a new - data node."; - } - - /* - * State data nodes - */ - - container schema-mounts { - config false; - description - "Contains information about the structure of the overall - mounted data model implemented in the server."; - list namespace { - key "prefix"; - description - "This list provides a mapping of namespace prefixes that are - used in XPath expressions of 'parent-reference' leafs to the - corresponding namespace URI references."; - leaf prefix { - type yang:yang-identifier; - description - "Namespace prefix."; - } - leaf uri { - type inet:uri; - description - "Namespace URI reference."; - } - } - list mount-point { - key "module label"; - - description - "Each entry of this list specifies a schema for a particular - mount point. - - Each mount point MUST be defined using the 'mount-point' - extension in one of the modules listed in the server's - YANG library instance with conformance type 'implement'."; - leaf module { - type yang:yang-identifier; - description - "Name of a module containing the mount point."; - } - leaf label { - type yang:yang-identifier; - description - "Label of the mount point defined using the 'mount-point' - extension."; - } - leaf config { - type boolean; - default "true"; - description - "If this leaf is set to 'false', then all data nodes in the - mounted schema are read-only ('config false'), regardless - of their 'config' property."; - } - choice schema-ref { - mandatory true; - description - "Alternatives for specifying the schema."; - container inline { - presence - "A complete self-contained schema is mounted at the - mount point."; - description - "This node indicates that the server has mounted at least - the module 'ietf-yang-library' at the mount point, and - its instantiation provides the information about the - mounted schema. - - Different instances of the mount point may have - different schemas mounted."; - } - container shared-schema { - presence - "The mounted schema together with the 'parent-reference' - make up the schema for this mount point."; - - description - "This node indicates that the server has mounted at least - the module 'ietf-yang-library' at the mount point, and - its instantiation provides the information about the - mounted schema. When XPath expressions in the mounted - schema are evaluated, the 'parent-reference' leaf-list - is taken into account. - - Different instances of the mount point MUST have the - same schema mounted."; - leaf-list parent-reference { - type yang:xpath1.0; - description - "Entries of this leaf-list are XPath 1.0 expressions - that are evaluated in the following context: - - - The context node is the node in the parent data tree - where the mount-point is defined. - - - The accessible tree is the parent data tree - *without* any nodes defined in modules that are - mounted inside the parent schema. - - - The context position and context size are both equal - to 1. - - - The set of variable bindings is empty. - - - The function library is the core function library - defined in the W3C XPath 1.0 document - (http://www.w3.org/TR/1999/REC-xpath-19991116) and - the functions defined in Section 10 of RFC 7950. - - - The set of namespace declarations is defined by the - 'namespace' list under 'schema-mounts'. - - Each XPath expression MUST evaluate to a node-set - (possibly empty). For the purposes of evaluating - XPath expressions whose context nodes are defined in - the mounted schema, the union of all these node-sets - together with ancestor nodes are added to the - accessible data tree. - - Note that in the case 'ietf-yang-schema-mount' is - itself mounted, a 'parent-reference' in the mounted - module may refer to nodes that were brought into the - accessible tree through a 'parent-reference' in the - parent schema."; - } - } - } - } - } -} diff --git a/yang-models/external-yams/ietf-yang-types@2013-07-15.yang b/yang-models/external-yams/ietf-yang-types@2013-07-15.yang deleted file mode 100755 index 371a091d1..000000000 --- a/yang-models/external-yams/ietf-yang-types@2013-07-15.yang +++ /dev/null @@ -1,480 +0,0 @@ -module ietf-yang-types { - - namespace "urn:ietf:params:xml:ns:yang:ietf-yang-types"; - prefix "yang"; - - organization - "IETF NETMOD (NETCONF Data Modeling Language) Working Group"; - - contact - "WG Web: - WG List: - - WG Chair: David Kessens - - - WG Chair: Juergen Schoenwaelder - - - Editor: Juergen Schoenwaelder - "; - - description - "This module contains a collection of generally useful derived - YANG data types. - - Copyright (c) 2013 IETF Trust and the persons identified as - authors of the code. All rights reserved. - - Redistribution and use in source and binary forms, with or - without modification, is permitted pursuant to, and subject - to the license terms contained in, the Simplified BSD License - set forth in Section 4.c of the IETF Trust's Legal Provisions - Relating to IETF Documents - (http://trustee.ietf.org/license-info). - - This version of this YANG module is part of RFC 6991; see - the RFC itself for full legal notices."; - - revision 2013-07-15 { - description - "This revision adds the following new data types: - - yang-identifier - - hex-string - - uuid - - dotted-quad"; - reference - "RFC 6991: Common YANG Data Types"; - } - - revision 2010-09-24 { - description - "Initial revision."; - reference - "RFC 6021: Common YANG Data Types"; - } - - /*** collection of counter and gauge types ***/ - - typedef counter32 { - type uint32; - description - "The counter32 type represents a non-negative integer - that monotonically increases until it reaches a - maximum value of 2^32-1 (4294967295 decimal), when it - wraps around and starts increasing again from zero. - - Counters have no defined 'initial' value, and thus, a - single value of a counter has (in general) no information - content. Discontinuities in the monotonically increasing - value normally occur at re-initialization of the - management system, and at other times as specified in the - description of a schema node using this type. If such - other times can occur, for example, the creation of - a schema node of type counter32 at times other than - re-initialization, then a corresponding schema node - should be defined, with an appropriate type, to indicate - the last discontinuity. - - The counter32 type should not be used for configuration - schema nodes. A default statement SHOULD NOT be used in - combination with the type counter32. - - In the value set and its semantics, this type is equivalent - to the Counter32 type of the SMIv2."; - reference - "RFC 2578: Structure of Management Information Version 2 - (SMIv2)"; - } - - typedef zero-based-counter32 { - type yang:counter32; - default "0"; - description - "The zero-based-counter32 type represents a counter32 - that has the defined 'initial' value zero. - - A schema node of this type will be set to zero (0) on creation - and will thereafter increase monotonically until it reaches - a maximum value of 2^32-1 (4294967295 decimal), when it - wraps around and starts increasing again from zero. - - Provided that an application discovers a new schema node - of this type within the minimum time to wrap, it can use the - 'initial' value as a delta. It is important for a management - station to be aware of this minimum time and the actual time - between polls, and to discard data if the actual time is too - long or there is no defined minimum time. - - In the value set and its semantics, this type is equivalent - to the ZeroBasedCounter32 textual convention of the SMIv2."; - reference - "RFC 4502: Remote Network Monitoring Management Information - Base Version 2"; - } - - typedef counter64 { - type uint64; - description - "The counter64 type represents a non-negative integer - that monotonically increases until it reaches a - maximum value of 2^64-1 (18446744073709551615 decimal), - when it wraps around and starts increasing again from zero. - - Counters have no defined 'initial' value, and thus, a - single value of a counter has (in general) no information - content. Discontinuities in the monotonically increasing - value normally occur at re-initialization of the - management system, and at other times as specified in the - description of a schema node using this type. If such - other times can occur, for example, the creation of - a schema node of type counter64 at times other than - re-initialization, then a corresponding schema node - should be defined, with an appropriate type, to indicate - the last discontinuity. - - The counter64 type should not be used for configuration - schema nodes. A default statement SHOULD NOT be used in - combination with the type counter64. - - In the value set and its semantics, this type is equivalent - to the Counter64 type of the SMIv2."; - reference - "RFC 2578: Structure of Management Information Version 2 - (SMIv2)"; - } - - typedef zero-based-counter64 { - type yang:counter64; - default "0"; - description - "The zero-based-counter64 type represents a counter64 that - has the defined 'initial' value zero. - - - - - A schema node of this type will be set to zero (0) on creation - and will thereafter increase monotonically until it reaches - a maximum value of 2^64-1 (18446744073709551615 decimal), - when it wraps around and starts increasing again from zero. - - Provided that an application discovers a new schema node - of this type within the minimum time to wrap, it can use the - 'initial' value as a delta. It is important for a management - station to be aware of this minimum time and the actual time - between polls, and to discard data if the actual time is too - long or there is no defined minimum time. - - In the value set and its semantics, this type is equivalent - to the ZeroBasedCounter64 textual convention of the SMIv2."; - reference - "RFC 2856: Textual Conventions for Additional High Capacity - Data Types"; - } - - typedef gauge32 { - type uint32; - description - "The gauge32 type represents a non-negative integer, which - may increase or decrease, but shall never exceed a maximum - value, nor fall below a minimum value. The maximum value - cannot be greater than 2^32-1 (4294967295 decimal), and - the minimum value cannot be smaller than 0. The value of - a gauge32 has its maximum value whenever the information - being modeled is greater than or equal to its maximum - value, and has its minimum value whenever the information - being modeled is smaller than or equal to its minimum value. - If the information being modeled subsequently decreases - below (increases above) the maximum (minimum) value, the - gauge32 also decreases (increases). - - In the value set and its semantics, this type is equivalent - to the Gauge32 type of the SMIv2."; - reference - "RFC 2578: Structure of Management Information Version 2 - (SMIv2)"; - } - - typedef gauge64 { - type uint64; - description - "The gauge64 type represents a non-negative integer, which - may increase or decrease, but shall never exceed a maximum - value, nor fall below a minimum value. The maximum value - cannot be greater than 2^64-1 (18446744073709551615), and - the minimum value cannot be smaller than 0. The value of - a gauge64 has its maximum value whenever the information - being modeled is greater than or equal to its maximum - value, and has its minimum value whenever the information - being modeled is smaller than or equal to its minimum value. - If the information being modeled subsequently decreases - below (increases above) the maximum (minimum) value, the - gauge64 also decreases (increases). - - In the value set and its semantics, this type is equivalent - to the CounterBasedGauge64 SMIv2 textual convention defined - in RFC 2856"; - reference - "RFC 2856: Textual Conventions for Additional High Capacity - Data Types"; - } - - /*** collection of identifier-related types ***/ - - typedef object-identifier { - type string { - pattern '(([0-1](\.[1-3]?[0-9]))|(2\.(0|([1-9]\d*))))' - + '(\.(0|([1-9]\d*)))*'; - } - description - "The object-identifier type represents administratively - assigned names in a registration-hierarchical-name tree. - - Values of this type are denoted as a sequence of numerical - non-negative sub-identifier values. Each sub-identifier - value MUST NOT exceed 2^32-1 (4294967295). Sub-identifiers - are separated by single dots and without any intermediate - whitespace. - - The ASN.1 standard restricts the value space of the first - sub-identifier to 0, 1, or 2. Furthermore, the value space - of the second sub-identifier is restricted to the range - 0 to 39 if the first sub-identifier is 0 or 1. Finally, - the ASN.1 standard requires that an object identifier - has always at least two sub-identifiers. The pattern - captures these restrictions. - - Although the number of sub-identifiers is not limited, - module designers should realize that there may be - implementations that stick with the SMIv2 limit of 128 - sub-identifiers. - - This type is a superset of the SMIv2 OBJECT IDENTIFIER type - since it is not restricted to 128 sub-identifiers. Hence, - this type SHOULD NOT be used to represent the SMIv2 OBJECT - IDENTIFIER type; the object-identifier-128 type SHOULD be - used instead."; - reference - "ISO9834-1: Information technology -- Open Systems - Interconnection -- Procedures for the operation of OSI - Registration Authorities: General procedures and top - arcs of the ASN.1 Object Identifier tree"; - } - - typedef object-identifier-128 { - type object-identifier { - pattern '\d*(\.\d*){1,127}'; - } - description - "This type represents object-identifiers restricted to 128 - sub-identifiers. - - In the value set and its semantics, this type is equivalent - to the OBJECT IDENTIFIER type of the SMIv2."; - reference - "RFC 2578: Structure of Management Information Version 2 - (SMIv2)"; - } - - typedef yang-identifier { - type string { - length "1..max"; - pattern '[a-zA-Z_][a-zA-Z0-9\-_.]*'; - pattern '.|..|[^xX].*|.[^mM].*|..[^lL].*'; - } - description - "A YANG identifier string as defined by the 'identifier' - rule in Section 12 of RFC 6020. An identifier must - start with an alphabetic character or an underscore - followed by an arbitrary sequence of alphabetic or - numeric characters, underscores, hyphens, or dots. - - A YANG identifier MUST NOT start with any possible - combination of the lowercase or uppercase character - sequence 'xml'."; - reference - "RFC 6020: YANG - A Data Modeling Language for the Network - Configuration Protocol (NETCONF)"; - } - - /*** collection of types related to date and time***/ - - typedef date-and-time { - type string { - pattern '\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}(\.\d+)?' - + '(Z|[\+\-]\d{2}:\d{2})'; - } - description - "The date-and-time type is a profile of the ISO 8601 - standard for representation of dates and times using the - Gregorian calendar. The profile is defined by the - date-time production in Section 5.6 of RFC 3339. - - The date-and-time type is compatible with the dateTime XML - schema type with the following notable exceptions: - - (a) The date-and-time type does not allow negative years. - - (b) The date-and-time time-offset -00:00 indicates an unknown - time zone (see RFC 3339) while -00:00 and +00:00 and Z - all represent the same time zone in dateTime. - - (c) The canonical format (see below) of data-and-time values - differs from the canonical format used by the dateTime XML - schema type, which requires all times to be in UTC using - the time-offset 'Z'. - - This type is not equivalent to the DateAndTime textual - convention of the SMIv2 since RFC 3339 uses a different - separator between full-date and full-time and provides - higher resolution of time-secfrac. - - The canonical format for date-and-time values with a known time - zone uses a numeric time zone offset that is calculated using - the device's configured known offset to UTC time. A change of - the device's offset to UTC time will cause date-and-time values - to change accordingly. Such changes might happen periodically - in case a server follows automatically daylight saving time - (DST) time zone offset changes. The canonical format for - date-and-time values with an unknown time zone (usually - referring to the notion of local time) uses the time-offset - -00:00."; - reference - "RFC 3339: Date and Time on the Internet: Timestamps - RFC 2579: Textual Conventions for SMIv2 - XSD-TYPES: XML Schema Part 2: Datatypes Second Edition"; - } - - typedef timeticks { - type uint32; - description - "The timeticks type represents a non-negative integer that - represents the time, modulo 2^32 (4294967296 decimal), in - hundredths of a second between two epochs. When a schema - node is defined that uses this type, the description of - the schema node identifies both of the reference epochs. - - In the value set and its semantics, this type is equivalent - to the TimeTicks type of the SMIv2."; - reference - "RFC 2578: Structure of Management Information Version 2 - (SMIv2)"; - } - - typedef timestamp { - type yang:timeticks; - description - "The timestamp type represents the value of an associated - timeticks schema node at which a specific occurrence - happened. The specific occurrence must be defined in the - description of any schema node defined using this type. When - the specific occurrence occurred prior to the last time the - associated timeticks attribute was zero, then the timestamp - value is zero. Note that this requires all timestamp values - to be reset to zero when the value of the associated timeticks - attribute reaches 497+ days and wraps around to zero. - - The associated timeticks schema node must be specified - in the description of any schema node using this type. - - In the value set and its semantics, this type is equivalent - to the TimeStamp textual convention of the SMIv2."; - reference - "RFC 2579: Textual Conventions for SMIv2"; - } - - /*** collection of generic address types ***/ - - typedef phys-address { - type string { - pattern '([0-9a-fA-F]{2}(:[0-9a-fA-F]{2})*)?'; - } - - - - - description - "Represents media- or physical-level addresses represented - as a sequence octets, each octet represented by two hexadecimal - numbers. Octets are separated by colons. The canonical - representation uses lowercase characters. - - In the value set and its semantics, this type is equivalent - to the PhysAddress textual convention of the SMIv2."; - reference - "RFC 2579: Textual Conventions for SMIv2"; - } - - typedef mac-address { - type string { - pattern '[0-9a-fA-F]{2}(:[0-9a-fA-F]{2}){5}'; - } - description - "The mac-address type represents an IEEE 802 MAC address. - The canonical representation uses lowercase characters. - - In the value set and its semantics, this type is equivalent - to the MacAddress textual convention of the SMIv2."; - reference - "IEEE 802: IEEE Standard for Local and Metropolitan Area - Networks: Overview and Architecture - RFC 2579: Textual Conventions for SMIv2"; - } - - /*** collection of XML-specific types ***/ - - typedef xpath1.0 { - type string; - description - "This type represents an XPATH 1.0 expression. - - When a schema node is defined that uses this type, the - description of the schema node MUST specify the XPath - context in which the XPath expression is evaluated."; - reference - "XPATH: XML Path Language (XPath) Version 1.0"; - } - - /*** collection of string types ***/ - - typedef hex-string { - type string { - pattern '([0-9a-fA-F]{2}(:[0-9a-fA-F]{2})*)?'; - } - description - "A hexadecimal string with octets represented as hex digits - separated by colons. The canonical representation uses - lowercase characters."; - } - - typedef uuid { - type string { - pattern '[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-' - + '[0-9a-fA-F]{4}-[0-9a-fA-F]{12}'; - } - description - "A Universally Unique IDentifier in the string representation - defined in RFC 4122. The canonical representation uses - lowercase characters. - - The following is an example of a UUID in string representation: - f81d4fae-7dec-11d0-a765-00a0c91e6bf6 - "; - reference - "RFC 4122: A Universally Unique IDentifier (UUID) URN - Namespace"; - } - - typedef dotted-quad { - type string { - pattern - '(([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])\.){3}' - + '([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])'; - } - description - "An unsigned 32-bit number expressed in the dotted-quad - notation, i.e., four octets written as decimal numbers - and separated with the '.' (full stop) character."; - } -} -- GitLab From a174c01cf109dcded415d665843806769b3f2bbf Mon Sep 17 00:00:00 2001 From: "U-ERICSSON\\ETHBLL" Date: Fri, 2 Jul 2021 11:58:44 +0200 Subject: [PATCH 037/593] added all YANG files from Integration_Rel17_SA5_137_YANG branch --- yang-models/README.md | 7 + yang-models/_3gpp-5g-common-yang-types.yang | 105 ++ .../_3gpp-5gc-nrm-FiveQiDscpMappingSet.yang | 58 + ...-5gc-nrm-GtpUPathQoSMonitoringControl.yang | 142 +++ .../_3gpp-5gc-nrm-QFQoSMonitoringControl.yang | 134 ++ yang-models/_3gpp-5gc-nrm-affunction.yang | 38 + yang-models/_3gpp-5gc-nrm-amffunction.yang | 89 ++ yang-models/_3gpp-5gc-nrm-amfregion.yang | 83 ++ yang-models/_3gpp-5gc-nrm-amfset.yang | 81 ++ yang-models/_3gpp-5gc-nrm-ausffunction.yang | 89 ++ .../_3gpp-5gc-nrm-configurable5qiset.yang | 146 +++ yang-models/_3gpp-5gc-nrm-dnfunction.yang | 39 + yang-models/_3gpp-5gc-nrm-dynamic5qiset.yang | 52 + yang-models/_3gpp-5gc-nrm-ep.yang | 646 ++++++++++ .../_3gpp-5gc-nrm-externalnrffunction.yang | 42 + .../_3gpp-5gc-nrm-externalnssffunction.yang | 43 + .../_3gpp-5gc-nrm-externalseppfunction.yang | 55 + yang-models/_3gpp-5gc-nrm-lmffunction.yang | 63 + yang-models/_3gpp-5gc-nrm-n3iwffunction.yang | 55 + yang-models/_3gpp-5gc-nrm-neffunction.yang | 68 + yang-models/_3gpp-5gc-nrm-nfprofile.yang | 1095 +++++++++++++++++ yang-models/_3gpp-5gc-nrm-nfservice.yang | 302 +++++ yang-models/_3gpp-5gc-nrm-ngeirfunction.yang | 80 ++ yang-models/_3gpp-5gc-nrm-nrffunction.yang | 88 ++ yang-models/_3gpp-5gc-nrm-nssffunction.yang | 87 ++ yang-models/_3gpp-5gc-nrm-nwdaffunction.yang | 86 ++ yang-models/_3gpp-5gc-nrm-pcffunction.yang | 97 ++ .../_3gpp-5gc-nrm-predefinedpccruleset.yang | 642 ++++++++++ yang-models/_3gpp-5gc-nrm-scpfunction.yang | 50 + yang-models/_3gpp-5gc-nrm-seppfunction.yang | 70 ++ yang-models/_3gpp-5gc-nrm-smffunction.yang | 102 ++ yang-models/_3gpp-5gc-nrm-smsffunction.yang | 62 + yang-models/_3gpp-5gc-nrm-udmfunction.yang | 86 ++ yang-models/_3gpp-5gc-nrm-udrfunction.yang | 78 ++ yang-models/_3gpp-5gc-nrm-udsffunction.yang | 79 ++ yang-models/_3gpp-5gc-nrm-upffunction.yang | 80 ++ yang-models/_3gpp-common-ep-rp.yang | 68 + yang-models/_3gpp-common-fm.yang | 409 ++++++ yang-models/_3gpp-common-managed-element.yang | 248 ++++ .../_3gpp-common-managed-function.yang | 311 +++++ yang-models/_3gpp-common-measurements.yang | 542 ++++++++ yang-models/_3gpp-common-subnetwork.yang | 214 ++++ .../_3gpp-common-subscription-control.yang | 209 ++++ yang-models/_3gpp-common-top.yang | 36 + yang-models/_3gpp-common-trace.yang | 895 ++++++++++++++ yang-models/_3gpp-common-yang-extensions.yang | 95 ++ yang-models/_3gpp-common-yang-types.yang | 512 ++++++++ yang-models/_3gpp-nr-nrm-beam.yang | 96 ++ yang-models/_3gpp-nr-nrm-bwp.yang | 104 ++ .../_3gpp-nr-nrm-cesmanagementfunction.yang | 256 ++++ ...3gpp-nr-nrm-commonbeamformingfunction.yang | 62 + ...3gpp-nr-nrm-cpciconfigurationfunction.yang | 67 + .../_3gpp-nr-nrm-danrmanagementfunction.yang | 44 + .../_3gpp-nr-nrm-desmanagementfunction.yang | 261 ++++ yang-models/_3gpp-nr-nrm-dmrofunction.yang | 70 ++ ...3gpp-nr-nrm-dpciconfigurationfunction.yang | 69 ++ ...3gpp-nr-nrm-drachoptimizationfunction.yang | 120 ++ yang-models/_3gpp-nr-nrm-ep.yang | 257 ++++ .../_3gpp-nr-nrm-eutrancellrelation.yang | 160 +++ yang-models/_3gpp-nr-nrm-eutranetwork.yang | 61 + .../_3gpp-nr-nrm-eutranfreqrelation.yang | 208 ++++ yang-models/_3gpp-nr-nrm-eutranfrequency.yang | 64 + .../_3gpp-nr-nrm-externalamffunction.yang | 69 ++ .../_3gpp-nr-nrm-externalenbfunction.yang | 60 + .../_3gpp-nr-nrm-externaleutrancell.yang | 153 +++ .../_3gpp-nr-nrm-externalgnbcucpfunction.yang | 76 ++ .../_3gpp-nr-nrm-externalgnbcuupfunction.yang | 66 + .../_3gpp-nr-nrm-externalgnbdufunction.yang | 76 ++ .../_3gpp-nr-nrm-externalnrcellcu.yang | 85 ++ ...3gpp-nr-nrm-externalservinggwfunction.yang | 52 + .../_3gpp-nr-nrm-externalupffunction.yang | 51 + yang-models/_3gpp-nr-nrm-gnbcucpfunction.yang | 132 ++ yang-models/_3gpp-nr-nrm-gnbcuupfunction.yang | 172 +++ yang-models/_3gpp-nr-nrm-gnbdufunction.yang | 93 ++ yang-models/_3gpp-nr-nrm-nrcellcu.yang | 93 ++ yang-models/_3gpp-nr-nrm-nrcelldu.yang | 226 ++++ yang-models/_3gpp-nr-nrm-nrcellrelation.yang | 144 +++ yang-models/_3gpp-nr-nrm-nrfreqrelation.yang | 245 ++++ yang-models/_3gpp-nr-nrm-nrfrequency.yang | 71 ++ yang-models/_3gpp-nr-nrm-nrnetwork.yang | 39 + yang-models/_3gpp-nr-nrm-nrsectorcarrier.yang | 119 ++ yang-models/_3gpp-nr-nrm-rrmpolicy.yang | 122 ++ yang-models/_3gpp-ns-nrm-common.yang | 96 ++ yang-models/_3gpp-ns-nrm-networkslice.yang | 74 ++ .../_3gpp-ns-nrm-networkslicesubnet.yang | 207 ++++ yang-models/_3gpp-ns-nrm-serviceprofile.yang | 503 ++++++++ yang-models/_3gpp-ns-nrm-sliceprofile.yang | 908 ++++++++++++++ .../external-yams/ietf-inet-types.yang | 472 +++++++ .../ietf-yang-schema-mount@2019-01-14.yang | 224 ++++ .../ietf-yang-types@2013-07-15.yang | 480 ++++++++ 90 files changed, 15665 insertions(+) create mode 100755 yang-models/README.md create mode 100755 yang-models/_3gpp-5g-common-yang-types.yang create mode 100755 yang-models/_3gpp-5gc-nrm-FiveQiDscpMappingSet.yang create mode 100755 yang-models/_3gpp-5gc-nrm-GtpUPathQoSMonitoringControl.yang create mode 100755 yang-models/_3gpp-5gc-nrm-QFQoSMonitoringControl.yang create mode 100755 yang-models/_3gpp-5gc-nrm-affunction.yang create mode 100755 yang-models/_3gpp-5gc-nrm-amffunction.yang create mode 100755 yang-models/_3gpp-5gc-nrm-amfregion.yang create mode 100755 yang-models/_3gpp-5gc-nrm-amfset.yang create mode 100755 yang-models/_3gpp-5gc-nrm-ausffunction.yang create mode 100755 yang-models/_3gpp-5gc-nrm-configurable5qiset.yang create mode 100755 yang-models/_3gpp-5gc-nrm-dnfunction.yang create mode 100755 yang-models/_3gpp-5gc-nrm-dynamic5qiset.yang create mode 100755 yang-models/_3gpp-5gc-nrm-ep.yang create mode 100755 yang-models/_3gpp-5gc-nrm-externalnrffunction.yang create mode 100755 yang-models/_3gpp-5gc-nrm-externalnssffunction.yang create mode 100755 yang-models/_3gpp-5gc-nrm-externalseppfunction.yang create mode 100755 yang-models/_3gpp-5gc-nrm-lmffunction.yang create mode 100755 yang-models/_3gpp-5gc-nrm-n3iwffunction.yang create mode 100755 yang-models/_3gpp-5gc-nrm-neffunction.yang create mode 100755 yang-models/_3gpp-5gc-nrm-nfprofile.yang create mode 100755 yang-models/_3gpp-5gc-nrm-nfservice.yang create mode 100755 yang-models/_3gpp-5gc-nrm-ngeirfunction.yang create mode 100755 yang-models/_3gpp-5gc-nrm-nrffunction.yang create mode 100755 yang-models/_3gpp-5gc-nrm-nssffunction.yang create mode 100755 yang-models/_3gpp-5gc-nrm-nwdaffunction.yang create mode 100755 yang-models/_3gpp-5gc-nrm-pcffunction.yang create mode 100755 yang-models/_3gpp-5gc-nrm-predefinedpccruleset.yang create mode 100755 yang-models/_3gpp-5gc-nrm-scpfunction.yang create mode 100755 yang-models/_3gpp-5gc-nrm-seppfunction.yang create mode 100755 yang-models/_3gpp-5gc-nrm-smffunction.yang create mode 100755 yang-models/_3gpp-5gc-nrm-smsffunction.yang create mode 100755 yang-models/_3gpp-5gc-nrm-udmfunction.yang create mode 100755 yang-models/_3gpp-5gc-nrm-udrfunction.yang create mode 100755 yang-models/_3gpp-5gc-nrm-udsffunction.yang create mode 100755 yang-models/_3gpp-5gc-nrm-upffunction.yang create mode 100755 yang-models/_3gpp-common-ep-rp.yang create mode 100755 yang-models/_3gpp-common-fm.yang create mode 100755 yang-models/_3gpp-common-managed-element.yang create mode 100755 yang-models/_3gpp-common-managed-function.yang create mode 100755 yang-models/_3gpp-common-measurements.yang create mode 100755 yang-models/_3gpp-common-subnetwork.yang create mode 100755 yang-models/_3gpp-common-subscription-control.yang create mode 100755 yang-models/_3gpp-common-top.yang create mode 100755 yang-models/_3gpp-common-trace.yang create mode 100755 yang-models/_3gpp-common-yang-extensions.yang create mode 100755 yang-models/_3gpp-common-yang-types.yang create mode 100755 yang-models/_3gpp-nr-nrm-beam.yang create mode 100755 yang-models/_3gpp-nr-nrm-bwp.yang create mode 100755 yang-models/_3gpp-nr-nrm-cesmanagementfunction.yang create mode 100755 yang-models/_3gpp-nr-nrm-commonbeamformingfunction.yang create mode 100755 yang-models/_3gpp-nr-nrm-cpciconfigurationfunction.yang create mode 100755 yang-models/_3gpp-nr-nrm-danrmanagementfunction.yang create mode 100755 yang-models/_3gpp-nr-nrm-desmanagementfunction.yang create mode 100755 yang-models/_3gpp-nr-nrm-dmrofunction.yang create mode 100755 yang-models/_3gpp-nr-nrm-dpciconfigurationfunction.yang create mode 100755 yang-models/_3gpp-nr-nrm-drachoptimizationfunction.yang create mode 100755 yang-models/_3gpp-nr-nrm-ep.yang create mode 100755 yang-models/_3gpp-nr-nrm-eutrancellrelation.yang create mode 100755 yang-models/_3gpp-nr-nrm-eutranetwork.yang create mode 100755 yang-models/_3gpp-nr-nrm-eutranfreqrelation.yang create mode 100755 yang-models/_3gpp-nr-nrm-eutranfrequency.yang create mode 100755 yang-models/_3gpp-nr-nrm-externalamffunction.yang create mode 100755 yang-models/_3gpp-nr-nrm-externalenbfunction.yang create mode 100755 yang-models/_3gpp-nr-nrm-externaleutrancell.yang create mode 100755 yang-models/_3gpp-nr-nrm-externalgnbcucpfunction.yang create mode 100755 yang-models/_3gpp-nr-nrm-externalgnbcuupfunction.yang create mode 100755 yang-models/_3gpp-nr-nrm-externalgnbdufunction.yang create mode 100755 yang-models/_3gpp-nr-nrm-externalnrcellcu.yang create mode 100755 yang-models/_3gpp-nr-nrm-externalservinggwfunction.yang create mode 100755 yang-models/_3gpp-nr-nrm-externalupffunction.yang create mode 100755 yang-models/_3gpp-nr-nrm-gnbcucpfunction.yang create mode 100755 yang-models/_3gpp-nr-nrm-gnbcuupfunction.yang create mode 100755 yang-models/_3gpp-nr-nrm-gnbdufunction.yang create mode 100755 yang-models/_3gpp-nr-nrm-nrcellcu.yang create mode 100755 yang-models/_3gpp-nr-nrm-nrcelldu.yang create mode 100755 yang-models/_3gpp-nr-nrm-nrcellrelation.yang create mode 100755 yang-models/_3gpp-nr-nrm-nrfreqrelation.yang create mode 100755 yang-models/_3gpp-nr-nrm-nrfrequency.yang create mode 100755 yang-models/_3gpp-nr-nrm-nrnetwork.yang create mode 100755 yang-models/_3gpp-nr-nrm-nrsectorcarrier.yang create mode 100755 yang-models/_3gpp-nr-nrm-rrmpolicy.yang create mode 100755 yang-models/_3gpp-ns-nrm-common.yang create mode 100755 yang-models/_3gpp-ns-nrm-networkslice.yang create mode 100755 yang-models/_3gpp-ns-nrm-networkslicesubnet.yang create mode 100755 yang-models/_3gpp-ns-nrm-serviceprofile.yang create mode 100755 yang-models/_3gpp-ns-nrm-sliceprofile.yang create mode 100755 yang-models/external-yams/ietf-inet-types.yang create mode 100755 yang-models/external-yams/ietf-yang-schema-mount@2019-01-14.yang create mode 100755 yang-models/external-yams/ietf-yang-types@2013-07-15.yang diff --git a/yang-models/README.md b/yang-models/README.md new file mode 100755 index 000000000..eb452b55a --- /dev/null +++ b/yang-models/README.md @@ -0,0 +1,7 @@ +Folder for all 3GPP SA5 YANG modules and submodules (YAMs) +A subfolder for used external YANG modules is included. + +All commited YANG modules MUST pass the + "pyang --strict -p external-yams _3gpp-*.yang" + validation command without errors. + diff --git a/yang-models/_3gpp-5g-common-yang-types.yang b/yang-models/_3gpp-5g-common-yang-types.yang new file mode 100755 index 000000000..9c07b5cf8 --- /dev/null +++ b/yang-models/_3gpp-5g-common-yang-types.yang @@ -0,0 +1,105 @@ +module _3gpp-5g-common-yang-types { + yang-version 1.1; + namespace "urn:3gpp:sa5:_3gpp-5g-common-yang-types"; + prefix "types5g3gpp"; + + + import _3gpp-common-yang-types { prefix types3gpp; } + + organization "3GPP SA5"; + contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; + description "The model defines common types for 5G networks and + network slicing."; + reference "3GPP TS 28.541"; + + revision 2020-11-05 { reference CR-0412 ; } + revision 2019-10-20 { reference "Initial version."; } + + grouping SNssai { + description + "Single Network Slice Selection Assistance Information(S-NSSAI)"; + reference "3GPP TS 23.003"; + + leaf sd { + description "Slice Differentiator + If not needed, the value can be set to FFFFFF."; + type string{ + length 6; + pattern '[a-fA-F0-9]*'; + } + reference "3GPP TS 23.003"; + } + + leaf sst { + type uint8; + description "Slice/Service Type. + Values 0 to 127 belong to standardized SST range and are defined in + 3GPP TS 23.501. Values 128 to 255 belong to operator-specific range."; + } + } + + grouping PLMNInfo { + description "The PLMNInfo data type define a S-NSSAI member in a specific + PLMNId, and it have two attributes PLMNId and S-NSSAI (PLMNId, S-NSSAI). + The PLMNId represents a data type that is comprised of mcc + (mobile country code) and mnc (mobile network code), (See TS 23.003 + subclause 2.2 and 12.1) and S-NSSAI represents an data type, that is + comprised of an SST (Slice/Service type) and an optional + SD (Slice Differentiator) field"; + uses types3gpp:PLMNId; + uses SNssai; + } + + typedef CommModelType { + reference "3GPP TS 23501"; + type enumeration { + enum DIRECT_COMMUNICATION_WO_NRF { + value 0; + description "Directly communicate to other pre-configured NF service."; + } + + enum DIRECT_COMMUNICATION_WITH_NRF { + value 1; + description "Directly communicate to other NF service discovered + by NRF."; + } + + enum INDIRECT_COMMUNICATION_WO_DEDICATED_DISCOVERY { + value 2; + description "Communicate to pre-configured other NF service through + SCP as a proxy."; + } + + enum INDIRECT_COMMUNICATION_WITH_DEDICATED_DISCOVERY { + value 3; + description "Communication to NF service discovered by NRF through SCP as a proxy."; + } + + } + } + + grouping CommModel { + leaf groupId { + type uint16; + } + leaf commModelType { + type CommModelType; + } + leaf-list targetNFServiceList { + type types3gpp:DistinguishedName; + } + leaf commModelConfiguration { + type string; + } + } + + grouping SupportedFunc { + leaf function { + type string; + } + leaf policy { + type string; + } + } + +} \ No newline at end of file diff --git a/yang-models/_3gpp-5gc-nrm-FiveQiDscpMappingSet.yang b/yang-models/_3gpp-5gc-nrm-FiveQiDscpMappingSet.yang new file mode 100755 index 000000000..fabfe4336 --- /dev/null +++ b/yang-models/_3gpp-5gc-nrm-FiveQiDscpMappingSet.yang @@ -0,0 +1,58 @@ +module _3gpp-5gc-nrm-FiveQiDscpMappingSet { + yang-version 1.1; + + namespace urn:3gpp:sa5:_3gpp-5gc-nrm-FiveQiDscpMappingSet; + prefix FiveQiDscpMapping3gpp; + + import _3gpp-common-top { prefix top3gpp; } + import _3gpp-common-managed-element { prefix me3gpp; } + import _3gpp-5gc-nrm-smffunction { prefix smf3gpp; } + + organization "3gpp SA5"; + contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; + description " This IOC represents the set of mapping between 5QIs and DSCP."; + reference "3GPP TS 28.541"; + + revision 2020-08-03 { reference "CR-0321"; } + revision 2020-05-27 { reference "CR-0287"; } + + grouping FiveQiDscpMapping { + leaf-list fiveQIValues { + type uint32 { + range 0..255 ; + } + min-elements 1; + description " Identifies the 5QI values that are mapped to a same DSCP, as specified in TS 28.541."; + } + + leaf dscp { + type uint32 { + range 0..255 ; + } + mandatory true; + } + } + + grouping FiveQiDscpMappingSetGrp { + description "Represents the FiveQiDscpMappingSet IOC."; + list FiveQiDscpMappingList { + key "dscp"; + uses FiveQiDscpMapping; + } + } + + grouping FiveQiDscpMappingSetSubtree { + list FiveQiDscpMappingSet { + description "Specifies the mapping between 5QIs and DSCPs."; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses FiveQiDscpMappingSetGrp; + } + } + } + + augment "/me3gpp:ManagedElement/smf3gpp:SMFFunction" { + uses FiveQiDscpMappingSetSubtree; + } +} \ No newline at end of file diff --git a/yang-models/_3gpp-5gc-nrm-GtpUPathQoSMonitoringControl.yang b/yang-models/_3gpp-5gc-nrm-GtpUPathQoSMonitoringControl.yang new file mode 100755 index 000000000..d29d6d21a --- /dev/null +++ b/yang-models/_3gpp-5gc-nrm-GtpUPathQoSMonitoringControl.yang @@ -0,0 +1,142 @@ +module _3gpp-5gc-nrm-GtpUPathQoSMonitoringControl { + yang-version 1.1; + + namespace urn:3gpp:sa5:_3gpp-5gc-nrm-GtpUPathQoSMonitoringControl; + prefix gtpUPathQMCtrl3gpp; + + import _3gpp-common-managed-element { prefix me3gpp; } + import _3gpp-5g-common-yang-types { prefix types5g3gpp; } + import _3gpp-5gc-nrm-smffunction { prefix smf3gpp; } + import _3gpp-common-top { prefix top3gpp; } + + organization "3gpp SA5"; + contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; + description "This IOC represents the capabilities and properties for control + of GTP-U path QoS monitoring defined in 3GPP TS 23.501."; + reference "3GPP TS 28.541"; + + revision 2020-11-05 { reference CR-0412 ; } + revision 2020-09-30 { reference "CR-0393"; } + revision 2020-08-03 { reference "CR-0321"; } + revision 2020-04-10 { reference "S5-202103"; } + + grouping GtpUPathDelayThresholdsType { + description "Thresholds for reporting the packet delay for GTP-U path QoS + monitoring "; + reference "3GPP TS 29.244"; + leaf n3AveragePacketDelayThreshold { + mandatory true; + type uint32; + } + leaf n3MinPacketDelayThreshold { + mandatory true; + type uint32; + } + leaf n3MaxPacketDelayThreshold { + mandatory true; + type uint32; + } + leaf n9AveragePacketDelayThreshold { + mandatory true; + type uint32; + } + leaf n9MinPacketDelayThreshold { + mandatory true; + type uint32; + } + leaf n9MaxPacketDelayThreshold { + mandatory true; + type uint32; + } + } + + grouping GtpUPathQoSMonitoringControlGrp { + description "Represents the GtpUPathQoSMonitoringControl IOC."; + + leaf gtpUPathQoSMonitoringState { + description "The state of GTP-U path QoS monitoring."; + mandatory true; + type enumeration { + enum ENABLED; + enum DISABLED; + } + } + + list gtpUPathMonitoredSNSSAIs { + key "sd sst"; + description "The S-NSSAIs for which the the GTP-U path QoS monitoring is + to be performed."; + reference "3GPP TS 23.003"; + uses types5g3gpp:SNssai; + } + + leaf-list monitoredDSCPs { + description "The DSCPs for which the GTP-U path QoS monitoring is to be + performed."; + reference "3GPP TS 29.244"; + type uint32; + } + + leaf isEventTriggeredGtpUPathMonitoringSupported { + description "It indicates whether the event triggered GTP-U path QoS + monitoring reporting based on thresholds is supported."; + mandatory true; + reference "3GPP TS 29.244"; + type boolean; + } + + leaf isPeriodicGtpUMonitoringSupported { + description "It indicates whether the periodic GTP-U path QoS monitoring + reporting is supported."; + mandatory true; + reference "3GPP TS 29.244"; + type boolean; + } + + leaf isImmediateGtpUMonitoringSupported { + description "It indicates whether the immediate GTP-U path QoS monitoring + reporting is supported."; + mandatory true; + reference "3GPP TS 29.244"; + type boolean; + } + + list gtpUPathDelayThresholds { + key n3AveragePacketDelayThreshold; + // if max-elements is increased later, the key may need to be modified + min-elements 1; + max-elements 1; + description "It specifies the thresholds for reporting the packet delay + for the GTO-U path QoS monitoring."; + uses GtpUPathDelayThresholdsType; + } + + leaf gtpUPathMinimumWaitTime { + description "It specifies the minimum waiting time (in seconds) between + two consecutive reports for event triggered GTP-U path QoS monitoring + reporting."; + type uint32; + } + + leaf gtpUPathMeasurementPeriod { + description "It specifies the period (in seconds) for reporting the packet + delay for GTP-U path QoS monitoring."; + type uint32; + } + } + + augment "/me3gpp:ManagedElement/smf3gpp:SMFFunction" { + + list GtpUPathQoSMonitoringControl { + description "Specifies the capabilities and properties for control of + GTP-U path QoS monitoring. For more information about the GTP-U path + QoS monitoring."; + reference "3GPP TS 23.501"; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses GtpUPathQoSMonitoringControlGrp; + } + } + } +} \ No newline at end of file diff --git a/yang-models/_3gpp-5gc-nrm-QFQoSMonitoringControl.yang b/yang-models/_3gpp-5gc-nrm-QFQoSMonitoringControl.yang new file mode 100755 index 000000000..a7290eb81 --- /dev/null +++ b/yang-models/_3gpp-5gc-nrm-QFQoSMonitoringControl.yang @@ -0,0 +1,134 @@ +module _3gpp-5gc-nrm-QFQoSMonitoringControl { + yang-version 1.1; + + namespace urn:3gpp:sa5:_3gpp-5gc-nrm-QFQoSMonitoringControl; + prefix qFQMCtrl3gpp; + + import _3gpp-common-managed-element { prefix me3gpp; } + import _3gpp-5gc-nrm-smffunction { prefix smf3gpp; } + import _3gpp-common-top { prefix top3gpp; } + import _3gpp-5g-common-yang-types { prefix types5g3gpp; } + + organization "3gpp SA5"; contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; + description "This IOC represents the capabilities and properties for control + of QoS monitoring per QoS flow per UE for URLLC service defined + +in 3GPP TS 23.501."; + reference "3GPP TS 28.541"; + + revision 2020-11-05 { reference CR-0412 ; } + revision 2020-08-03 { reference "CR-0321"; } + revision 2020-04-10 { reference "S5-202101"; } + + grouping QFPacketDelayThresholdsTypeGrp { + description "Represents the QFPacketDelayThresholdsType"; + leaf thresholdDl { + type uint32; + units milliseconds; + description "Downlink threshold"; + } + + leaf thresholdUl { + type uint32; + units milliseconds; + description "Uplink threshold"; + } + + leaf thresholdRtt { + type uint32; + units milliseconds; + description "Round trip threshold"; + } + } + + grouping QFQoSMonitoringControlGrp { + description "Represents the QFQoSMonitoringControl IOC."; + reference "3GPP TS 28.541"; + + leaf qFQoSMonitoringState { + description "The state of QoS monitoring per QoS flow per UE."; + mandatory true; + type enumeration { + enum ENABLED; + enum DISABLED; + } + } + + list qFMonitoredSNSSAIs { + description "The S-NSSAIs for which the QoS monitoring per QoS flow + per UE is to be performed."; + reference "3GPP TS 23.003"; + key "sd sst"; + uses types5g3gpp:SNssai;} + + leaf-list qFMonitored5QIs { + description "The 5QIs for which the QoS monitoring per QoS flow + per UE is to be performed."; + reference "3GPP TS 23.501"; + type uint32 { + range "0..255"; + } + } + + leaf isEventTriggeredQFMonitoringSupported { + description "It indicates whether the event based QoS monitoring + reporting per QoS flow per UE is supported."; + mandatory true; + reference "3GPP TS 29.244"; + type boolean; + } + + leaf isPeriodicQFMonitoringSupported { + description "It indicates whether the periodic QoS monitoring reporting + per QoS flow per UE is supported."; + mandatory true; + reference "3GPP TS 29.244"; + type boolean; + } + + leaf isSessionReleasedQFMonitoringSupported { + description "It indicates whether the session release based QoS monitoring + reporting per QoS flow per UE is supported."; + mandatory true; + reference "3GPP TS 29.244"; + type boolean; + } + + list qFPacketDelayThresholds { + key "idx"; + min-elements 1; + max-elements 1; + description "It specifies the thresholds for reporting the packet delay + between PSA and UE for QoS monitoring per QoS flow per UE."; + + leaf idx { type uint32 ; } + uses QFPacketDelayThresholdsTypeGrp; + } + + leaf qFMinimumWaitTime { + description "It specifies the minimum waiting time (in seconds) between + two consecutive reports for event triggered QoS monitoring reporting + per QoS flow per UE."; + type uint32; + } + + leaf qFMeasurementPeriod { + description "It specifies the period (in seconds) for reporting the + packet delay for QoS monitoring per QoS flow per UE."; + type uint32; + } + } + + augment "/me3gpp:ManagedElement/smf3gpp:SMFFunction" { + + list QFQoSMonitoringControl { + description "Represents the QFQoSMonitoringControl IOC."; + reference "3GPP TS 28.541"; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses QFQoSMonitoringControlGrp; + } + } + } +} \ No newline at end of file diff --git a/yang-models/_3gpp-5gc-nrm-affunction.yang b/yang-models/_3gpp-5gc-nrm-affunction.yang new file mode 100755 index 000000000..a668b8a3a --- /dev/null +++ b/yang-models/_3gpp-5gc-nrm-affunction.yang @@ -0,0 +1,38 @@ +module _3gpp-5gc-nrm-affunction { + yang-version 1.1; + + namespace urn:3gpp:sa5:_3gpp-5gc-nrm-affunction; + prefix af3gpp; + + import _3gpp-common-managed-function { prefix mf3gpp; } + import _3gpp-common-managed-element { prefix me3gpp; } + import _3gpp-common-top { prefix top3gpp; } + + organization "3gpp SA5"; + description "This IOC is defined only to describe the IOCs representing + its interaction interface with 5GC (i.e. EP_Rx and EP_N5). + It has no attributes defined."; + reference "3GPP TS 28.541"; + + revision 2019-10-28 { reference S5-193518 ; } + + revision 2019-05-15 { + description "initial revision"; + } + + grouping AFFunctionGrp { + uses mf3gpp:ManagedFunctionGrp; + } + + augment "/me3gpp:ManagedElement" { + list AFFunction { + description "5G Core AF Function"; + reference "3GPP TS 28.541"; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses AFFunctionGrp; + } + } + } +} \ No newline at end of file diff --git a/yang-models/_3gpp-5gc-nrm-amffunction.yang b/yang-models/_3gpp-5gc-nrm-amffunction.yang new file mode 100755 index 000000000..1ab54a9d3 --- /dev/null +++ b/yang-models/_3gpp-5gc-nrm-amffunction.yang @@ -0,0 +1,89 @@ +module _3gpp-5gc-nrm-amffunction { + yang-version 1.1; + namespace urn:3gpp:sa5:_3gpp-5gc-nrm-amffunction; + prefix amf3gpp; + + import _3gpp-common-managed-function { prefix mf3gpp; } + import _3gpp-common-managed-element { prefix me3gpp; } + import _3gpp-common-yang-types { prefix types3gpp; } + import _3gpp-5g-common-yang-types { prefix types5g3gpp; } + import ietf-inet-types { prefix inet; } + import _3gpp-common-top { prefix top3gpp; } + + organization "3gpp SA5"; + contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; + description "AMFFunction derived from basic ManagedFunction."; + + revision 2020-11-05 { reference CR-0412 ; } + revision 2019-10-25 { reference "S5-194457 S5-193518"; } + + revision 2019-05-31 { reference "Ericsson refactoring."; } + revision 2018-08-07 { reference "Initial revision"; } + + grouping AMFFunctionGrp { + description "Represents the AMFFunction IOC"; + uses mf3gpp:ManagedFunctionGrp; + + list pLMNIdList { + min-elements 1; + description "A list of PLMN identifiers (Mobile Country Code and Mobile + Network Code)."; + key "mcc mnc"; + uses types3gpp:PLMNId; + } + + container aMFIdentifier { + presence true; + description "An AMF identifier, comprising an AMF Region ID, an + AMF Set ID and an AMF Pointer."; + uses types3gpp:AmfIdentifier; + } + + leaf sBIFQDN { + description "The FQDN of the registered NF instance in the + service-based interface."; + type inet:domain-name; + } + + list sNSSAIList { + min-elements 1; + description "List of S-NSSAIs the managed object is capable of supporting. + (Single Network Slice Selection Assistance Information) + An S-NSSAI has an SST (Slice/Service type) and an optional SD + (Slice Differentiator) field."; + reference "3GPP TS 23.003"; + key "sd sst"; + uses types5g3gpp:SNssai; + } + + list managedNFProfile { + key idx; + min-elements 1; + max-elements 1; + uses types3gpp:ManagedNFProfile; + } + + list commModelList { + min-elements 1; + key "groupId"; + description "Specifies a list of commModel. It can be used by NF and + NF services to interact with each other in 5G Core network "; + reference "3GPP TS 23.501"; + uses types5g3gpp:CommModel; + } + + } + + augment "/me3gpp:ManagedElement" { + list AMFFunction { + description "5G Core AMF Function"; + reference "3GPP TS 28.541"; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses AMFFunctionGrp; + } + uses mf3gpp:ManagedFunctionContainedClasses; + } + } +} \ No newline at end of file diff --git a/yang-models/_3gpp-5gc-nrm-amfregion.yang b/yang-models/_3gpp-5gc-nrm-amfregion.yang new file mode 100755 index 000000000..3746a58a6 --- /dev/null +++ b/yang-models/_3gpp-5gc-nrm-amfregion.yang @@ -0,0 +1,83 @@ +module _3gpp-5gc-nrm-amfregion { + yang-version 1.1; + namespace urn:3gpp:sa5:_3gpp-5gc-nrm-amfregion; + prefix amfr3gpp; + + import _3gpp-common-yang-types { prefix types3gpp; } + import _3gpp-common-subnetwork { prefix subnet3gpp; } + import _3gpp-common-top { prefix top3gpp; } + import _3gpp-common-managed-function { prefix mf3gpp; } + import _3gpp-5g-common-yang-types { prefix types5g3gpp; } + + organization "3gpp SA5"; + contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; + description "This IOC represents the AMF Region which consists one or + multiple AMF Sets."; + + revision 2020-11-05 { reference CR-0412 ; } + revision 2019-10-28 { reference S5-193518 ; } + revision 2019-06-11 { + reference "Ericsson refactoring."; } + + grouping AMFRegionGrp { + description "Represents the AMFRegion IOC"; + uses mf3gpp:ManagedFunctionGrp; + + list pLMNIdList { + description "List of at most six entries of PLMN Identifiers, but at + least one (the primary PLMN Id). + The PLMN Identifier is composed of a Mobile Country Code (MCC) + and a Mobile Network Code (MNC)."; + + min-elements 1; + max-elements 6; + key "mcc mnc"; + uses types3gpp:PLMNId; + } + + leaf-list nRTACList { + description "List of Tracking Area Codes (legacy TAC or extended TAC) + where the represented management function is serving."; + reference "TS 38.413 clause 9.3.3.10"; + min-elements 1; + config false; + type types3gpp:Tac; + } + + list sNSSAIList { + description "List of S-NSSAIs the managed object is capable of supporting. + (Single Network Slice Selection Assistance Information) + An S-NSSAI has an SST (Slice/Service type) and an optional SD + (Slice Differentiator) field."; + //conditional support only if the network slicing feature is supported. + reference "3GPP TS 23.003"; + key "sd sst"; + uses types5g3gpp:SNssai; + } + + leaf aMFRegionId { + description "Represents the AMF Region ID, which identifies the region."; + mandatory true; + type types3gpp:AmfRegionId; + } + + leaf-list aMFSet { + description "The AMFSet that the AFMRegion is associated with."; + min-elements 1; + type instance-identifier; + } + } + + augment "/subnet3gpp:SubNetwork" { + list AMFRegion { + description "5G Core AMFRegion IOC"; + reference "3GPP TS 28.541"; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses AMFRegionGrp; + } + uses mf3gpp:ManagedFunctionContainedClasses; + } + } +} \ No newline at end of file diff --git a/yang-models/_3gpp-5gc-nrm-amfset.yang b/yang-models/_3gpp-5gc-nrm-amfset.yang new file mode 100755 index 000000000..8b978160e --- /dev/null +++ b/yang-models/_3gpp-5gc-nrm-amfset.yang @@ -0,0 +1,81 @@ +module _3gpp-5gc-nrm-amfset { + yang-version 1.1; + namespace urn:3gpp:sa5:_3gpp-5gc-nrm-amfset; + prefix amfset3gpp; + + import _3gpp-common-yang-types { prefix types3gpp; } + import _3gpp-common-subnetwork { prefix subnet3gpp; } + import _3gpp-common-top { prefix top3gpp; } + import _3gpp-common-managed-function { prefix mf3gpp; } + import _3gpp-5g-common-yang-types { prefix types5g3gpp; } + + organization "3gpp SA5"; + contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; + description "This IOC represents the AMF Set which consists of some AMFs + that serve a given area and Network Slice."; + + revision 2020-11-05 { reference CR-0412 ; } + revision 2019-10-28 { reference S5-193518 ; } + revision 2019-06-11 { reference "Ericsson refactoring."; } + + grouping AMFSetGrp { + description "Represents the AMFSet IOC"; + uses mf3gpp:ManagedFunctionGrp; + + list pLMNIdList { + description "List of at most six entries of PLMN Identifiers, but at + least one (the primary PLMN Id). The PLMN Identifier is composed + of a Mobile Country Code (MCC) and a Mobile Network Code (MNC)."; + + min-elements 1; + max-elements 6; + key "mcc mnc"; + uses types3gpp:PLMNId; + } + + leaf-list nRTACList { + description "List of Tracking Area Codes (legacy TAC or extended TAC) + where the represented management function is serving."; + reference "TS 38.413 clause 9.3.3.10"; + min-elements 1; + config false; + type types3gpp:Tac; + } + + list sNSSAIList { + description "List of S-NSSAIs the managed object is capable of supporting. + (Single Network Slice Selection Assistance Information) + An S-NSSAI has an SST (Slice/Service type) and an optional SD + (Slice Differentiator) field."; + //conditional support only if the network slicing feature is supported. + reference "3GPP TS 23.003"; + key "sd sst"; + uses types5g3gpp:SNssai; + } + + leaf aMFRegion { + description "The AMFRegion that the AFMSet is associated with."; + type instance-identifier; + } + + leaf-list aMFSetMemberList { + description "List of DNs of AMFFunction instances of the AMFSet."; + min-elements 1; + max-elements 1; + type types3gpp:DistinguishedName; + } + } + + augment "/subnet3gpp:SubNetwork" { + list AMFSet { + description "5G Core AMFSet IOC"; + reference "3GPP TS 28.541"; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses AMFSetGrp; + } + uses mf3gpp:ManagedFunctionContainedClasses; + } + } +} \ No newline at end of file diff --git a/yang-models/_3gpp-5gc-nrm-ausffunction.yang b/yang-models/_3gpp-5gc-nrm-ausffunction.yang new file mode 100755 index 000000000..f94b6505e --- /dev/null +++ b/yang-models/_3gpp-5gc-nrm-ausffunction.yang @@ -0,0 +1,89 @@ +module _3gpp-5gc-nrm-ausffunction { + yang-version 1.1; + + namespace urn:3gpp:sa5:_3gpp-5gc-nrm-ausffunction; + prefix ausf3gpp; + + import _3gpp-common-managed-function { prefix mf3gpp; } + import _3gpp-common-managed-element { prefix me3gpp; } + import ietf-inet-types { prefix inet; } + import _3gpp-5g-common-yang-types { prefix types5g3gpp; } + import _3gpp-common-yang-types { prefix types3gpp; } + import _3gpp-common-top { prefix top3gpp; } + + organization "3gpp SA5"; + contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; + description "This IOC represents the AUSF function in 5GC. For more + information about the AUSF, see 3GPP TS 23.501."; + reference "3GPP TS 28.541"; + + + revision 2020-11-05 { reference CR-0412 ; } + revision 2019-10-25 { reference "S5-194457 S5-193518"; } + + revision 2019-05-22 {reference "initial revision"; } + + grouping AUSFFuntionGrp { + description "Represents the AUSFFuntion IOC"; + uses mf3gpp:ManagedFunctionGrp; + + list pLMNIdList { + description "List of at most six entries of PLMN Identifiers, but at + least one (the primary PLMN Id). + The PLMN Identifier is composed of a Mobile Country Code (MCC) and + a Mobile Network Code (MNC)."; + + min-elements 1; + max-elements 6; + key "mcc mnc"; + uses types3gpp:PLMNId; + } + + leaf sBIFQDN { + description "The FQDN of the registered NF instance in the + service-based interface."; + type inet:domain-name; + } + + list sNSSAIList { + description "List of S-NSSAIs the managed object is capable of supporting. + (Single Network Slice Selection Assistance Information) + An S-NSSAI has an SST (Slice/Service type) and an optional SD + (Slice Differentiator) field."; + //optional support + reference "3GPP TS 23.003"; + key "sd sst"; + uses types5g3gpp:SNssai; + } + + list managedNFProfile { + key idx; + min-elements 1; + max-elements 1; + uses types3gpp:ManagedNFProfile; + } + + + list commModelList { + min-elements 1; + key "groupId"; + description "Specifies a list of commModel. It can be used by NF and + NF services to interact with each other in 5G Core network "; + reference "3GPP TS 23.501"; + uses types5g3gpp:CommModel; + } + } + + augment "/me3gpp:ManagedElement" { + list AUSFFunction { + description "5G Core AUSF Function"; + reference "3GPP TS 28.541"; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses AUSFFuntionGrp; + } + uses mf3gpp:ManagedFunctionContainedClasses; + } + } +} \ No newline at end of file diff --git a/yang-models/_3gpp-5gc-nrm-configurable5qiset.yang b/yang-models/_3gpp-5gc-nrm-configurable5qiset.yang new file mode 100755 index 000000000..6d3d7a27a --- /dev/null +++ b/yang-models/_3gpp-5gc-nrm-configurable5qiset.yang @@ -0,0 +1,146 @@ +module _3gpp-5gc-nrm-configurable5qiset { + yang-version 1.1; + + namespace urn:3gpp:sa5:_3gpp-5gc-nrm-configurable5qiset; + prefix Conf5QIs3gpp; + + import _3gpp-common-top { prefix top3gpp; } + import _3gpp-common-managed-element { prefix me3gpp; } + import _3gpp-common-subnetwork { prefix subnet3gpp; } + + organization "3gpp SA5"; + contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; + description "This IOC represents the non-standardized 5QIs, including + their QoS characteristics, that need to be pre-configured + (and configurable) to the 5G NFs."; + reference "3GPP TS 28.541"; + + revision 2020-08-03 { reference "CR-0321"; } + revision 2020-06-03 { reference "CR-0286"; } + + grouping PacketErrorRate { + leaf scalar { + type uint32 { + range 0..9 ; + } + mandatory true; + description "The Packet Error Rate of a 5QI expressed as Scalar x 10-k + where k is the Exponent."; + } + leaf exponent { + type uint32 { + range 0..9 ; + } + mandatory true; + description "The Packet Error Rate of a 5QI expressed as Scalar x 10-k, + where k is the Exponent."; + } + } + + grouping FiveQICharacteristicsGrp { + description "Represents the FiveQICharacteristics IOC."; + reference "3GPP TS 28.541"; + } + + list configurableFiveQIs { + key fiveQIValue; + leaf fiveQIValue { + type uint32 { + range 0..255 ; + } + mandatory true; + description "Identifies the 5QI value."; + } + + leaf resourceType { + type enumeration { + enum GBR; + enum NON_GBR; + } + mandatory true; + description "It indicates the Resource Type of a 5QI, as specified + in TS 23.501 "; + } + + leaf priorityLevel { + type uint32 { + range 0..127 ; + } + } + + leaf packetDelayBudget { + type uint32 { + range 0..1023 ; + } + description "Indicates the Packet Delay Budget (in unit of 0.5ms)of a 5QI, + as specified in TS 23.501 "; + } + + list packetErrorRate { + key "scalar exponent"; + min-elements 0; + max-elements 1; + uses PacketErrorRate; + reference "TS 23.501"; + } + + leaf averagingWindow { + type uint32 { + range 0..4095 ; + } + units ms; + reference "TS 23.501"; + } + + leaf maximumDataBurstVolume { + type uint32{ + range 0..4095 ; + } + units byte; + } +} + + grouping FiveQiCharacteristicsSubtree { + description "Represents the FiveQICharacterics IOC."; + list FiveQICharacteristics { + key id; + uses top3gpp:Top_Grp; + container attributes { + uses FiveQICharacteristicsGrp; + } + } +} + + grouping Configurable5QISetGrp { + description "Represents the Configurable5QISet IOC."; + list configurable5QIs { + key id; + uses top3gpp:Top_Grp; + container attributes { + uses FiveQICharacteristicsGrp; + } + } +} + + + grouping Configurable5QISetSubtree { + list Configurable5QISet { + description "Specifies the non-standardized 5QIs, including their QoS + characteristics, that need to be pre-configured (and configurable) to + the 5G NFs, see 3GPP TS 23.501."; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses Configurable5QISetGrp; + } + } + } + + augment "/subnet3gpp:SubNetwork" { + uses Configurable5QISetSubtree; + } + + augment "/me3gpp:ManagedElement" { + uses Configurable5QISetSubtree; + } +} diff --git a/yang-models/_3gpp-5gc-nrm-dnfunction.yang b/yang-models/_3gpp-5gc-nrm-dnfunction.yang new file mode 100755 index 000000000..675c3b1aa --- /dev/null +++ b/yang-models/_3gpp-5gc-nrm-dnfunction.yang @@ -0,0 +1,39 @@ +module _3gpp-5gc-nrm-dnfunction { + yang-version 1.1; + + namespace urn:3gpp:sa5_3gpp-5gc-nrm-dnfunction; + prefix dn3gpp; + + import _3gpp-common-managed-function { prefix mf3gpp; } + import _3gpp-common-managed-element { prefix me3gpp; } + import _3gpp-common-top { prefix top3gpp; } + + organization "3gpp SA5"; + description "This IOC is defined only to describe the IOCs representing + Data Network (DN) interaction interface with 5GC (i.e. EP_N6). + It has no attributes defined."; + reference "3GPP TS 28.541"; + + revision 2019-10-28 { reference S5-193518 ; } + + revision 2019-05-15 { + description "initial revision"; + } + + grouping DNFunctionGrp { + uses mf3gpp:ManagedFunctionGrp; + } + + augment "/me3gpp:ManagedElement" { + list DNFunction { + description "5G Core DN Function"; + reference "3GPP TS 28.541"; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses DNFunctionGrp; + } + uses mf3gpp:ManagedFunctionContainedClasses; + } + } +} \ No newline at end of file diff --git a/yang-models/_3gpp-5gc-nrm-dynamic5qiset.yang b/yang-models/_3gpp-5gc-nrm-dynamic5qiset.yang new file mode 100755 index 000000000..185e46f83 --- /dev/null +++ b/yang-models/_3gpp-5gc-nrm-dynamic5qiset.yang @@ -0,0 +1,52 @@ +module _3gpp-5gc-nrm-dynamic5qiset { + yang-version 1.1; + + namespace urn:3gpp:sa5:_3gpp-5gc-nrm-dynamic5qiset; + prefix dyn5QIs3gpp; + + import _3gpp-common-top { prefix top3gpp; } + import _3gpp-common-subnetwork { prefix subnet3gpp; } + import _3gpp-common-managed-element { prefix me3gpp; } + import _3gpp-5gc-nrm-configurable5qiset { prefix Conf5QIs3gpp; } + + organization "3gpp SA5"; + contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; + description "This IOC represents the dynamic 5QIs including their QoS + characteristics."; + reference "3GPP TS 28.541"; + + revision 2020-09-30 { reference "CR-0393"; } + revision 2020-08-06 { reference "CR-0333"; } + + grouping Dynamic5QISetGrp { + description "Represents the Dynamic5QISet IOC."; + list dynamic5QIs { + key id; + uses top3gpp:Top_Grp; + container attributes { + uses Conf5QIs3gpp:FiveQICharacteristicsGrp; + } + } + } + + grouping Dynamic5QISetSubtree { + description "Helps augmenting Dynamic5QISet into multiple places."; + list Dynamic5QISet { + description "Specifies the dynamic 5QIs including their QoS + characteristics, see 3GPP TS 23.501."; + key "id"; + uses top3gpp:Top_Grp; + container attributes { + uses Dynamic5QISetGrp; + } + } + } + + augment "/subnet3gpp:SubNetwork" { + uses Dynamic5QISetSubtree; + } + + augment "/me3gpp:ManagedElement" { + uses Dynamic5QISetSubtree; + } +} diff --git a/yang-models/_3gpp-5gc-nrm-ep.yang b/yang-models/_3gpp-5gc-nrm-ep.yang new file mode 100755 index 000000000..fdd210297 --- /dev/null +++ b/yang-models/_3gpp-5gc-nrm-ep.yang @@ -0,0 +1,646 @@ +module _3gpp-5gc-nrm-ep { + yang-version 1.1; + namespace "urn:3gpp:tsg:sa5:nrm:_3gpp-5gc-nrm-ep"; + prefix "cep3gpp"; + + import _3gpp-common-ep-rp { prefix eprp3gpp; } + import _3gpp-common-managed-element { prefix me3gpp; } + import _3gpp-5gc-nrm-affunction { prefix af3gpp; } + import _3gpp-5gc-nrm-amffunction { prefix amf3gpp; } + import _3gpp-5gc-nrm-ausffunction { prefix ausf3gpp; } + import _3gpp-5gc-nrm-dnfunction { prefix dn3gpp; } + import _3gpp-5gc-nrm-lmffunction { prefix lmf3gpp; } + import _3gpp-5gc-nrm-n3iwffunction { prefix n3iwf3gpp; } + import _3gpp-5gc-nrm-ngeirfunction { prefix ngeir3gpp; } + import _3gpp-5gc-nrm-nrffunction { prefix nrf3gpp; } + import _3gpp-5gc-nrm-nssffunction { prefix nssf3gpp; } + import _3gpp-5gc-nrm-pcffunction { prefix pcf3gpp; } + import _3gpp-5gc-nrm-seppfunction { prefix sepp3gpp; } + import _3gpp-5gc-nrm-smffunction { prefix smf3gpp; } + import _3gpp-5gc-nrm-smsffunction { prefix smsf3gpp; } + import _3gpp-5gc-nrm-udmfunction { prefix udm3gpp; } + import _3gpp-5gc-nrm-upffunction { prefix upf3gpp; } + import _3gpp-common-yang-types { prefix types3gpp; } + import _3gpp-common-top { prefix top3gpp; } + import ietf-inet-types { prefix inet; } + + organization "3GPP SA5"; + description "Defines the YANG mapping of the 5GC related endpoint + Information Object Classes (IOCs) that are part of the 5G Core + Network Resource Model."; + reference "3GPP TS 28.541"; + + revision 2019-11-18 { + description "Ericsson refactoring."; + } + + revision 2018-07-31 { + description "Initial revision"; + } + + grouping EP_N2Grp { + uses eprp3gpp:EP_Common; + } + + grouping EP_N3Grp { + uses eprp3gpp:EP_Common; + } + + grouping EP_N4Grp { + uses eprp3gpp:EP_Common; + } + + grouping EP_N5Grp { + uses eprp3gpp:EP_Common; + } + + grouping EP_N6Grp { + uses eprp3gpp:EP_Common; + } + + grouping EP_N7Grp { + uses eprp3gpp:EP_Common; + } + + grouping EP_N8Grp { + uses eprp3gpp:EP_Common; + } + + grouping EP_N9Grp { + uses eprp3gpp:EP_Common; + } + + grouping EP_N10Grp { + uses eprp3gpp:EP_Common; + } + + grouping EP_N11Grp { + uses eprp3gpp:EP_Common; + } + + grouping EP_N12Grp { + uses eprp3gpp:EP_Common; + } + + grouping EP_N13Grp { + uses eprp3gpp:EP_Common; + } + + grouping EP_N14Grp { + uses eprp3gpp:EP_Common; + } + + grouping EP_N15Grp { + uses eprp3gpp:EP_Common; + } + + grouping EP_N16Grp { + uses eprp3gpp:EP_Common; + } + + grouping EP_N17Grp { + uses eprp3gpp:EP_Common; + } + + grouping EP_N20Grp { + uses eprp3gpp:EP_Common; + } + + grouping EP_N21Grp { + uses eprp3gpp:EP_Common; + } + + grouping EP_N22Grp { + uses eprp3gpp:EP_Common; + } + + grouping EP_N26Grp { + uses eprp3gpp:EP_Common; + } + + grouping EP_N27Grp { + uses eprp3gpp:EP_Common; + } + + grouping EP_N31Grp { + uses eprp3gpp:EP_Common; + } + + grouping EP_N32Grp { + uses eprp3gpp:EP_Common; + container remotePlmnId { + description "PLMN Identifiers of the remote sepp. + The PLMN Identifier is composed of a Mobile Country Code (MCC) and a Mobile Network Code (MNC)."; + uses types3gpp:PLMNId; + } + + leaf remoteSeppAddress { + description "The host address of the SEPP."; + type inet:host; + } + + leaf remoteSeppId { + type uint16; + } + + leaf n32cParas { + type string; + } + + leaf n32fPolicy { + type string; + } + + leaf withIPX { + type boolean; + } + } + + grouping EP_S5CGrp { + uses eprp3gpp:EP_Common; + } + + grouping EP_S5UGrp { + uses eprp3gpp:EP_Common; + } + + grouping EP_RxGrp { + uses eprp3gpp:EP_Common; + } + + grouping EP_MAP_SMSCGrp { + uses eprp3gpp:EP_Common; + } + + grouping EP_NLSGrp { + uses eprp3gpp:EP_Common; + } + + grouping EP_NLGGrp { + uses eprp3gpp:EP_Common; + } + + grouping EP_SBI_IPXGrp { + uses eprp3gpp:EP_Common; + leaf-list sBIService { + min-elements 1; + config false; + type string; + } + } + + augment "/me3gpp:ManagedElement/af3gpp:AFFunction" { + list EP_N6 { + description "Represents the EP_N6 IOC."; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses EP_N6Grp; + } + } + + list EP_Rx { + description "Represents the EP_Rx IOC."; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses EP_RxGrp; + } + } + } + + augment "/me3gpp:ManagedElement/amf3gpp:AMFFunction" { + list EP_N2 { + description "Represents the EP_N2 IOC."; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses EP_N2Grp; + } + } + + list EP_N8 { + description "Represents the EP_N8 IOC."; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses EP_N8Grp; + } + } + + list EP_N11 { + description "Represents the EP_N11 IOC."; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses EP_N11Grp; + } + } + + list EP_N12 { + description "Represents the EP_N12 IOC."; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses EP_N12Grp; + } + } + + list EP_N14 { + description "Represents the EP_N14 IOC."; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses EP_N14Grp; + } + } + + list EP_N15 { + description "Represents the EP_N15 IOC."; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses EP_N15Grp; + } + } + + list EP_N17 { + description "Represents the EP_N17 IOC."; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses EP_N17Grp; + } + } + + list EP_N20 { + description "Represents the EP_N20 IOC."; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses EP_N20Grp; + } + } + + list EP_N22 { + description "Represents the EP_N22 IOC."; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses EP_N22Grp; + } + } + + list EP_N26 { + description "Represents the EP_N26 IOC."; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses EP_N26Grp; + } + } + + list EP_NLS { + description "Represents the EP_NLS IOC."; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses EP_NLSGrp; + } + } + + list EP_NLG { + description "Represents the EP_NLG IOC."; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses EP_NLGGrp; + } + } + } + + augment "/me3gpp:ManagedElement/ausf3gpp:AUSFFunction" { + list EP_N12 { + description "Represents the EP_N12 IOC."; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses EP_N12Grp; + } + } + + list EP_N13 { + description "Represents the EP_N13 IOC."; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses EP_N13Grp; + } + } + } + + augment "/me3gpp:ManagedElement/dn3gpp:DNFunction" { + list EP_N6 { + description "Represents the EP_N6 IOC."; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses EP_N6Grp; + } + } + } + + augment "/me3gpp:ManagedElement/lmf3gpp:LMFFunction" { + list EP_NLS { + description "Represents the EP_NLS IOC."; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses EP_NLSGrp; + } + } + } + + augment "/me3gpp:ManagedElement/n3iwf3gpp:N3IWFFunction" { + list EP_N2 { + description "Represents the EP_N2 IOC."; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses EP_N2Grp; + } + } + + list EP_N3 { + description "Represents the EP_N3 IOC."; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses EP_N3Grp; + } + } + } + + augment "/me3gpp:ManagedElement/ngeir3gpp:NGEIRFunction" { + list EP_N17 { + description "Represents the EP_N17 IOC."; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses EP_N17Grp; + } + } + } + + augment "/me3gpp:ManagedElement/nrf3gpp:NRFFunction" { + list EP_N27 { + description "Represents the EP_N27 IOC."; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses EP_N26Grp; + } + } + + } + + augment "/me3gpp:ManagedElement/nssf3gpp:NSSFFunction" { + list EP_N22 { + description "Represents the EP_N22 IOC."; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses EP_N22Grp; + } + } + + list EP_N31 { + description "Represents the EP_N31 IOC."; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses EP_N31Grp; + } + } + } + + augment "/me3gpp:ManagedElement/pcf3gpp:PCFFunction" { + list EP_N5 { + description "Represents the EP_N5 IOC."; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses EP_N5Grp; + } + } + + list EP_N7 { + description "Represents the EP_N7 IOC."; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses EP_N7Grp; + } + } + + list EP_N15 { + description "Represents the EP_N15 IOC."; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses EP_N15Grp; + } + } + + list EP_N16 { + description "Represents the EP_N16 IOC."; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses EP_N16Grp; + } + } + + list EP_Rx { + description "Represents the EP_Rx IOC."; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses EP_RxGrp; + } + } + } + + augment "/me3gpp:ManagedElement/sepp3gpp:SEPPFunction" { + list EP_N32 { + description "Represents the EP_N32 IOC."; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses EP_N32Grp; + } + } + + } + augment "/me3gpp:ManagedElement/smsf3gpp:SMSFFunction" { + list EP_N20 { + description "Represents the EP_20 IOC."; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses EP_N20Grp; + } + } + + list EP_N21 { + description "Represents the EP_N21 IOC."; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses EP_N21Grp; + } + } + + list EP_MAP_SMSC { + description "Represents the EP_MAP_SMSC IOC."; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses EP_MAP_SMSCGrp; + } + } + } + + augment "/me3gpp:ManagedElement/smf3gpp:SMFFunction" { + list EP_N4 { + description "Represents the EP_N4 IOC."; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses EP_N4Grp; + } + } + + list EP_N7 { + description "Represents the EP_N7 IOC."; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses EP_N7Grp; + } + } + + list EP_N10 { + description "Represents the EP_N10 IOC."; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses EP_N10Grp; + } + } + + list EP_N11 { + description "Represents the EP_N11 IOC."; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses EP_N11Grp; + } + } + + list EP_N16 { + description "Represents the EP_N16 IOC."; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses EP_N16Grp; + } + } + + list EP_S5C { + description "Represents the EP_S5C IOC."; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses EP_S5CGrp; + } + } + } + + augment "/me3gpp:ManagedElement/udm3gpp:UDMFunction" { + list EP_N8 { + description "Represents the EP_N8 IOC."; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses EP_N8Grp; + } + } + + list EP_N10 { + description "Represents the EP_N10 IOC."; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses EP_N10Grp; + } + } + + list EP_N13 { + description "Represents the EP_N13 IOC."; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses EP_N13Grp; + } + } + + } + + augment "/me3gpp:ManagedElement/upf3gpp:UPFFunction" { + list EP_N4 { + description "Represents the EP_N4 IOC."; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses EP_N4Grp; + } + } + + list EP_N3 { + description "Represents the EP_N3 IOC."; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses EP_N3Grp; + } + } + + list EP_N9 { + description "Represents the EP_N9 IOC."; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses EP_N9Grp; + } + } + + list EP_S5U { + description "Represents the EP_S5U IOC."; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses EP_S5UGrp; + } + } + + list EP_EP_N6 { + description "Represents the EP_N6 IOC."; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses EP_N6Grp; + } + } + } +} \ No newline at end of file diff --git a/yang-models/_3gpp-5gc-nrm-externalnrffunction.yang b/yang-models/_3gpp-5gc-nrm-externalnrffunction.yang new file mode 100755 index 000000000..95f1cea5e --- /dev/null +++ b/yang-models/_3gpp-5gc-nrm-externalnrffunction.yang @@ -0,0 +1,42 @@ +module _3gpp-5gc-nrm-externalnrffunction { + yang-version 1.1; + namespace urn:3gpp:sa5:_3gpp-5gc-nrm-externalnrffunction; + prefix extnrf3gpp; + + import _3gpp-common-yang-types { prefix types3gpp; } + import _3gpp-common-subnetwork { prefix subnet3gpp; } + import _3gpp-common-top { prefix top3gpp; } + import _3gpp-common-managed-function { prefix mf3gpp; } + + description "This IOC represents external NRF function controlled by another management domain."; + + revision 2019-10-28 { reference S5-193518 ; } + revision 2019-06-11 { + description "Ericsson refactoring."; + } + + grouping ExternalNRFFunctionGrp { + uses mf3gpp:ManagedFunctionGrp; + + list pLMNIdList { + description "List of at most six entries of PLMN Identifiers, but at least one (the primary PLMN Id). + The PLMN Identifier is composed of a Mobile Country Code (MCC) and a Mobile Network Code (MNC)."; + min-elements 1; + max-elements 6; + key "mcc mnc"; + uses types3gpp:PLMNId; + } + } + + augment "/subnet3gpp:SubNetwork" { + list ExternalNRFFunction { + description "5G Core External NRF Function"; + reference "3GPP TS 28.541"; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses ExternalNRFFunctionGrp; + } + uses mf3gpp:ManagedFunctionContainedClasses; } + } +} \ No newline at end of file diff --git a/yang-models/_3gpp-5gc-nrm-externalnssffunction.yang b/yang-models/_3gpp-5gc-nrm-externalnssffunction.yang new file mode 100755 index 000000000..665977805 --- /dev/null +++ b/yang-models/_3gpp-5gc-nrm-externalnssffunction.yang @@ -0,0 +1,43 @@ +module _3gpp-5gc-nrm-externalnssffunction { + yang-version 1.1; + namespace urn:3gpp:sa5:_3gpp-5gc-nrm-externalnssffunction; + prefix extnssf3gpp; + + import _3gpp-common-yang-types { prefix types3gpp; } + import _3gpp-common-subnetwork { prefix subnet3gpp; } + import _3gpp-common-top { prefix top3gpp; } + import _3gpp-common-managed-function { prefix mf3gpp; } + + description "This IOC represents external NSSF function controlled by another management domain."; + + revision 2019-10-28 { reference S5-193518 ; } + revision 2019-06-11 { + description "Ericsson refactoring."; + } + + grouping ExternalNSSFFunctionGrp { + uses mf3gpp:ManagedFunctionGrp; + + list pLMNIdList { + description "List of at most six entries of PLMN Identifiers, but at least one (the primary PLMN Id). + The PLMN Identifier is composed of a Mobile Country Code (MCC) and a Mobile Network Code (MNC)."; + min-elements 1; + max-elements 6; + key "mcc mnc"; + uses types3gpp:PLMNId; + } + } + + augment "/subnet3gpp:SubNetwork" { + list ExternalNSSFFunction { + description "5G Core External NSSF Function"; + reference "3GPP TS 28.541"; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses ExternalNSSFFunctionGrp; + } + uses mf3gpp:ManagedFunctionContainedClasses; + } + } +} \ No newline at end of file diff --git a/yang-models/_3gpp-5gc-nrm-externalseppfunction.yang b/yang-models/_3gpp-5gc-nrm-externalseppfunction.yang new file mode 100755 index 000000000..38496aaaa --- /dev/null +++ b/yang-models/_3gpp-5gc-nrm-externalseppfunction.yang @@ -0,0 +1,55 @@ +module _3gpp-5gc-nrm-externalseppfunction { + yang-version 1.1; + + namespace urn:3gpp:sa5:_3gpp-5gc-nrm-extternalseppfunction; + prefix extsepp3gpp; + + import _3gpp-common-managed-function { prefix mf3gpp; } + import _3gpp-common-managed-element { prefix me3gpp; } + import _3gpp-common-yang-types { prefix types3gpp; } + import _3gpp-common-top { prefix top3gpp; } + import ietf-inet-types { prefix inet; } + + organization "3gpp SA5"; + description "This IOC represents the external SEPP function which support message filtering + and policing on inter-PLMN control plane interface. For more information about the SEPP, see 3GPP TS 23.501."; + reference "3GPP TS 28.541"; + + revision 2019-11-17 { + description "initial revision"; + reference "Based on + 3GPP TS 28.541 V16.X.XX"; + } + + grouping ExternalSEPPFunctionGrp { + uses mf3gpp:ManagedFunctionGrp; + + container pLMNId { + description "PLMN Identifiers of the sepp. + The PLMN Identifier is composed of a Mobile Country Code (MCC) and a Mobile Network Code (MNC)."; + uses types3gpp:PLMNId; + } + + leaf sEPPId { + type uint16; + } + + leaf fqdn { + description "The domain name of the SEPP."; + type inet:domain-name; + } + + } + + augment "/me3gpp:ManagedElement" { + list ExternalSEPPFunction { + description "5G Core SEPP Function"; + reference "3GPP TS 28.541"; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses ExternalSEPPFunctionGrp; + } + } + } +} \ No newline at end of file diff --git a/yang-models/_3gpp-5gc-nrm-lmffunction.yang b/yang-models/_3gpp-5gc-nrm-lmffunction.yang new file mode 100755 index 000000000..ee9ec056a --- /dev/null +++ b/yang-models/_3gpp-5gc-nrm-lmffunction.yang @@ -0,0 +1,63 @@ +module _3gpp-5gc-nrm-lmffunction { + yang-version 1.1; + + namespace urn:3gpp:sa5:_3gpp-5gc-nrm-lmffunction; + prefix lmf3gpp; + + import _3gpp-common-managed-function { prefix mf3gpp; } + import _3gpp-common-managed-element { prefix me3gpp; } + import _3gpp-common-yang-types { prefix types3gpp; } + import _3gpp-5g-common-yang-types { prefix types5g3gpp; } + import _3gpp-common-top { prefix top3gpp; } + + organization "3gpp SA5"; + description "This IOC represents the LMF function defined in 3GPP TS 23.501."; + reference "3GPP TS 28.541"; + + revision 2019-10-25 { reference "S5-194457 S5193518"; } + + revision 2019-05-15 { + description "initial revision"; + reference "Based on + 3GPP TS 28.541 V15.X.XX"; + } + + grouping LMFFunctionGrp { + uses mf3gpp:ManagedFunctionGrp; + + list pLMNIdList { + description "List of at most six entries of PLMN Identifiers, but at least one (the primary PLMN Id). + The PLMN Identifier is composed of a Mobile Country Code (MCC) and a Mobile Network Code (MNC)."; + + min-elements 1; + max-elements 6; + key "mcc mnc"; + uses types3gpp:PLMNId; + } + + list managedNFProfile { + key idx; + min-elements 1; + uses types3gpp:ManagedNFProfile; + } + + list commModelList { + min-elements 1; + key "groupId"; + uses types5g3gpp:CommModel; + } + } + + augment "/me3gpp:ManagedElement" { + list LMFFunction { + description "5G Core LMF Function"; + reference "3GPP TS 28.541"; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses LMFFunctionGrp; + } + uses mf3gpp:ManagedFunctionContainedClasses; + } + } +} \ No newline at end of file diff --git a/yang-models/_3gpp-5gc-nrm-n3iwffunction.yang b/yang-models/_3gpp-5gc-nrm-n3iwffunction.yang new file mode 100755 index 000000000..05ca146ca --- /dev/null +++ b/yang-models/_3gpp-5gc-nrm-n3iwffunction.yang @@ -0,0 +1,55 @@ +module _3gpp-5gc-nrm-n3iwffunction { + yang-version 1.1; + + namespace urn:3gpp:sa5:_3gpp-5gc-nrm-n3iwffunction; + prefix n3iwf3gpp; + + import _3gpp-common-managed-function { prefix mf3gpp; } + import _3gpp-common-managed-element { prefix me3gpp; } + import _3gpp-common-yang-types { prefix types3gpp; } + import _3gpp-5g-common-yang-types { prefix types5g3gpp; } + import _3gpp-common-top { prefix top3gpp; } + + organization "3gpp SA5"; + description "This IOC represents the N3IWF function which is used to enable non-3GPP + access networks connected to the 5GC. For more information about the N3IWF, see 3GPP TS 23.501."; + reference "3GPP TS 28.541"; + + revision 2019-10-28 { reference S5-193518 ; } + revision 2019-05-22 { + description "initial revision"; + } + + grouping N3IWFFunctionGrp { + uses mf3gpp:ManagedFunctionGrp; + + list pLMNIdList { + description "List of at most six entries of PLMN Identifiers, but at least one (the primary PLMN Id). + The PLMN Identifier is composed of a Mobile Country Code (MCC) and a Mobile Network Code (MNC)."; + + min-elements 1; + max-elements 6; + key "mcc mnc"; + uses types3gpp:PLMNId; + } + + list commModelList { + min-elements 1; + key "groupId"; + uses types5g3gpp:CommModel; + } + } + + augment "/me3gpp:ManagedElement" { + list N3IWFFunction { + description "5G Core N3IWF Function"; + reference "3GPP TS 28.541"; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses N3IWFFunctionGrp; + } + uses mf3gpp:ManagedFunctionContainedClasses; + } + } +} \ No newline at end of file diff --git a/yang-models/_3gpp-5gc-nrm-neffunction.yang b/yang-models/_3gpp-5gc-nrm-neffunction.yang new file mode 100755 index 000000000..fdb701ed4 --- /dev/null +++ b/yang-models/_3gpp-5gc-nrm-neffunction.yang @@ -0,0 +1,68 @@ +module _3gpp-5gc-nrm-neffunction { + yang-version 1.1; + + namespace urn:3gpp:sa5:_3gpp-5gc-nrm-neffunction; + prefix nef3gpp; + + import _3gpp-common-managed-function { prefix mf3gpp; } + import _3gpp-common-managed-element { prefix me3gpp; } + import ietf-inet-types { prefix inet; } + import _3gpp-common-top { prefix top3gpp; } + import _3gpp-5g-common-yang-types { prefix types5g3gpp; } + + organization "3gpp SA5"; + contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; + description "This IOC represents the NEF function in 5GC. For more + information about the NEF, see 3GPP TS 23.501."; + reference "3GPP TS 28.541"; + + revision 2020-11-05 { reference CR-0412 ; } + revision 2019-10-20 { reference "initial revision"; } + + grouping NEFFunctionGrp { + description "Represents the NEFFunction IOC"; + uses mf3gpp:ManagedFunctionGrp; + + leaf sBIFQDN { + description "The FQDN of the registered NF instance in the + service-based interface."; + type inet:domain-name; + } + + list sNSSAIList { + description "List of S-NSSAIs the managed object is capable of supporting. + (Single Network Slice Selection Assistance Information) + An S-NSSAI has an SST (Slice/Service type) and an optional SD + (Slice Differentiator) field."; + key "sd sst"; + uses types5g3gpp:SNssai; + } + + leaf-list capabilityList { + description "List of supported capabilities of the NEF."; + reference "3GPP TS 23.003"; + type string; + } + + leaf isINEF { + type boolean; + } + + leaf isCAPIFSup { + type boolean; + } + + } + + augment "/me3gpp:ManagedElement" { + list NEFFunction { + description "5G Core NEF Function"; + reference "3GPP TS 28.541"; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses NEFFunctionGrp; + } + } + } +} \ No newline at end of file diff --git a/yang-models/_3gpp-5gc-nrm-nfprofile.yang b/yang-models/_3gpp-5gc-nrm-nfprofile.yang new file mode 100755 index 000000000..c5b0d609a --- /dev/null +++ b/yang-models/_3gpp-5gc-nrm-nfprofile.yang @@ -0,0 +1,1095 @@ +module _3gpp-5gc-nrm-nfprofile { + yang-version 1.1; + + namespace urn:3gpp:sa5:_3gpp-5gc-nrm-nfprofile; + prefix nfp3gpp; + + import _3gpp-common-yang-types { prefix types3gpp; } + import ietf-inet-types { prefix inet; } + import ietf-yang-types { prefix yang; } + import _3gpp-5gc-nrm-nfservice { prefix nfs3gpp; } + + organization "3gpp SA5"; + description "NF profile class."; + reference "3GPP TS 29.510"; + + revision 2019-06-17 { + description "initial revision"; + } + + grouping NFProfileGrp { + leaf nfInstanceID { + description "String uniquely identifying a NF instance."; + mandatory true; + type string; + } + + leaf nfType { + description "Type of Network Function."; + mandatory true; + type types3gpp:NfType; + } + + leaf nfStatus { + description "Status of the NF Instance."; + mandatory true; + type NFStatus; + } + + leaf heartBeatTimer { + description "Time in seconds expected between 2 consecutive heart-beat messages from + an NF Instance to the NRF. It may be included in the registration request. + When present in the request it shall contain the heartbeat time proposed by the NF service consumer."; + //conditional support + type uint16; + } + + list plmnList { + description "PLMN(s) of the Network Function. + This IE shall be present if this information is available for the NF. + If not provided, PLMN ID(s) of the PLMN of the NRF are assumed for the NF."; + + //conditional support + min-elements 1; + key "mcc mnc"; + uses types3gpp:PLMNId; + } + + list sNssais { //is the key unique + description "S-NSSAIs of the Network Function. If not provided, the NF can serve any S-NSSAI. + When present this IE represents the list of S-NSSAIs supported in all the PLMNs listed in the plmnList IE."; + min-elements 1; + //optional support + key "sst sd"; + uses Snssai; + } + + list perPlmnSnssaiList { + description "This IE may be included when the list of S-NSSAIs supported by the NF for each PLMN it is supporting is different. + When present, this IE shall include the S-NSSAIs supported by the Network Function + for each PLMN supported by the Network Function. When present, this IE shall override sNssais IE."; + min-elements 1; + //optional support + key idx; //no obvious leaf to use as a key + leaf idx { type uint32; } + uses PlmnSnssai; + } + + leaf-list nsiList { + description "NSI identities of the Network Function. + If not provided, the NF can serve any NSI."; + //optional support + min-elements 1; + type string; + } + + leaf fqdn { + description "FQDN of the Network Function. For AMF, the FQDN registered with the NRF + shall be that of the AMF Name."; + //conditional support + type inet:domain-name; + } + + leaf interPlmnFqdn { + description "If the NF needs to be discoverable by other NFs in a different PLMN, + then an FQDN that is used for inter-PLMN routing is specified."; + //conditional support + type inet:domain-name; + } + + leaf-list ipv4Addresses { + description "IPv4 address(es) of the Network Function."; + min-elements 1; + //conditional support + type inet:ipv4-address; + } + + leaf-list ipv6Addresses { + description "IPv6 address(es) of the Network Function."; + min-elements 1; + //conditional support + type inet:ipv6-address; + } + + list allowedPlmns { + description "PLMNs allowed to access the NF instance. + If not provided, any PLMN is allowed to access the NF."; + + min-elements 1; + //optional support + key "mcc mnc"; + uses types3gpp:PLMNId; + } + + leaf-list allowedNfTypes { + description "Type of the NFs allowed to access the NF instance. + If not provided, any NF type is allowed to access the NF."; + min-elements 1; + //optional support + type types3gpp:NfType; + } + + leaf-list allowedNfDomains { + description "Pattern representing the NF domain names allowed to access the NF instance. + If not provided, any NF domain is allowed to access the NF."; + min-elements 1; + //optional support + type string; + } + + list allowedNssais { //is the key unique + description "S-NSSAI of the allowed slices to access the NF instance. + If not provided, any slice is allowed to access the NF."; + min-elements 1; + //optional support + key "sst sd"; + uses Snssai; + } + + leaf priority { + description "Priority (relative to other NFs of the same type) in the range of 0-65535, to be used for NF selection; + lower values indicate a higher priority. If priority is also present in the nfServiceList parameters, + those will have precedence over this value. The NRF may overwrite the received priority value when exposing + an NFProfile with the Nnrf_NFDiscovery service."; + //optional support + type uint16; + } + + leaf capacity { + description "Static capacity information in the range of 0-65535, expressed as a weight + relative to other NF instances of the same type; if capacity is also present + in the nfServiceList parameters, those will have precedence over this value."; + //optional support + type uint16; + } + + leaf load { + description "Dynamic load information, ranged from 0 to 100, indicates the current load percentage of the NF."; + //optional support + type types3gpp:Load; + } + + leaf locality { + description "Operator defined information about the location of the NF instance (e.g. geographic location, data center)."; + //optional support + type string; + } + + grouping udrInfo { + //optional support + + leaf groupId { + description "Identity of the UDR group that is served by the UDR instance. + If not provided, the UDR instance does not pertain to any UDR group."; + //optional support + type string; + } + + list supiRanges { + description "List of ranges of SUPI's whose profile data is available in the UDR instance."; + key "start end pattern"; + min-elements 1; + //optional support + uses SupiRange; + } + + list gpsiRanges { + description "List of ranges of GPSIs whose profile data is available in the UDR instance."; + key "start end pattern"; + min-elements 1; + //optional support + uses IdentityRange; + } + + list externalGroupIdentifiersRanges { + description "List of ranges of external groups whose profile data is available in the UDR instance."; + key "start end pattern"; + min-elements 1; + //optional support + uses IdentityRange; + } + + leaf-list supportedDataSets { + description "List of supported data sets in the UDR instance. + If not provided, the UDR supports all data sets."; + min-elements 1; + //optional support + type DataSetId; + } + } + + grouping udmInfo { + //optional support + + leaf groupId { + description "Identity of the UDM group that is served by the UDM instance. + If not provided, the UDM instance does not pertain to any UDM group."; + //optional support + type string; + } + + list supiRanges { + description "List of ranges of SUPI's whose profile data is available in the UDM instance."; + key "start end pattern"; + min-elements 1; + //optional support + uses SupiRange; + } + + list gpsiRanges { + description "List of ranges of GPSIs whose profile data is available in the UDM instance."; + key "start end pattern"; + min-elements 1; + //optional support + uses IdentityRange; + } + + list externalGroupIdentifiersRanges { + description "List of ranges of external groups whose profile data is available in the UDM instance."; + key "start end pattern"; + min-elements 1; + //optional support + uses IdentityRange; + } + + leaf-list routingIndicators { + description "List of Routing Indicator information that allows to route network signalling with SUCI + to the UDM instance. If not provided, the UDM can serve any Routing Indicator. + Pattern: '^[0-9]{1,4}$'."; + //optional support + min-elements 1; + type string; + } + } + + grouping ausfInfo { + //optional support + + leaf groupId { + description "Identity of the AUSF group. If not provided, the AUSF instance does not pertain to any AUSF group."; + //optional support + type string; + } + + list supiRanges { + description "List of ranges of SUPIs that can be served by the AUSF instance. If not provided, the AUSF can serve any SUPI."; + key "start end pattern"; + min-elements 1; + //optional support + uses SupiRange; + } + + leaf-list routingIndicators { + description "List of Routing Indicator information that allows to route network signalling with SUCI + to the AUSF instance. If not provided, the AUSF can serve any Routing Indicator. + Pattern: '^[0-9]{1,4}$'."; + //optional support + min-elements 1; + type string; + } + } + + grouping amfInfo { + //optional support + + leaf amfRegionId { + description "AMF region identifier"; + type string; + } + + leaf amfSetId { + description "AMF set identifier"; + type string; + } + + list guamiList { + description "List of supported GUAMIs."; + + key idx; //no obvious leaf to use as a key + leaf idx { type uint32; } + + min-elements 1; + uses Guami; + } + + list taiList { + description "The list of TAIs the AMF can serve. It may contain the non-3GPP access TAI. + The absence of this attribute and the taiRangeList attribute indicate that + the AMF can be selected for any TAI in the serving network."; + + key idx; //no obvious leaf to use as a key + leaf idx { type uint32; } + + //optional support + min-elements 1; + uses Tai; + } + + list taiRangeList { + description "The range of TAIs the AMF can serve. The absence of this attribute and the taiList + attribute indicate that the AMF can be selected for any TAI in the serving network."; + //optional support + min-elements 1; + key idx; //no obvious leaf to use as a key + leaf idx { type uint32; } + uses TaiRange; + } + + list backupInfoAmfFailure { + description "List of GUAMIs for which the AMF acts as a backup for AMF failure."; + + key idx; //no obvious leaf to use as a key + leaf idx { type uint32; } + + //optional support + min-elements 1; + uses Guami; + } + + list backupInfoAmfRemoval { + description "List of GUAMIs for which the AMF acts as a backup for planned AMF removal."; + + key idx; //no obvious leaf to use as a key + leaf idx { type uint32; } + + //optional support + min-elements 1; + uses Guami; + } + + list n2InterfaceAmfInfo { + description "N2 interface information of the AMF. This information needs not be sent in NF Discovery responses. + It may be used by the NRF to update the DNS for AMF discovery by the 5G Access Network."; + + //optional support + max-elements 1; + key idx; //no obvious leaf to use as a key + leaf idx { type uint32; } + uses N2InterfaceAmfInfo; + } + } + + grouping smfInfo { + //optional support + + list sNssaiSmfInfoList { + description "List of parameters supported by the SMF per S-NSSAI."; + min-elements 1; + key idx; //no obvious leaf to use as a key + leaf idx { type uint32; } + uses sNssaiSmfInfoItem; + } + + list taiList { + description "The list of TAIs the SMF can serve. It may contain the non-3GPP access TAI. + The absence of this attribute and the taiRangeList attribute indicate that + the SMF can be selected for any TAI in the serving network."; + + key idx; //no obvious leaf to use as a key + leaf idx { type uint32; } + + //optional support + min-elements 1; + uses Tai; + } + + list taiRangeList { + description "The range of TAIs the SMF can serve. The absence of this attribute and the taiList + attribute indicate that the SMF can be selected for any TAI in the serving network."; + //optional support + min-elements 1; + key idx; //no obvious leaf to use as a key + leaf idx { type uint32; } + uses TaiRange; + } + + leaf pgwFqdn { + description "The FQDN of the PGW if the SMF is a combined SMF/PGW-C."; + //optional support + type inet:domain-name; + } + + leaf-list accessType { + description "If included, this IE shall contain the access type (3GPP_ACCESS and/or NON_3GPP_ACCESS) supported by the SMF. + If not included, it shall be assumed the both access types are supported."; + + //conditional support + min-elements 1; + max-elements 2; + type AccessType; + } + } + + grouping upfInfo { + //optional support + + list sNssaiUpfInfoList { + description "List of parameters supported by the UPF per S-NSSAI."; + min-elements 1; + key idx; //no obvious leaf to use as a key + leaf idx { type uint32; } + uses SnssaiUpfInfoItem; + } + + leaf-list smfServingArea { + description "The SMF service area(s) the UPF can serve. + If not provided, the UPF can serve any SMF service area."; + + //optional support + min-elements 1; + type string; + } + + list interfaceUpfInfo { + description "List of User Plane interfaces configured on the UPF. When this IE is provided in the NF Discovery response, + the NF Service Consumer (e.g. SMF) may use this information for UPF selection."; + + key idx; //no obvious leaf to use as a key + leaf idx { type uint32; } + + //optional support + min-elements 1; + uses InterfaceUpfInfoItem; + } + + leaf iwkEpsInd { + description "Indicates whether interworking with EPS is supported by the UPF. + true: Supported + false (default): Not Supported"; + + //optional support + type boolean; + } + + leaf-list pduSessionTypes { + description "List of PDU session type(s) supported by the UPF. The absence of this attribute indicates that the UPF can be selected + for any PDU session type."; + + //optional support + min-elements 1; + type PduSessionType; + } + } + + grouping pcfInfo { + //optional support + + leaf-list dnnList { + description "DNNs supported by the PCF. + If not provided, the PCF can serve any DNN."; + + //optional support + min-elements 1; + type string; + } + + list supiRanges { + description "List of ranges of SUPIs that can be served by the PCF instance. If not provided, the PCF can serve any SUPI."; + key "start end pattern"; + min-elements 1; + //optional support + uses SupiRange; + } + + leaf rxDiamHost { + description "This IE shall be present if the PCF supports Rx interface. + When present, this IE shall indicate the Diameter host of the Rx interface for the PCF. + Pattern: '^([A-Za-z0-9]+(-[A-Za-z0-9]+).)+[a-z]{2,}$'."; + + //conditional support + type string; + } + + leaf rxDiamRealm { + description "This IE shall be present if the PCF supports Rx interface. + When present, this IE shall indicate the Diameter realm of the Rx interface for the PCF. + Pattern: '^([A-Za-z0-9]+(-[A-Za-z0-9]+).)+[a-z]{2,}$'."; + + //conditional support + type string; + } + } + + grouping bsfInfo { + //optional support + + list ipv4AddressRanges { + description "List of ranges of IPv4 addresses handled by BSF. + If not provided, the BSF can serve any IPv4 address."; + //optional support + key "start end"; + uses types3gpp:Ipv4AddressRange; + } + + leaf-list dnnList { + description "List of DNNs handled by the BSF + If not provided, the BSF can serve any DNN."; + + //optional support + min-elements 1; + type string; + } + + leaf-list ipDomainList { + description "List of IPv4 address domains, as described in subclause 6.2 of 3GPP TS 29.513, handled by the BSF. + If not provided, the BSF can serve any IP domain."; + //optional support + min-elements 1; + type string; + } + + list ipv6PrefixRanges { + description "List of ranges of IPv6 prefixes handled by the BSF. + If not provided, the BSF can serve any IPv6 prefix."; + //optional support + key "start end"; + uses types3gpp:Ipv6PrefixRange; + } + } + + grouping chfInfo { + //optional support + + list supiRangeList { + description "List of ranges of SUPIs that can be served by the CHF instance. If not provided, the CHF can serve any SUPI."; + key "start end pattern"; + min-elements 1; + //optional support + uses SupiRange; + } + + list gpsiRangeList { + description "List of ranges of GPSI that can be served by the CHF instance. If not provided, the CHF can serve any GPSI."; + key "start end pattern"; + min-elements 1; + //optional support + uses IdentityRange; + } + + list plmnRangeList { + description "List of ranges of PLMNs (including the PLMN IDs of the CHF instance) that can be served by the CHF instance. + If not provided, the CHF can serve any PLMN."; + + min-elements 1; + //optional support + key "mcc mnc"; + uses types3gpp:PLMNId; + } + } + + grouping nrfInfoGrp { + //optional support + + list servedUdrInfo { + description "This attribute contains all the udrInfo attributes locally configured in the NRF or the NRF received during NF registration."; + //optional support + + key nfInstanceID; + leaf nfInstanceID { + description "String uniquely identifying a NF instance."; + type string; + } + + min-elements 1; + uses udrInfo; + } + + list servedUdmInfo { + description "This attribute contains all the udmInfo attributes locally configured in the NRF or the NRF received during NF registration."; + //optional support + + key nfInstanceID; + leaf nfInstanceID { + description "String uniquely identifying a NF instance."; + type string; + } + + min-elements 1; + uses udmInfo; + } + + list servedAusfInfo { + description "This attribute contains all the ausfInfo attributes locally configured in the NRF or the NRF received during NF registration."; + //optional support + + key nfInstanceID; + leaf nfInstanceID { + description "String uniquely identifying a NF instance."; + type string; + } + + min-elements 1; + uses ausfInfo; + } + + list servedAmfInfo { + description "This attribute contains all the amfInfo attributes locally configured in the NRF or the NRF received during NF registration."; + //optional support + + key nfInstanceID; + leaf nfInstanceID { + description "String uniquely identifying a NF instance."; + type string; + } + + min-elements 1; + uses amfInfo; + } + + list servedSmfInfo { + description "This attribute contains all the smfInfo attributes locally configured in the NRF or the NRF received during NF registration."; + //optional support + + key nfInstanceID; + leaf nfInstanceID { + description "String uniquely identifying a NF instance."; + type string; + } + + min-elements 1; + uses smfInfo; + } + + list servedUpfInfo { + description "This attribute contains all the upfInfo attributes locally configured in the NRF or the NRF received during NF registration."; + //optional support + + key nfInstanceID; + leaf nfInstanceID { + description "String uniquely identifying a NF instance."; + type string; + } + + min-elements 1; + uses upfInfo; + } + + list servedPcfInfo { + description "This attribute contains all the pcfInfo attributes locally configured in the NRF or the NRF received during NF registration."; + //optional support + + key nfInstanceID; + leaf nfInstanceID { + description "String uniquely identifying a NF instance."; + type string; + } + + min-elements 1; + uses pcfInfo; + } + + list servedBsfInfo { + description "This attribute contains all the bsfInfo attributes locally configured in the NRF or the NRF received during NF registration."; + //optional support + + key nfInstanceID; + leaf nfInstanceID { + description "String uniquely identifying a NF instance."; + type string; + } + + min-elements 1; + uses bsfInfo; + } + + list servedChfInfo { + description "This attribute contains all the bsfInfo attributes locally configured in the NRF or the NRF received during NF registration."; + //optional support + + key nfInstanceID; + leaf nfInstanceID { + description "String uniquely identifying a NF instance."; + type string; + } + + min-elements 1; + uses chfInfo; + } + } + + list nrfInfo { + key idx; //no obvious leaf to use as a key + leaf idx { type uint32; } + max-elements 1; + uses nrfInfoGrp; + } + + leaf customInfo { + description "Specific data for custom Network Functions."; + type string; + } + + leaf recoveryTime { + description "Timestamp when the NF was (re)started."; + //optional support + type yang:date-and-time; + } + + leaf nfServicePersistence { + description "If present, and set to true, it indicates that the different service instances of a same NF Service in this NF instance, + supporting a same API version, are capable to persist their resource state in shared storage and therefore these resources + are available after a new NF service instance supporting the same API version is selected by a NF Service Consumer (see 3GPP TS 23.527). + Otherwise, it indicates that the NF Service Instances of a same NF Service are not capable to share resource state inside the NF Instance."; + + //optional support + type boolean; + } + + list nfServices { + description "List of NF Service Instances. It shall include the services produced by the NF that can be discovered by other NFs."; + key serviceInstanceID; + //optional support + min-elements 1; + uses nfs3gpp:NFServiceGrp; + } + + leaf nfProfileChangesSupportInd { + description "NF Profile Changes Support Indicator. This IE may be present in the NFRegister or NFUpdate (NF Profile Complete Replacement) request and shall be absent in the response. + true: the NF Service Consumer supports receiving NF Profile Changes in the response. + false (default): the NF Service Consumer does not support receiving NF Profile Changes in the response."; + + //optional support + type boolean; + } + + leaf nfProfileChangesInd { + description "NF Profile Changes Indicator. This IE shall be absent in the request to the NRF and may be included by the NRF in NFRegister or NFUpdate (NF Profile Complete Replacement) response. + true: the NF Profile contains NF Profile changes. + false (default): complete NF Profile."; + + //optional support + type boolean; + } + + list defaultNotificationSubscriptions { + description "Notification endpoints for different notification types."; + key notificationType; + //optional support + min-elements 1; + uses types3gpp:DefaultNotificationSubscription; + } + } + + typedef NFStatus { + type enumeration { + enum REGISTERED; + enum SUSPENDED; + } + } + + typedef DataSetId { + type enumeration { + enum SUBSCRIPTION; + enum POLICY; + enum EXPOSURE; + enum APPLICATION; + } + } + + grouping SupiRange { + leaf start { + description "First value identifying the start of a SUPI range. To be used when the range of SUPI's can be represented as a numeric range (e.g., IMSI ranges)."; + type string { + pattern '^[0-9]+$'; + } + } + + leaf end { + description "Last value identifying the end of a SUPI range. To be used when the range of SUPI's can be represented as a numeric range (e.g. IMSI ranges)."; + type string { + pattern '^[0-9]+$'; + } + } + + leaf pattern { + description "Pattern representing the set of SUPI's belonging to this range. + A SUPI value is considered part of the range if and only if the SUPI string fully matches the regular expression."; + type string; + } + } + + grouping IdentityRange { + leaf start { + description "First value identifying the start of an identity range. To be used when the range of identities can be represented as a numeric range (e.g., MSISDN ranges)."; + type string { + pattern '^[0-9]+$'; + } + } + + leaf end { + description "Last value identifying the end of an identity range. To be used when the range of identities can be represented as a numeric range (e.g. MSISDN ranges)."; + type string { + pattern '^[0-9]+$'; + } + } + + leaf pattern { + description "Pattern representing the set of identities belonging to this range. + An identity value is considered part of the range if and only if the identity string fully matches the regular expression."; + type string; + } + } + + grouping TacRange { + leaf start { + description "First value identifying the start of a TAC range, to be used when the range of TAC's can be represented as a hexadecimal range (e.g., TAC ranges)."; + type string { + pattern '^([A-Fa-f0-9]{4}|[A-Fa-f0-9]{6}$)'; + } + } + + leaf end { + description "Last value identifying the end of a TAC range, to be used when the range of TAC's can be represented as a hexadecimal range (e.g. TAC ranges)."; + type string { + pattern '^([A-Fa-f0-9]{4}|[A-Fa-f0-9]{6})$'; + } + } + + leaf pattern { + description "Pattern representing the set of TAC's belonging to this range."; + type string; + } + } + + grouping SnssaiUpfInfoItem { + list sNssai { //is the key unique + description "Supported S-NSSAI."; + min-elements 1; + max-elements 1; + key "sst sd"; + uses Snssai; + } + + list dnnUpfInfoList { + description "List of parameters supported by the UPF per DNN."; + min-elements 1; + key dnn; + uses DnnUpfInfoItem; + } + } + + grouping DnnUpfInfoItem { + leaf dnn { + description "String representing a Data Network."; + mandatory true; + type string; + } + + leaf-list dnaiList { + description "List of Data network access identifiers supported by the UPF for this DNN. + The absence of this attribute indicates that the UPF can be selected for this DNN for any DNAI."; + min-elements 1; + type string; //dnai is the type but its only a string with desc: DNAI (Data network access identifier), is this needed as its own typedef or string is ok + } + + leaf-list pduSessionTypes { + description "List of PDU session type(s) supported by the UPF for a specific DNN."; + min-elements 1; + type PduSessionType; + } + } + + grouping Snssai { + leaf sst { + description "Unsigned integer, within the range 0 to 255, representing the Slice/Service Type. + It indicates the expected Network Slice behaviour in terms of features and services."; + mandatory true; + type uint32; + } + + leaf sd { + description "3-octet string, representing the Slice Differentiator, in hexadecimal representation."; + //optional + type string { + pattern '^[A-Fa-f0-9]{6}$'; + } + } + + reference "3GPP TS 29.571"; + } + + typedef PduSessionType { + type enumeration { + enum IPV4; + enum IPV6; + enum IPV4V6; + enum UNSTRUCTURED; + enum ETHERNET; + } + } + + grouping Guami { + list plmnId { + description "PLMN Identity."; + min-elements 1; + max-elements 1; + key "mcc mnc"; + uses types3gpp:PLMNId; + } + + list amfId { + description "AMF Identity."; + min-elements 1; + max-elements 1; + key "amfRegionId amfSetId amfPointer"; + uses types3gpp:AmfIdentifier; + } + } + + grouping Tai { + list plmnId { + description "PLMN Identity."; + min-elements 1; + max-elements 1; + key "mcc mnc"; + uses types3gpp:PLMNId; + } + + leaf tac { type types3gpp:Tac; } + } + + grouping InterfaceUpfInfoItem { + leaf interfaceType { + description "User Plane interface type."; + mandatory true; + type UPInterfaceType; + } + + ////At least one of the addressing parameters (ipv4address, ipv6adress or endpointFqdn) shall be included in the InterfaceUpfInfoItem. + choice address { + case ipv4EndpointAddresses { + leaf-list ipv4EndpointAddresses { + description "Available endpoint IPv4 address(es) of the User Plane interface."; + //conditional support + min-elements 1; + type inet:ipv4-address; + } + } + + case ipv6EndpointAddresses { + leaf-list ipv6EndpointAddresses { + description "Available endpoint IPv6 address(es) of the User Plane interface."; + //conditional support + min-elements 1; + type inet:ipv6-address; + } + } + + case endpointFqdn { + leaf endpointFqdn { + description "FQDN of available endpoint of the User Plane interface."; + //conditional support + type inet:domain-name; + } + } + } + + leaf networkInstance { + description "Network Instance associated to the User Plane interface."; + //optional support + type string; + } + } + + typedef UPInterfaceType { + type enumeration { + enum N3; + enum N6; + enum N9; + } + } + + grouping TaiRange { + list plmnId { + description "PLMN ID related to the TacRange."; + min-elements 1; + max-elements 1; + key "mcc mnc"; + uses types3gpp:PLMNId; + } + + list tacRangeList { //is this key unique + description "The range of the TACs."; + min-elements 1; + key "start end"; + uses TacRange; + } + } + + typedef AccessType { + type enumeration { + enum 3GPP_ACCESS; + enum NON_3GPP_ACCESS; + } + } + + grouping N2InterfaceAmfInfo { + //At least one of the addressing parameters (ipv4address or ipv6adress) shall be included. + choice address { + case ipv4EndpointAddress { + leaf-list ipv4EndpointAddress { + description "Available AMF endpoint IPv4 address(es) for N2."; + //conditional support + min-elements 1; + type inet:ipv4-address; + } + } + + case ipv6EndpointAddress { + leaf-list ipv6EndpointAddress { + description "Available AMF endpoint IPv6 address(es) for N2."; + //conditional support + min-elements 1; + type inet:ipv6-address; + } + } + } + + leaf amfName { + description "AMF name."; + type string; + } + } + + grouping sNssaiSmfInfoItem { + list sNssai { //is the key unique + description "Supported S-NSSAI."; + min-elements 1; + max-elements 1; + key "sst sd"; + uses Snssai; + } + + list dnnSmfInfoList { //is the key unique + description "List of parameters supported by the SMF per DNN."; + min-elements 1; + key dnn; + uses DnnSmfInfoItem; + } + } + + grouping DnnSmfInfoItem { + leaf dnn { + description "Supported DNN."; + mandatory true; + type string; + } + } + + grouping PlmnSnssai { + list plmnId { + description "PLMN ID for which list of supported S-NSSAI(s) is provided."; + min-elements 1; + max-elements 1; + key "mcc mnc"; + uses types3gpp:PLMNId; + } + + list sNssaiList { //is the key unique + description "The specific list of S-NSSAIs supported by the given PLMN."; + min-elements 1; + key "sst sd"; + uses Snssai; + } + } +} \ No newline at end of file diff --git a/yang-models/_3gpp-5gc-nrm-nfservice.yang b/yang-models/_3gpp-5gc-nrm-nfservice.yang new file mode 100755 index 000000000..3d3856931 --- /dev/null +++ b/yang-models/_3gpp-5gc-nrm-nfservice.yang @@ -0,0 +1,302 @@ +module _3gpp-5gc-nrm-nfservice { + yang-version 1.1; + + namespace urn:3gpp:sa5:_3gpp-5gc-nrm-nfservice; + prefix nfs3gpp; + + import _3gpp-common-yang-types { prefix types3gpp; } + import ietf-yang-types { prefix yang; } + import ietf-inet-types { prefix inet; } + import _3gpp-5g-common-yang-types { prefix types5g3gpp; } + + organization "3gpp SA5"; + contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; + description "NF service class."; + reference "3GPP TS 29.510"; + + revision 2021-01-25 { reference CR-0454 ; } + revision 2020-11-05 { reference CR-0412 ; } + revision 2019-06-17 { reference "initial revision"; } + + grouping NFServiceGrp { + description "Represents the NFService IOC"; + leaf serviceInstanceID { + description + "Unique ID of the service instance within a given NF Instance."; + mandatory true; + type string; + } + + leaf serviceName { + description "Name of the service instance (e.g. 'nudm-sdm')."; + mandatory true; + type ServiceName; + } + + list versions { //check in review if key is ok (unique) + description "API versions supported by the NF Service and if available, + the corresponding retirement date of the NF Service."; + min-elements 1; + key "apiVersionInUri apiFullVersion"; + uses NFServiceVersion; + } + + leaf scheme { + description "URI scheme (e.g. 'http', 'https')."; + mandatory true; + type UriScheme; + } + + leaf nfServiceStatus { + description "Status of the NF Service Instance."; + mandatory true; + type NFServiceStatus; + } + + leaf fqdn { + description "FQDN of the NF Service Instance."; + //optional support + type inet:domain-name; + } + + leaf interPlmnFqdn { + description "If the NF service needs to be discoverable by other NFs in a + different PLMN, then an FQDN that is used for inter PLMN routing."; + //optional support + type inet:domain-name; + } + + list ipEndPoints { + description "IP address(es) and port information of the Network Function + (including IPv4 and/or IPv6 address)where the service is listening + for incoming service requests."; + //optional support + + key idx; + leaf idx { + type string; + } + min-elements 1; + uses ipEndPoint; + } + + leaf apiPrefix { + description "Optional path segment(s) used to construct the {apiRoot} + variable of the different API URIs."; + //optional support + type string; + } + + list defaultNotificationSubscriptions { + description "Notification endpoints for different notification types."; + key notificationType; + //optional support + min-elements 1; + uses types3gpp:DefaultNotificationSubscription; + } + + list allowedPlmns { + description "PLMNs allowed to access the service instance. + The absence of this attribute indicates that any PLMN is allowed to + access the service instance."; + + min-elements 1; + //optional support + key "mcc mnc"; + uses types3gpp:PLMNId; + } + + leaf-list allowedNfTypes { + description "Type of the NFs allowed to access the service instance. + The absence of this attribute indicates that any NF type is allowed + to access the service instance."; + + min-elements 1; + //optional support + type types3gpp:NfType; + } + + leaf-list allowedNfDomains { + description "Pattern representing the NF domain names allowed to access the service instance."; + //optional support + min-elements 1; + type string; + } + + list allowedNssais { + description "S-NSSAI of the allowed slices to access the service instance. + The absence of this attribute indicates that any slice is allowed to + access the service instance."; + min-elements 1; + //optional support + key "sd sst"; + uses types5g3gpp:SNssai; + } + + leaf priority { + description "Priority (relative to other services of the same type) + in the range of 0-65535, to be used for NF Service selection; lower + values indicate a higher priority."; + //optional support + type uint16; + } + + leaf capacity { + description "Static capacity information in the range of 0-65535, + expressed as a weight relative to other services of the same type."; + //optional support + type uint16; + } + + leaf load { + description "Dynamic load information, ranged from 0 to 100, indicates + the current load percentage of the NF Service."; + //optional support + type types3gpp:Load; + } + + leaf recoveryTime { + description "Timestamp when the NF was (re)started."; + //optional support + type yang:date-and-time; + } + + list chfServiceInfo { //is the key unique + description "Specific data for a CHF service instance."; + //optional support + max-elements 1; + key "primaryChfServiceInstance secondaryChfServiceInstance"; + uses ChfServiceInfo; + } + + leaf supportedFeatures { + description "Supported Features of the NF Service instance."; + //optional support + type SupportedFeatures; + } + } + + typedef SupportedFeatures { + type string { + pattern '[A-Fa-f0-9]*'; + } + } + + grouping ipEndPoint { + choice address { + leaf ipv4Address { + type inet:ipv4-address; + } + + leaf ipv6Address { + type inet:ipv6-address; + } + + leaf ipv6Prefix { + type inet:ipv6-prefix; + } + } + + leaf transport { + type TransportProtocol; + } + + leaf port { + type uint16; + } + } + + typedef TransportProtocol { + type enumeration { + enum TCP; + enum STCP; + enum UDP; + } + } + + grouping NFServiceVersion { + leaf apiVersionInUri { + mandatory true; + type string; + } + + leaf apiFullVersion { + mandatory true; + type string; + } + + leaf expiry { + //optional to support + type yang:date-and-time; + } + } + + typedef ServiceName { + type enumeration { + enum NNRF_NFM; + enum NNRF_DISC; + enum NUDM_SDM; + enum NUDM_UECM; + enum NUDM_UEAU; + enum NUDM_EE; + enum NUDM_PP; + enum NAMF_COMM; + enum NAMF_EVTS; + enum NAMF_MT; + enum NAMF_LOC; + enum NSMF_PDUSESSION; + enum NSMF_EVENT-EXPOSURE; + enum NAUSF_AUTH; + enum NAUSF_SORPROTECTION; + enum NNEF_PFDMANAGEMENT; + enum NPCF_AM-POLICY-CONTROL; + enum NPCF_SMPOLICYCONTROL; + enum NPCF_POLICYAUTHORIZATION; + enum NPCF_BDTPOLICYCONTROL; + enum NPCF_EVENTEXPOSURE; + enum NPCF_UE_POLICY_CONTROL; + enum NSMSF_SMS; + enum NNSSF_NSSELECTION; + enum NNSSF_NSSAIAVAILABILITY; + enum NUDR_DR; + enum NLMF_LOC; + enum N5G_EIR_EIC; + enum NBSF_MANAGEMENT; + enum NCHF_SPENDINGLIMITCONTROL; + enum NCHF_CONVERGEDCHARGING; + enum NNWDAF_EVENTSSUBSCRIPTION; + enum NNWDAF_ANALYTICSINFO; + } + } + + typedef UriScheme { + type enumeration { + enum HTTP; + enum HTTPS; + } + } + + typedef NFServiceStatus { + type enumeration { + enum REGISTERED; + enum SUSPENDED; + enum UNDISCOVERABLE; + } + } + + grouping ChfServiceInfo { + leaf primaryChfServiceInstance { + description "Shall be present if the CHF service instance serves as a + secondary CHF instance of another primary CHF service instance."; + //conditional to support + type string; + } + + leaf secondaryChfServiceInstance { + description "Shall be present if the CHF service instance serves as a + primary CHF instance of another secondary CHF service instance."; + //conditional to support + type string; + } + } +} \ No newline at end of file diff --git a/yang-models/_3gpp-5gc-nrm-ngeirfunction.yang b/yang-models/_3gpp-5gc-nrm-ngeirfunction.yang new file mode 100755 index 000000000..9edbd01f0 --- /dev/null +++ b/yang-models/_3gpp-5gc-nrm-ngeirfunction.yang @@ -0,0 +1,80 @@ +module _3gpp-5gc-nrm-ngeirfunction { + yang-version 1.1; + + namespace urn:3gpp:sa5:_3gpp-5gc-nrm-ngeirfunction; + prefix ngeir3gpp; + + import _3gpp-common-managed-function { prefix mf3gpp; } + import _3gpp-common-managed-element { prefix me3gpp; } + import _3gpp-common-yang-types { prefix types3gpp; } + import _3gpp-5g-common-yang-types { prefix types5g3gpp; } + import _3gpp-common-top { prefix top3gpp; } + + organization "3gpp SA5"; + contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; + description "This IOC represents the 5G-EIR function in 5GC. For more + information about the 5G-EIR, see 3GPP TS 23.501."; + reference "3GPP TS 28.541"; + + revision 2020-11-05 { reference CR-0412 ; } + revision 2019-10-25 { reference "S5-194457 S5-195427 S5-193518"; } + + revision 2019-05-15 {reference "initial revision"; } + + grouping NGEIRFunctionGrp { + description "Represents the NGEIRFunction IOC"; + uses mf3gpp:ManagedFunctionGrp; + + list pLMNIdList { + description "List of at most six entries of PLMN Identifiers, but at + least one (the primary PLMN Id). + The PLMN Identifier is composed of a Mobile Country Code (MCC) and + a Mobile Network Code (MNC)."; + + min-elements 1; + max-elements 6; + key "mcc mnc"; + uses types3gpp:PLMNId; + } + + list sNSSAIList { + description "List of S-NSSAIs the managed object is capable of supporting. + (Single Network Slice Selection Assistance Information) + An S-NSSAI has an SST (Slice/Service type) and an optional SD + (Slice Differentiator) field."; + //optional support + reference "3GPP TS 23.003"; + key "sd sst"; + uses types5g3gpp:SNssai; + } + + list managedNFProfile { + key idx; + min-elements 1; + max-elements 1; + uses types3gpp:ManagedNFProfile; + } + + list commModelList { + min-elements 1; + key "groupId"; + description "Specifies a list of commModel. It can be used by NF and + NF services to interact with each other in 5G Core network "; + reference "3GPP TS 23.501"; + uses types5g3gpp:CommModel; + } + } + + augment "/me3gpp:ManagedElement" { + list NGEIRFunction { + description "5G Core NGEIR Function"; + reference "3GPP TS 28.541"; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses NGEIRFunctionGrp; + } + uses mf3gpp:ManagedFunctionContainedClasses; + } + } +} \ No newline at end of file diff --git a/yang-models/_3gpp-5gc-nrm-nrffunction.yang b/yang-models/_3gpp-5gc-nrm-nrffunction.yang new file mode 100755 index 000000000..62e0ca74c --- /dev/null +++ b/yang-models/_3gpp-5gc-nrm-nrffunction.yang @@ -0,0 +1,88 @@ +module _3gpp-5gc-nrm-nrffunction { + yang-version 1.1; + + namespace urn:3gpp:sa5:_3gpp-5gc-nrm-nrffunction; + prefix nrf3gpp; + + import _3gpp-common-managed-function { prefix mf3gpp; } + import _3gpp-common-managed-element { prefix me3gpp; } + import ietf-inet-types { prefix inet; } + import _3gpp-common-yang-types { prefix types3gpp; } + import _3gpp-5gc-nrm-nfprofile { prefix nfp3gpp; } + import _3gpp-common-top { prefix top3gpp; } + import _3gpp-5g-common-yang-types { prefix types5g3gpp; } + + organization "3gpp SA5"; + contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; + description "This IOC represents the NRF function in 5GC. + For more information about the NRF, see 3GPP TS 23.501 [2]."; + reference "3GPP TS 28.541"; + + revision 2020-11-05 { reference CR-0412 ; } + revision 2020-08-03 { reference "CR-0321"; } + revision 2019-10-28 { reference S5-193518 ; } + revision 2019-05-15 { reference "initial revision"; } + + grouping NRFFunctionGrp { + description "Represents the NRFFunction IOC"; + uses mf3gpp:ManagedFunctionGrp; + + list pLMNIdList { + description "List of at most six entries of PLMN Identifiers, but at + least one (the primary PLMN Id). + The PLMN Identifier is composed of a Mobile Country Code (MCC) and a + Mobile Network Code (MNC)."; + + min-elements 1; + max-elements 6; + key "mcc mnc"; + uses types3gpp:PLMNId; + } + + leaf sBIFQDN { + description "The FQDN of the registered NF instance in the service-based + interface."; + type inet:domain-name; + } + + leaf-list cNSIIdList { + description "NSI ID. NSI ID is an identifier for identifying the Core + Network part of a Network Slice instance when multiple Network Slice + instances of the same Network Slice are deployed, and there is a need + to differentiate between them in the 5GC, see clause 3.1 of TS 23.501 + and subclause 6.1.6.2.7 of 3GPP TS 29.531"; + type string; + } + + list sNSSAIList { + description "List of S-NSSAIs the managed object is capable of supporting. + (Single Network Slice Selection Assistance Information) + An S-NSSAI has an SST (Slice/Service type) and an optional SD + (Slice Differentiator) field."; + //optional support + reference "3GPP TS 23.003"; + key "sd sst"; + uses types5g3gpp:SNssai; + } + + list nFProfileList { + description "Set of NFProfile(s) to be registered in the NRF instance."; + //optional support + key nfInstanceID; + uses nfp3gpp:NFProfileGrp; + } + } + + augment "/me3gpp:ManagedElement" { + list NRFFunction { + description "5G Core NRF Function"; + reference "3GPP TS 28.541"; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses NRFFunctionGrp; + } + uses mf3gpp:ManagedFunctionContainedClasses; + } + } +} \ No newline at end of file diff --git a/yang-models/_3gpp-5gc-nrm-nssffunction.yang b/yang-models/_3gpp-5gc-nrm-nssffunction.yang new file mode 100755 index 000000000..b68d988ec --- /dev/null +++ b/yang-models/_3gpp-5gc-nrm-nssffunction.yang @@ -0,0 +1,87 @@ +module _3gpp-5gc-nrm-nssffunction { + yang-version 1.1; + + namespace urn:3gpp:sa5:_3gpp-5gc-nrm-nssffunction; + prefix nssf3gpp; + + import _3gpp-common-managed-function { prefix mf3gpp; } + import _3gpp-common-managed-element { prefix me3gpp; } + import ietf-inet-types { prefix inet; } + import _3gpp-common-yang-types { prefix types3gpp; } + import _3gpp-common-top { prefix top3gpp; } + import _3gpp-5g-common-yang-types { prefix types5g3gpp; } + + organization "3gpp SA5"; + contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; + description "This IOC represents the NSSF function in 5GC. For more + information about the NSSF, see 3GPP TS 23.501."; + reference "3GPP TS 28.541"; + + revision 2020-11-05 { reference CR-0412 ; } + revision 2020-08-03 { reference "CR-0321"; } + revision 2019-10-25 { reference "S5-194457 S5-195427 S5-193518"; } + revision 2019-05-15 { reference "initial revision"; } + + grouping NSSFFunctionGrp { + description "Represents the NSSFFunction IOC"; + uses mf3gpp:ManagedFunctionGrp; + + list pLMNIdList { + description "List of at most six entries of PLMN Identifiers, but at least + one (the primary PLMN Id). + The PLMN Identifier is composed of a Mobile Country Code (MCC) and a + Mobile Network Code (MNC)."; + + min-elements 1; + max-elements 6; + key "mcc mnc"; + uses types3gpp:PLMNId; + } + + leaf sBIFQDN { + description "The FQDN of the registered NF instance in the service-based + interface."; + type inet:domain-name; + } + + list sNSSAIList { + description "List of S-NSSAIs the managed object is capable of supporting. + (Single Network Slice Selection Assistance Information) + An S-NSSAI has an SST (Slice/Service type) and an optional SD + (Slice Differentiator) field."; + + reference "3GPP TS 23.003"; + key "sd sst"; + uses types5g3gpp:SNssai; + } + + leaf-list cNSIIdList { + description "NSI ID. NSI ID is an identifier for identifying the Core + Network part of a Network Slice instance when multiple Network Slice + instances of the same Network Slice are deployed, and there is a need + to differentiate between them in the 5GC, see clause 3.1 of TS 23.501 + and subclause 6.1.6.2.7 of 3GPP TS 29.531"; + type string; + } + + list managedNFProfile { + key idx; + min-elements 1; + max-elements 1; + uses types3gpp:ManagedNFProfile; + } + } + + augment "/me3gpp:ManagedElement" { + list NSSFFunction { + description "5G Core NSSF Function"; + reference "3GPP TS 28.541"; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses NSSFFunctionGrp; + } + uses mf3gpp:ManagedFunctionContainedClasses; + } + } +} \ No newline at end of file diff --git a/yang-models/_3gpp-5gc-nrm-nwdaffunction.yang b/yang-models/_3gpp-5gc-nrm-nwdaffunction.yang new file mode 100755 index 000000000..bf143ba35 --- /dev/null +++ b/yang-models/_3gpp-5gc-nrm-nwdaffunction.yang @@ -0,0 +1,86 @@ +module _3gpp-5gc-nrm-nwdaffunction { + yang-version 1.1; + + namespace urn:3gpp:sa5:_3gpp-5gc-nrm-nwdaffunction; + prefix nwdaf3gpp; + + import _3gpp-common-managed-function { prefix mf3gpp; } + import _3gpp-common-managed-element { prefix me3gpp; } + import ietf-inet-types { prefix inet; } + import _3gpp-common-yang-types { prefix types3gpp; } + import _3gpp-5g-common-yang-types { prefix types5g3gpp; } + import _3gpp-common-top { prefix top3gpp; } + + organization "3gpp SA5"; + contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; + description "This IOC represents the NWDAF function in 5GC. For more information about the NWDAF, see 3GPP TS 23.501."; + reference "3GPP TS 28.541"; + + revision 2020-11-05 { reference CR-0412 ; } + revision 2019-10-25 { reference "S5-194457 S5-195427 S5-193518"; } + + revision 2019-05-15 {reference "initial revision"; } + + grouping NWDAFFunctionGrp { + description "Represents the NWDAFFunction IOC"; + uses mf3gpp:ManagedFunctionGrp; + + list pLMNIdList { + description "List of at most six entries of PLMN Identifiers, but at + least one (the primary PLMN Id). + The PLMN Identifier is composed of a Mobile Country Code (MCC) and a + Mobile Network Code (MNC)."; + + min-elements 1; + max-elements 6; + key "mcc mnc"; + uses types3gpp:PLMNId; + } + + leaf sBIFQDN { + description "The FQDN of the registered NF instance in the service-based + interface."; + type inet:domain-name; + } + + list sNSSAIList { + description "List of S-NSSAIs the managed object is capable of supporting. + (Single Network Slice Selection Assistance Information) + An S-NSSAI has an SST (Slice/Service type) and an optional SD + (Slice Differentiator) field."; + //optional support + reference "3GPP TS 23.003"; + key "sd sst"; + uses types5g3gpp:SNssai; + } + + list managedNFProfile { + key idx; + min-elements 1; + max-elements 1; + uses types3gpp:ManagedNFProfile; + } + + list commModelList { + min-elements 1; + key "groupId"; + description "Specifies a list of commModel. It can be used by NF and + NF services to interact with each other in 5G Core network "; + reference "3GPP TS 23.501"; + uses types5g3gpp:CommModel; + } + } + + augment "/me3gpp:ManagedElement" { + list NWDAFFunction { + description "5G Core NWDAF Function"; + reference "3GPP TS 28.541"; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses NWDAFFunctionGrp; + } + uses mf3gpp:ManagedFunctionContainedClasses; + } + } +} \ No newline at end of file diff --git a/yang-models/_3gpp-5gc-nrm-pcffunction.yang b/yang-models/_3gpp-5gc-nrm-pcffunction.yang new file mode 100755 index 000000000..a7f9bd152 --- /dev/null +++ b/yang-models/_3gpp-5gc-nrm-pcffunction.yang @@ -0,0 +1,97 @@ +module _3gpp-5gc-nrm-pcffunction { + yang-version 1.1; + + namespace urn:3gpp:sa5:_3gpp-5gc-nrm-pcffunction; + prefix pcf3gpp; + + import _3gpp-common-managed-function { prefix mf3gpp; } + import _3gpp-common-managed-element { prefix me3gpp; } + import ietf-inet-types { prefix inet; } + import _3gpp-common-yang-types { prefix types3gpp; } + import _3gpp-5g-common-yang-types { prefix types5g3gpp; } + import _3gpp-common-top { prefix top3gpp; } + + organization "3gpp SA5"; + contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; + description "This IOC represents the PCF function in 5GC. For more + information about the PCF, see 3GPP TS 23.501."; + reference "3GPP TS 28.541"; + + revision 2020-11-05 { reference CR-0412 ; } + revision 2020-08-06 { reference "CR-0333"; } + revision 2020-08-06 { reference "CR-0331"; } + revision 2019-10-25 { reference "S5-194457 S5-193518"; } + revision 2019-05-22 { reference "initial revision"; } + + grouping PCFFuntionGrp { + description "Represents the PCFFuntion IOC"; + uses mf3gpp:ManagedFunctionGrp; + + list pLMNIdList { + description "List of at most six entries of PLMN Identifiers, but at + least one (the primary PLMN Id). + The PLMN Identifier is composed of a Mobile Country Code (MCC) and a + Mobile Network Code (MNC)."; + + min-elements 1; + max-elements 6; + key "mcc mnc"; + uses types3gpp:PLMNId; + } + + leaf sBIFQDN { + description "The FQDN of the registered NF instance in the service-based + interface."; + type inet:domain-name; + } + + list sNSSAIList { + description "List of S-NSSAIs the managed object is capable of supporting. + (Single Network Slice Selection Assistance Information) + An S-NSSAI has an SST (Slice/Service type) and an optional SD + (Slice Differentiator) field."; + //optional support + reference "3GPP TS 23.003"; + key "sd sst"; + uses types5g3gpp:SNssai; + } + + list managedNFProfile { + key idx; + min-elements 1; + max-elements 1; + uses types3gpp:ManagedNFProfile; + } + list commModelList { + min-elements 1; + key "groupId"; + description "Specifies a list of commModel. It can be used by NF and + NF services to interact with each other in 5G Core network "; + reference "3GPP TS 23.501"; + uses types5g3gpp:CommModel; + } + leaf dynamic5QISetRef { + type types3gpp:DistinguishedName; + description "DN of the Dynamic5QISet that the PCFFunction supports + (is associated to)."; + } + leaf configurable5QISetRef { + type types3gpp:DistinguishedName; + description "DN of the Configurable5QISet that the PCFFunction supports + (is associated to)."; + } + } + + augment "/me3gpp:ManagedElement" { + list PCFFunction { + description "5G Core PCF Function"; + reference "3GPP TS 28.541"; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses PCFFuntionGrp; + } + uses mf3gpp:ManagedFunctionContainedClasses; + } + } +} \ No newline at end of file diff --git a/yang-models/_3gpp-5gc-nrm-predefinedpccruleset.yang b/yang-models/_3gpp-5gc-nrm-predefinedpccruleset.yang new file mode 100755 index 000000000..ac3faf5c6 --- /dev/null +++ b/yang-models/_3gpp-5gc-nrm-predefinedpccruleset.yang @@ -0,0 +1,642 @@ +module _3gpp-5gc-nrm-predefinedpccruleset { + yang-version 1.1; + + namespace urn:3gpp:sa5:_3gpp-5gc-nrm-predefinedpccruleset; + prefix PredPccRules3gpp; + + import _3gpp-common-managed-element { prefix me3gpp; } + import _3gpp-common-top { prefix top3gpp; } + import _3gpp-5gc-nrm-smffunction { prefix smf3gpp; } + import _3gpp-5gc-nrm-pcffunction { prefix pcf3gpp; } + import ietf-yang-types { prefix yang; } + + organization "3gpp SA5"; + contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; + description "This IOC represents the predefined PCC rules, which are + configured to SMF and referenced by PCF."; + reference "3GPP TS 28.541"; + + revision 2020-09-30 { reference "CR-0393"; } + revision 2020-08-21 { reference "CR-0330"; } + + grouping TscaiInputContainer { + description "It specifies the transports TSCAI input parameters for TSC + traffic at the ingress interface of the DS-TT/UE for a PCC rule."; + reference " 3GPP TS 29.512"; + leaf periodicity { + type uint32; + description "It identifies the time period between the start of two bursts + in reference to the TSN GM."; + reference "3GPP TS 29.571."; + } + leaf burstArrivalTime { + type yang:date-and-time; + description "It Indicates the arrival time (in date-time format) of the + data burst in reference to the TSN GM."; + reference "3GPP,TS 29.571."; + } + } + + grouping ConditionData { + description "It specifies the specifies the condition data for a PCC rule."; + leaf condId { + type string; + mandatory true; + description "It uniquely identifies the condition data."; + } + leaf activationTime { + type yang:date-and-time; + description " It indicates the time (in date-time format) when the decision + data shall be activated."; + reference "3GPP29.512 and TS 29.571."; + } + leaf deactivationTime { + type yang:date-and-time; + description "It indicates the time (in date-time format) when the decision + data shall be deactivated."; + reference "3GPPTS 29.512 and TS 29.571."; + } + leaf accessType { + type enumeration { + enum 3GPP_ACCESS; + enum NON_3GPP_ACCESS; + } + description "It provides the condition of access type of the UE when the + session AMBR shall be enforced."; + reference "3GPPTS 29.512."; + } + leaf ratType { + type enumeration { + enum NR; + enum EUTRA; + enum WLAN; + enum VIRTUAL; + enum NBIOT; + enum WIRELINE; + enum WIRELINE_CABLE; + enum WIRELINE_BBF; + enum LTE-M; + enum NR_U; + enum EUTRA_U; + enum TRUSTED_N3GA; + enum TRUSTED_WLAN; + enum UTRA; + enum GERA; + } + description "It provides the condition of RAT type of the UE when the + session AMBR shall be enforced."; + reference "3GPPTS 29.512 and TS 29.571."; + } + } + + grouping SteeringMode { + description "It specifies the traffic distribution rule, see TS 29.512."; + leaf steerModeValue { + type enumeration { + enum ACTIVE_STANDBY; + enum LOAD_BALANCING; + enum SMALLEST_DELAY; + enum PRIORITY_BASED; + } + mandatory true; + description "It indicates the value of the steering mode, see TS 29.512."; + } + leaf active { + type enumeration { + enum 3GPP_ACCESS; + enum NON_3GPP_ACCESS; + } + description "It indicates the active access, see TS 29.571."; + } + leaf standby { + type enumeration { + enum 3GPP_ACCESS; + enum NON_3GPP_ACCESS; + } + description "It indicates the Standby access, see TS 29.571."; + } + leaf threeGLoad { + type uint8 { + range 0..100; + } + description "It indicates the traffic load to steer to the 3GPP Access + expressed in one percent."; + } + leaf prioAcc { + type enumeration { + enum 3GPP_ACCESS; + enum NON_3GPP_ACCESS; + } + description "It indicates the high priority access."; + reference "3GPPTS 29.571"; + } + } + + grouping UpPathChgEvent { + description "It specifies the information about the AF subscriptions of the + UP path change."; + reference "3GPPTS 29.512"; + leaf notificationUri { + type string; + mandatory true; + description "It provides notification address (Uri) of AF receiving the + event notification."; + } + leaf notifCorreId { + type string; + mandatory true; + description "It is used to set the value of Notification Correlation ID in + the notification sent by the SMF, see TS 29.512"; + } + leaf dnaiChgType { + type enumeration { + enum EARLY; + enum EARLY_LATE; + enum LATE; + } + mandatory true; + description "It indicates the type of DNAI change, see TS 29.512"; + } + leaf afAckInd { + type boolean; + default false; + description "It identifies whether the AF acknowledgement of UP path + event notification is expected."; + } + } + + grouping RouteInformation { + description "It specifies the traffic routing information."; + leaf ipv4Addr { + type string; + description "It defines the Ipv4 address of the tunnel end point in the + data network, formatted in the dotted decimal notation."; + } + leaf ipv6Addr { + type string; + description "It defines the Ipv6 address of the tunnel end point in the + data network."; + } + leaf portNumber { + type uint32; + mandatory true; + description " It defines the UDP port number of the tunnel end point in + the data network, see TS 29.571"; + } + } + + grouping RouteToLocation { + description "It specifies a list of location which the traffic shall be + routed to for the AF request."; + leaf dnai { + type string; + mandatory true; + description "It represents the DNAI (Data network access identifier)."; + reference "3GPP 3GPP TS 23.501"; + } + container routeInfo{ + description "It provides the traffic routing information."; + uses RouteInformation; + } + leaf routeProfId { + type string; + description "It identifies the routing profile."; + } + } + + grouping RedirectInformaton { + description "It specifies the redirect information for traffic control in + the PCC rule."; + leaf redirectEnabled { + type boolean; + mandatory true; + description "It indicates whether the redirect instruction is enabled."; + } + leaf redirectAddressType { + type enumeration { + enum IPV4_ADDR; + enum IPV6_ADDR; + enum URL; + enum SIP_URI; + } + mandatory true; + description "It indicates the type of redirect address."; + reference "3GPPTS 29.512"; + } + leaf redirectServerAddress { + type string; + mandatory true; + description "It indicates the address of the redirect server."; + } + } + + grouping TrafficControlDataInformation { + description "It specifies the traffic control data for a service + flow of a PCC rule."; + leaf tcId { + type string; + mandatory true; + description "It univocally identifies the traffic control policy data + within a PDU session."; + } + leaf flowStatus { + type enumeration { + enum ENABLED-UPLINK; + enum ENABLED-DOWNLINK; + enum ENABLED; + enum DISABLED; + enum REMOVED; + } + mandatory true; + description "It represents whether the service data flow(s) are enabled + or disabled."; + } + container redirectInfo { + description "It contains the redirect information indicating whether the + detected application traffic should be redirected to another controlled + address."; + uses RedirectInformaton; + } + container addRedirectInfo { + description "It contains the additional redirect information indicating + whether the detected application traffic should be redirected to another + controlled address."; + list redirectInfo { + description "The list of redirect information indicating whether the + detected application traffic should be redirected to another + controlled address."; + key "redirectServerAddress"; + uses RedirectInformaton; + } + } + leaf muteNotif { + type boolean; + default false; + description "It indicates whether applicat'on's start or stop notification + is to be muted."; + } + leaf trafficSteeringPolIdDl { + type string; + description "It references to a pre-configured traffic steering policy for downlink traffic at the SMF, see TS 29.512"; + } + leaf trafficSteeringPolIdUl { + type string; + mandatory false; + description "It references to a pre-configured traffic steering policy for + uplink traffic at the SMF, see TS 29.512"; + } + container routeToLocs { + description "It provides a list of location which the traffic shall be + routed to for the AF request."; + list routeToLoc { + description "The list of location which the traffic shall be routed to + for the AF request."; + key "dnai"; + uses RouteToLocation; + } + } + uses UpPathChgEvent; + leaf steerFun { + type enumeration { + enum MPTCP; + enum ATSSS_LL; + } + description "It indicates the applicable traffic steering functionality."; + reference "3GPPTS 29.512"; + } + container steerModeDl { + description "It provides the traffic distribution rule across 3GPP and + Non-3GPP accesses to apply for downlink traffic."; + uses SteeringMode; + } + container steerModeUl { + description "It provides the traffic distribution rule across 3GPP and Non-3GPP accesses to apply for uplink traffic."; + uses SteeringMode; + } + leaf mulAccCtrl { + type enumeration { + enum ALLOWED; + enum NOT_ALLOWED; + } + description "It indicates whether the service data flow, corresponding to the service data flow template, is allowed or not allowed."; + } + } + + grouping ARP { + description "It specifies the allocation and retention priority of a QoS control policy."; + leaf priorityLevel { + type uint8 { + range 1..15; + } + mandatory true; + description "It defines the relative importance of a resource request."; + } + leaf preemptCap { + type enumeration { + enum NOT_PREEMPT; + enum MAY_PREEMPT; + } + mandatory true; + description "It defines whether a service data flow may get resources that were already assigned to another service data flow with a lower priority level."; + } + leaf preemptVuln { + type enumeration { + enum NOT_PREEMPTABLE; + enum PREEMPTABLE; + } + mandatory true; + description "It defines whether a service data flow may lose the resources assigned to it in order to admit a service data flow with higher priority level."; + } + } + + grouping QosDataInformation { + description "It specifies the QoS control policy data for a service flow of a PCC rule."; + leaf qosId { + type string; + mandatory true; + description "It identifies the QoS control policy data for a PCC rule."; + } + leaf fiveQIValue { + type uint8 { + range 0..255; + } + mandatory true; + description "It indicates the 5QI value."; + } + leaf maxbrUl { + type string; + description "It represents the maximum uplink bandwidth."; + } + leaf maxbrDl { + type string; + description "It represents the maximum downlink bandwidth."; + } + leaf gbrUl { + type string; + description "It represents the guaranteed uplink bandwidth."; + } + leaf gbrDl { + type string; + description "It represents the guaranteed downlink bandwidth."; + } + uses ARP; + leaf qosNotificationControl { + type boolean; + default false; + description "It indicates whether notifications are requested from 3GPP NG-RAN when the GFBR can no longer (or again) be guaranteed for a QoS Flow during the lifetime of the QoS Flow."; + } + leaf reflectiveQos { + type boolean; + default false; + description "Indicates whether the QoS information is reflective for the corresponding non-GBR service data flow"; + } + leaf sharingKeyDl { + type string; + description "It indicates, by containing the same value, what PCC rules may share resource in downlink direction."; + } + leaf sharingKeyUl { + type string; + description "It indicates, by containing the same value, what PCC rules may share resource in uplink direction."; + } + leaf maxPacketLossRateDl { + type uint16 { + range 0..1000; + } + description "It indicates the downlink maximum rate for lost packets that can be tolerated for the service data flow."; + } + leaf maxPacketLossRateUl { + type uint16 { + range 0..1000; + } + description "It indicates the uplink maximum rate for lost packets that can be tolerated for the service data flow."; + } + leaf extMaxDataBurstVol { + type uint32 { + range 4096..2000000; + } + description "It denotes the largest amount of data that is required to be transferred within a period of 5G-AN PDB, see TS 29.512"; + } + } + + grouping EthFlowDescription { + description "It describes an Ethernet flow."; + leaf destMacAddr { + type string; + mandatory true; + description "It specifies the destination MAC address formatted in the + hexadecimal ."; + reference "clause 1.1 and clause 2.1 of IETF RFC"; + } + leaf ethType { + type string; + mandatory true; + description "A two-octet string that represents the Ethertype."; + reference "IEEE 802.3 and IETF RFC 7042 in hexadecimal representation."; + } + leaf fDesc { + type string; + description "It contains the flow description for the Uplink or Downlink IP flow. It shall be present when the ethtype is IP."; + } + leaf fDir { + type enumeration { + enum DOWNLINK; + enum UPLINK; + } + mandatory true; + description "It indicates the packet filter direction."; + } + leaf sourceMacAddr { + type string; + mandatory true; + description "It specifies the source MAC address formatted in the + hexadecimal notation."; + reference "clause 1.1 and clause 2.1 of IETF RFC 7042"; + } + leaf-list vlanTags { + type string; + description "It specifies the Customer-VLAN and/or Service-VLAN tags + containing the VID, PCP/DEI fields as defined in IEEE 802.1Q and + IETF RFC 7042. The first/lower instance in the array stands for the + Customer-VLAN tag and the second/higher instance in the array stands + for the Service-VLAN tag."; + } + leaf srcMacAddrEnd { + type string; + description "It specifies the source MAC address end. If this attribute is present, the sourceMacAddr attribute specifies the source MAC address start. E.g. srcMacAddrEnd with value 00-10-A4-23-3E-FE and sourceMacAddr with value 00-10-A4-23-3E-02 means all MAC addresses from 00-10-A4-23-3E-02 up to and including 00-10-A4-23-3E-FE."; + } + leaf destMacAddrEnd { + type string; + description "It specifies the destination MAC address end. If this attribute is present, the destMacAddr attribute specifies the destination MAC address start."; + } + } + + grouping FlowInformation { + description "It specifies the flow information of a PCC rule."; + leaf flowDescription { + type string; + mandatory true; + description "It defines a packet filter for an IP flow."; + } + uses EthFlowDescription; + leaf packFiltId { + type string; + mandatory true; + description "It is the identifier of the packet filter."; + } + leaf packetFilterUsage { + type boolean; + default false; + description "It indicates if the packet shall be sent to the UE."; + } + leaf tosTrafficClass { + type string; + mandatory true; + description "It contains the Ipv4 Type-of-Service and mask field or the Ipv6 Traffic-Class field and mask field."; + } + leaf spi { + type string; + mandatory true; + description "It is the security parameter index of the IPSec packet."; + reference "IETF RFC 4301"; + } + leaf flowLabel { + type string; + description "It specifies the Ipv6 flow label header field."; + } + leaf flowDirection { + type enumeration { + enum DOWNLINK; + enum UPLINK; + enum BIDIRECTIONAL; + enum UNSPECIFIED; + } + mandatory true; + description "It indicates the direction/directions that a filter is applicable."; + } + } + + grouping PccRule { + description "It specifies the PCC rule, see TS 29.512"; + leaf pccRuleId { + type string; + mandatory true; + description "It identifies the PCC rule."; + } + container flowInfoList { + description "It is a list of IP flow packet filter information."; + list flowInfo { + description "The list of IP flow packet filter information."; + key "packFiltId"; + uses FlowInformation; + } + } + leaf applicationId { + type string; + default false; + description "A reference to the application detection filter configured + at the UPF."; + } + leaf appDescriptor { + type string; + description "It is the ATSSS rule application descriptor."; + } + leaf contentVersion { + type uint8; + description "Indicates the content version of the PCC rule."; + } + leaf precedence { + type uint8 { + range 0..255; + } + description "It indicates the order in which this PCC rule is applied + relative to other PCC rules within the same PDU session."; + } + leaf afSigProtocol { + type enumeration { + enum NO_INFORMATION; + enum SIP; + } + description "Indicates the protocol used for signalling between the UE + and the AF, the default value is NO_INFORMATION."; + } + leaf isAppRelocatable { + type boolean; + default false; + mandatory false; + description "It indicates the application relocation possibility, the + default value is NO_INFORMATION."; + } + leaf isUeAddrPreserved { + type boolean; + default false; + description "It Indicates whether UE IP address should be preserved."; + } + container qosData { + description "It contains the QoS control policy data for a PCC rule."; + list qosDataInfo { + description "The list of QoS control policy data."; + key "qosId"; + uses QosDataInformation; + } + } + container altQosParams { + description "It contains the QoS control policy data for the Alternative + QoS parameter sets of the service data flow."; + list qosDataInfo { + description "The list of QoS control policy data."; + key "qosId"; + uses QosDataInformation; + } + } + container trafficControlData { + description "It contains the traffic control policy data for a PCC rule."; + list trafficControlDataInfo { + description "The list of traffic control policy data."; + key "tcId"; + uses TrafficControlDataInformation; + } + } + uses ConditionData; + container tscaiInputUl { + description "It contains transports TSCAI input parameters for TSC traffic at the ingress interface of the DS-TT/UE (uplink flow direction)."; + uses TscaiInputContainer; + + } + container tscaiInputDl { + description "It contains transports TSCAI input parameters for TSC traffic at the ingress of the NW-TT (downlink flow direction)."; + uses TscaiInputContainer; + } + } + + grouping PredefinedPccRuleSetGrp { + description "Represents the PredefinedPccRuleSet IOC."; + list PredefinedPccRules { + description "The list of predefined PCC rules."; + key "pccRuleId"; + uses PccRule; + } + } + + grouping PredefinedPccRuleSetSubtree { + description "It specifies the PredefinedPccRuleSet IOC with inherited attributes."; + list PredefinedPccRuleSet { + description "Specifies the predefined PCC rules."; + key "id"; + uses top3gpp:Top_Grp; + container attributes { + description "It contains the attributes defined specifically in the PredefinedPccRuleSet IOC."; + uses PredefinedPccRuleSetGrp; + } + } + } + + augment "/me3gpp:ManagedElement/smf3gpp:SMFFunction" { + description "It specifies the containment relation of PredefinedPccRuleSet MOI with SMFFunction MOI."; + uses PredefinedPccRuleSetSubtree; + } + + augment "/me3gpp:ManagedElement/pcf3gpp:PCFFunction" { + description "It specifies the containment relation of PredefinedPccRuleSet MOI with PCFFunction MOI."; + uses PredefinedPccRuleSetSubtree; + } +} \ No newline at end of file diff --git a/yang-models/_3gpp-5gc-nrm-scpfunction.yang b/yang-models/_3gpp-5gc-nrm-scpfunction.yang new file mode 100755 index 000000000..aa1f98072 --- /dev/null +++ b/yang-models/_3gpp-5gc-nrm-scpfunction.yang @@ -0,0 +1,50 @@ +module _3gpp-5gc-nrm-scpfunction { + yang-version 1.1; + + namespace urn:3gpp:sa5:_3gpp-5gc-nrm-scpfunction; + prefix scp3gpp; + + import _3gpp-common-managed-function { prefix mf3gpp; } + import _3gpp-common-managed-element { prefix me3gpp; } + import ietf-inet-types { prefix inet; } + import _3gpp-5g-common-yang-types { prefix types5g3gpp; } + import _3gpp-common-top { prefix top3gpp; } + + organization "3gpp SA5"; + description "This IOC represents the SCP function in 5GC. For more information about the SCP, see 3GPP TS 23.501."; + reference "3GPP TS 28.541"; + + revision 2019-10-20 { + description "initial revision"; + reference "Based on + 3GPP TS 28.541 V16.X.XX"; + } + + grouping SCPFunctionGrp { + uses mf3gpp:ManagedFunctionGrp; + + leaf address { + description "The host address of the SCP."; + type inet:host; + } + + list supportedFuncList { + min-elements 1; + key "function"; + uses types5g3gpp:SupportedFunc; + } + + } + + augment "/me3gpp:ManagedElement" { + list SCPFunction { + description "5G Core SCP Function"; + reference "3GPP TS 28.541"; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses SCPFunctionGrp; + } + } + } +} \ No newline at end of file diff --git a/yang-models/_3gpp-5gc-nrm-seppfunction.yang b/yang-models/_3gpp-5gc-nrm-seppfunction.yang new file mode 100755 index 000000000..e4793dd3f --- /dev/null +++ b/yang-models/_3gpp-5gc-nrm-seppfunction.yang @@ -0,0 +1,70 @@ +module _3gpp-5gc-nrm-seppfunction { + yang-version 1.1; + + namespace urn:3gpp:sa5:_3gpp-5gc-nrm-seppfunction; + prefix sepp3gpp; + + import _3gpp-common-managed-function { prefix mf3gpp; } + import _3gpp-common-managed-element { prefix me3gpp; } + import _3gpp-common-yang-types { prefix types3gpp; } + import _3gpp-common-top { prefix top3gpp; } + import ietf-inet-types { prefix inet; } + + organization "3gpp SA5"; + description "This IOC represents the SEPP function which support message filtering + and policing on inter-PLMN control plane interface. For more information about the SEPP, see 3GPP TS 23.501."; + reference "3GPP TS 28.541"; + + revision 2020-08-03 { reference "CR-0321"; } + revision 2019-10-28 { reference S5-193518 ; } + + typedef SEPPType { + reference "3GPP TS 23501"; + type enumeration { + enum CSEPP { + value 0; + description "consumer SEPP"; + } + + enum PSEPP { + value 1; + description "producer SEPP"; + } + } + } + + grouping SEPPFunctionGrp { + uses mf3gpp:ManagedFunctionGrp; + + container pLMNId { + description "PLMN Identifiers of the sepp. + The PLMN Identifier is composed of a Mobile Country Code (MCC) and a Mobile Network Code (MNC)."; + uses types3gpp:PLMNId; + } + + leaf sEPPType { + type sepp3gpp:SEPPType; + } + + leaf sEPPId { + type uint16; + } + + leaf fqdn { + description "The domain name of the SEPP."; + type inet:domain-name; + } + } + + augment "/me3gpp:ManagedElement" { + list SEPPFunction { + description "5G Core SEPP Function"; + reference "3GPP TS 28.541"; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses SEPPFunctionGrp; + } + uses mf3gpp:ManagedFunctionContainedClasses; } + } +} \ No newline at end of file diff --git a/yang-models/_3gpp-5gc-nrm-smffunction.yang b/yang-models/_3gpp-5gc-nrm-smffunction.yang new file mode 100755 index 000000000..04659fb71 --- /dev/null +++ b/yang-models/_3gpp-5gc-nrm-smffunction.yang @@ -0,0 +1,102 @@ +module _3gpp-5gc-nrm-smffunction { + yang-version 1.1; + namespace urn:3gpp:sa5:_3gpp-5gc-nrm-smffunction; + prefix smf3gpp; + + import _3gpp-common-managed-function { prefix mf3gpp; } + import _3gpp-common-managed-element { prefix me3gpp; } + import _3gpp-common-yang-types { prefix types3gpp; } + import _3gpp-5g-common-yang-types { prefix types5g3gpp; } + import ietf-inet-types { prefix inet; } + import _3gpp-common-top { prefix top3gpp; } + + organization "3gpp SA5"; + contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; + description "SMFFunction derived from basic ManagedFunction."; + + revision 2020-11-05 { reference CR-0412 ; } + revision 2020-08-06 { reference "CR-0333"; } + revision 2020-06-03 { reference "CR-0286"; } + revision 2019-10-25 { reference "S5-194457 S5-193518"; } + revision 2019-05-31 {reference "Ericsson refactoring."; } + revision 2018-08-07 { reference "Initial revision";} + + grouping SMFFunctionGrp { + description "Represents the SMFFuntion IOC"; + uses mf3gpp:ManagedFunctionGrp; + + list pLMNIdList { + min-elements 1; + description "A list of PLMN identifiers (Mobile Country Code and Mobile + Network Code)."; + key "mcc mnc"; + uses types3gpp:PLMNId; + } + + leaf-list nRTACList { + description "List of Tracking Area Codes (legacy TAC or extended TAC) + where the represented management function is serving."; + reference "TS 38.413 clause 9.3.3.10"; + min-elements 1; + config false; + type types3gpp:Tac; + } + + leaf sBIFQDN { + description "The FQDN of the registered NF instance in the service-based + interface."; + type inet:domain-name; + } + + list sNSSAIList { + description "List of S-NSSAIs the managed object is capable of supporting. + (Single Network Slice Selection Assistance Information) + An S-NSSAI has an SST (Slice/Service type) and an optional SD + (Slice Differentiator) field."; + reference "3GPP TS 23.003"; + key "sd sst"; + uses types5g3gpp:SNssai; + } + + list managedNFProfile { + key idx; + min-elements 1; + max-elements 1; + uses types3gpp:ManagedNFProfile; + } + + list commModelList { + min-elements 1; + key "groupId"; + description "Specifies a list of commModel. It can be used by NF and + NF services to interact with each other in 5G Core network "; + reference "3GPP TS 23.501"; + uses types5g3gpp:CommModel; + } + + leaf configurable5QISetRef { + type types3gpp:DistinguishedName; + description "DN of the Configurable5QISet that the SMFFunction supports + (is associated to)."; + } + + leaf dynamic5QISetRef { + type types3gpp:DistinguishedName; + description "DN of the Dynamic5QISet that the SMFFunction supports + (is associated to)."; + } + } + + augment "/me3gpp:ManagedElement" { + list SMFFunction { + description "5G Core SMF Function"; + reference "3GPP TS 28.541"; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses SMFFunctionGrp; + } + uses mf3gpp:ManagedFunctionContainedClasses; + } + } +} \ No newline at end of file diff --git a/yang-models/_3gpp-5gc-nrm-smsffunction.yang b/yang-models/_3gpp-5gc-nrm-smsffunction.yang new file mode 100755 index 000000000..720d90417 --- /dev/null +++ b/yang-models/_3gpp-5gc-nrm-smsffunction.yang @@ -0,0 +1,62 @@ +module _3gpp-5gc-nrm-smsffunction { + yang-version 1.1; + + namespace urn:3gpp:sa5:_3gpp-5gc-nrm-smsffunction; + prefix smsf3gpp; + + import _3gpp-common-managed-function { prefix mf3gpp; } + import _3gpp-common-managed-element { prefix me3gpp; } + import _3gpp-common-yang-types { prefix types3gpp; } + import _3gpp-5g-common-yang-types { prefix types5g3gpp; } + import _3gpp-common-top { prefix top3gpp; } + + organization "3gpp SA5"; + description "This IOC represents the SMSF function defined in 3GPP TS 23.501."; + reference "3GPP TS 28.541"; + + revision 2019-10-25 { reference "S5-194457 S5-195427 S5-193518"; } + + revision 2019-05-15 { + description "initial revision"; + + } + + grouping SMSFFunctionGrp { + uses mf3gpp:ManagedFunctionGrp; + + list pLMNIdList { + description "List of at most six entries of PLMN Identifiers, but at least one (the primary PLMN Id). + The PLMN Identifier is composed of a Mobile Country Code (MCC) and a Mobile Network Code (MNC)."; + + min-elements 1; + max-elements 6; + key "mcc mnc"; + uses types3gpp:PLMNId; + } + + list managedNFProfile { + key idx; + min-elements 1; + uses types3gpp:ManagedNFProfile; + } + + list commModelList { + min-elements 1; + key "groupId"; + uses types5g3gpp:CommModel; + } + } + + augment "/me3gpp:ManagedElement" { + list SMSFFunction { + description "5G Core SMSF Function"; + reference "3GPP TS 28.541"; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses SMSFFunctionGrp; + } + uses mf3gpp:ManagedFunctionContainedClasses; + } + } +} \ No newline at end of file diff --git a/yang-models/_3gpp-5gc-nrm-udmfunction.yang b/yang-models/_3gpp-5gc-nrm-udmfunction.yang new file mode 100755 index 000000000..74965272a --- /dev/null +++ b/yang-models/_3gpp-5gc-nrm-udmfunction.yang @@ -0,0 +1,86 @@ +module _3gpp-5gc-nrm-udmfunction { + yang-version 1.1; + + namespace urn:3gpp:sa5:_3gpp-5gc-nrm-udmfunction; + prefix udm3gpp; + + import _3gpp-common-managed-function { prefix mf3gpp; } + import _3gpp-common-managed-element { prefix me3gpp; } + import ietf-inet-types { prefix inet; } + import _3gpp-common-yang-types { prefix types3gpp; } + import _3gpp-5g-common-yang-types { prefix types5g3gpp; } + import _3gpp-common-top { prefix top3gpp; } + + organization "3gpp SA5"; + contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; + description "This IOC represents the UDM function in 5GC. For more + information about the UDM, see 3GPP TS 23.501."; + reference "3GPP TS 28.541"; + + revision 2020-11-05 { reference CR-0412 ; } + revision 2019-10-25 { reference "S5-194457 S5-195427 S5-193518"; } + revision 2019-05-22 { reference "initial revision";} + + grouping UDMFuntionGrp { + description "Represents the UDMFuntion IOC"; + uses mf3gpp:ManagedFunctionGrp; + + list pLMNIdList { + description "List of at most six entries of PLMN Identifiers, but at + least one (the primary PLMN Id). + The PLMN Identifier is composed of a Mobile Country Code (MCC) and a + Mobile Network Code (MNC)."; + + min-elements 1; + max-elements 6; + key "mcc mnc"; + uses types3gpp:PLMNId; + } + + leaf sBIFQDN { + description "The FQDN of the registered NF instance in the service-based + interface."; + type inet:domain-name; + } + + list sNSSAIList { + description "List of S-NSSAIs the managed object is capable of supporting. + (Single Network Slice Selection Assistance Information) + An S-NSSAI has an SST (Slice/Service type) and an optional SD + (Slice Differentiator) field."; + //optional support + reference "3GPP TS 23.003"; + key "sd sst"; + uses types5g3gpp:SNssai; + } + + list managedNFProfile { + key idx; + min-elements 1; + max-elements 1; + uses types3gpp:ManagedNFProfile; + } + + list commModelList { + min-elements 1; + key "groupId"; + description "Specifies a list of commModel. It can be used by NF and + NF services to interact with each other in 5G Core network "; + reference "3GPP TS 23.501"; + uses types5g3gpp:CommModel; + } + } + + augment "/me3gpp:ManagedElement" { + list UDMFunction { + description "5G Core UDM Function"; + reference "3GPP TS 28.541"; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses UDMFuntionGrp; + } + uses mf3gpp:ManagedFunctionContainedClasses; + } + } +} \ No newline at end of file diff --git a/yang-models/_3gpp-5gc-nrm-udrfunction.yang b/yang-models/_3gpp-5gc-nrm-udrfunction.yang new file mode 100755 index 000000000..5eabaac8b --- /dev/null +++ b/yang-models/_3gpp-5gc-nrm-udrfunction.yang @@ -0,0 +1,78 @@ +module _3gpp-5gc-nrm-udrfunction { + yang-version 1.1; + + namespace urn:3gpp:sa5:_3gpp-5gc-nrm-udrfunction; + prefix udr3gpp; + + import _3gpp-common-managed-function { prefix mf3gpp; } + import _3gpp-common-managed-element { prefix me3gpp; } + import ietf-inet-types { prefix inet; } + import _3gpp-common-yang-types { prefix types3gpp; } + import _3gpp-common-top { prefix top3gpp; } + import _3gpp-5g-common-yang-types { prefix types5g3gpp; } + + organization "3gpp SA5"; + contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; + description "This IOC represents the UDR function in 5GC. For more information + about the UDR, see 3GPP TS 23.501."; + reference "3GPP TS 28.541"; + + revision 2020-11-05 { reference CR-0412 ; } + revision 2019-10-25 { reference "S5-194457 S5-195427 S5-193518"; } + + revision 2019-05-22 {reference "initial revision"; } + + grouping UDRFuntionGrp { + description "Representse the UDRFuntion IOC"; + uses mf3gpp:ManagedFunctionGrp; + + list pLMNIdList { + description "List of at most six entries of PLMN Identifiers, but at + least one (the primary PLMN Id). + The PLMN Identifier is composed of a Mobile Country Code (MCC) and a + Mobile Network Code (MNC)."; + + min-elements 1; + max-elements 6; + key "mcc mnc"; + uses types3gpp:PLMNId; + } + + leaf sBIFQDN { + description "The FQDN of the registered NF instance in the service-based + interface."; + type inet:domain-name; + } + + list sNSSAIList { + description "List of S-NSSAIs the managed object is capable of supporting. + (Single Network Slice Selection Assistance Information) + An S-NSSAI has an SST (Slice/Service type) and an optional SD + (Slice Differentiator) field."; + //optional support + reference "3GPP TS 23.003"; + key "sd sst"; + uses types5g3gpp:SNssai; + } + + list managedNFProfile { + key idx; + min-elements 1; + max-elements 1; + uses types3gpp:ManagedNFProfile; + } + } + + augment "/me3gpp:ManagedElement" { + list UDRFunction { + description "5G Core UDR Function"; + reference "3GPP TS 28.541"; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses UDRFuntionGrp; + } + uses mf3gpp:ManagedFunctionContainedClasses; + } + } +} \ No newline at end of file diff --git a/yang-models/_3gpp-5gc-nrm-udsffunction.yang b/yang-models/_3gpp-5gc-nrm-udsffunction.yang new file mode 100755 index 000000000..c0ef6f217 --- /dev/null +++ b/yang-models/_3gpp-5gc-nrm-udsffunction.yang @@ -0,0 +1,79 @@ +module _3gpp-5gc-nrm-udsffunction { + yang-version 1.1; + + namespace urn:3gpp:sa5:_3gpp-5gc-nrm-udsffunction; + prefix udsf3gpp; + + import _3gpp-common-managed-function { prefix mf3gpp; } + import _3gpp-common-managed-element { prefix me3gpp; } + import ietf-inet-types { prefix inet; } + import _3gpp-common-yang-types { prefix types3gpp; } + import _3gpp-common-top { prefix top3gpp; } + import _3gpp-5g-common-yang-types { prefix types5g3gpp; } + + organization "3gpp SA5"; + contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; + description "This IOC represents the UDSF function which can be interacted + with any other 5GC NF defined in 3GPP TS 23.501."; + reference "3GPP TS 28.541"; + + revision 2020-11-05 { reference CR-0412 ; } + revision 2019-10-25 { reference "S5-194457 S5-195427 S5-193518"; } + + revision 2019-05-22 { reference "initial revision"; } + + grouping UDSFFuntionGrp { + description "Represents the UDSFFuntion IOC"; + uses mf3gpp:ManagedFunctionGrp; + + list pLMNIdList { + description "List of at most six entries of PLMN Identifiers, but at + least one (the primary PLMN Id). + The PLMN Identifier is composed of a Mobile Country Code (MCC) and a + Mobile Network Code (MNC)."; + + min-elements 1; + max-elements 6; + key "mcc mnc"; + uses types3gpp:PLMNId; + } + + leaf sBIFQDN { + description "The FQDN of the registered NF instance in the + service-based interface."; + type inet:domain-name; + } + + list sNSSAIList { + description "List of S-NSSAIs the managed object is capable of supporting. + (Single Network Slice Selection Assistance Information) + An S-NSSAI has an SST (Slice/Service type) and an optional SD + (Slice Differentiator) field."; + //optional support + reference "3GPP TS 23.003"; + key "sd sst"; + uses types5g3gpp:SNssai; + } + + list managedNFProfile { + key idx; + min-elements 1; + max-elements 1; + description "Managed Network Function profile"; + reference "3GPP TS 23.501"; + uses types3gpp:ManagedNFProfile; + } + } + + augment "/me3gpp:ManagedElement" { + list UDSFFunction { + description "5G Core UDSF Function"; + reference "3GPP TS 28.541"; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses UDSFFuntionGrp; + } + uses mf3gpp:ManagedFunctionContainedClasses; } + } +} \ No newline at end of file diff --git a/yang-models/_3gpp-5gc-nrm-upffunction.yang b/yang-models/_3gpp-5gc-nrm-upffunction.yang new file mode 100755 index 000000000..1443942e5 --- /dev/null +++ b/yang-models/_3gpp-5gc-nrm-upffunction.yang @@ -0,0 +1,80 @@ +module _3gpp-5gc-nrm-upffunction { + yang-version 1.1; + namespace urn:3gpp:sa5:_3gpp-5gc-nrm-upffunction; + prefix upf3gpp; + + import _3gpp-common-managed-function { prefix mf3gpp; } + import _3gpp-common-managed-element { prefix me3gpp; } + import _3gpp-common-yang-types { prefix types3gpp; } + import _3gpp-5g-common-yang-types { prefix types5g3gpp; } + import _3gpp-common-top { prefix top3gpp; } + + organization "3GPP SA5"; + contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; + description "UPFFunction derived from basic ManagedFunction."; + reference "3GPP TS 28.541 5G Network Resource Model (NRM)"; + + revision 2020-11-05 { reference CR-0412 ; } + revision 2019-10-25 { reference "S5-194457 S5-193518"; } + revision 2019-05-31 { reference "Ericsson refactoring."; } + revision 2018-08-07 { reference "Initial revision"; } + + grouping UPFFunctionGrp { + description "Represents the UPFFunction IOC"; + uses mf3gpp:ManagedFunctionGrp; + + list pLMNIdList { + description "A list of PLMN identifiers (Mobile Country Code and Mobile + Network Code)."; + min-elements 1; + key "mcc mnc"; + uses types3gpp:PLMNId; + } + + leaf-list nRTACList { + description "List of Tracking Area Codes (legacy TAC or extended TAC) + where the represented management function is serving."; + reference "TS 38.413 clause 9.3.3.10"; + min-elements 1; + config false; + type types3gpp:Tac; + } + + list sNSSAIList { + description "List of S-NSSAIs the managed object is capable of supporting. + (Single Network Slice Selection Assistance Information) + An S-NSSAI has an SST (Slice/Service type) and an optional SD + (Slice Differentiator) field."; + reference "3GPP TS 23.003"; + key "sd sst"; + uses types5g3gpp:SNssai; + } + + list managedNFProfile { + key idx; + min-elements 1; + max-elements 1; + reference "3GPP TS 23.003"; + uses types3gpp:ManagedNFProfile; + } + + leaf-list supportedBMOList { + type string; + description "List of supported BMOs (Bridge Managed Objects) required + for integration with TSN system."; + } + } + + augment /me3gpp:ManagedElement { + list UPFFunction { + description "5G Core UPF Function"; + reference "3GPP TS 28.541"; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses UPFFunctionGrp; + } + uses mf3gpp:ManagedFunctionContainedClasses; + } + } +} \ No newline at end of file diff --git a/yang-models/_3gpp-common-ep-rp.yang b/yang-models/_3gpp-common-ep-rp.yang new file mode 100755 index 000000000..0dc1ddc30 --- /dev/null +++ b/yang-models/_3gpp-common-ep-rp.yang @@ -0,0 +1,68 @@ +module _3gpp-common-ep-rp { + yang-version 1.1; + namespace "urn:3gpp:sa5:_3gpp-common-ep-rp"; + prefix "eprp3gpp"; + + import _3gpp-common-yang-types { prefix types3gpp ; } + import ietf-inet-types { prefix inet; } + import _3gpp-common-measurements { prefix meas3gpp; } + + organization "3GPP SA5"; + contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; + description "Common/basic class/grouping to be inherited/reused. + This IOC represents an end point of a link used across a reference + point between two network entities."; + reference + "3GPP TS 28.622 + Generic Network Resource Model (NRM) + Integration Reference Point (IRP); + Information Service (IS) + + 3GPP TS 28.620 + Umbrella Information Model (UIM)"; + + revision 2020-06-08 { reference "CR-0092"; } + + revision 2019-06-17 { + description "Initial revision"; + } + + grouping EP_RPGrp { + description "Abstract class, represents an end point of a link used + across a reference point between two network entities. + + For naming the subclasses of EP_RP, the following rules shall apply: + - The name of the subclassed IOC shall have the form 'EP_', + where is a string that represents the name of the reference point. + Thus, two valid examples of EP_RP subclassed IOC names would be: + EP_S1 and EP_X2."; + + leaf userLabel { + type string; + description "A user-friendly (and user assignable) name of this object."; + } + + leaf farEndEntity { + config false; + type types3gpp:DistinguishedName; + } + } + + grouping EP_Common { + uses EP_RPGrp; + uses meas3gpp:SupportedPerfMetricGroupGrp; + list localAddress { + description "Local IP address and VLAN ID."; + key "ipAddress vlanId"; + min-elements 1; + max-elements 1; + uses types3gpp:AddressWithVlan; + } + + leaf remoteAddress { + description "Remote IP address."; + mandatory true; + type inet:ip-address; + } + } +} \ No newline at end of file diff --git a/yang-models/_3gpp-common-fm.yang b/yang-models/_3gpp-common-fm.yang new file mode 100755 index 000000000..c6b4d33cb --- /dev/null +++ b/yang-models/_3gpp-common-fm.yang @@ -0,0 +1,409 @@ +module _3gpp-common-fm { + yang-version 1.1; + namespace "urn:3gpp:sa5:_3gpp-common-fm"; + prefix "fm3gpp"; + + import ietf-yang-types { prefix yang; } + import _3gpp-common-top { prefix top3gpp; } + import _3gpp-common-yang-types { prefix types3gpp; } + + organization "3GPP SA5"; + contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; + + description "Defines a Fault Management model"; + + reference "3GPP TS 28.623 + Generic Network Resource Model (NRM) + Integration Reference Point (IRP); + Solution Set (SS) definitions + + 3GPP TS 28.622 + Generic Network Resource Model (NRM) + Integration Reference Point (IRP); + Information Service (IS)"; + + revision 2021-06-02 { reference "CR-0130"; } + revision 2020-06-03 { reference "CR-0091"; } + revision 2020-02-24 { + reference "S5-201365"; + } + + typedef eventType { + type enumeration { + enum COMMUNICATIONS_ALARM { + value 2; + } + + enum QUALITY_OF_SERVICE_ALARM { + value 3; + } + + enum PROCESSING_ERROR_ALARM { + value 4; + } + + enum EQUIPMENT_ALARM { + value 5; + } + + enum ENVIRONMENTAL_ALARM { + value 6; + } + + enum INTEGRITY_VIOLATION { + value 7; + } + + enum OPERATIONAL_VIOLATION { + value 8; + } + + enum PHYSICAL_VIOLATIONu { + value 9; + } + + enum SECURITY_SERVICE_OR_MECHANISM_VIOLATION { + value 10; + } + + enum TIME_DOMAIN_VIOLATION { + value 11; + } + } + + description "General category for the alarm."; + } + + typedef severity-level { + type enumeration { + enum CRITICAL { value 3; } + enum MAJOR { value 4; } + enum MINOR { value 5; } + enum WARNING { value 6; } + enum INDETERMINATE { value 7; } + enum CLEARED { value 8; } + } + + description "The possible alarm serverities. + Aligned with ERICSSON-ALARM-MIB."; + } + + grouping AlarmRecordGrp { + description "Contains alarm information of an alarmed object instance. + A new record is created in the alarm list when an alarmed object + instance generates an alarm and no alarm record exists with the same + values for objectInstance, alarmType, probableCause and specificProblem. + When a new record is created the MnS producer creates an alarmId, that + unambiguously identifies an alarm record in the AlarmList. + + Alarm records are maintained only for active alarms. Inactive alarms are + automatically deleted by the MnS producer from the AlarmList. + Active alarms are alarms whose + a) perceivedSeverity is not CLEARED, or whose + b) perceivedSeverity is CLEARED and its ackState is not ACKNOWLEDED."; + + leaf alarmId { + type string; + mandatory true; + description "Identifies the alarmRecord"; + } + + leaf objectInstance { + type string; + config false ; + mandatory true; + } + + leaf notificationId { + type string; + config false ; + mandatory true; + } + + leaf alarmRaisedTime { + type yang:date-and-time ; + config false ; + } + + leaf alarmChangedTime { + type yang:date-and-time ; + config false ; + description "not applicable if related alarm has not changed"; + } + + leaf alarmClearedTime { + type yang:date-and-time ; + config false ; + description "not applicable if related alarm was not cleared"; + } + + leaf alarmType { + type eventType; + config false ; + description "General category for the alarm."; + } + + leaf probableCause { + type string; + config false ; + } + + leaf specificProblem { + type string; + config false ; + reference "ITU-T Recommendation X.733 clause 8.1.2.2."; + } + + leaf perceivedSeverity { + type severity-level; + description "This is Writable only if producer supports consumer + to set perceivedSeverity to CLEARED"; + } + + leaf backedUpStatus { + type string; + config false ; + description "Indicates if an object (the MonitoredEntity) has a back + up. See definition in ITU-T Recommendation X.733 clause 8.1.2.4."; + } + + leaf backUpObject { + type string; + config false ; + } + + leaf trendIndication { + type string; + config false ; + description "Indicates if some observed condition is getting better, + worse, or not changing. "; + reference "ITU-T Recommendation X.733 clause 8.1.2.6."; + } + + grouping ThresholdPackGrp { + leaf thresholdLevel { + type string; + } + leaf thresholdValue { + type string; + } + leaf hysteresis { + type string; + description "The hysteresis has a threshold high and a threshold + low value that are different from the threshold value. + A hysteresis, therefore, defines the threshold-high and + threshold-low levels within which the measurementType value is + allowed to oscillate without triggering the threshold crossing + notification."; + } + } + + grouping ThresholdInfoGrp { + leaf measurementType { + type string; + mandatory true; + } + + leaf direction { + type enumeration { + enum INCREASING; + enum DECREASING; + } + mandatory true; + description " + If it is 'Increasing', the threshold crossing notification is + triggered when the measurement value equals or exceeds a + thresholdValue. + + If it is 'Decreasing', the threshold crossing notification is + triggered when the measurement value equals or below a + thresholdValue."; + } + + uses ThresholdPackGrp; + } + + list thresholdInfo { + config false ; + uses ThresholdInfoGrp; + } + + leaf stateChangeDefinition { + type string; + config false ; + description "Indicates MO attribute value changes. See definition + in ITU-T Recommendation X.733 clause 8.1.2.11."; + } + + leaf monitoredAttributes { + type string; + config false ; + description "Indicates MO attributes whose value changes are being + monitored."; + reference "ITU-T Recommendation X.733 clause 8.1.2.11."; + } + + leaf proposedRepairActions { + type string; + config false ; + description "Indicates proposed repair actions. See definition in + ITU-T Recommendation X.733 clause 8.1.2.12."; + } + + leaf additionalText { + type string; + config false ; + } + + anydata additionalInformation { + config false ; + } + + leaf rootCauseIndicator { + type enumeration { + enum YES; + enum NO; + } + config false ; + description "It indicates that this AlarmInformation is the root cause + of the events captured by the notifications whose identifiers are in + the related CorrelatedNotification instances."; + } + + leaf ackTime { + type yang:date-and-time ; + config false ; + description "It identifies the time when the alarm has been + acknowledged or unacknowledged the last time, i.e. it registers the + time when ackState changes."; + } + + leaf ackUserId { + type string; + description "It identifies the last user who has changed the + Acknowledgement State."; + } + + leaf ackSystemId { + type string; + description "It identifies the system (Management System) that last + changed the ackState of an alarm, i.e. acknowledged or unacknowledged + the alarm."; + } + + leaf ackState { + type enumeration { + enum ACKNOWLEDGED { + description "The alarm has been acknowledged."; + } + enum UNACKNOWLEDGED { + description "The alarm has unacknowledged or the alarm has never + been acknowledged."; + } + } + } + + leaf clearUserId { + type string; + description "Carries the identity of the user who invokes the + clearAlarms operation."; + } + + leaf clearSystemId { + type string; + } + + leaf serviceUser { + type string; + config false ; + description "It identifies the service-user whose request for service + provided by the serviceProvider led to the generation of the + security alarm."; + } + + leaf serviceProvider { + type string; + config false ; + description "It identifies the service-provider whose service is + requested by the serviceUser and the service request provokes the + generation of the security alarm."; + } + + leaf securityAlarmDetector { + type string; + config false ; + } + } + + grouping AlarmListGrp { + description "Represents the AlarmList IOC."; + + leaf administrativeState { + type types3gpp:AdministrativeState ; + default LOCKED; + description "When set to UNLOCKED, the alarm list is updated. + When the set to LOCKED, the existing alarm records are not + updated, and new alarm records are not added to the alarm list."; + } + + leaf operationalState { + type types3gpp:OperationalState ; + default DISABLED; + config false; + description "The producer sets this attribute to ENABLED, indicating + that it has the resource and ability to record alarm in AlarmList + else, it sets the attribute to DISABLED."; + } + + leaf numOfAlarmRecords { + type uint32 ; + config false; + mandatory true; + description "The number of alarm records in the AlarmList"; + } + + leaf lastModification { + type yang:date-and-time ; + config false; + description "The last time when an alarm record was modified"; + } + + list alarmRecords { + key alarmId; + description "List of alarmRecords"; + uses AlarmRecordGrp; + } + } + + grouping FmSubtree { + description "Contains FM related classes. + Should be used in all classes (or classes inheriting from) + - SubNetwork + - ManagedElement + + If some YAM wants to augment these classes/list/groupings they must + augment all user classes!"; + + list AlarmList { + key id; + max-elements 1; + description "The AlarmList represents the capability to store and manage + alarm records. The management scope of an AlarmList is defined by all + descendant objects of the base managed object, which is the object + name-containing the AlarmList, and the base object itself. + + AlarmList instances are created by the system or are pre-installed. + They cannot be created nor deleted by MnS consumers. + + When the alarm list is locked or disabled, the existing alarm records + are not updated, and new alarm records are not added to the alarm list"; + + + uses top3gpp:Top_Grp ; + container attributes { + uses AlarmListGrp ; + } + } + } + +} \ No newline at end of file diff --git a/yang-models/_3gpp-common-managed-element.yang b/yang-models/_3gpp-common-managed-element.yang new file mode 100755 index 000000000..33acde382 --- /dev/null +++ b/yang-models/_3gpp-common-managed-element.yang @@ -0,0 +1,248 @@ +module _3gpp-common-managed-element { + yang-version 1.1; + namespace urn:3gpp:sa5:_3gpp-common-managed-element; + prefix "me3gpp"; + + import _3gpp-common-yang-types { prefix types3gpp ; } + import _3gpp-common-top { prefix top3gpp; } + import _3gpp-common-measurements { prefix meas3gpp; } + import _3gpp-common-subscription-control { prefix subscr3gpp; } + import _3gpp-common-fm { prefix fm3gpp; } + import _3gpp-common-trace { prefix trace3gpp; } + + organization "3GPP SA5"; + contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; + + description "Defines ManagedElement which will be augmented + by other IOCs"; + reference "3GPP TS 28.623 + Generic Network Resource Model (NRM) + Integration Reference Point (IRP); + Solution Set (SS) definitions + + 3GPP TS 28.622 + Generic Network Resource Model (NRM) + Integration Reference Point (IRP); + Information Service (IS) + + 3GPP TS 28.620 + Umbrella Information Model (UIM)"; + + revision 2021-01-16 { reference "CR-0120"; } + revision 2020-08-06 { reference "CR-0102"; } + revision 2020-08-03 { reference "CR-0095"; } + revision 2020-06-08 { reference "CR-0092"; } + revision 2020-05-12 { reference "CR0084"; } + revision 2020-02-24 { reference "S5-201365"; } + revision 2019-06-17 { reference " S5-203316"; } + revision 2019-05-08 { reference "Initial revision"; } + + feature MeasurementsUnderManagedElement { + description "The MeasurementSubtree shall be contained under + ManagedElement"; + } + + feature SubscriptionControlUnderManagedElement { + description "The SubscriptionControlSubtree shall be contained under + ManagedElement"; + } + + feature FmUnderManagedElement { + description "The FmSubtree shall be contained under ManagedElement"; + } + + feature TraceUnderManagedElement { + description "The TraceSubtree shall be contained under ManageElement"; + } + + feature DESManagementFunction { + description "Class representing Distributed SON or Domain-Centralized SON + Energy Saving feature. The DESManagementFunction shall be contained under + ManagedElement."; + } + + feature DMROFunction { + description "Class representing D-SON function of MRO feature. The + DMROFunction shall be contained under ManagedElement."; + } + + feature DRACHOptimizationFunction { + description "Class representing D-SON function of RACH optimization + feature. The DRACHOptimizationFunction shall be contained under + ManagedElement."; + } + + feature DPCIConfigurationFunction { + description "Class representing Distributed SON or Domain-Centralized SON + function of PCI configuration feature. The DPCIConfigurationFunction shall + be contained under ManagedElement."; + } + + feature CPCIConfigurationFunction { + description "Class representing Cross Domain-Centralized SON function of PCI + configuration feature. The CPCIConfigurationFunction shall be contained + under ManagedElement."; + } + + feature CESManagementFunction { + description "Class representing Cross Domain-Centralized SON Energy Saving + feature. The CESManagementFunction shall be contained under + ManagedElement."; + } + + grouping ManagedElement_Grp { + description "Abstract class representing telecommunications resources. + An ME communicates with a manager (directly or indirectly) for the + purpose of being monitored and/or controlled. MEs may perform element + management functionality. + An ME (and its contained Function_(s)) may or may not be geographically + distributed. An ME (and its contained Function_(s)) is often referred + to as a Network Element"; + + leaf dnPrefix { + description "Provides naming context that allows the Managed + Elements to be partitioned into logical domains. + A Distingushed Name(DN) is defined by 3GPP TS 32.300, + which splits the DN into a DN Prefix and Local DN"; + type types3gpp:DistinguishedName; + } + + leaf userLabel { + description "A user-friendly (and user assignable) name of this object."; + type string; + } + + leaf locationName { + description "The physical location (e.g. an address) of an entity + represented by a (derivative of) ManagedElement_. It may contain no + information to support the case where the derivative of + ManagedElement_ needs to represent a distributed multi-location NE."; + config false; + type string; + } + + leaf-list managedBy { + description "Relates to the role played by ManagementSystem_ in the + between ManagedSystem_ and ManagedElement_. This attribute contains + a list of the DN(s) of the related subclasses of + ManagementSystem_ instance(s)."; + + config false; + type types3gpp:DistinguishedName; + } + + leaf-list managedElementTypeList { + description "The type of functionality provided by the ManagedElement. + It may represent one ME functionality or a combination of + more than one functionality. + 1) The allowed values of this attribute are the names of the IOC(s) + that are (a) derived/subclassed from ManagedFunction and (b) directly + name-contained by ManagedElement IOC (on the first level below + ManagedElement), but with the string 'Function' excluded. + 2) If a ManagedElement contains multiple instances of a ManagedFunction + this attribute will not contain repeated values. + 3) The capitalisation (usage of upper/lower case) of characters in this + attribute is insignificant. Thus, the NodeB should be case insensitive + when reading these values. + 4) Two examples of allowed values are: + - NodeB; + - HLR, VLR."; + + config false; + min-elements 1; + type string; + } + } + + grouping ManagedElementGrp { + description "Represents telecommunications equipment or + TMN entities within the telecommunications network providing support + and/or service to the subscriber."; + + uses ManagedElement_Grp; + uses meas3gpp:SupportedPerfMetricGroupGrp; + + leaf vendorName { + config false; + type string; + } + + leaf userDefinedState { + type string; + description "An operator defined state for operator specific usage"; + } + + leaf swVersion { + config false; + type string; + } + + leaf priorityLabel { + type uint32; + mandatory true; + } + } + + list ManagedElement { + description "Represents telecommunications equipment or TMN entities within + the telecommunications network providing support and/or service to the + subscriber. An ManagedElement IOC is used to represent a Network Element + defined in TS 32.101 including virtualizeation or non-virtualization + scenario. An ManagedElement instance is used for communicating with a + manager (directly or indirectly) over one or more management interfaces + for the purpose of being monitored and/or controlled. ManagedElement may + or may not additionally perform element management functionality. + An ManagedElement contains equipment that may or may not be geographically + distributed. + + A telecommunication equipment has software and hardware components. The + ManagedElement IOC described above represents following two case: + - In the case when the software component is designed to run on dedicated + hardware component, the ManagedElement IOC description includes both + software and hardware components. + - In the case when the software is designed to run on ETSI NFV defined + NFVI [15], the ManagedElement IOC description would exclude the NFVI + component supporting the above mentioned subject software. + + A ManagedElement may be contained in either a SubNetwork or in a MeContext + instance. A single ManagedElement may also exist stand-alone with no + parent at all. + + The relation of ManagedElement IOC and ManagedFunction IOC can be + described as following: + - A ManaagedElement instance may have 1..1 containment relationship to a + ManagedFunction instance. In this case, the ManagedElement IOC may be + used to represent a NE with single functionality. For example, a + ManagedElement is used to represent the 3GPP defined RNC node; + - A ManagedElement instance may have 1..N containment relationship to + multiple ManagedFunction IOC instances. In this case, the ManagedElement + IOC may be used to represent a NE with combined ManagedFunction + funcationality (as indicated by the managedElementType attribute and the + contained instances of different ManagedFunction IOCs).For example, a + ManagedElement is used to represent the combined functionality of 3GPP + defined gNBCUCPFuntion, gNBCUUPFunction and gNBDUFunction"; + + key id; + uses top3gpp:Top_Grp; + container attributes { + uses ManagedElementGrp; + } + + uses meas3gpp:MeasurementSubtree { + if-feature MeasurementsUnderManagedElement; + } + + uses subscr3gpp:SubscriptionControlSubtree { + if-feature SubscriptionControlUnderManagedElement; + } + + uses fm3gpp:FmSubtree { + if-feature FmUnderManagedElement; + } + + uses trace3gpp:TraceSubtree { + if-feature TraceUnderManagedElement; + } + + } +} \ No newline at end of file diff --git a/yang-models/_3gpp-common-managed-function.yang b/yang-models/_3gpp-common-managed-function.yang new file mode 100755 index 000000000..a46d86482 --- /dev/null +++ b/yang-models/_3gpp-common-managed-function.yang @@ -0,0 +1,311 @@ +module _3gpp-common-managed-function { + yang-version 1.1; + namespace urn:3gpp:sa5:_3gpp-common-managed-function; + prefix mf3gpp; + + import _3gpp-common-yang-types { prefix types3gpp; } + import _3gpp-common-top { prefix top3gpp; } + import _3gpp-common-measurements { prefix meas3gpp; } + import _3gpp-common-trace { prefix trace3gpp; } + + organization "3GPP SA5"; + contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; + description "The module defines a base class/grouping for major 3GPP + functions."; + reference + "3GPP TS 28.622 + Generic Network Resource Model (NRM) + Integration Reference Point (IRP); + Information Service (IS) + + 3GPP TS 28.620 + Umbrella Information Model (UIM)"; + + revision 2021-01-25 { reference "CR-0122"; } + revision 2020-09-30 { reference "CR-bbbb"; } + revision 2020-08-06 { reference "CR-0102"; } + revision 2020-08-03 { reference "CR-0095"; } + revision 2020-06-23 { reference "CR-085"; } + revision 2020-06-08 { reference "CR-0092"; } + revision 2019-11-21 { reference "S5-197275, S5-197735"; } + revision 2019-10-28 { reference S5-193518 ; } + revision 2019-06-18 { reference "Initial revision"; } + + feature MeasurementsUnderManagedFunction { + description "The MeasurementSubtree shall be contained under ManageElement"; + } + + feature TraceUnderManagedFunction { + description "The TraceSubtree shall be contained under ManagedFunction"; + } + + grouping Operation { + description "This data type represents an Operation."; + reference "3gpp TS 28.622"; + + leaf name { + type string; + mandatory true; + } + + leaf-list allowedNFTypes { + type string; + min-elements 1; + description "The type of the managed NF service instance + The specifc values allowed are described in TS 23.501"; + } + + leaf operationSemantics { + type enumeration { + enum REQUEST_RESPONSE; + enum SUBSCRIBE_NOTIFY; + + } + config false; + mandatory true; + description "Semantics type of the operation."; + reference "3GPP TS 23.502"; + } + } + + grouping ManagedNFServiceGrp { + description "A ManagedNFService represents a Network Function (NF) service."; + reference "Clause 7 of 3GPP TS 23.501."; + + leaf userLabel { + type string; + description "A user-friendly (and user assignable) name of this object."; + } + + leaf nFServiceType { + config false; + mandatory true; + type string; + description "The type of the managed NF service instance + The specifc values allowed are described in clause 7.2 of TS 23.501"; + } + + list sAP { + key "host port"; + min-elements 1; + max-elements 1; + description "The service access point of the managed NF service instance"; + uses types3gpp:SAP; + } + + list operations { + key name; + min-elements 1; + uses Operation ; + description "Set of operations supported by the managed NF + service instance"; + } + + leaf administrativeState { + type types3gpp:AdministrativeState; + mandatory true; + description "Permission to use or prohibition against using the instance"; + } + + leaf operationalState { + type types3gpp:OperationalState; + config false; + mandatory true; + description "Describes whether the resource is installed and working"; + } + + leaf usageState { + type types3gpp:usageState ; + config false; + mandatory true; + description "Describes whether the resource is actively in use at a + specific instant, and if so, whether or not it has spare + capacity for additional users."; + } + + leaf registrationState { + type enumeration { + enum REGISTERED; + enum DEREGISTERED; + } + config false; + } + } + + grouping Function_Grp { + description "A base grouping for 3GPP functions."; + + leaf userLabel { + type string; + description "A user-friendly (and user assignable) name of this object."; + } + } + + grouping ManagedFunctionGrp { + description "Abstract root class to be inherited/reused by classes + representing 3GPP functions. + + Anywhere this grouping is used by classes inheriting from ManagedFunction + the list representing the inheriting class needs to include all + contained classes of ManagedFunction too. Contained classes are + either + - augmented into the Function class or + - shall be included in the list representing the inheriting class + using the grouping ManagedFunctionContainedClasses: + 1) EP_RP solved using augment + 2) uses mf3gpp:ManagedFunctionContainedClasses; + "; + + uses Function_Grp; + + list vnfParametersList { + key vnfInstanceId; + description "Contains the parameter set of the VNF + instance(s) corresponding to an NE. + The presence of this list indicates that the ManagedFunction + represented is realized by one or more VNF instance(s). Otherwise it + shall be absent. + The presence of a vnfParametersList entry, whose vnfInstanceId with a + string length of zero, in createMO operation can trigger the + instantiation of the related VNF/VNFC instances."; + + leaf vnfInstanceId { + type string ; + description "VNF instance identifier"; + reference "ETSI GS NFV-IFA 008 v2.1.1: + Network Functions Virtualisation (NFV); Management and Orchestration; + Ve-Vnfm reference point - Interface and Information Model Specification + section 9.4.2 + + ETSI GS NFV-IFA 015 v2.1.2: Network Functions Virtualisation (NFV); + Management and Orchestration; Report on NFV Information Model + section B2.4.2.1.2.3"; + } + + leaf vnfdId { + type string ; + description "Identifier of the VNFD on which the VNF instance is based. + The absence of the leaf or a string length of zero for vnfInstanceId + means the VNF instance(s) does not exist (e.g. has not been + instantiated yet, has already been terminated)."; + reference "ETSI GS NFV-IFA 008 v2.1.1: + Network Functions Virtualisation (NFV); Management and Orchestration; + Ve-Vnfm reference point - Interface and Information Model Specification + section 9.4.2"; + } + + leaf flavourId { + type string ; + description "Identifier of the VNF Deployment Flavour applied to this + VNF instance."; + reference "ETSI GS NFV-IFA 008 v2.1.1: + Network Functions Virtualisation (NFV) Management and Orchestration"; + } + + leaf autoScalable { + type boolean ; + mandatory true; + description "Indicator of whether the auto-scaling of this + VNF instance is enabled or disabled."; + } + } + + list peeParametersList { + key idx; + description "Contains the parameter set for the control + and monitoring of power, energy and environmental parameters of + ManagedFunction instance(s)."; + + leaf idx { type uint32; } + + leaf siteIdentification { + type string; + mandatory true; + description "The identification of the site where the + ManagedFunction resides."; + } + + leaf siteLatitude { + type decimal64 { + fraction-digits 4; + range "-90.0000..+90.0000"; + } + description "The latitude of the site where the ManagedFunction + instance resides, based on World Geodetic System (1984 version) + global reference frame (WGS 84). Positive values correspond to + the northern hemisphere. This attribute is optional in case of + BTSFunction and RNCFunction instance(s)."; + } + + leaf siteLongitude { + type decimal64 { + fraction-digits 4; + range "-180.0000..+180.0000"; + } + description "The longitude of the site where the ManagedFunction + instance resides, based on World Geodetic System (1984 version) + global reference frame (WGS 84). Positive values correspond to + degrees east of 0 degrees longitude. This attribute is optional in + case of BTSFunction and RNCFunction instance(s)."; + } + + leaf siteDescription { + type string; + mandatory true; + description "An operator defined description of the site where + the ManagedFunction instance resides."; + } + + leaf equipmentType { + type string; + mandatory true; + description "The type of equipment where the managedFunction + instance resides."; + reference "clause 4.4.1 of ETSI ES 202 336-12"; + } + + leaf environmentType { + type string; + mandatory true; + description "The type of environment where the managedFunction + instance resides."; + reference "clause 4.4.1 of ETSI ES 202 336-12"; + } + + leaf powerInterface { + type string; + mandatory true; + description "The type of power."; + reference "clause 4.4.1 of ETSI ES 202 336-12"; + } + } + + leaf priorityLabel { + mandatory true; + type uint32; + } + uses meas3gpp:SupportedPerfMetricGroupGrp; + } + + grouping ManagedFunctionContainedClasses { + description "A grouping used to containe classes (lists) contained by + the abstract IOC ManagedFunction"; + list ManagedNFService { + description "Represents a Network Function (NF)"; + reference "3GPP TS 23.501"; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses ManagedNFServiceGrp; + } + } + + uses meas3gpp:MeasurementSubtree { + if-feature MeasurementsUnderManagedFunction ; + } + + uses trace3gpp:TraceSubtree { + if-feature TraceUnderManagedFunction ; + } + } +} \ No newline at end of file diff --git a/yang-models/_3gpp-common-measurements.yang b/yang-models/_3gpp-common-measurements.yang new file mode 100755 index 000000000..30627565c --- /dev/null +++ b/yang-models/_3gpp-common-measurements.yang @@ -0,0 +1,542 @@ +module _3gpp-common-measurements { + yang-version 1.1; + namespace "urn:3gpp:sa5:_3gpp-common-measurements"; + prefix "meas3gpp"; + + import _3gpp-common-top { prefix top3gpp; } + import _3gpp-common-yang-types { prefix types3gpp; } + + organization "3GPP SA5"; + contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; + + description "Defines Measurement and KPI related groupings + Any list/class intending to use this should include 2 or 3 uses statements + controlled by a feature: + + A) ++++ feature MeasurementsUnderMyClass { ++++ description 'Indicates whether measurements and/or KPIs are supported ++++ for this class.'; ++++ } + + B) include the attribute measurementsList and/or kPIsList indicating the + supported measurment and KPI types and GPs. Note that for classes + inheriting from ManagedFunction, EP_RP or SubNetwork these attributes are + already inherited, so there is no need to include them once more. E.g. + ++++ grouping MyClassGrp { ++++ uses meas3gpp:SupportedPerfMetricGroup; ++++ } + + C) include the class PerfmetricJob to control the measurements/KPIs. E.g. + + list MyClass { + container attributes { + uses MyClassGrp; + } ++++ uses meas3gpp:MeasurementSubtree { ++++ if-feature MeasurementsUnderMyClass ; ++++ } + } + + Measurements can be contained under ManagedElement, SubNetwork, or + any list representing a class inheriting from Subnetwork or + ManagedFunction. Note: KPIs will only be supported under SubNetwork"; + + reference "3GPP TS 28.623 + Generic Network Resource Model (NRM) + Integration Reference Point (IRP); + Solution Set (SS) definitions + + 3GPP TS 28.622 + Generic Network Resource Model (NRM) + Integration Reference Point (IRP); + Information Service (IS)"; + + revision 2020-11-06 { reference "CR-0118"; } + revision 2020-09-04 { reference "CR-000107"; } + revision 2020-06-08 { reference "CR-0092"; } + revision 2020-05-31 { reference "CR-0084"; } + revision 2020-03-11 { reference "S5-201581, SP-200229"; } + revision 2019-11-21 { reference "S5-197275, S5-197735"; } + revision 2019-10-28 { reference "S5-193516"; } + revision 2019-06-17 { } + + grouping ThresholdInfoGrp { + description "Defines a single threshold level."; + + leaf-list measurementTypes { + type string; + description "The Measurement type can be those specified in TS 28.552, + TS 32.404 and can be those specified by other SDOs or can be + vendor-specific."; + } + + leaf thresholdLevel { + type uint64; + mandatory true; + description "Number (key) for a single threshold in the threshold list + applicable to the monitored performance metric."; + } + + leaf thresholdDirection { + type enumeration { + enum UP; + enum DOWN; + enum UP_AND_DOWN; + } + must '. = "UP_AND_DOWN" or not(../hysteresis)' { + error-message "In case a threshold with hysteresis is configured, the " + +"threshold direction attribute shall be set to 'UP_AND_DOWN'."; + } + mandatory true; + description "Direction of a threshold indicating the direction for which + a threshold crossing triggers a threshold. + + When the threshold direction is configured to 'UP', the associated + treshold is triggered only when the performance metric value is going + up upon reaching or crossing the threshold value. The treshold is not + triggered, when the performance metric is going down upon reaching or + crossing the threshold value. + + Vice versa, when the threshold direction is configured to 'DOWN', the + associated treshold is triggered only when the performance metric is + going down upon reaching or crossing the threshold value. The treshold + is not triggered, when the performance metric is going up upon reaching + or crossing the threshold value. + + When the threshold direction is set to 'UP_AND_DOWN' the treshold is + active in both direcions. + + In case a threshold with hysteresis is configured, the threshold + direction attribute shall be set to 'UP_AND_DOWN'."; + } + + leaf thresholdValue { + type union { + type int64; + type decimal64 { + fraction-digits 2; + } + } + mandatory true; + description "Value against which the monitored performance metric is + compared at a threshold level in case the hysteresis is zero"; + } + + leaf hysteresis { + type union { + type uint64; + type decimal64 { + fraction-digits 2; + range "0..max"; + } + } + description "Hysteresis of a threshold. If this attribute is present + the monitored performance metric is not compared against the + threshold value as specified by the thresholdValue attribute but + against a high and low threshold value given by + + threshold-high = thresholdValue + hysteresis + threshold-low = thresholdValue - hysteresis + + When going up, the threshold is triggered when the performance metric + reaches or crosses the high threshold value. When going down, the + hreshold is triggered when the performance metric reaches or crosses + the low threshold value. + + A hysteresis may be present only when the monitored performance + metric is not of type counter that can go up only. If present + for a performance metric of type counter, it shall be ignored."; + } + } + + grouping SupportedPerfMetricGroupGrp { + list SupportedPerfMetricGroup { + config false; + description "Captures a group of supported performance metrics and + associated parameters related to their production and reporting. + A SupportedPerfMetricGroup attribute which is part of an MOI may + define performanceMetrics for any MOI under the subtree contained + under that MOI, e.g. SupportedPerfMetricGroup on a ManagedElement + can specify supported metrics for contained ManagedFunctions + like a GNBDUFunction."; + + leaf-list performanceMetrics { + type string; + min-elements 1; + description "Performance metrics include measurements defined in + TS 28.552 and KPIs defined in TS 28.554. Performance metrics can + also be those specified by other SDOs or vendor specific metrics. + Performance metrics are identfied with their names. A name can also + identify a vendor specific group of performance metrics. + + For measurements defined in TS 28.552 the name is constructed as + follows: + - 'family.measurementName.subcounter' for measurement types with + subcounters + - 'family.measurementName' for measurement types without subcounters + - 'family' for measurement families + + For KPIs defined in TS 28.554 the name is defined in the KPI + definitions template as the component designated with e)."; + } + + leaf-list granularityPeriods { + type uint32 { + range 1..max ; + } + units seconds; + } + + leaf-list reportingMethods { + type enumeration { + enum FILE_BASED_LOC_SET_BY_PRODUCER; + enum FILE_BASED_LOC_SET_BY_CONSUMER; + enum STREAM_BASED; + } + min-elements 1; + } + + leaf-list monitorGranularityPeriods { + type uint32 { + range 1..max ; + } + units seconds; + description "Granularity periods supported for the monitoring of + associated measurement types for thresholds"; + } + } + } + + grouping PerfMetricJobGrp { + description "Represents the attributtes of the IOC PerfMetricJob"; + + leaf administrativeState { + default UNLOCKED; + type types3gpp:AdministrativeState ; + description "Enable or disables production of the metrics"; + } + + leaf operationalState { + config false; + mandatory true; + type types3gpp:OperationalState ; + description "Indicates whether the PerfMetricJob is working."; + } + + leaf jobId { + type string; + description "Id for a PerfMetricJob job."; + } + + leaf-list performanceMetrics { + type string; + min-elements 1; + description "Performance metrics include measurements defined in + TS 28.552 and KPIs defined in TS 28.554. Performance metrics can + also be those specified by other SDOs or vendor specific metrics. + Performance metrics are identfied with their names. A name can also + identify a vendor specific group of performance metrics. + + For measurements defined in TS 28.552 the name is constructed as + follows: + - 'family.measurementName.subcounter' for measurement types with + subcounters + - 'family.measurementName' for measurement types without subcounters + - 'family' for measurement families + + For KPIs defined in TS 28.554 the name is defined in the KPI + definitions template as the component designated with e)."; + } + + leaf granularityPeriod { + type uint32 { + range 1..max ; + } + units seconds; + mandatory true; + description "Granularity period used to produce measurements. The value + must be one of the supported granularity periods for the metric."; + } + + leaf-list objectInstances { + type types3gpp:DistinguishedName; + } + + leaf-list rootObjectInstances { + type types3gpp:DistinguishedName; + description "Each object instance designates the root of a subtree that + contains the root object and all descendant objects."; + } + + choice reportingCtrl { + mandatory true; + description "This choice defines the method for reporting collected + performance metrics to MnS consumers as well as the parameters for + configuring the reporting function. It is a choice between the control + parameter required for the reporting methods, whose presence selects + the reporting method as follows: + - When only the fileReportingPeriod attribute is present, the MnS + producer shall store files on the MnS producer at a location selected + by the MnS producer and inform the MnS consumer about the availability + of new files and the file location using the notifyFileReady + notification. + - When only the fileReportingPeriod and fileLocation attributes are + present, the MnS producer shall store the files on the MnS consumer at + the location specified by fileLocation. No notification is emitted by + the MnS producer. + - When only the streamTarget attribute is present, the MnS producer + shall stream the data to the location specified by streamTarget. + + For the file-based reporting methods the fileReportingPeriod attribute + specifies the time window during which collected measurements are stored + into the same file before the file is closed and a new file is opened."; + + case file-based-reporting { + leaf fileReportingPeriod { + type uint32 { + range 1..max; + } + units minutes; + must '(number(.)*"60") mod number(../granularityPeriod) = "0"' { + error-message + "The time-period must be a multiple of the granularityPeriod."; + } + mandatory true; + description "For the file-based reporting method this is the time + window during which collected measurements are stored into the same + file before the file is closed and a new file is opened. + The time-period must be a multiple of the granularityPeriod. + + Applicable when the file-based reporting method is supported"; + } + + leaf fileLocation { + type string ; + description "Applicable and must be present when the file-based + reporting method is supported, and the files are stored on the MnS + consumer."; + } + } + case stream-based-reporting { + leaf streamTarget { + type string; + mandatory true; + description "Applicable when stream-based reporting method is + supported."; + } + } + } + } + + + grouping ThresholdMonitorGrp { + description "A threshold monitor that is created by the consumer for + the monitored entities whose measurements are required by consumer + to monitor."; + + leaf administrativeState { + default UNLOCKED; + type types3gpp:AdministrativeState ; + description "Enables or disables the ThresholdMonitor."; + } + + leaf operationalState { + config false; + mandatory true; + type types3gpp:OperationalState ; + description "Indicates whether the ThresholdMonitor is working."; + } + + list thresholdInfoList { + key idx; + min-elements 1; + leaf idx { type uint32 ; } + uses ThresholdInfoGrp; + } + + leaf monitorGranularityPeriod { + type uint32 { + range "1..max"; + } + units second; + mandatory true; + description " Granularity period used to monitor measurements for + threshold crossings. "; + } + + leaf-list objectInstances { + type types3gpp:DistinguishedName; + } + + leaf-list rootObjectInstances { + type types3gpp:DistinguishedName; + description "Each object instance designates the root of a subtree that + contains the root object and all descendant objects."; + } + } + + grouping MeasurementSubtree { + description "Contains classes that define measurements. + Should be used in all classes (or classes inheriting from) + - SubNnetwork + - ManagedElement + - ManagedFunction + + If a YANG module wants to augment these classes/list/groupings they must + augment all user classes! + + If a class uses this grouping in its list it shall also use the + grouping SupportedPerfMetricGroupGrp to add SupportedPerfMetricGroup as + an attribute to its grouping"; + + list PerfMetricJob { + description "This IOC represents a performance metric production job. It + can be name-contained by SubNetwork, ManagedElement, or ManagedFunction. + + To activate the production of the specified performance metrics, a MnS + consumer needs to create a PerfMetricJob instance on the MnS producer + and ensure that the adminState is sUNLOCKED>. + For ultimate deactivation of metric production, the MnS consumer should + delete the job to free up resources on the MnS producer. + + For temporary suspension of metric production, the MnS consumer can + manipulate the value of the administrative state attribute. The MnS + producer may disable metric production as well, for example in overload + situations. This situation is indicated by the MnS producer with setting + the operational state attribute to disabled. When production is resumed + the operational state is set again to enabled. + + The jobId attribute can be used to associate metrics from multiple + PerfMetricJob instances. The jobId can be included when reporting + performance metrics to allow a MnS consumer to associate received + metrics for the same purpose. For example, it is possible to configure + the same jobId value for multiple PerfMetricJob instances required to + produce the measurements for a specific KPI. + + The attribute performanceMetrics defines the performance metrics to be + produced and the attribute granularityPeriod defines the granularity + period to be applied. + + All object instances below and including the instance name-containing + the PerfMetricJob (base object instance) are scoped for performance + metric production. Performance metrics are produced only on those object + instances whose object class matches the object class associated to the + performance metrics to be produced. + + The attributes objectInstances and rootObjectInstances allow to restrict + the scope. When the attribute objectInstances is present, only the object + instances identified by this attribute are scoped. When the attribute + rootObjectInstances is present, then the subtrees whose root objects are + identified by this attribute are scoped. Both attributes may be present + at the same time meaning the total scope is equal to the sum of both + scopes. Object instances may be scoped by both the objectInstances and + rootObjectInstances attributes. This shall not be considered as an error + by the MnS producer. + + When the performance metric requires performance metric production on + multiple managed objects, which is for example the case for KPIs, the + MnS consumer needs to ensure all required objects are scoped. Otherwise + a PerfMetricJob creation request shall fail. + + The attribute reportingCtrl specifies the method and associated control + parameters for reporting the produced measurements to MnS consumers. + Three methods are available: file-based reporting with selection of the + file location by the MnS producer, file-based reporting with selection + of the file location by the MnS consumer and stream-based reporting. + + A PerfMetricJob creation request shall fail, when the requested + performance metrics, the requested granularity period, the requested + repoting method, or the requested combination thereof is not supported + by the MnS producer. + + Creation and deletion of PerfMetricJob instances by MnS consumers is + optional; when not supported, PerfMetricJob instances may be created and + deleted by the system or be pre-installed."; + + key id; + uses top3gpp:Top_Grp ; + container attributes { + uses PerfMetricJobGrp ; + } + } + + list ThresholdMonitor { + key id; + description "Represents a threshold monitor for performance metrics. + It can be contained by SubNetwork, ManagedElement, or ManagedFunction. + A threshold monitor checks for threshold crossings of performance metric + values and generates a notification when that happens. + + To activate threshold monitoring, a MnS consumer needs to create a + ThresholdMonitor instance on the MnS producer. For ultimate deactivation + of threshold monitoring, the MnS consumer should delete the monitor to + free up resources on the MnS producer. + + For temporary suspension of threshold monitoring, the MnS consumer can + manipulate the value of the administrative state attribute. The MnS + producer may disable threshold monitoring as well, for example in + overload situations. This situation is indicated by the MnS producer with + setting the operational state attribute to disabled. When monitoring is + resumed the operational state is set again to enabled. + + All object instances below and including the instance containing the + ThresholdMonitor (base object instance) are scoped for performance + metric production. Performance metrics are monitored only on those + object instances whose object class matches the object class associated + to the performance metrics to be monitored. + + The optional attributes objectInstances and rootObjectInstances allow to + restrict the scope. When the attribute objectInstances is present, only + the object instances identified by this attribute are scoped. When the + attribute rootObjectInstances is present, then the subtrees whose root + objects are identified by this attribute are scoped. Both attributes may + be present at the same time meaning the total scope is equal to the sum + of both scopes. Object instances may be scoped by both the objectInstances + and rootObjectInstances attributes. This shall not be considered as an + error by the MnS producer. + + Multiple thresholds can be defined for multiple performance metric sets + in a single monitor using thresholdInfoList. The attribute + monitorGranularityPeriod defines the granularity period to be applied. + + Each threshold is identified with a number (key) called thresholdLevel. + A threshold is defined using the attributes thresholdValue , + thresholdDirection and hysteresis. + + When hysteresis is absent or carries no information, a threshold is + triggered when the thresholdValue is reached or crossed. When hysteresis + is present, two threshold values are specified for the threshold as + follows: A high treshold value equal to the threshold value plus the + hysteresis value, and a low threshold value equal to the threshold value + minus the hysteresis value. When the monitored performance metric + increases, the threshold is triggered when the high threshold value is + reached or crossed. When the monitored performance metric decreases, the + threshold is triggered when the low threshold value is reached or crossed. + The hsyteresis ensures that the performance metric value can oscillate + around a comparison value without triggering each time the threshold when + the threshold value is crossed. + + Using the thresholdDirection attribute a threshold can be configured in + such a manner that it is triggered only when the monitored performance + metric is going up or down upon reaching or crossing the threshold. + + A ThresholdMonitor creation request shall be rejected, if the performance + metrics requested to be monitored, the requested granularity period, or + the requested combination thereof is not supported by the MnS producer. + A creation request may fail, when the performance metrics requested to be + monitored are not produced by a PerfMetricJob. + + Creation and deletion of ThresholdMonitor instances by MnS consumers is + optional; when not supported, ThresholdMonitor instances may be created + and deleted by the system or be pre-installed."; + + + uses top3gpp:Top_Grp ; + container attributes { + uses ThresholdMonitorGrp ; + } + } + } +} \ No newline at end of file diff --git a/yang-models/_3gpp-common-subnetwork.yang b/yang-models/_3gpp-common-subnetwork.yang new file mode 100755 index 000000000..36776b38a --- /dev/null +++ b/yang-models/_3gpp-common-subnetwork.yang @@ -0,0 +1,214 @@ +module _3gpp-common-subnetwork { + yang-version 1.1; + namespace "urn:3gpp:sa5:_3gpp-common-subnetwork"; + prefix "subnet3gpp"; + + import _3gpp-common-yang-types { prefix types3gpp; } + import _3gpp-common-top { prefix top3gpp; } + import _3gpp-common-measurements { prefix meas3gpp; } + import _3gpp-common-subscription-control { prefix subscr3gpp; } + import _3gpp-common-fm { prefix fm3gpp; } + import _3gpp-common-trace { prefix trace3gpp; } + import ietf-yang-schema-mount { prefix yangmnt; } + + organization "3GPP SA5"; + contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; + + description "Defines basic SubNetwork which will be augmented by other IOCs"; + reference "3GPP TS 28.623 + Generic Network Resource Model (NRM) + Integration Reference Point (IRP); + Solution Set (SS) definitions + + 3GPP TS 28.622 + Generic Network Resource Model (NRM) + Integration Reference Point (IRP); + Information Service (IS) + + 3GPP TS 28.620 + Umbrella Information Model (UIM)"; + + revision 2021-01-16 { reference "CR-0120"; } + revision 2020-08-06 { reference "CR-0102"; } + revision 2020-06-08 { reference "CR-0092"; } + revision 2020-05-08 { + reference "S5-203316"; + } + + + revision 2020-03-11 { + description "Added KPIs and corrections"; + reference "S5-201365, S5-201581, SP-200229"; + } + + revision 2020-02-24 { + reference "S5-201365"; + } + + revision 2019-06-17 { + reference "Initial revision"; + } + + feature ExternalsUnderSubNetwork { + description "Classes representing external entities like EUtranFrequency, + ExternalGNBCUCPFunction, ExternalENBFunction + are contained under a Subnetwork list/class."; + } + + feature MeasurementsUnderSubNetwork { + description "The MeasurementSubtree shall be contained under SubNetwork"; + } + + feature SubscriptionControlUnderSubNetwork { + description "The SubscriptionControlSubtree shall be contained under + SubNetwork"; + } + + feature FmUnderSubNetwork { + description "The FmSubtree shall be contained under SubNetwork"; + } + + feature TraceUnderSubNetwork { + description "The TraceSubtree shall be contained under SubNetwork"; + } + + feature DESManagementFunction { + description "Class representing Distributed SON or Domain-Centralized SON + Energy Saving feature. The DESManagementFunction shall be contained under + SubNetwork."; + } + + feature DMROFunction { + description "Class representing D-SON function of MRO feature. The + DMROFunction shall be contained under SubNetwork."; + } + + feature DRACHOptimizationFunction { + description "Class representing D-SON function of RACH optimization feature. + The DRACHOptimizationFunction shall be contained under SubNetwork."; + } + + feature DPCIConfigurationFunction { + description "Class representing Distributed SON or Domain-Centralized SON + function of PCI configuration feature. The DPCIConfigurationFunction shall + be contained under SubNetwork."; + } + + feature CPCIConfigurationFunction { + description "Class representing Cross Domain-Centralized SON function of PCI + configuration feature. The CPCIConfigurationFunction shall be contained + under SubNetwork."; + } + + feature CESManagementFunction { + description "Class representing Cross Domain-Centralized SON Energy Saving + feature. The CESManagementFunction shall be contained under SubNetwork."; + } + + grouping Domain_Grp { + description "A domain is a partition of instances of managed entities + such that : + - the group represents a topological structure which describes the + potential for connectivity + - Subject to common administration + - With common characteristics"; + + leaf dnPrefix { + type types3gpp:DistinguishedName; + reference "Annex C of 32.300 "; + } + + leaf userLabel { + type string; + description "A user-friendly (and user assignable) name of this object."; + } + + leaf userDefinedNetworkType { + type string; + description "Textual information indicating network type, e.g. 'UTRAN'."; + } + } + + grouping SubNetworkGrp { + uses Domain_Grp; + uses meas3gpp:SupportedPerfMetricGroupGrp; + + + leaf-list setOfMcc { + description "Set of Mobile Country Code (MCC). + The MCC uniquely identifies the country of domicile + of the mobile subscriber. MCC is part of the IMSI (3GPP TS 23.003) + + This list contains all the MCC values in subordinate object + instances to this SubNetwork instance. + + See clause 2.3 of 3GPP TS 23.003 for MCC allocation principles. + + It shall be supported if there is more than one value in setOfMcc + of the SubNetwork. Otherwise the support is optional."; + type types3gpp:Mcc; + } + + leaf priorityLabel { + mandatory true; + type uint32; + } + + } + + list SubNetwork { + key id; + description "Represents a set of managed entities"; + + uses top3gpp:Top_Grp; + container attributes { + uses SubNetworkGrp; + leaf-list parents { + description "Reference to all containg SubNetwork instances + in strict order from the root subnetwork down to the immediate + parent subnetwork. + If subnetworks form a containment hierarchy this is + modeled using references between the child SubNetwork and the parent + SubNetworks. + This reference MUST NOT be present for the top level SubNetwork and + MUST be present for other SubNetworks."; + type leafref { + path "../../../SubNetwork/id"; + } + } + + leaf-list containedChildren{ + description "Reference to all directly contained SubNetwork instances. + If subnetworks form a containment hierarchy this is + modeled using references between the child SubNetwork and the parent + SubNetwork."; + type leafref { + path "../../../SubNetwork/id"; + } + } + } + + uses meas3gpp:MeasurementSubtree { + if-feature MeasurementsUnderSubNetwork; + } + + uses subscr3gpp:SubscriptionControlSubtree { + if-feature SubscriptionControlUnderSubNetwork; + } + + uses fm3gpp:FmSubtree { + if-feature FmUnderSubNetwork; + } + + uses trace3gpp:TraceSubtree { + if-feature TraceUnderSubNetwork; + } + + yangmnt:mount-point children-of-SubNetwork { + description "Mountpoint for ManagedElement"; + reference "RFC8528 YANG Schema Mount"; + } + + // augment external parts here + } +} \ No newline at end of file diff --git a/yang-models/_3gpp-common-subscription-control.yang b/yang-models/_3gpp-common-subscription-control.yang new file mode 100755 index 000000000..25bde6927 --- /dev/null +++ b/yang-models/_3gpp-common-subscription-control.yang @@ -0,0 +1,209 @@ +module _3gpp-common-subscription-control { + yang-version 1.1; + namespace "urn:3gpp:sa5:_3gpp-common-subscription-control"; + prefix "subscr3gpp"; + + import _3gpp-common-top { prefix top3gpp; } + + organization "3GPP SA5"; + contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; + + description "Defines IOCs for subscription and heartbeat control."; + reference "3GPP TS 28.623 + Generic Network Resource Model (NRM) + Integration Reference Point (IRP); + Solution Set (SS) definitions + 3GPP TS 28.623"; + + revision 2021-01-16 { reference "CR-0120"; } + revision 2020-08-26 { reference "CR-0106"; } + revision 2019-11-29 { reference "S5-197648 S5-197647 S5-197829 S5-197828"; } + + grouping NtfSubscriptionControlGrp { + description "Attributes of a specific notification subscription"; + + leaf notificationRecipientAddress { + type string; + mandatory true; + } + + leaf-list notificationTypes { + type string; + description "Defines the types of notifications that are candidates + for being forwarded to the notification recipient. + If the notificationFilter attribute is not supported or not present + all candidate notifications types are forwarded to the notification; + discriminated by notificationFilter attribute."; + } + + list scope { + key "scopeType"; + min-elements 1; + max-elements 1; + description "Describes which object instances are selected with + respect to a base object instance."; + + leaf scopeType { + type enumeration { + enum BASE_ONLY; + enum BASE_ALL; + enum BASE_NTH_LEVEL; + enum BASE_SUBTREE; + } + description "If the optional scopeLevel parameter is not supported + or absent, allowed values of scopeType are BASE_ONLY and BASE_ALL. + + The value BASE_ONLY indicates only the base object is selected. + The value BASE_ALL indicates the base object and all of its + subordinate objects (incl. the leaf objects) are selected. + + If the scopeLevel parameter is supported and present, allowed + values of scopeType are BASE_ALL, BASE_ONLY, BASE_NTH_LEVEL + and BASE_SUBTREE. + + The value BASE_NTH_LEVEL indicates all objects on the level, + which is specified by the scopeLevel parameter, below the base + object are selected. The base object is at scopeLevel zero. + The value BASE_SUBTREE indicates the base object and all of its + subordinate objects down to and including the objects on the level, + which is specified by the scopeLevel parameter, are selected. + The base object is at scopeLevel zero."; + } + + leaf scopeLevel { + when '../scopeType = "BASE_NTH_LEVEL" or ../scopeType = "BASE_SUBTREE"'; + type uint16; + mandatory true; + description "See description of scopeType."; + } + } + + leaf notificationFilter { + type string; + description "Defines a filter to be applied to candidate notifications + identified by the notificationTypes attribute. + If notificationFilter is present, only notifications that pass the + filter criteria are forwarded to the notification recipient; all other + notifications are discarded. + The filter can be applied to any field of a notification."; + } + } + + grouping HeartbeatControlGrp { + description "Attributes of HeartbeatControl. Note the triggerHeartbeatNtf + attribute has no mapping in the present release."; + + leaf heartbeatNtfPeriod { + type uint32; + mandatory true; + units seconds; + description "Specifies the periodicity of heartbeat notification emission. + The value of zero has the special meaning of stopping the heartbeat + notification emission."; + } + } + + grouping SubscriptionControlSubtree { + description "Contains notification subscription related classes. + Should be used in all classes (or classes inheriting from) + - SubNetwork + - ManagedElement + + If some YAM wants to augment these classes/list/groupings they must + augment all user classes!"; + + list NtfSubscriptionControl { + description "A NtfSubscriptionControl instance represents the + notification subscription of a particular notification recipient. + The scope attribute is used to select managed object instances. + The base object instance of the scope is the object instance + name-containing the NtfSubscriptionControl instance. + The notifications related to the selected managed object instances + are candidates to be sent to the address specified by the + notificationRecipientAddress attribute. + The notificationType attribute and notificationFilter attribute + allow MnS consumers to exercise control over which candidate + notifications are sent to the notificationRecipientAddress. + If the notificationType attribute is supported and present, its + value identifies the + types of notifications that are candidate to be sent to the + notificationRecipientAddress. If the notificationType attribute is + not supported or not present, all types of notifications are + candidate to be sent to notificationRecipientAddress. + If supported, the notificationFilter attribute defines a filter that + is applied to the set of candidate notifications. Only candidate + notifications that pass the filter criteria are sent to the + notificationRecipientAddress. If the notificationFilter attribute is + not supported all candidate notificatios are sent to the + notificationRecipientAddress. + To receive notifications, a MnS consumer has to create + NtfSubscriptionControl object instancess on the MnS producer. + A MnS consumer can create a subscription for another MnS consumer + since it is not required the notificationRecipientAddress be his own + address. + When a MnS consumer does not wish to receive notifications any more + the MnS consumer shall delete the corresponding NtfSubscriptionControl + instance. + Creation and deletion of NtfSubscriptionControl instances by MnS + consumers is optional; when not supported, the NtfSubscriptionControl + instances may be created and deleted by the system or be + pre-installed."; + + key id; + uses top3gpp:Top_Grp; + container attributes { + uses NtfSubscriptionControlGrp; + } + + list HeartbeatControl { + description "MnS consumers (i.e. notification recipients) use heartbeat + notifications to monitor the communication channels between them and + data reporting MnS producers emitting notifications such as + notifyNewAlarm and notifyFileReady. + + A HeartbeatControl instance allows controlling the emission of + heartbeat notifications by MnS producers. The recipients of heartbeat + notifications are specified by the notificationRecipientAddress + attribute of the NtfSubscriptionControl instance containing the + HeartbeatControl instance. + + Note that the MnS consumer managing the HeartbeatControl instance + and the MnS consumer receiving the heartbeat notifications may not be + the same. + + As a pre-condition for the emission of heartbeat notifications, a + HeartbeatControl instance needs to be created. Creation of an instance + with an initial non-zero value of the heartbeatNtfPeriod attribute + triggers an immediate heartbeat notification emission. Creation of an + instance with an initial zero value of the heartbeatPeriod attribute + does not trigger an emission of a heartbeat notification. Deletion of + an instance does not trigger an emission of a heartbeat notification. + + Once the instance is created, heartbeat notifications are emitted with + a periodicity defined by the value of the heartbeatNtfPeriod + attribute. No heartbeat notifications are emitted if the value is + equal to zero. Setting a zero value to a non zero value, or a non zero + value to a different non zero value, triggers an immediate heartbeat + notification, that is the base for the new heartbeat period. Setting a + non zero value to a zero value stops emitting heartbeats immediately; + no final heartbeat notification is sent. + + Creation and deletion of HeartbeatControl instances by MnS Consumers + is optional; when not supported, the HeartbeatControl instances may be + created and deleted by the system or be pre-installed. + + Whether and when to emit heartbeat notifications is controlled by + HeartbeatControl. Subscription for heartbeat is not supported via the + NtfSubscriptionControl."; + + max-elements 1; + key id; + uses top3gpp:Top_Grp; + + container attributes { + uses HeartbeatControlGrp; + } + } + } + } +} \ No newline at end of file diff --git a/yang-models/_3gpp-common-top.yang b/yang-models/_3gpp-common-top.yang new file mode 100755 index 000000000..c58adbea7 --- /dev/null +++ b/yang-models/_3gpp-common-top.yang @@ -0,0 +1,36 @@ +module _3gpp-common-top { + yang-version 1.1; + + namespace urn:3gpp:sa5:_3gpp-common-top; + prefix top3gpp; + + organization "3gpp SA5"; + description "The model defines a YANG mapping of the top level + information classes used for management of 5G networks and + network slicing."; + reference + "3GPP TS 28.622 + Generic Network Resource Model (NRM) + Integration Reference Point (IRP); + Information Service (IS) + + 3GPP TS 28.620 + Umbrella Information Model (UIM)"; + + revision 2019-06-17 { + description "Initial revision"; + } + + grouping Top_Grp { + description "Abstract class supplying a naming attribute"; + reference "3GPP TS 28.620"; + + leaf id { + type string; + description "Key leaf (namingAttribute) for a class/list. + Should be used as a key leaf for lists representing + stage 2 classes."; + reference "3GPP TS 32.300 Name convention for managed objects"; + } + } +} \ No newline at end of file diff --git a/yang-models/_3gpp-common-trace.yang b/yang-models/_3gpp-common-trace.yang new file mode 100755 index 000000000..13b3f026d --- /dev/null +++ b/yang-models/_3gpp-common-trace.yang @@ -0,0 +1,895 @@ +module _3gpp-common-trace { + yang-version 1.1; + namespace "urn:3gpp:sa5:_3gpp-common-trace"; + prefix "trace3gpp"; + + import _3gpp-common-top { prefix top3gpp; } + import _3gpp-common-yang-types {prefix types3gpp; } + import ietf-inet-types { prefix inet; } + + organization "3GPP SA5"; + contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; + + description "Trace handling"; + + reference "3GPP TS 28.623 + Generic Network Resource Model (NRM) + Integration Reference Point (IRP); + Solution Set (SS) definitions + + 3GPP TS 28.622 + Generic Network Resource Model (NRM) + Integration Reference Point (IRP); + Information Service (IS)"; + + revision 2021-01-25 { reference "CR-0122"; } + revision 2020-11-16 { reference "CR-0117"; } + revision 2020-08-06 { reference "CR-0102"; } + + grouping TraceJobGrp { + leaf tjJobType { + type enumeration { + enum IMMEDIATE_MDT_ONLY; + enum LOGGED_MDT_ONLY; + enum TRACE_ONLY; + enum IMMEDIATE_MDT_AND_TRACE; + enum RLF_REPORT_ONLY; + enum RCEF_REPORT_ONLY; + enum LOGGED_MBSFN_MDT; + } + default TRACE_ONLY; + description "Specifies the MDT mode and it specifies also whether the + TraceJob represents only MDT, Logged MBSFN MDT, Trace or a combined + Trace and MDT job. The attribute is applicable for Trace, MDT, RCEF and + RLF reporting."; + reference "Clause 5.9a of 3GPP TS 32.422 for additional details on the + allowed values."; + } + + list tjListOfInterfaces { + key idx; + must 'count(MSCServerInterfaces)+count(MGWInterfaces)+count(RNCInterfaces)' + +'+count(SGSNInterfaces)+count(GGSNInterfaces)+count(S-CSCFInterfaces)' + +'+count(P-CSCFInterfaces)+count(I-CSCFInterfaces)+count(MRFCInterfaces)' + +'+count(MGCFInterfaces)+count(IBCFInterfaces)+count(E-CSCFInterfaces)' + +'+count(BGCFInterfaces)+count(ASInterfaces)+count(HSSInterfaces)' + +'+count(EIRInterfaces)+count(BM-SCInterfaces)+count(MMEInterfaces)' + +'+count(SGWInterfaces)+count(PDN_GWInterfaces)+count(eNBInterfaces)' + +'+count(en-gNBInterfaces)+count(AMFInterfaces)+count(AUSFInterfaces)' + +'+count(NEFInterfaces)+count(NRFInterfaces)+count(NSSFInterfaces)' + +'+count(PCFInterfaces)+count(SMFInterfaces)+count(SMSFInterfaces)' + +'+count(UDMInterfaces)+count(UPFInterfaces)+count(ng-eNBInterfaces)' + +'+count(gNB-CU-CPInterfaces)+count(gNB-CU-UPInterfaces)+count(gNB-DUInterfaces)'; + + description "Specifies the interfaces that need to be traced in the given + ManagedEntityFunction.The attribute is applicable only for Trace. In + case this attribute is not used, it carries a null semantic."; + reference "Clause 5.5 of 3GPP TS 32.422 for additional details on the + allowed values."; + + leaf idx { type uint32 ; } + + leaf-list MSCServerInterfaces { + type enumeration { + enum A ; + enum Iu-CS ; + enum Mc ; + enum MAP-G ; + enum MAP-B ; + enum MAP-E ; + enum MAP-F ; + enum MAP-D ; + enum MAP-C ; + enum CAP ; + } + } + leaf-list MGWInterfaces { + type enumeration { + enum Mc ; + enum Nb-UP ; + enum Iu-UP ; + } + } + leaf-list RNCInterfaces { + type enumeration { + enum Iu-CS ; + enum Iu-PS ; + enum Iur ; + enum Iub ; + enum Uu ; + } + } + leaf-list SGSNInterfaces { + type enumeration { + enum Gb ; + enum Iu-PS ; + enum Gn ; + enum MAP-Gr ; + enum MAP-Gd ; + enum MAP-Gf ; + enum Ge ; + enum Gs ; + enum S6d ; + enum S4 ; + enum S3 ; + enum S13 ; + } + } + leaf-list GGSNInterfaces { + type enumeration { + enum Gn ; + enum Gi ; + enum Gmb ; + } + } + leaf-list S-CSCFInterfaces { + type enumeration { + enum Mw ; + enum Mg ; + enum Mr ; + enum Mi ; + } + } + leaf-list P-CSCFInterfaces { + type enumeration { + enum Gm ; + enum Mw ; + } + } + leaf-list I-CSCFInterfaces { + type enumeration { + enum Cx ; + enum Dx ; + enum Mg ; + enum Mw ; + } + } + leaf-list MRFCInterfaces { + type enumeration { + enum Mp ; + enum Mr ; + } + } + leaf-list MGCFInterfaces { + type enumeration { + enum Mg ; + enum Mj ; + enum Mn ; + } + } + leaf-list IBCFInterfaces { + type enumeration { + enum Ix ; + enum Mx ; + } + } + leaf-list E-CSCFInterfaces { + type enumeration { + enum Mw ; + enum Ml ; + enum Mm ; + enum Mi-Mg ; + } + } + leaf-list BGCFInterfaces { + type enumeration { + enum Mi ; + enum Mj ; + enum Mk ; + } + } + leaf-list ASInterfaces { + type enumeration { + enum Dh ; + enum Sh ; + enum ISC ; + enum Ut ; + } + } + leaf-list HSSInterfaces { + type enumeration { + enum MAP-C ; + enum MAP-D ; + enum Gc ; + enum Gr ; + enum Cx ; + enum S6d ; + enum S6a ; + enum Sh ; + } + } + leaf-list EIRInterfaces { + type enumeration { + enum MAP-F ; + enum S13 ; + enum MAP-Gf ; + } + } + leaf-list BM-SCInterfaces { + type enumeration { + enum Gmb ; + } + } + leaf-list MMEInterfaces { + type enumeration { + enum S1-MME ; + enum S3 ; + enum S6a ; + enum S10 ; + enum S11 ; + enum S13 ; + } + } + leaf-list SGWInterfaces { + type enumeration { + enum S4 ; + enum S5 ; + enum S8 ; + enum S11 ; + enum Gxc ; + } + } + leaf-list PDN_GWInterfaces { + type enumeration { + enum S2a ; + enum S2b ; + enum S2c ; + enum S5 ; + enum S6b ; + enum Gx ; + enum S8 ; + enum SGi ; + } + } + leaf-list eNBInterfaces { + type enumeration { + enum S1-MME ; + enum X2 ; + } + } + leaf-list en-gNBInterfaces { + type enumeration { + enum S1-MME ; + enum X2 ; + enum Uu ; + enum F1-C ; + enum E1 ; + } + } + leaf-list AMFInterfaces { + type enumeration { + enum N1 ; + enum N2 ; + enum N8 ; + enum N11 ; + enum N12 ; + enum N14 ; + enum N15 ; + enum N20 ; + enum N22 ; + enum N26 ; + } + } + leaf-list AUSFInterfaces { + type enumeration { + enum N12 ; + enum N13 ; + } + } + leaf-list NEFInterfaces { + type enumeration { + enum N29 ; + enum N30 ; + enum N33 ; + } + } + leaf-list NRFInterfaces { + type enumeration { + enum N27 ; + } + } + leaf-list NSSFInterfaces { + type enumeration { + enum N22 ; + enum N31 ; + } + } + leaf-list PCFInterfaces { + type enumeration { + enum N5 ; + enum N7 ; + enum N15 ; + } + } + leaf-list SMFInterfaces { + type enumeration { + enum N4 ; + enum N7 ; + enum N10 ; + enum N11 ; + enum S5-C ; + } + } + leaf-list SMSFInterfaces { + type enumeration { + enum N20 ; + enum N21 ; + } + } + leaf-list UDMInterfaces { + type enumeration { + enum N8 ; + enum N10 ; + enum N13 ; + enum N21 ; + } + } + leaf-list UPFInterfaces { + type enumeration { + enum N4 ; + } + } + leaf-list ng-eNBInterfaces { + type enumeration { + enum NG-C ; + enum Xn-C ; + enum Uu ; + } + } + leaf-list gNB-CU-CPInterfaces { + type enumeration { + enum NG-C ; + enum Xn-C ; + enum Uu ; + enum F1-C ; + enum E1 ; + enum X2-C ; + } + } + leaf-list gNB-CU-UPInterfaces { + type enumeration { + enum E1 ; + } + } + leaf-list gNB-DUInterfaces { + type enumeration { + enum F1-C ; + } + } + } + + leaf-list tjListOfNeTypes { + type enumeration { + enum MSC_SERVER; + enum SGSN; + enum MGW; + enum GGSN; + enum RNC; + enum BM_SC; + enum MME; + enum SGW; + enum PGW; + enum ENB; + enum EN_GNB; + enum GNB_CU_CP; + enum GNB_CU_UP; + enum GNB_DU; + } + description "Specifies in which type of ManagedFunction the trace should + be activated. The attribute is applicable only for Trace with + Signalling Based Trace activation. In case this attribute is not used, + it carries a null semantic"; + reference "Clause 5.4 of 3GPP TS 32.422 for additional details on the + allowed values"; + } + + leaf tjPLMNTarget { + type string; + mandatory true; + description "Specifies which PLMN that the subscriber of the session to + be recorded uses as selected PLMN. PLMN Target might differ from the + PLMN specified in the Trace Reference"; + reference "Clause 5.9b of 3GPP TS 32.422"; + } + + leaf tjStreamingTraceConsumerURI { + when './tjTraceReportingFormat = "STREAMING"'; + type inet:uri; + mandatory true; + description "URI of the Streaming Trace data reporting MnS consumer + (a.k.a. streaming target). + This attribute shall be present if file based trace data reporting is + supported and tjTraceReportingFormat set to 'file based' or when + tjJobType is set to Logged MDT or Logged MBSFN MDT."; + reference "Clause 5.9 of 3GPP TS 32.422"; + } + + leaf tjTraceCollectionEntityAddress { + when './tjTraceReportingFormat = "FILE_BASED" or ' + +'./tjJobType = "LOGGED_MDT_ONLY" or ./tjJobType = "LOGGED_MBSFN_MDT"'; + type union { + type inet:uri; + type inet:ip-address; + } + mandatory true; + description "Specifies the address of the Trace Collection Entity when + the attribute tjTraceReportingFormat is configured for the file-based + reporting. The attribute is applicable for both Trace and MDT."; + reference "Clause 5.9 of 3GPP TS 32.422"; + } + + leaf tjTraceDepth { + when './tjJobType = "TRACE_ONLY" or ./tjJobType = "IMMEDIATE_MDT_AND_TRACE"'; + type enumeration { + enum MINIMUM; + enum MEDIUM; + enum MAXIMUM; + enum VENDORMINIMUM; + enum VENDORMEDIUM; + enum VENDORMAXIMUM; + } + default MAXIMUM; + description "Specifies how detailed information should be recorded in the + Network Element. The Trace Depth is a paremeter for Trace Session level, + i.e., the Trace Depth is the same for all of the NEs to be traced in + the same Trace Session. + The attribute is applicable only for Trace, otherwise it carries a null + semantic."; + reference "Clause 5.3 of 3GPP TS 32.422"; + } + + leaf tjTraceReference { + type uint64; + mandatory true; + description "A globally unique identifier, which uniquely identifies the + Trace Session that is created by the TraceJob. + In case of shared network, it is the MCC and MNC of the Participating + Operator that request the trace session that shall be provided. + The attribute is applicable for both Trace and MDT."; + } + + leaf tjTraceReportingFormat { + type enumeration { + enum FILE_BASED; + enum STREAMING; + } + default FILE_BASED; + description "Specifies the trace reporting format - streaming trace + reporting or file-based trace reporting"; + reference "3GPP TS 32.422 clause 5.11"; + } + list tjTraceTarget { + key "targetIdType targetIdValue"; + max-elements 1; + + leaf targetIdType { + type enumeration { + enum IMSI; + enum IMEI; + enum IMEISV; + enum PUBLIC_ID; + enum UTRAN_CELL; + enum E_UTRAN_CELL; + enum NG_RAN_CELL; + enum ENB; + enum RNC; + enum GNB; + enum SUPI; + } + } + + leaf targetIdValue { + type string; + } + + description "Specifies the target object of the Trace and MDT. The + attribute is applicable for both Trace and MDT. This attribute + includes the ID type of the target as an enumeration and the ID value. + + The tjTraceTarget shall be public ID in case of a Management Based + Activation is done to an ScscfFunction. The tjTraceTarget shall be + cell only in case of the UTRAN cell traffic trace function. + + The tjTraceTarget shall be E-UtranCell only in case of E-UTRAN cell + traffic trace function.The tjTraceTarget shall be either IMSI or + IMEI(SV) if the Trace Session is activated to any of the following + ManagedEntity(ies): + - HssFunction + - MscServerFunction + - SgsnFunction + - GgsnFunction + - BmscFunction + - RncFunction + - MmeFunction + + The tjTraceTarget shall be IMSI if the Trace Session is activated to a + ManagedEntity playing a role of ServinGWFunction. + + In case of signaling based Trace/MDT, the tjTraceTarget attribute shall be + able to carry (IMSI or IMEI(SV)or SUPI), the tjMDTAreaScope attribute shall be + able to carry a list of (cell or E-UtranCell or NRCellDU or TA/LA/RA). + + In case of management based Immediate MDT, the tjTraceTarget attribute + shall be null value, the tjMDTAreaScope attribute shall carry a list of + (Utrancell or E-UtranCell or NRCellDU). + + In case of management based Logged MDT, the tjTraceTarget attribute + shall carry an eBs or a RNC or gNBs. The Logged MDT should be initiated on + the specified eNB or RNC or gNB in tjTraceTarget. The tjMDTAreaScope attribute + shall carry a list of (Utrancell or E-UtranCell or NRCellDU or TA/LA/RA). + + In case of RLF reporting, or RCEF reporting, the tjTraceTarget attribute + shall be null value, the tjMDTAreaScope attribute shall carry one or + list of eNBs/gNBs"; + reference "3GPP TS 32.422"; + } + + leaf tjTriggeringEvent { + when './tjJobType = "TRACE" or ./tjJobType = "IMMEDIATE_MDT_AND_TRACE"'; + type string ; + mandatory true; + description "Specifies the triggering event parameter of the trace session. + The attribute is applicable only for Trace. In case this attribute is + not used, it carries a null semantic."; + reference "Clause 5.1 of 3GPP TS 32.422"; + } + + leaf tjMDTAnonymizationOfData { + when ./tjMDTAreaScope ; + type enumeration { + enum NO_IDENTITY; + enum TAC_OF_IMEI; + } + default NO_IDENTITY; + description "Specifies level of MDT anonymization."; + reference "3GPP TS 32.422 clause 5.10.12."; + } + + list tjMDTAreaConfigurationForNeighCell { + when './tjJobType = "LOGGED_MDT_ONLY"'; + key "idx"; + min-elements 1; + leaf idx { type uint32 ; } + + description "It specifies the area for which UE is requested to perform + measurement logging for neighbour cells which have list of frequencies. + If it is not configured, the UE shall perform measurement logging for + all the neighbour cells. + + Applicable only to NR Logged MDT."; + reference "3GPP TS 32.422 clause 5.10.26."; + + leaf frequency { + type string; + } + + leaf cell { + type string; + } + } + + leaf-list tjMDTAreaScope { + type string; + description "specifies MDT area scope when activates an MDT job. + + For RLF and RCEF reporting it specifies the eNB or list of eNBs where the + RLF or RCEF reports should be collected. + + + List of cells/TA/LA/RA for signaling based MDT or management based Logged + MDT. + + List of cells for management based Immediate MDT. + + Cell, TA, LA, RA are mutually exclusive. + + One or list of eNBs for RLF and RCEFreporting"; + reference "Clause 5.10.2 of 3GPP TS 32.422"; + } + + leaf tjMDTCollectionPeriodRrmLte { + when './tjJobType = "IMMEDIATE_MDT_ONLY" or ./tjJobType = "IMMEDIATE_MDT_AND_TRACE"'; + type uint32 { + range "250|500|1000|2000|3000|4000|6000|8000|12000|16000|20000|" + +"24000|28000|32000|64000"; + } + units milliseconds; + description "Specifies the collection period for collecting RRM configured + measurement samples for M2, M3 in LTE. The attribute is applicable only + for Immediate MDT. In case this attribute is not used, it carries a + null semantic."; + reference "Clause 5.10.20 of 3GPP TS 32.422"; + } + + leaf tjMDTCollectionPeriodRrmUmts { + when './tjJobType = "IMMEDIATE_MDT_ONLY" or ./tjJobType = "IMMEDIATE_MDT_AND_TRACE"'; + type uint32 { + range "1024|1280|2048|2560|5120|" + +"10240|60000"; + } + units milliseconds; + description "Specifies the collection period for collecting RRM configured + measurement samples for M3, M4, M5 in UMTS. The attribute is applicable + only for Immediate MDT. In case this attribute is not used, it carries + a null semantic"; + reference "Clause 5.10.21 of 3GPP TS 32.422"; + } + + leaf tjMDTCollectionPeriodRrmNR { + when './tjJobType = "IMMEDIATE_MDT_ONLY" or ./tjJobType = "IMMEDIATE_MDT_AND_TRACE"'; + type uint32 { + range "1024|2048|5120|10240|60000"; + } + units milliseconds; + description "Specifies the collection period for collecting RRM configured + measurement samples for M4, M5 in NR. The attribute is applicable only + for Immediate MDT. In case this attribute is not used, it carries a + null semantic."; + reference "Clause 5.10.30 of 3GPP TS 32.422"; + } + + leaf tjMDTEventListForTriggeredMeasurement { + when './tjJobType = "LOGGED_MDT_ONLY"'; + type enumeration { + enum OUT_OF_COVERAGE ; + enum A2_EVENT ; + } + mandatory true; + description "Specifies event types for event triggered measurement in the + case of logged NR MDT. Each trace session may configure at most one + event. The UE shall perform logging of measurements only upon certain + condition being fulfilled: + - Out of coverage. + - A2 event."; + reference "Clause 5.10.28 of 3GPP TS 32.422"; + } + + leaf tjMDTEventThreshold { + type int64; + description "Specifies the threshold which should trigger the reporting + in case A2 event reporting in LTE or 1F/1l event in UMTS. The attribute + is applicable only for Immediate MDT and when reportingTrigger is + configured for A2 event in LTE or 1F event or 1l event in UMTS. In + case this attribute is not used, it carries a null semantic."; + reference "Clauses 5.10.7 and 5.10.7a of 3GPP TS 32.422"; + } + + leaf tjMDTListOfMeasurements { + when './tjJobType = "IMMEDIATE_MDT"'; + type int64; + mandatory true; + description "It specifies the UE measurements that shall be collected in + an Immediate MDT job. The attribute is applicable only for Immediate MDT. + In case this attribute is not used, it carries a null semantic."; + reference "3GPP TS 32.422 clause 5.10.3"; + } + + leaf tjMDTLoggingDuration { + when './tjJobType = "LOGGED_MDT_ONLY" or ./tjJobType = "LOGGED_MBSFN_MDT"'; + type uint32 { + range "600|1200|2400|3600|5400|7200"; + } + units seconds; + mandatory true; + description "Specifies how long the MDT configuration is valid at the + UE in case of Logged MDT. The attribute is applicable only for + Logged MDT and Logged MBSFN MDT. In case this attribute is not used, it + carries a null semantic."; + reference "5.10.9 of 3GPP TS 32.422"; + } + + leaf tjMDTLoggingInterval { + when './tjJobType = "LOGGED_MDT_ONLY" or ./tjJobType = "LOGGED_MBSFN_MDT"'; + type uint32 { + range "1280|2560|5120|10240|20480|" + +"30720|40960|61440"; + } + units milliseconds; + mandatory true; + description "Specifies the periodicty for Logged MDT. The attribute is + applicable only for Logged MDT and Logged MBSFN MDT. In case this + attribute is not used, it carries a null semantic"; + reference "5.10.8 of 3GPP TS 32.422"; + } + + leaf-list tjMDTMBSFNAreaList { + when './tjJobType = "LOGGED_MBSFN_MDT"'; + type string; + min-elements 1; + max-elements 8; + description "The MBSFN Area consists of a MBSFN Area ID and Carrier + Frequency (EARFCN). The target MBSFN area List can have up to 8 entries. + This parameter is applicable only if the job type is Logged MBSFN MDT."; + reference "5.10.25 of 3GPP TS 32.422"; + } + + leaf tjMDTMeasurementPeriodLTE { + when './tjJobType = "IMMEDIATE_MDT_ONLY" or ./tjJobType = "IMMEDIATE_MDT_AND_TRACE"'; + type uint32 { + range "1024|1280|2048|2560|5120|" + +"10240|60000"; + } + units milliseconds; + mandatory true; + description "It specifies the measurement period for the Data Volume and + Scheduled IP throughput measurements for MDT taken by the eNB. + The attribute is applicable only for Immediate MDT. In case this + attribute is not used, it carries a null semantic."; + reference "Clause 5.10.23 of 3GPP TS 32.422"; + } + + leaf tjMDTMeasurementPeriodUMTS { + when './tjJobType = "IMMEDIATE_MDT_ONLY" or ./tjJobType = "IMMEDIATE_MDT_AND_TRACE"'; + type uint32 { + range "250|500|1000|2000|3000|4000|6000|8000|12000|16000|20000|" + +"24000|28000|32000|64000"; + } + units milliseconds; + mandatory true; + description "It specifies the measurement period for the Data Volume and + Throughput measurements for MDT taken by RNC. + The attribute is applicable only for Immediate MDT. In case this + attribute is not used, it carries a null semantic."; + reference "Clause 5.10.22 of 3GPP TS 32.422"; + } + + leaf tjMDTMeasurementQuantity { + when './tjJobType = "IMMEDIATE_MDT_ONLY" or ./tjJobType = "IMMEDIATE_MDT_AND_TRACE"'; + type uint64 ; + mandatory true; + description "It specifies the measurements that are collected in an MDT + job for a UMTS MDT configured for event triggered reporting."; + reference "Clause 5.10.15 of 3GPP TS 32.422"; + } + + list tjMDTPLMList { + when './tjJobType = "LOGGED_MDT_ONLY"'; + key "mcc mnc"; + uses types3gpp:PLMNId; + min-elements 1; + max-elements 16; + description "It indicates the PLMNs where measurement collection, status + indication and log reporting is allowed."; + reference "Clause 5.10.24 of 3GPP TS 32.422"; + } + + leaf tjMDTPositioningMethod { + when './tjJobType = "IMMEDIATE_MDT_ONLY" or ./tjJobType = "IMMEDIATE_MDT_AND_TRACE"'; + type enumeration { + enum GNSS; + enum E_CELL_ID; + } + mandatory true; + description "It specifies what positioning method should be used in the + MDT job."; + reference "Clause 5.10.19 of 3GPP TS 32.422"; + } + + leaf tjMDTReportAmount { + when './tjJobType = "IMMEDIATE_MDT_ONLY" and ./tjMDTReportingTrigger = "PERIODICAL"'; + type union { + type uint32 { + range "1|4|8|16|32|64" ; + } + type enumeration { + enum INFINITY; + } + } + mandatory true; + description "It specifies the number of measurement reports that shall be + taken for periodic reporting while the UE is in connected. + The attribute is applicable only for Immediate MDT and when + tjMDTReportingTrigger is configured for periodical measurements. In + case this attribute is not used, it carries a null semantic."; + reference "Clause 5.10.6 of 3GPP TS 32.422"; + } + + leaf tjMDTReportingTrigger { + when './tjJobType = "IMMEDIATE_MDT_ONLY"'; + type enumeration { + enum PERIODICAL; + enum A2_FOR_LTE; + enum 1F_FOR_UMTS; + enum 1I_FOR_UMTS_MCPS_TDD; + enum A2_TRIGGERED_PERIODIC_FOR_LTE; + enum ALL_CONFIGURED_RRM_FOR_LTE; + enum ALL_CONFIGURED_RRM_FOR_UMTS; + } + description "It specifies whether periodic or event based measurements + should be collected. + The attribute is applicable only for Immediate MDT and when the + tjMDTListOfMeasurements is configured for M1 (for both UMTS and LTE) + or M2 (only for UMTS). In case this attribute is not used, it carries + a null semantic."; + reference "Clause 5.10.4 of 3GPP TS 32.422"; + } + + leaf tjMDTReportInterval { + when './tjJobType = "IMMEDIATE_MDT_ONLY" and ./tjMDTReportingTrigger = "PERIODICAL"'; + type uint32 { + range "120|240|250|480|500|640|1000|1024|2000|2048|3000|4000|" + +"5120|6000|8000|10240|12000|16000|20000|" + +"24000|28000|32000|60000|64000|" + +"360000|720000|1800000|3600000"; + } + units milliseconds; + mandatory true; + description "It specifies the interval between the periodical measurements + that shall be taken when the UE is in connected mode. + The attribute is applicable only for Immediate MDT and when + tjMDTReportingTrigger is configured for periodical measurements. In case + this attribute is not used, it carries a null semantic."; + reference "5.10.5 of 3GPP TS 32.422"; + } + + leaf tjMDTReportType { + when './tjJobType = "LOGGED_MDT_ONLY"'; + type enumeration { + enum PERIODICAL; + enum EVENT_TRIGGERED; + } + mandatory true; + description "It specifies report type for logged NR MDT"; + reference "Clause 5.10.27 of 3GPP TS 32.422"; + } + + leaf tjMDTSensorInformation { + type bits { + bit BAROMETRIC_PRESSURE; + bit UE_SPEED; + bit UE_ORIENTATION; + } + default ""; + description "It specifies which sensor information shall be included in + logged NR MDT and immediate NR MDT measurement if they are available. + The following sensor measurement can be included or excluded for the UE."; + reference "Clause 5.10.29 of 3GPP TS 32.422"; + } + + leaf tjMDTTraceCollectionEntityID { + when './tjJobType = "LOGGED_MDT_ONLY" or ./tjJobType = "LOGGED_MBSFN_MDT"'; + type uint8; + mandatory true; + description "It specifies the TCE Id which is sent to the UE in Logged MDT."; + reference "Clause 5.10.11 of 3GPP TS 32.422"; + } + } + + grouping TraceSubtree { + description "Contains classes that manage Tracing. + Should be used in all classes (or classes inheriting from) + - SubNnetwork + - ManagedElement + - ManagedFunction + + If a YANG module wants to augment these classes/list/groupings they must + augment all user classes!"; + + list TraceJob { + description "Represents the Trace Control and Configuration parameters of a + particular Trace Job (see TS 32.421 and TS 32.422 for details). + + To activate Trace Jobs, a MnS consumer has to create TraceJob object + instances on the MnS producer. A MnS consumer can activate a Trace Job + for another MnS consumer since it is not required the value of + tjTraceCollectionEntityAddress or tjStreamingTraceConsumerUri to be his + own. + + When a MnS consumer wishes to deactivate a Trace Job, the MnS consumer + shall delete the corresponding TraceJob instance. + + For details of management Trace Job activation/deactivation see clause + 4.1.1.1.2 of TS 32.422. + + Creation and deletion of TraceJob instances by MnS consumers is optional; + when not supported, the TraceJob instances may be created and deleted by + the system or be pre-installed."; + + key id; + uses top3gpp:Top_Grp ; + container attributes { + uses TraceJobGrp ; + } + } + } +} \ No newline at end of file diff --git a/yang-models/_3gpp-common-yang-extensions.yang b/yang-models/_3gpp-common-yang-extensions.yang new file mode 100755 index 000000000..9bc0a82be --- /dev/null +++ b/yang-models/_3gpp-common-yang-extensions.yang @@ -0,0 +1,95 @@ +module _3gpp-common-yang-extensions { + yang-version 1.1; + namespace urn:3gpp:sa5:_3gpp-common-yang-extensions ; + prefix yext3gpp ; + + organization "3GPP SA5"; + description "The module defines YANG extensions needed + 3GPP YANG modeling. + + Copyright (c) 2019 3GPP. All rights reserved. + + Extensions MUST be defined with the following structure in the + description statement: + - What is this statement. + - Newline, + - This statement can be a substatement of the xxx statements with + cardinality x..y. + - This statement can have the following substatements with + cardinality x..y. + - Newline + - Is changing this statement an editorial, BC(backwards compatible) + or NBC(non-BC) change? + - Newline. + - The argument its meaning and type. Preferably use YANG types and + constraints to define the argument's type. + + Any extension statement can be added with a + deviation/deviate add statement. In this case the restriction about + the parent statement of the extension SHALL be evaluated based on the + target of the deviation statement. + + Support for this module does not mean that a YANG server implements + support for each of these extensions. + Implementers of each specific module using an extensions MUST check + if the server implements support for the used extension. + Note: modules use many extensions which individual + implementations MAY or MAY NOT support. + If support for an extension is missing the extension statement needs + individual handling or it SHOULD be removed from the module using + the extension e.g. with a deviation. + "; + + revision "2019-06-23" { + description "Initial version"; + } + + extension inVariant { + description + "Indicates that the value for the data node can only be set when its + parent data node is being created. To change the value after that, the + parent data node must be deleted and recreated with the data node + having the new value. + + It is unnecessary to use and MUST NOT be used for key leafs. + + The statement MUST only be a substatement of a leaf, leaf-list, list + statements that is config=true. + Zero or one inVariant statement is allowed per parent statement. + NO substatements are allowed. + + Adding this statement is an NBC change, removing it is BC."; + } + + extension initial-value { + description "Specifies a value that the system will set for a leaf + leaf-list if a value is not specified for it when its parent list + or container is created. The value has no effect in any other + modification e.g. changing or removing the value. + + The description statement of the parent statement SHOULD contain + the label 'Initial-value: ' followed by the text from the argument. + + The statement MUST only be a substatement of a leaf or leaf-list. + The statement MUST NOT be present if the leaf or the leaf-list + has a default statement or the type used for the data node + has a default value. + The statement MUST NOT be used for config=false data or in an + action, rpc or notification. + Zero or one initial-value statements are allowed for a leaf parent + statement. Zero or more initial-value statements are allowed for a + leaf-list parent statement. If the leaf-list is ordered-by user, the + initial values are stored in the order they appear in the YANG definition. + NO substatements are allowed. + + Always consider using a YANG-default statement instead. + + Modification of the initial-value is a non-backwards-compatible change. + + The argument specifies a single initial value for a leaf or leaf-list. + The value MUST be part of the valuespace of the leaf/leaf-list. + It follows the same rules as the argument of the default statement."; + + argument "initial-value"; + } +} \ No newline at end of file diff --git a/yang-models/_3gpp-common-yang-types.yang b/yang-models/_3gpp-common-yang-types.yang new file mode 100755 index 000000000..f71e5420b --- /dev/null +++ b/yang-models/_3gpp-common-yang-types.yang @@ -0,0 +1,512 @@ +module _3gpp-common-yang-types { + yang-version 1.1; + namespace "urn:3gpp:sa5:_3gpp-common-yang-types"; + prefix "types3gpp"; + + import ietf-inet-types { prefix inet; } + import ietf-yang-types { prefix yang; } + + organization "3GPP SA5"; + contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; + description "The model defines a YANG mapping of the top level + information classes used for management of 5G networks and + network slicing."; + reference "3GPP TS 28.541"; + + revision 2020-11-06 { + description "Removed incorrect S-NSSAI definitions."; + reference "CR-0118"; + } + + revision 2020-03-10 { + description "Removed faulty when statements."; + reference "SP-200229"; + } + + revision 2019-10-25 { + description "Added ManagedNFProfile."; + reference "S5-194457"; + } + + revision 2019-10-16 { + description "Added SAP and usageState."; + reference "S5-193518"; + } + + revision 2019-06-23 { + reference "Initial version."; + } + + grouping ManagedNFProfile { + description "Defines profile for managed NF"; + reference "3GPP TS 23.501"; + + leaf idx { type uint32 ; } + + leaf nfInstanceID { + config false; + mandatory true; + type yang:uuid ; + description "This parameter defines profile for managed NF. + The format of the NF Instance ID shall be a + Universally Unique Identifier (UUID) version 4, + as described in IETF RFC 4122 " ; + } + + leaf-list nfType { + config false; + min-elements 1; + type NfType; + description "Type of the Network Function" ; + } + + leaf hostAddr { + mandatory true; + type inet:host ; + description "Host address of a NF"; + } + + leaf authzInfo { + type string ; + description "This parameter defines NF Specific Service authorization + information. It shall include the NF type (s) and NF realms/origins + allowed to consume NF Service(s) of NF Service Producer."; + reference "See TS 23.501" ; + } + + leaf location { + type string ; + description "Information about the location of the NF instance + (e.g. geographic location, data center) defined by operator"; + reference "TS 29.510" ; + } + + leaf capacity { + mandatory true; + type uint16 ; + description "This parameter defines static capacity information + in the range of 0-65535, expressed as a weight relative to other + NF instances of the same type; if capacity is also present in the + nfServiceList parameters, those will have precedence over this value."; + reference "TS 29.510" ; + } + + leaf nFSrvGroupId { + type string ; + description "This parameter defines identity of the group that is + served by the NF instance. + May be config false or true depending on the ManagedFunction. + Config=true for Udrinfo. Config=false for UdmInfo and AusfInfo. + Shall be present if ../nfType = UDM or AUSF or UDR. "; + reference "TS 29.510" ; + } + + leaf-list supportedDataSetIds { + type enumeration { + enum SUBSCRIPTION; + enum POLICY; + enum EXPOSURE; + enum APPLICATION; + } + description "List of supported data sets in the UDR instance. + May be present if ../nfType = UDR"; + reference "TS 29.510" ; + } + + leaf-list smfServingAreas { + type string ; + description "Defines the SMF service area(s) the UPF can serve. + Shall be present if ../nfType = UPF"; + reference "TS 29.510" ; + } + + leaf priority { + type uint16; + description "This parameter defines Priority (relative to other NFs + of the same type) in the range of 0-65535, to be used for NF selection; + lower values indicate a higher priority. If priority is also present + in the nfServiceList parameters, those will have precedence over + this value. Shall be present if ../nfType = AMF "; + reference "TS 29.510" ; + } + } + + typedef usageState { + type enumeration { + enum IDLE; + enum ACTIVE; + enum BUSY; + } + description "It describes whether or not the resource is actively in + use at a specific instant, and if so, whether or not it has spare + capacity for additional users at that instant. The value is READ-ONLY."; + reference "ITU T Recommendation X.731"; + } + + grouping SAP { + leaf host { + type inet:host; + mandatory true; + } + leaf port { + type inet:port-number; + mandatory true; + } + description "Service access point."; + reference "TS 28.622"; + } + + typedef Mcc { + description "The mobile country code consists of three decimal digits, + The first digit of the mobile country code identifies the geographic + region (the digits 1 and 8 are not used):"; + type string { + pattern '[02-79][0-9][0-9]'; + } + reference "3GPP TS 23.003 subclause 2.2 and 12.1"; + } + + typedef Mnc { + description "The mobile network code consists of two or three + decimal digits (for example: MNC of 001 is not the same as MNC of 01)"; + type string { + pattern '[0-9][0-9][0-9]|[0-9][0-9]'; + } + reference "3GPP TS 23.003 subclause 2.2 and 12.1"; + } + + grouping PLMNId { + leaf mcc { + mandatory true; + type Mcc; + } + leaf mnc { + mandatory true; + type Mnc; + } + reference "TS 23.658"; + } + + typedef Nci { + description "NR Cell Identity. The NCI shall be of fixed length of 36 bits + and shall be coded using full hexadecimal representation. + The exact coding of the NCI is the responsibility of each PLMN operator"; + reference "TS 23.003"; + type union { + type string { + length 36; + pattern '[01]+'; + } + type string { + length 9; + pattern '[a-fA-F0-9]*'; + } + } + } + + typedef OperationalState { + reference "3GPP TS 28.625 and ITU-T X.731"; + type enumeration { + enum DISABLED { + value 0; + description "The resource is totally inoperable."; + } + + enum ENABLED { + value 1; + description "The resource is partially or fully operable."; + } + + } + } + + typedef AdministrativeState { + reference "3GPP TS 28.625 and ITU-T X.731"; + type enumeration { + enum LOCKED { + value 0; + description "The resource is administratively prohibited from performing + services for its users."; + } + + enum UNLOCKED { + value 1; + description "The resource is administratively permitted to perform + services for its users. This is independent of its inherent + operability."; + } + + enum SHUTTINGDOWN { + value 2; + description "Use of the resource is administratively permitted to + existing instances of use only. While the system remains in + the shutting down state the manager or the managed element + may at any time cause the resource to transition to the + locked state."; + } + } + } + + typedef AvailabilityStatus { + type enumeration { + enum IN_TEST; + enum FAILED; + enum POWER_OFF; + enum OFF_LINE; + enum OFF_DUTY; + enum DEPENDENCY; + enum DEGRADED; + enum NOT_INSTALLED; + enum LOG_FULL; + } + } + + typedef CellState { + type enumeration { + enum IDLE; + enum INACTIVE; + enum ACTIVE; + } + } + + typedef Nrpci { + type uint32; + description "Physical Cell Identity (PCI) of the NR cell."; + reference "TS 36.211 subclause 6.11"; + } + + typedef Tac { + type int32 { + range 0..16777215 ; + } + description "Tracking Area Code"; + reference "TS 23.003 clause 19.4.2.3"; + } + + typedef AmfRegionId { + type union { + type uint8 ; + type string { + length 8; + pattern '[01]*'; + } + } + reference "clause 2.10.1 of 3GPP TS 23.003"; + } + + typedef AmfSetId { + type union { + type uint16 { + range '0..1023'; + } + type string { + length 8; + pattern '[01]*'; + } + } + reference "clause 2.10.1 of 3GPP TS 23.003"; + } + + typedef AmfPointer { + type union { + type uint8 { + range '0..63'; + } + type string { + length 6; + pattern '[01]*'; + } + } + reference "clause 2.10.1 of 3GPP TS 23.003"; + } + + grouping AmfIdentifier { + leaf amfRegionId { + type AmfRegionId; + } + leaf amfSetId { + type AmfSetId; + } + leaf amfPointer { + type AmfPointer; + } + description "The AMFI is constructed from an AMF Region ID, + an AMF Set ID and an AMF Pointer. + The AMF Region ID identifies the region, + the AMF Set ID uniquely identifies the AMF Set within the AMF Region, and + the AMF Pointer uniquely identifies the AMF within the AMF Set. "; + } + +// type definitions especially for core NFs + + typedef NfType { + type enumeration { + enum NRF; + enum UDM; + enum AMF; + enum SMF; + enum AUSF; + enum NEF; + enum PCF; + enum SMSF; + enum NSSF; + enum UDR; + enum LMF; + enum GMLC; + enum 5G_EIR; + enum SEPP; + enum UPF; + enum N3IWF; + enum AF; + enum UDSF; + enum BSF; + enum CHF; + } + } + + typedef NotificationType { + type enumeration { + enum N1_MESSAGES; + enum N2_INFORMATION; + enum LOCATION_NOTIFICATION; + } + } + + typedef Load { + description "Latest known load information of the NF, percentage "; + type uint8 { + range 0..100; + } + } + + typedef N1MessageClass { + type enumeration { + enum 5GMM; + enum SM; + enum LPP; + enum SMS; + } + } + + typedef N2InformationClass { + type enumeration { + enum SM; + enum NRPPA; + enum PWS; + enum PWS_BCAL; + enum PWS_RF; + } + } + + grouping DefaultNotificationSubscription { + + leaf notificationType { + type NotificationType; + } + + leaf callbackUri { + type inet:uri; + } + + leaf n1MessageClass { + type N1MessageClass; + } + + leaf n2InformationClass { + type N2InformationClass; + } + } + + grouping Ipv4AddressRange { + leaf start { + type inet:ipv4-address; + } + leaf end { + type inet:ipv4-address; + } + } + + grouping Ipv6PrefixRange { + leaf start { + type inet:ipv6-prefix; + } + leaf end { + type inet:ipv6-prefix; + } + } + + typedef NsiId { + type string; + } + + typedef UeMobilityLevel { + type enumeration { + enum STATIONARY; + enum NOMADIC; + enum RESTRICTED_MOBILITY; + enum FULLY_MOBILITY; + } + } + + typedef ResourceSharingLevel { + type enumeration { + enum SHARED; + enum NOT_SHARED; + } + } + + typedef TxDirection { + type enumeration { + enum DL; + enum UL; + enum DL_AND_UL; + } + } + + grouping AddressWithVlan { + leaf ipAddress { + type inet:ip-address; + } + leaf vlanId { + type uint16; + } + } + + typedef DistinguishedName { // TODO is this equivalent to TS 32.300 ? + type string { + pattern '([a-zA-Z][a-zA-Z0-9-]*=(\\( |#|\\|>|<|;|"|\+|,|[a-fA-F0-9]{2})|[^\\><;"+,# ])' + + '((\\( |#|\\|>|<|;|"|\+|,|[a-fA-F0-9]{2})|[^\\><;"+,])*' + + '(\\( |#|\\|>|<|;|"|\+|,|[a-fA-F0-9]{2})|[^\\><;"+, ]))?' + + '[,\+])*[a-zA-Z][a-zA-Z0-9-]*=(\\( |#|\\|>|<|;|"|\+|,|[a-fA-F0-9]{2})|[^\\><;"+,# ])' + + '((\\( |#|\\|>|<|;|"|\+|,|[a-fA-F0-9]{2})' + + '|[^\\><;"+,])*(\\( |#|\\|>|<|;|"|\+|,|[a-fA-F0-9]{2})|[^\\><;"+, ]))?'; + } + description "Represents the international standard for the representation + of Distinguished Name (RFC 4512). + The format of the DistinguishedName REGEX is: + {AttributeType = AttributeValue} + + AttributeType consists of alphanumeric and hyphen (OIDs not allowed). + All other characters are restricted. + The Attribute value cannot contain control characters or the + following characters : \\ > < ; \" + , (Comma) and White space + The Attribute value can contain the following characters if they + are excaped : \\ > < ; \" + , (Comma) and White space + The Attribute value can contain control characters if its an escaped + double digit hex number. + Examples could be + UID=nobody@example.com,DC=example,DC=com + CN=John Smith,OU=Sales,O=ACME Limited,L=Moab,ST=Utah,C=US"; + reference "RFC 4512 Lightweight Directory Access Protocol (LDAP): + Directory Information Models"; + } // recheck regexp it doesn't handle posix [:cntrl:] + + typedef QOffsetRange { + type int8 { + range "-24 | -22 | -20 | -18 | -16 | -14 | -12 | -10 | -8 | -6 | " + + " -5 | -4 | -3 | -2 | -1 | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 8 | 10 | " + + " 12 | 14 | 16 | 18 | 20 | 22 | 24"; + } + units dB; + } +} \ No newline at end of file diff --git a/yang-models/_3gpp-nr-nrm-beam.yang b/yang-models/_3gpp-nr-nrm-beam.yang new file mode 100755 index 000000000..95f4677b7 --- /dev/null +++ b/yang-models/_3gpp-nr-nrm-beam.yang @@ -0,0 +1,96 @@ +module _3gpp-nr-nrm-beam { + yang-version 1.1; + namespace "urn:3gpp:sa5:_3gpp-nr-nrm-nrnetwork-beam"; + prefix "beam3gpp"; + + import _3gpp-nr-nrm-commonbeamformingfunction { prefix cbeamff3gpp; } + import _3gpp-common-top { prefix top3gpp; } + import _3gpp-common-managed-function { prefix mf3gpp; } + import _3gpp-common-managed-element { prefix me3gpp; } + import _3gpp-nr-nrm-gnbdufunction { prefix gnbdu3gpp; } + import _3gpp-nr-nrm-nrsectorcarrier { prefix nrsectcarr3gpp; } + + organization "3GPP SA5"; + description "Defines the YANG mapping of the Beam Information + Object Class (IOC) that is part of the NR Network Resource Model (NRM)."; + reference "3GPP TS 28.541 5G Network Resource Model (NRM)"; + + revision 2019-11-22 { + description "Initial revision"; + reference "S5-197643"; + } + + typedef BeamType { + type enumeration { + enum SSB-BEAM; + } + } + + grouping BeamGrp { + description "Represents the Beam IOC."; + reference "3GPP TS 28.541"; + uses mf3gpp:ManagedFunctionGrp; + + leaf beamIndex { + description "Index of the beam. "; + mandatory true; + type int32; + } + + leaf beamType { + description "The type of the beam. "; + mandatory false; + type BeamType; + } + + leaf beamAzimuth { + description "The azimuth of a beam transmission, which means the horizontal beamforming pointing angle (beam peak direction) in the (Phi) ?-axis in 1/10th degree resolution. The pointing angle is the direction equal to the geometric centre of the half-power contour of the beam relative to the reference plane. Zero degree implies explicit antenna bearing (boresight). Positive angle implies clockwise from the antenna bearing."; + reference "3GPP TS 38.104, TS 38.901, TS 28.662"; + mandatory false; + type int32 { range "-1800..1800"; } + units "0.1"; + } + + leaf beamTilt { + description "The tilt of a beam transmission, which means the vertical beamforming pointing angle (beam peak direction) in the (Theta) ?-axis in 1/10th degree resolution. +The pointing angle is the direction equal to the geometric centre of the half-power contour of the beam relative to the reference plane. Positive value implies downtilt."; + reference "3GPP TS 38.104, TS 38.901, TS 28.662"; + mandatory false; + type int32 { range "-900..900"; } + units "0.1"; + } + + + + leaf beamHorizWidth { + description " The Horizontal beamWidth of a beam transmission, which means the horizontal beamforming half-power (3dB down) beamwidth in the (Phi) ?-axis in 1/10th degree resolution."; + reference "3GPP TS 38.104, TS 38.901"; + mandatory false; + type int32 { range "0..3599"; } + units "0.1"; + } + + leaf beamVertWidth { + description " The Vertical beamWidth of a beam transmission, which means the vertical beamforming half-power (3dB down) beamwidth in the (Theta) ?-axis in 1/10th degree resolution."; + reference "3GPP TS 38.104, TS 38.901"; + mandatory false; + type int32 { range "0..1800"; } + units "0.1"; + } + + + } + + augment "/me3gpp:ManagedElement/gnbdu3gpp:GNBDUFunction/nrsectcarr3gpp:NRSectorCarrier/cbeamff3gpp:CommonBeamformingFunction" { + + list Beam { + description "Represents the per-Beam information required for, e.g. beam performance management utilizing measurements generated in the RAN. Can have spatial attributes of horizontal/azimuth (ie: Phi ?-axis) and vertical/tilt (ie: Theta ?-axis) beam pointing direction and beam width attributes."; + reference "3GPP TS 28.541"; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses BeamGrp; + } + } + } +} \ No newline at end of file diff --git a/yang-models/_3gpp-nr-nrm-bwp.yang b/yang-models/_3gpp-nr-nrm-bwp.yang new file mode 100755 index 000000000..bd18865a6 --- /dev/null +++ b/yang-models/_3gpp-nr-nrm-bwp.yang @@ -0,0 +1,104 @@ +module _3gpp-nr-nrm-bwp { + yang-version 1.1; + namespace "urn:3gpp:sa5:_3gpp-nr-nrm-bwp"; + prefix "bwp3gpp"; + + import _3gpp-common-managed-element { prefix me3gpp; } + import _3gpp-common-managed-function { prefix mf3gpp; } + import _3gpp-common-top { prefix top3gpp; } + import _3gpp-nr-nrm-gnbdufunction { prefix gnbdu3gpp; } + + organization "3GPP SA5"; + contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; + description "Defines the YANG mapping of the BWP Information Object Class + (IOC) that is part of the NR Network Resource Model (NRM)."; + reference "3GPP TS 28.541 5G Network Resource Model (NRM)"; + + revision 2020-11-17 { reference CR-0410 ; } + revision 2019-10-28 { reference S5-193518 ; } + revision 2019-06-17 { reference "Initial revision"; } + + typedef CyclicPrefix { + type enumeration { + enum NORMAL; + enum EXTENDED; + } + } + + typedef BwpContext { + type enumeration { + enum DL; + enum UL; + enum SUL; + } + } + typedef IsInitialBwp { + type enumeration { + enum INITIAL; + enum OTHER; + } + } + + grouping BWPGrp { + description "Represents the BWP IOC."; + reference "3GPP TS 28.541"; + uses mf3gpp:ManagedFunctionGrp; + + leaf bwpContext { + description "Identifies whether the object is used for downlink, uplink + or supplementary uplink."; + mandatory true; + type BwpContext; + } + + leaf isInitialBwp { + description "Identifies whether the object is used for initial or other + BWP."; + mandatory true; + type IsInitialBwp; + } + + leaf subCarrierSpacing { + description "Subcarrier spacing configuration for a BWP."; + reference "3GPP TS 38.104"; + mandatory true; + type uint32 { range "15 | 30 | 60 | 120"; } + units kHz; + } + + leaf cyclicPrefix { + description "Cyclic prefix, which may be normal or extended."; + reference "3GPP TS 38.211"; + mandatory true; + type CyclicPrefix; + } + + leaf startRB { + description "Offset in common resource blocks to common resource block 0 + for the applicable subcarrier spacing for a BWP."; + reference "N_BWP_start in 3GPP TS 38.211"; + mandatory true; + type uint32; + } + + leaf numberOfRBs { + description "Number of physical resource blocks for a BWP."; + reference "N_BWP_size in 3GPP TS 38.211"; + mandatory true; + type uint32; + } + } + + augment "/me3gpp:ManagedElement/gnbdu3gpp:GNBDUFunction" { + + list BWP { + description "Represents a bandwidth part (BWP)."; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses BWPGrp; + } + uses mf3gpp:ManagedFunctionContainedClasses; + } + } +} \ No newline at end of file diff --git a/yang-models/_3gpp-nr-nrm-cesmanagementfunction.yang b/yang-models/_3gpp-nr-nrm-cesmanagementfunction.yang new file mode 100755 index 000000000..7235d704b --- /dev/null +++ b/yang-models/_3gpp-nr-nrm-cesmanagementfunction.yang @@ -0,0 +1,256 @@ +module _3gpp-nr-nrm-cesmanagementfunction { + yang-version 1.1; + namespace "urn:3gpp:sa5:_3gpp-nr-nrm-cesmanagementfunction"; + prefix "cesmanagementfunction3gpp"; + + import _3gpp-common-subnetwork { prefix subnet3gpp; } + import _3gpp-common-top { prefix top3gpp; } + import _3gpp-nr-nrm-nrcellcu { prefix nrcellcu3gpp; } + import _3gpp-nr-nrm-gnbcucpfunction { prefix gnbcucp3gpp; } + import _3gpp-common-managed-element { prefix me3gpp; } + + + organization "3GPP SA5"; + contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; + description "Defines the YANG mapping of the CESManagementFunction Information Object Class + (IOC) that is part of the NR Network Resource Model (NRM)."; + reference "3GPP TS 28.541 5G Network Resource Model (NRM)"; + + revision 2020-05-08 { reference S5-203316; } + + + grouping CESManagementFunctionGrp { + description "Represents the CESManagementFunction IOC."; + reference "3GPP TS 28.541"; + uses top3gpp:Top_Grp; + + leaf cesSwitch { + description "This attribute determines whether the Centralized SON energy saving function is enabled or disabled."; + type boolean; + } + list intraRatEsActivationOriginalCellLoadParameters { + key loadThreshold; + description "This attributes is relevant, if the cell acts as an original cell.This attribute indicates the traffic load threshold and the time duration, which are used by distributed ES algorithms to allow a cell to enter the energySaving state."; + leaf loadThreshold {type int32;} + container attributes { + uses IntraRatEsActivationOriginalCellLoadParametersGrp; + } + } + + + list intraRatEsActivationCandidateCellsLoadParameters { + key loadThreshold; + description "This attribute indicates the traffic load threshold and the time duration, which are used by distributed ES algorithms level to allow a n ‘original’ cell to enter the energySaving state."; + leaf loadThreshold {type int32;} + container attributes { + uses IntraRatEsActivationCandidateCellsLoadParametersGrp; + } + } + + list intraRatEsDeactivationCandidateCellsLoadParameters { + key loadThreshold; + description "This attributes is relevant, if the cell acts as a candidate cell.This attribute indicates the traffic load threshold and the time duration which is used by distributed ES algorithms to allow a cell to leave the energySaving state."; + leaf loadThreshold {type int32;} + container attributes { + uses IntraRatEsDeactivationCandidateCellsLoadParametersGrp; + } + } + + list esNotAllowedTimePeriod { + key startTimeandendTime; + description "This attribute indicates a list of time periods during which inter-RAT energy saving is not allowed."; + leaf startTimeandendTime {type string;} + container attributes { + uses EsNotAllowedTimePeriodGrp; + } + } + + list interRatEsActivationOriginalCellParameters { + key loadThreshold; + description "This attribute indicates the traffic load threshold and the time duration, which are used by distributed inter-RAT ES algorithms to allow an original cell to enter the energySaving state."; + leaf loadThreshold {type int32;} + container attributes { + uses InterRatEsActivationOriginalCellParametersGrp; + } + } + + list interRatEsActivationCandidateCellParameters { + key loadThreshold; + description "This attribute indicates the traffic load threshold and the time duration, which are used by distributed inter-RAT ES algorithms to allow an original cell to enter the energySaving state."; + leaf loadThreshold {type int32;} + container attributes { + uses InterRatEsActivationCandidateCellParametersGrp; + } + } + + list interRatEsDeactivationCandidateCellParameters { + key loadThreshold; + description "This attribute indicates the traffic load threshold and the time duration which is used by distributed inter-RAT ES algorithms to allow an original cell to leave the energySaving state."; + leaf loadThreshold {type int32;} + container attributes { + uses InterRatEsDeactivationCandidateCellParametersGrp; + } + } + + + leaf energySavingState { + description "Specifies the status regarding the energy saving in the cell. If the value of energySavingControl is toBeEnergySaving, then it shall be tried to achieve the value isEnergySaving for the energySavingState. If the value of energySavingControl is toBeNotEnergySaving, then it shall be tried to achieve the value isNotEnergySaving for the energySavingState. "; + type enumeration{ + enum isNotEnergySaving; + enum isEnergySaving; + } + } + + + leaf energySavingControl { + description "This attribute allows the Cross Domain-Centralized SON energy saving function to initiate energy saving activation or deactivation."; + type enumeration{ + enum toBeEnergySaving; + enum toBeNotEnergySaving; + } + } + + + } + grouping IntraRatEsActivationOriginalCellLoadParametersGrp { + description "Represents the the traffic load threshold and the time duration."; + + leaf loadThreshold { + description "This attribute is used by distributed ES algorithms to allow a cell to enter the energySaving state."; + type int32 { range "0..10000"; } + units "1"; + } + + + leaf timeDuration { + description " The time duration indicates how long the load needs to have been below the threshold."; + type int32 { range "0..900"; } + units "1"; + } + } + + grouping IntraRatEsActivationCandidateCellsLoadParametersGrp { + description "Represents the the traffic load threshold and the time duration."; + + leaf loadThreshold { + description "This attribute is used by distributed ES algorithms to allow a cell to enter the energySaving state."; + type int32 { range "0..10000"; } + units "1"; + } + + + leaf timeDuration { + description " The time duration indicates how long the load needs to have been below the threshold."; + type int32 { range "0..900"; } + units "1"; + } + } + + grouping IntraRatEsDeactivationCandidateCellsLoadParametersGrp { + description "Represents the the traffic load threshold and the time duration."; + + leaf loadThreshold { + description "This attribute is used by distributed ES algorithms to allow a cell to enter the energySaving state."; + type int32 { range "0..10000"; } + units "1"; + } + + + leaf timeDuration { + description " The time duration indicates how long the load needs to have been below the threshold."; + type int32 { range "0..900"; } + units "1"; + } + } + + grouping EsNotAllowedTimePeriodGrp { + description "Represents the the traffic load threshold and the time duration."; + + leaf startTimeandendTime { + description "This field indicate valid UTC time."; + type string; + } + + + leaf periodOfDay { + description "This field indicate the period of day."; + type string; + } + + leaf daysOfWeekList { + description "This field indicate the list of weekday."; + type string; + } + + leaf listoftimeperiods { + description "This field indicate the list of time periods."; + type string; + } + + } + + grouping InterRatEsActivationOriginalCellParametersGrp { + description "Represents the the traffic load threshold and the time duration."; + + leaf loadThreshold { + description "The time duration indicates how long the traffic load (both for UL and DL) needs to have been below the threshold."; + type int32 { range "0..10000"; } + units "1"; + } + + + leaf timeDuration { + description " The time duration indicates how long the load needs to have been below the threshold."; + type int32 { range "0..900"; } + units "1"; + } + } + + grouping InterRatEsActivationCandidateCellParametersGrp { + description "Represents the the traffic load threshold and the time duration."; + + leaf loadThreshold { + description "This attribute is used by distributed ES algorithms to allow a cell to enter the energySaving state."; + type int32 { range "0..10000"; } + units "1"; + } + + + leaf timeDuration { + description "The time duration indicates how long the traffic load (both for UL and DL) in the candidate cell needs to have been below the threshold before any original cells which will be provided backup coverage by the candidate cell enters energySaving state."; + type int32 { range "0..900"; } + units "1"; + } + } + + grouping InterRatEsDeactivationCandidateCellParametersGrp { + description "Represents the the traffic load threshold and the time duration."; + + leaf loadThreshold { + description "This attribute is used by distributed ES algorithms to allow a cell to enter the energySaving state."; + type int32 { range "0..10000"; } + units "1"; + } + + + leaf timeDuration { + description "The time duration indicates how long the traffic load (either for UL or DL) in the candidate cell needs to have been above the threshold to wake up one or more original cells which have been provided backup coverage by the candidate cell."; + type int32 { range "0..900"; } + units "1"; + } + } + + + augment "/me3gpp:ManagedElement/gnbcucp3gpp:GNBCUCPFunction/nrcellcu3gpp:NRCellCU" { + if-feature nrcellcu3gpp:CESManagementFunction; + uses CESManagementFunctionGrp; + } + augment "/me3gpp:ManagedElement" { + if-feature me3gpp:CESManagementFunction; + uses CESManagementFunctionGrp; + } + augment "/subnet3gpp:SubNetwork" { + if-feature subnet3gpp:CESManagementFunction; + uses CESManagementFunctionGrp; + } +} \ No newline at end of file diff --git a/yang-models/_3gpp-nr-nrm-commonbeamformingfunction.yang b/yang-models/_3gpp-nr-nrm-commonbeamformingfunction.yang new file mode 100755 index 000000000..e900d4fc4 --- /dev/null +++ b/yang-models/_3gpp-nr-nrm-commonbeamformingfunction.yang @@ -0,0 +1,62 @@ +module _3gpp-nr-nrm-commonbeamformingfunction { + yang-version 1.1; + namespace "urn:3gpp:sa5:_3gpp-nr-nrm-nrnetwork-commonbeamformingfunction"; + prefix "combeamformfunc3gpp"; + + import _3gpp-nr-nrm-nrsectorcarrier { prefix nrsectcarr3gpp; } + import _3gpp-common-top { prefix top3gpp; } + import _3gpp-common-managed-function { prefix mf3gpp; } + import _3gpp-common-managed-element { prefix me3gpp; } + import _3gpp-nr-nrm-gnbdufunction { prefix gnbdu3gpp; } + + + organization "3GPP SA5"; + description "Defines the YANG mapping of the CommonBeamformingFuntion Information + Object Class (IOC) that is part of the NR Network Resource Model (NRM)."; + reference "3GPP TS 28.541 5G Network Resource Model (NRM)"; + + revision 2019-11-22 { + description "Initial revision"; + reference "S5-197643"; + } + + grouping CommonBeamformingFunctionGrp { + description "Represents the CommonBeamformingFunction IOC."; + reference "3GPP TS 28.541"; + uses mf3gpp:ManagedFunctionGrp; + + leaf coverageShape { + description "Identifies the sector carrier coverage shape described by the envelope of the contained SSB beams. The coverage shape is implementation dependent."; + mandatory true; + type int32 { range "0..65535"; } + } + + leaf digitalAzimuth { + description "Digitally-controlled azimuth through beamforming. It represents the horizontal pointing direction of the antenna relative to the antenna bore sight, representing the total non-mechanical horizontal pan of the selected coverageShape. Positive value gives azimuth to the right and negative value gives an azimuth to the left."; + + reference "3GPP TS 38.104, TS 38.901, TS 28.662"; + type int32 { range "-1800..1800"; } + units "0.1"; + } + + leaf digitalTilt { + description "Digitally-controlled tilt through beamforming. It represents the vertical pointing direction of the antenna relative to the antenna bore sight, representing the total non-mechanical vertical tilt of the selected coverageShape. Positive value gives downwards tilt and negative value gives upwards tilt."; + reference "3GPP TS 38.104, TS 38.901, TS 28.662"; + type int32 { range "-900..900"; } + units "0.1"; + } + } + + augment "/me3gpp:ManagedElement/gnbdu3gpp:GNBDUFunction/nrsectcarr3gpp:NRSectorCarrier" { + + list CommonBeamformingFunction { + description "Represents common beamforming functionality (eg: SSB beams) for the NRSectorCarrier."; + reference "3GPP TS 28.541"; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses CommonBeamformingFunctionGrp; + } + } + } +} \ No newline at end of file diff --git a/yang-models/_3gpp-nr-nrm-cpciconfigurationfunction.yang b/yang-models/_3gpp-nr-nrm-cpciconfigurationfunction.yang new file mode 100755 index 000000000..918c0581f --- /dev/null +++ b/yang-models/_3gpp-nr-nrm-cpciconfigurationfunction.yang @@ -0,0 +1,67 @@ +module _3gpp-nr-nrm-cpciconfigurationfunction { + yang-version 1.1; + namespace "urn:3gpp:sa5:_3gpp-nr-nrm-cpciconfigurationfunction"; + prefix "cpciconfigurationfunction3gpp"; + + import _3gpp-common-subnetwork { prefix subnet3gpp; } + import _3gpp-common-top { prefix top3gpp; } + import _3gpp-nr-nrm-nrcelldu { prefix nrcelldu3gpp; } + import _3gpp-nr-nrm-gnbdufunction { prefix gnbdu3gpp; } + import _3gpp-common-managed-element { prefix me3gpp; } + + organization "3GPP SA5"; + contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; + description "Defines the YANG mapping of the CPCIConfigurationFunction Information Object Class + (IOC) that is part of the NR Network Resource Model (NRM)."; + reference "3GPP TS 28.541 5G Network Resource Model (NRM)"; + + revision 2020-05-08 { reference S5-203316; } + + + grouping CPCIConfigurationFunctionGrp { + description "Represents the CPCICONFIGURATIONFunction IOC."; + reference "3GPP TS 28.541"; + uses top3gpp:Top_Grp; + + + list cSonPciList { + key NRPci; + description " This holds a list of physical cell identities that can be assigned to the pci attribute by gNB. The assignment algorithm is not specified. This attribute shall be supported if and only if the C-SON PCI configuration is supported."; + leaf NRPci {type int32;} + container attributes { + uses CSonPciListGrp; + } + } + + + leaf cPciConfigurationControl { + description "This attribute determines whether the Centralized SON PCI configuration function is enabled or disabled."; + type boolean; + } + + } + + grouping CSonPciListGrp { + description "Represents the C-SON PCI list for the PCI configuration function."; + + leaf NRPci { + description "This attribute determines the NR PCI."; + type int32 { range "0..1007"; } + units "1"; + } + } + + + augment "/me3gpp:ManagedElement/gnbdu3gpp:GNBDUFunction/nrcelldu3gpp:NRCellDU" { + if-feature nrcelldu3gpp:CPCIConfigurationFunction; + uses CPCIConfigurationFunctionGrp; + } + augment "/me3gpp:ManagedElement" { + if-feature me3gpp:CPCIConfigurationFunction; + uses CPCIConfigurationFunctionGrp; + } + augment "/subnet3gpp:SubNetwork" { + if-feature subnet3gpp:CPCIConfigurationFunction; + uses CPCIConfigurationFunctionGrp; + } +} \ No newline at end of file diff --git a/yang-models/_3gpp-nr-nrm-danrmanagementfunction.yang b/yang-models/_3gpp-nr-nrm-danrmanagementfunction.yang new file mode 100755 index 000000000..9ec94fc20 --- /dev/null +++ b/yang-models/_3gpp-nr-nrm-danrmanagementfunction.yang @@ -0,0 +1,44 @@ +module _3gpp-nr-nrm-danrmanagementfunction { + yang-version 1.1; + namespace "urn:3gpp:sa5:_3gpp-nr-nrm-danrmanagementfunction"; + prefix "danrmanagementfunction3gpp"; + + + import _3gpp-common-top { prefix top3gpp; } + import _3gpp-nr-nrm-gnbcucpfunction { prefix gnbcucp3gpp; } + import _3gpp-common-managed-element { prefix me3gpp; } + + + + organization "3GPP SA5"; + contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; + description "Defines the YANG mapping of the DANRManagementFunction Information Object Class + (IOC) that is part of the NR Network Resource Model (NRM)."; + reference "3GPP TS 28.541 5G Network Resource Model (NRM)"; + + revision 2020-05-08 { reference S5-203316; } + + + grouping DANRManagementFunctionGrp { + description "Represents the DANRManagementFunction IOC."; + reference "3GPP TS 28.541"; + uses top3gpp:Top_Grp; + + leaf intrasystemANRManagementSwitch { + description "This attribute determines whether the intra-system ANR function is activated or deactivated."; + type boolean; + } + + leaf intersystemANRManagementSwitch { + description "This attribute determines whether the inter-system ANR function is activated or deactivated."; + type boolean; + } + + + } + + augment "/me3gpp:ManagedElement/gnbcucp3gpp:GNBCUCPFunction" { + if-feature gnbcucp3gpp:DANRManagementFunction; + uses DANRManagementFunctionGrp; + } +} \ No newline at end of file diff --git a/yang-models/_3gpp-nr-nrm-desmanagementfunction.yang b/yang-models/_3gpp-nr-nrm-desmanagementfunction.yang new file mode 100755 index 000000000..a69c94e79 --- /dev/null +++ b/yang-models/_3gpp-nr-nrm-desmanagementfunction.yang @@ -0,0 +1,261 @@ +module _3gpp-nr-nrm-desmanagementfunction { + yang-version 1.1; + namespace "urn:3gpp:sa5:_3gpp-nr-nrm-desmanagementfunction"; + prefix "desmanagementfunction3gpp"; + + + import _3gpp-common-top { prefix top3gpp; } + import _3gpp-nr-nrm-gnbcucpfunction { prefix gnbcucp3gpp; } + import _3gpp-common-managed-element { prefix me3gpp; } + import _3gpp-nr-nrm-nrcellcu { prefix nrcellcu3gpp; } + import _3gpp-common-subnetwork { prefix subnet3gpp; } + + + organization "3GPP SA5"; + contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; + description "Defines the YANG mapping of the DESManagementFunction Information Object Class + (IOC) that is part of the NR Network Resource Model (NRM)."; + reference "3GPP TS 28.541 5G Network Resource Model (NRM)"; + + revision 2020-05-08 { reference S5-203316; } + + + grouping DESManagementFunctionGrp { + description "Represents the DESManagementFunction IOC."; + reference "3GPP TS 28.541"; + uses top3gpp:Top_Grp; + + leaf desSwitch { + description "This attribute determines whether the Distributed SON energy saving function is enabled or disabled."; + type boolean; + } + + list intraRatEsActivationOriginalCellLoadParameters { + key loadThreshold; + description "This attributes is relevant, if the cell acts as an original cell.This attribute indicates the traffic load threshold and the time duration, which are used by distributed ES algorithms to allow a cell to enter the energySaving state."; + leaf loadThreshold {type int32;} + container attributes { + uses IntraRatEsActivationOriginalCellLoadParametersGrp; + } + } + + + list intraRatEsActivationCandidateCellsLoadParameters { + key loadThreshold; + description "This attribute indicates the traffic load threshold and the time duration, which are used by distributed ES algorithms level to allow a n 'original' cell to enter the energySaving state."; + leaf loadThreshold {type int32;} + container attributes { + uses IntraRatEsActivationCandidateCellsLoadParametersGrp; + } + } + + list intraRatEsDeactivationCandidateCellsLoadParameters { + key loadThreshold; + description "This attributes is relevant, if the cell acts as a candidate cell.This attribute indicates the traffic load threshold and the time duration which is used by distributed ES algorithms to allow a cell to leave the energySaving state."; + leaf loadThreshold {type int32;} + container attributes { + uses IntraRatEsDeactivationCandidateCellsLoadParametersGrp; + } + } + + list esNotAllowedTimePeriod { + key startTimeandendTime; + description "This attribute indicates a list of time periods during which inter-RAT energy saving is not allowed."; + leaf startTimeandendTime {type string;} + container attributes { + uses EsNotAllowedTimePeriodGrp; + } + } + + list interRatEsActivationOriginalCellParameters { + key loadThreshold; + description "This attribute indicates the traffic load threshold and the time duration, which are used by distributed inter-RAT ES algorithms to allow an original cell to enter the energySaving state."; + leaf loadThreshold {type int32;} + container attributes { + uses InterRatEsActivationOriginalCellParametersGrp; + } + } + + list interRatEsActivationCandidateCellParameters { + key loadThreshold; + description "This attribute indicates the traffic load threshold and the time duration, which are used by distributed inter-RAT ES algorithms to allow an original cell to enter the energySaving state."; + leaf loadThreshold {type int32;} + container attributes { + uses InterRatEsActivationCandidateCellParametersGrp; + } + } + + list interRatEsDeactivationCandidateCellParameters { + key loadThreshold; + description "This attribute indicates the traffic load threshold and the time duration which is used by distributed inter-RAT ES algorithms to allow an original cell to leave the energySaving state."; + leaf loadThreshold {type int32;} + container attributes { + uses InterRatEsDeactivationCandidateCellParametersGrp; + } + } + + leaf energySavingState { + description "Specifies the status regarding the energy saving in the cell."; + type enumeration { + enum isNotEnergySaving; + enum isEnergySaving; + } + } + + leaf isProbingCapable { + description " This attribute indicates whether this cell is capable of performing the ES probing procedure."; + type enumeration{ + enum yes; + enum no; + } + } + + } + + grouping IntraRatEsActivationOriginalCellLoadParametersGrp { + description "Represents the the traffic load threshold and the time duration."; + + leaf loadThreshold { + description "This attribute is used by distributed ES algorithms to allow a cell to enter the energySaving state."; + type int32 { range "0..10000"; } + units "1"; + } + + + leaf timeDuration { + description " The time duration indicates how long the load needs to have been below the threshold."; + type int32 { range "0..900"; } + units "1"; + } + } + + grouping IntraRatEsActivationCandidateCellsLoadParametersGrp { + description "Represents the the traffic load threshold and the time duration."; + + leaf loadThreshold { + description "This attribute is used by distributed ES algorithms to allow a cell to enter the energySaving state."; + type int32 { range "0..10000"; } + units "1"; + } + + + leaf timeDuration { + description " The time duration indicates how long the load needs to have been below the threshold."; + type int32 { range "0..900"; } + units "1"; + } + } + + grouping IntraRatEsDeactivationCandidateCellsLoadParametersGrp { + description "Represents the the traffic load threshold and the time duration."; + + leaf loadThreshold { + description "This attribute is used by distributed ES algorithms to allow a cell to enter the energySaving state."; + type int32 { range "0..10000"; } + units "1"; + } + + + leaf timeDuration { + description " The time duration indicates how long the load needs to have been below the threshold."; + type int32 { range "0..900"; } + units "1"; + } + } + + grouping EsNotAllowedTimePeriodGrp { + description "Represents the the traffic load threshold and the time duration."; + + leaf startTimeandendTime { + description "This field indicate valid UTC time."; + type string; + } + + + leaf periodOfDay { + description "This field indicate the period of day."; + type string; + } + + leaf daysOfWeekList { + description "This field indicate the list of weekday."; + type string; + } + + leaf listoftimeperiods { + description "This field indicate the list of time periods."; + type string; + } + + } + + grouping InterRatEsActivationOriginalCellParametersGrp { + description "Represents the the traffic load threshold and the time duration."; + + leaf loadThreshold { + description "The time duration indicates how long the traffic load (both for UL and DL) needs to have been below the threshold."; + type int32 { range "0..10000"; } + units "1"; + } + + + leaf timeDuration { + description " The time duration indicates how long the load needs to have been below the threshold."; + type int32 { range "0..900"; } + units "1"; + } + } + + grouping InterRatEsActivationCandidateCellParametersGrp { + description "Represents the the traffic load threshold and the time duration."; + + leaf loadThreshold { + description "This attribute is used by distributed ES algorithms to allow a cell to enter the energySaving state."; + type int32 { range "0..10000"; } + units "1"; + } + + + leaf timeDuration { + description "The time duration indicates how long the traffic load (both for UL and DL) in the candidate cell needs to have been below the threshold before any original cells which will be provided backup coverage by the candidate cell enters energySaving state."; + type int32 { range "0..900"; } + units "1"; + } + } + + grouping InterRatEsDeactivationCandidateCellParametersGrp { + description "Represents the the traffic load threshold and the time duration."; + + leaf loadThreshold { + description "This attribute is used by distributed ES algorithms to allow a cell to enter the energySaving state."; + type int32 { range "0..10000"; } + units "1"; + } + + + leaf timeDuration { + description "The time duration indicates how long the traffic load (either for UL or DL) in the candidate cell needs to have been above the threshold to wake up one or more original cells which have been provided backup coverage by the candidate cell."; + type int32 { range "0..900"; } + units "1"; + } + } + + + augment "/me3gpp:ManagedElement/gnbcucp3gpp:GNBCUCPFunction/nrcellcu3gpp:NRCellCU" { + if-feature nrcellcu3gpp:DESManagementFunction; + uses DESManagementFunctionGrp; + } + augment "/me3gpp:ManagedElement/gnbcucp3gpp:GNBCUCPFunction" { + if-feature gnbcucp3gpp:DESManagementFunction; + uses DESManagementFunctionGrp; + } + augment "/me3gpp:ManagedElement" { + if-feature me3gpp:DESManagementFunction; + uses DESManagementFunctionGrp; + } + augment "/subnet3gpp:SubNetwork" { + if-feature subnet3gpp:DESManagementFunction; + uses DESManagementFunctionGrp; + } + +} \ No newline at end of file diff --git a/yang-models/_3gpp-nr-nrm-dmrofunction.yang b/yang-models/_3gpp-nr-nrm-dmrofunction.yang new file mode 100755 index 000000000..c657f1587 --- /dev/null +++ b/yang-models/_3gpp-nr-nrm-dmrofunction.yang @@ -0,0 +1,70 @@ +module _3gpp-nr-nrm-dmrofunction { + yang-version 1.1; + namespace "urn:3gpp:sa5:_3gpp-nr-nrm-dmrofunction"; + prefix "dmrofunction3gpp"; + + import _3gpp-common-subnetwork { prefix subnet3gpp; } + import _3gpp-common-top { prefix top3gpp; } + import _3gpp-nr-nrm-gnbcucpfunction { prefix gnbcucp3gpp; } + import _3gpp-common-managed-element { prefix me3gpp; } + import _3gpp-nr-nrm-nrcellcu { prefix nrcellcu3gpp; } + + + organization "3GPP SA5"; + contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; + description "Defines the YANG mapping of the DMROFunction Information Object Class + (IOC) that is part of the NR Network Resource Model (NRM)."; + reference "3GPP TS 28.541 5G Network Resource Model (NRM)"; + + revision 2020-05-08 { reference S5-203316; } + + + grouping DMROFunctionGrp { + description "Represents the DMROFunction IOC."; + reference "3GPP TS 28.541"; + uses top3gpp:Top_Grp; + + leaf maximumDeviationHoTrigger { + description "This parameter defines the maximum allowed absolute deviation of the Handover Trigger, from the default point of operation."; + type int32 { range "-20..20"; } + units "0.5"; + } + + leaf minimumTimeBetweenHoTriggerChange { + description "This parameter defines the minimum allowed time interval between two Handover Trigger change performed by MRO. This is used to control the stability and convergence of the algorithm."; + type int32 { range "0..604800"; } + units "1"; + } + + leaf tstoreUEcntxt { + description "The timer used for detection of too early HO, too late HO and HO to wrong cell."; + type int32 { range "0..1023"; } + units "100"; + } + + + leaf dmroControl { + description " This attribute determines whether the MRO function is enabled or disabled."; + type boolean; + } + + } + + + augment "/me3gpp:ManagedElement/gnbcucp3gpp:GNBCUCPFunction/nrcellcu3gpp:NRCellCU" { + if-feature nrcellcu3gpp:DMROFunction; + uses DMROFunctionGrp; + } + augment "/me3gpp:ManagedElement/gnbcucp3gpp:GNBCUCPFunction" { + if-feature gnbcucp3gpp:DMROFunction; + uses DMROFunctionGrp; + } + augment "/me3gpp:ManagedElement" { + if-feature me3gpp:DMROFunction; + uses DMROFunctionGrp; + } + augment "/subnet3gpp:SubNetwork" { + if-feature subnet3gpp:DMROFunction; + uses DMROFunctionGrp; + } +} \ No newline at end of file diff --git a/yang-models/_3gpp-nr-nrm-dpciconfigurationfunction.yang b/yang-models/_3gpp-nr-nrm-dpciconfigurationfunction.yang new file mode 100755 index 000000000..a150af4b7 --- /dev/null +++ b/yang-models/_3gpp-nr-nrm-dpciconfigurationfunction.yang @@ -0,0 +1,69 @@ +module _3gpp-nr-nrm-dpciconfigurationfunction { + yang-version 1.1; + namespace "urn:3gpp:sa5:_3gpp-nr-nrm-dpciconfigurationfunction"; + prefix "dpciconfigurationfunction3gpp"; + + import _3gpp-common-subnetwork { prefix subnet3gpp; } + import _3gpp-common-top { prefix top3gpp; } + import _3gpp-nr-nrm-nrcellcu { prefix nrcellcu3gpp; } + import _3gpp-nr-nrm-gnbcucpfunction { prefix gnbcucp3gpp; } + import _3gpp-common-managed-element { prefix me3gpp; } + + organization "3GPP SA5"; + contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; + description "Defines the YANG mapping of the DPCIConfigurationFunction Information Object Class + (IOC) that is part of the NR Network Resource Model (NRM)."; + reference "3GPP TS 28.541 5G Network Resource Model (NRM)"; + + revision 2021-01-25 { reference CR-0454 ; } + revision 2020-11-25 { reference CR-0386 ; } + revision 2020-05-08 { reference S5-203316; } + + + grouping DPCIConfigurationFunctionGrp { + description "Represents the DPCICONFIGURATIONFunction IOC."; + reference "3GPP TS 28.541"; + uses top3gpp:Top_Grp; + + + list nRPciList { + key NRPci; + description "This holds a list of physical cell identities that can be assigned to the NR cells. This attribute shall be supported if D-SON PCI configuration function is supported."; + leaf NRPci {type int32;} + container attributes { + uses NRPciListGrp; + } + } + + + leaf dPciConfigurationControl { + description " This attribute determines whether the Distributed SON PCI configuration Function is enabled or disabled."; + type boolean; + } + + } + + grouping NRPciListGrp { + description "Represents the NR PCI list for the PCI configuration function."; + + leaf NRPci { + description "This attribute determines the NR PCI."; + type int32 { range "0..1007"; } + units "1"; + } + } + + + augment "/me3gpp:ManagedElement/gnbcucp3gpp:GNBCUCPFunction/nrcellcu3gpp:NRCellCU" { + if-feature nrcellcu3gpp:DPCIConfigurationFunction; + uses DPCIConfigurationFunctionGrp; + } + augment "/me3gpp:ManagedElement" { + if-feature me3gpp:DPCIConfigurationFunction; + uses DPCIConfigurationFunctionGrp; + } + augment "/subnet3gpp:SubNetwork" { + if-feature subnet3gpp:DPCIConfigurationFunction; + uses DPCIConfigurationFunctionGrp; + } +} \ No newline at end of file diff --git a/yang-models/_3gpp-nr-nrm-drachoptimizationfunction.yang b/yang-models/_3gpp-nr-nrm-drachoptimizationfunction.yang new file mode 100755 index 000000000..7ef35373c --- /dev/null +++ b/yang-models/_3gpp-nr-nrm-drachoptimizationfunction.yang @@ -0,0 +1,120 @@ +module _3gpp-nr-nrm-drachoptimizationfunction { + yang-version 1.1; + namespace "urn:3gpp:sa5:_3gpp-nr-nrm-drachoptimizationfunction"; + prefix "drachoptimizationfunction3gpp"; + + import _3gpp-common-subnetwork { prefix subnet3gpp; } + import _3gpp-common-top { prefix top3gpp; } + import _3gpp-common-managed-element { prefix me3gpp; } + import _3gpp-nr-nrm-nrcelldu { prefix nrcelldu3gpp; } + import _3gpp-nr-nrm-gnbdufunction { prefix gnbdu3gpp; } + + organization "3GPP SA5"; + contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; + description "Defines the YANG mapping of the DRACHOptimizationFunction Information Object Class + (IOC) that is part of the NR Network Resource Model (NRM)."; + reference "3GPP TS 28.541 5G Network Resource Model (NRM)"; + + revision 2021-01-25 { reference CR-0454 ; } + revision 2020-10-02 { reference "CR-0384, CR-0382" ; } + revision 2020-05-08 { reference S5-203316; } + + grouping DRACHOptimizationFunctionGrp { + description "Represents the DRACHOptimizationFunction IOC."; + reference "3GPP TS 28.541"; + uses top3gpp:Top_Grp; + + list ueAccProbilityDist { + key targetProbability; + description "This is a list of target Access Probability (APn) for the RACH optimization function."; + leaf targetProbability {type TargetProbability;} + container attributes { + uses UeAccProbilityDistGrp; + } + } + + list ueAccDelayProbilityDist { + key targetProbability; + description "This is a list of target Access Delay probability (ADP) for the RACH optimization function."; + leaf targetProbability {type TargetProbability;} + container attributes { + uses UeAccDelayProbilityDistGrp; + } + } + + leaf drachOptimizationControl { + description "This attribute determines whether the RACH Optimization function is enabled or disabled."; + type boolean; + } + } + typedef TargetProbability { + type enumeration { + enum 25; + enum 50; + enum 75; + enum 90; + } + } + + typedef Numberofpreamblessent { + type int32 { range "1..200"; } + units "1"; + } + + typedef Accessdelay { + type int32 { range "10..560"; } + units "1"; + } + + + grouping UeAccProbilityDistGrp { + description "Represents the target Access Probability (APn) for the RACH optimization function."; + + leaf targetProbability { + description "This attribute determines the target Probability."; + mandatory true; + type TargetProbability; + } + + + leaf numberofpreamblessent { + description "This attribute determines the number of preambles sent."; + mandatory true; + type Numberofpreamblessent; + } + } + + grouping UeAccDelayProbilityDistGrp { + description "Represents the target Access Delay probability (ADP) for the RACH optimization function."; + + leaf targetProbability { + description "This attribute determines the target Probability."; + mandatory true; + type TargetProbability; + } + + + leaf accessdelay { + description "This attribute determines the access delay."; + mandatory true; + type Accessdelay; + } + } + + augment "/me3gpp:ManagedElement/gnbdu3gpp:GNBDUFunction/nrcelldu3gpp:NRCellDU" { + if-feature nrcelldu3gpp:DRACHOptimizationFunction; + uses DRACHOptimizationFunctionGrp; + } + augment "/me3gpp:ManagedElement/gnbdu3gpp:GNBDUFunction" { + if-feature gnbdu3gpp:DRACHOptimizationFunction; + uses DRACHOptimizationFunctionGrp; + } + augment "/me3gpp:ManagedElement" { + if-feature me3gpp:DRACHOptimizationFunction; + uses DRACHOptimizationFunctionGrp; + } + augment "/subnet3gpp:SubNetwork" { + if-feature nrcelldu3gpp:DRACHOptimizationFunction; + uses DRACHOptimizationFunctionGrp; + } +} \ No newline at end of file diff --git a/yang-models/_3gpp-nr-nrm-ep.yang b/yang-models/_3gpp-nr-nrm-ep.yang new file mode 100755 index 000000000..2bf583e78 --- /dev/null +++ b/yang-models/_3gpp-nr-nrm-ep.yang @@ -0,0 +1,257 @@ +module _3gpp-nr-nrm-ep { + yang-version 1.1; + namespace "urn:3gpp:sa5:_3gpp-nr-nrm-ep"; + prefix "ep3gpp"; + + import _3gpp-common-ep-rp { prefix eprp3gpp; } + import _3gpp-common-managed-element { prefix me3gpp; } + import _3gpp-common-top { prefix top3gpp; } + import _3gpp-nr-nrm-gnbcucpfunction { prefix gnbcucp3gpp; } + import _3gpp-nr-nrm-gnbcuupfunction { prefix gnbcuup3gpp; } + import _3gpp-nr-nrm-gnbdufunction { prefix gnbdu3gpp; } + + organization "3GPP SA5"; + contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; + description "Defines the YANG mapping of the NR related endpoint + Information Object Classes (IOCs) that are part of the NR Network + Resource Model (NRM)."; + reference "3GPP TS 28.541 5G Network Resource Model (NRM)"; + + revision 2021-04-30 { reference CR-0490 ; } + revision 2021-03-03 { reference CR-0435 ; } + revision 2021-02-17 { reference CR-0470; } + revision 2020-11-17 { reference CR-0410 ; } + revision 2020-03-02 { reference S5-201191; } + revision 2019-06-17 { reference "Initial revision"; } + + feature EPClassesUnderGNBCUCPFunction { + description "Endpoint classes shall be contained under GNBCUCPFunction"; + } + + feature EPClassesUnderGNBCUUPFunction { + description "Endpoint classes shall be contained under GNBCUUPFunction"; + } + + feature EPClassesUnderGNBDUFunction { + description "Endpoint classes shall be contained under GNBDUFunction"; + } + + grouping EP_E1Grp { + description "Represents the EP_E1 IOC."; + reference "3GPP TS 28.541, 3GPP TS 38.401"; + uses eprp3gpp:EP_Common; + } + + grouping EP_F1CGrp { + description "Represents the EP_F1C IOC."; + reference "3GPP TS 28.541, 3GPP TS 38.470"; + uses eprp3gpp:EP_Common; + } + + grouping EP_F1UGrp { + description "Represents the EP_F1U IOC."; + reference "3GPP TS 28.541, 3GPP TS 38.470"; + uses eprp3gpp:EP_Common; + } + + grouping EP_XnCGrp { + description "Represents the EP_XnC IOC."; + reference "3GPP TS 28.541, 3GPP TS 38.420"; + uses eprp3gpp:EP_Common; + } + + grouping EP_XnUGrp { + description "Represents the EP_XnU IOC."; + reference "3GPP TS 28.541, 3GPP TS 38.420"; + uses eprp3gpp:EP_Common; + } + + grouping EP_NgCGrp { + description "Represents the EP_NgC IOC."; + reference "3GPP TS 28.541, 3GPP TS 38.470"; + uses eprp3gpp:EP_Common; + } + + grouping EP_NgUGrp { + description "Represents the EP_NgU IOC."; + reference "3GPP TS 28.541, 3GPP TS 38.470"; + uses eprp3gpp:EP_Common; + } + + grouping EP_X2CGrp { + description "Represents the EP_X2C IOC."; + reference "3GPP TS 28.541, 3GPP TS 36.423"; + uses eprp3gpp:EP_Common; + } + + grouping EP_X2UGrp { + description "Represents the EP_X2U IOC."; + reference "3GPP TS 28.541, 3GPP TS 36.425"; + uses eprp3gpp:EP_Common; + } + + grouping EP_S1UGrp { + description "Represents the EP_S1U IOC."; + reference "3GPP TS 28.541, 3GPP TS 36.410"; + uses eprp3gpp:EP_Common; + } + + augment "/me3gpp:ManagedElement/gnbcucp3gpp:GNBCUCPFunction" { + if-feature EPClassesUnderGNBCUCPFunction; + + list EP_E1 { + description "Represents the local end point of the logical link, + supporting E1 interface between gNB-CU-CP and gNB-CU-UP."; + reference "3GPP TS 28.541, 3GPP TS 38.401"; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses EP_E1Grp; + } + } + + list EP_F1C { + description "Represents the local end point of the control plane + interface (F1-C) between the gNB-DU and gNB-CU or gNB-CU-CP."; + reference "3GPP TS 28.541, 3GPP TS 38.470"; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses EP_F1CGrp; + } + } + + list EP_NgC { + description "Represents the local end point of the control plane + interface (NG-C) between the gNB and AMF."; + reference "3GPP TS 28.541, 3GPP TS 38.470"; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses EP_NgCGrp; + } + } + + list EP_XnC { + description "Represents the local gNB node end point of the logical + link, supporting Xn application protocols, to a neighbour NG-RAN node + (including gNB and ng-eNB). The Xn Application PDUs are carried over + SCTP/IP/Data link layer/Physical layer stack."; + reference "3GPP TS 28.541, 3GPP TS 38.420 subclause 7"; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses EP_XnCGrp; + } + } + + list EP_X2C { + description "Represents the local end point of the logical link, + supporting X2-C application protocols used in EN-DC, to a neighbour + eNB or en-gNB node."; + reference "3GPP TS 28.541, 3GPP TS 36.423"; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses EP_X2CGrp; + } + } + } + + augment "/me3gpp:ManagedElement/gnbcuup3gpp:GNBCUUPFunction" { + if-feature EPClassesUnderGNBCUUPFunction; + + list EP_E1 { + description "Represents the local end point of the logical link, + supporting E1 interface between gNB-CU-CP and gNB-CU-UP."; + reference "3GPP TS 28.541, 3GPP TS 38.401"; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses EP_E1Grp; + } + } + + list EP_F1U { + description "Represents the local end point of the user plane + interface (F1-U) between the gNB-DU and gNB-CU or gNB-CU-UP."; + reference "3GPP TS 28.541, 3GPP TS 38.470"; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses EP_F1UGrp; + } + } + + list EP_NgU { + description "Represents the local end point of the NG user plane + (NG-U) interface between the gNB and UPF."; + reference "3GPP TS 28.541, 3GPP TS 38.470"; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses EP_NgUGrp; + } + } + + list EP_XnU { + description "Represents the one end-point of a logical link supporting + the Xn user plane (Xn-U) interface. The Xn-U interface provides + non-guaranteed delivery of user plane PDUs between two NG-RAN nodes."; + reference "3GPP TS 28.541, 3GPP TS 38.420"; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses EP_XnUGrp; + } + } + + list EP_X2U { + description "Represents the local end-point of a logical link supporting + the X2 user plane (X2-U) interface used in EN-DC."; + reference "3GPP TS 28.541, 3GPP TS 36.425"; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses EP_X2UGrp; + } + } + + list EP_S1U { + description "Represents the local end point of the logical link, + supporting S1-U interface towards a S-GW node."; + reference "3GPP TS 28.541, 3GPP TS 36.410"; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses EP_S1UGrp; + } + } + } + + augment "/me3gpp:ManagedElement/gnbdu3gpp:GNBDUFunction" { + if-feature EPClassesUnderGNBDUFunction; + + list EP_F1C { + description "Represents the local end point of the control plane + interface (F1-C) between the DU and CU or CU-CP."; + reference "3GPP TS 28.541, 3GPP TS 38.470"; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses EP_F1CGrp; + } + } + + list EP_F1U { + description "Represents the local end point of the user plane + interface (F1-U) between the DU and CU or CU-UP."; + reference "3GPP TS 28.541, 3GPP TS 38.470"; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses EP_F1UGrp; + } + } + } +} \ No newline at end of file diff --git a/yang-models/_3gpp-nr-nrm-eutrancellrelation.yang b/yang-models/_3gpp-nr-nrm-eutrancellrelation.yang new file mode 100755 index 000000000..4eee4a401 --- /dev/null +++ b/yang-models/_3gpp-nr-nrm-eutrancellrelation.yang @@ -0,0 +1,160 @@ +module _3gpp-nr-nrm-eutrancellrelation { + yang-version 1.1; + namespace "urn:3gpp:sa5:_3gpp-nr-nrm-eutrancellrelation"; + prefix "eutrancellrel3gpp"; + + import _3gpp-common-yang-types { prefix types3gpp; } + import _3gpp-common-managed-function { prefix mf3gpp; } + import _3gpp-common-managed-element { prefix me3gpp; } + import _3gpp-nr-nrm-gnbcucpfunction { prefix gnbcucp3gpp; } + import _3gpp-nr-nrm-nrcellcu { prefix nrcellcu3gpp; } + import _3gpp-common-top { prefix top3gpp; } + + organization "3GPP SA5"; + description "Defines the YANG mapping of the EUtranCellRelation Information + Object Class (IOC) that is part of the NR Network Resource Model (NRM)."; + reference "3GPP TS 28.541 5G Network Resource Model (NRM)"; + + revision 2019-10-28 { reference S5-193518 ; } + revision 2019-06-17 { + description "Initial revision"; + } + + typedef ActionAllowed { + type enumeration { + enum YES; + enum NO; + } + } + + typedef EnergySavingCoverage { + type enumeration { + enum YES; + enum NO; + enum PARTIAL; + } + } + + grouping EUtranCellRelationGrp { + description "Represents the EUtranCellRelation IOC."; + reference "3GPP TS 28.541, EUtranRelation in 3GPP TS 28.658"; + uses mf3gpp:ManagedFunctionGrp; + + leaf tCI { + description "Target Cell Identifier. Consists of E-UTRAN Cell Global + Identifier (ECGI) and Physical Cell Identifier (PCI) of the target + cell. Identifies the target cell from the perspective of the parent + cell instance."; + mandatory true; + type uint64; + } + + leaf isRemoveAllowed { + description "Indicates if the subject EUtranCellRelation can be removed + (deleted) or not. If YES, the subject EUtranCellRelation instance can + be removed (deleted). If NO, the subject EUtranCellRelation instance + shall not be removed (deleted) by any entity but an IRPManager."; + mandatory true; + type ActionAllowed; + } + + leaf isHOAllowed { + description "Indicates if handover is allowed or prohibited. If YES, + handover is allowed from source cell to target cell. Source cell is + represented by the parent cell instance. Target cell is the adjacent + cell referenced by this EUtranCellRelation instance. If NO, handover + shall not be allowed."; + mandatory true; + type ActionAllowed; + } + leaf isENDCAllowed { + description "Indicates if EN-DC is allowed or prohibited. If TRUE, + the target cell is allowed to be used for EN-DC. The target cell is + referenced by the NRCellRelation that contains this isENDCAllowed. + If FALSE, EN-DC shall not be allowed."; + mandatory true; + type ActionAllowed; + } + + + leaf isICICInformationSendAllowed { + description "Indicates if ICIC (Inter Cell Interference Coordination) + load information message sending is allowed or prohibited. If YES, + ICIC load information message sending is allowed from source cell to + target cell. Source cell is represented by the parent cell instance. + Target cell is the adjacent cell referenced by this EUtranCellRelation + instance. If NO, ICIC load information message sending shall not be + allowed."; + reference "3GPP TS 36.423"; + mandatory true; + type ActionAllowed; + } + + leaf isLBAllowed { + description "Indicates if load balancing is allowed or prohibited from + source cell to target cell. If YES, load balancing is allowed from + source cell to target cell. Source cell is represented by the parent + cell instance. Target cell is the adjacent cell referenced by this + EUtranCellRelation instance. If NO, load balancing shall be prohibited + from source cell to target cell."; + mandatory true; + type ActionAllowed; + } + + leaf isESCoveredBy { + description "Indicates whether the adjacent cell according to this + planning provides no, partial or full coverage for the parent cell + instance. Adjacent cells with this attribute equal to YES are + recommended to be considered as candidate cells to take over the + coverage when the original cell is about to be transferred to energy + saving state. The entirety of adjacent cells with this property equal + to PARTIAL are recommended to be considered as entirety of candidate + cells to take over the coverage when the original cell is about to be + transferred to energy saving state."; + mandatory true; + type EnergySavingCoverage; + } + + leaf qOffset { + description "Offset applicable to a specific neighbouring cell used for + evaluating the cell as a candidate for cell re-selection. Corresponds + to parameter q-OffsetCell broadcast in SIB4 for intra-frequency cells + and in SIB5 for inter-frequency cells. Used for Mobility Robustness + Optimization."; + reference "3GPP TS 36.331"; + mandatory true; + type types3gpp:QOffsetRange; + } + + leaf cellIndividualOffset { + description "Offset applicable to a neighbouring cell. It is used for + evaluating the neighbouring cell for handover in connected mode. Used + by the HandOver parameter Optimization (HOO) function or Load + Balancing Optimization (LBO) function."; + reference "3GPP TS 36.331"; + config false; + type types3gpp:QOffsetRange; + } + + leaf adjacentCell { + description "Reference to an EUtranCellFDD/TDD or + ExternalEUtranCellFDD/TDD instance."; + mandatory true; + type types3gpp:DistinguishedName; + } + } + + augment /me3gpp:ManagedElement/gnbcucp3gpp:GNBCUCPFunction/nrcellcu3gpp:NRCellCU { + + list EUtranCellRelation { + description "Represents a relation between an NR cell and an E-UTRAN cell."; + reference "3GPP TS 28.541"; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses EUtranCellRelationGrp; + } + uses mf3gpp:ManagedFunctionContainedClasses; + } + } +} \ No newline at end of file diff --git a/yang-models/_3gpp-nr-nrm-eutranetwork.yang b/yang-models/_3gpp-nr-nrm-eutranetwork.yang new file mode 100755 index 000000000..068bc246c --- /dev/null +++ b/yang-models/_3gpp-nr-nrm-eutranetwork.yang @@ -0,0 +1,61 @@ +module _3gpp-nr-nrm-eutranetwork { + yang-version 1.1; + namespace "urn:3gpp:sa5:_3gpp-nr-nrm-eutranetwork"; + prefix "eutranet3gpp"; + + import _3gpp-common-subnetwork { prefix subnet3gpp; } + import _3gpp-common-top { prefix top3gpp; } + + organization "3GPP SA5"; + description "Defines the YANG mapping of the EUtraNetwork Information Object + Class (IOC) that is part of the NR Network Resource Model (NRM)."; + reference "3GPP TS 28.541 5G Network Resource Model (NRM)"; + + revision 2019-06-17 { + description "Initial revision"; + } + + feature ExternalsUnderEUtraNetwork { + description "Classes representing external entities like EUtranFrequency, + ExternalENBFunction are contained under a EUtraNetwork list/class."; + } + + grouping EUtraNetworkGrp { + description "Represents the EUtraNetwork IOC."; + reference "3GPP TS 28.541"; + uses subnet3gpp:SubNetworkGrp; + } + + list EUtraNetwork { + description "A subnetwork containing gNB external E-UTRAN entities."; + reference "3GPP TS 28.541"; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses EUtraNetworkGrp; + leaf-list parents { + description "Reference to all containg EUtraNetwork instances + in strict order from the root EUtraNetwork down to the immediate + parent EUtraNetwork. + If EUtraNetworks form a containment hierarchy this is + modeled using references between the child EUtraNetwork and the parent + EUtraNetworks. + This reference MUST NOT be present for the top level EUtraNetwork and + MUST be present for other EUtraNetworks."; + type leafref { + path "../../../EUtraNetwork/id"; + } + } + + leaf-list containedChildren{ + description "Reference to all directly contained EUtraNetwork instances. + If EUtraNetworks form a containment hierarchy this is + modeled using references between the child EUtraNetwork and the parent + EUtraNetwork."; + type leafref { + path "../../../EUtraNetwork/id"; + } + } + } + } +} \ No newline at end of file diff --git a/yang-models/_3gpp-nr-nrm-eutranfreqrelation.yang b/yang-models/_3gpp-nr-nrm-eutranfreqrelation.yang new file mode 100755 index 000000000..fce8aa7ff --- /dev/null +++ b/yang-models/_3gpp-nr-nrm-eutranfreqrelation.yang @@ -0,0 +1,208 @@ +module _3gpp-nr-nrm-eutranfreqrelation { + yang-version 1.1; + namespace "urn:3gpp:sa5:_3gpp-nr-nrm-eutranfreqrelation"; + prefix "eutranfreqrel3gpp"; + + import _3gpp-common-yang-types { prefix types3gpp; } + import _3gpp-common-managed-function { prefix mf3gpp; } + import _3gpp-common-managed-element { prefix me3gpp; } + import _3gpp-common-top { prefix top3gpp; } + import _3gpp-nr-nrm-gnbcucpfunction { prefix gnbcucp3gpp; } + import _3gpp-nr-nrm-nrcellcu { prefix nrcellcu3gpp; } + + organization "3GPP SA5"; + description "Defines the YANG mapping of the EUtranFreqRelation Information + Object Class (IOC) that is part of the NR Network Resource Model (NRM)."; + reference "3GPP TS 28.541 5G Network Resource Model (NRM)"; + + revision 2019-10-28 { reference S5-193518 ; } + revision 2019-06-17 { + description "Initial revision"; + } + + grouping EUtranFreqRelationGrp { + description "Represents the EUtranFreqRelation IOC."; + reference "3GPP TS 28.541"; + uses mf3gpp:ManagedFunctionGrp; + + leaf cellIndividualOffset { + description "Offset applicable to a neighbouring cell. Used for + evaluating the neighbouring cell for handover in connected mode. + Used by the HandOver parameter Optimization (HOO) function or + Load Balancing Optimization (LBO) function."; + reference "cellIndividualOffset in MeasObjectEUTRA in 3GPP TS 38.331"; + default 0; + type types3gpp:QOffsetRange; + } + + leaf-list blackListEntry { + description "A list of Physical Cell Identities (PCIs) that are + blacklisted in E-UTRAN measurements."; + reference "3GPP TS 38.331"; + min-elements 0; + type uint16 { range "0..1007"; } + } + + leaf-list blackListEntryIdleMode { + description "A list of Physical Cell Identities (PCIs) that are + blacklisted in SIB4 and SIB5."; + min-elements 0; + type uint16 { range "0..1007"; } + } + + leaf cellReselectionPriority { + description "The absolute priority of the carrier frequency used by the + cell reselection procedure. Value 0 means lowest priority. The value + must not already used by other RAT, i.e. equal priorities between RATs + are not supported. The UE behaviour when no value is entered is + specified in subclause 5.2.4.1 of 3GPP TS 38.304."; + reference "CellReselectionPriority in 3GPP TS 38.331, priority in + 3GPP TS 38.304"; + mandatory true; + type int32 { range "0..7"; } + } + + leaf cellReselectionSubPriority { + description "Indicates a fractional value to be added to the value of + cellReselectionPriority to obtain the absolute priority of the + concerned carrier frequency for E-UTRA and NR."; + reference "3GPP TS 38.331"; + type uint8 { range "2 | 4 | 6 | 8"; } + units "0.1"; + } + + leaf pMax { + description "Used for calculation of the parameter Pcompensation + (defined in 3GPP TS 38.304), at cell reselection to a cell."; + reference "PEMAX in 3GPP TS 38.101-1"; + mandatory true; + type int32 { range "-30..33"; } + units dBm; + } + + leaf qOffsetFreq { + description "The frequency specific offset applied when evaluating + candidates for cell reselection."; + type int32; + default 0; + } + + leaf qQualMin { + description "Indicates the minimum required quality level in the cell. + Value 0 means that it is not sent and UE applies in such case the + (default) value of negative infinity for Qqualmin. Sent in SIB3 or + SIB5."; + reference "qQualMin in TS 38.304"; + mandatory true; + type int32 { range "-34..-3 | 0"; } + units dB; + } + + leaf qRxLevMin { + description "Indicates the required minimum received Reference Symbol + Received Power (RSRP) level in the (E-UTRA) frequency for cell + reselection. Broadcast in SIB3 or SIB5, depending on whether the + related frequency is intra- or inter-frequency. Resolution is 2."; + reference "Qrxlevmin in 3GPP TS 38.304"; + mandatory true; + type int32 { range "-140..-44"; } + units dBm; + } + + leaf threshXHighP { + description "Specifies the Srxlev threshold used by the UE when + reselecting towards a higher priority RAT/frequency than the current + serving frequency. Each frequency of NR and E-UTRAN might have a + specific threshold. Resolution is 2."; + reference "ThreshX, HighP in 3GPP TS 38.304"; + mandatory true; + type int32 { range "0..62"; } + units dB; + } + + leaf threshXHighQ { + description "Specifies the Squal threshold used by the UE when + reselecting towards a higher priority RAT/frequency than the current + serving frequency. Each frequency of NR and E-UTRAN might have a + specific threshold."; + reference "ThreshX, HighQ in 3GPP TS 38.304"; + mandatory true; + type int32 { range 0..31; } + units dB; + } + + leaf threshXLowP { + description "Specifies the Srxlev threshold used by the UE when + reselecting towards a lower priority RAT/frequency than the current + serving frequency. Each frequency of NR and E-UTRAN might have a + specific threshold. Resolution is 2."; + reference "ThreshX, LowP in 3GPP TS 38.304"; + mandatory true; + type int32 { range "0..62"; } + units dB; + } + + leaf threshXLowQ { + description "Specifies the Squal threshold used by the UE when + reselecting towards a lower priority RAT/frequency than the current + serving frequency. Each frequency of NR and E-UTRAN might have a + specific threshold."; + reference "ThreshX, LowQ in 3GPP TS 38.304"; + mandatory false; + type int32 { range "0..31"; } + units dB; + } + + leaf tReselectionEutra { + description "Cell reselection timer for intra frequency E-UTRA cell + reselection. May be used for Mobility Robustness Optimization."; + reference "t-ReselectionEUTRA in 3GPP TS 36.331 and in 3GPP TS 23.207"; + mandatory true; + type uint8 { range "0..7"; } + units s; + } + + leaf tReselectionEutraSfHigh { + description "The attribute tReselectionEutra (parameter TreselectionEUTRA + in 3GPP TS 38.304) multiplied with this scaling factor if the UE is in + high mobility state."; + reference "Speed dependent ScalingFactor for TreselectionEUTRA for high + mobility state in 3GPP TS 38.304"; + mandatory true; + type uint8 { range "25 | 50 | 75 | 100"; } + units %; + } + + leaf tReselectionEutraSfMedium { + description "The attribute tReselectionEutra (parameter TreselectionEUTRA + in 3GPP TS 38.304) multiplied with this scaling factor if the UE is in + medium mobility state."; + reference "Speed dependent ScalingFactor for TreselectionEUTRA for medium + mobility state in 3GPP TS 38.304"; + mandatory true; + type uint8 { range "25 | 50 | 75 | 100"; } + units %; + } + + leaf eUtranFrequencyRef { + description "Reference to a corresponding EUtranFrequency instance."; + mandatory true; + type types3gpp:DistinguishedName; + } + } + + augment /me3gpp:ManagedElement/gnbcucp3gpp:GNBCUCPFunction/nrcellcu3gpp:NRCellCU { + + list EUtranFreqRelation { + description "Represents a frequency relation between an NR cell and an + E-UTRAN cell."; + reference "3GPP TS 28.541"; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses EUtranFreqRelationGrp; + } + uses mf3gpp:ManagedFunctionContainedClasses; + } + } +} \ No newline at end of file diff --git a/yang-models/_3gpp-nr-nrm-eutranfrequency.yang b/yang-models/_3gpp-nr-nrm-eutranfrequency.yang new file mode 100755 index 000000000..2d8a4534a --- /dev/null +++ b/yang-models/_3gpp-nr-nrm-eutranfrequency.yang @@ -0,0 +1,64 @@ +module _3gpp-nr-nrm-eutranfrequency { + yang-version 1.1; + namespace "urn:3gpp:sa5:_3gpp-nr-nrm-eutranfrequency"; + prefix "eutraneteutranfreq3gpp"; + + import _3gpp-common-managed-function { prefix mf3gpp; } + import _3gpp-nr-nrm-eutranetwork { prefix eutranet3gpp; } + import _3gpp-common-subnetwork { prefix subnet3gpp; } + import _3gpp-common-top { prefix top3gpp; } + + organization "3GPP SA5"; + description "Defines the YANG mapping of the EUtranFrequency Information + Object Class (IOC), that is part of the NR Network Resource Model (NRM)."; + reference "3GPP TS 28.541 5G Network Resource Model (NRM), + 3GPP TS 28.658 (E-UTRAN) Network Resource Model (NRM)"; + + revision 2019-10-28 { reference S5-193518 ; } + revision 2019-06-17 { + description "Initial revision"; + } + + grouping EUtranFrequencyGrp { + description "Represents the EUtranFrequency IOC."; + reference "3GPP TS 28.541"; + uses mf3gpp:ManagedFunctionGrp; + + leaf earfcnDL { + description "Specifies the channel number for the central DL frequency."; + reference "3GPP TS 36.101"; + mandatory true; + type uint32 { range "0..262143"; } + } + + leaf-list multiBandInfoListEutra { + description "List of additional frequency bands the frequency belongs to."; + config false; + min-elements 0; + type uint16 { range "1..256"; } + } + } + + grouping EUtranFrequencyWrapper { + list EUtranFrequency { + description "Represents certain E-UTRAN frequency properties."; + reference "3GPP TS 28.658"; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses EUtranFrequencyGrp; + } + uses mf3gpp:ManagedFunctionContainedClasses; + } + } + + augment "/subnet3gpp:SubNetwork" { + if-feature subnet3gpp:ExternalsUnderSubNetwork ; + uses EUtranFrequencyWrapper ; + } + + augment "/eutranet3gpp:EUtraNetwork" { + if-feature eutranet3gpp:ExternalsUnderEUtraNetwork; + uses EUtranFrequencyWrapper ; + } +} \ No newline at end of file diff --git a/yang-models/_3gpp-nr-nrm-externalamffunction.yang b/yang-models/_3gpp-nr-nrm-externalamffunction.yang new file mode 100755 index 000000000..bfd30c58a --- /dev/null +++ b/yang-models/_3gpp-nr-nrm-externalamffunction.yang @@ -0,0 +1,69 @@ +module _3gpp-nr-nrm-externalamffunction { + yang-version 1.1; + namespace "urn:3gpp:sa5:_3gpp-nr-nrm-externalamffunction"; + prefix "extamf3gpp"; + + import _3gpp-common-managed-function { prefix mf3gpp; } + import _3gpp-common-subnetwork { prefix subnet3gpp; } + import _3gpp-nr-nrm-nrnetwork { prefix nrnet3gpp; } + import _3gpp-common-top { prefix top3gpp; } + import _3gpp-common-yang-types { prefix types3gpp; } + + organization "3GPP SA5"; + description "Defines the YANG mapping of the ExternalAMFFunction Information + Object Class (IOC) that is part of the NR Network Resource Model (NRM)."; + reference "3GPP TS 28.541 5G Network Resource Model (NRM)"; + + revision 2019-10-28 { reference S5-193518 ; } + revision 2019-06-17 { + description "Initial revision"; + } + + grouping ExternalAMFFunctionGrp { + description "Represents the ExternalAMFFunction IOC."; + reference "3GPP TS 28.541"; + uses mf3gpp:ManagedFunctionGrp; + + list pLMNIdList { + description "List of at most six entries of PLMN Identifiers, but at least + one (the primary PLMN Id). + The PLMN Identifier is composed of a Mobile Country Code (MCC) and a + Mobile Network Code (MNC)."; + min-elements 1; + max-elements 6; + key "mcc mnc"; + uses types3gpp:PLMNId; + } + + container aMFIdentifier { + presence true; + description "An AMF identifier, comprising an AMF Region ID, an AMF Set ID and an AMF Pointer."; + uses types3gpp:AmfIdentifier; + } + } + + grouping ExternalAMFFunctionWrapper { + list ExternalAMFFunction { + description "Represents the properties, known by the management + function, of a AMFFunction managed by another management + function."; + reference "3GPP TS 28.541"; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses ExternalAMFFunctionGrp; + } + uses mf3gpp:ManagedFunctionContainedClasses; + } + } + + augment "/subnet3gpp:SubNetwork" { + if-feature subnet3gpp:ExternalsUnderSubNetwork ; + uses ExternalAMFFunctionWrapper; + } + + augment "/nrnet3gpp:NRNetwork" { + if-feature nrnet3gpp:ExternalsUnderNRNetwork; + uses ExternalAMFFunctionWrapper; + } +} \ No newline at end of file diff --git a/yang-models/_3gpp-nr-nrm-externalenbfunction.yang b/yang-models/_3gpp-nr-nrm-externalenbfunction.yang new file mode 100755 index 000000000..7dab2e970 --- /dev/null +++ b/yang-models/_3gpp-nr-nrm-externalenbfunction.yang @@ -0,0 +1,60 @@ +module _3gpp-nr-nrm-externalenbfunction { + yang-version 1.1; + namespace "urn:3gpp:sa5:_3gpp-nr-nrm-externalenbfunction"; + prefix "extenb3gpp"; + + import _3gpp-common-managed-function { prefix mf3gpp; } + import _3gpp-nr-nrm-eutranetwork { prefix eutranet3gpp; } + import _3gpp-common-subnetwork { prefix subnet3gpp; } + import _3gpp-common-top { prefix top3gpp; } + + organization "3GPP SA5"; + description "Defines the YANG mapping of the ExternalENBFunction + Information Object Class (IOC) that is part of the NR Network Resource + Model (NRM)."; + reference "3GPP TS 28.541 5G Network Resource Model (NRM), + 3GPP TS 28.658 (E-UTRAN) Network Resource Model (NRM)"; + + revision 2019-10-28 { reference S5-193518 ; } + revision 2019-06-17 { + description "Initial revision"; + } + + grouping ExternalENBFunctionGrp { + description "Represets the ExternalENBFunction IOC."; + reference "3GPP TS 28.658"; + uses mf3gpp:ManagedFunctionGrp; + + leaf eNBId { + description "Unambiguously identifies an eNodeB within a PLMN."; + reference "3GPP TS 36.413, 3GPP TS 36.300"; + mandatory true; + type int32 { range "0..268435455"; } // Representing 28 bit eNB ID. + // 18, 20 and 21 bit eNB IDs also + // allowed. + } + } + + grouping ExternalENBFunctionWrapper { + list ExternalENBFunction { + description "Represents an external eNB functionality."; + reference "3GPP TS 28.658"; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses ExternalENBFunctionGrp; + } + uses mf3gpp:ManagedFunctionContainedClasses; + } + } + + augment "/subnet3gpp:SubNetwork" { + if-feature subnet3gpp:ExternalsUnderSubNetwork ; + uses ExternalENBFunctionWrapper; + } + + augment "/eutranet3gpp:EUtraNetwork" { + if-feature eutranet3gpp:ExternalsUnderEUtraNetwork; + uses ExternalENBFunctionWrapper; + } +} \ No newline at end of file diff --git a/yang-models/_3gpp-nr-nrm-externaleutrancell.yang b/yang-models/_3gpp-nr-nrm-externaleutrancell.yang new file mode 100755 index 000000000..df62f1c5f --- /dev/null +++ b/yang-models/_3gpp-nr-nrm-externaleutrancell.yang @@ -0,0 +1,153 @@ +module _3gpp-nr-nrm-externaleutrancell { + yang-version 1.1; + namespace "urn:3gpp:sa5:_3gpp-nr-nrm-externaleutrancell"; + prefix "exteutrancell3gpp"; + + import _3gpp-common-yang-types { prefix types3gpp; } + import _3gpp-common-managed-function { prefix mf3gpp; } + import _3gpp-common-subnetwork { prefix subnet3gpp; } + import _3gpp-nr-nrm-eutranetwork { prefix eutranet3gpp; } + import _3gpp-nr-nrm-externalenbfunction { prefix extenb3gpp; } + import _3gpp-common-top { prefix top3gpp; } + + organization "3GPP SA5"; + description "Defines the YANG mapping of the ExternalEUtranCellFDD and + ExternalEUtranCellTDD Information Object Classes (IOCs) that are part + of the NR Network Resource Model (NRM)."; + reference "3GPP TS 28.541 5G Network Resource Model (NRM), + 3GPP TS 28.658 (E-UTRAN) Network Resource Model (NRM)"; + + revision 2019-10-28 { reference S5-193518 ; } + revision 2019-06-17 { + description "Initial revision"; + } + + grouping ExternalEUtranGenericCellGrp { + description "Represents the ExternalEUtranGenericCell IOC."; + reference "3GPP TS 28.658"; + uses mf3gpp:ManagedFunctionGrp; + + leaf pci { + description "The Physical Cell Identity (PCI) of the cell (for + NM-Centralized, EM-Centralized and Distributed PCI assignment cases). + In the case of NM-Centralized PCI assignment, see 3GPP TS 36.300."; + reference "3GPP TS 36.211"; + mandatory true; + type int32 { range "0..503"; } + } + + list plmnIdList { + description "List of unique identities for PLMNs. A cell can broadcast + up to 6 PLMN IDs. This is to support the case that one cell can be + used by up to 6 operator's core networks. The PLMN(s) included in this + list will use the same single tracking area code (TAC) and the same + Cell Identity (cellLocalId) for sharing the radio access network + resources. One member of plmnIdList is the primary PLMN ID. A PLMN ID + included in this list cannot be included in the cellAccessInfoList. + The PLMN ID is composed of a Mobile Country Code (MCC) and a Mobile + Network Code (MNC)."; + reference "3GPP TS 36.300, 3GPP TS 36.331, 3GPP TS 23.003"; + key "mcc mnc"; + min-elements 1; + max-elements 6; + uses types3gpp:PLMNId; + } + + leaf cellLocalId { + description "Unambiguously identifies a cell within an eNodeB."; + reference "NCI defined in 3GPP TS 38.300"; + type int32 {range "0..255"; } + } + + leaf eNBId { + description "Unambiguously identifies an eNodeB within a PLMN."; + reference "3GPP TS 36.413, 3GPP TS 36.300"; + mandatory true; + type int32 { range "0..268435455"; } // Representing 28 bit eNB ID. + // 18, 20 and 21 bit eNB IDs also + // allowed. + } + } + + grouping ExternalEUtranCellFDDGrp { + description "Represents the ExternalEUtranCellFDD IOC."; + reference "3GPP TS 28.658"; + uses ExternalEUtranGenericCellGrp; + + leaf earfcnDL { + description "The channel number for the central DL frequency."; + reference "3GPP TS 36.101"; + mandatory true; + type int32 { range "0..17999 | 46590..262143"; } + } + + leaf earfcnUL { + description "The channel number for the central UL frequency. Value 0 + means that the UL channel number is N/A for the DL-only bands."; + reference "3GPP TS 36.101"; + mandatory true; + type int32 { range "0 | 18000..35999 | 46590..262143"; } + } + } + + grouping ExternalEUtranCellTDDGrp { + description "Represents the ExternalEUtranCellTDD IOC."; + reference "3GPP TS 28.658"; + uses ExternalEUtranGenericCellGrp; + + leaf earfcn { + description "The frequency number for the central frequency."; + reference "3GPP TS 36.104"; + mandatory true; + type int32 { range "36000..262143"; } + } + } + + grouping ExternalEUtranCellFDDWrapper { + list ExternalEUtranCellFDD { + description "Represents the common properties of external E-UTRAN FDD + cell provided by eNB or NG-RAN FDD cell provided by ng-eNB."; + reference "3GPP TS 28.658"; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses ExternalEUtranCellFDDGrp; + } + uses mf3gpp:ManagedFunctionContainedClasses; + } + } + + grouping ExternalEUtranCellTDDWrapper { + list ExternalEUtranCellTDD { + description "Represents the common properties of external E-UTRAN cell + TDD provided by eNB or NG-RAN TDD cell provided by ng-eNB."; + reference "3GPP TS 28.658"; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses ExternalEUtranCellTDDGrp; + } + uses mf3gpp:ManagedFunctionContainedClasses; + } + } + + augment "/subnet3gpp:SubNetwork/extenb3gpp:ExternalENBFunction" { + if-feature subnet3gpp:ExternalsUnderSubNetwork; + uses ExternalEUtranCellFDDWrapper; + } + + augment "/eutranet3gpp:EUtraNetwork/extenb3gpp:ExternalENBFunction" { + if-feature eutranet3gpp:ExternalsUnderEUtraNetwork; + uses ExternalEUtranCellFDDWrapper; + } + + augment "/subnet3gpp:SubNetwork/extenb3gpp:ExternalENBFunction" { + if-feature subnet3gpp:ExternalsUnderSubNetwork; + uses ExternalEUtranCellTDDWrapper; + } + + augment "/eutranet3gpp:EUtraNetwork/extenb3gpp:ExternalENBFunction" { + if-feature eutranet3gpp:ExternalsUnderEUtraNetwork; + uses ExternalEUtranCellTDDWrapper; + } +} \ No newline at end of file diff --git a/yang-models/_3gpp-nr-nrm-externalgnbcucpfunction.yang b/yang-models/_3gpp-nr-nrm-externalgnbcucpfunction.yang new file mode 100755 index 000000000..531e45bed --- /dev/null +++ b/yang-models/_3gpp-nr-nrm-externalgnbcucpfunction.yang @@ -0,0 +1,76 @@ +module _3gpp-nr-nrm-externalgnbcucpfunction { + yang-version 1.1; + namespace "urn:3gpp:sa5:_3gpp-nr-nrm-externalgnbcucpfunction"; + prefix "extgnbcucp3gpp"; + + import _3gpp-common-yang-types { prefix types3gpp; } + import _3gpp-common-managed-function { prefix mf3gpp; } + import _3gpp-nr-nrm-nrnetwork { prefix nrnet3gpp; } + import _3gpp-common-subnetwork { prefix subnet3gpp; } + import _3gpp-common-top { prefix top3gpp; } + + organization "3GPP SA5"; + description "Defines the YANG mapping of the ExternalGNBCUCPFunction + Information Object Class (IOC), that is part of the NR Network Resource + Model (NRM)."; + reference "3GPP TS 28.541 5G Network Resource Model (NRM)"; + + revision 2019-10-28 { reference S5-193518 ; } + revision 2019-06-17 { + description "Initial revision"; + } + + grouping ExternalGNBCUCPFunctionGrp { + description "Represets the ExternalGNBCUCPFunction IOC."; + reference "3GPP TS 28.541"; + uses mf3gpp:ManagedFunctionGrp; + + leaf gNBId { + description "Identifies a gNB within a PLMN."; + reference "gNB Identifier (gNB ID) in 3GPP TS 38.300, Global gNB ID + in 3GPP TS 38.413"; + mandatory true; + type int64 { range "0..4294967295"; } + } + + leaf gNBIdLength { + description "Indicates the number of bits for encoding the gNB ID."; + reference "gNB ID in 3GPP TS 38.300, Global gNB ID in 3GPP TS 38.413"; + mandatory true; + type int32 { range "22..32"; } + } + + list pLMNId { + description "Specifies the PLMN identifier to be used as part of the + global RAN node identity."; + key "mcc mnc"; + min-elements 1; + max-elements 1; + uses types3gpp:PLMNId; + } + } + + grouping ExternalGNBCUCPFunctionWrapper { + list ExternalGNBCUCPFunction { + description "Represents the properties, known by the management function, + of a GNBCUCPFunction managed by another management function."; + reference "3GPP TS 28.541"; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses ExternalGNBCUCPFunctionGrp; + } + uses mf3gpp:ManagedFunctionContainedClasses; + } + } + + augment "/subnet3gpp:SubNetwork" { + if-feature subnet3gpp:ExternalsUnderSubNetwork ; + uses ExternalGNBCUCPFunctionWrapper; + } + + augment "/nrnet3gpp:NRNetwork" { + if-feature nrnet3gpp:ExternalsUnderNRNetwork; + uses ExternalGNBCUCPFunctionWrapper; + } +} \ No newline at end of file diff --git a/yang-models/_3gpp-nr-nrm-externalgnbcuupfunction.yang b/yang-models/_3gpp-nr-nrm-externalgnbcuupfunction.yang new file mode 100755 index 000000000..bcdeecbcc --- /dev/null +++ b/yang-models/_3gpp-nr-nrm-externalgnbcuupfunction.yang @@ -0,0 +1,66 @@ +module _3gpp-nr-nrm-externalgnbcuupfunction { + yang-version 1.1; + namespace "urn:3gpp:sa5:_3gpp-nr-nrm-externalgnbcuupfunction"; + prefix "extgnbcuup3gpp"; + + import _3gpp-common-managed-function { prefix mf3gpp; } + import _3gpp-nr-nrm-nrnetwork { prefix nrnet3gpp; } + import _3gpp-common-subnetwork { prefix subnet3gpp; } + import _3gpp-common-top { prefix top3gpp; } + + organization "3GPP SA5"; + description "Defines the YANG mapping of the ExternalGNBCUUPFunction + Information Object Class (IOC), that is part of the NR Network + Resource Model (NRM)."; + reference "3GPP TS 28.541 5G Network Resource Model (NRM)"; + + revision 2019-10-28 { reference S5-193518 ; } + revision 2019-06-17 { + description "Initial revision"; + } + + grouping ExternalGNBCUUPFunctionGrp { + description "Represets the ExternalGNBCUUPFunction IOC."; + reference "3GPP TS 28.541"; + uses mf3gpp:ManagedFunctionGrp; + + leaf gNBId { + description "Identifies a gNB within a PLMN."; + reference "gNB Identifier (gNB ID) in 3GPP TS 38.300, Global gNB ID + in 3GPP TS 38.413"; + mandatory true; + type int64 { range "0..4294967295"; } + } + + leaf gNBIdLength { + description "Indicates the number of bits for encoding the gNB ID."; + reference "gNB ID in 3GPP TS 38.300, Global gNB ID in 3GPP TS 38.413"; + mandatory true; + type int32 { range "22..32"; } + } + } + + grouping ExternalGNBCUUPFunctionWrapper { + list ExternalGNBCUUPFunction { + description "Represents the properties, known by the management function, + of a GNBCUUPFunction managed by another management function."; + reference "3GPP TS 28.541"; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses ExternalGNBCUUPFunctionGrp; + } + uses mf3gpp:ManagedFunctionContainedClasses; + } + } + + augment "/subnet3gpp:SubNetwork" { + if-feature subnet3gpp:ExternalsUnderSubNetwork ; + uses ExternalGNBCUUPFunctionWrapper; + } + + augment "/nrnet3gpp:NRNetwork" { + if-feature nrnet3gpp:ExternalsUnderNRNetwork; + uses ExternalGNBCUUPFunctionWrapper; + } +} \ No newline at end of file diff --git a/yang-models/_3gpp-nr-nrm-externalgnbdufunction.yang b/yang-models/_3gpp-nr-nrm-externalgnbdufunction.yang new file mode 100755 index 000000000..844933025 --- /dev/null +++ b/yang-models/_3gpp-nr-nrm-externalgnbdufunction.yang @@ -0,0 +1,76 @@ +module _3gpp-nr-nrm-externalgnbdufunction { + yang-version 1.1; + namespace "urn:3gpp:sa5:_3gpp-nr-nrm-externalgnbdufunction"; + prefix "extgnbdu3gpp"; + + import _3gpp-common-yang-types { prefix types3gpp; } + import _3gpp-common-managed-function { prefix mf3gpp; } + import _3gpp-nr-nrm-nrnetwork { prefix nrnet3gpp; } + import _3gpp-common-subnetwork { prefix subnet3gpp; } + import _3gpp-common-top { prefix top3gpp; } + + organization "3GPP SA5"; + description "Defines the YANG mapping of the ExternalGNBDUFunction + Information Object Class (IOC) that is part of the NR Network Resource + Model (NRM)."; + reference "3GPP TS 28.541 5G Network Resource Model (NRM)"; + + revision 2019-10-28 { reference S5-193518 ; } + revision 2019-06-17 { + description "Initial revision"; + } + + grouping ExternalGNBDUFunctionGrp { + description "Represets the ExternalGNBDUFunction IOC."; + reference "3GPP TS 28.541"; + uses mf3gpp:ManagedFunctionGrp; + + leaf gNBId { + description "Identifies a gNB within a PLMN."; + reference "gNB Identifier (gNB ID) in 3GPP TS 38.300, Global gNB ID + in 3GPP TS 38.413"; + mandatory true; + type int64 { range "0..4294967295"; } + } + + leaf gNBIdLength { + description "Indicates the number of bits for encoding the gNB ID."; + reference "gNB ID in 3GPP TS 38.300, Global gNB ID in 3GPP TS 38.413"; + mandatory true; + type int32 { range "22..32"; } + } + + list pLMNId { + description "Specifies the PLMN identifier to be used as part of the + global RAN node identity."; + key "mcc mnc"; + min-elements 1; + max-elements 1; + uses types3gpp:PLMNId; + } + } + + grouping ExternalGNBDUFunctionWrapper { + list ExternalGNBDUFunction { + description "Represents the properties, known by the management function, + of a GNBDUFunction managed by another management function."; + reference "3GPP TS 28.541"; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses ExternalGNBDUFunctionGrp; + } + uses mf3gpp:ManagedFunctionContainedClasses; + } + } + + augment "/subnet3gpp:SubNetwork" { + if-feature subnet3gpp:ExternalsUnderSubNetwork ; + uses ExternalGNBDUFunctionWrapper; + } + + augment "/nrnet3gpp:NRNetwork" { + if-feature nrnet3gpp:ExternalsUnderNRNetwork; + uses ExternalGNBDUFunctionWrapper; + } +} \ No newline at end of file diff --git a/yang-models/_3gpp-nr-nrm-externalnrcellcu.yang b/yang-models/_3gpp-nr-nrm-externalnrcellcu.yang new file mode 100755 index 000000000..78e4671f0 --- /dev/null +++ b/yang-models/_3gpp-nr-nrm-externalnrcellcu.yang @@ -0,0 +1,85 @@ +module _3gpp-nr-nrm-externalnrcellcu { + yang-version 1.1; + namespace "urn:3gpp:sa5:_3gpp-nr-nrm-externalnrcellcu"; + prefix "extnrcellcu3gpp"; + + import _3gpp-common-yang-types { prefix types3gpp; } + import _3gpp-common-managed-function { prefix mf3gpp; } + import _3gpp-nr-nrm-nrnetwork { prefix nrnet3gpp; } + import _3gpp-common-subnetwork { prefix subnet3gpp; } + import _3gpp-nr-nrm-externalgnbcucpfunction { prefix extgnbcucp3gpp; } + import _3gpp-common-top { prefix top3gpp; } + + organization "3GPP SA5"; + description "Defines the YANG mapping of the ExternalNRCellCU Information + Object Class (IOC), that is part of the NR Network Resource Model (NRM)."; + reference "3GPP TS 28.541 5G Network Resource Model (NRM)"; + + revision 2019-10-28 { reference S5-193518 ; } + + revision 2019-06-17 { + description "Initial revision"; + } + + grouping ExternalNRCellCUGrp { + description "Represents the ExternalNRCellCU IOC."; + reference "3GPP TS 28.541"; + uses mf3gpp:ManagedFunctionGrp; + + leaf cellLocalId { + description "Identifies an NR cell of a gNB. Together with corresponding + gNB ID it forms the NR Cell Identifier (NCI)."; + reference "NCI in 3GPP TS 38.300"; + mandatory true; + type int32 {range "0..16383"; } + } + + leaf nRPCI { + description "The Physical Cell Identity (PCI) of the NR cell."; + reference "3GPP TS 36.211"; + mandatory true; + type int32 { range "0..1007"; } + } + + list pLMNIdList { + description "Defines which PLMNs that are assumed to be served by the + NR cell in another gNB CU-CP. This list is either updated by the + managed element itself (e.g. due to ANR, signalling over Xn, etc.) or + by consumer over the standard interface."; + key "mcc mnc"; + min-elements 1; + max-elements 12; + uses types3gpp:PLMNId; + } + + leaf nRFrequencyRef { + description "Reference to corresponding NRFrequency instance."; + mandatory true; + type types3gpp:DistinguishedName; + } + } + + grouping ExternalNRCellCUWrapper { + list ExternalNRCellCU { + description "Represents the properties of an NRCellCU controlled by + another Management Service Provider."; + reference "3GPP TS 28.541"; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses ExternalNRCellCUGrp; + } + uses mf3gpp:ManagedFunctionContainedClasses; + } + } + + augment "/subnet3gpp:SubNetwork/extgnbcucp3gpp:ExternalGNBCUCPFunction" { + if-feature subnet3gpp:ExternalsUnderSubNetwork ; + uses ExternalNRCellCUWrapper; + } + + augment "/nrnet3gpp:NRNetwork/extgnbcucp3gpp:ExternalGNBCUCPFunction" { + if-feature nrnet3gpp:ExternalsUnderNRNetwork; + uses ExternalNRCellCUWrapper; + } +} \ No newline at end of file diff --git a/yang-models/_3gpp-nr-nrm-externalservinggwfunction.yang b/yang-models/_3gpp-nr-nrm-externalservinggwfunction.yang new file mode 100755 index 000000000..96f51bd22 --- /dev/null +++ b/yang-models/_3gpp-nr-nrm-externalservinggwfunction.yang @@ -0,0 +1,52 @@ +module _3gpp-nr-nrm-externalservinggwfunction { + yang-version 1.1; + namespace "urn:3gpp:sa5:_3gpp-nr-nrm-externalservinggwfunction"; + prefix "extservgw3gpp"; + + import _3gpp-common-managed-function { prefix mf3gpp; } + import _3gpp-common-subnetwork { prefix subnet3gpp; } + import _3gpp-nr-nrm-eutranetwork { prefix eutranet3gpp; } + import _3gpp-common-top { prefix top3gpp; } + + organization "3GPP SA5"; + description "Defines the YANG mapping of the ExternalServingGWFunction + Information Object Class (IOC) that is part of the NR Network Resource + Model (NRM)."; + reference "3GPP TS 28.541 5G Network Resource Model (NRM)"; + + revision 2019-10-28 { reference S5-193518 ; } + revision 2019-06-17 { + description "Initial revision"; + } + + grouping ExternalServingGWFunctionGrp { + description "Represents the ExternalServingGWFunction IOC."; + reference "3GPP TS 28.541"; + uses mf3gpp:ManagedFunctionGrp; + } + + grouping ExternalServingGWFunctionWrapper { + list ExternalServingGWFunction { + description "Represents the properties, known by the management + function, of a ServingGWFunction managed by another management + function."; + reference "3GPP TS 28.658"; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses ExternalServingGWFunctionGrp; + } + uses mf3gpp:ManagedFunctionContainedClasses; + } + } + + augment "/subnet3gpp:SubNetwork" { + if-feature subnet3gpp:ExternalsUnderSubNetwork ; + uses ExternalServingGWFunctionWrapper; + } + + augment "/eutranet3gpp:EUtraNetwork" { + if-feature eutranet3gpp:ExternalsUnderEUtraNetwork; + uses ExternalServingGWFunctionWrapper; + } +} \ No newline at end of file diff --git a/yang-models/_3gpp-nr-nrm-externalupffunction.yang b/yang-models/_3gpp-nr-nrm-externalupffunction.yang new file mode 100755 index 000000000..1175c8c60 --- /dev/null +++ b/yang-models/_3gpp-nr-nrm-externalupffunction.yang @@ -0,0 +1,51 @@ +module _3gpp-nr-nrm-externalupffunction { + yang-version 1.1; + namespace "urn:3gpp:sa5:_3gpp-nr-nrm-externalupffunction"; + prefix "extupf3gpp"; + + import _3gpp-common-managed-function { prefix mf3gpp; } + import _3gpp-common-subnetwork { prefix subnet3gpp; } + import _3gpp-nr-nrm-nrnetwork { prefix nrnet3gpp; } + import _3gpp-common-top { prefix top3gpp; } + + organization "3GPP SA5"; + description "Defines the YANG mapping of the ExternalUPFFunction Information + Object Class (IOC) that is part of the NR Network Resource Model (NRM)."; + reference "3GPP TS 28.541 5G Network Resource Model (NRM)"; + + revision 2019-10-28 { reference S5-193518 ; } + revision 2019-06-17 { + description "Initial revision"; + } + + grouping ExternalUPFFunctionGrp { + description "Represents the ExternalUPFFunction IOC."; + reference "3GPP TS 28.541"; + uses mf3gpp:ManagedFunctionGrp; + } + + grouping ExternalUPFFunctionWrapper { + list ExternalUPFFunction { + description "Represents the properties, known by the management + function, of a UPFFunction managed by another management + function."; + reference "3GPP TS 28.541"; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses ExternalUPFFunctionGrp; + } + uses mf3gpp:ManagedFunctionContainedClasses; + } + } + + augment "/subnet3gpp:SubNetwork" { + if-feature subnet3gpp:ExternalsUnderSubNetwork ; + uses ExternalUPFFunctionWrapper; + } + + augment "/nrnet3gpp:NRNetwork" { + if-feature nrnet3gpp:ExternalsUnderNRNetwork; + uses ExternalUPFFunctionWrapper; + } +} \ No newline at end of file diff --git a/yang-models/_3gpp-nr-nrm-gnbcucpfunction.yang b/yang-models/_3gpp-nr-nrm-gnbcucpfunction.yang new file mode 100755 index 000000000..04122e97f --- /dev/null +++ b/yang-models/_3gpp-nr-nrm-gnbcucpfunction.yang @@ -0,0 +1,132 @@ +module _3gpp-nr-nrm-gnbcucpfunction { + yang-version 1.1; + namespace "urn:3gpp:sa5:_3gpp-nr-nrm-gnbcucpfunction"; + prefix "gnbcucp3gpp"; + + import _3gpp-common-yang-types { prefix types3gpp; } + import _3gpp-common-managed-function { prefix mf3gpp; } + import _3gpp-common-managed-element { prefix me3gpp; } + import _3gpp-common-top { prefix top3gpp; } + import _3gpp-nr-nrm-rrmpolicy { prefix nrrrmpolicy3gpp; } + + organization "3GPP SA5"; + contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; + description "Defines the YANG mapping of the GNBCUCPFunction Information + Object Class (IOC) that is part of the NR Network Resource Model (NRM)."; + reference "3GPP TS 28.541 5G Network Resource Model (NRM)"; + + revision 2020-10-02 { reference CR-0384 ; } + revision 2020-08-06 { reference "CR-0333"; } + revision 2020-08-03 { reference "CR-0321"; } + revision 2020-06-03 { reference "CR-0286"; } + revision 2020-05-08 { reference S5-203316 ; } + revision 2020-04-28 { reference "0260"; } + revision 2020-02-14 { reference S5-20XXXX ; } + revision 2019-10-28 { reference S5-193518 ; } + revision 2019-06-17 { + description "Initial revision"; + } + + feature DESManagementFunction { + description "Classs representing Distributed SON Energy Saving feature"; + } + + feature DANRManagementFunction { + description "Classs representing D-SON function of ANR Management feature"; + } + + + feature DMROFunction { + description "Classs representing D-SON function of MRO feature"; + } + + grouping GNBCUCPFunctionGrp { + description "Represents the GNBCUCPFunction IOC."; + reference "3GPP TS 28.541"; + uses mf3gpp:ManagedFunctionGrp; + uses nrrrmpolicy3gpp:RRMPolicy_Grp; + + leaf gNBId { + description "Identifies a gNB within a PLMN. The gNB Identifier (gNB ID) + is part of the NR Cell Identifier (NCI) of the gNB cells."; + reference "gNB ID in 3GPP TS 38.300, Global gNB ID in 3GPP TS 38.413"; + mandatory true; + type int64 { range "0..4294967295"; } + } + + leaf gNBIdLength { + description "Indicates the number of bits for encoding the gNB ID."; + reference "gNB ID in 3GPP TS 38.300, Global gNB ID in 3GPP TS 38.413"; + mandatory true; + type int32 { range "22..32"; } + } + + leaf gNBCUName { + description "Identifies the Central Unit of an gNB."; + reference "3GPP TS 38.473"; + mandatory true; + type string { length "1..150"; } + } + + list pLMNId { + description "The PLMN identifier to be used as part of the global RAN + node identity."; + key "mcc mnc"; + min-elements 1; + max-elements 1; + uses types3gpp:PLMNId; + } + + leaf-list x2BlackList { + type string; + description "List of nodes to which X2 connections are prohibited."; + } + + leaf-list x2WhiteList { + type string; + description "List of nodes to which X2 connections are enforced."; + } + + leaf-list xnBlackList { + type string; + description "List of nodes to which Xn connections are prohibited."; + } + + leaf-list xnWhiteList { + type string; + description "List of nodes to which X2 connections are enforced."; + } + + leaf-list xnHOBlackList { + type string; + description "List of nodes to which handovers over Xn are prohibited."; + } + leaf configurable5QISetRef { + type types3gpp:DistinguishedName; + description "DN of the Configurable5QISet that the GNBCUCPFunction supports (is associated to)."; + } + + leaf-list x2HOBlackList { + type string; + description "List of nodes to which handovers over X2 are prohibited."; + } + leaf dynamic5QISetRef { + type types3gpp:DistinguishedName; + description "DN of the Dynamic5QISet that the GNBCUCPFunction supports (is associated to)."; + } + } + + augment "/me3gpp:ManagedElement" { + + list GNBCUCPFunction { + description "Represents the logical function CU-CP of gNB and en-gNB."; + reference "3GPP TS 28.541"; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses GNBCUCPFunctionGrp; + } + uses mf3gpp:ManagedFunctionContainedClasses; + } + } +} \ No newline at end of file diff --git a/yang-models/_3gpp-nr-nrm-gnbcuupfunction.yang b/yang-models/_3gpp-nr-nrm-gnbcuupfunction.yang new file mode 100755 index 000000000..944da20a7 --- /dev/null +++ b/yang-models/_3gpp-nr-nrm-gnbcuupfunction.yang @@ -0,0 +1,172 @@ +module _3gpp-nr-nrm-gnbcuupfunction { + yang-version 1.1; + namespace "urn:3gpp:sa5:_3gpp-nr-nrm-gnbcuupfunction"; + prefix "gnbcuup3gpp"; + + import _3gpp-common-yang-types { prefix types3gpp; } + import _3gpp-common-managed-function { prefix mf3gpp; } + import _3gpp-common-managed-element { prefix me3gpp; } + import _3gpp-common-top { prefix top3gpp; } + import _3gpp-nr-nrm-rrmpolicy { prefix nrrrmpolicy3gpp; } + import _3gpp-5g-common-yang-types { prefix types5g3gpp; } + + organization "3GPP SA5"; + contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; + description "Defines the YANG mapping of the GNBCUUPFunction Information + Object Class (IOC) that is part of the NR Network Resource Model (NRM)."; + reference "3GPP TS 28.541 5G Network Resource Model (NRM)"; + + revision 2020-11-05 { reference CR-0412 ; } + revision 2020-08-06 { reference "CR-0333"; } + revision 2020-08-03 { reference "CR-0321"; } + revision 2020-06-03 { reference "CR-0286"; } + revision 2020-05-28 { reference "CR-0318"; } + revision 2020-03-12 { reference "SP-200233 S5-201547"; } + revision 2020-02-14 { reference S5-20XXXX ; } + revision 2019-10-28 { reference S5-193518 ; } + revision 2019-08-21 { reference "Initial revision"; } + + grouping TAIGrp { + description "Tracking Area Identity"; + + list pLMNId { + key "mcc mnc"; + description "PLMN IDs for the Tracking area"; + uses types3gpp:PLMNId; + } + + leaf nRTAC { + type int64; + description "Identity of the common Tracking Area Code for the PLMNs + allowedValues: + a) It is the TAC or Extended-TAC. + b) A cell can only broadcast one TAC or Extended-TAC. + See TS 36.300, subclause 10.1.7 (PLMNID and TAC relation). + c) TAC is defined in subclause 19.4.2.3 of 3GPP TS 23.003 and + Extended-TAC is defined in subclause 9.3.1.29 of 3GPP TS 38.473. + d) For a 5G SA (Stand Alone), it has a non-null value."; + } + } + + grouping BackhaulAddressGrp { + description "Indicates the backhauladdress of gNB."; + + leaf gNBId { + type uint32 { + range "0..4294967295"; + } + description "It identifies a gNB within a PLMN. The gNB ID is part of + the NR Cell Identifier (NCI) of the gNB cells."; + reference "gNB Identifier (gNB ID) of subclause 8.2 of TS 38.300. + Global gNB ID in subclause 9.3.1.6 of TS 38.413"; + } + + list tAI { + key nRTAC; + min-elements 1; + max-elements 1; + description "Tracking Area Identity"; + reference "subclause 9.3.3.11 in TS 38.413"; + uses TAIGrp; + } + } + + grouping MappingSetIDBackhaulAddressGrp { + description "Mapping relationship between setID and backhaulAddress of gNB"; + + leaf idx { + type uint32 ; + description "ID value"; + } + + leaf setID { + type uint32; + mandatory true; + description "Indicates the setID of gNB."; + reference "Subclause 7.4.1.6 in TS 38.211"; + } + + list backhaulAddress { + key gNBId; + min-elements 1; + max-elements 1; + description "Indicates the backhauladdress of gNB."; + uses BackhaulAddressGrp; + } + } + grouping GNBCUUPFunctionGrp { + description "Represents the GNBCUUPFunction IOC."; + reference "3GPP TS 28.541"; + uses mf3gpp:ManagedFunctionGrp; + uses nrrrmpolicy3gpp:RRMPolicy_Grp; + + leaf gNBCUUPId { + type uint64 { + range "0..68719476735" ; + } + config false; + mandatory true; + description "Identifies the gNB-CU-UP at least within a gNB-CU-CP"; + reference "'gNB-CU-UP ID' in subclause 9.3.1.15 of 3GPP TS 38.463"; + } + + leaf gNBId { + type uint32; + mandatory true; + description "Identifies a gNB within a PLMN. The gNB ID is part of the + NR Cell Identifier (NCI) of the gNB cells. "; + reference "gNB Identifier (gNB ID) of subclause 8.2 of TS 38.300. + Global gNB ID in subclause 9.3.1.6 of TS 38.413"; + } + + leaf gNBIdLength { + mandatory true; + type int32 { range "22..32"; } + description "Indicates the number of bits for encoding the gNB Id."; + reference "gNB Id in 3GPP TS 38.300, Global gNB ID in 3GPP TS 38.413"; + } + + list pLMNInfoList { + description "The PLMNInfoList is a list of PLMNInfo data type. It + defines which PLMNs that can be served by the GNBCUUPFunction and + which S-NSSAIs can be supported by the GNBCUUPFunction for + corresponding PLMN in case of network slicing feature is supported"; + key "mcc mnc sd sst"; + uses types5g3gpp:PLMNInfo; + } + + list mappingSetIDBackhaulAddressList { + key idx; + description "Specifies a list of mappingSetIDBackhaulAddress used to + retrieve the backhaul address of the victim set. + Must be present if Remote Interference Management function is + supported."; + uses MappingSetIDBackhaulAddressGrp; + } + + leaf configurable5QISetRef { + type types3gpp:DistinguishedName; + description "DN of the Configurable5QISet that the GNBCUUPFunction + supports (is associated to)."; + } + leaf dynamic5QISetRef { + type types3gpp:DistinguishedName; + description "DN of the Dynamic5QISet that the GNBCUUPFunction + supports (is associated to)."; + } + } + + augment "/me3gpp:ManagedElement" { + + list GNBCUUPFunction { + key id; + description "Represents the logical function CU-UP of gNB or en-gNB."; + reference "3GPP TS 28.541"; + uses top3gpp:Top_Grp; + container attributes { + uses GNBCUUPFunctionGrp; + } + uses mf3gpp:ManagedFunctionContainedClasses; + } + } +} \ No newline at end of file diff --git a/yang-models/_3gpp-nr-nrm-gnbdufunction.yang b/yang-models/_3gpp-nr-nrm-gnbdufunction.yang new file mode 100755 index 000000000..f69c62299 --- /dev/null +++ b/yang-models/_3gpp-nr-nrm-gnbdufunction.yang @@ -0,0 +1,93 @@ +module _3gpp-nr-nrm-gnbdufunction { + yang-version 1.1; + namespace "urn:3gpp:sa5:_3gpp-nr-nrm-gnbdufunction"; + prefix "gnbdu3gpp"; + + import _3gpp-common-managed-function { prefix mf3gpp; } + import _3gpp-common-managed-element { prefix me3gpp; } + import _3gpp-common-top { prefix top3gpp; } + import _3gpp-nr-nrm-rrmpolicy { prefix nrrrmpolicy3gpp; } + + organization "3GPP SA5"; + description "Defines the YANG mapping of the GNBDUFunction Information + Object Class (IOC) that is part of the NR Network Resource Model (NRM)."; + reference "3GPP TS 28.541 5G Network Resource Model (NRM)"; + + revision 2021-04-30 { reference CR-0490 ; } + revision 2020-10-02 { reference CR-0384 ; } + revision 2020-03-12 { reference "SP-200233 S5-201547" ; } + revision 2020-02-14 { reference S5-20XXXX ; } + revision 2019-10-28 { reference S5-193518 ; } + revision 2019-08-21 { + description "Initial revision."; + } + + feature DRACHOptimizationFunction { + description "Classs representing D-SON function of RACH optimization +feature"; + } + + grouping GNBDUFunctionGrp { + description "Represents the GNBDUFunction IOC."; + reference "3GPP TS 28.541"; + uses mf3gpp:ManagedFunctionGrp; + uses nrrrmpolicy3gpp:RRMPolicy_Grp; + + leaf gNBId { + type int64 { range "0..4294967295"; } + mandatory true; + description "Identifies a gNB within a PLMN. The gNB Identifier (gNB ID) + is part of the NR Cell Identifier (NCI) of the gNB cells."; + reference "gNB ID in 3GPP TS 38.300, Global gNB ID in 3GPP TS 38.413"; + } + + leaf gNBIdLength { + type int32 { range "22..32"; } + mandatory true; + description "Indicates the number of bits for encoding the gNB ID."; + reference "gNB ID in 3GPP TS 38.300, Global gNB ID in 3GPP TS 38.413"; + } + + leaf gNBDUId { + type int64 { range "0..68719476735"; } + mandatory true; + description "Uniquely identifies the DU at least within a gNB."; + reference "3GPP TS 38.473"; + } + + leaf gNBDUName { + type string { length "1..150"; } + description "Identifies the Distributed Unit of an NR node"; + reference "3GPP TS 38.473"; + } + + leaf aggressorSetID { + type uint32 { range "0..4194304"; } + config false; + description "Indicates the associated aggressor gNB Set ID of the cell + Valid when Remote Interference Management function is supported."; + reference "3GPP TS 38.211 subclause 7.4.1.6"; + } + leaf victimSetID { + type uint32 { range "0..4194304"; } + config false; + description "Indicates the associated victim gNB Set ID of the cell + Valid when Remote Interference Management function is supported."; + reference "3GPP TS 38.211 subclause 7.4.1.6"; + } + } + + augment "/me3gpp:ManagedElement" { + + list GNBDUFunction { + key id; + description "Represents the logical function DU of gNB or en-gNB."; + reference "3GPP TS 28.541"; + uses top3gpp:Top_Grp; + container attributes { + uses GNBDUFunctionGrp; + } + uses mf3gpp:ManagedFunctionContainedClasses; + } + } +} \ No newline at end of file diff --git a/yang-models/_3gpp-nr-nrm-nrcellcu.yang b/yang-models/_3gpp-nr-nrm-nrcellcu.yang new file mode 100755 index 000000000..a0a3e9889 --- /dev/null +++ b/yang-models/_3gpp-nr-nrm-nrcellcu.yang @@ -0,0 +1,93 @@ +module _3gpp-nr-nrm-nrcellcu { + yang-version 1.1; + namespace "urn:3gpp:sa5:_3gpp-nr-nrm-nrcellcu"; + prefix "nrcellcu3gpp"; + + import _3gpp-common-yang-types { prefix types3gpp; } + import _3gpp-common-managed-function { prefix mf3gpp; } + import _3gpp-common-managed-element { prefix me3gpp; } + import _3gpp-nr-nrm-gnbcucpfunction { prefix gnbcucp3gpp; } + import _3gpp-common-top { prefix top3gpp; } + import _3gpp-5g-common-yang-types { prefix types5g3gpp; } + + organization "3GPP SA5"; + contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; + description "Defines the YANG mapping of the NRCellCU Information Object + Class (IOC) that is part of the NR Network Resource Model (NRM)."; + reference "3GPP TS 28.541 5G Network Resource Model (NRM)"; + + revision 2021-01-25 { reference CR-0454 ; } + revision 2020-11-25 { reference CR-0386 ; } + revision 2020-11-05 { reference CR-0412 ; } + revision 2020-10-02 { reference CR-0384 ; } + revision 2020-05-08 { reference S5-203316 ; } + revision 2020-02-14 { reference S5-20XXXX ; } + revision 2019-10-28 { reference S5-193518 ; } + revision 2019-06-17 { reference "Initial revision"; } + + feature DPCIConfigurationFunction { + description "Class representing Distributed SON + function of PCI configuration feature"; + } + + feature DESManagementFunction { + description "Class representing Distributed SON + Energy Saving feature"; + } + + feature DMROFunction { + description "Class representing D-SON function of MRO feature"; + } + + feature CESManagementFunction { + description "Class representing Centralized SON Energy Saving + feature"; + } + + grouping NRCellCUGrp { + description "Represents the NRCellCU IOC."; + reference "3GPP TS 28.541"; + uses mf3gpp:ManagedFunctionGrp; + + leaf cellLocalId { + description "Identifies an NR cell of a gNB. Together with corresponding + gNB ID it forms the NR Cell Identifier (NCI)."; + mandatory true; + type int32 { range "0..16383"; } + } + + list pLMNInfoList { + description "The PLMNInfoList is a list of PLMNInfo data type. It defines + which PLMNs that can be served by the NR cell, and which S-NSSAIs that + can be supported by the NR cell for corresponding PLMN in case of + network slicing feature is supported."; + // Note: Whether the attribute pLMNId in the pLMNInfo can be writable + // depends on the implementation. + key "mcc mnc sd sst"; + min-elements 1; + uses types5g3gpp:PLMNInfo; + } + + leaf nRFrequencyRef { + description "Reference to corresponding NRFrequency instance."; + config false; + type types3gpp:DistinguishedName; + } + } + + augment "/me3gpp:ManagedElement/gnbcucp3gpp:GNBCUCPFunction" { + + list NRCellCU { + description "Represents the information required by CU that is + responsible for the management of inter-cell mobility and neighbour + relations via ANR."; + reference "3GPP TS 28.541"; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses NRCellCUGrp; + } + uses mf3gpp:ManagedFunctionContainedClasses; + } + } +} \ No newline at end of file diff --git a/yang-models/_3gpp-nr-nrm-nrcelldu.yang b/yang-models/_3gpp-nr-nrm-nrcelldu.yang new file mode 100755 index 000000000..7869934b1 --- /dev/null +++ b/yang-models/_3gpp-nr-nrm-nrcelldu.yang @@ -0,0 +1,226 @@ +module _3gpp-nr-nrm-nrcelldu { + yang-version 1.1; + namespace "urn:3gpp:sa5:_3gpp-nr-nrm-nrcelldu"; + prefix "nrcelldu3gpp"; + + import _3gpp-common-yang-types { prefix types3gpp; } + import _3gpp-common-managed-function { prefix mf3gpp; } + import _3gpp-common-managed-element { prefix me3gpp; } + import _3gpp-common-top { prefix top3gpp; } + import _3gpp-nr-nrm-gnbdufunction { prefix gnbdu3gpp; } + import _3gpp-nr-nrm-rrmpolicy { prefix nrrrmpolicy3gpp; } + import _3gpp-5g-common-yang-types { prefix types5g3gpp; } + + + organization "3GPP SA5"; + contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; + description "Defines the YANG mapping of the NRCellDU Information Object + Class (IOC) that is part of the NR Network Resource Model (NRM)."; + reference "3GPP TS 28.541 5G Network Resource Model (NRM)"; + + revision 2021-01-25 { reference CR-0454 ; } + revision 2020-11-25 { reference CR-0386 ; } + revision 2020-11-05 { reference CR-0412 ; } + revision 2020-10-02 { reference CR-0384 ; } + revision 2020-05-08 { reference S5-203316 ; } + revision 2020-02-14 { reference S5-20XXXX ; } + revision 2019-10-28 { reference S5-193518 ; } + revision 2019-09-03 { reference "Initial revision"; } + + feature DRACHOptimizationFunction { + description "Class representing D-SON function of RACH optimization + feature"; + } + + feature CPCIConfigurationFunction { + description "Class representing Centralized SON function of + PCI configuration feature"; + } + + grouping NRCellDUGrp { + description "Represents the NRCellDU IOC."; + reference "3GPP TS 28.541"; + uses mf3gpp:ManagedFunctionGrp; + uses nrrrmpolicy3gpp:RRMPolicy_Grp; + + leaf cellLocalId { + description "Identifies an NR cell of a gNB. Together with the + corresponding gNB identifier in forms the NR Cell Identity (NCI)."; + reference "NCI in 3GPP TS 38.300"; + mandatory true; + type int32 { range "0..16383"; } + } + + leaf operationalState { + description "Operational state of the NRCellDU instance. Indicates + whether the resource is installed and partially or fully operable + (ENABLED) or the resource is not installed or not operable + (DISABLED)."; + config false; + type types3gpp:OperationalState; + } + + leaf administrativeState { + description "Administrative state of the NRCellDU. Indicates the + permission to use or prohibition against using the cell, imposed + through the OAM services."; + type types3gpp:AdministrativeState; + default LOCKED; + } + + leaf cellState { + description "Cell state of the NRCellDU instance. Indicates whether the + cell is not currently in use (IDLE), or currently in use but not + configured to carry traffic (INACTIVE), or currently in use and is + configured to carry traffic (ACTIVE)."; + config false; + type types3gpp:CellState; + } + + list pLMNInfoList { + description "The PLMNInfoList is a list of PLMNInfo data type. It + defines which PLMNs that can be served by the NR cell, and which + S-NSSAIs that can be supported by the NR cell for corresponding PLMN + in case of network slicing feature is supported. The plMNId of the + first entry of the list is the PLMNId used to construct the nCGI for + the NR cell."; + key "mcc mnc sd sst"; + min-elements 1; + ordered-by user; + uses types5g3gpp:PLMNInfo; + } + + leaf nRPCI { + description "The Physical Cell Identity (PCI) of the NR cell."; + reference "3GPP TS 36.211"; + mandatory true; + type int32 { range "0..1007"; } + } + + leaf nRTAC { + description "The common 5GS Tracking Area Code for the PLMNs."; + reference "3GPP TS 23.003, 3GPP TS 38.473"; + type types3gpp:Tac; + } + + leaf arfcnDL { + description "NR Absolute Radio Frequency Channel Number (NR-ARFCN) for + downlink."; + reference "3GPP TS 38.104"; + mandatory true; + type int32; + } + + leaf arfcnUL { + description "NR Absolute Radio Frequency Channel Number (NR-ARFCN) for + uplink."; + reference "3GPP TS 38.104"; + type int32; + } + + leaf arfcnSUL { + description "NR Absolute Radio Frequency Channel Number (NR-ARFCN) for + supplementary uplink."; + reference "3GPP TS 38.104"; + type int32; + } + + leaf bSChannelBwDL { + description "Base station channel bandwidth for downlink."; + reference "3GPP TS 38.104"; + type int32; + units MHz; + } + + leaf bSChannelBwUL { + description "Base station channel bandwidth for uplink."; + reference "3GPP TS 38.104"; + type int32; + units MHz; + } + + leaf bSChannelBwSUL { + description "Base station channel bandwidth for supplementary uplink."; + reference "3GPP TS 38.104"; + type int32; + units MHz; + } + + leaf ssbFrequency { + description "Indicates cell defining SSB frequency domain position. + Frequency (in terms of NR-ARFCN) of the cell defining SSB transmission. + The frequency identifies the position of resource element RE=#0 + (subcarrier #0) of resource block RB#10 of the SS block. The frequency + must be positioned on the NR global frequency raster, as defined in + 3GPP TS 38.101-1, and within bSChannelBwDL."; + mandatory true; + type int32 { range "0..3279165"; } + } + + leaf ssbPeriodicity { + description "Indicates cell defined SSB periodicity. The SSB periodicity + is used for the rate matching purpose."; + mandatory true; + type int32 { range "5 | 10 | 20 | 40 | 80 | 160"; } + units "subframes (ms)"; + } + + leaf ssbSubCarrierSpacing { + description "Subcarrier spacing of SSB. Only the values 15 kHz or 30 kHz + (< 6 GHz), 120 kHz or 240 kHz (> 6 GHz) are applicable."; + reference "3GPP TS 38.211"; + mandatory true; + type int32 { range "15 | 30 | 120 | 240"; } + units kHz; + } + + leaf ssbOffset { + description "Indicates cell defining SSB time domain position. Defined + as the offset of the measurement window, in which to receive SS/PBCH + blocks, where allowed values depend on the ssbPeriodicity + (ssbOffset < ssbPeriodicity)."; + mandatory true; + type int32 { range "0..159"; } + units "subframes (ms)"; + } + + leaf ssbDuration { + description "Duration of the measurement window in which to receive + SS/PBCH blocks."; + reference "3GPP TS 38.213"; + mandatory true; + type int32 { range "1..5"; } + units "subframes (ms)"; + } + + leaf-list nRSectorCarrierRef { + description "Reference to corresponding NRSectorCarrier instance."; + min-elements 1; + type types3gpp:DistinguishedName; + } + + leaf-list bWPRef { + description "Reference to corresponding BWP instance."; + type types3gpp:DistinguishedName; + } + + leaf-list nRFrequencyRef { + description "Reference to corresponding NRFrequency instance."; + type types3gpp:DistinguishedName; + } + } + + augment "/me3gpp:ManagedElement/gnbdu3gpp:GNBDUFunction" { + + list NRCellDU { + description "Represents the information of a cell known by DU."; + reference "3GPP TS 28.541"; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses NRCellDUGrp; + } + uses mf3gpp:ManagedFunctionContainedClasses; + } + } +} \ No newline at end of file diff --git a/yang-models/_3gpp-nr-nrm-nrcellrelation.yang b/yang-models/_3gpp-nr-nrm-nrcellrelation.yang new file mode 100755 index 000000000..6e2a77b91 --- /dev/null +++ b/yang-models/_3gpp-nr-nrm-nrcellrelation.yang @@ -0,0 +1,144 @@ +module _3gpp-nr-nrm-nrcellrelation { + yang-version 1.1; + namespace "urn:3gpp:sa5:_3gpp-nr-nrm-nrcellrelation"; + prefix "nrcellrel3gpp"; + + import _3gpp-common-yang-types { prefix types3gpp; } + import _3gpp-common-managed-function { prefix mf3gpp; } + import _3gpp-common-managed-element { prefix me3gpp; } + import _3gpp-common-top { prefix top3gpp; } + import _3gpp-nr-nrm-gnbcucpfunction { prefix gnbcucp3gpp; } + import _3gpp-nr-nrm-nrcellcu { prefix nrcellcu3gpp; } + + organization "3GPP SA5"; + description "Defines the YANG mapping of the NRCellRelation Information + Object Class (IOC) that is part of the NR Network Resource Model (NRM)."; + reference "3GPP TS 28.541 5G Network Resource Model (NRM)"; + + revision 2021-01-25 { reference CR-0454 ; } + revision 2020-06-03 { reference S5-202333 ; } + revision 2020-04-23 { reference CR0281 ; } + revision 2019-10-28 { reference S5-193518 ; } + revision 2019-08-30 { + description "Initial revision"; + } + + + typedef EnergySavingCoverage { + type enumeration { + enum FULL; + enum NO; + enum PARTIAL; + } + } + + grouping NRCellRelationGrp { + description "Represents the NRCellRelation IOC."; + reference "3GPP TS 28.541"; + + leaf nRTCI { + description "Target NR Cell Identifier. It consists of NR Cell + Identifier (NCI) and Physical Cell Identifier of the target NR cell + (nRPCI)."; + type uint64; + } + + container cellIndividualOffset { + description "A set of offset values for the neighbour cell. Used when + UE is in connected mode. Defined for rsrpOffsetSSB, rsrqOffsetSSB, + sinrOffsetSSB, rsrpOffsetCSI-RS, rsrqOffsetCSI-RS and + sinrOffsetCSI-RS."; + reference "cellIndividualOffset in MeasObjectNR in 3GPP TS 38.331"; + + leaf rsrpOffsetSsb { + description "Offset value of rsrpOffsetSSB."; + default 0; + type types3gpp:QOffsetRange; + } + + leaf rsrqOffsetSsb{ + description "Offset value of rsrqOffsetSSB."; + default 0; + type types3gpp:QOffsetRange; + } + + leaf sinrOffsetSsb { + description "Offset value of sinrOffsetSSB."; + default 0; + type types3gpp:QOffsetRange; + } + + leaf rsrpOffsetCsiRs{ + description "Offset value of rsrpOffsetCSI-RS."; + default 0; + type types3gpp:QOffsetRange; + } + + leaf rsrqOffsetCsiRs { + description "Offset value of rsrqOffsetCSI-RS."; + default 0; + type types3gpp:QOffsetRange; + } + + leaf sinrOffsetCsiRs { + description "Offset value of sinrOffsetCSI-RS."; + default 0; + type types3gpp:QOffsetRange; + } + } + + leaf nRFreqRelationRef { + description "Reference to a corresponding NRFreqRelation instance."; + mandatory true; + type types3gpp:DistinguishedName; + } + + leaf adjacentNRCellRef { + description "Reference to an adjacent NR cell (NRCellCU or + ExternalNRCellCU)."; + mandatory true; + type types3gpp:DistinguishedName; + } + + leaf isRemoveAllowed { + type boolean; + default true; + description "True if the ANR function in the node is allowed to remove this relation."; + } + + leaf isHOAllowed { + type boolean; + default true; + description "True if handovers are allowed over this relation."; + } + + leaf isESCoveredBy { + description "Indicates whether the adjacent cell + provides no, partial or full coverage for the parent cell + instance. Adjacent cells with this attribute equal to FULL are + recommended to be considered as candidate cells to take over the + coverage when the original cell is about to be changed to energy + saving state. All adjacent cells with this property equal + to PARTIAL are recommended to be considered as entirety of candidate + cells to take over the coverage when the original cell is about to be + changed to energy saving state."; + type EnergySavingCoverage; + } + } + + augment /me3gpp:ManagedElement/gnbcucp3gpp:GNBCUCPFunction/nrcellcu3gpp:NRCellCU { + + list NRCellRelation { + description "Represents a neighbour cell relation from a source cell + to a target cell, where the target cell is an NRCellCU or + ExternalNRCellCU instance."; + reference "3GPP TS 28.541"; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses NRCellRelationGrp; + } + uses mf3gpp:ManagedFunctionContainedClasses; + } + } +} \ No newline at end of file diff --git a/yang-models/_3gpp-nr-nrm-nrfreqrelation.yang b/yang-models/_3gpp-nr-nrm-nrfreqrelation.yang new file mode 100755 index 000000000..3d25d85d0 --- /dev/null +++ b/yang-models/_3gpp-nr-nrm-nrfreqrelation.yang @@ -0,0 +1,245 @@ +module _3gpp-nr-nrm-nrfreqrelation { + yang-version 1.1; + namespace "urn:3gpp:sa5:_3gpp-nr-nrm-nrfreqrelation"; + prefix "nrfreqrel3gpp"; + + import _3gpp-common-yang-types { prefix types3gpp; } + import _3gpp-common-managed-function { prefix mf3gpp; } + import _3gpp-common-managed-element { prefix me3gpp; } + import _3gpp-common-top { prefix top3gpp; } + import _3gpp-nr-nrm-gnbcucpfunction { prefix gnbcucp3gpp; } + import _3gpp-nr-nrm-nrcellcu { prefix nrcellcu3gpp; } + + organization "3GPP SA5"; + description "Defines the YANG mapping of the NRFreqRelation Information + Object Class (IOC) that is part of the NR Network Resource Model (NRM)."; + reference "3GPP TS 28.541 5G Network Resource Model (NRM)"; + + revision 2020-04-23 { reference CR0281 ; } + revision 2019-10-28 { reference S5-193518 ; } + revision 2019-06-17 { + description "Initial revision"; + } + + grouping NRFreqRelationGrp { + description "Represents the NRFreqRelation IOC."; + reference "3GPP TS 28.541"; + + container offsetMO { + description "A set of offset values applicable to all measured cells + with reference signal(s) indicated in corresponding MeasObjectNR. It + is used to indicate a cell, beam or measurement object specific offset + to be applied when evaluating candidates for cell re-selection or when + evaluating triggering conditions for measurement reporting. It is + defined for rsrpOffsetSSB, rsrqOffsetSSB, sinrOffsetSSB, + rsrpOffsetCSI-RS, rsrqOffsetCSI-RS and sinrOffsetCSI-RS."; + reference "offsetMO in MeasObjectNR in 3GPP TS 38.331"; + + leaf rsrpOffsetSsb { + description "Offset value of rsrpOffsetSSB."; + default 0; + type types3gpp:QOffsetRange; + } + + leaf rsrqOffsetSsb { + description "Offset value of rsrqOffsetSSB."; + default 0; + type types3gpp:QOffsetRange; + } + + leaf sinrOffsetSsb { + description "Offset value of sinrOffsetSSB."; + default 0; + type types3gpp:QOffsetRange; + } + + leaf rsrpOffsetCsiRs { + description "Offset value of rsrpOffsetCSI-RS."; + default 0; + type types3gpp:QOffsetRange; + } + + leaf rsrqOffsetCsiRs { + description "Offset value of rsrqOffsetCSI-RS."; + default 0; + type types3gpp:QOffsetRange; + } + + leaf sinrOffsetCsiRs { + description "Offset value of sinrOffsetCSI-RS."; + default 0; + type types3gpp:QOffsetRange; + } + } + + leaf-list blackListEntry { + description "A list of Physical Cell Identities (PCIs) that are + blacklisted in NR measurements."; + reference "3GPP TS 38.331"; + min-elements 0; + type uint16 { range "0..1007"; } + } + + leaf-list blackListEntryIdleMode { + description "A list of Physical Cell Identities (PCIs) that are + blacklisted in SIB4 and SIB5."; + min-elements 0; + type uint16 { range "0..1007"; } + } + + leaf cellReselectionPriority { + description "The absolute priority of the carrier frequency used by the + cell reselection procedure. Value 0 means lowest priority. The value + must not already used by other RAT, i.e. equal priorities between RATs + are not supported. The UE behaviour when no value is entered is + specified in subclause 5.2.4.1 of 3GPP TS 38.304."; + reference "CellReselectionPriority in 3GPP TS 38.331, priority in + 3GPP TS 38.304"; + type uint32; + default 0; + } + + leaf cellReselectionSubPriority { + description "Indicates a fractional value to be added to the value of + cellReselectionPriority to obtain the absolute priority of the + concerned carrier frequency for E-UTRA and NR."; + reference "3GPP TS 38.331"; + type uint8 { range "2 | 4 | 6 | 8"; } + units "0.1"; + } + + leaf pMax { + description "Used for calculation of the parameter Pcompensation + (defined in 3GPP TS 38.304), at cell reselection to a cell."; + reference "PEMAX in 3GPP TS 38.101-1"; + mandatory false; + type int32 { range "-30..33"; } + units dBm; + } + + leaf qOffsetFreq { + description "The frequency specific offset applied when evaluating + candidates for cell reselection."; + mandatory false; + type types3gpp:QOffsetRange; + default 0; + } + + leaf qQualMin { + description "Indicates the minimum required quality level in the cell. + Value 0 means that it is not sent and UE applies in such case the + (default) value of negative infinity for Qqualmin. Sent in SIB3 or + SIB5."; + reference "3GPP TS 38.304"; + type int32 { range "-34..-3 | 0"; } + units dB; + default 0; + } + + leaf qRxLevMin { + description "Indicates the required minimum received Reference Symbol + Received Power (RSRP) level in the NR frequency for cell reselection. + Broadcast in SIB3 or SIB5, depending on whether the related frequency + is intra- or inter-frequency. Resolution is 2."; + reference "3GPP TS 38.304"; + mandatory true; + type int32 { range "-140..-44"; } + units dBm; + } + + leaf threshXHighP { + description "Specifies the Srxlev threshold used by the UE when + reselecting towards a higher priority RAT/frequency than the current + serving frequency. Each frequency of NR and E-UTRAN might have a + specific threshold. Resolution is 2."; + reference "ThreshX, HighP in 3GPP TS 38.304"; + mandatory true; + type int32 { range "0..62"; } + units dB; + } + + leaf threshXHighQ { + description "Specifies the Squal threshold used by the UE when + reselecting towards a higher priority RAT/frequency than the current + serving frequency. Each frequency of NR and E-UTRAN might have a + specific threshold."; + reference "ThreshX, HighQ in 3GPP TS 38.304"; + mandatory true; + type int32 { range "0..31"; } + units dB; + } + + leaf threshXLowP { + description "Specifies the Srxlev threshold used by the UE when + reselecting towards a lower priority RAT/frequency than the current + serving frequency. Each frequency of NR and E-UTRAN might have a + specific threshold. Resolution is 2."; + reference "ThreshX, LowP in 3GPP TS 38.304"; + mandatory true; + type int32 { range "0..62"; } + units dB; + } + + leaf threshXLowQ { + description "Specifies the Squal threshold used by the UE when + reselecting towards a lower priority RAT/frequency than the current + serving frequency. Each frequency of NR and E-UTRAN might have a + specific threshold."; + reference "ThreshX, LowQ in 3GPP TS 38.304"; + mandatory true; + type int32 { range "0..31"; } + units dB; + } + + leaf tReselectionNR { + description "Cell reselection timer for NR."; + reference "TreselectionRAT for NR in 3GPP TS 38.331"; + mandatory true; + type int32 { range "0..7"; } + units s; + } + + leaf tReselectionNRSfHigh { + description "The attribute tReselectionNr (parameter TreselectionNR in + 3GPP TS 38.304) is multiplied with this scaling factor if the UE is + in high mobility state."; + reference "Speed dependent ScalingFactor for TreselectionNR for high + mobility state in 3GPP TS 38.304"; + mandatory true; + type uint8 { range "25 | 50 | 75 | 100"; } + units %; + } + + leaf tReselectionNRSfMedium { + description "The attribute tReselectionNr (parameter TreselectionNR in + 3GPP TS 38.304) multiplied with this scaling factor if the UE is in + medium mobility state."; + reference "Speed dependent ScalingFactor for TreselectionNR for medium + mobility state in 3GPP TS 38.304"; + mandatory true; + type uint8 { range "25 | 50 | 75 | 100"; } + units %; + } + + leaf nRFrequencyRef { + description "Reference to a corresponding NRFrequency instance."; + mandatory true; + type types3gpp:DistinguishedName; + } + } + + augment /me3gpp:ManagedElement/gnbcucp3gpp:GNBCUCPFunction/nrcellcu3gpp:NRCellCU { + + list NRFreqRelation { + description "Together with the target NRFrequency, it represents the + frequency properties applicable to the referencing NRFreqRelation."; + reference "3GPP TS 28.541"; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses NRFreqRelationGrp; + } + uses mf3gpp:ManagedFunctionContainedClasses; + } + } +} \ No newline at end of file diff --git a/yang-models/_3gpp-nr-nrm-nrfrequency.yang b/yang-models/_3gpp-nr-nrm-nrfrequency.yang new file mode 100755 index 000000000..77c905ead --- /dev/null +++ b/yang-models/_3gpp-nr-nrm-nrfrequency.yang @@ -0,0 +1,71 @@ +module _3gpp-nr-nrm-nrfrequency { + yang-version 1.1; + namespace "urn:3gpp:sa5:_3gpp-nr-nrm-nrnetwork-nrfrequency"; + prefix "nrfreq3gpp"; + + import _3gpp-common-managed-function { prefix mf3gpp; } + import _3gpp-nr-nrm-nrnetwork { prefix nrnet3gpp; } + import _3gpp-common-subnetwork { prefix subnet3gpp; } + import _3gpp-common-top { prefix top3gpp; } + + organization "3GPP SA5"; + description "Defines the YANG mapping of the NRFrequency Information Object + Class (IOC) that is part of the NR Network Resource Model (NRM)."; + reference "3GPP TS 28.541 5G Network Resource Model (NRM)"; + + revision 2019-10-28 { reference S5-193518 ; } + revision 2019-06-17 { + description "Initial revision"; + } + + grouping NRFrequencyGrp { + description "Represents the NRFrequency IOC."; + reference "3GPP TS 28.541"; + uses mf3gpp:ManagedFunctionGrp; + + leaf absoluteFrequencySSB { + description "The absolute frequency applicable for a downlink NR carrier + frequency associated with the SSB, in terms of NR-ARFCN."; + mandatory true; + type uint32 { range "0.. 3279165"; } + } + + leaf sSBSubCarrierSpacing { + description "Sub-carrier spacing of the SSB."; + mandatory true; + type uint8 { range "15 | 30 | 60 | 120"; } + units "kHz"; + } + + leaf-list multiFrequencyBandListNR { + description "List of additional frequency bands the frequency belongs to. + The list is automatically set by the gNB."; + config false; + min-elements 0; + type uint16 { range "1..256"; } + } + } + + grouping NRFrequencyWrapper { + list NRFrequency { + description "Represents certain NR frequency properties."; + reference "3GPP TS 28.541"; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses NRFrequencyGrp; + } + uses mf3gpp:ManagedFunctionContainedClasses; + } + } + + augment "/subnet3gpp:SubNetwork" { + if-feature subnet3gpp:ExternalsUnderSubNetwork ; + uses NRFrequencyWrapper; + } + + augment "/nrnet3gpp:NRNetwork" { + if-feature nrnet3gpp:ExternalsUnderNRNetwork; + uses NRFrequencyWrapper; + } +} \ No newline at end of file diff --git a/yang-models/_3gpp-nr-nrm-nrnetwork.yang b/yang-models/_3gpp-nr-nrm-nrnetwork.yang new file mode 100755 index 000000000..0e0bfc559 --- /dev/null +++ b/yang-models/_3gpp-nr-nrm-nrnetwork.yang @@ -0,0 +1,39 @@ +module _3gpp-nr-nrm-nrnetwork { + yang-version 1.1; + namespace "urn:3gpp:sa5:_3gpp-nr-nrm-nrnetwork"; + prefix "nrnet3gpp"; + + import _3gpp-common-subnetwork { prefix subnet3gpp; } + import _3gpp-common-top { prefix top3gpp; } + + organization "3GPP SA5"; + description "Defines the YANG mapping of the NRNetwork Information Object + Class (IOC) that is part of the NR Network Resource Model (NRM)."; + reference "3GPP TS 28.541 5G Network Resource Model (NRM)"; + + revision 2019-06-17 { + description "Initial revision"; + } + + feature ExternalsUnderNRNetwork { + description "Classes representing external entities like NRFrequency, + ExternalGNBCUCPFunction, ExternalGNBDUFunction + are contained under a NRNetwork list/class."; + } + + grouping NRNetworkGrp { + description "Represents the NRNetwork IOC."; + reference "3GPP TS 28.541"; + uses subnet3gpp:SubNetworkGrp; + } + + list NRNetwork { + description "A subnetwork containing gNB external NR entities."; + reference "3GPP TS 28.541"; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses NRNetworkGrp; + } + } +} \ No newline at end of file diff --git a/yang-models/_3gpp-nr-nrm-nrsectorcarrier.yang b/yang-models/_3gpp-nr-nrm-nrsectorcarrier.yang new file mode 100755 index 000000000..2f55cf1db --- /dev/null +++ b/yang-models/_3gpp-nr-nrm-nrsectorcarrier.yang @@ -0,0 +1,119 @@ +module _3gpp-nr-nrm-nrsectorcarrier { + yang-version 1.1; + namespace "urn:3gpp:sa5:_3gpp-nr-nrm-nrnetwork-nrsectorcarrier"; + prefix "nrsectcarr3gpp"; + + import _3gpp-common-yang-types { prefix types3gpp; } + import _3gpp-common-managed-function { prefix mf3gpp; } + import _3gpp-common-managed-element { prefix me3gpp; } + import _3gpp-nr-nrm-gnbdufunction { prefix gnbdu3gpp; } + import _3gpp-common-top { prefix top3gpp; } + + organization "3GPP SA5"; + contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; + description "Defines the YANG mapping of the NRSectorCarrier Information + Object Class (IOC) that is part of the NR Network Resource Model (NRM)."; + reference "3GPP TS 28.541 5G Network Resource Model (NRM)"; + + revision 2020-05-28 { reference CR-0316 ; } + revision 2019-10-28 { reference S5-193518 ; } + revision 2019-06-17 { + description "Initial revision"; + } + + grouping NRSectorCarrierGrp { + description "Represents the NRSectorCarrier IOC."; + reference "3GPP TS 28.541"; + uses mf3gpp:ManagedFunctionGrp; + + leaf txDirection { + description "Indicates if the transmission direction is downlink, + uplink, or both downlink and uplink."; + mandatory true; + type types3gpp:TxDirection; + } + + leaf configuredMaxTxPower { + description "Maximum transmisssion power at the antenna port for all + downlink channels, used simultaneously in a cell, added together. + Condition: The sector-carrier has a downlink and the + configuration of Tx power at antenna port reference point is supported."; + mandatory true; + type int32; + units mW; + } + + leaf configuredMaxTxEIRP { + type int64; + units dBm; + mandatory true; + description "The maximum emitted isotroptic radiated power (EIRP) in dBm + for all downlink channels, used simultaneously in a cell, added together. + Condition: the sector-carrier has a downlink and the + configuration of emitted isotropic radiated power is supported"; + } + + leaf arfcnDL { + description "NR Absolute Radio Frequency Channel Number (NR-ARFCN) + for downlink. + Condition: The sector-carrier has a downlink AND the value + differs from the referring cell's value of arfcnDL."; + reference "3GPP TS 38.104"; + mandatory true; + type int32 { range "0..3279165"; } + } + + leaf arfcnUL { + description "NR Absolute Radio Frequency Channel Number (NR-ARFCN) + for uplink. + Condition: The sector-carrier has an uplink AND the value + differs from the referring cell's value of arfcnUL."; + reference "3GPP TS 38.104"; + mandatory true; + type int32 { range "0..3279165"; } + } + + leaf bSChannelBwDL { + description "Base station channel bandwitdth for downlink. + Condition: The sector-carrier has a downlink AND the value + differs from the referring cell's value of bSChannelBwDL."; + reference "3GPP TS 38.104"; + mandatory true; + type int32 { range "5 | 10 | 15 | 20 | 30 | 40 | 50 | 60 | 70 | 80 | + 90 | 100"; } + units MHz; + } + + leaf bSChannelBwUL { + description "Base station channel bandwitdth for uplink."; + reference "3GPP TS 38.104"; + mandatory true; + type int32 { range "5 | 10 | 15 | 20 | 30 | 40 | 50 | 60 | 70 | 80 | + 90 | 100"; } + units MHz; + } + + leaf sectorEquipmentFunctionRef { + description "Reference to corresponding SectorEquipmentFunction + instance."; + reference "3GPP TS 23.622"; + mandatory true; + type types3gpp:DistinguishedName; + } + } + + augment "/me3gpp:ManagedElement/gnbdu3gpp:GNBDUFunction" { + + list NRSectorCarrier { + description "Represents the resources of each transmission point + included in the cell."; + reference "3GPP TS 28.541"; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses NRSectorCarrierGrp; + } + uses mf3gpp:ManagedFunctionContainedClasses; + } + } +} \ No newline at end of file diff --git a/yang-models/_3gpp-nr-nrm-rrmpolicy.yang b/yang-models/_3gpp-nr-nrm-rrmpolicy.yang new file mode 100755 index 000000000..3480c753c --- /dev/null +++ b/yang-models/_3gpp-nr-nrm-rrmpolicy.yang @@ -0,0 +1,122 @@ +module _3gpp-nr-nrm-rrmpolicy { + yang-version 1.1; + namespace "urn:3gpp:sa5:_3gpp-nr-nrm-rrmpolicy"; + prefix "nrrrmpolicy3gpp"; + + import _3gpp-5g-common-yang-types { prefix types5g3gpp; } + import _3gpp-common-top { prefix top3gpp; } + + organization "3GPP SA5"; + contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; + description "Defines the YANG mapping of the RRMPolicy abstract class that + is part of the NR Network Resource Model (NRM)."; + reference "3GPP TS 28.541 5G Network Resource Model (NRM)"; + + revision 2020-11-05 { reference CR-0412 ; } + revision 2020-04-28 { reference "CR0285"; } + revision 2020-02-14 { reference "Initial revision"; } + + grouping rRMPolicyMemberGrp { + description "This data type represents an RRM Policy member that will be + part of a rRMPolicyMemberList. A RRMPolicyMember is defined by its + pLMNId and sNSSAI (S-NSSAI). + The members in a rRMPolicyMemberList are assigned a specific amount of + RRM resources based on settings in RRMPolicy."; + + uses types5g3gpp:PLMNInfo; + } + + typedef CyclicPrefix { + type enumeration { + enum NORMAL; + enum EXTENDED; + } + } + + grouping RRMPolicy_Grp { + description "This IOC represents the properties of an abstract RRMPolicy + . The RRMPolicy_ IOC needs to be subclassed to be instantiated. + It defines two attributes apart from those inherited from Top IOC, the + resourceType attribute defines type of resource (PRB, RRC + connected users, DRB usage etc.) and the rRMPolicyMemberList attribute + defines the RRMPolicyMember(s)that are subject to this policy. + An RRM resource (defined in resourceType + attribute) is located in NRCellDU, NRCellCU, GNBDUFunction, + GNBCUCPFunction or in GNBCUUPFunction. The RRMPolicyRatio IOC is one + realization of a RRMPolicy_ IOC. This RRM framework allows adding new + policies, both standardized (like RRMPolicyRatio) or as vendor specific, + by inheriting from the abstract RRMPolicy_ IOC."; + + leaf resourceType { + description "The resourceType attribute defines type of resource (PRB, + RRC connected users, DRB usage etc.) that is subject to policy. + Valid values are 'PRB', 'RRC' or 'DRB'"; + mandatory true; + type string; + } + + list rRMPolicyMemberList{ + description "It represents the list of RRMPolicyMember (s) that the + managed object is supporting. A RRMPolicyMember <> include + the PLMNId <> and S-NSSAI <>." ; + min-elements 1; + key "mcc mnc sd sst"; + uses rRMPolicyMemberGrp; + } + } // grouping + + + grouping RRMPolicyRatioGrp { + description "Represents the RRMPolicyRatio concrete IOC."; + + uses RRMPolicy_Grp; // Inherits RRMPolicy_ + + + leaf rRMPolicyMaxRatio { + description " This attribute specifies the maximum percentage of radio + resource that can be used by the associated rRMPolicyMemberList. + The maximum percentage of radio resource include at least one of + the shared resources, prioritized resources and dedicated resources. + The sum of the rRMPolicyMaxRatio values assigned to all RRMPolicyRatio(s) + name-contained by same ManagedEntity can be greater that 100."; + default 100; + type uint8 { range "0..100"; } + units percent; + } + + leaf rRMPolicyMinRatio { + description " This attribute specifies the minimum percentage of radio + resources that can be used by the associated rRMPolicyMemberList. + The minimum percentage of radio resources including at least one of + prioritized resources and dedicated resources. The sum of the + rRMPolicyMinRatio values assigned to all RRM PolicyRatio(s) + name-contained by same ManagedEntity shall be less or equal 100."; + default 0; + type uint8 { range "0..100"; } + units percent; + } + + leaf rRMPolicyDedicatedRatio { + description " This attribute specifies the percentage of radio resource + that dedicatedly used by the associated rRMPolicyMemberList. The sum of + the rRMPolicyDeidctaedRatio values assigned to all RRMPolicyRatio(s) + name-contained by same ManagedEntity shall be less or equal 100. "; + default 0; + type uint8 { range "0..100"; } + units percent; + } + } + + list RRMPolicyRatio { + description " The RRMPolicyRatio IOC is one realization of a RRMPolicy_ IOC, + see the inheritance in Figure 4.2.1.2-1. This RRM framework allows + adding new policies, both standardized (like RRMPolicyRatio) or as + vendor specific, by inheriting from the + abstract RRMPolicy_ IOC. For details see subclause 4.3.36."; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses RRMPolicyRatioGrp; + } + } +} \ No newline at end of file diff --git a/yang-models/_3gpp-ns-nrm-common.yang b/yang-models/_3gpp-ns-nrm-common.yang new file mode 100755 index 000000000..c3e1079bf --- /dev/null +++ b/yang-models/_3gpp-ns-nrm-common.yang @@ -0,0 +1,96 @@ +module _3gpp-ns-nrm-common { + yang-version 1.1; + namespace urn:3gpp:sa5:_3gpp-ns-nrm-common; + prefix ns3cmn; + + // import _3gpp-common-subnetwork { prefix subnet3gpp; } + // import _3gpp-common-yang-types { prefix types3gpp; } + // import _3gpp-common-top { prefix top3gpp; } + + organization "3GPP SA5"; + contact + "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; + description "Common network slice definitions"; + reference "3GPP TS 28.541 + Management and orchestration; + 5G Network Resource Model (NRM); + Information model definitions for network slice NRM (chapter 6) + "; + + revision 2021-05-17 { + description "Introduction of Common Data types"; + reference "CR-0485"; + } + grouping XLThptGrp { + list servAttrCom { + description "This list represents the common properties of service + requirement related attributes."; + reference "GSMA NG.116 corresponding to Attribute categories, + tagging and exposure"; + config false; + key idx; + max-elements 1; + leaf idx { + description "Synthetic index for the element."; + type uint32; + } + uses ServAttrComGrp; + } + leaf guaThpt { + description "This attribute describes the guaranteed data rate."; + type uint64; + units kbits/s; + } + leaf maxThpt { + description "This attribute describes the maximum data rate."; + type uint64; + units kbits/s; + } + } + typedef Tagging-enum { + type enumeration { + enum performance; + enum function; + enum operation; + } + } + typedef Exposure-enum { + type enumeration { + enum API; + enum KPI; + } + } + typedef Category-enum { + type enumeration { + enum character; + enum scalability; + } + } + typedef Support-enum { + type enumeration { + enum NOT_SUPPORTED; + enum SUPPORTED; + } + } + grouping ServAttrComGrp { + leaf category { + description "This attribute specifies the category of a service + requirement/attribute of GST"; + type Category-enum; + } + leaf-list tagging { + description "This attribute specifies the tagging of a service + requirement/attribute of GST in character category"; + when "../category = 'character'"; + type Tagging-enum; + } + leaf exposure { + description "This attribute specifies exposure mode of a service + requirement/attribute of GST"; + type Exposure-enum; + } + } + typedef DeterminCommAvailability { + type Support-enum; + } +} \ No newline at end of file diff --git a/yang-models/_3gpp-ns-nrm-networkslice.yang b/yang-models/_3gpp-ns-nrm-networkslice.yang new file mode 100755 index 000000000..d7b0d5044 --- /dev/null +++ b/yang-models/_3gpp-ns-nrm-networkslice.yang @@ -0,0 +1,74 @@ +module _3gpp-ns-nrm-networkslice { + yang-version 1.1; + namespace urn:3gpp:sa5:_3gpp-ns-nrm-networkslice; + prefix ns3gpp; + + import _3gpp-ns-nrm-networkslicesubnet { prefix nss3gpp; } + import _3gpp-common-subnetwork { prefix subnet3gpp; } + import _3gpp-common-yang-types { prefix types3gpp; } + import _3gpp-common-top { prefix top3gpp; } + + include _3gpp-ns-nrm-serviceprofile; + + organization "3GPP SA5"; + contact + "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; + description "A network slice instance in a 5G network."; + reference "3GPP TS 28.541 + Management and orchestration; + 5G Network Resource Model (NRM); + Information model definitions for network slice NRM (chapter 6) + "; + + revision 2020-02-19 { + description "Introduction of YANG definitions for network slice NRM"; + reference "CR-0458"; + } + + grouping NetworkSliceGrp { + + uses subnet3gpp:SubNetworkGrp; // Inherits from SubNetwork + + leaf operationalState { + description "The operational state of the network slice instance. + It describes whether or not the resource is physically installed + and working."; + config false; + type types3gpp:OperationalState; + } + + leaf administrativeState { + description "The administrative state of the network slice instance. + It describes the permission to use or prohibition against + using the instance, imposed through the OAM services."; + type types3gpp:AdministrativeState; + } + + list serviceProfileList { + description "A list of service profiles supported by the network + slice instance."; + key serviceProfileId; + uses ServiceProfileGrp; + } + + leaf networkSliceSubnetRef { + type leafref { + path /nss3gpp:NetworkSliceSubnet/nss3gpp:id; + } + description "The NetworkSliceSubnet that the NetworkSlice is + associated with."; + } + } + + list NetworkSlice { + description "Represents the properties of a network slice instance in + a 5G network."; + key id; + + container attributes { + uses NetworkSliceGrp; + } + + uses top3gpp:Top_Grp; + } +} diff --git a/yang-models/_3gpp-ns-nrm-networkslicesubnet.yang b/yang-models/_3gpp-ns-nrm-networkslicesubnet.yang new file mode 100755 index 000000000..005340362 --- /dev/null +++ b/yang-models/_3gpp-ns-nrm-networkslicesubnet.yang @@ -0,0 +1,207 @@ +module _3gpp-ns-nrm-networkslicesubnet { + yang-version 1.1; + + namespace urn:3gpp:sa5:_3gpp-ns-nrm-networkslicesubnet; + prefix nss3gpp; + + import _3gpp-common-yang-types { prefix types3gpp; } + import _3gpp-common-subnetwork { prefix subnet3gpp; } + import _3gpp-common-measurements { prefix meas3gpp; } + import _3gpp-common-top { prefix top3gpp; } + // import _3gpp-ns-nrm-common { prefix ns3cmn; } + + include _3gpp-ns-nrm-sliceprofile; + + organization "3GPP SA5"; + contact + "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; + description "This IOC represents the properties of a network slice subnet + instance in a 5G network."; + reference "3GPP TS 28.541 + Management and orchestration; + 5G Network Resource Model (NRM); + Information model definitions for network slice NRM (chapter 6) + "; + + revision 2020-02-19 { + description "Introduction of YANG definitions for network slice NRM"; + reference "CR-0458"; + } + + revision 2019-06-07 { + description "initial revision"; + reference "Based on + 3GPP TS 28.541 V15.X.XX"; + } + + feature MeasurementsUnderNetworkSliceSubnet { + description "The MeasurementSubtree shall be contained under + NetworkSliceSubnet."; + } + + typedef ETSI-GS-NFV-Identifier { + type string; + reference "ETSI GS NFV-IFA 013"; + } + + grouping EPTransportGrp { + leaf ipAddress { + description "This parameter specifies the IP address assigned to a + logical transport interface/endpoint. It can be an IPv4 address + (See RFC 791) or an IPv6 address (See RFC 2373)."; + mandatory true; + type string; + } + leaf logicInterfaceId { + description "This parameter specifies the identify of a logical + transport interface. It could be VLAN ID (See IEEE 802.1Q), + MPLS Tag or Segment ID."; + mandatory true; + type string; + } + leaf-list nextHopInfo { + description "This parameter is used to identify ingress transport + node. Each node can be identified by any of combination of IP + address of next-hop router of transport network, system name, + port name, IP management address of transport nodes."; + type string; + } + leaf-list qosProfile { + description "This parameter specifies reference to QoS Profile for + a logical transport interface. A QoS profile includes a set of + parameters which are locally provisioned on both sides of a logical + transport interface."; + type string; + } + leaf-list epApplicationRef { + description "This parameter specifies a list of application level + EPs associated with the logical transport interface."; + min-elements 1; + type types3gpp:DistinguishedName; + } + uses top3gpp:Top_Grp; + } + + grouping NsInfoGrp { + description "The NsInfo of the NS instance corresponding to the network + slice subnet instance."; + //suport condition: It shall be supported if the NSS instance is + //realized in the virtualized environment. + // Otherwise this attribute shall be absent. + reference "ETSI GS NFV-IFA 013 clause 8.3.3.2.2, which can be found at + https://www.etsi.org/deliver/etsi_gs/NFV-IFA/001_099/013 + /03.04.01_60/gs_NFV-IFA013v030401p.pdf page 123-124"; + leaf nSInstanceId { + description "Uniquely identifies the NS instance."; + config false; + type ETSI-GS-NFV-Identifier; + } + leaf nsName { + description "Human readable name of the NS instance."; + type string; + config false; + } + leaf description { + description "Human readable description of the NS instance."; + config false; + type string; + } + } + + grouping NetworkSliceSubnetGrp { + + uses subnet3gpp:SubNetworkGrp; + uses EPTransportGrp; + + leaf operationalState { + description "The operational state of the network slice instance. + It describes whether or not the resource is physically installed + and working."; + mandatory true; + config false; + type types3gpp:OperationalState; + } + + leaf administrativeState { + description "The administrative state of the network slice instance. + It describes the permission to use or prohibition against + using the instance, imposed through the OAM services."; + mandatory true; + type types3gpp:AdministrativeState; + } + + list nsInfo { + description "This list represents the properties of network service + information corresponding to the network slice subnet instance."; + reference "ETSI GS NFV-IFA 013 clause 8.3.3.2.2"; + config false; + key nSInstanceId; + max-elements 1; + uses NsInfoGrp; + } + + list sliceProfileList { + description "List of SliceProfiles supported by the network slice + subnet instance"; + key sliceProfileId; + uses SliceProfileGrp; + } + + list managedFunctionRef { + description "The managed functions that the NetworkSliceSubnet is + associated with."; + key aggregatedManagedFunction; + leaf aggregatedManagedFunction { + type instance-identifier; + } + } + + leaf-list networkSliceSubnetRef { + type leafref { + path /NetworkSliceSubnet/id; + } + description "Lists the NetworkSliceSubnet instances associated with + this NetworkSliceSubnet."; + } + } + + list NetworkSliceSubnet { + description "Represents the properties of a network slice subnet + instance in a 5G network."; + key id; + + container attributes { + + uses NetworkSliceSubnetGrp; + + leaf-list parents { + description "Reference to direct parent NetworkSliceSubnet + instances. + If NetworkSliceSubnets form a containment hierarchy this is + modeled using references between the child NetworkSliceSubnet + and the parent NetworkSliceSubnet. + This reference MUST NOT be present for the top level + NetworkSliceSubnet and MUST be present for other + NetworkSliceSubnets."; + type leafref { + path "/NetworkSliceSubnet/id"; + } + } + + leaf-list containedChildren { + description "Reference to all directly contained NetworkSliceSubnet + instances. If NetworkSliceSubnets form a containment hierarchy + this is modeled using references between the child + NetworkSliceSubnet and the parent NetworkSliceSubnet."; + type leafref { + path "/NetworkSliceSubnet/id"; + } + } + } + + uses top3gpp:Top_Grp; + uses meas3gpp:MeasurementSubtree { + if-feature MeasurementsUnderNetworkSliceSubnet; + } + } +} \ No newline at end of file diff --git a/yang-models/_3gpp-ns-nrm-serviceprofile.yang b/yang-models/_3gpp-ns-nrm-serviceprofile.yang new file mode 100755 index 000000000..d3630dc23 --- /dev/null +++ b/yang-models/_3gpp-ns-nrm-serviceprofile.yang @@ -0,0 +1,503 @@ +submodule _3gpp-ns-nrm-serviceprofile { + yang-version 1.1; + belongs-to _3gpp-ns-nrm-networkslice { prefix ns3gpp; } + + import _3gpp-common-yang-types { prefix types3gpp; } + import _3gpp-5g-common-yang-types { prefix types5g3gpp; } + import _3gpp-ns-nrm-common { prefix ns3cmn; } + + organization "3GPP SA5"; + contact + "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; + description "A network slice instance in a 5G network."; + reference "3GPP TS 28.541 + Management and orchestration; + 5G Network Resource Model (NRM); + Information model definitions for network slice NRM (chapter 6) + "; + + revision 2020-06-02 { + reference "CR-0485, CR-0508"; + } + + revision 2020-02-19 { + description "Introduction of YANG definitions for network slice NRM"; + reference "CR-0458"; + } + + revision 2019-06-23 { + description "Initial revision"; + reference "3GPP TS 28.541 V15.X.XX"; + } + + typedef availability-percentage { + description " + Percentage value of the amount of time the end-to-end communication + service is delivered according to an agreed QoS, divided by the amount + of time the system is expected to deliver the end-to-end service + according to the specification in a specific area."; + reference "3GPP TS 22.261 3.1"; + type decimal64 { + fraction-digits 4; // E.g. 99.9999 + range 0..100; + } + } + + typedef V2XMode-enum { + type enumeration { + enum NOT_SUPPORTED; + enum SUPPORTED_BY_NR; + } + } + + grouping ServiceProfileGrp { + + leaf serviceProfileId { + description "Service profile identifier."; + type types3gpp:DistinguishedName; + } + + list sNSSAIList { + description "The S-NSSAI list to be supported by the new NSI to be + created or the existing NSI to be re-used."; + min-elements 1; + key idx; + unique "sst sd"; + leaf idx { + description "Synthetic index for the element."; + type uint32; + } + uses types5g3gpp:SNssai; + } + + list pLMNIdList { + description "List of PLMN IDs."; + min-elements 1; + key "mcc mnc"; + ordered-by user; + uses types3gpp:PLMNId; + } + + leaf maxNumberofUEs { + description "The maximum number of UEs that may simultaneously + access the network slice instance."; + mandatory true; + type uint64; + } + + leaf-list coverageArea { + min-elements 1; + description "A list of TrackingAreas where the NSI can be selected."; + type types3gpp:Tac; + } + + leaf latency { + description "The packet transmission latency (milliseconds) through + the RAN, CN, and TN part of 5G network, used to evaluate utilization + performance of the end-to-end network slice instance."; + reference "3GPP TS 28.554 clause 6.3.1"; + mandatory true; + type uint16; + units milliseconds; + } + + leaf uEMobilityLevel { + description "The mobility level of UE accessing the network slice + instance."; + reference "3GPP TS 22.261 clause 6.2.1"; + type types3gpp:UeMobilityLevel; + } + + leaf resourceSharingLevel { + description "Specifies whether the resources to be allocated to the + network slice instance may be shared with another network slice + instance(s)."; + type types3gpp:ResourceSharingLevel; + } + + //Stage2 issue: The sNSSAIList above specifies one or potentially + // several sST objects for the service profile. + // How do they relate? + leaf sST { + description "Specifies the slice/service type. See 3GPP TS 23.501 + for defined values."; + mandatory true; + type uint32; + reference "3GPP TS 23.501 5.15.2.2"; + } + + leaf availability { + description "The availability requirement for a network slice + instance, expressed as a percentage."; + type availability-percentage; + } + + list delayTolerance { + description "An attribute specifies the properties of service delivery + flexibility, especially for the vertical services that are not + chasing a high system performance."; + reference "TS 22.104 clause 4.3"; + config false; + key idx; + max-elements 1; + leaf idx { + description "Synthetic index for the element."; + type uint32; + } + list servAttrCom { + description "This list represents the common properties of service + requirement related attributes."; + reference "GSMA NG.116 corresponding to Attribute categories, + tagging and exposure"; + key idx; + max-elements 1; + leaf idx { + description "Synthetic index for the element."; + type uint32; + } + uses ns3cmn:ServAttrComGrp; + } + leaf support { + description "An attribute specifies whether or not the network + slice supports service delivery flexibility, especially for the + vertical services that are not chasing a high system performance."; + type ns3cmn:Support-enum; + } + } + list deterministicComm { + //Stage2 issue: deterministicComm is not defined in 28.541 chapter 6, + // but I guess deterministicComm is meant + description "This list represents the properties of the deterministic + communication for periodic user traffic. Periodic traffic refers to the + type of traffic with periodic transmissions."; + key idx; + max-elements 1; + leaf idx { + description "Synthetic index for the element."; + type uint32; + } + list servAttrCom { + description "This list represents the common properties of service + requirement related attributes."; + reference "GSMA NG.116 corresponding to Attribute categories, + tagging and exposure"; + config false; + key idx; + max-elements 1; + leaf idx { + description "Synthetic index for the element."; + type uint32; + } + uses ns3cmn:ServAttrComGrp; + } + leaf availability { + //Stage2 issue: Defined differently in 28.541 chapter 6, but XML + // uses DeterministicCommAvailability + config false; + type ns3cmn:DeterminCommAvailability; + } + leaf periodicityList { + //Stage2 issue: Not defined in 28.541 chapter 6. XML and YAML + // says "string". + type string; + } + } + list dLThptPerSlice { + description "This attribute defines achievable data rate of the + network slice in downlink that is available ubiquitously across + the coverage area of the slice"; + key idx; + max-elements 1; + leaf idx { + description "Synthetic index for the element."; + type uint32; + } + uses ns3cmn:XLThptGrp; + } + list dLThptPerUE { + description "This attribute defines data rate supported by the network + slice per UE"; + key idx; + max-elements 1; + leaf idx { + description "Synthetic index for the element."; + type uint32; + } + uses ns3cmn:XLThptGrp; + } + list uLThptPerSlice { + key idx; + max-elements 1; + leaf idx { + description "Synthetic index for the element."; + type uint32; + } + description "This attribute defines achievable data rate of the + network slice in uplink that is available ubiquitously across + the coverage area of the slice"; + uses ns3cmn:XLThptGrp; + } + list uLThptPerUE { + key idx; + max-elements 1; + leaf idx { + description "Synthetic index for the element."; + type uint32; + } + description "This attribute defines data rate supported by the + network slice per UE"; + uses ns3cmn:XLThptGrp; + } + list maxPktSize { + config false; + key idx; + max-elements 1; + leaf idx { + description "Synthetic index for the element."; + type uint32; + } + description "This parameter specifies the maximum packet size + supported by the network slice"; + list servAttrCom { + description "This list represents the common properties of service + requirement related attributes."; + reference "GSMA NG.116 corresponding to Attribute categories, + tagging and exposure"; + key idx; + max-elements 1; + leaf idx { + description "Synthetic index for the element."; + type uint32; + } + uses ns3cmn:ServAttrComGrp; + } + leaf maxSize { + //Stage2 issue: Not defined in 28.541, guessing integer bytes + type uint32; + units bytes; + } + } + list maxNumberofPDUSessions { + description "Represents the maximum number of + concurrent PDU sessions supported by the network slice"; + config false; + key idx; + max-elements 1; + leaf idx { + description "Synthetic index for the element."; + type uint32; + } + list servAttrCom { + description "This list represents the common properties of service + requirement related attributes."; + reference "GSMA NG.116 corresponding to Attribute categories, + tagging and exposure"; + key idx; + max-elements 1; + leaf idx { + description "Synthetic index for the element."; + type uint32; + } + uses ns3cmn:ServAttrComGrp; + } + leaf nOofPDUSessions { + //Stage2 issue: Not defined in 28.541, guessing integer + type uint32; + } + } + list kPIMonitoring { + description "Represents performance monitoring"; + config false; + key idx; + max-elements 1; + leaf idx { + description "Synthetic index for the element."; + type uint32; + } + list servAttrCom { + description "This list represents the common properties of service + requirement related attributes."; + reference "GSMA NG.116 corresponding to Attribute categories, + tagging and exposure"; + key idx; + max-elements 1; + leaf idx { + description "Synthetic index for the element."; + type uint32; + } + uses ns3cmn:ServAttrComGrp; + } + leaf kPIList { + //Stage2 issue: Data format not specified, low interoperability + description "An attribute specifies the name list of KQIs and KPIs + available for performance monitoring"; + type string; + } + } + list userMgmtOpen { + description "An attribute specifies whether or not the network slice + supports the capability for the NSC to manage their users or groups + of users' network services and corresponding requirements."; + config false; + key idx; + max-elements 1; + leaf idx { + description "Synthetic index for the element."; + type uint32; + } + list servAttrCom { + description "This list represents the common properties of service + requirement related attributes."; + reference "GSMA NG.116 corresponding to Attribute categories, + tagging and exposure"; + key idx; + max-elements 1; + leaf idx { + description "Synthetic index for the element."; + type uint32; + } + uses ns3cmn:ServAttrComGrp; + } + leaf support { + type ns3cmn:Support-enum; + } + } + list v2XCommModels { + description "An attribute specifies whether or not the V2X + communication mode is supported by the network slice."; + config false; + key idx; + max-elements 1; + leaf idx { + description "Synthetic index for the element."; + type uint32; + } + list servAttrCom { + description "This list represents the common properties of service + requirement related attributes."; + reference "GSMA NG.116 corresponding to Attribute categories, + tagging and exposure"; + key idx; + max-elements 1; + leaf idx { + description "Synthetic index for the element."; + type uint32; + } + uses ns3cmn:ServAttrComGrp; + } + leaf v2XMode { + type V2XMode-enum; + } + } + list termDensity { + description "An attribute specifies the overall user density over + the coverage area of the network slice"; + config false; + key idx; + max-elements 1; + leaf idx { + description "Synthetic index for the element."; + type uint32; + } + list servAttrCom { + description "This list represents the common properties of service + requirement related attributes."; + reference "GSMA NG.116 corresponding to Attribute categories, + tagging and exposure"; + key idx; + max-elements 1; + leaf idx { + description "Synthetic index for the element."; + type uint32; + } + uses ns3cmn:ServAttrComGrp; + } + leaf density { + type uint32; + units users/km2; + } + } + leaf activityFactor { + //Stage2 issue: This is modeled as writable/config true in 28.542, + // but that does not appear to match the description + description "An attribute specifies the percentage value of the + amount of simultaneous active UEs to the total number of UEs where + active means the UEs are exchanging data with the network"; + reference "TS 22.261 Table 7.1-1"; + type decimal64 { + fraction-digits 1; + } + } + leaf uESpeed { + //Stage2 issue: This is modeled as writable/config true in 28.542, + // but that does not appear to match the description + description "An attribute specifies the maximum speed (in km/hour) + supported by the network slice at which a defined QoS can be + achieved"; + type uint32; + units km/h; + } + leaf jitter { + //Stage2 issue: This is modeled as writable/config true in 28.542, + // but that does not appear to match the description + description "An attribute specifies the deviation from the desired + value to the actual value when assessing time parameters"; + reference "TS 22.104 clause C.4.1"; + type uint32; + units microseconds; + } + leaf survivalTime { + description "An attribute specifies the time that an application + consuming a communication service may continue without an + anticipated message."; + reference "TS 22.104 clause 5"; + type string; + } + leaf reliability { + description "An attribute specifies in the context of network layer + packet transmissions, percentage value of the amount of sent + network layer packets successfully delivered to a given system + entity within the time constraint required by the targeted service, + divided by the total number of sent network layer packets."; + reference "TS 22.261, TS 22.104"; + type string; + } + leaf maxDLDataVolume { + //Stage2 issue: Not defined in 28.541. XML and YAML says "string" + type string; + } + leaf maxULDataVolume { + //Stage2 issue: Not defined in 28.541. XML and YAML says "string" + type string; + } + list nBIoT { + description "An attribute specifies whether NB-IoT is supported in + the RAN in the network slice"; + config false; + key idx; + max-elements 1; + leaf idx { + description "Synthetic index for the element."; + type uint32; + } + list servAttrCom { + description "This list represents the common properties of service + requirement related attributes."; + reference "GSMA NG.116 corresponding to Attribute categories, + tagging and exposure"; + key idx; + max-elements 1; + leaf idx { + description "Synthetic index for the element."; + type uint32; + } + uses ns3cmn:ServAttrComGrp; + } + leaf support { + description "An attribute specifies whether NB-IoT is supported + in the RAN in the network slice"; + type ns3cmn:Support-enum; + } + } + } +} \ No newline at end of file diff --git a/yang-models/_3gpp-ns-nrm-sliceprofile.yang b/yang-models/_3gpp-ns-nrm-sliceprofile.yang new file mode 100755 index 000000000..0ec5311ad --- /dev/null +++ b/yang-models/_3gpp-ns-nrm-sliceprofile.yang @@ -0,0 +1,908 @@ +submodule _3gpp-ns-nrm-sliceprofile { + yang-version 1.1; + belongs-to _3gpp-ns-nrm-networkslicesubnet { prefix nss3gpp; } + + import _3gpp-common-yang-types { prefix types3gpp; } + import _3gpp-5g-common-yang-types { prefix types5g3gpp; } + // import _3gpp-ns-nrm-networkslice { prefix ns3gpp; } + import _3gpp-ns-nrm-common { prefix ns3cmn; } + + organization "3GPP SA5"; + contact + "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; + description "Represents the properties of network slice subnet related + requirement that should be supported by the network slice subnet + instance in a 5G network."; + reference "3GPP TS 28.541 + Management and orchestration; + 5G Network Resource Model (NRM); + Information model definitions for network slice NRM (chapter 6) + "; + + revision 2021-05-05 { + description "replace perfReq with 3 new datatypes xxxSliceSubnetProfile"; + reference "CR-0485"; + } + + revision 2020-02-19 { + description "Introduction of YANG definitions for network slice NRM"; + reference "CR-0458"; + } + + revision 2019-05-27 { + description "initial revision."; + reference "Based on + 3GPP TS 28.541 V15.X.XX"; + } + typedef SliceSimultaneousUse-enum { + type enumeration { + enum ZERO; + enum ONE; + enum TWO; + enum THREE; + enum FOUR; + } + } + typedef ServiceType-enum { + type enumeration { + enum eMBB; + enum URLLC; + enum MIoT; + enum V2X; + } + } + grouping TopSliceSubnetProfileGrp { + leaf-list coverageArea { + min-elements 1; + description "A list of TrackingAreas where the NSI can be selected."; + type types3gpp:Tac; + } + leaf latency { + description "The packet transmission latency (milliseconds) through + the RAN, CN, and TN part of 5G network, used to evaluate + utilization performance of the end-to-end network slice instance."; + reference "3GPP TS 28.554 clause 6.3.1"; + //optional support + mandatory true; + type uint16; + units milliseconds; + } + leaf maxNumberofUEs { + description "Specifies the maximum number of UEs may simultaneously + access the network slice instance."; + //optional support + mandatory true; + type uint64; + } + list dLThptPerSliceSubnet { + description "This attribute defines achievable data rate of the + network slice subnet in downlink that is available ubiquitously + across the coverage area of the slice"; + key idx; + max-elements 1; + leaf idx { + description "Synthetic index for the element."; + type uint32; + } + uses ns3cmn:XLThptGrp; + } + list dLThptPerUE { + description "This attribute defines data rate supported by the + network slice per UE, refer NG.116."; + key idx; + max-elements 1; + leaf idx { + description "Synthetic index for the element."; + type uint32; + } + uses ns3cmn:XLThptGrp; + } + list uLThptPerSliceSubnet { + description "This attribute defines achievable data rate of the + network slice subnet in uplink that is available ubiquitously + across the coverage area of the slice"; + key idx; + max-elements 1; + leaf idx { + description "Synthetic index for the element."; + type uint32; + } + uses ns3cmn:XLThptGrp; + } + list uLThptPerUE { + description "This attribute defines data rate supported by the + network slice per UE, refer NG.116"; + key idx; + max-elements 1; + leaf idx { + description "Synthetic index for the element."; + type uint32; + } + uses ns3cmn:XLThptGrp; + } + list maxPktSize { + config false; + key idx; + max-elements 1; + leaf idx { + description "Synthetic index for the element."; + type uint32; + } + description "This parameter specifies the maximum packet size + supported by the network slice"; + list servAttrCom { + description "This list represents the common properties of service + requirement related attributes."; + reference "GSMA NG.116 corresponding to Attribute categories, + tagging and exposure"; + key idx; + max-elements 1; + leaf idx { + description "Synthetic index for the element."; + type uint32; + } + uses ns3cmn:ServAttrComGrp; + } + leaf maxSize { + //Stage2 issue: Not defined in 28.541, guessing integer bytes + type uint32; + units bytes; + } + } + list maxNumberofPDUSessions { + description "Represents the maximum number of + concurrent PDU sessions supported by the network slice"; + config false; + key idx; + max-elements 1; + leaf idx { + description "Synthetic index for the element."; + type uint32; + } + list servAttrCom { + description "This list represents the common properties of service + requirement related attributes."; + reference "GSMA NG.116 corresponding to Attribute categories, + tagging and exposure"; + key idx; + max-elements 1; + leaf idx { + description "Synthetic index for the element."; + type uint32; + } + uses ns3cmn:ServAttrComGrp; + } + leaf nOofPDUSessions { + //Stage2 issue: Not defined in 28.541, guessing integer + type uint32; + } + } + leaf sliceSimultaneousUse { + description "This attribute describes whether a network slice + can be simultaneously used by a device together with other + network slices and if so, with which other classes of network slices."; + type SliceSimultaneousUse-enum; + } + list delayTolerance { + description "An attribute specifies the properties of service delivery + flexibility, especially for the vertical services that are not + chasing a high system performance."; + reference "TS 22.104 clause 4.3"; + config false; + key idx; + max-elements 1; + leaf idx { + description "Synthetic index for the element."; + type uint32; + } + list servAttrCom { + description "This list represents the common properties of service + requirement related attributes."; + reference "GSMA NG.116 corresponding to Attribute categories, + tagging and exposure"; + key idx; + max-elements 1; + leaf idx { + description "Synthetic index for the element."; + type uint32; + } + uses ns3cmn:ServAttrComGrp; + } + leaf support { + description "An attribute specifies whether or not the network + slice supports service delivery flexibility, especially for the + vertical services that are not chasing a high system performance."; + type ns3cmn:Support-enum; + } + } + list termDensity { + description "An attribute specifies the overall user density over + the coverage area of the network slice"; + config false; + key idx; + max-elements 1; + leaf idx { + description "Synthetic index for the element."; + type uint32; + } + list servAttrCom { + description "This list represents the common properties of service + requirement related attributes."; + reference "GSMA NG.116 corresponding to Attribute categories, + tagging and exposure"; + key idx; + max-elements 1; + leaf idx { + description "Synthetic index for the element."; + type uint32; + } + uses ns3cmn:ServAttrComGrp; + } + leaf density { + type uint32; + units users/km2; + } + } + leaf activityFactor { + //Stage2 issue: This is modeled as writable/config true in 28.542, + // but that does not appear to match the description + description "An attribute specifies the percentage value of the + amount of simultaneous active UEs to the total number of UEs where + active means the UEs are exchanging data with the network"; + reference "TS 22.261 Table 7.1-1"; + type decimal64 { + fraction-digits 1; + } + } + leaf-list coverageAreaTAList { + description "A list of TrackingAreas where the NSI can be selected."; + //optional support + min-elements 1; + type types3gpp:Tac; + } + leaf uEMobilityLevel { + description "The mobility level of UE accessing the network slice + instance."; + //optional support + type types3gpp:UeMobilityLevel; + } + + leaf resourceSharingLevel { + description "Specifies whether the resources to be allocated to the + network slice subnet instance may be shared with another network + slice subnet instance(s)."; + //optional support + type types3gpp:ResourceSharingLevel; + } + leaf uESpeed { + //Stage2 issue: This is modeled as writable/config true in 28.542, + // but that does not appear to match the description + description "An attribute specifies the maximum speed (in km/hour) + supported by the network slice at which a defined QoS can be + achieved"; + type uint32; + units km/h; + } + leaf reliability { + description "An attribute specifies in the context of network layer + packet transmissions, percentage value of the amount of sent + network layer packets successfully delivered to a given system + entity within the time constraint required by the targeted service, + divided by the total number of sent network layer packets."; + reference "TS 22.261, TS 22.104"; + type string; + } + leaf serviceType { + description "An attribute specifies the standardized network slice type. + allowedValues: eMBB, URLLC, MIoT, V2X."; + type ServiceType-enum; + } + list deterministicComm { + //Stage2 issue: deterministicComm is not defined in 28.541 chapter 6, + // but I guess determinComm is meant + description "This list represents the properties of the deterministic + communication for periodic user traffic. Periodic traffic refers to the + type of traffic with periodic transmissions."; + key idx; + max-elements 1; + leaf idx { + description "Synthetic index for the element."; + type uint32; + } + list servAttrCom { + description "This list represents the common properties of service + requirement related attributes."; + reference "GSMA NG.116 corresponding to Attribute categories, + tagging and exposure"; + config false; + key idx; + max-elements 1; + leaf idx { + description "Synthetic index for the element."; + type uint32; + } + uses ns3cmn:ServAttrComGrp; + } + leaf availability { + //Stage2 issue: Defined differently in 28.541 chapter 6, but XML + // uses DeterminCommAvailability + config false; + type ns3cmn:DeterminCommAvailability; + } + leaf periodicityList { + //Stage2 issue: Not defined in 28.541 chapter 6. XML and YAML + // says "string". + type string; + } + } + leaf survivalTime { + description "An attribute specifies the time that an application + consuming a communication service may continue without an + anticipated message."; + reference "TS 22.104 clause 5"; + type string; + } + } + + grouping CNSliceSubnetProfileGrp { + leaf-list coverageArea { + min-elements 1; + description "A list of TrackingAreas where the NSI can be selected."; + type types3gpp:Tac; + } + leaf latency { + description "The packet transmission latency (milliseconds) through + the RAN, CN, and TN part of 5G network, used to evaluate + utilization performance of the end-to-end network slice instance."; + reference "3GPP TS 28.554 clause 6.3.1"; + //optional support + mandatory true; + type uint16; + units milliseconds; + } + leaf maxNumberofUEs { + description "Specifies the maximum number of UEs may simultaneously + access the network slice instance."; + //optional support + mandatory true; + type uint64; + } + list dLThptPerSliceSubnet { + description "This attribute defines achievable data rate of the + network slice subnet in downlink that is available ubiquitously + across the coverage area of the slice"; + key idx; + max-elements 1; + leaf idx { + description "Synthetic index for the element."; + type uint32; + } + uses ns3cmn:XLThptGrp; + } + list dLThptPerUE { + description "This attribute defines data rate supported by the + network slice per UE, refer NG.116."; + key idx; + max-elements 1; + leaf idx { + description "Synthetic index for the element."; + type uint32; + } + uses ns3cmn:XLThptGrp; + } + list uLThptPerSliceSubnet { + description "This attribute defines achievable data rate of the + network slice subnet in uplink that is available ubiquitously + across the coverage area of the slice"; + key idx; + max-elements 1; + leaf idx { + description "Synthetic index for the element."; + type uint32; + } + uses ns3cmn:XLThptGrp; + } + list uLThptPerUE { + description "This attribute defines data rate supported by the + network slice per UE, refer NG.116"; + key idx; + max-elements 1; + leaf idx { + description "Synthetic index for the element."; + type uint32; + } + uses ns3cmn:XLThptGrp; + } + list maxPktSize { + config false; + key idx; + max-elements 1; + leaf idx { + description "Synthetic index for the element."; + type uint32; + } + description "This parameter specifies the maximum packet size + supported by the network slice"; + list servAttrCom { + description "This list represents the common properties of service + requirement related attributes."; + reference "GSMA NG.116 corresponding to Attribute categories, + tagging and exposure"; + key idx; + max-elements 1; + leaf idx { + description "Synthetic index for the element."; + type uint32; + } + uses ns3cmn:ServAttrComGrp; + } + leaf maxSize { + //Stage2 issue: Not defined in 28.541, guessing integer bytes + type uint32; + units bytes; + } + } + list maxNumberofPDUSessions { + description "Represents the maximum number of + concurrent PDU sessions supported by the network slice"; + config false; + key idx; + max-elements 1; + leaf idx { + description "Synthetic index for the element."; + type uint32; + } + list servAttrCom { + description "This list represents the common properties of service + requirement related attributes."; + reference "GSMA NG.116 corresponding to Attribute categories, + tagging and exposure"; + key idx; + max-elements 1; + leaf idx { + description "Synthetic index for the element."; + type uint32; + } + uses ns3cmn:ServAttrComGrp; + } + leaf nOofPDUSessions { + //Stage2 issue: Not defined in 28.541, guessing integer + type uint32; + } + } + leaf sliceSimultaneousUse { + description "This attribute describes whether a network slice + can be simultaneously used by a device together with other + network slices and if so, with which other classes of network slices."; + type SliceSimultaneousUse-enum; + } + list delayTolerance { + description "An attribute specifies the properties of service delivery + flexibility, especially for the vertical services that are not + chasing a high system performance."; + reference "TS 22.104 clause 4.3"; + config false; + key idx; + max-elements 1; + leaf idx { + description "Synthetic index for the element."; + type uint32; + } + list servAttrCom { + description "This list represents the common properties of service + requirement related attributes."; + reference "GSMA NG.116 corresponding to Attribute categories, + tagging and exposure"; + key idx; + max-elements 1; + leaf idx { + description "Synthetic index for the element."; + type uint32; + } + uses ns3cmn:ServAttrComGrp; + } + leaf support { + description "An attribute specifies whether or not the network + slice supports service delivery flexibility, especially for the + vertical services that are not chasing a high system performance."; + type ns3cmn:Support-enum; + } + } + leaf-list coverageAreaTAList { + description "A list of TrackingAreas where the NSI can be selected."; + //optional support + min-elements 1; + type types3gpp:Tac; + } + leaf resourceSharingLevel { + description "Specifies whether the resources to be allocated to the + network slice subnet instance may be shared with another network + slice subnet instance(s)."; + //optional support + type types3gpp:ResourceSharingLevel; + } + + list deterministicComm { + //Stage2 issue: deterministicComm is not defined in 28.541 chapter 6, + // but I guess determinComm is meant + description "This list represents the properties of the deterministic + communication for periodic user traffic. Periodic traffic refers to the + type of traffic with periodic transmissions."; + key idx; + max-elements 1; + leaf idx { + description "Synthetic index for the element."; + type uint32; + } + list servAttrCom { + description "This list represents the common properties of service + requirement related attributes."; + reference "GSMA NG.116 corresponding to Attribute categories, + tagging and exposure"; + config false; + key idx; + max-elements 1; + leaf idx { + description "Synthetic index for the element."; + type uint32; + } + uses ns3cmn:ServAttrComGrp; + } + leaf availability { + //Stage2 issue: Defined differently in 28.541 chapter 6, but XML + // uses DeterminCommAvailability + config false; + type ns3cmn:DeterminCommAvailability; + } + leaf periodicityList { + //Stage2 issue: Not defined in 28.541 chapter 6. XML and YAML + // says "string". + type string; + } + } + } + + grouping RANSliceSubnetProfileGrp { + leaf latency { + description "The packet transmission latency (milliseconds) through + the RAN, CN, and TN part of 5G network, used to evaluate + utilization performance of the end-to-end network slice instance."; + reference "3GPP TS 28.554 clause 6.3.1"; + //optional support + mandatory true; + type uint16; + units milliseconds; + } + leaf maxNumberofUEs { + description "Specifies the maximum number of UEs may simultaneously + access the network slice instance."; + //optional support + mandatory true; + type uint64; + } + list dLThptPerUE { + description "This attribute defines data rate supported by the + network slice per UE, refer NG.116."; + key idx; + max-elements 1; + leaf idx { + description "Synthetic index for the element."; + type uint32; + } + uses ns3cmn:XLThptGrp; + } + list uLThptPerUE { + description "This attribute defines data rate supported by the + network slice per UE, refer NG.116"; + key idx; + max-elements 1; + leaf idx { + description "Synthetic index for the element."; + type uint32; + } + uses ns3cmn:XLThptGrp; + } + list maxPktSize { + config false; + key idx; + max-elements 1; + leaf idx { + description "Synthetic index for the element."; + type uint32; + } + description "This parameter specifies the maximum packet size + supported by the network slice"; + list servAttrCom { + description "This list represents the common properties of service + requirement related attributes."; + reference "GSMA NG.116 corresponding to Attribute categories, + tagging and exposure"; + key idx; + max-elements 1; + leaf idx { + description "Synthetic index for the element."; + type uint32; + } + uses ns3cmn:ServAttrComGrp; + } + leaf maxSize { + //Stage2 issue: Not defined in 28.541, guessing integer bytes + type uint32; + units bytes; + } + } + list delayTolerance { + description "An attribute specifies the properties of service delivery + flexibility, especially for the vertical services that are not + chasing a high system performance."; + reference "TS 22.104 clause 4.3"; + config false; + key idx; + max-elements 1; + leaf idx { + description "Synthetic index for the element."; + type uint32; + } + list servAttrCom { + description "This list represents the common properties of service + requirement related attributes."; + reference "GSMA NG.116 corresponding to Attribute categories, + tagging and exposure"; + key idx; + max-elements 1; + leaf idx { + description "Synthetic index for the element."; + type uint32; + } + uses ns3cmn:ServAttrComGrp; + } + leaf support { + description "An attribute specifies whether or not the network + slice supports service delivery flexibility, especially for the + vertical services that are not chasing a high system performance."; + type ns3cmn:Support-enum; + } + } + leaf sliceSimultaneousUse { + description "This attribute describes whether a network slice + can be simultaneously used by a device together with other + network slices and if so, with which other classes of network slices."; + type SliceSimultaneousUse-enum; + } + list termDensity { + description "An attribute specifies the overall user density over + the coverage area of the network slice"; + config false; + key idx; + max-elements 1; + leaf idx { + description "Synthetic index for the element."; + type uint32; + } + list servAttrCom { + description "This list represents the common properties of service + requirement related attributes."; + reference "GSMA NG.116 corresponding to Attribute categories, + tagging and exposure"; + key idx; + max-elements 1; + leaf idx { + description "Synthetic index for the element."; + type uint32; + } + uses ns3cmn:ServAttrComGrp; + } + leaf density { + type uint32; + units users/km2; + } + } + leaf activityFactor { + //Stage2 issue: This is modeled as writable/config true in 28.542, + // but that does not appear to match the description + description "An attribute specifies the percentage value of the + amount of simultaneous active UEs to the total number of UEs where + active means the UEs are exchanging data with the network"; + reference "TS 22.261 Table 7.1-1"; + type decimal64 { + fraction-digits 1; + } + } + leaf-list coverageAreaTAList { + description "A list of TrackingAreas where the NSI can be selected."; + //optional support + min-elements 1; + type types3gpp:Tac; + } + leaf uEMobilityLevel { + description "The mobility level of UE accessing the network slice + instance."; + //optional support + type types3gpp:UeMobilityLevel; + } + + leaf resourceSharingLevel { + description "Specifies whether the resources to be allocated to the + network slice subnet instance may be shared with another network + slice subnet instance(s)."; + //optional support + type types3gpp:ResourceSharingLevel; + } + leaf uESpeed { + //Stage2 issue: This is modeled as writable/config true in 28.542, + // but that does not appear to match the description + description "An attribute specifies the maximum speed (in km/hour) + supported by the network slice at which a defined QoS can be + achieved"; + type uint32; + units km/h; + } + leaf reliability { + description "An attribute specifies in the context of network layer + packet transmissions, percentage value of the amount of sent + network layer packets successfully delivered to a given system + entity within the time constraint required by the targeted service, + divided by the total number of sent network layer packets."; + reference "TS 22.261, TS 22.104"; + type string; + } + leaf serviceType { + description "An attribute specifies the standardized network slice type. + allowedValues: eMBB, URLLC, MIoT, V2X."; + type ServiceType-enum; + } + list deterministicComm { + //Stage2 issue: deterministicComm is not defined in 28.541 chapter 6, + // but I guess determinComm is meant + description "This list represents the properties of the deterministic + communication for periodic user traffic. Periodic traffic refers to the + type of traffic with periodic transmissions."; + key idx; + max-elements 1; + leaf idx { + description "Synthetic index for the element."; + type uint32; + } + list servAttrCom { + description "This list represents the common properties of service + requirement related attributes."; + reference "GSMA NG.116 corresponding to Attribute categories, + tagging and exposure"; + config false; + key idx; + max-elements 1; + leaf idx { + description "Synthetic index for the element."; + type uint32; + } + uses ns3cmn:ServAttrComGrp; + } + leaf availability { + //Stage2 issue: Defined differently in 28.541 chapter 6, but XML + // uses DeterminCommAvailability + config false; + type ns3cmn:DeterminCommAvailability; + } + leaf periodicityList { + //Stage2 issue: Not defined in 28.541 chapter 6. XML and YAML + // says "string". + type string; + } + } + leaf survivalTime { + description "An attribute specifies the time that an application + consuming a communication service may continue without an + anticipated message."; + reference "TS 22.104 clause 5"; + type string; + } + } + + grouping SliceProfileGrp { + leaf sliceProfileId { + description "A unique identifier of the property of network slice + subnet related requirement should be supported by the network + slice subnet instance."; + type types3gpp:DistinguishedName; + } + + list sNSSAIList { + description "List of S-NSSAIs the managed object is capable of + supporting. (Single Network Slice Selection Assistance Information) + An S-NSSAI has an SST (Slice/Service type) and an optional SD + (Slice Differentiator) field."; + key idx; + unique "sst sd"; + leaf idx { + description "Synthetic index for the element."; + type uint32; + } + uses types5g3gpp:SNssai; + } + + list pLMNIdList { + description "List of at most six entries of PLMN Identifiers, but at + least one (the primary PLMN Id). The PLMN Identifier is composed + of a Mobile Country Code (MCC) and a Mobile Network Code (MNC)."; + min-elements 1; + max-elements 6; + key "mcc mnc"; + ordered-by user; + uses types3gpp:PLMNId; + } + + leaf maxNumberofUEs { + description "Specifies the maximum number of UEs may simultaneously + access the network slice instance."; + //optional support + mandatory true; + type uint64; + } + + leaf-list coverageAreaTAList { + description "A list of TrackingAreas where the NSI can be selected."; + //optional support + min-elements 1; + type types3gpp:Tac; + } + + leaf latency { + description "The packet transmission latency (milliseconds) through + the RAN, CN, and TN part of 5G network, used to evaluate + utilization performance of the end-to-end network slice instance."; + reference "3GPP TS 28.554 clause 6.3.1"; + //optional support + mandatory true; + type uint16; + units milliseconds; + } + + leaf uEMobilityLevel { + description "The mobility level of UE accessing the network slice + instance."; + //optional support + type types3gpp:UeMobilityLevel; + } + + leaf resourceSharingLevel { + description "Specifies whether the resources to be allocated to the + network slice subnet instance may be shared with another network + slice subnet instance(s)."; + //optional support + type types3gpp:ResourceSharingLevel; + } + list CNSliceSubnetProfile { + description " This represents the requirements for the top slice associated with the + network slice. "; + key idx; + max-elements 1; + leaf idx { + description "Synthetic index for the element."; + type uint32; + } + uses TopSliceSubnetProfileGrp; + } + list RANSliceSubnetProfile { + description " This represents the requirements for the top slice associated with the + network slice. "; + key idx; + max-elements 1; + leaf idx { + description "Synthetic index for the element."; + type uint32; + } + uses TopSliceSubnetProfileGrp; + } + list TopSliceSubnetProfile { + description " This represents the requirements for the top slice associated with the + network slice. "; + key idx; + max-elements 1; + leaf idx { + description "Synthetic index for the element."; + type uint32; + } + uses TopSliceSubnetProfileGrp; + } + } +} \ No newline at end of file diff --git a/yang-models/external-yams/ietf-inet-types.yang b/yang-models/external-yams/ietf-inet-types.yang new file mode 100755 index 000000000..a69ac0579 --- /dev/null +++ b/yang-models/external-yams/ietf-inet-types.yang @@ -0,0 +1,472 @@ +module ietf-inet-types { + + yang-version 1; + + namespace + "urn:ietf:params:xml:ns:yang:ietf-inet-types"; + + prefix inet; + + organization + "IETF NETMOD (NETCONF Data Modeling Language) Working Group"; + + contact + "WG Web: + WG List: + + WG Chair: David Kessens + + + WG Chair: Juergen Schoenwaelder + + + Editor: Juergen Schoenwaelder + "; + + description + "This module contains a collection of generally useful derived + YANG data types for Internet addresses and related things. + + Copyright (c) 2013 IETF Trust and the persons identified as + authors of the code. All rights reserved. + + Redistribution and use in source and binary forms, with or + without modification, is permitted pursuant to, and subject + to the license terms contained in, the Simplified BSD License + set forth in Section 4.c of the IETF Trust's Legal Provisions + Relating to IETF Documents + (http://trustee.ietf.org/license-info). + + This version of this YANG module is part of RFC 6991; see + the RFC itself for full legal notices."; + + revision "2013-07-15" { + description + "This revision adds the following new data types: + - ip-address-no-zone + - ipv4-address-no-zone + - ipv6-address-no-zone"; + reference + "RFC 6991: Common YANG Data Types"; + + } + + revision "2010-09-24" { + description "Initial revision."; + reference + "RFC 6021: Common YANG Data Types"; + + } + + + typedef ip-version { + type enumeration { + enum "unknown" { + value 0; + description + "An unknown or unspecified version of the Internet + protocol."; + } + enum "ipv4" { + value 1; + description + "The IPv4 protocol as defined in RFC 791."; + } + enum "ipv6" { + value 2; + description + "The IPv6 protocol as defined in RFC 2460."; + } + } + description + "This value represents the version of the IP protocol. + + In the value set and its semantics, this type is equivalent + to the InetVersion textual convention of the SMIv2."; + reference + "RFC 791: Internet Protocol + RFC 2460: Internet Protocol, Version 6 (IPv6) Specification + RFC 4001: Textual Conventions for Internet Network Addresses"; + + } + + typedef dscp { + type uint8 { + range "0..63"; + } + description + "The dscp type represents a Differentiated Services Code Point + that may be used for marking packets in a traffic stream. + In the value set and its semantics, this type is equivalent + to the Dscp textual convention of the SMIv2."; + reference + "RFC 3289: Management Information Base for the Differentiated + Services Architecture + RFC 2474: Definition of the Differentiated Services Field + (DS Field) in the IPv4 and IPv6 Headers + RFC 2780: IANA Allocation Guidelines For Values In + the Internet Protocol and Related Headers"; + + } + + typedef ipv6-flow-label { + type uint32 { + range "0..1048575"; + } + description + "The ipv6-flow-label type represents the flow identifier or Flow + Label in an IPv6 packet header that may be used to + discriminate traffic flows. + + In the value set and its semantics, this type is equivalent + to the IPv6FlowLabel textual convention of the SMIv2."; + reference + "RFC 3595: Textual Conventions for IPv6 Flow Label + RFC 2460: Internet Protocol, Version 6 (IPv6) Specification"; + + } + + typedef port-number { + type uint16 { + range "0..65535"; + } + description + "The port-number type represents a 16-bit port number of an + Internet transport-layer protocol such as UDP, TCP, DCCP, or + SCTP. Port numbers are assigned by IANA. A current list of + all assignments is available from . + + Note that the port number value zero is reserved by IANA. In + situations where the value zero does not make sense, it can + be excluded by subtyping the port-number type. + In the value set and its semantics, this type is equivalent + to the InetPortNumber textual convention of the SMIv2."; + reference + "RFC 768: User Datagram Protocol + RFC 793: Transmission Control Protocol + RFC 4960: Stream Control Transmission Protocol + RFC 4340: Datagram Congestion Control Protocol (DCCP) + RFC 4001: Textual Conventions for Internet Network Addresses"; + + } + + typedef as-number { + type uint32; + description + "The as-number type represents autonomous system numbers + which identify an Autonomous System (AS). An AS is a set + of routers under a single technical administration, using + an interior gateway protocol and common metrics to route + packets within the AS, and using an exterior gateway + protocol to route packets to other ASes. IANA maintains + the AS number space and has delegated large parts to the + regional registries. + + Autonomous system numbers were originally limited to 16 + bits. BGP extensions have enlarged the autonomous system + number space to 32 bits. This type therefore uses an uint32 + base type without a range restriction in order to support + a larger autonomous system number space. + + In the value set and its semantics, this type is equivalent + to the InetAutonomousSystemNumber textual convention of + the SMIv2."; + reference + "RFC 1930: Guidelines for creation, selection, and registration + of an Autonomous System (AS) + RFC 4271: A Border Gateway Protocol 4 (BGP-4) + RFC 4001: Textual Conventions for Internet Network Addresses + RFC 6793: BGP Support for Four-Octet Autonomous System (AS) + Number Space"; + + } + + typedef ip-address { + type union { + type ipv4-address; + type ipv6-address; + } + description + "The ip-address type represents an IP address and is IP + version neutral. The format of the textual representation + implies the IP version. This type supports scoped addresses + by allowing zone identifiers in the address format."; + reference + "RFC 4007: IPv6 Scoped Address Architecture"; + + } + + typedef ipv4-address { + type string { + pattern + '(([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])\.){3}' + + '([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])' + + '(%[\p{N}\p{L}]+)?'; + } + description + "The ipv4-address type represents an IPv4 address in + dotted-quad notation. The IPv4 address may include a zone + index, separated by a % sign. + + The zone index is used to disambiguate identical address + values. For link-local addresses, the zone index will + typically be the interface index number or the name of an + interface. If the zone index is not present, the default + zone of the device will be used. + + The canonical format for the zone index is the numerical + format"; + } + + typedef ipv6-address { + type string { + pattern + '((:|[0-9a-fA-F]{0,4}):)([0-9a-fA-F]{0,4}:){0,5}' + + '((([0-9a-fA-F]{0,4}:)?(:|[0-9a-fA-F]{0,4}))|' + + '(((25[0-5]|2[0-4][0-9]|[01]?[0-9]?[0-9])\.){3}' + + '(25[0-5]|2[0-4][0-9]|[01]?[0-9]?[0-9])))' + + '(%[\p{N}\p{L}]+)?'; + pattern + '(([^:]+:){6}(([^:]+:[^:]+)|(.*\..*)))|' + + '((([^:]+:)*[^:]+)?::(([^:]+:)*[^:]+)?)' + + '(%.+)?'; + } + description + "The ipv6-address type represents an IPv6 address in full, + mixed, shortened, and shortened-mixed notation. The IPv6 + address may include a zone index, separated by a % sign. + + The zone index is used to disambiguate identical address + values. For link-local addresses, the zone index will + typically be the interface index number or the name of an + interface. If the zone index is not present, the default + zone of the device will be used. + + + + The canonical format of IPv6 addresses uses the textual + representation defined in Section 4 of RFC 5952. The + canonical format for the zone index is the numerical + format as described in Section 11.2 of RFC 4007."; + reference + "RFC 4291: IP Version 6 Addressing Architecture + RFC 4007: IPv6 Scoped Address Architecture + RFC 5952: A Recommendation for IPv6 Address Text + Representation"; + + } + + typedef ip-address-no-zone { + type union { + type ipv4-address-no-zone; + type ipv6-address-no-zone; + } + description + "The ip-address-no-zone type represents an IP address and is + IP version neutral. The format of the textual representation + implies the IP version. This type does not support scoped + addresses since it does not allow zone identifiers in the + address format."; + reference + "RFC 4007: IPv6 Scoped Address Architecture"; + + } + + typedef ipv4-address-no-zone { + type ipv4-address { + pattern '[0-9\.]*'; + } + description + "An IPv4 address without a zone index. This type, derived from + ipv4-address, may be used in situations where the zone is + known from the context and hence no zone index is needed."; + } + + typedef ipv6-address-no-zone { + type ipv6-address { + pattern '[0-9a-fA-F:\.]*'; + } + description + "An IPv6 address without a zone index. This type, derived from + ipv6-address, may be used in situations where the zone is + known from the context and hence no zone index is needed."; + reference + "RFC 4291: IP Version 6 Addressing Architecture + RFC 4007: IPv6 Scoped Address Architecture + RFC 5952: A Recommendation for IPv6 Address Text + Representation"; + + } + + typedef ip-prefix { + type union { + type ipv4-prefix; + type ipv6-prefix; + } + description + "The ip-prefix type represents an IP prefix and is IP + version neutral. The format of the textual representations + implies the IP version."; + } + + typedef ipv4-prefix { + type string { + pattern + '(([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])\.){3}' + + '([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])' + + '/(([0-9])|([1-2][0-9])|(3[0-2]))'; + } + description + "The ipv4-prefix type represents an IPv4 address prefix. + The prefix length is given by the number following the + slash character and must be less than or equal to 32. + + A prefix length value of n corresponds to an IP address + mask that has n contiguous 1-bits from the most + significant bit (MSB) and all other bits set to 0. + + The canonical format of an IPv4 prefix has all bits of + the IPv4 address set to zero that are not part of the + IPv4 prefix."; + } + + typedef ipv6-prefix { + type string { + pattern + '((:|[0-9a-fA-F]{0,4}):)([0-9a-fA-F]{0,4}:){0,5}' + + '((([0-9a-fA-F]{0,4}:)?(:|[0-9a-fA-F]{0,4}))|' + + '(((25[0-5]|2[0-4][0-9]|[01]?[0-9]?[0-9])\.){3}' + + '(25[0-5]|2[0-4][0-9]|[01]?[0-9]?[0-9])))' + + '(/(([0-9])|([0-9]{2})|(1[0-1][0-9])|(12[0-8])))'; + pattern + '(([^:]+:){6}(([^:]+:[^:]+)|(.*\..*)))|' + + '((([^:]+:)*[^:]+)?::(([^:]+:)*[^:]+)?)' + + '(/.+)'; + } + description + "The ipv6-prefix type represents an IPv6 address prefix. + The prefix length is given by the number following the + slash character and must be less than or equal to 128. + + A prefix length value of n corresponds to an IP address + mask that has n contiguous 1-bits from the most + significant bit (MSB) and all other bits set to 0. + + The IPv6 address should have all bits that do not belong + to the prefix set to zero. + + The canonical format of an IPv6 prefix has all bits of + the IPv6 address set to zero that are not part of the + IPv6 prefix. Furthermore, the IPv6 address is represented + as defined in Section 4 of RFC 5952."; + reference + "RFC 5952: A Recommendation for IPv6 Address Text + Representation"; + + } + + typedef domain-name { + type string { + length "1..253"; + pattern + '((([a-zA-Z0-9_]([a-zA-Z0-9\-_]){0,61})?[a-zA-Z0-9]\.)*' + + '([a-zA-Z0-9_]([a-zA-Z0-9\-_]){0,61})?[a-zA-Z0-9]\.?)' + + '|\.'; + } + description + "The domain-name type represents a DNS domain name. The + name SHOULD be fully qualified whenever possible. + + Internet domain names are only loosely specified. Section + 3.5 of RFC 1034 recommends a syntax (modified in Section + 2.1 of RFC 1123). The pattern above is intended to allow + for current practice in domain name use, and some possible + future expansion. It is designed to hold various types of + domain names, including names used for A or AAAA records + (host names) and other records, such as SRV records. Note + that Internet host names have a stricter syntax (described + in RFC 952) than the DNS recommendations in RFCs 1034 and + 1123, and that systems that want to store host names in + schema nodes using the domain-name type are recommended to + adhere to this stricter standard to ensure interoperability. + + The encoding of DNS names in the DNS protocol is limited + to 255 characters. Since the encoding consists of labels + prefixed by a length bytes and there is a trailing NULL + byte, only 253 characters can appear in the textual dotted + notation. + + The description clause of schema nodes using the domain-name + type MUST describe when and how these names are resolved to + IP addresses. Note that the resolution of a domain-name value + may require to query multiple DNS records (e.g., A for IPv4 + and AAAA for IPv6). The order of the resolution process and + which DNS record takes precedence can either be defined + explicitly or may depend on the configuration of the + resolver. + + Domain-name values use the US-ASCII encoding. Their canonical + format uses lowercase US-ASCII characters. Internationalized + domain names MUST be A-labels as per RFC 5890."; + reference + "RFC 952: DoD Internet Host Table Specification + RFC 1034: Domain Names - Concepts and Facilities + RFC 1123: Requirements for Internet Hosts -- Application + and Support + RFC 2782: A DNS RR for specifying the location of services + (DNS SRV) + RFC 5890: Internationalized Domain Names in Applications + (IDNA): Definitions and Document Framework"; + + } + + typedef host { + type union { + type ip-address; + type domain-name; + } + description + "The host type represents either an IP address or a DNS + domain name."; + } + + typedef uri { + type string; + description + "The uri type represents a Uniform Resource Identifier + (URI) as defined by STD 66. + + Objects using the uri type MUST be in US-ASCII encoding, + and MUST be normalized as described by RFC 3986 Sections + 6.2.1, 6.2.2.1, and 6.2.2.2. All unnecessary + percent-encoding is removed, and all case-insensitive + characters are set to lowercase except for hexadecimal + digits, which are normalized to uppercase as described in + Section 6.2.2.1. + + The purpose of this normalization is to help provide + unique URIs. Note that this normalization is not + sufficient to provide uniqueness. Two URIs that are + textually distinct after this normalization may still be + equivalent. + + Objects using the uri type may restrict the schemes that + they permit. For example, 'data:' and 'urn:' schemes + might not be appropriate. + + A zero-length URI is not a valid URI. This can be used to + express 'URI absent' where required. + + In the value set and its semantics, this type is equivalent + to the Uri SMIv2 textual convention defined in RFC 5017."; + reference + "RFC 3986: Uniform Resource Identifier (URI): Generic Syntax + RFC 3305: Report from the Joint W3C/IETF URI Planning Interest + Group: Uniform Resource Identifiers (URIs), URLs, + and Uniform Resource Names (URNs): Clarifications + and Recommendations + RFC 5017: MIB Textual Conventions for Uniform Resource + Identifiers (URIs)"; + + } + } // module ietf-inet-types diff --git a/yang-models/external-yams/ietf-yang-schema-mount@2019-01-14.yang b/yang-models/external-yams/ietf-yang-schema-mount@2019-01-14.yang new file mode 100755 index 000000000..c49458a11 --- /dev/null +++ b/yang-models/external-yams/ietf-yang-schema-mount@2019-01-14.yang @@ -0,0 +1,224 @@ +module ietf-yang-schema-mount { + yang-version 1.1; + namespace "urn:ietf:params:xml:ns:yang:ietf-yang-schema-mount"; + prefix yangmnt; + + import ietf-inet-types { + prefix inet; + reference + "RFC 6991: Common YANG Data Types"; + } + + import ietf-yang-types { + prefix yang; + reference + "RFC 6991: Common YANG Data Types"; + } + + organization + "IETF NETMOD (NETCONF Data Modeling Language) Working Group"; + + contact + "WG Web: + WG List: + + Editor: Martin Bjorklund + + + Editor: Ladislav Lhotka + "; + + description + "This module defines a YANG extension statement that can be used + to incorporate data models defined in other YANG modules in a + module. It also defines operational state data that specify the + overall structure of the data model. + + The key words 'MUST', 'MUST NOT', 'REQUIRED', 'SHALL', 'SHALL + NOT', 'SHOULD', 'SHOULD NOT', 'RECOMMENDED', 'NOT RECOMMENDED', + 'MAY', and 'OPTIONAL' in this document are to be interpreted as + described in BCP 14 (RFC 2119) (RFC 8174) when, and only when, + they appear in all capitals, as shown here. + + Copyright (c) 2019 IETF Trust and the persons identified as + authors of the code. All rights reserved. + + Redistribution and use in source and binary forms, with or + without modification, is permitted pursuant to, and subject to + the license terms contained in, the Simplified BSD License set + forth in Section 4.c of the IETF Trust's Legal Provisions + Relating to IETF Documents + (https://trustee.ietf.org/license-info). + + This version of this YANG module is part of RFC 8528; + see the RFC itself for full legal notices."; + + revision 2019-01-14 { + description + "Initial revision."; + reference + "RFC 8528: YANG Schema Mount"; + } + + /* + * Extensions + */ + + extension mount-point { + argument label; + description + "The argument 'label' is a YANG identifier, i.e., it is of the + type 'yang:yang-identifier'. + + The 'mount-point' statement MUST NOT be used in a YANG + version 1 module, neither explicitly nor via a 'uses' + statement. + The 'mount-point' statement MAY be present as a substatement + of 'container' and 'list' and MUST NOT be present elsewhere. + There MUST NOT be more than one 'mount-point' statement in a + given 'container' or 'list' statement. + + If a mount point is defined within a grouping, its label is + bound to the module where the grouping is used. + + A mount point defines a place in the node hierarchy where + other data models may be attached. A server that implements a + module with a mount point populates the + '/schema-mounts/mount-point' list with detailed information on + which data models are mounted at each mount point. + + Note that the 'mount-point' statement does not define a new + data node."; + } + + /* + * State data nodes + */ + + container schema-mounts { + config false; + description + "Contains information about the structure of the overall + mounted data model implemented in the server."; + list namespace { + key "prefix"; + description + "This list provides a mapping of namespace prefixes that are + used in XPath expressions of 'parent-reference' leafs to the + corresponding namespace URI references."; + leaf prefix { + type yang:yang-identifier; + description + "Namespace prefix."; + } + leaf uri { + type inet:uri; + description + "Namespace URI reference."; + } + } + list mount-point { + key "module label"; + + description + "Each entry of this list specifies a schema for a particular + mount point. + + Each mount point MUST be defined using the 'mount-point' + extension in one of the modules listed in the server's + YANG library instance with conformance type 'implement'."; + leaf module { + type yang:yang-identifier; + description + "Name of a module containing the mount point."; + } + leaf label { + type yang:yang-identifier; + description + "Label of the mount point defined using the 'mount-point' + extension."; + } + leaf config { + type boolean; + default "true"; + description + "If this leaf is set to 'false', then all data nodes in the + mounted schema are read-only ('config false'), regardless + of their 'config' property."; + } + choice schema-ref { + mandatory true; + description + "Alternatives for specifying the schema."; + container inline { + presence + "A complete self-contained schema is mounted at the + mount point."; + description + "This node indicates that the server has mounted at least + the module 'ietf-yang-library' at the mount point, and + its instantiation provides the information about the + mounted schema. + + Different instances of the mount point may have + different schemas mounted."; + } + container shared-schema { + presence + "The mounted schema together with the 'parent-reference' + make up the schema for this mount point."; + + description + "This node indicates that the server has mounted at least + the module 'ietf-yang-library' at the mount point, and + its instantiation provides the information about the + mounted schema. When XPath expressions in the mounted + schema are evaluated, the 'parent-reference' leaf-list + is taken into account. + + Different instances of the mount point MUST have the + same schema mounted."; + leaf-list parent-reference { + type yang:xpath1.0; + description + "Entries of this leaf-list are XPath 1.0 expressions + that are evaluated in the following context: + + - The context node is the node in the parent data tree + where the mount-point is defined. + + - The accessible tree is the parent data tree + *without* any nodes defined in modules that are + mounted inside the parent schema. + + - The context position and context size are both equal + to 1. + + - The set of variable bindings is empty. + + - The function library is the core function library + defined in the W3C XPath 1.0 document + (http://www.w3.org/TR/1999/REC-xpath-19991116) and + the functions defined in Section 10 of RFC 7950. + + - The set of namespace declarations is defined by the + 'namespace' list under 'schema-mounts'. + + Each XPath expression MUST evaluate to a node-set + (possibly empty). For the purposes of evaluating + XPath expressions whose context nodes are defined in + the mounted schema, the union of all these node-sets + together with ancestor nodes are added to the + accessible data tree. + + Note that in the case 'ietf-yang-schema-mount' is + itself mounted, a 'parent-reference' in the mounted + module may refer to nodes that were brought into the + accessible tree through a 'parent-reference' in the + parent schema."; + } + } + } + } + } +} diff --git a/yang-models/external-yams/ietf-yang-types@2013-07-15.yang b/yang-models/external-yams/ietf-yang-types@2013-07-15.yang new file mode 100755 index 000000000..371a091d1 --- /dev/null +++ b/yang-models/external-yams/ietf-yang-types@2013-07-15.yang @@ -0,0 +1,480 @@ +module ietf-yang-types { + + namespace "urn:ietf:params:xml:ns:yang:ietf-yang-types"; + prefix "yang"; + + organization + "IETF NETMOD (NETCONF Data Modeling Language) Working Group"; + + contact + "WG Web: + WG List: + + WG Chair: David Kessens + + + WG Chair: Juergen Schoenwaelder + + + Editor: Juergen Schoenwaelder + "; + + description + "This module contains a collection of generally useful derived + YANG data types. + + Copyright (c) 2013 IETF Trust and the persons identified as + authors of the code. All rights reserved. + + Redistribution and use in source and binary forms, with or + without modification, is permitted pursuant to, and subject + to the license terms contained in, the Simplified BSD License + set forth in Section 4.c of the IETF Trust's Legal Provisions + Relating to IETF Documents + (http://trustee.ietf.org/license-info). + + This version of this YANG module is part of RFC 6991; see + the RFC itself for full legal notices."; + + revision 2013-07-15 { + description + "This revision adds the following new data types: + - yang-identifier + - hex-string + - uuid + - dotted-quad"; + reference + "RFC 6991: Common YANG Data Types"; + } + + revision 2010-09-24 { + description + "Initial revision."; + reference + "RFC 6021: Common YANG Data Types"; + } + + /*** collection of counter and gauge types ***/ + + typedef counter32 { + type uint32; + description + "The counter32 type represents a non-negative integer + that monotonically increases until it reaches a + maximum value of 2^32-1 (4294967295 decimal), when it + wraps around and starts increasing again from zero. + + Counters have no defined 'initial' value, and thus, a + single value of a counter has (in general) no information + content. Discontinuities in the monotonically increasing + value normally occur at re-initialization of the + management system, and at other times as specified in the + description of a schema node using this type. If such + other times can occur, for example, the creation of + a schema node of type counter32 at times other than + re-initialization, then a corresponding schema node + should be defined, with an appropriate type, to indicate + the last discontinuity. + + The counter32 type should not be used for configuration + schema nodes. A default statement SHOULD NOT be used in + combination with the type counter32. + + In the value set and its semantics, this type is equivalent + to the Counter32 type of the SMIv2."; + reference + "RFC 2578: Structure of Management Information Version 2 + (SMIv2)"; + } + + typedef zero-based-counter32 { + type yang:counter32; + default "0"; + description + "The zero-based-counter32 type represents a counter32 + that has the defined 'initial' value zero. + + A schema node of this type will be set to zero (0) on creation + and will thereafter increase monotonically until it reaches + a maximum value of 2^32-1 (4294967295 decimal), when it + wraps around and starts increasing again from zero. + + Provided that an application discovers a new schema node + of this type within the minimum time to wrap, it can use the + 'initial' value as a delta. It is important for a management + station to be aware of this minimum time and the actual time + between polls, and to discard data if the actual time is too + long or there is no defined minimum time. + + In the value set and its semantics, this type is equivalent + to the ZeroBasedCounter32 textual convention of the SMIv2."; + reference + "RFC 4502: Remote Network Monitoring Management Information + Base Version 2"; + } + + typedef counter64 { + type uint64; + description + "The counter64 type represents a non-negative integer + that monotonically increases until it reaches a + maximum value of 2^64-1 (18446744073709551615 decimal), + when it wraps around and starts increasing again from zero. + + Counters have no defined 'initial' value, and thus, a + single value of a counter has (in general) no information + content. Discontinuities in the monotonically increasing + value normally occur at re-initialization of the + management system, and at other times as specified in the + description of a schema node using this type. If such + other times can occur, for example, the creation of + a schema node of type counter64 at times other than + re-initialization, then a corresponding schema node + should be defined, with an appropriate type, to indicate + the last discontinuity. + + The counter64 type should not be used for configuration + schema nodes. A default statement SHOULD NOT be used in + combination with the type counter64. + + In the value set and its semantics, this type is equivalent + to the Counter64 type of the SMIv2."; + reference + "RFC 2578: Structure of Management Information Version 2 + (SMIv2)"; + } + + typedef zero-based-counter64 { + type yang:counter64; + default "0"; + description + "The zero-based-counter64 type represents a counter64 that + has the defined 'initial' value zero. + + + + + A schema node of this type will be set to zero (0) on creation + and will thereafter increase monotonically until it reaches + a maximum value of 2^64-1 (18446744073709551615 decimal), + when it wraps around and starts increasing again from zero. + + Provided that an application discovers a new schema node + of this type within the minimum time to wrap, it can use the + 'initial' value as a delta. It is important for a management + station to be aware of this minimum time and the actual time + between polls, and to discard data if the actual time is too + long or there is no defined minimum time. + + In the value set and its semantics, this type is equivalent + to the ZeroBasedCounter64 textual convention of the SMIv2."; + reference + "RFC 2856: Textual Conventions for Additional High Capacity + Data Types"; + } + + typedef gauge32 { + type uint32; + description + "The gauge32 type represents a non-negative integer, which + may increase or decrease, but shall never exceed a maximum + value, nor fall below a minimum value. The maximum value + cannot be greater than 2^32-1 (4294967295 decimal), and + the minimum value cannot be smaller than 0. The value of + a gauge32 has its maximum value whenever the information + being modeled is greater than or equal to its maximum + value, and has its minimum value whenever the information + being modeled is smaller than or equal to its minimum value. + If the information being modeled subsequently decreases + below (increases above) the maximum (minimum) value, the + gauge32 also decreases (increases). + + In the value set and its semantics, this type is equivalent + to the Gauge32 type of the SMIv2."; + reference + "RFC 2578: Structure of Management Information Version 2 + (SMIv2)"; + } + + typedef gauge64 { + type uint64; + description + "The gauge64 type represents a non-negative integer, which + may increase or decrease, but shall never exceed a maximum + value, nor fall below a minimum value. The maximum value + cannot be greater than 2^64-1 (18446744073709551615), and + the minimum value cannot be smaller than 0. The value of + a gauge64 has its maximum value whenever the information + being modeled is greater than or equal to its maximum + value, and has its minimum value whenever the information + being modeled is smaller than or equal to its minimum value. + If the information being modeled subsequently decreases + below (increases above) the maximum (minimum) value, the + gauge64 also decreases (increases). + + In the value set and its semantics, this type is equivalent + to the CounterBasedGauge64 SMIv2 textual convention defined + in RFC 2856"; + reference + "RFC 2856: Textual Conventions for Additional High Capacity + Data Types"; + } + + /*** collection of identifier-related types ***/ + + typedef object-identifier { + type string { + pattern '(([0-1](\.[1-3]?[0-9]))|(2\.(0|([1-9]\d*))))' + + '(\.(0|([1-9]\d*)))*'; + } + description + "The object-identifier type represents administratively + assigned names in a registration-hierarchical-name tree. + + Values of this type are denoted as a sequence of numerical + non-negative sub-identifier values. Each sub-identifier + value MUST NOT exceed 2^32-1 (4294967295). Sub-identifiers + are separated by single dots and without any intermediate + whitespace. + + The ASN.1 standard restricts the value space of the first + sub-identifier to 0, 1, or 2. Furthermore, the value space + of the second sub-identifier is restricted to the range + 0 to 39 if the first sub-identifier is 0 or 1. Finally, + the ASN.1 standard requires that an object identifier + has always at least two sub-identifiers. The pattern + captures these restrictions. + + Although the number of sub-identifiers is not limited, + module designers should realize that there may be + implementations that stick with the SMIv2 limit of 128 + sub-identifiers. + + This type is a superset of the SMIv2 OBJECT IDENTIFIER type + since it is not restricted to 128 sub-identifiers. Hence, + this type SHOULD NOT be used to represent the SMIv2 OBJECT + IDENTIFIER type; the object-identifier-128 type SHOULD be + used instead."; + reference + "ISO9834-1: Information technology -- Open Systems + Interconnection -- Procedures for the operation of OSI + Registration Authorities: General procedures and top + arcs of the ASN.1 Object Identifier tree"; + } + + typedef object-identifier-128 { + type object-identifier { + pattern '\d*(\.\d*){1,127}'; + } + description + "This type represents object-identifiers restricted to 128 + sub-identifiers. + + In the value set and its semantics, this type is equivalent + to the OBJECT IDENTIFIER type of the SMIv2."; + reference + "RFC 2578: Structure of Management Information Version 2 + (SMIv2)"; + } + + typedef yang-identifier { + type string { + length "1..max"; + pattern '[a-zA-Z_][a-zA-Z0-9\-_.]*'; + pattern '.|..|[^xX].*|.[^mM].*|..[^lL].*'; + } + description + "A YANG identifier string as defined by the 'identifier' + rule in Section 12 of RFC 6020. An identifier must + start with an alphabetic character or an underscore + followed by an arbitrary sequence of alphabetic or + numeric characters, underscores, hyphens, or dots. + + A YANG identifier MUST NOT start with any possible + combination of the lowercase or uppercase character + sequence 'xml'."; + reference + "RFC 6020: YANG - A Data Modeling Language for the Network + Configuration Protocol (NETCONF)"; + } + + /*** collection of types related to date and time***/ + + typedef date-and-time { + type string { + pattern '\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}(\.\d+)?' + + '(Z|[\+\-]\d{2}:\d{2})'; + } + description + "The date-and-time type is a profile of the ISO 8601 + standard for representation of dates and times using the + Gregorian calendar. The profile is defined by the + date-time production in Section 5.6 of RFC 3339. + + The date-and-time type is compatible with the dateTime XML + schema type with the following notable exceptions: + + (a) The date-and-time type does not allow negative years. + + (b) The date-and-time time-offset -00:00 indicates an unknown + time zone (see RFC 3339) while -00:00 and +00:00 and Z + all represent the same time zone in dateTime. + + (c) The canonical format (see below) of data-and-time values + differs from the canonical format used by the dateTime XML + schema type, which requires all times to be in UTC using + the time-offset 'Z'. + + This type is not equivalent to the DateAndTime textual + convention of the SMIv2 since RFC 3339 uses a different + separator between full-date and full-time and provides + higher resolution of time-secfrac. + + The canonical format for date-and-time values with a known time + zone uses a numeric time zone offset that is calculated using + the device's configured known offset to UTC time. A change of + the device's offset to UTC time will cause date-and-time values + to change accordingly. Such changes might happen periodically + in case a server follows automatically daylight saving time + (DST) time zone offset changes. The canonical format for + date-and-time values with an unknown time zone (usually + referring to the notion of local time) uses the time-offset + -00:00."; + reference + "RFC 3339: Date and Time on the Internet: Timestamps + RFC 2579: Textual Conventions for SMIv2 + XSD-TYPES: XML Schema Part 2: Datatypes Second Edition"; + } + + typedef timeticks { + type uint32; + description + "The timeticks type represents a non-negative integer that + represents the time, modulo 2^32 (4294967296 decimal), in + hundredths of a second between two epochs. When a schema + node is defined that uses this type, the description of + the schema node identifies both of the reference epochs. + + In the value set and its semantics, this type is equivalent + to the TimeTicks type of the SMIv2."; + reference + "RFC 2578: Structure of Management Information Version 2 + (SMIv2)"; + } + + typedef timestamp { + type yang:timeticks; + description + "The timestamp type represents the value of an associated + timeticks schema node at which a specific occurrence + happened. The specific occurrence must be defined in the + description of any schema node defined using this type. When + the specific occurrence occurred prior to the last time the + associated timeticks attribute was zero, then the timestamp + value is zero. Note that this requires all timestamp values + to be reset to zero when the value of the associated timeticks + attribute reaches 497+ days and wraps around to zero. + + The associated timeticks schema node must be specified + in the description of any schema node using this type. + + In the value set and its semantics, this type is equivalent + to the TimeStamp textual convention of the SMIv2."; + reference + "RFC 2579: Textual Conventions for SMIv2"; + } + + /*** collection of generic address types ***/ + + typedef phys-address { + type string { + pattern '([0-9a-fA-F]{2}(:[0-9a-fA-F]{2})*)?'; + } + + + + + description + "Represents media- or physical-level addresses represented + as a sequence octets, each octet represented by two hexadecimal + numbers. Octets are separated by colons. The canonical + representation uses lowercase characters. + + In the value set and its semantics, this type is equivalent + to the PhysAddress textual convention of the SMIv2."; + reference + "RFC 2579: Textual Conventions for SMIv2"; + } + + typedef mac-address { + type string { + pattern '[0-9a-fA-F]{2}(:[0-9a-fA-F]{2}){5}'; + } + description + "The mac-address type represents an IEEE 802 MAC address. + The canonical representation uses lowercase characters. + + In the value set and its semantics, this type is equivalent + to the MacAddress textual convention of the SMIv2."; + reference + "IEEE 802: IEEE Standard for Local and Metropolitan Area + Networks: Overview and Architecture + RFC 2579: Textual Conventions for SMIv2"; + } + + /*** collection of XML-specific types ***/ + + typedef xpath1.0 { + type string; + description + "This type represents an XPATH 1.0 expression. + + When a schema node is defined that uses this type, the + description of the schema node MUST specify the XPath + context in which the XPath expression is evaluated."; + reference + "XPATH: XML Path Language (XPath) Version 1.0"; + } + + /*** collection of string types ***/ + + typedef hex-string { + type string { + pattern '([0-9a-fA-F]{2}(:[0-9a-fA-F]{2})*)?'; + } + description + "A hexadecimal string with octets represented as hex digits + separated by colons. The canonical representation uses + lowercase characters."; + } + + typedef uuid { + type string { + pattern '[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-' + + '[0-9a-fA-F]{4}-[0-9a-fA-F]{12}'; + } + description + "A Universally Unique IDentifier in the string representation + defined in RFC 4122. The canonical representation uses + lowercase characters. + + The following is an example of a UUID in string representation: + f81d4fae-7dec-11d0-a765-00a0c91e6bf6 + "; + reference + "RFC 4122: A Universally Unique IDentifier (UUID) URN + Namespace"; + } + + typedef dotted-quad { + type string { + pattern + '(([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])\.){3}' + + '([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])'; + } + description + "An unsigned 32-bit number expressed in the dotted-quad + notation, i.e., four octets written as decimal numbers + and separated with the '.' (full stop) character."; + } +} -- GitLab From 404f3cd74542ea2ff5c17e19b714a6ea9063fa94 Mon Sep 17 00:00:00 2001 From: lengyelb Date: Fri, 2 Jul 2021 13:42:19 +0200 Subject: [PATCH 038/593] Update README.md No real change, just for testing the validation scripts --- yang-models/README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/yang-models/README.md b/yang-models/README.md index eb452b55a..476a9ecba 100755 --- a/yang-models/README.md +++ b/yang-models/README.md @@ -5,3 +5,4 @@ All commited YANG modules MUST pass the "pyang --strict -p external-yams _3gpp-*.yang" validation command without errors. + \ No newline at end of file -- GitLab From 141b4e8dea8fbabb11895e5d7b143f9565ea69ed Mon Sep 17 00:00:00 2001 From: lengyelb Date: Mon, 5 Jul 2021 15:10:55 +0200 Subject: [PATCH 039/593] Update README.md added two space chars just for test --- yang-models/README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/yang-models/README.md b/yang-models/README.md index 476a9ecba..dd2b4aa1e 100755 --- a/yang-models/README.md +++ b/yang-models/README.md @@ -5,4 +5,4 @@ All commited YANG modules MUST pass the "pyang --strict -p external-yams _3gpp-*.yang" validation command without errors. - \ No newline at end of file + \ No newline at end of file -- GitLab From 9f677354787484baa6eac3890943233be7f0f3bd Mon Sep 17 00:00:00 2001 From: Miguel Reina Ortega Date: Mon, 5 Jul 2021 16:01:33 +0200 Subject: [PATCH 040/593] Update yang-models/README.md --- yang-models/README.md | 2 -- 1 file changed, 2 deletions(-) diff --git a/yang-models/README.md b/yang-models/README.md index dd2b4aa1e..dd0175b60 100755 --- a/yang-models/README.md +++ b/yang-models/README.md @@ -4,5 +4,3 @@ A subfolder for used external YANG modules is included. All commited YANG modules MUST pass the "pyang --strict -p external-yams _3gpp-*.yang" validation command without errors. - - \ No newline at end of file -- GitLab From 43675a785ed4ddce48118a2c7480a0b0c0e672b1 Mon Sep 17 00:00:00 2001 From: lengyelb Date: Mon, 5 Jul 2021 16:12:01 +0200 Subject: [PATCH 041/593] Update README.md Added some whitespace at the end just to test commit. --- yang-models/README.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/yang-models/README.md b/yang-models/README.md index dd0175b60..4959d98c5 100755 --- a/yang-models/README.md +++ b/yang-models/README.md @@ -4,3 +4,5 @@ A subfolder for used external YANG modules is included. All commited YANG modules MUST pass the "pyang --strict -p external-yams _3gpp-*.yang" validation command without errors. + + \ No newline at end of file -- GitLab From bd19d98fbff9033843bf1a09ab3d1296eb9f40fe Mon Sep 17 00:00:00 2001 From: Ping Date: Wed, 7 Jul 2021 11:54:01 +0800 Subject: [PATCH 042/593] delete all openapi files --- OpenAPI/5gcNrm.yaml | 1980 ----------------------------- OpenAPI/PerDataFileReportMnS.yaml | 13 - OpenAPI/PerMeasJobCtlMnS.yaml | 280 ---- OpenAPI/PerThresMonMnS.yaml | 102 -- OpenAPI/PerfDataStreamingMnS.yaml | 363 ------ OpenAPI/README.md | 73 -- OpenAPI/comDefs.yaml | 84 -- OpenAPI/coslaNrm.yaml | 152 --- OpenAPI/faultMnS.yaml | 1144 ----------------- OpenAPI/genericNrm.yaml | 1590 ----------------------- OpenAPI/heartbeatNtf.yaml | 23 - OpenAPI/nrNrm.yaml | 1869 --------------------------- OpenAPI/provMnS.yaml | 579 --------- OpenAPI/sliceNrm.yaml | 595 --------- OpenAPI/streamingDataMnS.yaml | 453 ------- 15 files changed, 9300 deletions(-) delete mode 100644 OpenAPI/5gcNrm.yaml delete mode 100644 OpenAPI/PerDataFileReportMnS.yaml delete mode 100644 OpenAPI/PerMeasJobCtlMnS.yaml delete mode 100644 OpenAPI/PerThresMonMnS.yaml delete mode 100644 OpenAPI/PerfDataStreamingMnS.yaml delete mode 100644 OpenAPI/README.md delete mode 100644 OpenAPI/comDefs.yaml delete mode 100644 OpenAPI/coslaNrm.yaml delete mode 100644 OpenAPI/faultMnS.yaml delete mode 100644 OpenAPI/genericNrm.yaml delete mode 100644 OpenAPI/heartbeatNtf.yaml delete mode 100644 OpenAPI/nrNrm.yaml delete mode 100644 OpenAPI/provMnS.yaml delete mode 100644 OpenAPI/sliceNrm.yaml delete mode 100644 OpenAPI/streamingDataMnS.yaml diff --git a/OpenAPI/5gcNrm.yaml b/OpenAPI/5gcNrm.yaml deleted file mode 100644 index 9afbd454f..000000000 --- a/OpenAPI/5gcNrm.yaml +++ /dev/null @@ -1,1980 +0,0 @@ -openapi: 3.0.1 -info: - title: 3GPP 5GC NRM - version: 16.6.0 - description: >- - OAS 3.0.1 specification of the 5GC NRM - © 2020, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). - All rights reserved. -externalDocs: - description: 3GPP TS 28.541 V16.6.0; 5G NRM, 5GC NRM - url: http://www.3gpp.org/ftp/Specs/archive/28_series/28.541/ -paths: {} -components: - schemas: - -#-------- Definition of types----------------------------------------------------- - - AmfIdentifier: - type: object - description: 'AmfIdentifier comprise of amfRegionId, amfSetId and amfPointer' - properties: - amfRegionId: - $ref: '#/components/schemas/AmfRegionId' - amfSetId: - $ref: '#/components/schemas/AmfSetId' - amfPointer: - $ref: '#/components/schemas/AmfPointer' - AmfRegionId: - type: integer - description: AmfRegionId is defined in TS 23.003 - maximum: 255 - AmfSetId: - type: string - description: AmfSetId is defined in TS 23.003 - maximum: 1023 - AmfPointer: - type: integer - description: AmfPointer is defined in TS 23.003 - maximum: 63 - IpEndPoint: - type: object - properties: - ipv4Address: - $ref: 'genericNrm.yaml#/components/schemas/Ipv4Addr' - ipv6Address: - $ref: 'genericNrm.yaml#/components/schemas/Ipv6Addr' - ipv6Prefix: - $ref: 'genericNrm.yaml#/components/schemas/Ipv6Prefix' - transport: - $ref: 'genericNrm.yaml#/components/schemas/TransportProtocol' - port: - type: integer - NFProfileList: - type: array - description: List of NF profile - items: - $ref: '#/components/schemas/NFProfile' - NFProfile: - type: object - description: 'NF profile stored in NRF, defined in TS 29.510' - properties: - nFInstanceId: - type: string - description: uuid of NF instance - nFType: - $ref: 'genericNrm.yaml#/components/schemas/NFType' - nFStatus: - $ref: '#/components/schemas/NFStatus' - plmn: - $ref: 'nrNrm.yaml#/components/schemas/PlmnId' - sNssais: - $ref: 'nrNrm.yaml#/components/schemas/Snssai' - fqdn: - $ref: 'genericNrm.yaml#/components/schemas/Fqdn' - interPlmnFqdn: - $ref: 'genericNrm.yaml#/components/schemas/Fqdn' - nfServices: - type: array - items: - $ref: '#/components/schemas/NFService' - NFService: - type: object - description: NF Service is defined in TS 29.510 - properties: - serviceInstanceId: - type: string - serviceName: - type: string - version: - type: string - schema: - type: string - fqdn: - $ref: 'genericNrm.yaml#/components/schemas/Fqdn' - interPlmnFqdn: - $ref: 'genericNrm.yaml#/components/schemas/Fqdn' - ipEndPoints: - type: array - items: - $ref: '#/components/schemas/IpEndPoint' - apiPrfix: - type: string - allowedPlmns: - $ref: 'nrNrm.yaml#/components/schemas/PlmnId' - allowedNfTypes: - type: array - items: - $ref: 'genericNrm.yaml#/components/schemas/NFType' - allowedNssais: - type: array - items: - $ref: 'nrNrm.yaml#/components/schemas/Snssai' - NFStatus: - type: string - description: any of enumrated value - enum: - - REGISTERED - - SUSPENDED - CNSIIdList: - type: array - items: - $ref: '#/components/schemas/CNSIId' - CNSIId: - type: string - description: CNSI Id is defined in TS 29.531, only for Core Network - TACList: - type: array - items: - $ref: 'nrNrm.yaml#/components/schemas/NrTac' - WeightFactor: - type: integer - UdmInfo: - type: object - properties: - nFSrvGroupId: - type: string - AusfInfo: - type: object - properties: - nFSrvGroupId: - type: string - UpfInfo: - type: object - properties: - smfServingAreas: - type: string - AmfInfo: - type: object - properties: - priority: - type: integer - SupportedDataSetId: - type: string - description: any of enumrated value - enum: - - SUBSCRIPTION - - POLICY - - EXPOSURE - - APPLICATION - Udrinfo: - type: object - properties: - supportedDataSetIds: - type: array - items: - $ref: '#/components/schemas/SupportedDataSetId' - nFSrvGroupId: - type: string - NFInfo: - oneOf: - - $ref: '#/components/schemas/UdmInfo' - - $ref: '#/components/schemas/AusfInfo' - - $ref: '#/components/schemas/UpfInfo' - - $ref: '#/components/schemas/AmfInfo' - - $ref: '#/components/schemas/Udrinfo' - ManagedNFProfile: - type: object - properties: - nfInstanceID: - type: string - nfType: - $ref: 'genericNrm.yaml#/components/schemas/NFType' - authzInfo: - type: string - hostAddr: - $ref: 'genericNrm.yaml#/components/schemas/HostAddr' - locality: - type: string - nFInfo: - $ref: '#/components/schemas/NFInfo' - capacity: - type: integer - SEPPType: - type: string - description: any of enumrated value - enum: - - CSEPP - - PSEPP - SupportedFunc: - type: object - properties: - function: - type: string - policy: - type: string - SupportedFuncList: - type: array - items: - $ref: '#/components/schemas/SupportedFunc' - CommModelType: - type: string - description: any of enumrated value - enum: - - DIRECT_COMMUNICATION_WO_NRF - - DIRECT_COMMUNICATION_WITH_NRF - - INDIRECT_COMMUNICATION_WO_DEDICATED_DISCOVERY - - INDIRECT_COMMUNICATION_WITH_DEDICATED_DISCOVERY - CommModel: - type: object - properties: - groupId: - type: integer - commModelType: - $ref: '#/components/schemas/CommModelType' - targetNFServiceList: - $ref: 'genericNrm.yaml#/components/schemas/DnList' - commModelConfiguration: - type: string - CommModelList: - type: array - items: - $ref: '#/components/schemas/CommModel' - CapabilityList: - type: array - items: - type: string - FiveQiDscpMapping: - type: object - properties: - fiveQIValues: - type: array - items: - type: integer - dscp: - type: integer - - PacketErrorRate: - type: object - properties: - scalar: - type: integer - exponent: - type: integer - FiveQICharacteristics: - type: object - properties: - fiveQIValue: - type: integer - resourceType: - type: string - enum: - - GBR - - NonGBR - priorityLevel: - type: integer - packetDelayBudget: - type: integer - packetErrorRate: - $ref: '#/components/schemas/PacketErrorRate' - averagingWindow: - type: integer - maximumDataBurstVolume: - type: integer - - - GtpUPathDelayThresholdsType: - type: object - properties: - n3AveragePacketDelayThreshold: - type: integer - n3MinPacketDelayThreshold: - type: integer - n3MaxPacketDelayThreshold: - type: integer - n9AveragePacketDelayThreshold: - type: integer - n9MinPacketDelayThreshold: - type: integer - n9MaxPacketDelayThreshold: - type: integer - QFPacketDelayThresholdsType: - type: object - properties: - thresholdDl: - type: integer - thresholdUl: - type: integer - thresholdRtt: - type: integer - - QosData: - type: object - properties: - qosId: - type: string - fiveQIValue: - type: integer - maxbrUl: - $ref: 'https://forge.3gpp.org/rep/all/5G_APIs/raw/REL-16/TS29571_CommonData.yaml#/components/schemas/BitRateRm' - maxbrDl: - $ref: 'https://forge.3gpp.org/rep/all/5G_APIs/raw/REL-16/TS29571_CommonData.yaml#/components/schemas/BitRateRm' - gbrUl: - $ref: 'https://forge.3gpp.org/rep/all/5G_APIs/raw/REL-16/TS29571_CommonData.yaml#/components/schemas/BitRateRm' - gbrDl: - $ref: 'https://forge.3gpp.org/rep/all/5G_APIs/raw/REL-16/TS29571_CommonData.yaml#/components/schemas/BitRateRm' - arp: - $ref: 'https://forge.3gpp.org/rep/all/5G_APIs/raw/REL-16/TS29571_CommonData.yaml#/components/schemas/Arp' - qosNotificationControl: - type: boolean - reflectiveQos: - type: boolean - sharingKeyDl: - type: string - sharingKeyUl: - type: string - maxPacketLossRateDl: - $ref: 'https://forge.3gpp.org/rep/all/5G_APIs/raw/REL-16/TS29571_CommonData.yaml#/components/schemas/PacketLossRateRm' - maxPacketLossRateUl: - $ref: 'https://forge.3gpp.org/rep/all/5G_APIs/raw/REL-16/TS29571_CommonData.yaml#/components/schemas/PacketLossRateRm' - extMaxDataBurstVol: - $ref: 'https://forge.3gpp.org/rep/all/5G_APIs/raw/REL-16/TS29571_CommonData.yaml#/components/schemas/ExtMaxDataBurstVolRm' - - QosDataList: - type: array - items: - $ref: '#/components/schemas/QosData' - - SteeringMode: - type: object - properties: - steerModeValue: - $ref: 'https://forge.3gpp.org/rep/all/5G_APIs/raw/REL-16/TS29512_Npcf_SMPolicyControl.yaml#/components/schemas/SteerModeValue' - active: - $ref: 'https://forge.3gpp.org/rep/all/5G_APIs/raw/REL-16/TS29571_CommonData.yaml#/components/schemas/AccessType' - standby: - $ref: 'https://forge.3gpp.org/rep/all/5G_APIs/raw/REL-16/TS29571_CommonData.yaml#/components/schemas/AccessTypeRm' - threeGLoad: - $ref: 'https://forge.3gpp.org/rep/all/5G_APIs/raw/REL-16/TS29571_CommonData.yaml#/components/schemas/Uinteger' - prioAcc: - $ref: 'https://forge.3gpp.org/rep/all/5G_APIs/raw/REL-16/TS29571_CommonData.yaml#/components/schemas/AccessType' - - TrafficControlData: - type: object - properties: - tcId: - type: string - flowStatus: - $ref: 'https://forge.3gpp.org/rep/all/5G_APIs/raw/REL-16/TS29514_Npcf_PolicyAuthorization.yaml#/components/schemas/FlowStatus' - redirectInfo: - $ref: 'https://forge.3gpp.org/rep/all/5G_APIs/raw/REL-16/TS29512_Npcf_SMPolicyControl.yaml#/components/schemas/RedirectInformation' - addRedirectInfo: - type: array - items: - $ref: 'https://forge.3gpp.org/rep/all/5G_APIs/raw/REL-16/TS29512_Npcf_SMPolicyControl.yaml#/components/schemas/RedirectInformation' - minItems: 1 - muteNotif: - type: boolean - trafficSteeringPolIdDl: - type: string - nullable: true - trafficSteeringPolIdUl: - type: string - nullable: true - routeToLocs: - type: array - items: - $ref: 'https://forge.3gpp.org/rep/all/5G_APIs/raw/REL-16/TS29571_CommonData.yaml#/components/schemas/RouteToLocation' - traffCorreInd: - type: boolean - upPathChgEvent: - $ref: 'https://forge.3gpp.org/rep/all/5G_APIs/raw/REL-16/TS29512_Npcf_SMPolicyControl.yaml#/components/schemas/UpPathChgEvent' - steerFun: - $ref: 'https://forge.3gpp.org/rep/all/5G_APIs/raw/REL-16/TS29512_Npcf_SMPolicyControl.yaml#/components/schemas/SteeringFunctionality' - steerModeDl: - $ref: '#/components/schemas/SteeringMode' - steerModeUl: - $ref: '#/components/schemas/SteeringMode' - mulAccCtrl: - $ref: 'https://forge.3gpp.org/rep/all/5G_APIs/raw/REL-16/TS29512_Npcf_SMPolicyControl.yaml#/components/schemas/MulticastAccessControl' - - TrafficControlDataList: - type: array - items: - $ref: '#/components/schemas/TrafficControlData' - - PccRule: - type: object - properties: - pccRuleId: - type: string - description: Univocally identifies the PCC rule within a PDU session. - flowInfoList: - type: array - items: - $ref: 'https://forge.3gpp.org/rep/all/5G_APIs/raw/REL-16/TS29512_Npcf_SMPolicyControl.yaml#/components/schemas/FlowInformation' - applicationId: - type: string - appDescriptor: - $ref: 'https://forge.3gpp.org/rep/all/5G_APIs/raw/REL-16/TS29512_Npcf_SMPolicyControl.yaml#/components/schemas/ApplicationDescriptor' - contentVersion: - $ref: 'https://forge.3gpp.org/rep/all/5G_APIs/raw/REL-16/TS29514_Npcf_PolicyAuthorization.yaml#/components/schemas/ContentVersion' - precedence: - $ref: 'https://forge.3gpp.org/rep/all/5G_APIs/raw/REL-16/TS29571_CommonData.yaml#/components/schemas/Uinteger' - afSigProtocol: - $ref: 'https://forge.3gpp.org/rep/all/5G_APIs/raw/REL-16/TS29512_Npcf_SMPolicyControl.yaml#/components/schemas/AfSigProtocol' - isAppRelocatable: - type: boolean - isUeAddrPreserved: - type: boolean - qosData: - type: array - items: - $ref: '#/components/schemas/QosDataList' - altQosParams: - type: array - items: - $ref: '#/components/schemas/QosDataList' - trafficControlData: - type: array - items: - $ref: '#/components/schemas/TrafficControlDataList' - conditionData: - $ref: 'https://forge.3gpp.org/rep/all/5G_APIs/raw/REL-16/TS29512_Npcf_SMPolicyControl.yaml#/components/schemas/ConditionData' - tscaiInputDl: - $ref: 'https://forge.3gpp.org/rep/all/5G_APIs/raw/REL-16/TS29514_Npcf_PolicyAuthorization.yaml#/components/schemas/TscaiInputContainer' - tscaiInputUl: - $ref: 'https://forge.3gpp.org/rep/all/5G_APIs/raw/REL-16/TS29514_Npcf_PolicyAuthorization.yaml#/components/schemas/TscaiInputContainer' - - -#-------- Definition of concrete IOCs -------------------------------------------- - - SubNetwork-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/SubNetwork-Attr' - - $ref: 'genericNrm.yaml#/components/schemas/SubNetwork-ncO' - - type: object - properties: - SubNetwork: - $ref: '#/components/schemas/SubNetwork-Multiple' - ManagedElement: - $ref: '#/components/schemas/ManagedElement-Multiple' - ExternalAmfFunction: - $ref: '#/components/schemas/ExternalAmfFunction-Multiple' - ExternalNrfFunction: - $ref: '#/components/schemas/ExternalNrfFunction-Multiple' - ExternalNssfFunction: - $ref: '#/components/schemas/ExternalNssfFunction-Multiple' - AmfSet: - $ref: '#/components/schemas/AmfSet-Multiple' - AmfRegion: - $ref: '#/components/schemas/AmfRegion-Multiple' - Configurable5QISet: - $ref: '#/components/schemas/Configurable5QISet-Multiple' - Dynamic5QISet: - $ref: '#/components/schemas/Dynamic5QISet-Multiple' - - ManagedElement-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/ManagedElement-Attr' - - $ref: 'genericNrm.yaml#/components/schemas/ManagedElement-ncO' - - type: object - properties: - AmfFunction: - $ref: '#/components/schemas/AmfFunction-Multiple' - SmfFunction: - $ref: '#/components/schemas/SmfFunction-Multiple' - UpfFunction: - $ref: '#/components/schemas/UpfFunction-Multiple' - N3iwfFunction: - $ref: '#/components/schemas/N3iwfFunction-Multiple' - PcfFunction: - $ref: '#/components/schemas/PcfFunction-Multiple' - AusfFunction: - $ref: '#/components/schemas/AusfFunction-Multiple' - UdmFunction: - $ref: '#/components/schemas/UdmFunction-Multiple' - UdrFunction: - $ref: '#/components/schemas/UdrFunction-Multiple' - UdsfFunction: - $ref: '#/components/schemas/UdsfFunction-Multiple' - NrfFunction: - $ref: '#/components/schemas/NrfFunction-Multiple' - NssfFunction: - $ref: '#/components/schemas/NssfFunction-Multiple' - SmsfFunction: - $ref: '#/components/schemas/SmsfFunction-Multiple' - LmfFunction: - $ref: '#/components/schemas/LmfFunction-Multiple' - NgeirFunction: - $ref: '#/components/schemas/NgeirFunction-Multiple' - SeppFunction: - $ref: '#/components/schemas/SeppFunction-Multiple' - NwdafFunction: - $ref: '#/components/schemas/NwdafFunction-Multiple' - ScpFunction: - $ref: '#/components/schemas/ScpFunction-Multiple' - NefFunction: - $ref: '#/components/schemas/NefFunction-Multiple' - Configurable5QISet: - $ref: '#/components/schemas/Configurable5QISet-Multiple' - Dynamic5QISet: - $ref: '#/components/schemas/Dynamic5QISet-Multiple' - - AmfFunction-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' - - type: object - properties: - plmnIdList: - $ref: 'nrNrm.yaml#/components/schemas/PlmnIdList' - amfIdentifier: - $ref: '#/components/schemas/AmfIdentifier' - sBIFqdn: - type: string - weightFactor: - $ref: '#/components/schemas/WeightFactor' - snssaiList: - $ref: 'nrNrm.yaml#/components/schemas/SnssaiList' - amfSet: - $ref: 'genericNrm.yaml#/components/schemas/Dn' - managedNFProfile: - $ref: '#/components/schemas/ManagedNFProfile' - commModelList: - $ref: '#/components/schemas/CommModelList' - - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' - - type: object - properties: - EP_N2: - $ref: '#/components/schemas/EP_N2-Multiple' - EP_N8: - $ref: '#/components/schemas/EP_N8-Multiple' - EP_N11: - $ref: '#/components/schemas/EP_N11-Multiple' - EP_N12: - $ref: '#/components/schemas/EP_N12-Multiple' - EP_N14: - $ref: '#/components/schemas/EP_N14-Multiple' - EP_N15: - $ref: '#/components/schemas/EP_N15-Multiple' - EP_N17: - $ref: '#/components/schemas/EP_N17-Multiple' - EP_N20: - $ref: '#/components/schemas/EP_N20-Multiple' - EP_N22: - $ref: '#/components/schemas/EP_N22-Multiple' - EP_N26: - $ref: '#/components/schemas/EP_N26-Multiple' - EP_NLS: - $ref: '#/components/schemas/EP_NLS-Multiple' - EP_NLG: - $ref: '#/components/schemas/EP_NLG-Multiple' - AmfSet-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' - - type: object - properties: - plmnIdList: - $ref: 'nrNrm.yaml#/components/schemas/PlmnIdList' - nRTACList: - $ref: '#/components/schemas/TACList' - amfSetId: - $ref: '#/components/schemas/AmfSetId' - snssaiList: - $ref: 'nrNrm.yaml#/components/schemas/SnssaiList' - AmfRegion-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' - - type: object - properties: - plmnIdList: - $ref: 'nrNrm.yaml#/components/schemas/PlmnIdList' - nRTACList: - $ref: '#/components/schemas/TACList' - amfRegionId: - $ref: '#/components/schemas/AmfRegionId' - snssaiList: - $ref: 'nrNrm.yaml#/components/schemas/SnssaiList' - SmfFunction-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' - - type: object - properties: - plmnIdList: - $ref: 'nrNrm.yaml#/components/schemas/PlmnIdList' - nRTACList: - $ref: '#/components/schemas/TACList' - sBIFqdn: - type: string - snssaiList: - $ref: 'nrNrm.yaml#/components/schemas/SnssaiList' - managedNFProfile: - $ref: '#/components/schemas/ManagedNFProfile' - commModelList: - $ref: '#/components/schemas/CommModelList' - configurable5QISetRef: - $ref: 'genericNrm.yaml#/components/schemas/Dn' - dynamic5QISetRef: - $ref: 'genericNrm.yaml#/components/schemas/Dn' - - - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' - - type: object - properties: - EP_N4: - $ref: '#/components/schemas/EP_N4-Multiple' - EP_N7: - $ref: '#/components/schemas/EP_N7-Multiple' - EP_N10: - $ref: '#/components/schemas/EP_N10-Multiple' - EP_N11: - $ref: '#/components/schemas/EP_N11-Multiple' - EP_N16: - $ref: '#/components/schemas/EP_N16-Multiple' - EP_S5C: - $ref: '#/components/schemas/EP_S5C-Multiple' - FiveQiDscpMappingSet: - $ref: '#/components/schemas/FiveQiDscpMappingSet-Single' - GtpUPathQoSMonitoringControl: - $ref: '#/components/schemas/GtpUPathQoSMonitoringControl-Single' - QFQoSMonitoringControl: - $ref: '#/components/schemas/QFQoSMonitoringControl-Single' - PredefinedPccRuleSet: - $ref: '#/components/schemas/PredefinedPccRuleSet-Single' - - UpfFunction-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' - - type: object - properties: - plmnIdList: - $ref: 'nrNrm.yaml#/components/schemas/PlmnIdList' - nRTACList: - $ref: '#/components/schemas/TACList' - snssaiList: - $ref: 'nrNrm.yaml#/components/schemas/SnssaiList' - managedNFProfile: - $ref: '#/components/schemas/ManagedNFProfile' - commModelList: - $ref: '#/components/schemas/CommModelList' - - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' - - type: object - properties: - EP_N3: - $ref: '#/components/schemas/EP_N3-Multiple' - EP_N4: - $ref: '#/components/schemas/EP_N4-Multiple' - EP_N6: - $ref: '#/components/schemas/EP_N6-Multiple' - EP_N9: - $ref: '#/components/schemas/EP_N9-Multiple' - EP_S5U: - $ref: '#/components/schemas/EP_S5U-Multiple' - N3iwfFunction-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' - - type: object - properties: - plmnIdList: - $ref: 'nrNrm.yaml#/components/schemas/PlmnIdList' - commModelList: - $ref: '#/components/schemas/CommModelList' - - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' - - type: object - properties: - EP_N3: - $ref: '#/components/schemas/EP_N3-Multiple' - EP_N4: - $ref: '#/components/schemas/EP_N4-Multiple' - PcfFunction-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' - - type: object - properties: - plmnIdList: - $ref: 'nrNrm.yaml#/components/schemas/PlmnIdList' - sBIFqdn: - type: string - snssaiList: - $ref: 'nrNrm.yaml#/components/schemas/SnssaiList' - managedNFProfile: - $ref: '#/components/schemas/ManagedNFProfile' - commModelList: - $ref: '#/components/schemas/CommModelList' - configurable5QISetRef: - $ref: 'genericNrm.yaml#/components/schemas/Dn' - dynamic5QISetRef: - $ref: 'genericNrm.yaml#/components/schemas/Dn' - - - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' - - type: object - properties: - EP_N5: - $ref: '#/components/schemas/EP_N5-Multiple' - EP_N7: - $ref: '#/components/schemas/EP_N7-Multiple' - EP_N15: - $ref: '#/components/schemas/EP_N15-Multiple' - EP_N16: - $ref: '#/components/schemas/EP_N16-Multiple' - EP_Rx: - $ref: '#/components/schemas/EP_Rx-Multiple' - PredefinedPccRuleSet: - $ref: '#/components/schemas/PredefinedPccRuleSet-Single' - - AusfFunction-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' - - type: object - properties: - plmnIdList: - $ref: 'nrNrm.yaml#/components/schemas/PlmnIdList' - sBIFqdn: - type: string - snssaiList: - $ref: 'nrNrm.yaml#/components/schemas/SnssaiList' - managedNFProfile: - $ref: '#/components/schemas/ManagedNFProfile' - commModelList: - $ref: '#/components/schemas/CommModelList' - - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' - - type: object - properties: - EP_N12: - $ref: '#/components/schemas/EP_N12-Multiple' - EP_N13: - $ref: '#/components/schemas/EP_N13-Multiple' - UdmFunction-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' - - type: object - properties: - plmnIdList: - $ref: 'nrNrm.yaml#/components/schemas/PlmnIdList' - sBIFqdn: - type: string - snssaiList: - $ref: 'nrNrm.yaml#/components/schemas/SnssaiList' - managedNFProfile: - $ref: '#/components/schemas/ManagedNFProfile' - commModelList: - $ref: '#/components/schemas/CommModelList' - - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' - - type: object - properties: - EP_N8: - $ref: '#/components/schemas/EP_N8-Multiple' - EP_N10: - $ref: '#/components/schemas/EP_N10-Multiple' - EP_N13: - $ref: '#/components/schemas/EP_N13-Multiple' - UdrFunction-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' - - type: object - properties: - plmnIdList: - $ref: 'nrNrm.yaml#/components/schemas/PlmnIdList' - sBIFqdn: - type: string - snssaiList: - $ref: 'nrNrm.yaml#/components/schemas/SnssaiList' - managedNFProfile: - $ref: '#/components/schemas/ManagedNFProfile' - UdsfFunction-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' - - type: object - properties: - plmnIdList: - $ref: 'nrNrm.yaml#/components/schemas/PlmnIdList' - sBIFqdn: - type: string - snssaiList: - $ref: 'nrNrm.yaml#/components/schemas/SnssaiList' - managedNFProfile: - $ref: '#/components/schemas/ManagedNFProfile' - NrfFunction-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' - - type: object - properties: - plmnIdList: - $ref: 'nrNrm.yaml#/components/schemas/PlmnIdList' - sBIFqdn: - type: string - cNSIIdList: - $ref: '#/components/schemas/CNSIIdList' - nFProfileList: - $ref: '#/components/schemas/NFProfileList' - snssaiList: - $ref: 'nrNrm.yaml#/components/schemas/SnssaiList' - - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' - - type: object - properties: - EP_N27: - $ref: '#/components/schemas/EP_N27-Multiple' - NssfFunction-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' - - type: object - properties: - plmnIdList: - $ref: 'nrNrm.yaml#/components/schemas/PlmnIdList' - sBIFqdn: - type: string - cNSIIdList: - $ref: '#/components/schemas/CNSIIdList' - nFProfileList: - $ref: '#/components/schemas/NFProfileList' - snssaiList: - $ref: 'nrNrm.yaml#/components/schemas/SnssaiList' - commModelList: - $ref: '#/components/schemas/CommModelList' - - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' - - type: object - properties: - EP_N22: - $ref: '#/components/schemas/EP_N22-Multiple' - EP_N31: - $ref: '#/components/schemas/EP_N31-Multiple' - SmsfFunction-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' - - type: object - properties: - plmnIdList: - $ref: 'nrNrm.yaml#/components/schemas/PlmnIdList' - sBIFqdn: - type: string - managedNFProfile: - $ref: '#/components/schemas/ManagedNFProfile' - commModelList: - $ref: '#/components/schemas/CommModelList' - - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' - - type: object - properties: - EP_N20: - $ref: '#/components/schemas/EP_N20-Multiple' - EP_N21: - $ref: '#/components/schemas/EP_N21-Multiple' - EP_MAP_SMSC: - $ref: '#/components/schemas/EP_MAP_SMSC-Multiple' - LmfFunction-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' - - type: object - properties: - plmnIdList: - $ref: 'nrNrm.yaml#/components/schemas/PlmnIdList' - managedNFProfile: - $ref: '#/components/schemas/ManagedNFProfile' - commModelList: - $ref: '#/components/schemas/CommModelList' - - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' - - type: object - properties: - EP_NLS: - $ref: '#/components/schemas/EP_NLS-Multiple' - NgeirFunction-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' - - type: object - properties: - plmnIdList: - $ref: 'nrNrm.yaml#/components/schemas/PlmnIdList' - sBIFqdn: - type: string - snssaiList: - $ref: 'nrNrm.yaml#/components/schemas/SnssaiList' - managedNFProfile: - $ref: '#/components/schemas/ManagedNFProfile' - commModelList: - $ref: '#/components/schemas/CommModelList' - - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' - - type: object - properties: - EP_N17: - $ref: '#/components/schemas/EP_N17-Multiple' - SeppFunction-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' - - type: object - properties: - plmnId: - $ref: 'nrNrm.yaml#/components/schemas/PlmnId' - sEPPType: - $ref: '#/components/schemas/SEPPType' - sEPPId: - type: integer - fqdn: - $ref: 'genericNrm.yaml#/components/schemas/Fqdn' - - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' - - type: object - properties: - EP_N32: - $ref: '#/components/schemas/EP_N32-Multiple' - NwdafFunction-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' - - type: object - properties: - plmnIdList: - $ref: 'nrNrm.yaml#/components/schemas/PlmnIdList' - sBIFqdn: - type: string - snssaiList: - $ref: 'nrNrm.yaml#/components/schemas/SnssaiList' - managedNFProfile: - $ref: '#/components/schemas/ManagedNFProfile' - commModelList: - $ref: '#/components/schemas/CommModelList' - ScpFunction-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' - - type: object - properties: - supportedFuncList: - $ref: '#/components/schemas/SupportedFuncList' - address: - $ref: 'genericNrm.yaml#/components/schemas/HostAddr' - - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' - NefFunction-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' - - type: object - properties: - sBIFqdn: - type: string - snssaiList: - $ref: 'nrNrm.yaml#/components/schemas/SnssaiList' - managedNFProfile: - $ref: '#/components/schemas/ManagedNFProfile' - capabilityList: - $ref: '#/components/schemas/CapabilityList' - isINEF: - type: boolean - isCAPIFSup: - type: boolean - - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' - - ExternalAmfFunction-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' - - type: object - properties: - plmnIdList: - $ref: 'nrNrm.yaml#/components/schemas/PlmnIdList' - amfIdentifier: - $ref: '#/components/schemas/AmfIdentifier' - ExternalNrfFunction-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' - - type: object - properties: - plmnIdList: - $ref: 'nrNrm.yaml#/components/schemas/PlmnIdList' - ExternalNssfFunction-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' - - type: object - properties: - plmnIdList: - $ref: 'nrNrm.yaml#/components/schemas/PlmnIdList' - ExternalSeppFunction-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' - - type: object - properties: - plmnId: - $ref: 'nrNrm.yaml#/components/schemas/PlmnId' - sEPPId: - type: integer - fqdn: - $ref: 'genericNrm.yaml#/components/schemas/Fqdn' - - - EP_N2-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' - - type: object - properties: - localAddress: - $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' - remoteAddress: - $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' - EP_N3-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' - - type: object - properties: - localAddress: - $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' - remoteAddress: - $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' - epTransportRefs: - $ref: 'genericNrm.yaml#/components/schemas/DnList' - EP_N4-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' - - type: object - properties: - localAddress: - $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' - remoteAddress: - $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' - EP_N5-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' - - type: object - properties: - localAddress: - $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' - remoteAddress: - $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' - EP_N6-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' - - type: object - properties: - localAddress: - $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' - remoteAddress: - $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' - EP_N7-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' - - type: object - properties: - localAddress: - $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' - remoteAddress: - $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' - EP_N8-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' - - type: object - properties: - localAddress: - $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' - remoteAddress: - $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' - EP_N9-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' - - type: object - properties: - localAddress: - $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' - remoteAddress: - $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' - EP_N10-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' - - type: object - properties: - localAddress: - $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' - remoteAddress: - $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' - EP_N11-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' - - type: object - properties: - localAddress: - $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' - remoteAddress: - $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' - EP_N12-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' - - type: object - properties: - localAddress: - $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' - remoteAddress: - $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' - EP_N13-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' - - type: object - properties: - localAddress: - $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' - remoteAddress: - $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' - EP_N14-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' - - type: object - properties: - localAddress: - $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' - remoteAddress: - $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' - EP_N15-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' - - type: object - properties: - localAddress: - $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' - remoteAddress: - $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' - EP_N16-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' - - type: object - properties: - localAddress: - $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' - remoteAddress: - $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' - EP_N17-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' - - type: object - properties: - localAddress: - $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' - remoteAddress: - $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' - - EP_N20-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' - - type: object - properties: - localAddress: - $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' - remoteAddress: - $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' - - EP_N21-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' - - type: object - properties: - localAddress: - $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' - remoteAddress: - $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' - EP_N22-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' - - type: object - properties: - localAddress: - $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' - remoteAddress: - $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' - - EP_N26-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' - - type: object - properties: - localAddress: - $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' - remoteAddress: - $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' - EP_N27-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' - - type: object - properties: - localAddress: - $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' - remoteAddress: - $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' - - - EP_N31-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' - - type: object - properties: - localAddress: - $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' - remoteAddress: - $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' - EP_N32-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' - - type: object - properties: - remotePlmnId: - $ref: 'nrNrm.yaml#/components/schemas/PlmnId' - remoteSeppAddress: - $ref: 'genericNrm.yaml#/components/schemas/HostAddr' - remoteSeppId: - type: integer - n32cParas: - type: string - n32fPolicy: - type: string - withIPX: - type: boolean - - EP_S5C-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' - - type: object - properties: - localAddress: - $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' - remoteAddress: - $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' - EP_S5U-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' - - type: object - properties: - localAddress: - $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' - remoteAddress: - $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' - EP_Rx-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' - - type: object - properties: - localAddress: - $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' - remoteAddress: - $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' - EP_MAP_SMSC-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' - - type: object - properties: - localAddress: - $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' - remoteAddress: - $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' - EP_NLS-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' - - type: object - properties: - localAddress: - $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' - remoteAddress: - $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' - EP_NLG-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' - - type: object - properties: - localAddress: - $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' - remoteAddress: - $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' - - FiveQiDscpMappingSet-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - allOf: - - type: object - properties: - FiveQiDscpMappingList: - type: array - items: - $ref: '#/components/schemas/FiveQiDscpMapping' - - Configurable5QISet-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - allOf: - - type: object - properties: - configurable5QIs: - type: array - items: - $ref: '#/components/schemas/FiveQICharacteristics' - - Dynamic5QISet-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - allOf: - - type: object - properties: - dynamic5QIs: - type: array - items: - $ref: '#/components/schemas/FiveQICharacteristics' - - GtpUPathQoSMonitoringControl-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - allOf: - - type: object - properties: - gtpUPathQoSMonitoringState: - type: string - enum: - - ENABLED - - DISABLED - gtpUPathMonitoredSNSSAIs: - type: array - items: - $ref: 'nrNrm.yaml#/components/schemas/Snssai' - monitoredDSCPs: - type: array - items: - type: integer - minimum: 0 - maximum: 255 - isEventTriggeredGtpUPathMonitoringSupported: - type: boolean - isPeriodicGtpUMonitoringSupported: - type: boolean - isImmediateGtpUMonitoringSupported: - type: boolean - gtpUPathDelayThresholds: - $ref: '#/components/schemas/GtpUPathDelayThresholdsType' - gtpUPathMinimumWaitTime: - type: integer - gtpUPathMeasurementPeriod: - type: integer - - QFQoSMonitoringControl-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - allOf: - - type: object - properties: - qFQoSMonitoringState: - type: string - enum: - - ENABLED - - DISABLED - qFMonitoredSNSSAIs: - type: array - items: - $ref: 'nrNrm.yaml#/components/schemas/Snssai' - qFMonitored5QIs: - type: array - items: - type: integer - minimum: 0 - maximum: 255 - isEventTriggeredQFMonitoringSupported: - type: boolean - isPeriodicQFMonitoringSupported: - type: boolean - isSessionReleasedQFMonitoringSupported: - type: boolean - qFPacketDelayThresholds: - $ref: '#/components/schemas/QFPacketDelayThresholdsType' - qFMinimumWaitTime: - type: integer - qFMeasurementPeriod: - type: integer - - PredefinedPccRuleSet-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - allOf: - - type: object - properties: - predefinedPccRules: - type: array - items: - $ref: '#/components/schemas/PccRule' - -#-------- Definition of JSON arrays for name-contained IOCs ---------------------- - - SubNetwork-Multiple: - type: array - items: - $ref: '#/components/schemas/SubNetwork-Single' - ManagedElement-Multiple: - type: array - items: - $ref: '#/components/schemas/ManagedElement-Single' - AmfFunction-Multiple: - type: array - items: - $ref: '#/components/schemas/AmfFunction-Single' - SmfFunction-Multiple: - type: array - items: - $ref: '#/components/schemas/SmfFunction-Single' - UpfFunction-Multiple: - type: array - items: - $ref: '#/components/schemas/UpfFunction-Single' - N3iwfFunction-Multiple: - type: array - items: - $ref: '#/components/schemas/N3iwfFunction-Single' - PcfFunction-Multiple: - type: array - items: - $ref: '#/components/schemas/PcfFunction-Single' - AusfFunction-Multiple: - type: array - items: - $ref: '#/components/schemas/AusfFunction-Single' - UdmFunction-Multiple: - type: array - items: - $ref: '#/components/schemas/UdmFunction-Single' - UdrFunction-Multiple: - type: array - items: - $ref: '#/components/schemas/UdrFunction-Single' - UdsfFunction-Multiple: - type: array - items: - $ref: '#/components/schemas/UdsfFunction-Single' - NrfFunction-Multiple: - type: array - items: - $ref: '#/components/schemas/NrfFunction-Single' - NssfFunction-Multiple: - type: array - items: - $ref: '#/components/schemas/NssfFunction-Single' - SmsfFunction-Multiple: - type: array - items: - $ref: '#/components/schemas/SmsfFunction-Single' - LmfFunction-Multiple: - type: array - items: - $ref: '#/components/schemas/LmfFunction-Single' - NgeirFunction-Multiple: - type: array - items: - $ref: '#/components/schemas/NgeirFunction-Single' - SeppFunction-Multiple: - type: array - items: - $ref: '#/components/schemas/SeppFunction-Single' - NwdafFunction-Multiple: - type: array - items: - $ref: '#/components/schemas/NwdafFunction-Single' - ScpFunction-Multiple: - type: array - items: - $ref: '#/components/schemas/ScpFunction-Single' - NefFunction-Multiple: - type: array - items: - $ref: '#/components/schemas/NefFunction-Single' - - ExternalAmfFunction-Multiple: - type: array - items: - $ref: '#/components/schemas/ExternalAmfFunction-Single' - ExternalNrfFunction-Multiple: - type: array - items: - $ref: '#/components/schemas/ExternalNrfFunction-Single' - ExternalNssfFunction-Multiple: - type: array - items: - $ref: '#/components/schemas/ExternalNssfFunction-Single' - ExternalSeppFunction-Nultiple: - type: array - items: - $ref: '#/components/schemas/ExternalSeppFunction-Single' - - AmfSet-Multiple: - type: array - items: - $ref: '#/components/schemas/AmfSet-Single' - AmfRegion-Multiple: - type: array - items: - $ref: '#/components/schemas/AmfRegion-Single' - - EP_N2-Multiple: - type: array - items: - $ref: '#/components/schemas/EP_N2-Single' - EP_N3-Multiple: - type: array - items: - $ref: '#/components/schemas/EP_N3-Single' - EP_N4-Multiple: - type: array - items: - $ref: '#/components/schemas/EP_N4-Single' - EP_N5-Multiple: - type: array - items: - $ref: '#/components/schemas/EP_N5-Single' - EP_N6-Multiple: - type: array - items: - $ref: '#/components/schemas/EP_N6-Single' - EP_N7-Multiple: - type: array - items: - $ref: '#/components/schemas/EP_N7-Single' - EP_N8-Multiple: - type: array - items: - $ref: '#/components/schemas/EP_N8-Single' - EP_N9-Multiple: - type: array - items: - $ref: '#/components/schemas/EP_N9-Single' - EP_N10-Multiple: - type: array - items: - $ref: '#/components/schemas/EP_N10-Single' - EP_N11-Multiple: - type: array - items: - $ref: '#/components/schemas/EP_N11-Single' - EP_N12-Multiple: - type: array - items: - $ref: '#/components/schemas/EP_N12-Single' - EP_N13-Multiple: - type: array - items: - $ref: '#/components/schemas/EP_N13-Single' - EP_N14-Multiple: - type: array - items: - $ref: '#/components/schemas/EP_N14-Single' - EP_N15-Multiple: - type: array - items: - $ref: '#/components/schemas/EP_N15-Single' - EP_N16-Multiple: - type: array - items: - $ref: '#/components/schemas/EP_N16-Single' - EP_N17-Multiple: - type: array - items: - $ref: '#/components/schemas/EP_N17-Single' - - EP_N20-Multiple: - type: array - items: - $ref: '#/components/schemas/EP_N20-Single' - EP_N21-Multiple: - type: array - items: - $ref: '#/components/schemas/EP_N21-Single' - EP_N22-Multiple: - type: array - items: - $ref: '#/components/schemas/EP_N22-Single' - - EP_N26-Multiple: - type: array - items: - $ref: '#/components/schemas/EP_N26-Single' - EP_N27-Multiple: - type: array - items: - $ref: '#/components/schemas/EP_N27-Single' - - EP_N31-Multiple: - type: array - items: - $ref: '#/components/schemas/EP_N31-Single' - EP_N32-Multiple: - type: array - items: - $ref: '#/components/schemas/EP_N32-Single' - - EP_S5C-Multiple: - type: array - items: - $ref: '#/components/schemas/EP_S5C-Single' - EP_S5U-Multiple: - type: array - items: - $ref: '#/components/schemas/EP_S5U-Single' - EP_Rx-Multiple: - type: array - items: - $ref: '#/components/schemas/EP_Rx-Single' - EP_MAP_SMSC-Multiple: - type: array - items: - $ref: '#/components/schemas/EP_MAP_SMSC-Single' - EP_NLS-Multiple: - type: array - items: - $ref: '#/components/schemas/EP_NLS-Single' - EP_NLG-Multiple: - type: array - items: - $ref: '#/components/schemas/EP_NLG-Single' - Configurable5QISet-Multiple: - type: array - items: - $ref: '#/components/schemas/Configurable5QISet-Single' - Dynamic5QISet-Multiple: - type: array - items: - $ref: '#/components/schemas/Dynamic5QISet-Single' - - - -#------------ Definitions in TS 28.541 for TS 28.532 ----------------------------- - - resources-5gcNrm: - oneOf: - - $ref: '#/components/schemas/SubNetwork-Single' - - $ref: '#/components/schemas/ManagedElement-Single' - - $ref: '#/components/schemas/AmfFunction-Single' - - $ref: '#/components/schemas/SmfFunction-Single' - - $ref: '#/components/schemas/UpfFunction-Single' - - $ref: '#/components/schemas/N3iwfFunction-Single' - - $ref: '#/components/schemas/PcfFunction-Single' - - $ref: '#/components/schemas/AusfFunction-Single' - - $ref: '#/components/schemas/UdmFunction-Single' - - $ref: '#/components/schemas/UdrFunction-Single' - - $ref: '#/components/schemas/UdsfFunction-Single' - - $ref: '#/components/schemas/NrfFunction-Single' - - $ref: '#/components/schemas/NssfFunction-Single' - - $ref: '#/components/schemas/SmsfFunction-Single' - - $ref: '#/components/schemas/LmfFunction-Single' - - $ref: '#/components/schemas/NgeirFunction-Single' - - $ref: '#/components/schemas/SeppFunction-Single' - - $ref: '#/components/schemas/NwdafFunction-Single' - - $ref: '#/components/schemas/ScpFunction-Single' - - $ref: '#/components/schemas/NefFunction-Single' - - - $ref: '#/components/schemas/ExternalAmfFunction-Single' - - $ref: '#/components/schemas/ExternalNrfFunction-Single' - - $ref: '#/components/schemas/ExternalNssfFunction-Single' - - $ref: '#/components/schemas/ExternalSeppFunction-Single' - - - $ref: '#/components/schemas/AmfSet-Single' - - $ref: '#/components/schemas/AmfRegion-Single' - - $ref: '#/components/schemas/QFQoSMonitoringControl-Single' - - $ref: '#/components/schemas/GtpUPathQoSMonitoringControl-Single' - - - $ref: '#/components/schemas/EP_N2-Single' - - $ref: '#/components/schemas/EP_N3-Single' - - $ref: '#/components/schemas/EP_N4-Single' - - $ref: '#/components/schemas/EP_N5-Single' - - $ref: '#/components/schemas/EP_N6-Single' - - $ref: '#/components/schemas/EP_N7-Single' - - $ref: '#/components/schemas/EP_N8-Single' - - $ref: '#/components/schemas/EP_N9-Single' - - $ref: '#/components/schemas/EP_N10-Single' - - $ref: '#/components/schemas/EP_N11-Single' - - $ref: '#/components/schemas/EP_N12-Single' - - $ref: '#/components/schemas/EP_N13-Single' - - $ref: '#/components/schemas/EP_N14-Single' - - $ref: '#/components/schemas/EP_N15-Single' - - $ref: '#/components/schemas/EP_N16-Single' - - $ref: '#/components/schemas/EP_N17-Single' - - - $ref: '#/components/schemas/EP_N20-Single' - - $ref: '#/components/schemas/EP_N21-Single' - - $ref: '#/components/schemas/EP_N22-Single' - - - $ref: '#/components/schemas/EP_N26-Single' - - $ref: '#/components/schemas/EP_N27-Single' - - - $ref: '#/components/schemas/EP_N31-Single' - - $ref: '#/components/schemas/EP_N31-Single' - - - $ref: '#/components/schemas/EP_S5C-Single' - - $ref: '#/components/schemas/EP_S5U-Single' - - $ref: '#/components/schemas/EP_Rx-Single' - - $ref: '#/components/schemas/EP_MAP_SMSC-Single' - - $ref: '#/components/schemas/EP_NLS-Single' - - $ref: '#/components/schemas/EP_NLG-Single' - - $ref: '#/components/schemas/Configurable5QISet-Single' - - $ref: '#/components/schemas/FiveQiDscpMappingSet-Single' - - $ref: '#/components/schemas/PredefinedPccRuleSet-Single' - - $ref: '#/components/schemas/Dynamic5QISet-Single' diff --git a/OpenAPI/PerDataFileReportMnS.yaml b/OpenAPI/PerDataFileReportMnS.yaml deleted file mode 100644 index 83fd77acb..000000000 --- a/OpenAPI/PerDataFileReportMnS.yaml +++ /dev/null @@ -1,13 +0,0 @@ -openapi: 3.0.1 -info: - title: TS 28.532 File data reporting Service - version: 16.6.0 - description: >- - OAS 3.0.1 specification of the File data reporting Management Service © 2020, - 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). All - rights reserved. -externalDocs: - description: 3GPP TS 28.532 V16.5.0; Generic management services - url: 'http://www.3gpp.org/ftp/Specs/archive/28_series/28.532/' -paths: {} - diff --git a/OpenAPI/PerMeasJobCtlMnS.yaml b/OpenAPI/PerMeasJobCtlMnS.yaml deleted file mode 100644 index b6abe58b2..000000000 --- a/OpenAPI/PerMeasJobCtlMnS.yaml +++ /dev/null @@ -1,280 +0,0 @@ -openapi: 3.0.1 -info: - title: TS 28.550 Performance Measurement Job Control Service - version: 16.5.0 - description: >- - OAS 3.0.1 specification of the Performance Measurement Job Control Service - @ 2020, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). - All rights reserved. -externalDocs: - description: 3GPP TS 28.550 V16.5.0; Performance assurance - url: http://www.3gpp.org/ftp/Specs/archive/28_series/28.550/ -servers: - - url: 'http://{URI-DN-prefix}/{root}/PerfMeasJobCtrlMnS/v1650/{LDN-first-part}' - variables: - URI-DN-prefix: - description: See subclause 4.4 of TS 32.158 - default: example.com - root: - description: See subclause 4.4 of TS 32.158 - default: 3GPPManagement - LDN-first-part: - description: See subclause 4.4 of TS 32.158 - default: '' -paths: - /measJobs: - post: - summary: Create a measurement job - description: To create a measurement job the representation of the measurement job is POSTed on the /measJobs collection resource. - requestBody: - required: true - content: - application/json: - schema: - $ref: '#/components/schemas/measJobCreation-RequestType' - responses: - '201': - description: Success case ("201 Created"). The representation of the newly created measurement job resource shall be returned. - content: - application/json: - schema: - $ref: '#/components/schemas/measJobCreation-ResponseType' - '202': - description: Partial success case ("202 Partically created"). The representation of the newly created measurement job resource with unsupported list shall be returned. - content: - application/json: - schema: - $ref: '#/components/schemas/measJobCreation-ResponseType' - default: - description: Error case. - content: - application/json: - schema: - $ref: '#/components/schemas/error-ResponseType' - get: - summary: Read resources of measurement jobs - description: 'With HTTP GET, resources of measurement jobs are read. The resources to be read are identified with the path component (base resource) and the query component (jobIdList) of the URI. The fields query component allows to select the resource properties to be returned.' - parameters: - - name: jobIdList - in: query - description: This parameter identifies the list of jobId to select the resources from the collection resources identified with the path component of the URI. - required: true - schema: - type: array - items: - type: string - responses: - '200': - description: 'Success case ("200 OK"). The resources identified in the request for retrieval are returned in the response message body. In case the fields query parameter is used, the selected resources are returned.' - content: - application/json: - schema: - $ref: '#/components/schemas/measJobsRetrieval-ResponseType' - default: - description: Error case. - content: - application/json: - schema: - $ref: '#/components/schemas/error-ResponseType' - '/measJobs/{jobId}': - get: - summary: Read resource of a single measurement job - description: 'With HTTP GET, resource of a measurement job is read. The resource to be read is identified with the path component of the URI.' - parameters: - - name: jobId - in: path - description: Identifies the measurement job to be read. - required: true - schema: - $ref: '#/components/schemas/uri-Type' - responses: - '200': - description: 'Success case ("200 OK"). The resource identified in the path for retrieval is returned in the response message body. ' - content: - application/json: - schema: - $ref: '#/components/schemas/measJobsRetrieval-ResponseType' - default: - description: Error case. - content: - application/json: - schema: - $ref: '#/components/schemas/error-ResponseType' - delete: - summary: Delete a single measurement job - description: The measurement job is deleted by deleting the corresponding measurement job resource. The resource to be deleted is identified with the path component of the URI. - parameters: - - name: jobId - in: path - description: Identifies the measurement job to be deleted. - required: true - schema: - $ref: '#/components/schemas/uri-Type' - responses: - '204': - description: Success case ("204 No Content"). The measurement job resource has been deleted. The response message body is absent. - default: - description: Error case. - content: - application/json: - schema: - $ref: '#/components/schemas/error-ResponseType' -components: - schemas: - dateTime-Type: - type: string - format: date-Time - uri-Type: - type: string - measJobCreation-RequestType: - type: object - properties: - iOCName: - type: string - iOCInstanceList: - type: array - items: - $ref: '#/components/schemas/uri-Type' - measurementCategoryList: - type: array - items: - type: string - reportingMethod: - $ref: '#/components/schemas/reportingMethod-Type' - granularityPeriod: - type: integer - reportingPeriod: - type: integer - startTime: - $ref: '#/components/schemas/dateTime-Type' - stopTime: - $ref: '#/components/schemas/dateTime-Type' - schedule: - $ref: '#/components/schemas/schedule-Type' - streamTarget: - type: string - priority: - $ref: '#/components/schemas/priority-Type' - reliability: - type: string - measJobCreation-ResponseType: - type: object - properties: - unsupportedList: - type: array - items: - $ref: '#/components/schemas/unsupportedMeas-Type' - measJobsRetrieval-ResponseType: - type: object - properties: - jobInfoList: - type: array - items: - $ref: '#/components/schemas/measJobInfo-ResourceType' - error-ResponseType: - type: object - properties: - error: - type: object - properties: - errorInfo: - type: string - measJobInfo-ResourceType: - type: object - properties: - href: - $ref: '#/components/schemas/uri-Type' - iOCName: - type: string - iOCInstanceList: - type: array - items: - $ref: '#/components/schemas/uri-Type' - measurementCategoryList: - type: array - items: - type: string - reportingMethod: - $ref: '#/components/schemas/reportingMethod-Type' - granularityPeriod: - type: integer - reportingPeriod: - type: integer - startTime: - $ref: '#/components/schemas/dateTime-Type' - stopTime: - $ref: '#/components/schemas/dateTime-Type' - schedule: - $ref: '#/components/schemas/schedule-Type' - streamTarget: - type: string - priority: - $ref: '#/components/schemas/priority-Type' - reliability: - type: string - schedule-Type: - type: object - properties: - scheduleOption: - $ref: '#/components/schemas/scheduleOption-Type' - dailySchedule: - type: array - items: - $ref: '#/components/schemas/timeInterval-Type' - weeklySchedule: - type: array - items: - $ref: '#/components/schemas/scheduleOfDay-Type' - timeInterval-Type: - type: object - properties: - intervalStart: - type: string - format: Time - intervalEnd: - type: string - format: Time - scheduleOfDay-Type: - type: object - properties: - dayOfWeek: - $ref: '#/components/schemas/dayOfWeek-Type' - intervalsOfDay: - type: array - items: - $ref: '#/components/schemas/timeInterval-Type' - unsupportedMeas-Type: - type: object - properties: - iOCInstance: - $ref: '#/components/schemas/uri-Type' - measurementTypeName: - type: string - reason: - type: string - reportingMethod-Type: - type: string - enum: - - file - - streaming - priority-Type: - type: string - enum: - - low - - medium - - high - scheduleOption-Type: - type: string - enum: - - daily - - weekly - dayOfWeek-Type: - type: string - enum: - - Monday - - Tuesday - - Wednesday - - Thursday - - Friday - - Saturday - - Sunday diff --git a/OpenAPI/PerThresMonMnS.yaml b/OpenAPI/PerThresMonMnS.yaml deleted file mode 100644 index 923640a11..000000000 --- a/OpenAPI/PerThresMonMnS.yaml +++ /dev/null @@ -1,102 +0,0 @@ -openapi: 3.0.1 -info: - title: TS 28.532 Performance Threshold Monitoring Service - version: 16.4.0 - description: OAS 3.0.1 specification of the Performance Threshold Monitoring Service -servers: - - url: 'http://{monitoringNotifTarget}' - variables: - monitoringNotifTarget: - description: >- - The open API server of the performance threshold monitoring service is - located in the consumer side, see monitoringNotifTarget attribute of - the IOC ThresholdMonitor defined in 3GPP TS 28.622 [11]. - default: example.com -paths: - /notificationSink: - post: - summary: Send notifications about performance threshold crossing - description: To send a notifyThresholdCrossing notification - requestBody: - required: true - content: - application/json: - schema: - $ref: '#/components/schemas/notifyThresholdCrossing-NotifType' - responses: - '204': - description: >- - Success case ("204 No Content"). The notification is successfully - delivered. The response message body is absent. - default: - description: Error case. - content: - application/json: - schema: - $ref: '#/components/schemas/error-ResponseType' -components: - schemas: - dateTime-Type: - type: string - format: date-Time - uri-Type: - type: string - long-Type: - type: string - format: long - thresholdLevel-Type: - type: integer - measurementTypeName-Type: - type: string - measurementValue-Type: - type: string - additionalText-Type: - type: string - error-ResponseType: - type: object - properties: - error: - type: object - properties: - errorInfo: - type: string - header-Type: - description: Header used in notifications as notification header - type: object - properties: - uri: - $ref: '#/components/schemas/uri-Type' - notificationId: - $ref: '#/components/schemas/notificationId-Type' - notificationType: - $ref: '#/components/schemas/notificationType-Type' - eventTime: - $ref: '#/components/schemas/dateTime-Type' - notificationId-Type: - $ref: '#/components/schemas/long-Type' - notificationType-Type: - type: string - enum: - - notifyThresholdCrossing - notifyThresholdCrossing-NotifType: - type: object - properties: - header: - $ref: '#/components/schemas/header-Type' - body: - type: object - properties: - startOfMonitoringGP: - $ref: '#/components/schemas/dateTime-Type' - endOfMonitoringGP: - $ref: '#/components/schemas/dateTime-Type' - monitoredObjectInstance: - $ref: '#/components/schemas/uri-Type' - thresholdLevel: - $ref: '#/components/schemas/thresholdLevel-Type' - measurementTypeName: - $ref: '#/components/schemas/measurementTypeName-Type' - measurementValue: - $ref: '#/components/schemas/measurementValue-Type' - additionalText: - $ref: '#/components/schemas/additionalText-Type' diff --git a/OpenAPI/PerfDataStreamingMnS.yaml b/OpenAPI/PerfDataStreamingMnS.yaml deleted file mode 100644 index e040e14c8..000000000 --- a/OpenAPI/PerfDataStreamingMnS.yaml +++ /dev/null @@ -1,363 +0,0 @@ -openapi: 3.0.1 -info: - title: TS 28.550 Performance Data Streaming Service - version: 16.3.0 - description: OAS 3.0.1 specification of the Performance Data Streaming Service -servers: - - url: 'http://{streamTarget}/PerfDataStreamMnS/v1630' - description: This URL is used for posting the set of information about streams supported on the connection between the producer and the consumer. - variables: - streamTarget: - description: 'The open API server of the performance data streaming service is located in the consumer side,and the “streamTarget” part corresponds to the streamTarget parameter provided in the createMeasurementJob operation (see clause 6.1.1.2) or the streamTarget attribute of the MOI of MeasurementControlor MeasurementReader, see 3GPP TS 28.622 [5]).' - default: example.com - - url: 'wss://{streamTarget}/PerfDataStreamMnS/v1630/streamingConnection' - description: This URL is used for establishing the WebSocket connection for the performance data streaming service. - variables: - streamTarget: - description: 'The open API server of the performance data streaming service is located in the consumer side,and the “streamTarget” part corresponds to the streamTarget parameter provided in the createMeasurementJob operation (see clause 6.1.1.2) or the streamTarget attribute of the MOI of MeasurementControlor MeasurementReader, see 3GPP TS 28.622 [5]).' - default: example.com -paths: - /streamInfoList: - post: - summary: The set of information about the streams sent from the producer to the consumer - description: To send the streamInfoList from the producer to the consumer - requestBody: - required: true - content: - application/json: - schema: - $ref: '#/components/schemas/streamInfoListPost-RequestType' - responses: - '201': - description: Success case ("201 Posted"). The streamInfoList is successfully posted. - content: - application/json: - schema: - $ref: '#/components/schemas/streamInfoListPost-ResponseType' - '202': - description: Partial success case ("202 Partially posted"). The representation of the posted resource on stream information. - content: - application/json: - schema: - $ref: '#/components/schemas/streamInfoListPost-ResponseType' - default: - description: Error case. - content: - application/json: - schema: - $ref: '#/components/schemas/error-ResponseType' - get: - summary: Read resources of stream information from the streaming consumer - description: 'With HTTP GET, resources of stream information are read. The resources to be read are identified with the path component (base resource) and the query component (streamIdList) of the URI. The fields query component allows to select the resource properties to be returned.' - parameters: - - name: streamIdList - in: query - description: This parameter identifies the list of streamId to select from the collection resources identified with the path component of the URI. - required: true - schema: - type: array - items: - type: integer - responses: - '200': - description: 'Success case ("200 OK"). The resources identified in the request for retrieval are returned in the response message body. In case the fields query parameter is used, the selected resources are returned.' - content: - application/json: - schema: - $ref: '#/components/schemas/listOfStreamInfoRetrieval-ResponseType' - '202': - description: Partial success case ("202 Partially retrieved"). The representation of the retrieved resources on stream information. - content: - application/json: - schema: - $ref: '#/components/schemas/listOfStreamInfoRetrieval-ResponseType' - default: - description: Error case. - content: - application/json: - schema: - $ref: '#/components/schemas/error-ResponseType' - patch: - summary: Update resources of stream information to the streaming consumer - description: 'With HTTP PATCH, resources of stream information are to be updated. The resources to be updated are identified with the path component (base resource) and the query component (streamIdList) of the URI. The fields query component allows to select the resource properties to be updated.' - parameters: - - name: streamIdList - in: query - description: This parameter identifies the list of streamId to select from the collection resources identified with the path component of the URI. - required: true - schema: - type: array - items: - type: integer - requestBody: - required: true - content: - application/json: - schema: - $ref: '#/components/schemas/listOfStreamInfoToUpdate-RequestType' - responses: - '200': - description: Success case ("200 OK"). The resources selected by the query parameter are updated and returned in the response message body. - content: - application/json: - schema: - $ref: '#/components/schemas/listOfStreamInfoUpdate-ResponseType' - '202': - description: Partial success case ("202 Partially updated"). The representation of the updated resources on stream information - content: - application/json: - schema: - $ref: '#/components/schemas/listOfStreamInfoUpdate-ResponseType' - default: - description: Error case. - content: - application/json: - schema: - $ref: '#/components/schemas/error-ResponseType' - delete: - summary: The information of streams to be deleted by the producer to the consumer - description: 'With HTTP DELETE, resources of stream information are to be deleted. The resources to be deleted are identified with the path component (base resource) and the query component (streamIdList) of the URI. The fields query component allows to select the resource properties to be deleted.' - parameters: - - name: streamIdList - in: query - description: This parameter identifies the list of streamId to select from the collection resources identified with the path component of the URI. - required: true - schema: - type: array - items: - type: integer - responses: - '204': - description: Success case ("204 No Content"). The stream information resource has been deleted. The response message body is absent. - default: - description: Error case. - content: - application/json: - schema: - $ref: '#/components/schemas/error-ResponseType' - '/streamInfoList/{streamId}': - get: - summary: Read resource of the stream information from the streaming consumer - description: 'With HTTP GET, resource of stream information is read. The resource to be read is identified with the path component the URI.' - parameters: - - name: streamId - in: path - description: Identifies the stream for which the information is to be retrieved. - required: true - schema: - $ref: '#/components/schemas/uri-Type' - responses: - '200': - description: Success case ("200 OK"). The resource identified in the request for retrieval is returned in the response message body. - content: - application/json: - schema: - $ref: '#/components/schemas/listOfStreamInfoRetrieval-ResponseType' - default: - description: Error case. - content: - application/json: - schema: - $ref: '#/components/schemas/error-ResponseType' - patch: - summary: Update the resource of stream information to the streaming consumer - description: 'With HTTP PATCH, resource of stream information is to be updated. The resource to be updated is identified by the path component of the URI. ' - parameters: - - name: streamId - in: path - description: Identifies the stream for which the information is to be updated. - required: true - schema: - $ref: '#/components/schemas/uri-Type' - requestBody: - required: true - content: - application/json: - schema: - $ref: '#/components/schemas/streamInfoToUpdate-RequestType' - responses: - '200': - description: Success case ("200 OK"). The resources identified by the path of the URI is updated and returned in the response message body. - content: - application/json: - schema: - $ref: '#/components/schemas/streamInfoUpdate-ResponseType' - default: - description: Error case. - content: - application/json: - schema: - $ref: '#/components/schemas/error-ResponseType' - delete: - summary: The stream information to be deleted by the producer to the consumer - description: 'With HTTP DELETE, resource of stream information identified by the path component of the URI is to be deleted.' - parameters: - - name: streamId - in: path - description: Identifies the stream for which the information is to be deleted - required: true - schema: - $ref: '#/components/schemas/uri-Type' - responses: - '204': - description: Success case ("204 No Content"). The stream information resource has been deleted. The response message body is absent. - default: - description: Error case. - content: - application/json: - schema: - $ref: '#/components/schemas/error-ResponseType' - /streamConnection: - get: - summary: The connection for streaming from the producer to the consumer - description: To establish the WebSocket connection between the producer and the consumer. The HTTP version of this operation shall not be earlier than HTTP/1.1 - parameters: - - in: header - name: Upgrade - required: true - schema: - $ref: '#/components/schemas/Upgrade-HeaderType' - - in: header - name: Connection - required: true - schema: - $ref: '#/components/schemas/Connection-HeaderType' - - in: header - name: Sec-WebSocket-Key - required: true - schema: - $ref: '#/components/schemas/Sec-WebSocket-Key-HeaderType' - - in: header - name: Sec-WebSocket-Version - required: true - schema: - $ref: '#/components/schemas/Sec-WebSocket-Version-HeaderType' - responses: - '101': - description: Success case ("101 Switching Protocols "). The connection has been successfully switched to WebSocket. The response message body is absent. - headers: - Upgrade: - schema: - $ref: '#/components/schemas/Upgrade-HeaderType' - Connection: - schema: - $ref: '#/components/schemas/Connection-HeaderType' - Sec-WebSocket-Accept-HeaderType: - schema: - $ref: '#/components/schemas/Sec-WebSocket-Accept-HeaderType' - default: - description: Error case. - content: - application/json: - schema: - $ref: '#/components/schemas/error-ResponseType' -components: - schemas: - uri-Type: - type: string - streamInfoIn-Type: - type: object - properties: - streamId: - type: integer - iOCInstance: - $ref: '#/components/schemas/uri-Type' - measTypes: - type: array - items: - type: string - streamInfoOut-Type: - type: object - properties: - streamId: - $ref: '#/components/schemas/uri-Type' - iOCInstance: - $ref: '#/components/schemas/uri-Type' - measTypes: - type: array - items: - type: string - error-ResponseType: - type: object - properties: - error: - type: object - properties: - errorInfo: - type: string - streamInfoListPost-RequestType: - type: object - properties: - streamInfoList: - type: array - items: - $ref: '#/components/schemas/streamInfoIn-Type' - streamInfoListPost-ResponseType: - type: object - properties: - streamInfoListPosted: - type: array - items: - $ref: '#/components/schemas/streamInfoOut-Type' - streamInfoRetrieval-ResponseType: - type: object - properties: - streamInfoOut: - $ref: '#/components/schemas/streamInfoOut-Type' - listOfStreamInfoRetrieval-ResponseType: - type: object - properties: - listOfStreamInfoOut: - type: array - items: - $ref: '#/components/schemas/streamInfoOut-Type' - streamInfoToUpdatePropertyType: - type: object - properties: - iOCInstance: - description: 'The updated measured object instance, empty value means no update.' - allOf: - - $ref: '#/components/schemas/uri-Type' - measTypes: - description: 'The updated list of measurement type, empty value means no update.' - type: array - items: - type: string - streamInfoToUpdate-RequestType: - type: object - properties: - streamInfoToUpdate: - $ref: '#/components/schemas/streamInfoToUpdatePropertyType' - listOfStreamInfoToUpdate-RequestType: - type: object - properties: - listOfStreamInfoToUpdate: - type: array - items: - $ref: '#/components/schemas/streamInfoToUpdatePropertyType' - streamInfoUpdate-ResponseType: - type: object - properties: - streamInfoUpdated: - $ref: '#/components/schemas/streamInfoOut-Type' - listOfStreamInfoUpdate-ResponseType: - type: object - properties: - listOfStreamInfoUpdated: - type: array - items: - $ref: '#/components/schemas/streamInfoOut-Type' - Upgrade-HeaderType: - type: string - enum: - - websocket - Connection-HeaderType: - type: string - enum: - - Upgrade - Sec-WebSocket-Key-HeaderType: - type: string - Sec-WebSocket-Version-HeaderType: - type: string - Sec-WebSocket-Accept-HeaderType: - type: string diff --git a/OpenAPI/README.md b/OpenAPI/README.md deleted file mode 100644 index 9de057463..000000000 --- a/OpenAPI/README.md +++ /dev/null @@ -1,73 +0,0 @@ -# 3GPP SA5 models and MnS OpenAPI definitions - -(c) 2020, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). All rights reserved. - -The links below will open the Swagger Editor/UI and auto-load the OpenAPI YAML file of each API: - - -## Network Resource Models (NRM) - -* Generic NRM (TS 28.623) -([Editor](https://forge.3gpp.org/swagger/tools/loader.html?yaml=OpenAPI/genericNrm.yaml)) -([UI](https://forge.3gpp.org/swagger/tools/loader.html?action=ui&yaml=OpenAPI/genericNrm.yaml)) - -* Common NRM definitions (TS 28.623) -([Editor](https://forge.3gpp.org/swagger/tools/loader.html?yaml=OpenAPI/comDefs.yaml)) -([UI](https://forge.3gpp.org/swagger/tools/loader.html?action=ui&yaml=OpenAPI/comDefs.yaml)) - -* NR NRM (TS 28.541) -([Editor](https://forge.3gpp.org/swagger/tools/loader.html?yaml=OpenAPI/nrNrm.yaml)) -([UI](https://forge.3gpp.org/swagger/tools/loader.html?action=ui&yaml=OpenAPI/nrNrm.yaml)) - -* 5GC NRM (TS 28.541) -([Editor](https://forge.3gpp.org/swagger/tools/loader.html?yaml=OpenAPI/5gcNrm.yaml)) -([UI](https://forge.3gpp.org/swagger/tools/loader.html?action=ui&yaml=OpenAPI/5gcNrm.yaml)) - -* Slice NRM (TS 28.541) -([Editor](https://forge.3gpp.org/swagger/tools/loader.html?yaml=OpenAPI/sliceNrm.yaml)) -([UI](https://forge.3gpp.org/swagger/tools/loader.html?action=ui&yaml=OpenAPI/sliceNrm.yaml)) - -* Communication Service Assurance NRM (TS 28.536) -([Editor](https://forge.3gpp.org/swagger/tools/loader.html?yaml=OpenAPI/coslaNrm.yaml)) -([UI](https://forge.3gpp.org/swagger/tools/loader.html?action=ui&yaml=OpenAPI/coslaNrm.yaml)) - -## Management Services (MnS) - -* Provisioning MnS (TS 28.532) -([Editor](https://forge.3gpp.org/swagger/tools/loader.html?yaml=OpenAPI/provMnS.yaml)) -([UI](https://forge.3gpp.org/swagger/tools/loader.html?action=ui&yaml=OpenAPI/provMnS.yaml)) - -* Fault Supervision MnS (TS 28.532) -([Editor](https://forge.3gpp.org/swagger/tools/loader.html?yaml=OpenAPI/faultMnS.yaml)) -([UI](https://forge.3gpp.org/swagger/tools/loader.html?action=ui&yaml=OpenAPI/faultMnS.yaml)) - -* Performance Measurement Job Control MnS (28.550) -([Editor](https://forge.3gpp.org/swagger/tools/loader.html?yaml=OpenAPI/PerMeasJobCtlMnS.yaml)) -([UI](https://forge.3gpp.org/swagger/tools/loader.html?action=ui&yaml=OpenAPI/PerMeasJobCtlMnS.yaml)) - -* Performance Data File Reporting MnS (TS 28.532) -([Editor](https://forge.3gpp.org/swagger/tools/loader.html?yaml=OpenAPI/PerDataFileReportMnS.yaml)) -([UI](https://forge.3gpp.org/swagger/tools/loader.html?action=ui&yaml=OpenAPI/PerDataFileReportMnS.yaml)) - -* Performance Threshold Monitoring MnS (TS 28.532) -([Editor](https://forge.3gpp.org/swagger/tools/loader.html?yaml=OpenAPI/PerThresMonMnS.yaml)) -([UI](https://forge.3gpp.org/swagger/tools/loader.html?action=ui&yaml=OpenAPI/PerThresMonMnS.yaml)) - -* Heartbeat Notifications(TS 28.532) -([Editor](https://forge.3gpp.org/swagger/tools/loader.html?yaml=OpenAPI/heartbeatNtf.yaml)) -([UI](https://forge.3gpp.org/swagger/tools/loader.html?action=ui&yaml=OpenAPI/heartbeatNtf.yaml)) - -* Streaming Data Reporting MnS (TS 28.532) -([Editor](https://forge.3gpp.org/swagger/tools/loader.html?yaml=OpenAPI/streamingDataMnS.yaml)) -([UI](https://forge.3gpp.org/swagger/tools/loader.html?action=ui&yaml=OpenAPI/streamingDataMnS.yaml)) - -## Tools - -* [Frontend](https://forge.3gpp.org/swagger/tools/GitlabOpenAPIFrontend.htm) to invoke the Swagger Editor, Swagger UI, or to parse OpenAPI files with APIDevTools Swagger Parser/Validator, or to search for APIs referencing a data structure -* [API Parser/Linter](https://forge.3gpp.org/swagger/tools/parser.html) to parse OpenAPI files with APIDevTools Swagger Parser/Validator and run a number of [lint](https://en.wikipedia.org/wiki/Lint_\(software\)) rules to improve API quality -* [Data Type Finder](https://forge.3gpp.org/swagger/tools/types.html) to find the impacted APIs due to a change on a given data type -* [API Versions Overview](https://forge.3gpp.org/swagger/tools/versions.html) to show a comprehensive report of the versions of all APIs in the repository - -## Other 3GPP API definitions - -* [CT4](https://forge.3gpp.org/rep/3GPP/5G_APIs) specifications. diff --git a/OpenAPI/comDefs.yaml b/OpenAPI/comDefs.yaml deleted file mode 100644 index 04ab65161..000000000 --- a/OpenAPI/comDefs.yaml +++ /dev/null @@ -1,84 +0,0 @@ -openapi: 3.0.1 -info: - title: Common Type Definitions - version: 16.3.0 - description: >- - OAS 3.0.1 specification of common type definitions in the Generic NRM - © 2020, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). - All rights reserved. -externalDocs: - description: 3GPP TS 28.623 V16.3.0; Generic NRM, Common Type Definitions - url: http://www.3gpp.org/ftp/Specs/archive/28_series/28.623/ -paths: {} -components: - schemas: - Long: - type: string - format: long - Float: - type: string - format: float - DateTime: - type: string - format: date-Time - Dn: - type: string - Uri: - type: string - AttributeNameValuePairSet: - type: object - minProperties: 1 - AttributeValueChangeSet: - description: >- - The key in this map is the attribute name. The value of each key is an array. - When only one item is present in the array, it carries the new attribute - value. If two items are present, then the first item carries the old value - and the second item the new value. The items can be of any type including null. - type: object - additionalProperties: - type: array - minItems: 1 - maxItems: 2 - items: - nullable: true - Filter: - type: string - SystemDN: - type: string - NotificationId: - type: integer - NotificationHeader: - description: >- - Header used for all notifications types - type: object - required: - - uri - - notificationId - - notificationType - - eventTime - - systemDn - properties: - uri: - $ref: '#/components/schemas/Uri' - notificationId: - $ref: '#/components/schemas/NotificationId' - notificationType: - oneOf: - - $ref: 'faultMnS.yaml#/components/schemas/AlarmNotificationTypes' - #- $ref: 'provMnS.yaml#/components/schemas/CmNotificationTypes' - # more to be added - eventTime: - $ref: '#/components/schemas/DateTime' - systemDN: - $ref: '#/components/schemas/SystemDN' - ErrorResponse: - description: >- - Default schema for the response message body in case the request - is not successful. - type: object - properties: - error: - type: object - properties: - errorInfo: - type: string diff --git a/OpenAPI/coslaNrm.yaml b/OpenAPI/coslaNrm.yaml deleted file mode 100644 index 6862dff42..000000000 --- a/OpenAPI/coslaNrm.yaml +++ /dev/null @@ -1,152 +0,0 @@ -openapi: 3.0.2 - -info: - title: coslaNrm - version: 16.4.0 - description: - OAS 3.0.1 specification of the Cosla NRM - © 2020, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). - All rights reserved. - -externalDocs: - description: 3GPP TS 28.536 V16.4.0; Cosla NRM - url: http://www.3gpp.org/ftp/Specs/archive/28_series/28.536/ - -paths: {} - -components: - - schemas: - -#------------ Type definitions --------------------------------------------------- - - ControlLoopLifeCyclePhase: - type: string - enum: - - PREPARATION - - COMMISSIONING - - OPERATION - - DECOMMISSIONING - - ObservationTime: - type: integer - - AssuranceGoalStatusObserved: - type: string - enum: - - FULFILLED - - NOT_FULFILLED - - AssuranceGoalStatusPredicted: - type: string - enum: - - FULFILLED - - NOT_FULFILLED - - AssuranceTarget: - type: object - properties: - assuranceTargetName: - type: string - assuranceTargetValue: - type: string - - AssuranceTargetList: - type: array - items: - $ref: '#/components/schemas/AssuranceTarget' - - -#-------- Definition of concrete IOCs -------------------------------------------- - - SubNetwork-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/SubNetwork-Attr' - - $ref: 'genericNrm.yaml#/components/schemas/SubNetwork-ncO' - - type: object - properties: - AssuranceClosedControlLoop: - $ref: '#/components/schemas/AssuranceClosedControlLoop-Multiple' - - ManagedElement-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/ManagedElement-Attr' - - $ref: 'genericNrm.yaml#/components/schemas/ManagedElement-ncO' - - type: object - properties: - AssuranceClosedControlLoop: - $ref: '#/components/schemas/AssuranceClosedControlLoop-Multiple' - - AssuranceClosedControlLoop-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top' - - type: object - properties: - attributes: - type: object - properties: - operationalState: - $ref: 'genericNrm.yaml#/components/schemas/OperationalState' - administrativeState: - $ref: 'genericNrm.yaml#/components/schemas/AdministrativeState' - controlLoopLifeCyclePhase: - $ref: '#/components/schemas/ControlLoopLifeCyclePhase' - AssuranceGoal: - $ref: '#/components/schemas/AssuranceGoal-Multiple' - - AssuranceGoal-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top' - - type: object - properties: - attributes: - allOf: - - type: object - properties: - observationTime: - $ref: '#/components/schemas/ObservationTime' - assuranceTargetList: - $ref: '#/components/schemas/AssuranceTargetList' - assuranceGoalStatusObserved: - $ref: '#/components/schemas/AssuranceGoalStatusObserved' - assuranceGoalStatusPredicted: - $ref: '#/components/schemas/AssuranceGoalStatusPredicted' - serviceProfileId: - type: string - sliceProfileId: - type: string - networkSliceRef: - $ref: 'comDefs.yaml#/components/schemas/Dn' - networkSliceSubnetRef: - $ref: 'comDefs.yaml#/components/schemas/Dn' - -#-------- Definition of JSON arrays for name-contained IOCs ---------------------- - - AssuranceClosedControlLoop-Multiple: - type: array - items: - $ref: '#/components/schemas/AssuranceClosedControlLoop-Single' - - AssuranceGoal-Multiple: - type: array - items: - $ref: '#/components/schemas/AssuranceGoal-Single' - -#------------ Definitions in TS 28.536 for TS 28.623 ----------------------------- - - resources-coslaNrm: - oneOf: - - $ref: '#/components/schemas/AssuranceClosedControlLoop-Single' - - $ref: '#/components/schemas/AssuranceGoal-Single' - - $ref: '#/components/schemas/SubNetwork-Single' - - $ref: '#/components/schemas/ManagedElement-Single' \ No newline at end of file diff --git a/OpenAPI/faultMnS.yaml b/OpenAPI/faultMnS.yaml deleted file mode 100644 index 499123b90..000000000 --- a/OpenAPI/faultMnS.yaml +++ /dev/null @@ -1,1144 +0,0 @@ -openapi: 3.0.1 -info: - title: Fault Supervision MnS - version: 16.4.0 - description: >- - OAS 3.0.1 definition of the Fault Supervision MnS - © 2020, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). - All rights reserved. -externalDocs: - description: 3GPP TS 28.532 V16.4.0; Generic management services - url: http://www.3gpp.org/ftp/Specs/archive/28_series/28.532/ -servers: - - url: '{MnSRoot}/FaultSupervisionMnS/{version}' - variables: - MnSRoot: - description: See subclause 4.4.3 of TS 32.158 - default: http://example.com/3GPPManagement - version: - description: Versi on number of the OpenAPI definition - default: XXX -paths: - /alarms: - get: - summary: Retrieve multiple alarms - description: >- - Retrieves the alarms identified by alarmAckState, baseObjectInstance - and filter. - parameters: - - name: alarmAckState - in: query - required: false - schema: - $ref: '#/components/schemas/AlarmAckState' - - name: baseObjectInstance - in: query - required: false - schema: - $ref: '#/components/schemas/Dn' - - name: filter - in: query - required: false - schema: - $ref: '#/components/schemas/Filter' - responses: - '200': - description: >- - Success case ("200 OK"). - Returns the alarms identified in the request. The alarmId is the key - of the map. - content: - application/json: - schema: - type: object - additionalProperties: - type: object - allOf: - - type: object - properties: - lastNotificationHeader: - $ref: '#/components/schemas/NotificationHeader' - - $ref: '#/components/schemas/AlarmRecord' - - type: object - properties: - comments: - $ref: '#/components/schemas/Comments' - default: - description: Response in case of error. - content: - application/json: - schema: - $ref: '#/components/schemas/ErrorResponse' - patch: - summary: 'Clear, acknowledge or unacknowledge multiple alarms' - description: >- - Clears, acknowledges or unacknowledges multiple alarms using patch. Depending - on which action is to be performed, different merge patch documents need - to be used. - requestBody: - description: >- - Patch documents for acknowledging and unacknowledging, or clearing multiple - alarms. The keys in the map are the alarmIds to be patched. - content: - application/merge-patch+json: - schema: - oneOf: - - type: object - additionalProperties: - $ref: '#/components/schemas/MergePatchAcknowledgeAlarm' - - type: object - additionalProperties: - $ref: '#/components/schemas/MergePatchClearAlarm' - responses: - '204': - description: >- - Success case ("204 No content"). - The response message body is empty. - default: - description: Response in case of error. - content: - application/json: - schema: - type: array - items: - $ref: '#/components/schemas/FailedAlarm' - /alarms/alarmCount: - get: - summary: Get the alarm count per perceived severity - parameters: - - name: alarmAckState - in: query - required: false - schema: - $ref: '#/components/schemas/AlarmAckState' - - name: filter - in: query - required: false - schema: - type: string - responses: - '200': - description: >- - Success case ("200 OK"). - The alarm count per perceived severity is returned. - content: - application/json: - schema: - $ref: '#/components/schemas/AlarmCount' - default: - description: Response in case of error. The error case needs rework. - content: - application/json: - schema: - $ref: '#/components/schemas/ErrorResponse' - /alarms/{alarmId}: - patch: - summary: 'Clear, acknowledge or unacknowledge a single alarm' - description: >- - Clears, acknowledges or uncknowldeges a single alarm by patching the alarm - information. A conditional acknowledge request based on the perceived - severity is not supported. - parameters: - - name: alarmId - in: path - description: Identifies the alarm to be patched. - required: true - schema: - type: string - requestBody: - required: true - content: - application/merge-patch+json: - schema: - oneOf: - - $ref: '#/components/schemas/MergePatchAcknowledgeAlarm' - - $ref: '#/components/schemas/MergePatchClearAlarm' - responses: - '204': - description: >- - Success case (204 No content). - The response message body is absent. - default: - description: Response in case of error. - content: - application/json: - schema: - $ref: '#/components/schemas/ErrorResponse' - /alarms/{alarmId}/comments: - post: - summary: Add a comment to a single alarm - description: >- - Adds a comment to an alarm identified by alarmId. The id of the new comment - is allocated by the producer. - parameters: - - name: alarmId - in: path - description: Identifies the alarm to which the comment shall be added. - required: true - schema: - type: string - requestBody: - required: true - content: - application/json: - schema: - $ref: '#/components/schemas/Comment' - responses: - '201': - description: >- - Success case (201 Created). - The representation of the newly created comment resource shall be returned. - content: - application/json: - schema: - $ref: '#/components/schemas/Comment' - headers: - Location: - description: URI of the newly created comment resource. - required: true - schema: - type: string - default: - description: Error case. - content: - application/json: - schema: - $ref: '#/components/schemas/ErrorResponse' - - /subscriptions: - post: - summary: Create a subscription - description: >- - To create a subscription the representation of the subscription is - POSTed on the /subscriptions collection resource. - requestBody: - required: true - content: - application/json: - schema: - $ref: '#/components/schemas/Subscription' - responses: - '201': - description: >- - Success case ("201 Created"). - The representation of the newly created subscription resource shall - be returned. - content: - application/json: - schema: - $ref: '#/components/schemas/Subscription' - headers: - Location: - description: URI of the newly created subscription resource - required: true - schema: - type: string - default: - description: Error case. - content: - application/json: - schema: - $ref: '#/components/schemas/ErrorResponse' - callbacks: - notifyNewAlarm: - '{request.body#/consumerReference}': - post: - requestBody: - required: true - content: - application/json: - schema: - oneOf: - - $ref: '#/components/schemas/NotifyNewAlarm' - - $ref: '#/components/schemas/NotifyNewSecAlarm' - responses: - '204': - description: >- - Success case ("204 No Content"). - The notification is successfully delivered. The response message - body is absent. - default: - description: Error case. - content: - application/json: - schema: - $ref: '#/components/schemas/ErrorResponse' - notifyClearedAlarm: - '{request.body#/consumerReference}': - post: - requestBody: - required: true - content: - application/json: - schema: - $ref: '#/components/schemas/NotifyClearedAlarm' - responses: - '204': - description: >- - Success case ("204 No Content"). - The notification is successfully delivered. The response message - body is absent. - default: - description: Error case. - content: - application/json: - schema: - $ref: '#/components/schemas/ErrorResponse' - notifyChangedAlarm: - '{request.body#/consumerReference}': - post: - requestBody: - required: true - content: - application/json: - schema: - $ref: '#/components/schemas/NotifyChangedAlarm' - responses: - '204': - description: >- - Success case ("204 No Content"). - The notification is successfully delivered. The response message - body is absent. - default: - description: Error case. - content: - application/json: - schema: - $ref: '#/components/schemas/ErrorResponse' - notifyChangedAlarmGeneral: - '{request.body#/consumerReference}': - post: - requestBody: - required: true - content: - application/json: - schema: - oneOf: - - $ref: '#/components/schemas/NotifyChangedAlarmGeneral' - - $ref: '#/components/schemas/NotifyChangedSecAlarmGeneral' - responses: - '204': - description: >- - Success case ("204 No Content"). - The notification is successfully delivered. The response message - body is absent. - default: - description: Error case. - content: - application/json: - schema: - $ref: '#/components/schemas/ErrorResponse' - notifyCorrelatedNotificationChanged: - '{request.body#/consumerReference}': - post: - requestBody: - required: true - content: - application/json: - schema: - $ref: '#/components/schemas/NotifyCorrelatedNotificationChanged' - responses: - '204': - description: >- - Success case ("204 No Content"). - The notification is successfully delivered. The response message - body is absent. - default: - description: Error case. - content: - application/json: - schema: - $ref: '#/components/schemas/ErrorResponse' - notifyAckStateChanged: - '{request.body#/consumerReference}': - post: - requestBody: - required: true - content: - application/json: - schema: - $ref: '#/components/schemas/NotifyAckStateChanged' - responses: - '204': - description: >- - Success case ("204 No Content"). - The notification is successfully delivered. The response message - body is absent. - default: - description: Error case. - content: - application/json: - schema: - $ref: '#/components/schemas/ErrorResponse' - notifyComments: - '{request.body#/consumerReference}': - post: - requestBody: - required: true - content: - application/json: - schema: - $ref: '#/components/schemas/NotifyComments' - responses: - '204': - description: >- - Success case ("204 No Content"). - The notification is successfully delivered. The response message - body is absent. - default: - description: Error case. - content: - application/json: - schema: - $ref: '#/components/schemas/ErrorResponse' - notifyPotentialFaultyAlarmList: - '{request.body#/consumerReference}': - post: - requestBody: - required: true - content: - application/json: - schema: - $ref: '#/components/schemas/NotifyPotentialFaultyAlarmList' - responses: - '204': - description: >- - Success case ("204 No Content"). - The notification is successfully delivered. The response message - body is absent. - default: - description: Error case. - content: - application/json: - schema: - $ref: '#/components/schemas/ErrorResponse' - notifyAlarmListRebuilt: - '{request.body#/consumerReference}': - post: - requestBody: - required: true - content: - application/json: - schema: - $ref: '#/components/schemas/NotifyAlarmListRebuilt' - responses: - '204': - description: >- - Success case ("204 No Content"). - The notification is successfully delivered. The response message - body is absent. - default: - description: Error case. - content: - application/json: - schema: - $ref: '#/components/schemas/ErrorResponse' - /subscriptions/{subscriptionId}: - delete: - summary: Delete a subscription - description: >- - The subscription is deleted by deleting the corresponding subscription - resource. The resource to be deleted is identified with the path - component of the URI. - parameters: - - name: subscriptionId - in: path - description: Identifies the subscription to be deleted. - required: true - schema: - type: string - responses: - '204': - description: >- - Success case ("204 No Content"). - The subscription resource has been deleted. The response message body - is absent. - default: - description: Error case. - content: - application/json: - schema: - $ref: '#/components/schemas/ErrorResponse' - -components: - schemas: - - #---- Definitions to be moved to comDefs.yaml --------------------------------------# - - Long: - type: string - format: long - Float: - type: string - format: float - DateTime: - type: string - format: date-Time - - Dn: - type: string - Uri: - type: string - - AttributeNameValuePairSet: - type: object - minProperties: 1 - AttributeValueChangeSet: - description: >- - The key in this map is the attribute name. The value of each key is an array. - When only one item is present in the array, it carries the new attribute - value. If two items are present, then the first item carries the old value - and the second item the new value. The items can be of any type including null. - type: object - additionalProperties: - type: array - minItems: 1 - maxItems: 2 - items: - nullable: true - - Filter: - type: string - SystemDN: - type: string - - NotificationId: - type: integer - NotificationHeader: - description: >- - Header used for all notification types - type: object - required: - - href - - notificationId - - notificationType - - eventTime - - systemDN - properties: - uri: - $ref: '#/components/schemas/Uri' - notificationId: - $ref: '#/components/schemas/NotificationId' - notificationType: - oneOf: - - $ref: '#/components/schemas/AlarmNotificationTypes' - #- $ref: 'faultMnS.yaml#/components/schemas/AlarmNotificationTypes' - #- $ref: 'provMnS.yaml#/components/schemas/CmNotificationTypes' - # more to be added - eventTime: - $ref: '#/components/schemas/DateTime' - systemDN: - $ref: '#/components/schemas/SystemDN' - - ErrorResponse: - description: >- - Default schema for the response message body in case the request is not - successful. - type: object - properties: - error: - type: object - properties: - errorInfo: - type: string - - #---- End of definitions to be moved to comDefs.yaml -------------------------------# - - #---- Definition of AlarmRecord ----------------------------------------------------# - - AlarmId: - type: string - AlarmType: - type: string - enum: - - COMMUNICATIONS_ALARM - - QUALITY_OF_SERVICE_ALARM - - PROCESSING_ERROR_ALARM - - EQUIPMENT_ALARM - - ENVIRONMENTAL_ALARM - - INTEGRITY_VIOLATION - - OPERATIONAL_VIOLATION - - PHYSICAL_VIOLATION - - SECURITY_SERVICE_OR_MECHANISM_VIOLATION - - TIME_DOMAIN_VIOLATION - ProbableCause: - description: >- - The value of the probable cause may be a specific standardized string, or any - vendor provided string. Probable cause strings are not standardized in the - present document. They may be added in a future version. Up to then the - mapping of the generic probable cause strings "PROBABLE_CAUSE_001" to - "PROBABLE_CAUSE_005" is vendor specific. - The value of the probable cause may also be an integer. The mapping of integer - values to probable causes is vendor specific. - oneOf: - - anyOf: - - type: string - enum: - - PROBABLE_CAUSE_001 - - PROBABLE_CAUSE_002 - - PROBABLE_CAUSE_003 - - PROBABLE_CAUSE_004 - - PROBABLE_CAUSE_005 - - type: string - - type: integer - SpecificProblem: - oneOf: - - type: string - - type: integer - PerceivedSeverity: - type: string - enum: - - INDETERMINATE - - CRITICAL - - MAJOR - - MINOR - - WARNING - - CLEARED - TrendIndication: - type: string - enum: - - MORE_SEVERE - - NO_CHANGE - - LESS_SEVERE - ThresholdHysteresis: - type: object - required: - - high - properties: - high: - oneOf: - - type: integer - - $ref: '#/components/schemas/Float' - low: - $ref: '#/components/schemas/Float' - ThresholdLevelInd: - type: object - required: - - up - properties: - up: - $ref: '#/components/schemas/ThresholdHysteresis' - low: - $ref: '#/components/schemas/ThresholdHysteresis' - ThresholdInfo: - type: object - required: - - observedMeasurement - - observedValue - properties: - observedMeasurement: - type: string - observedValue: - oneOf: - - type: integer - - $ref: '#/components/schemas/Float' - thresholdLevelInd: - $ref: '#/components/schemas/ThresholdLevelInd' - armTime: - $ref: '#/components/schemas/DateTime' - CorrelatedNotification: - type: object - required: - - source - - notificationId - properties: - sourceObjectInstance: - $ref: '#/components/schemas/Dn' - notificationIds: - type: array - items: - $ref: '#/components/schemas/NotificationId' - CorrelatedNotifications: - type: array - items: - $ref: '#/components/schemas/CorrelatedNotification' - AckState: - type: string - enum: - - ACKNOWLEDGED - - UNACKNOWLEDGED - - AlarmRecord: - description: >- - The alarmId is not a property of an alarm record. It is used as key - in the map of alarm records instead. - type: object - properties: - # alarmId: - # $ref: '#/components/schemas/AlarmId' - objectInstance: - $ref: '#/components/schemas/Dn' - notificationId: - $ref: '#/components/schemas/NotificationId' - alarmRaisedTime: - $ref: '#/components/schemas/DateTime' - alarmChangedTime: - $ref: '#/components/schemas/DateTime' - alarmClearedTime: - $ref: '#/components/schemas/DateTime' - alarmType: - $ref: '#/components/schemas/AlarmType' - probableCause: - $ref: '#/components/schemas/ProbableCause' - specificProblem: - $ref: '#/components/schemas/SpecificProblem' - perceivedSeverity: - $ref: '#/components/schemas/PerceivedSeverity' - backedUpStatus: - type: boolean - backUpObject: - $ref: '#/components/schemas/Dn' - trendIndication: - $ref: '#/components/schemas/TrendIndication' - thresholdinfo: - $ref: '#/components/schemas/ThresholdInfo' - correlatedNotifications: - $ref: '#/components/schemas/CorrelatedNotifications' - stateChangeDefinition: - $ref: '#/components/schemas/AttributeValueChangeSet' - monitoredAttributes: - $ref: '#/components/schemas/AttributeNameValuePairSet' - proposedRepairActions: - type: string - additionalText: - type: string - additionalInformation: - $ref: '#/components/schemas/AttributeNameValuePairSet' - - rootCauseIndicator: - type: boolean - - ackTime: - $ref: '#/components/schemas/DateTime' - ackUserId: - type: string - ackSystemId: - type: string - ackState: - $ref: '#/components/schemas/AckState' - - clearUserId: - type: string - clearSystemId: - type: string - serviceUser: - type: string - serviceProvider: - type: string - securityAlarmDetector: - type: string - - #---- Definition of alarm notifications --------------------------------------------# - - AlarmNotificationTypes: - type: string - enum: - - notifyNewAlarm - - notifyChangedAlarm - - notifyChangedAlarmGeneral - - notifyAckStateChanged - - notifyCorrelatedNotificationChanged - - notifyComments - - notifyClearedAlarm - - notifyAlarmListRebuiltAlarm - - notifyPotentialFaultyAlarmList - AlarmListAlignmentRequirement: - type: string - enum: - - ALIGNMENT_REQUIRED - - ALIGNMENT_NOT_REQUIRED - - NotifyNewAlarm: - allOf: - - $ref: '#/components/schemas/NotificationHeader' - - type: object - required: - - alarmId - - alarmType - - probableCause - - perceivedSeverity - properties: - alarmId: - $ref: '#/components/schemas/AlarmId' - alarmType: - $ref: '#/components/schemas/AlarmType' - probableCause: - $ref: '#/components/schemas/ProbableCause' - specificProblem: - $ref: '#/components/schemas/SpecificProblem' - perceivedSeverity: - $ref: '#/components/schemas/PerceivedSeverity' - backedUpStatus: - type: boolean - backUpObject: - $ref: '#/components/schemas/Dn' - trendIndication: - $ref: '#/components/schemas/TrendIndication' - thresholdInfo: - $ref: '#/components/schemas/ThresholdInfo' - correlatedNotifications: - $ref: '#/components/schemas/CorrelatedNotifications' - stateChangeDefinition: - $ref: '#/components/schemas/AttributeValueChangeSet' - monitoredAttributes: - $ref: '#/components/schemas/AttributeNameValuePairSet' - proposedRepairActions: - type: string - additionalText: - type: string - additionalInformation: - $ref: '#/components/schemas/AttributeNameValuePairSet' - rootCauseIndicator: - type: boolean - NotifyNewSecAlarm: - allOf: - - $ref: '#/components/schemas/NotificationHeader' - - type: object - required: - - alarmId - - alarmType - - probableCause - - perceivedSeverity - - serviceUser - - serviceProvider - - securityAlarmDetector - properties: - alarmId: - $ref: '#/components/schemas/AlarmId' - alarmType: - $ref: '#/components/schemas/AlarmType' - probableCause: - $ref: '#/components/schemas/ProbableCause' - perceivedSeverity: - $ref: '#/components/schemas/PerceivedSeverity' - correlatedNotifications: - $ref: '#/components/schemas/CorrelatedNotifications' - additionalText: - type: string - additionalInformation: - $ref: '#/components/schemas/AttributeNameValuePairSet' - rootCauseIndicator: - type: boolean - serviceUser: - type: string - serviceProvider: - type: string - securityAlarmDetector: - type: string - NotifyClearedAlarm: - allOf: - - $ref: '#/components/schemas/NotificationHeader' - - type: object - required: - - alarmId - - alarmType - - probableCause - - perceivedSeverity - properties: - alarmId: - $ref: '#/components/schemas/AlarmId' - alarmType: - $ref: '#/components/schemas/AlarmType' - probableCause: - $ref: '#/components/schemas/ProbableCause' - perceivedSeverity: - $ref: '#/components/schemas/PerceivedSeverity' - correlatedNotifications: - $ref: '#/components/schemas/CorrelatedNotifications' - clearUserId: - type: string - clearSystemId: - type: string - NotifyChangedAlarm: - allOf: - - $ref: '#/components/schemas/NotificationHeader' - - type: object - required: - - alarmId - - alarmType - - probableCause - - perceivedSeverity - properties: - alarmId: - $ref: '#/components/schemas/AlarmId' - alarmType: - $ref: '#/components/schemas/AlarmType' - probableCause: - $ref: '#/components/schemas/ProbableCause' - perceivedSeverity: - $ref: '#/components/schemas/PerceivedSeverity' - NotifyChangedAlarmGeneral: - allOf: - - $ref: '#/components/schemas/NotificationHeader' - - type: object - required: - - alarmId - - alarmType - - probableCause - - perceivedSeverity - - changedAlarmAttributes - properties: - alarmId: - $ref: '#/components/schemas/AlarmId' - alarmType: - $ref: '#/components/schemas/AlarmType' - probableCause: - $ref: '#/components/schemas/ProbableCause' - specificProblem: - $ref: '#/components/schemas/SpecificProblem' - perceivedSeverity: - $ref: '#/components/schemas/PerceivedSeverity' - correlatedNotifications: - $ref: '#/components/schemas/CorrelatedNotifications' - backedUpStatus: - type: boolean - backUpObject: - $ref: '#/components/schemas/Dn' - trendIndication: - $ref: '#/components/schemas/TrendIndication' - thresholdInfo: - $ref: '#/components/schemas/ThresholdInfo' - stateChangeDefinition: - $ref: '#/components/schemas/AttributeValueChangeSet' - monitoredAttributes: - $ref: '#/components/schemas/AttributeNameValuePairSet' - proposedRepairActions: - type: string - additionalText: - type: string - additionalInformation: - $ref: '#/components/schemas/AttributeNameValuePairSet' - rootCauseIndicator: - type: boolean - changedAlarmAttributes: - $ref: '#/components/schemas/AttributeNameValuePairSet' - NotifyChangedSecAlarmGeneral: - allOf: - - $ref: '#/components/schemas/NotificationHeader' - - type: object - required: - - alarmId - - alarmType - - probableCause - - perceivedSeverity - - serviceUser - - serviceProvider - - securityAlarmDetector - - changedAlarmAttributes - properties: - alarmId: - $ref: '#/components/schemas/AlarmId' - alarmType: - $ref: '#/components/schemas/AlarmType' - probableCause: - $ref: '#/components/schemas/ProbableCause' - perceivedSeverity: - $ref: '#/components/schemas/PerceivedSeverity' - correlatedNotifications: - $ref: '#/components/schemas/CorrelatedNotifications' - additionalText: - type: string - additionalInformation: - $ref: '#/components/schemas/AttributeNameValuePairSet' - rootCauseIndicator: - type: boolean - serviceUser: - type: string - serviceProvider: - type: string - securityAlarmDetector: - type: string - changedAlarmAttributes: - $ref: '#/components/schemas/AttributeNameValuePairSet' - NotifyCorrelatedNotificationChanged: - allOf: - - $ref: '#/components/schemas/NotificationHeader' - - type: object - required: - - alarmId - - correlatedNotifications - properties: - alarmId: - $ref: '#/components/schemas/AlarmId' - correlatedNotifications: - $ref: '#/components/schemas/CorrelatedNotifications' - rootCauseIndicator: - type: boolean - NotifyAckStateChanged: - allOf: - - $ref: '#/components/schemas/NotificationHeader' - - type: object - required: - - alarmId - - alarmType - - probableCause - - perceivedSeverity - - ackState - - ackUserId - properties: - alarmId: - $ref: '#/components/schemas/AlarmId' - alarmType: - $ref: '#/components/schemas/AlarmType' - probableCause: - $ref: '#/components/schemas/ProbableCause' - perceivedSeverity: - $ref: '#/components/schemas/PerceivedSeverity' - ackState: - $ref: '#/components/schemas/AckState' - ackUserId: - type: string - ackSystemId: - type: string - NotifyComments: - allOf: - - $ref: '#/components/schemas/NotificationHeader' - - type: object - required: - - alarmId - - alarmType - - probableCause - - perceivedSeverity - - comments - properties: - alarmId: - $ref: '#/components/schemas/AlarmId' - alarmType: - $ref: '#/components/schemas/AlarmType' - probableCause: - $ref: '#/components/schemas/ProbableCause' - perceivedSeverity: - $ref: '#/components/schemas/PerceivedSeverity' - comments: - $ref: '#/components/schemas/Comments' - NotifyPotentialFaultyAlarmList: - allOf: - - $ref: '#/components/schemas/NotificationHeader' - - type: object - required: - - reason - properties: - reason: - type: string - NotifyAlarmListRebuilt: - allOf: - - $ref: '#/components/schemas/NotificationHeader' - - type: object - required: - - reason - properties: - reason: - type: string - alarmListAlignmentRequirement: - $ref: '#/components/schemas/AlarmListAlignmentRequirement' - - #---- Definition of query parameters -----------------------------------------------# - - AlarmAckState: - type: string - enum: - - ALL_ALARMS - - ALL_ACTIVE_ALARMS - - ALL_ACTIVE_AND_ACKNOWLEDGED_ALARMS - - ALL_ACTIVE_AND_UNACKNOWLEDGED_ALARMS - - ALL_CLEARED_AND_UNACKNOWLEDGED_ALARMS - - ALL_UNACKNOWLEDGED_ALARMS - - #---- Definition of patch documents ------------------------------------------------# - - MergePatchAcknowledgeAlarm: - description: >- - Patch document acknowledging or unacknowledging a single alarm. For - acknowleding an alarm the value of ackState is ACKNOWLEDGED, for unacknowleding - an alarm the value of ackState is UNACKNOWLEDGED. - type: object - required: - - ackUserId - - ackState - properties: - ackUserId: - type: string - ackSystemId: - type: string - ackState: - $ref: '#/components/schemas/AckState' - MergePatchClearAlarm: - description: Patch document for clearing a single alarm - type: object - required: - - clearUserId - - perceivedSeverity - properties: - clearUserId: - type: string - clearSystemId: - type: string - perceivedSeverity: - type: string - enum: - - CLEARED - - #---- Definition of method responses -----------------------------------------------# - - FailedAlarm: - type: object - required: - - alarmId - - failureReason - properties: - alarmId: - $ref: '#/components/schemas/AlarmId' - failureReason: - type: string - - #---- Definition of resources ------------------------------------------------------# - - AlarmCount: - type: object - required: - - criticalCount - - majorCount - - minorCount - - warningCount - - indeterminateCount - - clearedCount - properties: - criticalCount: - type: integer - majorCount: - type: integer - minorCount: - type: integer - warningCount: - type: integer - indeterminateCount: - type: integer - clearedCount: - type: integer - Comment: - type: object - properties: - commentTime: - $ref: '#/components/schemas/DateTime' - commentUserId: - type: string - commentSystemId: - type: string - commentText: - type: string - Comments: - description: >- - Collection of comments. The comment identifiers are allocated by the - MnS producer and used as key in the map. - type: object - additionalProperties: - $ref: '#/components/schemas/Comment' - Subscription: - type: object - properties: - consumerReference: - $ref: '#/components/schemas/Uri' - timeTick: - $ref: '#/components/schemas/Long' - filter: - $ref: '#/components/schemas/Filter' diff --git a/OpenAPI/genericNrm.yaml b/OpenAPI/genericNrm.yaml deleted file mode 100644 index 9355f53e9..000000000 --- a/OpenAPI/genericNrm.yaml +++ /dev/null @@ -1,1590 +0,0 @@ -openapi: 3.0.1 -info: - title: Generic NRM - version: 16.4.0 - description: >- - OAS 3.0.1 specification of the Generic NRM - © 2020, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). - All rights reserved. -externalDocs: - description: 3GPP TS 28.623 V16.4.0; Generic NRM - url: http://www.3gpp.org/ftp/Specs/archive/28_series/28.623/ -paths: {} -components: - schemas: - -#-------- Definition of types----------------------------------------------------- - - DateTime: - type: string - format: date-time - Dn: - type: string - maxLength: 400 - DnList: - type: array - items: - $ref: '#/components/schemas/Dn' - Mcc: - type: string - pattern: '^[0-9]{3}$' - Mnc: - type: string - pattern: '^[0-9]{2,3}$' - AdministrativeState: - type: string - enum: - - LOCKED - - UNLOCKED - OperationalState: - type: string - enum: - - ENABLED - - DISABLED - UsageState: - type: string - enum: - - IDEL - - ACTIVE - - BUSY - RegistrationState: - type: string - enum: - - REGISTERED - - DEREGISTERED - SetOfMcc: - type: array - items: - $ref: '#/components/schemas/Mcc' - ManagedElementType: - type: string - ManagedElementTypeList: - type: array - items: - $ref: '#/components/schemas/ManagedElementType' - VnfParameter: - type: object - properties: - vnfInstanceId: - type: string - vnfdId: - type: string - flavourId: - type: string - autoScalable: - type: boolean - VnfParametersList: - type: array - items: - $ref: '#/components/schemas/VnfParameter' - SiteLatitude: - type: number - format: float - minimum: -90 - maximum: 90 - SiteLongitude: - type: number - format: float - minimum: -180 - maximum: 180 - PeeParameter: - type: object - properties: - siteIdentification: - type: string - siteDescription: - type: string - siteLatitude: - $ref: '#/components/schemas/SiteLatitude' - siteLongitude: - $ref: '#/components/schemas/SiteLongitude' - equipmentType: - type: string - environmentType: - type: string - powerInterface: - type: string - PeeParametersList: - type: array - items: - $ref: '#/components/schemas/PeeParameter' - MonitoringGPList: - type: array - items: - type: integer - ThresholdInfoList: - type: array - items: - $ref: '#/components/schemas/ThresholdInfo' - ThresholdInfo: - type: object - properties: - measurementType: - type: string - direction: - $ref: '#/components/schemas/Direction' - thresholdPack: - $ref: '#/components/schemas/ThresholdPack' - Direction: - enum: - - Increasing - - Decreasing - ThresholdPack: - type: array - items: - $ref: '#/components/schemas/ThresholdPackElement' - ThresholdPackElement: - type: object - properties: - thresholdLevel: - type: integer - thresholdValue: - type: number - hysteresis: - type: number - Operation: - type: object - properties: - name: - type: string - allowedNFTypes: - $ref: '#/components/schemas/NFType' - operationSemantics: - $ref: '#/components/schemas/OperationSemantics' - OperationList: - type: array - items: - $ref: '#/components/schemas/Operation' - NFType: - type: string - description: ' NF name defined in TS 23.501' - enum: - - NRF - - UDM - - AMF - - SMF - - AUSF - - NEF - - PCF - - SMSF - - NSSF - - UDR - - LMF - - GMLC - - 5G_EIR - - SEPP - - UPF - - N3IWF - - AF - - UDSF - - DN - Fqdn: - type: string - OperationSemantics: - type: string - enum: - - REQUEST_RESPONSE - - SUBSCRIBE_NOTIFY - SAP: - type: object - properties: - host: - $ref: '#/components/schemas/HostAddr' - port: - type: integer - NFServiceType: - type: string - enum: - - Namf_Communication - - Namf_EventExposure - - Namf_MT - - Namf_Location - - Nsmf_PDUSession - - Nsmf_EventExposure - - Others - HostAddr: - oneOf: - - $ref: '#/components/schemas/Ipv4Addr' - - $ref: '#/components/schemas/Ipv6Addr' - - $ref: '#/components/schemas/Fqdn' - Ipv4Addr: - type: string - pattern: '^(([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])\.){3}([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])$' - example: '198.51.100.1' - Ipv4AddrRm: - type: string - pattern: '^(([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])\.){3}([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])$' - example: '198.51.100.1' - nullable: true - Ipv6Addr: - type: string - allOf: - - pattern: '^((:|(0?|([1-9a-f][0-9a-f]{0,3}))):)((0?|([1-9a-f][0-9a-f]{0,3})):){0,6}(:|(0?|([1-9a-f][0-9a-f]{0,3})))$' - - pattern: '^((([^:]+:){7}([^:]+))|((([^:]+:)*[^:]+)?::(([^:]+:)*[^:]+)?))$' - example: '2001:db8:85a3::8a2e:370:7334' - Ipv6AddrRm: - type: string - allOf: - - pattern: '^((:|(0?|([1-9a-f][0-9a-f]{0,3}))):)((0?|([1-9a-f][0-9a-f]{0,3})):){0,6}(:|(0?|([1-9a-f][0-9a-f]{0,3})))$' - - pattern: '^((([^:]+:){7}([^:]+))|((([^:]+:)*[^:]+)?::(([^:]+:)*[^:]+)?))$' - example: '2001:db8:85a3::8a2e:370:7334' - nullable: true - Ipv6Prefix: - type: string - allOf: - - pattern: '^((:|(0?|([1-9a-f][0-9a-f]{0,3}))):)((0?|([1-9a-f][0-9a-f]{0,3})):){0,6}(:|(0?|([1-9a-f][0-9a-f]{0,3})))(\/(([0-9])|([0-9]{2})|(1[0-1][0-9])|(12[0-8])))$' - - pattern: '^((([^:]+:){7}([^:]+))|((([^:]+:)*[^:]+)?::(([^:]+:)*[^:]+)?))(\/.+)$' - example: '2001:db8:abcd:12::0/64' - Uri: - type: string - TransportProtocol: - anyOf: - - type: string - enum: - - TCP - - type: string - SupportedPerfMetricGroup: - type: object - properties: - performanceMetrics: - type: array - items: - type: string - granularityPeriods: - type: array - items: - type: integer - minimum: 1 - reportingMethods: - type: array - items: - type: string - enum: - - FILE_BASED_LOC_SET_BY_PRODUCER - - FILE_BASED_LOC_SET_BY_CONSUMER - - STREAM_BASED - ReportingCtrl: - oneOf: - - type: object - properties: - fileReportingPeriod: - type: integer - - type: object - properties: - fileReportingPeriod: - type: integer - fileLocation: - $ref: '#/components/schemas/Uri' - - type: object - properties: - streamTarget: - $ref: '#/components/schemas/Uri' - Scope: - type: object - properties: - scopeType: - type: string - enum: - - BASE_ONLY - - BASE_ALL - - BASE_NTH_LEVEL - - BASE_SUBTREE - scopeLevel: - type: integer - NotificationType: - type: string - enum: - - notifyMOICreation - - notifyMOIDeletion - - notifyMOIAttributeValueChanges - - notifyEvent - - notifyNewAlarm - - notifyChangedAlarm - - notifyAckStateChanged - - notifyComments - - notifyCorrelatedNotificationChanged - - notifyChangedAlarmGeneral - - notifyAlarmListRebuilt - - notifyPotentialFaultyAlarmList - - notifyFileReady - - notifyFilePreparationError - - notifyThresholdCrossing - NotificationTypes: - type: array - items: - $ref: '#/components/schemas/NotificationType' - -#-------- Definition of types used in Trace control NRM fragment------------------ - - tjJobType-Type: - type: string - description: Specifies whether the TraceJob represents only MDT, Logged MBSFN MDT, Trace or a combined Trace and MDT job. Applicable for Trace, MDT, RCEF and RLF reporting. See 3GPP TS 32.422 clause 5.9a for additional details. - enum: - - IMMEDIATE_MDT_ONLY - - LOGGED_MDT_ONLY - - TRACE_ONLY - - IMMEDIATE_MDT AND TRACE - - RLF_REPORT_ONLY - - RCEF_REPORT_ONLY - - LOGGED_MBSFN_MDT - - tjListOfInterfaces-Type: - description: The interfaces to be recorded in the Network Element. See 3GPP TS 32.422 clause 5.5 for additional details. - type: object - properties: - MSCServerInterfaces: - type: array - items: - type: string - enum: - - A - - Iu-CS - - Mc - - MAP-G - - MAP-B - - MAP-E - - MAP-F - - MAP-D - - MAP-C - - CAP - MGWInterfaces: - type: array - items: - type: string - enum: - - Mc - - Nb-UP - - Iu-UP - RNCInterfaces: - type: array - items: - type: string - enum: - - Iu-CS - - Iu-PS - - Iur - - Iub - - Uu - SGSNInterfaces: - type: array - items: - type: string - enum: - - Gb - - Iu-PS - - Gn - - MAP-Gr - - MAP-Gd - - MAP-Gf - - Ge - - Gs - - S6d - - S4 - - S3 - - S13 - GGSNInterfaces: - type: array - items: - type: string - enum: - - Gn - - Gi - - Gmb - S-CSCFInterfaces: - type: array - items: - type: string - enum: - - Mw - - Mg - - Mr - - Mi - P-CSCFInterfaces: - type: array - items: - type: string - enum: - - Gm - - Mw - I-CSCFInterfaces: - type: array - items: - type: string - enum: - - Cx - - Dx - - Mg - - Mw - MRFCInterfaces: - type: array - items: - type: string - enum: - - Mp - - Mr - MGCFInterfaces: - type: array - items: - type: string - enum: - - Mg - - Mj - - Mn - IBCFInterfaces: - type: array - items: - type: string - enum: - - Ix - - Mx - E-CSCFInterfaces: - type: array - items: - type: string - enum: - - Mw - - Ml - - Mm - - Mi/Mg - BGCFInterfaces: - type: array - items: - type: string - enum: - - Mi - - Mj - - Mk - ASInterfaces: - type: array - items: - type: string - enum: - - Dh - - Sh - - ISC - - Ut - HSSInterfaces: - type: array - items: - type: string - enum: - - MAP-C - - MAP-D - - Gc - - Gr - - Cx - - S6d - - S6a - - Sh - EIRInterfaces: - type: array - items: - type: string - enum: - - MAP-F - - S13 - - MAP-Gf - BM-SCInterfaces: - type: array - items: - type: string - enum: - - Gmb - MMEInterfaces: - type: array - items: - type: string - enum: - - S1-MME - - S3 - - S6a - - S10 - - S11 - - S13 - SGWInterfaces: - type: array - items: - type: string - enum: - - S4 - - S5 - - S8 - - S11 - - Gxc - PDN_GWInterfaces: - type: array - items: - type: string - enum: - - S2a - - S2b - - S2c - - S5 - - S6b - - Gx - - S8 - - SGi - eNBInterfaces: - type: array - items: - type: string - enum: - - S1-MME - - X2 - en-gNBInterfaces: - type: array - items: - type: string - enum: - - S1-MME - - X2 - - Uu - - F1-C - - E1 - AMFInterfaces: - type: array - items: - type: string - enum: - - N1 - - N2 - - N8 - - N11 - - N12 - - N14 - - N15 - - N20 - - N22 - - N26 - AUSFInterfaces: - type: array - items: - type: string - enum: - - N12 - - N13 - NEFInterfaces: - type: array - items: - type: string - enum: - - N29 - - N30 - - N33 - NRFInterfaces: - type: array - items: - type: string - enum: - - N27 - NSSFInterfaces: - type: array - items: - type: string - enum: - - N22 - - N31 - PCFInterfaces: - type: array - items: - type: string - enum: - - N5 - - N7 - - N15 - SMFInterfaces: - type: array - items: - type: string - enum: - - N4 - - N7 - - N10 - - N11 - - S5-C - SMSFInterfaces: - type: array - items: - type: string - enum: - - N20 - - N21 - UDMInterfaces: - type: array - items: - type: string - enum: - - N8 - - N10 - - N13 - - N21 - UPFInterfaces: - type: array - items: - type: string - enum: - - N4 - ng-eNBInterfaces: - type: array - items: - type: string - enum: - - NG-C - - Xn-C - - Uu - gNB-CU-CPInterfaces: - type: array - items: - type: string - enum: - - NG-C - - Xn-C - - Uu - - F1-C - - E1 - - X2-C - gNB-CU-UPInterfaces: - type: array - items: - type: string - enum: - - E1 - gNB-DUInterfaces: - type: array - items: - type: string - enum: - - F1-C - - tjListOfNeTypes-Type: - description: The Network Element types where Trace Session activation is needed. See 3GPP TS 32.422 clause 5.4 for additional details. - type: array - items: - type: string - enum: - - MSC_SERVER - - SGSN - - MGW - - GGSN - - RNC - - BM_SC - - MME - - SGW - - PGW - - ENB - - EN_GNB - - GNB_CU_CP - - GNB_CU_UP - - GNB_DU - - tjPLMNTaget-Type: - type: object - description: The PLMN for which sessions shall be selected in the Trace Session in case of management based activation when several PLMNs are supported in the RAN (this means that shared cells and not shared cells are allowed for the specified PLMN. Note that the PLMN Target might differ from the PLMN specified in the Trace Reference, as that specifies the PLMN that is containing the management system requesting the Trace Session from the NE. See 3GPP TS 32.422 clause 5.9b for additional details. - properties: - mcc: - $ref: '#/components/schemas/Mcc' - mnc: - $ref: '#/components/schemas/Mnc' - required: - - mcc - - mnc - - tjStreamingTraceConsumerURI-Type: - type: string - description: The URI of the Trace Reporting MnS consumer (see 3GPP TS 28.532) to which the Trace records shall be sent. See 3GPP TS 32.422 clause 5.9 for additional details. - format: uri - - tjTraceCollectionEntityAddress-Type: - description: The IP address to which the Trace records shall be transferred. See 3GPP TS 32.422 clause 5.9 for additional details. - oneOf: - - $ref: '#/components/schemas/Ipv4Addr' - - $ref: '#/components/schemas/Ipv6Addr' - - tjTraceDepth-Type: - description: Specifies how detailed information should be recorded in the Network Element. The Trace Depth is a paremeter for Trace Session level, i.e., the Trace Depth is the same for all of the NEs to be traced in the same Trace Session. See 3GPP TS 32.422 clause 5.3 for additional details. - type: string - enum: - - MINIMUM - - MEDIUM - - MAXIMUM - - VENDORMINIMUM - - VENDORMEDIUM - - VENDORMAXIMUM - - tjTraceReference-Type: - type: object - description: The Trace Reference parameter shall be globally unique, therefore the Trace Reference shall compose as follows - MCC+MNC+Trace ID, where the MCC and MNC are coming with the Trace activation request from the management system to identify one PLMN containing the management system, and Trace ID is a 3 byte Octet String. See 3GPP TS 32.422 clause 5.6 for additional details. - properties: - mcc: - $ref: '#/components/schemas/Mcc' - mnc: - $ref: '#/components/schemas/Mnc' - traceId: - type: integer - required: - - mcc - - mnc - - traceId - - tjTraceReportingFormat-Type: - type: string - description: Specifies whether file-based or streaming reporting shall be used for this Trace Session. See 3GPP TS 32.422 clause 5.11 for additional details. - enum: - - FILE-BASED - - STREAMING - - tjTraceTarget-Type: - type: string - description: Type of trace target. For additional details see 3GPP TS 32.422. - enum: - - IMSI - - IMEI - - IMEISV - - PUBLIC_ID - - UTRAN_CELL - - E-UTRAN_CELL - - NG-RAN_CELL - - eNB - - RNC - - gNB - - tjTriggeringEvent-Type: - type: object - description: Specifies when to start a Trace Recording Session and which message shall be recorded first, when to stop a Trace Recording Session and which message shall be recorded last respectively. See 3GPP TS 32.422 clause 5.1 for additional detials. - properties: - NetworkElement: - type: string - enum: - - MSC_SERVER - - SGSN - - MGW - - GGSN - - BM_SC - - MME - - SGW - - PGW - - AMF - - SMF - - PCF - - UPF - EventBitmap: - type: integer - required: - - NetworkElement - - EventBitmap - - tjMDTAnonymizationOfData-Type: - description: Specifies level of MDT anonymization. For additional details see 3GPP TS 32.422 clause 5.10.12. - type: string - enum: - - NO_IDENTITY - - TAC_OF_IMEI - - tjMDTAreaConfigurationForNeighCell-Type: - description: Used for logged NR MDT and defines the area for which UE is requested to perform measurement logging for neighbour cells which have list of frequencies. For additional details see 3GPP TS 32.422 clause 5.10.26. - type: array - items: - type: object - properties: - frequency: - type: string - cell: - type: string - - tjMDTAreaScope-Type: - description: defines the area in terms or Cells or Tracking Area/Routing Area/Location Area where the MDT data collection shall take place. For additional details see 3GPP TS 32.422 clause 5.10.2. - allOf: - - $ref: '#/components/schemas/DnList' - - tjMDTCollectionPeriodRrmLte-Type: - description: See details in 3GPP TS 32.422 clause 5.10.20. - type: string - enum: - - 250ms - - 500ms - - 1000ms - - 2000ms - - 3000ms - - 4000ms - - 6000ms - - 8000ms - - 12000ms - - 16000ms - - 20000ms - - 24000ms - - 28000ms - - 32000ms - - 64000ms - - tjMDTCollectionPeriodRrmUmts-Type: - description: See details in 3GPP TS 32.422 clause 5.10.21. - type: string - enum: - - 1024ms - - 1280ms - - 2048ms - - 2560ms - - 5120ms - - 10240ms - - 1min - - tjMDTEventListForTriggeredMeasurement-Type: - description: See details in 3GPP TS 32.422 clause 5.10.28. - type: string - enum: - - OUT_OF_COVERAGE - - A2_EVENT - - tjMDTEventThreshold-Type: - description: See details in 3GPP TS 32.422 clause 5.10.7, 5.10.7a, 5.10.13 and 5.10.14. - type: object - properties: - EventThresholdRSRP: - type: integer - minimum: 0 - maximum: 97 - EventThresholdRSRQ: - type: integer - minimum: 0 - maximum: 34 - EventThreshold1F: - type: object - properties: - CPICH_RSCP: - type: integer - minimum: -120 - maximum: 25 - CPICH_EcNo: - type: integer - minimum: -24 - maximum: 0 - PathLoss: - type: integer - minimum: 30 - maximum: 165 - EventThreshold1I: - type: integer - minimum: -120 - maximum: 25 - - tjMDTListOfMeasurements-Type: - description: See details in 3GPP TS 32.422 clause 5.10.3 for details. - type: object - properties: - UMTS: - type: array - items: - type: string - enum: - - M1 - - M2 - - M3 - - M4 - - M5 - - M6_DL - - M6_UL - - M7_DL - - M7_UL - LTE: - type: array - items: - type: string - enum: - - M1 - - M2 - - M3 - - M4 - - M5 - - M1_EVENT_TRIGGERED - - M6 - - M7 - - M8 - - M9 - NR: - type: array - items: - type: string - enum: - - M1 - - M2 - - M3 - - M4 - - M5 - - M6 - - M7 - - M8 - - M9 - - tjMDTLoggingDuration-Type: - description: See details in 3GPP TS 32.422 clause 5.10.9. - type: string - enum: - - 600s - - 1200s - - 2400s - - 3600s - - 5400s - - 7200s - - tjMDTLoggingInterval-Type: - description: See details in 3GPP TS 32.422 clause 5.10.8. - type: string - enum: - - 1.28s - - 2.56s - - 5.12s - - 10.24s - - 20.48s - - 30.72s - - 40.96s - - 61.44s - - tjMDTMBSFNAreaList-Type: - description: See details in 3GPP TS 32.422 clause 5.10.25. - type: array - items: - type: object - properties: - mbsfnAreaId: - type: integer - minimum: 1 - earfcn: - type: integer - minimum: 1 - required: - - mbsfnAreaId - - earfcn - - tjMDTMeasurementPeriodLTE-Type: - description: See details in 3GPP TS 32.422 clause 5.10.23. - type: string - enum: - - 1024ms - - 1280ms - - 2048ms - - 2560ms - - 5120ms - - 10240ms - - 1min - - tjMDTMeasurementPeriodUMTS-Type: - description: See details in 3GPP TS 32.422 clause 5.10.22. - type: string - enum: - - 250ms - - 500ms - - 1000ms - - 2000ms - - 3000ms - - 4000ms - - 6000ms - - 8000ms - - 12000ms - - 16000ms - - 20000ms - - 24000ms - - 28000ms - - 32000ms - - 64000ms - - tjMDTMeasurementQuantity-Type: - description: See details in 3GPP TS 32.422 clause 5.10.15. - type: string - enum: - - CPICH_EcNo - - CPICH_RSCP - - PathLoss - - tjMDTPLMList-Type: - description: See details in 3GPP TS 32.422 clause 5.10.24. - type: array - items: - type: object - properties: - mcc: - $ref: '#/components/schemas/Mcc' - mnc: - $ref: '#/components/schemas/Mnc' - required: - - mcc - - mnc - maxItems: 16 - - tjMDTPositioningMethod-Type: - description: See details in 3GPP TS 32.422 clause 5.10.19. - type: string - enum: - - GNSS - - E-CELL_ID - - tjMDTReportAmount-Type: - description: See details in 3GPP TS 32.422 clause 5.10.6. - type: string - enum: - - 1 - - 2 - - 4 - - 8 - - 16 - - 32 - - 64 - - INFINITY - - tjMDTReportingTrigger-Type: - description: See details in 3GPP TS 32.422 clause 5.10.4. - type: array - items: - type: string - enum: - - PERIODICAL - - A2_FOR_LTE - - 1F_FOR_UMTS - - 1I_FOR_UMTS_MCPS_TDD - - A2_TRIGGERED_PERIODIC_FOR_LTE - - ALL_CONFIGURED_RRM_FOR_LTE - - ALL_CONFIGURED_RRM_FOR_UMTS - - tjMDTReportInterval-Type: - description: See details in 3GPP TS 32.422 clause 5.10.5. - type: string - enum: - - 250ms - - 500ms - - 1000ms - - 2000ms - - 3000ms - - 4000ms - - 6000ms - - 8000ms - - 12000ms - - 16000ms - - 20000ms - - 24000ms - - 28000ms - - 32000ms - - 64000ms - - 120ms - - 240ms - - 480ms - - 640ms - - 1024ms - - 2048ms - - 5120ms - - 10240ms - - 60000ms - - 360000ms - - 720000ms - - 1800000ms - - 3600000ms - - tjMDTReportType-Type: - description: Report type for logged NR MDT. See details in 3GPP TS 32.422 clause 5.10.27. - type: string - enum: - - PERIODICAL - - EVENT_TRIGGERED - - tjMDTSensorInformation-Type: - description: See details in 3GPP TS 32.422 clause 5.10.29. - type: array - items: - type: string - enum: - - BAROMETRIC_PRESSURE - - UE_SPEED - - UE_ORIENTATION - - tjMDTTraceCollectionEntityID-Type: - description: See details in 3GPP TS 32.422 clause 5.10.11. Only tceID value may be sent over the air to the UE being configured for Logged MDT. - type: object - properties: - tceID: - type: integer - tcePLMN: - type: object - properties: - mcc: - $ref: '#/components/schemas/Mcc' - mnc: - $ref: '#/components/schemas/Mnc' - required: - - mcc - - mnc - tceAddress: - oneOf: - - $ref: '#/components/schemas/tjTraceCollectionEntityAddress-Type' - - $ref: '#/components/schemas/tjStreamingTraceConsumerURI-Type' - required: - - tceID - - tcePLMN - - tceAddress - - -#-------- end of Definition of types used in Trace control NRM fragment ---------- - - -#-------- Definition of abstract IOC Top ----------------------------------------- - - Top-Attr: - # This definition will be deprecated, when all occurances of Top-Attr - # are replaced by Top. - type: object - properties: - id: - type: string - VsDataContainer: - $ref: '#/components/schemas/VsDataContainer-Multiple' - Top: - type: object - properties: - id: - type: string - VsDataContainer: - $ref: '#/components/schemas/VsDataContainer-Multiple' - -#-------- Definition of IOCs with new name-containments defined in other TS ------ - - SubNetwork-Attr: - type: object - properties: - dnPrefix: - type: string - userLabel: - type: string - userDefinedNetworkType: - type: string - setOfMcc: - $ref: '#/components/schemas/SetOfMcc' - priorityLabel: - type: integer - supportedPerfMetricGroups: - type: array - items: - $ref: '#/components/schemas/SupportedPerfMetricGroup' - ManagedElement-Attr: - type: object - properties: - dnPrefix: - type: string - managedElementTypeList: - $ref: '#/components/schemas/ManagedElementTypeList' - userLabel: - type: string - locationName: - type: string - managedBy: - $ref: '#/components/schemas/DnList' - vendorName: - type: string - userDefinedState: - type: string - swVersion: - type: string - priorityLabel: - type: integer - supportedPerfMetricGroups: - type: array - items: - $ref: '#/components/schemas/SupportedPerfMetricGroup' - - SubNetwork-ncO: - type: object - properties: - ManagementNode: - $ref: '#/components/schemas/ManagementNode-Multiple' - MeContext: - $ref: '#/components/schemas/MeContext-Multiple' - PerfMetricJob: - $ref: '#/components/schemas/PerfMetricJob-Multiple' - ThresholdMonitor: - $ref: '#/components/schemas/ThresholdMonitor-Multiple' - ThresholdMonitoringCapability: - $ref: '#/components/schemas/ThresholdMonitoringCapability-Single' - NtfSubscriptionControl: - $ref: '#/components/schemas/NtfSubscriptionControl-Multiple' - TraceJob: - $ref: '#/components/schemas/TraceJob-Multiple' - AlarmList: - $ref: '#/components/schemas/AlarmList-Single' - ManagedElement-ncO: - type: object - properties: - PerfMetricJob: - $ref: '#/components/schemas/PerfMetricJob-Multiple' - ThresholdMonitor: - $ref: '#/components/schemas/ThresholdMonitor-Multiple' - ThresholdMonitoringCapability: - $ref: '#/components/schemas/ThresholdMonitoringCapability-Single' - NtfSubscriptionControl: - $ref: '#/components/schemas/NtfSubscriptionControl-Multiple' - TraceJob: - $ref: '#/components/schemas/TraceJob-Multiple' - AlarmList: - $ref: '#/components/schemas/AlarmList-Single' - -#-------- Definition of abstract IOCs -------------------------------------------- - - ManagedFunction-Attr: - type: object - properties: - userLabel: - type: string - vnfParametersList: - $ref: '#/components/schemas/VnfParametersList' - peeParametersList: - $ref: '#/components/schemas/PeeParametersList' - priorityLabel: - type: integer - supportedPerfMetricGroups: - type: array - items: - $ref: '#/components/schemas/SupportedPerfMetricGroup' - EP_RP-Attr: - type: object - properties: - userLabel: - type: string - farEndEntity: - type: string - supportedPerfMetricGroups: - type: array - items: - $ref: '#/components/schemas/SupportedPerfMetricGroup' - - TraceJob-Attr: - type: object - description: abstract class used as a container of all TraceJob attributes - properties: - tjJobType: - $ref: '#/components/schemas/tjJobType-Type' - tjListOfInterfaces: - $ref: '#/components/schemas/tjListOfInterfaces-Type' - tjListOfNeTypes: - $ref: '#/components/schemas/tjListOfNeTypes-Type' - tjPLMNTarget: - $ref: '#/components/schemas/tjPLMNTaget-Type' - tjTraceConsumer: - oneOf: - - $ref: '#/components/schemas/tjStreamingTraceConsumerURI-Type' - - $ref: '#/components/schemas/tjTraceCollectionEntityAddress-Type' - tjTraceDepth: - $ref: '#/components/schemas/tjTraceDepth-Type' - tjTraceReference: - $ref: '#/components/schemas/tjTraceReference-Type' - tjTraceReportingFormat: - $ref: '#/components/schemas/tjTraceReportingFormat-Type' - tjTraceTarget: - $ref: '#/components/schemas/tjTraceTarget-Type' - tjTriggeringEvent: - $ref: '#/components/schemas/tjTriggeringEvent-Type' - tjMDTAnonymizationOfData: - $ref: '#/components/schemas/tjMDTAnonymizationOfData-Type' - tjMDTAreaConfigurationForNeighCell: - $ref: '#/components/schemas/tjMDTAreaConfigurationForNeighCell-Type' - tjMDTAreaScope: - $ref: '#/components/schemas/tjMDTAreaScope-Type' - tjMDTCollectionPeriodRrmLte: - $ref: '#/components/schemas/tjMDTCollectionPeriodRrmLte-Type' - tjMDTCollectionPeriodRrmUmts: - $ref: '#/components/schemas/tjMDTCollectionPeriodRrmUmts-Type' - tjMDTEventListForTriggeredMeasurement: - $ref: '#/components/schemas/tjMDTEventListForTriggeredMeasurement-Type' - tjMDTEventThreshold: - $ref: '#/components/schemas/tjMDTEventThreshold-Type' - tjMDTListOfMeasurements: - $ref: '#/components/schemas/tjMDTListOfMeasurements-Type' - tjMDTLoggingDuration: - $ref: '#/components/schemas/tjMDTLoggingDuration-Type' - tjMDTLoggingInterval: - $ref: '#/components/schemas/tjMDTLoggingInterval-Type' - tjMDTMBSFNAreaList: - $ref: '#/components/schemas/tjMDTMBSFNAreaList-Type' - tjMDTMeasurementPeriodLTE: - $ref: '#/components/schemas/tjMDTMeasurementPeriodLTE-Type' - tjMDTMeasurementPeriodUMTS: - $ref: '#/components/schemas/tjMDTMeasurementPeriodUMTS-Type' - tjMDTMeasurementQuantity: - $ref: '#/components/schemas/tjMDTMeasurementQuantity-Type' - tjMDTPLMList: - $ref: '#/components/schemas/tjMDTPLMList-Type' - tjMDTPositioningMethod: - $ref: '#/components/schemas/tjMDTPositioningMethod-Type' - tjMDTReportAmount: - $ref: '#/components/schemas/tjMDTReportAmount-Type' - tjMDTReportingTrigger: - $ref: '#/components/schemas/tjMDTReportingTrigger-Type' - tjMDTReportInterval: - $ref: '#/components/schemas/tjMDTReportInterval-Type' - tjMDTReportType: - $ref: '#/components/schemas/tjMDTReportType-Type' - tjMDTSensorInformation: - $ref: '#/components/schemas/tjMDTSensorInformation-Type' - tjMDTTraceCollectionEntityID: - $ref: '#/components/schemas/tjMDTTraceCollectionEntityID-Type' - required: - - tjJobType - - tjTraceReference - - tjTraceConsumer - - tjTraceReportingFormat - - tjTraceTarget - - ManagedFunction-ncO: - type: object - properties: - PerfMetricJob: - $ref: '#/components/schemas/PerfMetricJob-Multiple' - ThresholdMonitor: - $ref: '#/components/schemas/ThresholdMonitor-Multiple' - ThresholdMonitoringCapability: - $ref: '#/components/schemas/ThresholdMonitoringCapability-Single' - ManagedNFService: - $ref: '#/components/schemas/ManagedNFService-Multiple' - TraceJob: - $ref: '#/components/schemas/TraceJob-Multiple' - -#-------- Definition of concrete IOCs -------------------------------------------- - - VsDataContainer-Single: - type: object - properties: - id: - type: string - attributes: - type: object - properties: - vsDataType: - type: string - vsDataFormatVersion: - type: string - vsData: - nullable: true - VsDataContainer: - $ref: '#/components/schemas/VsDataContainer-Multiple' - ManagedNFService-Single: - allOf: - - $ref: '#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - type: object - properties: - userLabel: - type: string - nFServiceType: - $ref: '#/components/schemas/NFServiceType' - sAP: - $ref: '#/components/schemas/SAP' - operations: - $ref: '#/components/schemas/OperationList' - administrativeState: - $ref: '#/components/schemas/AdministrativeState' - operationalState: - $ref: '#/components/schemas/OperationalState' - usageState: - $ref: '#/components/schemas/UsageState' - registrationState: - $ref: '#/components/schemas/RegistrationState' - ManagementNode-Single: - allOf: - - $ref: '#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - type: object - properties: - userLabel: - type: string - managedElements: - $ref: '#/components/schemas/DnList' - vendorName: - type: string - userDefinedState: - type: string - locationName: - type: string - swVersion: - type: string - MeContext-Single: - allOf: - - $ref: '#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - type: object - properties: - dnPrefix: - type: string - PerfMetricJob-Single: - allOf: - - $ref: '#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - type: object - properties: - administrativeState: - $ref: '#/components/schemas/AdministrativeState' - operationalState: - $ref: '#/components/schemas/OperationalState' - perfMetricJobGroupId: - type: string - performanceMetrics: - type: array - items: - type: string - granularityPeriod: - type: integer - minimum: 1 - objectInstances: - $ref: '#/components/schemas/DnList' - rootObjectInstances: - $ref: '#/components/schemas/DnList' - reportingCtrl: - $ref: '#/components/schemas/ReportingCtrl' - ThresholdMonitoringCapability-Single: - allOf: - - $ref: '#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - type: object - properties: - supportedMonitoringGPs: - $ref: '#/components/schemas/MonitoringGPList' - ThresholdMonitor-Single: - allOf: - - $ref: '#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - type: object - properties: - thresholdInfoList: - $ref: '#/components/schemas/ThresholdInfoList' - monitoringGP: - type: integer - monitoringNotifTarget: - type: string - monitoredIOCName: - type: string - monitoredObjectDNs: - $ref: '#/components/schemas/DnList' - NtfSubscriptionControl-Single: - allOf: - - $ref: '#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - type: object - properties: - notificationRecipientAddress: - $ref: '#/components/schemas/Uri' - notificationTypes: - $ref: '#/components/schemas/NotificationTypes' - scope: - $ref: '#/components/schemas/Scope' - notificationFilter: - type: string - HeartbeatControl: - $ref: '#/components/schemas/HeartbeatControl-Single' - HeartbeatControl-Single: - allOf: - - $ref: '#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - type: object - properties: - heartbeatNtfPeriod: - type: integer - triggerHeartbeatNtf: - type: boolean - TraceJob-Single: - allOf: - - $ref: '#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - $ref: '#/components/schemas/TraceJob-Attr' - - AlarmList-Single: - allOf: - - $ref: '#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - type: object - properties: - administrativeState: - $ref: '#/components/schemas/AdministrativeState' - operationalState: - $ref: '#/components/schemas/OperationalState' - numOfAlarmRecords: - type: integer - lastModification: - $ref: '#/components/schemas/DateTime' - alarmRecords: - description: >- - This resource represents a map of alarm records. - The alarmIds are used as keys in the map. - type: object - additionalProperties: - $ref: 'faultMnS.yaml#/components/schemas/AlarmRecord' - -#-------- Definition of JSON arrays for name-contained IOCs ---------------------- - - VsDataContainer-Multiple: - type: array - items: - $ref: '#/components/schemas/VsDataContainer-Single' - ManagedNFService-Multiple: - type: array - items: - $ref: '#/components/schemas/ManagedNFService-Single' - ManagementNode-Multiple: - type: array - items: - $ref: '#/components/schemas/ManagementNode-Single' - MeContext-Multiple: - type: array - items: - $ref: '#/components/schemas/MeContext-Single' - PerfMetricJob-Multiple: - type: array - items: - $ref: '#/components/schemas/PerfMetricJob-Single' - ThresholdMonitor-Multiple: - type: array - items: - $ref: '#/components/schemas/ThresholdMonitor-Single' - NtfSubscriptionControl-Multiple: - type: array - items: - $ref: '#/components/schemas/NtfSubscriptionControl-Single' - TraceJob-Multiple: - type: array - items: - $ref: '#/components/schemas/TraceJob-Single' - -#-------- Definitions in TS 28.623 for TS 28.532 --------------------------------- - - resources-genericNrm: - oneOf: - - - $ref: '#/components/schemas/VsDataContainer-Single' - - - $ref: '#/components/schemas/ManagementNode-Single' - - $ref: '#/components/schemas/MeContext-Single' - - - $ref: '#/components/schemas/ManagedNFService-Single' - - - $ref: '#/components/schemas/PerfMetricJob-Single' - - - $ref: '#/components/schemas/ThresholdMonitoringCapability-Single' - - $ref: '#/components/schemas/ThresholdMonitor-Single' - - - $ref: '#/components/schemas/NtfSubscriptionControl-Single' - - $ref: '#/components/schemas/HeartbeatControl-Single' - - $ref: '#/components/schemas/TraceJob-Single' - - - $ref: '#/components/schemas/AlarmList-Single' diff --git a/OpenAPI/heartbeatNtf.yaml b/OpenAPI/heartbeatNtf.yaml deleted file mode 100644 index afde5066d..000000000 --- a/OpenAPI/heartbeatNtf.yaml +++ /dev/null @@ -1,23 +0,0 @@ -openapi: 3.0.1 -info: - title: Heartbeat notification - version: 16.3.0 - description: >- - OAS 3.0.1 specification of the heartbeat notification - © 2020, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). - All rights reserved. -externalDocs: - description: 3GPP TS 28.532 V16.3.0; Heartbeat notification - url: http://www.3gpp.org/ftp/Specs/archive/28_series/28.6532/ -paths: {} -components: - schemas: - hearbeatNtfPeriod-Type: - type: integer - notifyHeartbeat-NotifType: - allOf: - - $ref: 'provMnS.yaml#/components/schemas/header-Type' - - type: object - properties: - heartbeatNtfPeriod: - $ref: '#/components/schemas/hearbeatNtfPeriod-Type' diff --git a/OpenAPI/nrNrm.yaml b/OpenAPI/nrNrm.yaml deleted file mode 100644 index 6fffb075d..000000000 --- a/OpenAPI/nrNrm.yaml +++ /dev/null @@ -1,1869 +0,0 @@ -openapi: 3.0.1 -info: - title: NR NRM - version: 16.6.0 - description: >- - OAS 3.0.1 specification of the NR NRM - © 2020, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). - All rights reserved. -externalDocs: - description: 3GPP TS 28.541 V16.6.0; 5G NRM, NR NRM - url: http://www.3gpp.org/ftp/Specs/archive/28_series/28.541/ -paths: {} -components: - schemas: - -#-------- Definition of types----------------------------------------------------- - - GnbId: - type: string - GnbIdLength: - type: integer - minimum: 22 - maximum: 32 - GnbName: - type: string - maxLength: 150 - GnbDuId: - type: number - minimum: 0 - maximum: 68719476735 - GnbCuUpId: - type: number - minimum: 0 - maximum: 68719476735 - - Sst: - type: integer - maximum: 255 - Snssai: - type: object - properties: - sst: - $ref: '#/components/schemas/Sst' - sd: - type: string - SnssaiList: - type: array - items: - $ref: '#/components/schemas/Snssai' - - Mnc: - type: string - pattern: '[0-9]{3}|[0-9]{2}' - PlmnId: - type: object - properties: - mcc: - $ref: 'genericNrm.yaml#/components/schemas/Mcc' - mnc: - $ref: '#/components/schemas/Mnc' - PlmnIdList: - type: array - items: - $ref: '#/components/schemas/PlmnId' - PlmnInfo: - type: object - properties: - plmnId": - $ref: '#/components/schemas/PlmnId' - snssai: - $ref: '#/components/schemas/Snssai' - PlmnInfoList: - type: array - items: - $ref: '#/components/schemas/PlmnInfo' - GGnbId: - type: string - pattern: '^[0-9]{3}[0-9]{2,3}-(22|23|24|25|26|27|28|29|30|31|32)-[0-9]{1,10}' - GEnbId: - type: string - pattern: '^[0-9]{3}[0-9]{2,3}-(18|20|21|22)-[0-9]{1,7}' - - GGnbIdList: - type: array - items: - $ref: '#/components/schemas/GGnbId' - - GEnbIdList: - type: array - items: - $ref: '#/components/schemas/GEnbId' - - NrPci: - type: integer - maximum: 503 - NrTac: - type: integer - maximum: 16777215 - Tai: - type: object - properties: - plmnId: - $ref: '#/components/schemas/PlmnId' - nrTac: - $ref: '#/components/schemas/NrTac' - - BackhaulAddress: - type: object - properties: - gnbId: - $ref: '#/components/schemas/GnbId' - tai: - $ref: "#/components/schemas/Tai" - MappingSetIDBackhaulAddress: - type: object - properties: - setID: - type: integer - backhaulAddress: - $ref: '#/components/schemas/BackhaulAddress' - IntraRatEsActivationOriginalCellLoadParameters: - type: object - properties: - loadThreshold: - type: integer - timeDuration: - type: integer - IntraRatEsActivationCandidateCellsLoadParameters: - type: object - properties: - loadThreshold: - type: integer - timeDuration: - type: integer - IntraRatEsDeactivationCandidateCellsLoadParameters: - type: object - properties: - loadThreshold: - type: integer - timeDuration: - type: integer - EsNotAllowedTimePeriod: - type: object - properties: - startTimeandendTime: - type: string - periodOfDay: - type: string - daysOfWeekList: - type: string - listoftimeperiods: - type: string - InterRatEsActivationOriginalCellParameters: - type: object - properties: - loadThreshold: - type: integer - timeDuration: - type: integer - InterRatEsActivationCandidateCellParameters: - type: object - properties: - loadThreshold: - type: integer - timeDuration: - type: integer - InterRatEsDeactivationCandidateCellParameters: - type: object - properties: - loadThreshold: - type: integer - timeDuration: - type: integer - - UeAccProbilityDist: - type: object - properties: - targetProbability: - type: integer - numberofpreamblessent: - type: integer - - UeAccDelayProbilityDist: - type: object - properties: - targetProbability: - type: integer - accessdelay: - type: integer - - NRPciList: - type: object - properties: - NRPci: - type: integer - - CSonPciList: - type: object - properties: - NRPci: - type: integer - - MaximumDeviationHoTrigger: - type: integer - minimum: -20 - maximum: 20 - - MinimumTimeBetweenHoTriggerChange: - type: integer - minimum: 0 - maximum: 604800 - - TstoreUEcntxt: - type: integer - minimum: 0 - maximum: 1023 - - CellState: - type: string - enum: - - IDLE - - INACTIVE - - ACTIVE - CyclicPrefix: - type: string - enum: - - '15' - - '30' - - '60' - - '120' - TxDirection: - type: string - enum: - - DL - - UL - - DL and UL - BwpContext: - type: string - enum: - - DL - - UL - - SUL - IsInitialBwp: - type: string - enum: - - INITIAL - - OTHER - - SUL - QuotaType: - type: string - enum: - - STRICT - - FLOAT - IsESCoveredBy: - type: string - enum: - - NO - - PARTIAL - - FULL - RrmPolicyMember: - type: object - properties: - plmnId: - $ref: '#/components/schemas/PlmnId' - snssai: - $ref: '#/components/schemas/Snssai' - RrmPolicyMemberList: - type: array - items: - $ref: '#/components/schemas/RrmPolicyMember' - AddressWithVlan: - type: object - properties: - ipv4Address: - $ref: 'genericNrm.yaml#/components/schemas/Ipv4Addr' - ipv6Address: - $ref: 'genericNrm.yaml#/components/schemas/Ipv6Addr' - vlanId: - type: integer - minimum: 0 - maximum: 4096 - LocalAddress: - type: object - properties: - addressWithVlan: - $ref: '#/components/schemas/AddressWithVlan' - port: - type: integer - minimum: 0 - maximum: 65535 - RemoteAddress: - type: object - properties: - ipv4Address: - $ref: 'genericNrm.yaml#/components/schemas/Ipv4Addr' - ipv6Address: - $ref: 'genericNrm.yaml#/components/schemas/Ipv6Addr' - - CellIndividualOffset: - type: object - properties: - rsrpOffsetSSB: - type: integer - rsrqOffsetSSB: - type: integer - sinrOffsetSSB: - type: integer - rsrpOffsetCSI-RS: - type: integer - rsrqOffsetCSI-RS: - type: integer - sinrOffsetCSI-RS: - type: integer - QOffsetRange: - type: integer - enum: - - -24 - - -22 - - -20 - - -18 - - -16 - - -14 - - -12 - - -10 - - -8 - - -6 - - -5 - - -4 - - -3 - - -2 - - -1 - - 0 - - 24 - - 22 - - 20 - - 18 - - 16 - - 14 - - 12 - - 10 - - 8 - - 6 - - 5 - - 4 - - 3 - - 2 - - 1 - QOffsetRangeList: - type: object - properties: - rsrpOffsetSSB: - $ref: '#/components/schemas/QOffsetRange' - rsrqOffsetSSB: - $ref: '#/components/schemas/QOffsetRange' - sinrOffsetSSB: - $ref: '#/components/schemas/QOffsetRange' - rsrpOffsetCSI-RS: - $ref: '#/components/schemas/QOffsetRange' - rsrqOffsetCSI-RS: - $ref: '#/components/schemas/QOffsetRange' - sinrOffsetCSI-RS: - $ref: '#/components/schemas/QOffsetRange' - QOffsetFreq: - type: number - TReselectionNRSf: - type: integer - enum: - - 25 - - 50 - - 75 - - 100 - SsbPeriodicity: - type: integer - enum: - - 5 - - 10 - - 20 - - 40 - - 80 - - 160 - SsbDuration: - type: integer - enum: - - 1 - - 2 - - 3 - - 4 - - 5 - SsbSubCarrierSpacing: - type: integer - enum: - - 15 - - 30 - - 120 - - 240 - CoverageShape: - type: integer - maximum: 65535 - DigitalTilt: - type: integer - minimum: -900 - maximum: 900 - DigitalAzimuth: - type: integer - minimum: -1800 - maximum: 1800 - - RSSetId: - type: integer - maximum: 4194303 - - RSSetType: - type: string - enum: - - RS1 - - RS2 - - FrequencyDomainPara: - type: object - properties: - rimRSSubcarrierSpacing: - type: integer - rIMRSBandwidth: - type: integer - nrofGlobalRIMRSFrequencyCandidates: - type: integer - rimRSCommonCarrierReferencePoint: - type: integer - rimRSStartingFrequencyOffsetIdList: - type: array - items: - type: integer - - SequenceDomainPara: - type: object - properties: - nrofRIMRSSequenceCandidatesofRS1: - type: integer - rimRSScrambleIdListofRS1: - type: array - items: - type: integer - nrofRIMRSSequenceCandidatesofRS2: - type: integer - rimRSScrambleIdListofRS2: - type: array - items: - type: integer - enableEnoughNotEnoughIndication: - type: string - enum: - - ENABLE - - DISABLE - RIMRSScrambleTimerMultiplier: - type: integer - RIMRSScrambleTimerOffset: - type: integer - - TimeDomainPara: - type: object - properties: - dlULSwitchingPeriod1: - type: string - enum: - - MS0P5 - - MS0P625 - - MS1 - - MS1P25 - - MS2 - - MS2P5 - - MS3 - - MS4 - - MS5 - - MS10 - - MS20 - symbolOffsetOfReferencePoint1: - type: integer - dlULSwitchingPeriod2: - type: string - enum: - - MS0P5 - - MS0P625 - - MS1 - - MS1P25 - - MS2 - - MS2P5 - - MS3 - - MS4 - - MS5 - - MS10 - - MS20 - symbolOffsetOfReferencePoint2: - type: integer - totalnrofSetIdofRS1: - type: integer - totalnrofSetIdofRS2: - type: integer - nrofConsecutiveRIMRS1: - type: integer - nrofConsecutiveRIMRS2: - type: integer - consecutiveRIMRS1List: - type: array - items: - type: integer - consecutiveRIMRS2List: - type: array - items: - type: integer - enablenearfarIndicationRS1: - type: string - enum: - - ENABLE - - DISABLE - enablenearfarIndicationRS2: - type: string - enum: - - ENABLE - - DISABLE - - RimRSReportInfo: - type: object - properties: - detectedSetID: - type: integer - propagationDelay: - type: integer - functionalityOfRIMRS: - type: string - enum: - - RS1 - - RS2 - - RS1forEnoughMitigation - - RS1forNotEnoughMitigation - - RimRSReportConf: - type: object - properties: - reportIndicator: - type: string - enum: - - ENABLE - - DISABLE - reportInterval: - type: integer - nrofRIMRSReportInfo: - type: integer - maxPropagationDelay: - type: integer - rimRSReportInfoList: - type: array - items: - $ref: '#/components/schemas/RimRSReportInfo' - TceMappingInfo: - type: object - properties: - TceIPAddress: - oneOf: - - $ref: 'genericNrm.yaml#/components/schemas/Ipv4Addr' - - $ref: 'genericNrm.yaml#/components/schemas/Ipv6Addr' - TceID: - type: integer - PlmnTarget: - $ref: '#/components/schemas/PlmnId' - TceMappingInfoList: - type: array - items: - $ref: '#/components/schemas/TceMappingInfo' - - -#-------- Definition of abstract IOCs -------------------------------------------- - - RrmPolicy_-Attr: - type: object - properties: - resourceType: - type: string - rRMPolicyMemberList: - $ref: '#/components/schemas/RrmPolicyMemberList' - - -#-------- Definition of concrete IOCs -------------------------------------------- - - SubNetwork-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - $ref: 'genericNrm.yaml#/components/schemas/SubNetwork-Attr' - - $ref: 'genericNrm.yaml#/components/schemas/SubNetwork-ncO' - - type: object - properties: - SubNetwork: - $ref: '#/components/schemas/SubNetwork-Multiple' - ManagedElement: - $ref: '#/components/schemas/ManagedElement-Multiple' - NRFrequency: - $ref: '#/components/schemas/NRFrequency-Multiple' - ExternalGnbCuCpFunction: - $ref: '#/components/schemas/ExternalGnbCuCpFunction-Multiple' - ExternalENBFunction: - $ref: '#/components/schemas/ExternalENBFunction-Multiple' - EUtranFrequency: - $ref: '#/components/schemas/EUtranFrequency-Multiple' - DESManagementFunction: - $ref: '#/components/schemas/DESManagementFunction-Single' - DRACHOptimizationFunction: - $ref: '#/components/schemas/DRACHOptimizationFunction-Single' - DMROFunction: - $ref: '#/components/schemas/DMROFunction-Single' - DPCIConfigurationFunction: - $ref: '#/components/schemas/DPCIConfigurationFunction-Single' - CPCIConfigurationFunction: - $ref: '#/components/schemas/CPCIConfigurationFunction-Single' - CESManagementFunction: - $ref: '#/components/schemas/CESManagementFunction-Single' - Configurable5QISet: - $ref: '5gcNrm.yaml#/components/schemas/Configurable5QISet-Multiple' - RimRSGlobal: - $ref: '#/components/schemas/RimRSGlobal-Single' - Dynamic5QISet: - $ref: '5gcNrm.yaml#/components/schemas/Dynamic5QISet-Multiple' - - ManagedElement-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - $ref: 'genericNrm.yaml#/components/schemas/ManagedElement-Attr' - - $ref: 'genericNrm.yaml#/components/schemas/ManagedElement-ncO' - - type: object - properties: - GnbDuFunction: - $ref: '#/components/schemas/GnbDuFunction-Multiple' - GnbCuUpFunction: - $ref: '#/components/schemas/GnbCuUpFunction-Multiple' - GnbCuCpFunction: - $ref: '#/components/schemas/GnbCuCpFunction-Multiple' - DESManagementFunction: - $ref: '#/components/schemas/DESManagementFunction-Single' - DRACHOptimizationFunction: - $ref: '#/components/schemas/DRACHOptimizationFunction-Single' - DMROFunction: - $ref: '#/components/schemas/DMROFunction-Single' - DPCIConfigurationFunction: - $ref: '#/components/schemas/DPCIConfigurationFunction-Single' - CPCIConfigurationFunction: - $ref: '#/components/schemas/CPCIConfigurationFunction-Single' - CESManagementFunction: - $ref: '#/components/schemas/CESManagementFunction-Single' - Configurable5QISet: - $ref: '5gcNrm.yaml#/components/schemas/Configurable5QISet-Multiple' - Dynamic5QISet: - $ref: '5gcNrm.yaml#/components/schemas/Dynamic5QISet-Multiple' - - GnbDuFunction-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' - - type: object - properties: - gnbDuId: - $ref: '#/components/schemas/GnbDuId' - gnbDuName: - $ref: '#/components/schemas/GnbName' - gnbId: - $ref: '#/components/schemas/GnbId' - gnbIdLength: - $ref: '#/components/schemas/GnbIdLength' - rimRSReportConf: - $ref: '#/components/schemas/RimRSReportConf' - - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' - - type: object - properties: - RRMPolicyRatio: - $ref: '#/components/schemas/RRMPolicyRatio-Multiple' - NrCellDu: - $ref: '#/components/schemas/NrCellDu-Multiple' - Bwp-Multiple: - $ref: '#/components/schemas/Bwp-Multiple' - NrSectorCarrier-Multiple: - $ref: '#/components/schemas/NrSectorCarrier-Multiple' - EP_F1C: - $ref: '#/components/schemas/EP_F1C-Single' - EP_F1U: - $ref: '#/components/schemas/EP_F1U-Multiple' - DRACHOptimizationFunction: - $ref: '#/components/schemas/DRACHOptimizationFunction-Single' - GnbCuUpFunction-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' - - type: object - properties: - gnbId: - $ref: '#/components/schemas/GnbId' - gnbIdLength: - $ref: '#/components/schemas/GnbIdLength' - gnbCuUpId: - $ref: '#/components/schemas/GnbCuUpId' - plmnInfoList: - $ref: '#/components/schemas/PlmnInfoList' - configurable5QISetRef: - $ref: 'genericNrm.yaml#/components/schemas/Dn' - dynamic5QISetRef: - $ref: 'genericNrm.yaml#/components/schemas/Dn' - - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' - - type: object - properties: - RRMPolicyRatio: - $ref: '#/components/schemas/RRMPolicyRatio-Multiple' - EP_E1: - $ref: '#/components/schemas/EP_E1-Single' - EP_XnU: - $ref: '#/components/schemas/EP_XnU-Multiple' - EP_F1U: - $ref: '#/components/schemas/EP_F1U-Multiple' - EP_NgU: - $ref: '#/components/schemas/EP_NgU-Multiple' - EP_X2U: - $ref: '#/components/schemas/EP_X2U-Multiple' - EP_S1U: - $ref: '#/components/schemas/EP_S1U-Multiple' - GnbCuCpFunction-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' - - type: object - properties: - gnbId: - $ref: '#/components/schemas/GnbId' - gnbIdLength: - $ref: '#/components/schemas/GnbIdLength' - gnbCuName: - $ref: '#/components/schemas/GnbName' - plmnId: - $ref: '#/components/schemas/PlmnId' - x2BlackList: - $ref: '#/components/schemas/GGnbIdList' - xnBlackList: - $ref: '#/components/schemas/GGnbIdList' - x2WhiteList: - $ref: '#/components/schemas/GGnbIdList' - xnWhiteList: - $ref: '#/components/schemas/GGnbIdList' - x2XnHOBlackList: - $ref: '#/components/schemas/GEnbIdList' - mappingSetIDBackhaulAddress: - $ref: '#/components/schemas/MappingSetIDBackhaulAddress' - tceMappingInfoList: - $ref: '#/components/schemas/TceMappingInfoList' - configurable5QISetRef: - $ref: 'genericNrm.yaml#/components/schemas/Dn' - dynamic5QISetRef: - $ref: 'genericNrm.yaml#/components/schemas/Dn' - - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' - - type: object - properties: - RRMPolicyRatio: - $ref: '#/components/schemas/RRMPolicyRatio-Multiple' - NrCellCu: - $ref: '#/components/schemas/NrCellCu-Multiple' - EP_XnC: - $ref: '#/components/schemas/EP_XnC-Multiple' - EP_E1: - $ref: '#/components/schemas/EP_E1-Multiple' - EP_F1C: - $ref: '#/components/schemas/EP_F1C-Multiple' - EP_NgC: - $ref: '#/components/schemas/EP_NgC-Multiple' - EP_X2C: - $ref: '#/components/schemas/EP_X2C-Multiple' - DANRManagementFunction: - $ref: '#/components/schemas/DANRManagementFunction-Single' - DESManagementFunction: - $ref: '#/components/schemas/DESManagementFunction-Single' - DMROFunction: - $ref: '#/components/schemas/DMROFunction-Single' - - NrCellCu-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' - - type: object - properties: - cellLocalId: - type: integer - plmnInfoList: - $ref: '#/components/schemas/PlmnInfoList' - nRFrequencyRef: - $ref: 'genericNrm.yaml#/components/schemas/Dn' - - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' - - type: object - properties: - RRMPolicyRatio: - $ref: '#/components/schemas/RRMPolicyRatio-Multiple' - NRCellRelation: - $ref: '#/components/schemas/NRCellRelation-Multiple' - EUtranCellRelation: - $ref: '#/components/schemas/EUtranCellRelation-Multiple' - NRFreqRelation: - $ref: '#/components/schemas/NRFreqRelation-Multiple' - EUtranFreqRelation: - $ref: '#/components/schemas/EUtranFreqRelation-Multiple' - DESManagementFunction: - $ref: '#/components/schemas/DESManagementFunction-Single' - DMROFunction: - $ref: '#/components/schemas/DMROFunction-Single' - CESManagementFunction: - $ref: '#/components/schemas/CESManagementFunction-Single' - DPCIConfigurationFunction: - $ref: '#/components/schemas/DPCIConfigurationFunction-Single' - - NrCellDu-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' - - type: object - properties: - administrativeState: - $ref: 'genericNrm.yaml#/components/schemas/AdministrativeState' - operationalState: - $ref: 'genericNrm.yaml#/components/schemas/OperationalState' - cellLocalId: - type: integer - cellState: - $ref: '#/components/schemas/CellState' - plmnInfoList: - $ref: '#/components/schemas/PlmnInfoList' - nrPci: - $ref: '#/components/schemas/NrPci' - nrTac: - $ref: '#/components/schemas/NrTac' - arfcnDL: - type: integer - arfcnUL: - type: integer - arfcnSUL: - type: integer - bSChannelBwDL: - type: integer - bSChannelBwUL: - type: integer - bSChannelBwSUL: - type: integer - ssbFrequency: - type: integer - minimum: 0 - maximum: 3279165 - ssbPeriodicity: - $ref: '#/components/schemas/SsbPeriodicity' - ssbSubCarrierSpacing: - $ref: '#/components/schemas/SsbSubCarrierSpacing' - ssbOffset: - type: integer - minimum: 0 - maximum: 159 - ssbDuration: - $ref: '#/components/schemas/SsbDuration' - nrSectorCarrierRef: - type: array - items: - $ref: 'genericNrm.yaml#/components/schemas/Dn' - bwpRef: - type: array - items: - $ref: 'genericNrm.yaml#/components/schemas/Dn' - nRFrequencyRef: - $ref: 'genericNrm.yaml#/components/schemas/Dn' - victimSetRef: - $ref: 'genericNrm.yaml#/components/schemas/Dn' - aggressorSetRef: - $ref: 'genericNrm.yaml#/components/schemas/Dn' - - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' - - type: object - properties: - RRMPolicyRatio: - $ref: '#/components/schemas/RRMPolicyRatio-Multiple' - CPCIConfigurationFunction: - $ref: '#/components/schemas/CPCIConfigurationFunction-Single' - DRACHOptimizationFunction: - $ref: '#/components/schemas/DRACHOptimizationFunction-Single' - - NRFrequency-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - type: object - properties: - absoluteFrequencySSB: - type: integer - minimum: 0 - maximum: 3279165 - ssbSubCarrierSpacing: - $ref: '#/components/schemas/SsbSubCarrierSpacing' - multiFrequencyBandListNR: - type: integer - minimum: 1 - maximum: 256 - EUtranFrequency-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - type: object - properties: - earfcnDL: - type: integer - minimum: 0 - maximum: 262143 - multiBandInfoListEutra: - type: integer - minimum: 1 - maximum: 256 - - NrSectorCarrier-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' - - type: object - properties: - txDirection: - $ref: '#/components/schemas/TxDirection' - configuredMaxTxPower: - type: integer - arfcnDL: - type: integer - arfcnUL: - type: integer - bSChannelBwDL: - type: integer - bSChannelBwUL: - type: integer - sectorEquipmentFunctionRef: - $ref: 'genericNrm.yaml#/components/schemas/Dn' - - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' - - type: object - properties: - CommonBeamformingFunction: - $ref: '#/components/schemas/CommonBeamformingFunction-Single' - Bwp-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' - - type: object - properties: - bwpContext: - $ref: '#/components/schemas/BwpContext' - isInitialBwp: - $ref: '#/components/schemas/IsInitialBwp' - subCarrierSpacing: - type: integer - cyclicPrefix: - $ref: '#/components/schemas/CyclicPrefix' - startRB: - type: integer - numberOfRBs: - type: integer - - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' - CommonBeamformingFunction-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - allOf: - - type: object - properties: - coverageShape: - $ref: '#/components/schemas/CoverageShape' - digitalAzimuth: - $ref: '#/components/schemas/DigitalAzimuth' - digitalTilt: - $ref: '#/components/schemas/DigitalTilt' - - type: object - properties: - Beam: - $ref: '#/components/schemas/Beam-Multiple' - Beam-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - allOf: - - type: object - properties: - beamIndex: - type: integer - beamType: - type: string - enum: - - SSB-BEAM - beamAzimuth: - type: integer - minimum: -1800 - maximum: 1800 - beamTilt: - type: integer - minimum: -900 - maximum: 900 - beamHorizWidth: - type: integer - minimum: 0 - maximum: 3599 - beamVertWidth: - type: integer - minimum: 0 - maximum: 1800 - RRMPolicyRatio-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - allOf: - - $ref: '#/components/schemas/RrmPolicy_-Attr' - - type: object - properties: - rRMPolicyMaxRatio: - type: integer - rRMPolicyMinRatio: - type: integer - rRMPolicyDedicatedRatio: - type: integer - - NRCellRelation-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - type: object - properties: - nRTCI: - type: integer - cellIndividualOffset: - $ref: '#/components/schemas/CellIndividualOffset' - adjacentNRCellRef: - $ref: 'genericNrm.yaml#/components/schemas/Dn' - nRFrequencyRef: - $ref: 'genericNrm.yaml#/components/schemas/Dn' - isRemoveAllowed: - type: boolean - isHOAllowed: - type: boolean - isESCoveredBy: - $ref: '#/components/schemas/IsESCoveredBy' - isENDCAllowed: - type: boolean - isMLBAllowed: - type: boolean - EUtranCellRelation-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' - - type: object - properties: - adjacentEUtranCellRef: - $ref: 'genericNrm.yaml#/components/schemas/Dn' - - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' - NRFreqRelation-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - type: object - properties: - offsetMO: - $ref: '#/components/schemas/QOffsetRangeList' - blackListEntry: - type: array - items: - type: integer - minimum: 0 - maximum: 1007 - blackListEntryIdleMode: - type: integer - cellReselectionPriority: - type: integer - cellReselectionSubPriority: - type: number - minimum: 0.2 - maximum: 0.8 - multipleOf: 0.2 - pMax: - type: integer - minimum: -30 - maximum: 33 - qOffsetFreq: - $ref: '#/components/schemas/QOffsetFreq' - qQualMin: - type: number - qRxLevMin: - type: integer - minimum: -140 - maximum: -44 - threshXHighP: - type: integer - minimum: 0 - maximum: 62 - threshXHighQ: - type: integer - minimum: 0 - maximum: 31 - threshXLowP: - type: integer - minimum: 0 - maximum: 62 - threshXLowQ: - type: integer - minimum: 0 - maximum: 31 - tReselectionNr: - type: integer - minimum: 0 - maximum: 7 - tReselectionNRSfHigh: - $ref: '#/components/schemas/TReselectionNRSf' - tReselectionNRSfMedium: - $ref: '#/components/schemas/TReselectionNRSf' - nRFrequencyRef: - $ref: 'genericNrm.yaml#/components/schemas/Dn' - EUtranFreqRelation-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - type: object - properties: - cellIndividualOffset: - $ref: '#/components/schemas/CellIndividualOffset' - blackListEntry: - type: array - items: - type: integer - minimum: 0 - maximum: 1007 - blackListEntryIdleMode: - type: integer - cellReselectionPriority: - type: integer - cellReselectionSubPriority: - type: number - minimum: 0.2 - maximum: 0.8 - multipleOf: 0.2 - pMax: - type: integer - minimum: -30 - maximum: 33 - qOffsetFreq: - $ref: '#/components/schemas/QOffsetFreq' - qQualMin: - type: number - qRxLevMin: - type: integer - minimum: -140 - maximum: -44 - threshXHighP: - type: integer - minimum: 0 - maximum: 62 - threshXHighQ: - type: integer - minimum: 0 - maximum: 31 - threshXLowP: - type: integer - minimum: 0 - maximum: 62 - threshXLowQ: - type: integer - minimum: 0 - maximum: 31 - tReselectionEutran: - type: integer - minimum: 0 - maximum: 7 - tReselectionNRSfHigh: - $ref: '#/components/schemas/TReselectionNRSf' - tReselectionNRSfMedium: - $ref: '#/components/schemas/TReselectionNRSf' - eUTranFrequencyRef: - $ref: 'genericNrm.yaml#/components/schemas/Dn' - DANRManagementFunction-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - type: object - properties: - intrasystemANRManagementSwitch: - type: boolean - intersystemANRManagementSwitch: - type: boolean - - DESManagementFunction-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - type: object - properties: - desSwitch: - type: boolean - intraRatEsActivationOriginalCellLoadParameters: - $ref: "#/components/schemas/IntraRatEsActivationOriginalCellLoadParameters" - intraRatEsActivationCandidateCellsLoadParameters: - $ref: "#/components/schemas/IntraRatEsActivationCandidateCellsLoadParameters" - intraRatEsDeactivationCandidateCellsLoadParameters: - $ref: "#/components/schemas/IntraRatEsDeactivationCandidateCellsLoadParameters" - esNotAllowedTimePeriod: - $ref: "#/components/schemas/EsNotAllowedTimePeriod" - interRatEsActivationOriginalCellParameters: - $ref: "#/components/schemas/IntraRatEsActivationOriginalCellLoadParameters" - interRatEsActivationCandidateCellParameters: - $ref: "#/components/schemas/IntraRatEsActivationOriginalCellLoadParameters" - interRatEsDeactivationCandidateCellParameters: - $ref: "#/components/schemas/IntraRatEsActivationOriginalCellLoadParameters" - isProbingCapable: - type: string - enum: - - yes - - no - energySavingState: - type: string - enum: - - isNotEnergySaving - - isEnergySaving - - DRACHOptimizationFunction-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - type: object - properties: - drachOptimizationControl: - type: boolean - ueAccProbilityDist: - $ref: "#/components/schemas/UeAccProbilityDist" - ueAccDelayProbilityDist: - $ref: "#/components/schemas/UeAccDelayProbilityDist" - - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' - - DMROFunction-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - type: object - properties: - dmroControl: - type: boolean - maximumDeviationHoTrigger: - $ref: '#/components/schemas/MaximumDeviationHoTrigger' - minimumTimeBetweenHoTriggerChange: - $ref: '#/components/schemas/MinimumTimeBetweenHoTriggerChange' - tstoreUEcntxt: - $ref: '#/components/schemas/TstoreUEcntxt' - - DPCIConfigurationFunction-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - type: object - properties: - dPciConfigurationControl: - type: boolean - nRPciList: - $ref: "#/components/schemas/NRPciList" - - CPCIConfigurationFunction-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - type: object - properties: - cPciConfigurationControl: - type: boolean - cSonPciList: - $ref: "#/components/schemas/CSonPciList" - - CESManagementFunction-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - type: object - properties: - cesSwitch: - type: boolean - energySavingControl: - type: string - enum: - - toBeEnergySaving - - toBeNotEnergySaving - energySavingState: - type: string - enum: - - isNotEnergySaving - - isEnergySaving - - RimRSGlobal-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - type: object - properties: - frequencyDomainPara: - $ref: '#/components/schemas/FrequencyDomainPara' - sequenceDomainPara: - $ref: '#/components/schemas/SequenceDomainPara' - timeDomainPara: - $ref: '#/components/schemas/TimeDomainPara' - RimRSSet: - $ref: '#/components/schemas/RimRSSet-Multiple' - - RimRSSet-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - type: object - properties: - setId: - $ref: '#/components/schemas/RSSetId' - setType: - $ref: '#/components/schemas/RSSetType' - rimRSMonitoringStartTime: - type: string - rimRSMonitoringStopTime: - type: string - rimRSMonitoringWindowDuration: - type: integer - rimRSMonitoringWindowStartingOffset: - type: integer - rimRSMonitoringWindowPeriodicity: - type: integer - rimRSMonitoringOccasionInterval: - type: integer - rimRSMonitoringOccasionStartingOffset: - type: integer - nRCellDURefs: - $ref: 'genericNrm.yaml#/components/schemas/DnList' - - ExternalGnbDuFunction-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' - - type: object - properties: - gnbId: - $ref: '#/components/schemas/GnbId' - gnbIdLength: - $ref: '#/components/schemas/GnbIdLength' - - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' - - type: object - properties: - EP_F1C: - $ref: '#/components/schemas/EP_F1C-Multiple' - EP_F1U: - $ref: '#/components/schemas/EP_F1U-Multiple' - ExternalGnbCuUpFunction-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' - - type: object - properties: - gnbId: - $ref: '#/components/schemas/GnbId' - gnbIdLength: - $ref: '#/components/schemas/GnbIdLength' - - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' - - type: object - properties: - EP_E1: - $ref: '#/components/schemas/EP_E1-Multiple' - EP_F1U: - $ref: '#/components/schemas/EP_F1U-Multiple' - EP_XnU: - $ref: '#/components/schemas/EP_XnU-Multiple' - ExternalGnbCuCpFunction-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - allOf: - - $ref: >- - genericNrm.yaml#/components/schemas/ManagedFunction-Attr - - type: object - properties: - gnbId: - $ref: '#/components/schemas/GnbId' - gnbIdLength: - $ref: '#/components/schemas/GnbIdLength' - plmnId: - $ref: '#/components/schemas/PlmnId' - - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' - - type: object - properties: - ExternalNrCellCu: - $ref: '#/components/schemas/ExternalNrCellCu-Multiple' - EP_XnC: - $ref: '#/components/schemas/EP_XnC-Multiple' - EP_E1: - $ref: '#/components/schemas/EP_E1-Multiple' - EP_F1C: - $ref: '#/components/schemas/EP_F1C-Multiple' - ExternalNrCellCu-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' - - type: object - properties: - cellLocalId: - type: integer - nrPci: - $ref: '#/components/schemas/NrPci' - plmnIdList: - $ref: '#/components/schemas/PlmnIdList' - nRFrequencyRef: - $ref: 'genericNrm.yaml#/components/schemas/Dn' - - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' - ExternalENBFunction-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' - - type: object - properties: - eNBId: - type: integer - - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' - - type: object - properties: - ExternalEUTranCell: - $ref: '#/components/schemas/ExternalEUTranCell-Multiple' - ExternalEUTranCell-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' - - type: object - properties: - EUtranFrequencyRef: - $ref: 'genericNrm.yaml#/components/schemas/Dn' - - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' - - EP_XnC-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' - - type: object - properties: - localAddress: - $ref: '#/components/schemas/LocalAddress' - remoteAddress: - $ref: '#/components/schemas/RemoteAddress' - EP_E1-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' - - type: object - properties: - localAddress: - $ref: '#/components/schemas/LocalAddress' - remoteAddress: - $ref: '#/components/schemas/RemoteAddress' - EP_F1C-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' - - type: object - properties: - localAddress: - $ref: '#/components/schemas/LocalAddress' - remoteAddress: - $ref: '#/components/schemas/RemoteAddress' - EP_NgC-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' - - type: object - properties: - localAddress: - $ref: '#/components/schemas/LocalAddress' - remoteAddress: - $ref: '#/components/schemas/RemoteAddress' - EP_X2C-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' - - type: object - properties: - localAddress: - $ref: '#/components/schemas/LocalAddress' - remoteAddress: - $ref: '#/components/schemas/RemoteAddress' - EP_XnU-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' - - type: object - properties: - localAddress: - $ref: '#/components/schemas/LocalAddress' - remoteAddress: - $ref: '#/components/schemas/RemoteAddress' - EP_F1U-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' - - type: object - properties: - localAddress: - $ref: '#/components/schemas/LocalAddress' - remoteAddress: - $ref: '#/components/schemas/RemoteAddress' - EP_NgU-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' - - type: object - properties: - localAddress: - $ref: '#/components/schemas/LocalAddress' - remoteAddress: - $ref: '#/components/schemas/RemoteAddress' - epTransportRefs: - $ref: 'genericNrm.yaml#/components/schemas/DnList' - - EP_X2U-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' - - type: object - properties: - localAddress: - $ref: '#/components/schemas/LocalAddress' - remoteAddress: - $ref: '#/components/schemas/RemoteAddress' - EP_S1U-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' - - type: object - properties: - localAddress: - $ref: '#/components/schemas/LocalAddress' - remoteAddress: - $ref: '#/components/schemas/RemoteAddress' - -#-------- Definition of JSON arrays for name-contained IOCs ---------------------- - - SubNetwork-Multiple: - type: array - items: - $ref: '#/components/schemas/SubNetwork-Single' - ManagedElement-Multiple: - type: array - items: - $ref: '#/components/schemas/ManagedElement-Single' - GnbDuFunction-Multiple: - type: array - items: - $ref: '#/components/schemas/GnbDuFunction-Single' - GnbCuUpFunction-Multiple: - type: array - items: - $ref: '#/components/schemas/GnbCuUpFunction-Single' - GnbCuCpFunction-Multiple: - type: array - items: - $ref: '#/components/schemas/GnbCuCpFunction-Single' - - NrCellDu-Multiple: - type: array - items: - $ref: '#/components/schemas/NrCellDu-Single' - NrCellCu-Multiple: - type: array - items: - $ref: '#/components/schemas/NrCellCu-Single' - - NRFrequency-Multiple: - type: array - minItems: 1 - items: - $ref: '#/components/schemas/NRFrequency-Single' - EUtranFrequency-Multiple: - type: array - minItems: 1 - items: - $ref: '#/components/schemas/EUtranFrequency-Single' - - NrSectorCarrier-Multiple: - type: array - items: - $ref: '#/components/schemas/NrSectorCarrier-Single' - Bwp-Multiple: - type: array - items: - $ref: '#/components/schemas/Bwp-Single' - Beam-Multiple: - type: array - items: - $ref: '#/components/schemas/Beam-Single' - RRMPolicyRatio-Multiple: - type: array - items: - $ref: '#/components/schemas/RRMPolicyRatio-Single' - - NRCellRelation-Multiple: - type: array - items: - $ref: '#/components/schemas/NRCellRelation-Single' - EUtranCellRelation-Multiple: - type: array - items: - $ref: '#/components/schemas/EUtranCellRelation-Single' - NRFreqRelation-Multiple: - type: array - items: - $ref: '#/components/schemas/NRFreqRelation-Single' - EUtranFreqRelation-Multiple: - type: array - items: - $ref: '#/components/schemas/EUtranFreqRelation-Single' - - RimRSSet-Multiple: - type: array - items: - $ref: '#/components/schemas/RimRSSet-Single' - - ExternalGnbDuFunction-Multiple: - type: array - items: - $ref: '#/components/schemas/ExternalGnbDuFunction-Single' - ExternalGnbCuUpFunction-Multiple: - type: array - items: - $ref: '#/components/schemas/ExternalGnbCuUpFunction-Single' - ExternalGnbCuCpFunction-Multiple: - type: array - items: - $ref: '#/components/schemas/ExternalGnbCuCpFunction-Single' - ExternalNrCellCu-Multiple: - type: array - items: - $ref: '#/components/schemas/ExternalNrCellCu-Single' - - ExternalENBFunction-Multiple: - type: array - items: - $ref: '#/components/schemas/ExternalENBFunction-Single' - ExternalEUTranCell-Multiple: - type: array - items: - $ref: '#/components/schemas/ExternalEUTranCell-Single' - - EP_E1-Multiple: - type: array - items: - $ref: '#/components/schemas/EP_E1-Single' - EP_XnC-Multiple: - type: array - items: - $ref: '#/components/schemas/EP_XnC-Single' - EP_F1C-Multiple: - type: array - items: - $ref: '#/components/schemas/EP_F1C-Single' - EP_NgC-Multiple: - type: array - items: - $ref: '#/components/schemas/EP_NgC-Single' - EP_X2C-Multiple: - type: array - items: - $ref: '#/components/schemas/EP_X2C-Single' - EP_XnU-Multiple: - type: array - items: - $ref: '#/components/schemas/EP_XnU-Single' - EP_F1U-Multiple: - type: array - items: - $ref: '#/components/schemas/EP_F1U-Single' - EP_NgU-Multiple: - type: array - items: - $ref: '#/components/schemas/EP_NgU-Single' - EP_X2U-Multiple: - type: array - items: - $ref: '#/components/schemas/EP_X2U-Single' - EP_S1U-Multiple: - type: array - items: - $ref: '#/components/schemas/EP_S1U-Single' - -#-------- Definitions in TS 28.541 for TS 28.532 --------------------------------- - - resources-nrNrm: - oneOf: - - $ref: '#/components/schemas/SubNetwork-Single' - - $ref: '#/components/schemas/ManagedElement-Single' - - - $ref: '#/components/schemas/GnbDuFunction-Single' - - $ref: '#/components/schemas/GnbCuUpFunction-Single' - - $ref: '#/components/schemas/GnbCuCpFunction-Single' - - - $ref: '#/components/schemas/NrCellCu-Single' - - $ref: '#/components/schemas/NrCellDu-Single' - - - $ref: '#/components/schemas/NRFrequency-Single' - - $ref: '#/components/schemas/EUtranFrequency-Single' - - - $ref: '#/components/schemas/NrSectorCarrier-Single' - - $ref: '#/components/schemas/Bwp-Single' - - $ref: '#/components/schemas/CommonBeamformingFunction-Single' - - $ref: '#/components/schemas/Beam-Single' - - $ref: '#/components/schemas/RRMPolicyRatio-Single' - - - $ref: '#/components/schemas/NRCellRelation-Single' - - $ref: '#/components/schemas/EUtranCellRelation-Single' - - $ref: '#/components/schemas/NRFreqRelation-Single' - - $ref: '#/components/schemas/EUtranFreqRelation-Single' - - - $ref: '#/components/schemas/DANRManagementFunction-Single' - - $ref: '#/components/schemas/DESManagementFunction-Single' - - $ref: '#/components/schemas/DRACHOptimizationFunction-Single' - - $ref: '#/components/schemas/DMROFunction-Single' - - $ref: '#/components/schemas/DPCIConfigurationFunction-Single' - - $ref: '#/components/schemas/CPCIConfigurationFunction-Single' - - $ref: '#/components/schemas/CESManagementFunction-Single' - - - $ref: '#/components/schemas/RimRSGlobal-Single' - - $ref: '#/components/schemas/RimRSSet-Single' - - - $ref: '#/components/schemas/ExternalGnbDuFunction-Single' - - $ref: '#/components/schemas/ExternalGnbCuUpFunction-Single' - - $ref: '#/components/schemas/ExternalGnbCuCpFunction-Single' - - $ref: '#/components/schemas/ExternalNrCellCu-Single' - - $ref: '#/components/schemas/ExternalENBFunction-Single' - - $ref: '#/components/schemas/ExternalEUTranCell-Single' - - - $ref: '#/components/schemas/EP_XnC-Single' - - $ref: '#/components/schemas/EP_E1-Single' - - $ref: '#/components/schemas/EP_F1C-Single' - - $ref: '#/components/schemas/EP_NgC-Single' - - $ref: '#/components/schemas/EP_X2C-Single' - - $ref: '#/components/schemas/EP_XnU-Single' - - $ref: '#/components/schemas/EP_F1U-Single' - - $ref: '#/components/schemas/EP_NgU-Single' - - $ref: '#/components/schemas/EP_X2U-Single' - - $ref: '#/components/schemas/EP_S1U-Single' diff --git a/OpenAPI/provMnS.yaml b/OpenAPI/provMnS.yaml deleted file mode 100644 index b2f84a4d2..000000000 --- a/OpenAPI/provMnS.yaml +++ /dev/null @@ -1,579 +0,0 @@ -openapi: 3.0.1 -info: - title: Provisioning MnS - version: 16.4.0 - description: >- - OAS 3.0.1 definition of the Provisioning MnS - © 2020, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). - All rights reserved. -externalDocs: - description: 3GPP TS 28.532 V16.4.0; Generic management services - url: http://www.3gpp.org/ftp/Specs/archive/28_series/28.532/ -servers: - - url: 'http://{URI-DN-prefix}/{root}/ProvMnS/v1640/{LDN-first-part}' - variables: - URI-DN-prefix: - description: See subclause 4.4 of TS 32.158 - default: example.com - root: - description: See subclause 4.4 of TS 32.158 - default: 3GPPManagement - LDN-first-part: - description: See subclause 4.4 of TS 32.158 - default: '' -paths: - '/{className}={id}': - parameters: - - name: className - in: path - required: true - schema: - $ref: '#/components/schemas/className-PathType' - - name: id - in: path - required: true - schema: - $ref: '#/components/schemas/id-PathType' - put: - summary: Replaces a complete single resource or creates it if it does not exist - description: >- - With HTTP PUT a complete resource is replaced or created if it does not - exist. The target resource is identified by the target URI. - requestBody: - required: true - content: - application/json: - schema: - $ref: '#/components/schemas/resourcePut-RequestType' - responses: - '200': - description: >- - Success case ("200 OK"). - This status code shall be returned when the resource is replaced, and - when the replaced resource representation is not identical to the resource - representation in the request. - This status code may be retourned when the resource is updated and when the - updated resource representation is identical to the resource representation - in the request. - The representation of the updated resource is returned in the response - message body. - content: - application/json: - schema: - $ref: '#/components/schemas/resourceUpdate-ResponseType' - '201': - description: >- - Success case ("201 Created"). - This status code shall be returned when the resource is created. - The representation of the created resource is returned in the response - message body. - content: - application/json: - schema: - $ref: '#/components/schemas/resourceCreation-ResponseType' - '204': - description: >- - Success case ("204 No Content"). - This status code may be returned only when the replaced resource - representation is identical to the representation in the request. - The response has no message body. - default: - description: Error case. - content: - application/json: - schema: - $ref: '#/components/schemas/error-ResponseType' - callbacks: - notifyMOICreation: - '{request.body#/notificationRecipientAddress}': - post: - requestBody: - required: true - content: - application/json: - schema: - $ref: '#/components/schemas/notifyMOICreation-NotifType' - responses: - '204': - description: >- - Success case ("204 No Content"). - The notification is successfully delivered. The response - has no message body. - default: - description: Error case. - content: - application/json: - schema: - $ref: '#/components/schemas/error-ResponseType' - notifyMOIDeletion: - '{request.body#/notificationRecipientAddress}': - post: - requestBody: - required: true - content: - application/json: - schema: - $ref: '#/components/schemas/notifyMOIDeletion-NotifType' - responses: - '204': - description: >- - Success case ("204 No Content"). - The notification is successfully delivered. The response - has no message body. - default: - description: Error case. - content: - application/json: - schema: - $ref: '#/components/schemas/error-ResponseType' - notifyMOIAttributeValueChange: - '{request.body#/notificationRecipientAddress}': - post: - requestBody: - required: true - content: - application/json: - schema: - $ref: '#/components/schemas/notifyMOIAttributeValueChange-NotifType' - responses: - '204': - description: >- - Success case ("204 No Content"). - The notification is successfully delivered. The response - has no message body. - default: - description: Error case. - content: - application/json: - schema: - $ref: '#/components/schemas/error-ResponseType' - notifyMOIChanges: - '{request.body#/notificationRecipientAddress}': - post: - requestBody: - required: true - content: - application/json: - schema: - $ref: '#/components/schemas/notifyMOIChanges-NotifType' - responses: - '204': - description: >- - Success case ("204 No Content"). - The notification is successfully delivered. The response - has no message body. - default: - description: Error case. - content: - application/json: - schema: - $ref: '#/components/schemas/error-ResponseType' - get: - summary: Reads one or multiple resources - description: >- - With HTTP GET resources are read. The resources to be retrieved are - identified with the target URI. The attributes and fields parameter - of the query components allow to select the resource properties to be returned. - parameters: - - name: scope - in: query - description: >- - This parameter extends the set of targeted resources beyond the base - resource identified with the path component of the URI. No scoping - mechanism is specified in the present document. - required: false - schema: - $ref: '#/components/schemas/scope-QueryType' - style: form - explode: true - - name: filter - in: query - description: >- - This parameter reduces the targeted set of resources by applying a - filter to the scoped set of resource representations. Only resource - representations for which the filter construct evaluates to "true" - are targeted. No filter language is specified in the present - document. - required: false - schema: - $ref: '#/components/schemas/filter-QueryType' - - name: attributes - in: query - description: >- - This parameter specifies the attributes of the scoped resources that - are returned. - required: true - schema: - $ref: '#/components/schemas/attributes-QueryType' - style: form - explode: false - - name: fields - in: query - description: >- - This parameter specifies the attribute field of the scoped resources - that are returned. - required: false - schema: - $ref: '#/components/schemas/fields-QueryType' - style: form - explode: false - responses: - '200': - description: >- - Success case ("200 OK"). - The resources identified in the request for retrieval are returned - in the response message body. In case the attributes or fields query - parameters are used, only the selected attributes or sub-attributes are - returned. The response message body is constructed according to the - hierarchical response construction method (TS 32.158 [15]). - content: - application/json: - schema: - $ref: '#/components/schemas/resourceRetrieval-ResponseType' - default: - description: Error case. - content: - application/json: - schema: - $ref: '#/components/schemas/error-ResponseType' - patch: - summary: Patches one or multiple resources - description: >- - With HTTP PATCH resources are created, updated or deleted. The resources - to be modified are identified with the target URI (base resource) and - the patch document included in the request message body. - requestBody: - description: >- - The request body describes changes to be made to the target resources. - The following patch media types are available - - "application/merge-patch+json" (RFC 7396) - - "application/3gpp-merge-patch+json" (TS 32.158) - - "application/json-patch+json" (RFC 6902) - - "application/3gpp-json-patch+json" (TS 32.158) - required: true - content: - application/merge-patch+json: - schema: - $ref: '#/components/schemas/jsonMergePatch-RequestType' - application/3gpp-merge-patch+json: - schema: - $ref: '#/components/schemas/3gppJsonMergePatch-RequestType' - application/json-patch+json: - schema: - $ref: '#/components/schemas/jsonPatch-RequestType' - application/3gpp-json-patch+json: - schema: - $ref: '#/components/schemas/3gppJsonPatch-RequestType' - responses: - '200': - description: >- - Success case ("200 OK"). - This status code is returned when the updated the resource representations - shall be returned for some reason. - The resource representations are returned in the response message body. The - response message body is constructed according to the hierarchical response - construction method (TS 32.158 [15]) - content: - application/json: - schema: - $ref: '#/components/schemas/resourceUpdate-ResponseType' - '204': - description: >- - Success case ("204 No Content"). - This status code is returned when there is no need to return the updated - resource representations. - The response message body is empty. - default: - description: Error case. - content: - application/json: - schema: - $ref: '#/components/schemas/error-ResponseType' - delete: - summary: Deletes one or multiple resources - description: >- - With HTTP DELETE resources are deleted. The resources to be deleted are - identified with the target URI. - parameters: - - name: scope - in: query - description: >- - This parameter extends the set of targeted resources beyond the base - resource identified with the path component of the URI. No scoping - mechanism is specified in the present document. - required: false - schema: - $ref: '#/components/schemas/scope-QueryType' - - name: filter - in: query - description: >- - This parameter reduces the targeted set of resources by applying a - filter to the scoped set of resource representations. Only resources - representations for which the filter construct evaluates to "true" - are returned. No filter language is specified in the present - document. - required: false - schema: - $ref: '#/components/schemas/filter-QueryType' - responses: - '200': - description: >- - Success case ("200 OK"). - This status code shall be returned, when query parameters are present in - the request and one or multiple resources are deleted. - The URIs of the deleted resources are returned in the response message body. - '204': - description: >- - Success case ("204 No Content"). - This status code shall be returned, when no query parameters are present in - the request and only one resource is deleted. - The message body is empty. - content: - application/json: - schema: - $ref: '#/components/schemas/resourceDeletion-ResponseType' - default: - description: Error case. - content: - application/json: - schema: - $ref: '#/components/schemas/error-ResponseType' -components: - schemas: - dateTime-Type: - type: string - format: date-time - long-Type: - type: integer - format: int64 - uri-Type: - type: string - correlatedNotification-Type: - type: object - properties: - source: - $ref: '#/components/schemas/uri-Type' - notificationIds: - type: array - items: - $ref: '#/components/schemas/notificationId-Type' - notificationId-Type: - $ref: '#/components/schemas/long-Type' - notificationType-Type: - type: string - enum: - - notifyMOICreation - - notifyMOIDeletion - - notifyMOIAttributeValueChange - systemDN-Type: - type: string - additionalText-Type: - type: string - sourceIndicator-Type: - type: string - enum: - - resourceOperation - - mangementOperation - - sONOperation - - unknown - header-Type: - type: object - properties: - href: - $ref: '#/components/schemas/uri-Type' - notificationId: - $ref: '#/components/schemas/notificationId-Type' - notificationType: - $ref: '#/components/schemas/notificationType-Type' - eventTime: - $ref: '#/components/schemas/dateTime-Type' - systemDN: - $ref: '#/components/schemas/systemDN-Type' - required: - - href - - notificationId - - notificationType - - eventTime - - systemDN - scopeType-Type: - type: string - enum: - - BASE_ONLY - - BASE_NTH_LEVEL - - BASE_SUBTREE - - BASE_ALL - scopeLevel-Type: - type: integer - className-PathType: - type: string - id-PathType: - type: string - attributes-QueryType: - type: array - items: - type: string - fields-QueryType: - type: array - items: - type: string - filter-QueryType: - type: string - scope-QueryType: - type: object - properties: - scopeType: - $ref: '#/components/schemas/scopeType-Type' - scopeLevel: - $ref: '#/components/schemas/scopeLevel-Type' - - resourcePut-RequestType: - $ref: '#/components/schemas/resourceRepresentation-Type' - jsonMergePatch-RequestType: - $ref: '#/components/schemas/resourceRepresentation-Type' - 3gppJsonMergePatch-RequestType: - $ref: '#/components/schemas/resourceRepresentation-Type' - jsonPatch-RequestType: - type: array - items: - type: object - 3gppJsonPatch-RequestType: - type: array - items: - type: object - - error-ResponseType: - type: object - properties: - error: - type: object - properties: - errorInfo: - type: string - resourceRetrieval-ResponseType: - $ref: '#/components/schemas/resourceRepresentation-Type' - resourceCreation-ResponseType: - $ref: '#/components/schemas/resourceRepresentation-Type' - resourceUpdate-ResponseType: - $ref: '#/components/schemas/resourceRepresentation-Type' - resourceDeletion-ResponseType: - type: array - items: - $ref: '#/components/schemas/uri-Type' - - resourceRepresentation-Type: - oneOf: - - type: object - properties: - id: - type: string - attributes: - type: object - additionalProperties: - type: array - items: - type: object - - anyOf: - - $ref: 'genericNrm.yaml#/components/schemas/resources-genericNrm' - - $ref: 'nrNrm.yaml#/components/schemas/resources-nrNrm' - - $ref: '5gcNrm.yaml#/components/schemas/resources-5gcNrm' - - $ref: 'sliceNrm.yaml#/components/schemas/resources-sliceNrm' - - mOIChange-Type: - type: object - properties: - notificationId: - $ref: '#/components/schemas/notificationId-Type' - correlatedNotifications: - type: array - items: - $ref: '#/components/schemas/correlatedNotification-Type' - additionalText: - $ref: '#/components/schemas/additionalText-Type' - sourceIndicator: - $ref: '#/components/schemas/sourceIndicator-Type' - path: - $ref: '#/components/schemas/uri-Type' - operation: - type: string - enum: - - CREATE - - DELETE - - REPLACE - value: - oneOf: - - type: object - additionalProperties: - nullable: true - - type: array - items: - type: object - minItems: 1 - maxItems: 2 - - notifyMOICreation-NotifType: - allOf: - - $ref: '#/components/schemas/header-Type' - - type: object - properties: - correlatedNotifications: - type: array - items: - $ref: '#/components/schemas/correlatedNotification-Type' - additionalText: - $ref: '#/components/schemas/additionalText-Type' - sourceIndicator: - $ref: '#/components/schemas/sourceIndicator-Type' - attributeList: - type: object - additionalProperties: - nullable: true - notifyMOIDeletion-NotifType: - allOf: - - $ref: '#/components/schemas/header-Type' - - type: object - properties: - correlatedNotifications: - type: array - items: - $ref: '#/components/schemas/correlatedNotification-Type' - additionalText: - $ref: '#/components/schemas/additionalText-Type' - sourceIndicator: - $ref: '#/components/schemas/sourceIndicator-Type' - attributeList: - type: object - additionalProperties: true - notifyMOIAttributeValueChange-NotifType: - allOf: - - $ref: '#/components/schemas/header-Type' - - type: object - properties: - correlatedNotifications: - type: array - items: - $ref: '#/components/schemas/correlatedNotification-Type' - additionalText: - $ref: '#/components/schemas/additionalText-Type' - sourceIndicator: - $ref: '#/components/schemas/sourceIndicator-Type' - attributeValueChange: - type: object - additionalProperties: - type: array - minItems: 1 - maxItems: 2 - items: - nullable: true - required: - - attributeValueChange - notifyMOIChanges-NotifType: - allOf: - - $ref: '#/components/schemas/header-Type' - - type: object - properties: - mOIChanges: - type: array - items: - $ref: '#/components/schemas/mOIChange-Type' - required: - - mOIChanges diff --git a/OpenAPI/sliceNrm.yaml b/OpenAPI/sliceNrm.yaml deleted file mode 100644 index 1a2d74677..000000000 --- a/OpenAPI/sliceNrm.yaml +++ /dev/null @@ -1,595 +0,0 @@ -openapi: 3.0.1 -info: - title: Slice NRM - version: 17.2.0 - description: >- - OAS 3.0.1 specification of the Slice NRM - @ 2020, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). - All rights reserved. -externalDocs: - description: 3GPP TS 28.541 V17.2.0; 5G NRM, Slice NRM - url: http://www.3gpp.org/ftp/Specs/archive/28_series/28.541/ -paths: {} -components: - schemas: - -#------------ Type definitions --------------------------------------------------- - - Float: - type: number - format: float - MobilityLevel: - type: string - enum: - - STATIONARY - - NOMADIC - - RESTRICTED MOBILITY - - FULLY MOBILITY - SynAvailability: - type: string - enum: - - NOT SUPPORTED - - BETWEEN BS AND UE - - BETWEEN BS AND UE & UE AND UE - PositioningAvailability: - type: array - items: - type: string - enum: - - CIDE-CID - - OTDOA - - RF FINGERPRINTING - - AECID - - HYBRID POSITIONING - - NET-RTK - Predictionfrequency: - type: string - enum: - - PERSEC - - PERMIN - - PERHOUR - SharingLevel: - type: string - enum: - - SHARED - - NON-SHARED - - NetworkSliceSharingIndicator: - type: string - enum: - - SHARED - - NON-SHARED - - ServiceType: - type: string - enum: - - eMBB - - RLLC - - MIoT - - V2X - SliceSimultaneousUse: - type: string - enum: - - ZERO - - ONE - - TWO - - THREE - - FOUR - - PerfReqEmbb: - type: object - properties: - expDataRateDL: - type: number - expDataRateUL: - type: number - areaTrafficCapDL: - type: number - areaTrafficCapUL: - type: number - userDensity: - type: number - activityFactor: - type: number - PerfReqEmbbList: - type: array - items: - $ref: '#/components/schemas/PerfReqEmbb' - PerfReqUrllc: - type: object - properties: - cSAvailabilityTarget: - type: number - cSReliabilityMeanTime: - type: string - expDataRate: - type: number - msgSizeByte: - type: string - transferIntervalTarget: - type: string - survivalTime: - type: string - PerfReqUrllcList: - type: array - items: - $ref: '#/components/schemas/PerfReqUrllc' - PerfReq: - oneOf: - - $ref: '#/components/schemas/PerfReqEmbbList' - - $ref: '#/components/schemas/PerfReqUrllcList' - Category: - type: string - enum: - - CHARACTER - - SCALABILITY - Tagging: - type: array - items: - type: string - enum: - - PERFORMANCE - - FUNCTION - - OPERATION - Exposure: - type: string - enum: - - API - - KPI - ServAttrCom: - type: object - properties: - category: - $ref: '#/components/schemas/Category' - tagging: - $ref: '#/components/schemas/Tagging' - exposure: - $ref: '#/components/schemas/Exposure' - Support: - type: string - enum: - - NOT SUPPORTED - - SUPPORTED - DelayTolerance: - type: object - properties: - servAttrCom: - $ref: '#/components/schemas/ServAttrCom' - support: - $ref: '#/components/schemas/Support' - DeterministicComm: - type: object - properties: - servAttrCom: - $ref: '#/components/schemas/ServAttrCom' - availability: - $ref: '#/components/schemas/Support' - periodicityList: - type: string - DLThptPerSlice: - type: object - properties: - servAttrCom: - $ref: '#/components/schemas/ServAttrCom' - guaThpt: - $ref: '#/components/schemas/Float' - maxThpt: - $ref: '#/components/schemas/Float' - DLThptPerUE: - type: object - properties: - servAttrCom: - $ref: '#/components/schemas/ServAttrCom' - guaThpt: - $ref: '#/components/schemas/Float' - maxThpt: - $ref: '#/components/schemas/Float' - ULThptPerSlice: - type: object - properties: - servAttrCom: - $ref: '#/components/schemas/ServAttrCom' - guaThpt: - $ref: '#/components/schemas/Float' - maxThpt: - $ref: '#/components/schemas/Float' - ULThptPerUE: - type: object - properties: - servAttrCom: - $ref: '#/components/schemas/ServAttrCom' - guaThpt: - $ref: '#/components/schemas/Float' - maxThpt: - $ref: '#/components/schemas/Float' - DLThptPerSliceSubnet: - type: object - properties: - guaThpt: - $ref: '#/components/schemas/Float' - maxThpt: - $ref: '#/components/schemas/Float' - DLThptPerUEPerSubnet: - type: object - properties: - guaThpt: - $ref: '#/components/schemas/Float' - maxThpt: - $ref: '#/components/schemas/Float' - ULThptPerSliceSubnet: - type: object - properties: - guaThpt: - $ref: '#/components/schemas/Float' - maxThpt: - $ref: '#/components/schemas/Float' - ULThptPerUEPerSubnet: - type: object - properties: - guaThpt: - $ref: '#/components/schemas/Float' - maxThpt: - $ref: '#/components/schemas/Float' - MaxPktSize: - type: object - properties: - servAttrCom: - $ref: '#/components/schemas/ServAttrCom' - maxsize: - type: integer - MaxNumberofPDUSessions: - type: object - properties: - servAttrCom: - $ref: '#/components/schemas/ServAttrCom' - nOofPDUSessions: - type: integer - KPIMonitoring: - type: object - properties: - servAttrCom: - $ref: '#/components/schemas/ServAttrCom' - kPIList: - type: string - NBIoT: - type: object - properties: - servAttrCom: - $ref: '#/components/schemas/ServAttrCom' - support: - $ref: '#/components/schemas/Support' - Synchronicity: - type: object - properties: - servAttrCom: - $ref: '#/components/schemas/ServAttrCom' - availability: - $ref: '#/components/schemas/SynAvailability' - accuracy: - $ref: '#/components/schemas/Float' - Positioning: - type: object - properties: - servAttrCom: - $ref: '#/components/schemas/ServAttrCom' - availability: - $ref: '#/components/schemas/PositioningAvailability' - predictionfrequency: - $ref: '#/components/schemas/Predictionfrequency' - accuracy: - $ref: '#/components/schemas/Float' - UserMgmtOpen: - type: object - properties: - servAttrCom: - $ref: '#/components/schemas/ServAttrCom' - support: - $ref: '#/components/schemas/Support' - V2XCommModels: - type: object - properties: - servAttrCom: - $ref: '#/components/schemas/ServAttrCom' - v2XMode: - $ref: '#/components/schemas/Support' - TermDensity: - type: object - properties: - servAttrCom: - $ref: '#/components/schemas/ServAttrCom' - density: - type: integer - NsInfo: - type: object - properties: - nsInstanceId: - type: string - nsName: - type: string - CNSliceSubnetProfile: - type: object - properties: - maxNumberofUEs: - type: integer - latency: - type: integer - dLThptPerSliceSubnet: - $ref: '#/components/schemas/DLThptPerSliceSubnet' - dLThptPerUEPerSubnet: - $ref: '#/components/schemas/DLThptPerUEPerSubnet' - uLThptPerSliceSubnet: - $ref: '#/components/schemas/ULThptPerSliceSubnet' - uLThptPerUEPerSubnet: - $ref: '#/components/schemas/ULThptPerUEPerSubnet' - maxNumberOfPDUSessions: - type: integer - maxPktSize: - type: integer - delayTolerance: - $ref: '#/components/schemas/DelayTolerance' - sliceSimultaneousUse: - $ref: '#/components/schemas/SliceSimultaneousUse' - RANSliceSubnetProfile: - type: object - properties: - coverageAreaTAList: - type: integer - MobilityLevel: - $ref: '#/components/schemas/MobilityLevel' - resourceSharingLevel: - $ref: '#/components/schemas/SharingLevel' - maxNumberofUEs: - type: integer - activityFactor: - type: integer - dLThptPerUEPerSubnet: - $ref: '#/components/schemas/ULThptPerUEPerSubnet' - uLThptPerUEPerSubnet: - $ref: '#/components/schemas/ULThptPerUEPerSubnet' - uESpeed: - type: integer - reliability: - type: string - serviceType: - $ref: '#/components/schemas/ServiceType' - maxPktSize: - type: integer - delayTolerance: - $ref: '#/components/schemas/DelayTolerance' - sliceSimultaneousUse: - $ref: '#/components/schemas/SliceSimultaneousUse' - TopSliceSubnetProfile: - type: object - properties: - coverageArea: - type: string - latency: - type: integer - maxNumberofUEs: - type: integer - dLThptPerSliceSubnet: - $ref: '#/components/schemas/DLThptPerSliceSubnet' - dLThptPerUEPerSubnet: - $ref: '#/components/schemas/DLThptPerUEPerSubnet' - uLThptPerSliceSubnet: - $ref: '#/components/schemas/ULThptPerSliceSubnet' - uLThptPerUEPerSubnet: - $ref: '#/components/schemas/ULThptPerUEPerSubnet' - maxPktSize: - type: integer - delayTolerance: - $ref: '#/components/schemas/DelayTolerance' - sliceSimultaneousUse: - $ref: '#/components/schemas/SliceSimultaneousUse' - ServiceProfile: - type: object - properties: - serviceProfileId: - type: string - plmnInfoList: - $ref: 'nrNrm.yaml#/components/schemas/PlmnInfoList' - maxNumberofUEs: - type: number - latency: - type: number - uEMobilityLevel: - $ref: '#/components/schemas/MobilityLevel' - sst: - $ref: 'nrNrm.yaml#/components/schemas/Sst' - networkSliceSharingIndicator: - $ref: '#/components/schemas/NetworkSliceSharingIndicator' - availability: - type: number - delayTolerance: - $ref: '#/components/schemas/DelayTolerance' - deterministicComm: - $ref: '#/components/schemas/DeterministicComm' - dLThptPerSlice: - $ref: '#/components/schemas/DLThptPerSlice' - dLThptPerUE: - $ref: '#/components/schemas/DLThptPerUE' - uLThptPerSlice: - $ref: '#/components/schemas/ULThptPerSlice' - uLThptPerUE: - $ref: '#/components/schemas/ULThptPerUE' - maxPktSize: - $ref: '#/components/schemas/MaxPktSize' - maxNumberofPDUSessions: - $ref: '#/components/schemas/MaxNumberofPDUSessions' - kPIMonitoring: - $ref: '#/components/schemas/KPIMonitoring' - nBIoT: - $ref: '#/components/schemas/NBIoT' - synchronicity: - $ref: '#/components/schemas/Synchronicity' - positioning: - $ref: '#/components/schemas/Positioning' - userMgmtOpen: - $ref: '#/components/schemas/UserMgmtOpen' - v2XModels: - $ref: '#/components/schemas/V2XCommModels' - coverageArea: - type: string - termDensity: - $ref: '#/components/schemas/TermDensity' - activityFactor: - $ref: '#/components/schemas/Float' - uESpeed: - type: integer - jitter: - type: integer - survivalTime: - type: string - reliability: - type: string - maxDLDataVolume: - type: string - maxULDataVolume: - type: string - sliceSimultaneousUse: - $ref: '#/components/schemas/SliceSimultaneousUse' - - SliceProfile: - type: object - properties: - serviceProfileId: - type: string - plmnInfoList: - $ref: 'nrNrm.yaml#/components/schemas/PlmnInfoList' - perfReq: - $ref: '#/components/schemas/PerfReq' - cNSliceSubnetProfile: - $ref: '#/components/schemas/CNSliceSubnetProfile' - rANSliceSubnetProfile: - $ref: '#/components/schemas/RANSliceSubnetProfile' - topSliceSubnetProfile: - $ref: '#/components/schemas/TopSliceSubnetProfile' - - IpAddress: - oneOf: - - $ref: 'genericNrm.yaml#/components/schemas/Ipv4Addr' - - $ref: 'genericNrm.yaml#/components/schemas/Ipv6Addr' - - ServiceProfileList: - type: array - items: - $ref: '#/components/schemas/ServiceProfile' - - SliceProfileList: - type: array - items: - $ref: '#/components/schemas/SliceProfile' - -#------------ Definition of concrete IOCs ---------------------------------------- - SubNetwork-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/SubNetwork-Attr' - - $ref: 'genericNrm.yaml#/components/schemas/SubNetwork-ncO' - - type: object - properties: - SubNetwork: - $ref: '#/components/schemas/SubNetwork-Multiple' - NetworkSlice: - $ref: '#/components/schemas/NetworkSlice-Multiple' - NetworkSliceSubnet: - $ref: '#/components/schemas/NetworkSliceSubnet-Multiple' - EP_Transport: - $ref: '#/components/schemas/EP_Transport-Multiple' - - NetworkSlice-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/SubNetwork-Attr' - - type: object - properties: - networkSliceSubnetRef: - $ref: 'genericNrm.yaml#/components/schemas/Dn' - operationalState: - $ref: 'genericNrm.yaml#/components/schemas/OperationalState' - administrativeState: - $ref: 'genericNrm.yaml#/components/schemas/AdministrativeState' - serviceProfileList: - $ref: '#/components/schemas/ServiceProfileList' - - NetworkSliceSubnet-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/SubNetwork-Attr' - - type: object - properties: - managedFunctionRefList: - $ref: 'genericNrm.yaml#/components/schemas/DnList' - networkSliceSubnetRefList: - $ref: 'genericNrm.yaml#/components/schemas/DnList' - operationalState: - $ref: 'genericNrm.yaml#/components/schemas/OperationalState' - administrativeState: - $ref: 'genericNrm.yaml#/components/schemas/AdministrativeState' - nsInfo: - $ref: '#/components/schemas/NsInfo' - sliceProfileList: - $ref: '#/components/schemas/SliceProfileList' - epTransportRefList: - $ref: 'genericNrm.yaml#/components/schemas/DnList' - - EP_Transport-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - type: object - properties: - ipAddress: - $ref: '#/components/schemas/IpAddress' - logicInterfaceId: - type: string - nextHopInfo: - type: string - qosProfile: - type: string - epApplicationRefs: - $ref: 'genericNrm.yaml#/components/schemas/DnList' - -#-------- Definition of JSON arrays for name-contained IOCs ---------------------- - SubNetwork-Multiple: - type: array - items: - $ref: '#/components/schemas/SubNetwork-Single' - - NetworkSlice-Multiple: - type: array - items: - $ref: '#/components/schemas/NetworkSlice-Single' - - NetworkSliceSubnet-Multiple: - type: array - items: - $ref: '#/components/schemas/NetworkSliceSubnet-Single' - - EP_Transport-Multiple: - type: array - items: - $ref: '#/components/schemas/EP_Transport-Single' - -#------------ Definitions in TS 28.541 for TS 28.532 ----------------------------- - - resources-sliceNrm: - oneOf: - - $ref: '#/components/schemas/SubNetwork-Single' - - $ref: '#/components/schemas/NetworkSlice-Single' - - $ref: '#/components/schemas/NetworkSliceSubnet-Single' - - $ref: '#/components/schemas/EP_Transport-Single' diff --git a/OpenAPI/streamingDataMnS.yaml b/OpenAPI/streamingDataMnS.yaml deleted file mode 100644 index ab7f71d4a..000000000 --- a/OpenAPI/streamingDataMnS.yaml +++ /dev/null @@ -1,453 +0,0 @@ -openapi: 3.0.1 -info: - title: TS 28.532 Streaming data reporting service - version: 16.4.0 - description: OAS 3.0.1 specification for the Streaming data reporting service (Streaming MnS) -servers: - - url: '{protocol}://{root}/StreamingDataReportingMnS/{version}' - variables: - protocol: - description: Protocol used - enum: - - http - - https - - wss - default: https - root: - description: Indicates the host name and optional port, and an optional sequence of path segments that together represent a prefix path. - default: example.com - version: - description: Indicates the current version of the specification - default: 16.4.0 -paths: - '/connections': - post: - summary: Inform consumer about reporting streams to be carried by the new connection and receive a new connection id. - description: Exchange of meta-data (producer informs consumer about its own identity and the nature of the data to be reported via streaming) phase of the connection establishement by streaming data reporting producer to the streaming data reporting consumer (i.e. streaming target). - requestBody: - required: true - content: - application/json: - schema: - $ref: '#/components/schemas/connectionRequest-Type' - responses: - '201': - description: Success case (201 Created). - headers: - Location: - description: Location of the created connection resource. - schema: - $ref: '#/components/schemas/connectionId-Type' - default: - description: Error case. - content: - application/json: - schema: - $ref: '#/components/schemas/failedConnectionResponse-Type' - get: - summary: Obtain information about connections. - description: Enables the streaming data reporting service producer to obtain information about one or more streaming connections. - parameters: - - name: connectionIdList - in: query - description: The list of connectionId for which the connection information is to be returned. - required: false - schema: - type: array - items: - $ref: '#/components/schemas/connectionId-Type' - responses: - '200': - description: Success case (200 OK). The resources identified in the request for retrieval are returned in the response message body. In case the fields query parameter is used, the selected resources are returned. - content: - application/json: - schema: - type: array - items: - $ref: '#/components/schemas/connectionInfo-Type' - '202': - description: Partial success case (202 Partially retrieved). Subset of the resources identified in the request for retrieval are returned in the response message body. - content: - application/json: - schema: - type: array - items: - $ref: '#/components/schemas/connectionInfo-Type' - default: - description: Error case. - content: - application/json: - schema: - $ref: '#/components/schemas/errorResponse-Type' - '/connections/{connectionId}': - get: - summary: Obtain information about a connection. - description: Enables the streaming data reporting service producer to obtain information about one streaming connection. - parameters: - - name: connectionId - in: path - description: Indicate the ID (URI) of the connection for which the information is being retrieved - required: true - schema: - $ref: '#/components/schemas/connectionId-Type' - - name: Connection - in: header - schema: - $ref: '#/components/schemas/websocketHeaderConnection-Type' - - name: Sec-WebSocket-Extensions - in: header - schema: - $ref: '#/components/schemas/websocketHeader-Sec-WebSocket-Extensions-Type' - - name: Sec-WebSocket-Key - in: header - schema: - $ref: '#/components/schemas/websocketHeader-Sec-WebSocket-Key-Type' - - name: Sec-WebSocket-Protocol - in: header - schema: - $ref: '#/components/schemas/websocketHeader-Sec-WebSocket-Protocol-Type' - - name: Sec-WebSocket-Version - in: header - schema: - $ref: '#/components/schemas/websocketHeader-Sec-WebSocket-Version-Type' - responses: - '101': - description: Success case (101 Switching Protocols). The connection has been successfully switched to WebSocket. The response message body is absent. - headers: - Upgrade: - schema: - $ref: '#/components/schemas/websocketHeaderUpgrade-Type' - Connection: - schema: - $ref: '#/components/schemas/websocketHeaderConnection-Type' - Sec-WebSocket-Accept: - schema: - $ref: '#/components/schemas/websocketHeader-Sec-WebSocket-Accept-Type' - '200': - description: Success case (200 OK). The resource identified in the request for retrieval returned in the response message body. - content: - application/json: - schema: - $ref: '#/components/schemas/connectionInfo-Type' - default: - description: Error case. - content: - application/json: - schema: - $ref: '#/components/schemas/errorResponse-Type' - '/connections/{connectionId}/streams': - post: - summary: Inform consumer about new reporting streams on an existing connection. - description: Allows the producer to add one or more reporting streams to an already established streaming connection. - parameters: - - name: connectionId - in: path - description: Indicate the ID (URI) of the connection for which the reporting stream information is being added. - required: true - schema: - $ref: '#/components/schemas/connectionId-Type' - requestBody: - required: true - content: - application/json: - schema: - type: array - items: - $ref: '#/components/schemas/streamInfo-Type' - responses: - '201': - description: Success case (201 Posted). - content: - application/json: - schema: - type: array - items: - $ref: '#/components/schemas/streamInfo-Type' - '202': - description: Partial success case (202 Posted). - content: - application/json: - schema: - type: array - items: - $ref: '#/components/schemas/streamInfo-Type' - default: - description: Error case. - content: - application/json: - schema: - $ref: '#/components/schemas/errorResponse-Type' - delete: - summary: Remove reporting streams from an existing connection - description: Allows the producer to remove one or more reporting streams from an already established streaming connection. - parameters: - - name: connectionId - in: path - description: Indicate the ID (URI) of the connection for which the reporting stream information is being removed. - required: true - schema: - $ref: '#/components/schemas/connectionId-Type' - - name: streamIds - in: query - description: The list of streamId for the stream(s) to be deleted. - required: true - schema: - type: array - items: - $ref: '#/components/schemas/streamId-Type' - responses: - '204': - description: Success case (204 No Content). The stream information resource has been deleted. The response message body is absent. - default: - description: Error case. - content: - application/json: - schema: - $ref: '#/components/schemas/errorResponse-Type' - get: - summary: Obtain information about streams. - description: Enables the streaming data reporting service producer to obtain information about one or more reporting streams. - parameters: - - name: connectionId - in: path - description: Indicate the ID (URI) of the connection for which the information is being retrieved - required: true - schema: - $ref: '#/components/schemas/connectionId-Type' - - name: streamIds - in: query - description: The list of streamId for which the stream information is to be retrieved. - required: true - schema: - type: array - items: - $ref: '#/components/schemas/streamId-Type' - responses: - '200': - description: Success case (200 OK). - content: - application/json: - schema: - type: array - items: - $ref: '#/components/schemas/streamInfoWithReporters-Type' - '202': - description: Partial success case (202 Partially retrieved). - content: - application/json: - schema: - type: array - items: - $ref: '#/components/schemas/streamInfoWithReporters-Type' - default: - description: Error case. - content: - application/json: - schema: - $ref: '#/components/schemas/errorResponse-Type' - '/connections/{connectionId}/streams/{streamId}': - get: - summary: Obtain information about stream - description: Enables the streaming data reporting service producer to obtain information about a reporting stream. - parameters: - - name: connectionId - in: path - description: Indicate the ID (URI) of the connection for which the information is being retrieved - required: true - schema: - $ref: '#/components/schemas/connectionId-Type' - - name: streamId - in: path - description: Indicate the ID of the reporting stream for which the information is being retrieved - required: true - schema: - $ref: '#/components/schemas/streamId-Type' - responses: - '200': - description: Success case (200 OK). - content: - application/json: - schema: - $ref: '#/components/schemas/streamInfoWithReporters-Type' - default: - description: Error case. - content: - application/json: - schema: - $ref: '#/components/schemas/errorResponse-Type' -components: - schemas: - analyticsInfo-Type: - description: Information specific to analytics reporting. - type: object - properties: - activityDetails: - type: string - connectionId-Type: - $ref: '#/components/schemas/uri-Type' - connectionInfo-Type: - type: object - properties: - connection: - $ref: '#/components/schemas/connectionId-Type' - producer: - $ref: '#/components/schemas/producerId-Type' - streams: - type: array - items: - $ref: '#/components/schemas/streamId-Type' - connectionRequest-Type: - type: object - properties: - producer: - $ref: '#/components/schemas/producerId-Type' - streams: - type: array - items: - $ref: '#/components/schemas/streamInfo-Type' - errorResponse-Type: - type: object - properties: - error: - type: object - properties: - errorInfo: - type: string - failedConnectionResponse-Type: - type: object - properties: - error: - type: array - items: - type: object - properties: - streamId: - $ref: '#/components/schemas/streamId-Type' - errorReason: - type: string - measObjDn-Type: - description: DN of the measured object instance (see 3GPP TS 28.550) - allOf: - - $ref: '#/components/schemas/systemDN-Type' - measTypes-Type: - description: an ordered list of measurement type or KPI whose measurement values or KPI result values are to be reported by the Performance Data Stream Units (see Annex C of TS 28.550) via this stream - type: array - items: - type: string - performanceInfo-Type: - description: Information specific to performance data reporting - type: object - properties: - measObjDn: - $ref: '#/components/schemas/measObjDn-Type' - measTypes: - $ref: '#/components/schemas/measTypes-Type' - measurementReaderId: - $ref: '#/components/schemas/systemDN-Type' - jobId: - type: string - required: - - measObjDn - - measTypes - producerId-Type: - description: DN of the streaming data reporting MnS producer. - allOf: - - $ref: '#/components/schemas/systemDN-Type' - serializationFormat-Type: - type: string - enum: - - GPB - - ASN1 - streamId-Type: - description: globally unique stream identifier - type: string - example: '26F452550021' - streamInfo-Type: - description: Reporting stream meta-data. - type: object - properties: - streamType: - $ref: '#/components/schemas/streamType-Type' - serializationFormat: - $ref: '#/components/schemas/serializationFormat-Type' - streamId: - oneOf: - - $ref: '#/components/schemas/streamId-Type' - - $ref: '#/components/schemas/traceReference-Type' - additionalInfo: - oneOf: - - $ref: '#/components/schemas/traceInfo-Type' - - $ref: '#/components/schemas/performanceInfo-Type' - - $ref: '#/components/schemas/analyticsInfo-Type' - - $ref: '#/components/schemas/vsDataContainer-Type' - required: - - streamType - - serializationFormat - - streamId - streamInfoWithReporters-Type: - description: Reporting stream meta-data with added information about reporters. - type: object - properties: - streamInfo: - $ref: '#/components/schemas/streamInfo-Type' - reporters: - type: array - items: - $ref: '#/components/schemas/producerId-Type' - systemDN-Type: - description: See 3GPP TS 32.300 for details - type: string - example: 'SubNetwork=ABCNetwork,SubNetwork=MUC01,GNBDUFunction=XYZ0100' - streamType-Type: - type: string - enum: - - TRACE - - PERFORMANCE - - ANALYTICS - - PROPRIETARY - traceInfo-Type: - description: Information specific to trace data reporting - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/TraceJob-Attr' - traceReference-Type: - description: Trace Reference (see clause 5.6 of 3GPP TS 32.422) as stream identifier for streaming trace data reporting - type: string - example: '4358070034D7' - uri-Type: - description: Resource URI - type: string - vsDataContainer-Type: - description: container for vendor specific data (see 3GPP TS 28.622) - type: object - properties: - vsDataType: - type: string - vsData: - type: string - vsDataFormatVersion: - type: string - websocketHeaderConnection-Type: - description: Header value for the upgrade request and response. - type: string - enum: - - Upgrade - websocketHeaderUpgrade-Type: - description: Header value for the upgrade to WebSocket request and response. - type: string - enum: - - websocket - websocketHeader-Sec-WebSocket-Accept-Type: - description: Header value for secure WebSocket response. Carries hash. - type: string - websocketHeader-Sec-WebSocket-Extensions-Type: - description: Header value for secure WebSocket request. Carries protocol extensions. - type: string - websocketHeader-Sec-WebSocket-Key-Type: - description: Header value for secure WebSocket request. Provides information to the server which is needed in order to confirm that the client is entitled to request an upgrade to WebSocket. - type: string - websocketHeader-Sec-WebSocket-Protocol-Type: - description: Header value for secure WebSocket request. Carries a comma-separated list of subprotocol names, in the order of preference. - type: string - websocketHeader-Sec-WebSocket-Version-Type: - description: Header value for secure WebSocket request and response. Carries the WebSocket protocol version to be used. - type: string -- GitLab From 0dde2f9789f382c676f3b0a42d855fb7befdf8b0 Mon Sep 17 00:00:00 2001 From: Ping Date: Wed, 7 Jul 2021 11:56:08 +0800 Subject: [PATCH 043/593] add openapi files from integration branch --- OpenAPI/5gcNrm.yaml | 2079 +++++++++++++++++++++++++++++ OpenAPI/PerDataFileReportMnS.yaml | 13 + OpenAPI/PerMeasJobCtlMnS.yaml | 280 ++++ OpenAPI/PerThresMonMnS.yaml | 102 ++ OpenAPI/PerfDataStreamingMnS.yaml | 363 +++++ OpenAPI/README.md | 73 + OpenAPI/comDefs.yaml | 84 ++ OpenAPI/coslaNrm.yaml | 168 +++ OpenAPI/faultMnS.yaml | 1144 ++++++++++++++++ OpenAPI/genericNrm.yaml | 1590 ++++++++++++++++++++++ OpenAPI/heartbeatNtf.yaml | 23 + OpenAPI/nrNrm.yaml | 1883 ++++++++++++++++++++++++++ OpenAPI/provMnS.yaml | 579 ++++++++ OpenAPI/sliceNrm.yaml | 589 ++++++++ OpenAPI/streamingDataMnS.yaml | 453 +++++++ 15 files changed, 9423 insertions(+) create mode 100644 OpenAPI/5gcNrm.yaml create mode 100644 OpenAPI/PerDataFileReportMnS.yaml create mode 100644 OpenAPI/PerMeasJobCtlMnS.yaml create mode 100644 OpenAPI/PerThresMonMnS.yaml create mode 100644 OpenAPI/PerfDataStreamingMnS.yaml create mode 100644 OpenAPI/README.md create mode 100644 OpenAPI/comDefs.yaml create mode 100644 OpenAPI/coslaNrm.yaml create mode 100644 OpenAPI/faultMnS.yaml create mode 100644 OpenAPI/genericNrm.yaml create mode 100644 OpenAPI/heartbeatNtf.yaml create mode 100644 OpenAPI/nrNrm.yaml create mode 100644 OpenAPI/provMnS.yaml create mode 100644 OpenAPI/sliceNrm.yaml create mode 100644 OpenAPI/streamingDataMnS.yaml diff --git a/OpenAPI/5gcNrm.yaml b/OpenAPI/5gcNrm.yaml new file mode 100644 index 000000000..fd61fca9d --- /dev/null +++ b/OpenAPI/5gcNrm.yaml @@ -0,0 +1,2079 @@ +openapi: 3.0.1 +info: + title: 3GPP 5GC NRM + version: 17.3.0 + description: >- + OAS 3.0.1 specification of the 5GC NRM + © 2020, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). + All rights reserved. +externalDocs: + description: 3GPP TS 28.541; 5G NRM, 5GC NRM + url: http://www.3gpp.org/ftp/Specs/archive/28_series/28.541/ +paths: {} +components: + schemas: + +#-------- Definition of types----------------------------------------------------- + + AmfIdentifier: + type: object + description: 'AmfIdentifier comprise of amfRegionId, amfSetId and amfPointer' + properties: + amfRegionId: + $ref: '#/components/schemas/AmfRegionId' + amfSetId: + $ref: '#/components/schemas/AmfSetId' + amfPointer: + $ref: '#/components/schemas/AmfPointer' + AmfRegionId: + type: integer + description: AmfRegionId is defined in TS 23.003 + maximum: 255 + AmfSetId: + type: string + description: AmfSetId is defined in TS 23.003 + maximum: 1023 + AmfPointer: + type: integer + description: AmfPointer is defined in TS 23.003 + maximum: 63 + IpEndPoint: + type: object + properties: + ipv4Address: + $ref: 'genericNrm.yaml#/components/schemas/Ipv4Addr' + ipv6Address: + $ref: 'genericNrm.yaml#/components/schemas/Ipv6Addr' + ipv6Prefix: + $ref: 'genericNrm.yaml#/components/schemas/Ipv6Prefix' + transport: + $ref: 'genericNrm.yaml#/components/schemas/TransportProtocol' + port: + type: integer + NFProfileList: + type: array + description: List of NF profile + items: + $ref: '#/components/schemas/NFProfile' + NFProfile: + type: object + description: 'NF profile stored in NRF, defined in TS 29.510' + properties: + nFInstanceId: + type: string + description: uuid of NF instance + nFType: + $ref: 'genericNrm.yaml#/components/schemas/NFType' + nFStatus: + $ref: '#/components/schemas/NFStatus' + plmn: + $ref: 'nrNrm.yaml#/components/schemas/PlmnId' + sNssais: + $ref: 'nrNrm.yaml#/components/schemas/Snssai' + fqdn: + $ref: 'genericNrm.yaml#/components/schemas/Fqdn' + interPlmnFqdn: + $ref: 'genericNrm.yaml#/components/schemas/Fqdn' + nfServices: + type: array + items: + $ref: '#/components/schemas/NFService' + NFService: + type: object + description: NF Service is defined in TS 29.510 + properties: + serviceInstanceId: + type: string + serviceName: + type: string + version: + type: string + schema: + type: string + fqdn: + $ref: 'genericNrm.yaml#/components/schemas/Fqdn' + interPlmnFqdn: + $ref: 'genericNrm.yaml#/components/schemas/Fqdn' + ipEndPoints: + type: array + items: + $ref: '#/components/schemas/IpEndPoint' + apiPrfix: + type: string + allowedPlmns: + $ref: 'nrNrm.yaml#/components/schemas/PlmnId' + allowedNfTypes: + type: array + items: + $ref: 'genericNrm.yaml#/components/schemas/NFType' + allowedNssais: + type: array + items: + $ref: 'nrNrm.yaml#/components/schemas/Snssai' + NFStatus: + type: string + description: any of enumrated value + enum: + - REGISTERED + - SUSPENDED + CNSIIdList: + type: array + items: + $ref: '#/components/schemas/CNSIId' + CNSIId: + type: string + description: CNSI Id is defined in TS 29.531, only for Core Network + TACList: + type: array + items: + $ref: 'nrNrm.yaml#/components/schemas/NrTac' + WeightFactor: + type: integer + UdmInfo: + type: object + properties: + nFSrvGroupId: + type: string + AusfInfo: + type: object + properties: + nFSrvGroupId: + type: string + UpfInfo: + type: object + properties: + smfServingAreas: + type: string + AmfInfo: + type: object + properties: + priority: + type: integer + SupportedDataSetId: + type: string + description: any of enumrated value + enum: + - SUBSCRIPTION + - POLICY + - EXPOSURE + - APPLICATION + Udrinfo: + type: object + properties: + supportedDataSetIds: + type: array + items: + $ref: '#/components/schemas/SupportedDataSetId' + nFSrvGroupId: + type: string + NFInfo: + oneOf: + - $ref: '#/components/schemas/UdmInfo' + - $ref: '#/components/schemas/AusfInfo' + - $ref: '#/components/schemas/UpfInfo' + - $ref: '#/components/schemas/AmfInfo' + - $ref: '#/components/schemas/Udrinfo' + ManagedNFProfile: + type: object + properties: + nfInstanceID: + type: string + nfType: + $ref: 'genericNrm.yaml#/components/schemas/NFType' + authzInfo: + type: string + hostAddr: + $ref: 'genericNrm.yaml#/components/schemas/HostAddr' + locality: + type: string + nFInfo: + $ref: '#/components/schemas/NFInfo' + capacity: + type: integer + SEPPType: + type: string + description: any of enumrated value + enum: + - CSEPP + - PSEPP + SupportedFunc: + type: object + properties: + function: + type: string + policy: + type: string + SupportedFuncList: + type: array + items: + $ref: '#/components/schemas/SupportedFunc' + CommModelType: + type: string + description: any of enumrated value + enum: + - DIRECT_COMMUNICATION_WO_NRF + - DIRECT_COMMUNICATION_WITH_NRF + - INDIRECT_COMMUNICATION_WO_DEDICATED_DISCOVERY + - INDIRECT_COMMUNICATION_WITH_DEDICATED_DISCOVERY + CommModel: + type: object + properties: + groupId: + type: integer + commModelType: + $ref: '#/components/schemas/CommModelType' + targetNFServiceList: + $ref: 'genericNrm.yaml#/components/schemas/DnList' + commModelConfiguration: + type: string + CommModelList: + type: array + items: + $ref: '#/components/schemas/CommModel' + CapabilityList: + type: array + items: + type: string + FiveQiDscpMapping: + type: object + properties: + fiveQIValues: + type: array + items: + type: integer + dscp: + type: integer + NetworkSliceInfo: + type: object + properties: + sNSSAI: + $ref: 'nrNrm.yaml#/components/schemas/Snssai' + cNSIId: + $ref: '#/components/schemas/CNSIId' + networkSliceRef: + $ref: 'genericNrm.yaml#/components/schemas/DnList' + NetworkSliceInfoList: + type: array + items: + $ref: '#/components/schemas/NetworkSliceInfo' + + + PacketErrorRate: + type: object + properties: + scalar: + type: integer + exponent: + type: integer + FiveQICharacteristics: + type: object + properties: + fiveQIValue: + type: integer + resourceType: + type: string + enum: + - GBR + - NonGBR + priorityLevel: + type: integer + packetDelayBudget: + type: integer + packetErrorRate: + $ref: '#/components/schemas/PacketErrorRate' + averagingWindow: + type: integer + maximumDataBurstVolume: + type: integer + + + GtpUPathDelayThresholdsType: + type: object + properties: + n3AveragePacketDelayThreshold: + type: integer + n3MinPacketDelayThreshold: + type: integer + n3MaxPacketDelayThreshold: + type: integer + n9AveragePacketDelayThreshold: + type: integer + n9MinPacketDelayThreshold: + type: integer + n9MaxPacketDelayThreshold: + type: integer + QFPacketDelayThresholdsType: + type: object + properties: + thresholdDl: + type: integer + thresholdUl: + type: integer + thresholdRtt: + type: integer + + QosData: + type: object + properties: + qosId: + type: string + fiveQIValue: + type: integer + maxbrUl: + $ref: 'https://forge.3gpp.org/rep/all/5G_APIs/raw/REL-16/TS29571_CommonData.yaml#/components/schemas/BitRateRm' + maxbrDl: + $ref: 'https://forge.3gpp.org/rep/all/5G_APIs/raw/REL-16/TS29571_CommonData.yaml#/components/schemas/BitRateRm' + gbrUl: + $ref: 'https://forge.3gpp.org/rep/all/5G_APIs/raw/REL-16/TS29571_CommonData.yaml#/components/schemas/BitRateRm' + gbrDl: + $ref: 'https://forge.3gpp.org/rep/all/5G_APIs/raw/REL-16/TS29571_CommonData.yaml#/components/schemas/BitRateRm' + arp: + $ref: 'https://forge.3gpp.org/rep/all/5G_APIs/raw/REL-16/TS29571_CommonData.yaml#/components/schemas/Arp' + qosNotificationControl: + type: boolean + reflectiveQos: + type: boolean + sharingKeyDl: + type: string + sharingKeyUl: + type: string + maxPacketLossRateDl: + $ref: 'https://forge.3gpp.org/rep/all/5G_APIs/raw/REL-16/TS29571_CommonData.yaml#/components/schemas/PacketLossRateRm' + maxPacketLossRateUl: + $ref: 'https://forge.3gpp.org/rep/all/5G_APIs/raw/REL-16/TS29571_CommonData.yaml#/components/schemas/PacketLossRateRm' + extMaxDataBurstVol: + $ref: 'https://forge.3gpp.org/rep/all/5G_APIs/raw/REL-16/TS29571_CommonData.yaml#/components/schemas/ExtMaxDataBurstVolRm' + + QosDataList: + type: array + items: + $ref: '#/components/schemas/QosData' + + SteeringMode: + type: object + properties: + steerModeValue: + $ref: 'https://forge.3gpp.org/rep/all/5G_APIs/raw/REL-16/TS29512_Npcf_SMPolicyControl.yaml#/components/schemas/SteerModeValue' + active: + $ref: 'https://forge.3gpp.org/rep/all/5G_APIs/raw/REL-16/TS29571_CommonData.yaml#/components/schemas/AccessType' + standby: + $ref: 'https://forge.3gpp.org/rep/all/5G_APIs/raw/REL-16/TS29571_CommonData.yaml#/components/schemas/AccessTypeRm' + threeGLoad: + $ref: 'https://forge.3gpp.org/rep/all/5G_APIs/raw/REL-16/TS29571_CommonData.yaml#/components/schemas/Uinteger' + prioAcc: + $ref: 'https://forge.3gpp.org/rep/all/5G_APIs/raw/REL-16/TS29571_CommonData.yaml#/components/schemas/AccessType' + + TrafficControlData: + type: object + properties: + tcId: + type: string + flowStatus: + $ref: 'https://forge.3gpp.org/rep/all/5G_APIs/raw/REL-16/TS29514_Npcf_PolicyAuthorization.yaml#/components/schemas/FlowStatus' + redirectInfo: + $ref: 'https://forge.3gpp.org/rep/all/5G_APIs/raw/REL-16/TS29512_Npcf_SMPolicyControl.yaml#/components/schemas/RedirectInformation' + addRedirectInfo: + type: array + items: + $ref: 'https://forge.3gpp.org/rep/all/5G_APIs/raw/REL-16/TS29512_Npcf_SMPolicyControl.yaml#/components/schemas/RedirectInformation' + minItems: 1 + muteNotif: + type: boolean + trafficSteeringPolIdDl: + type: string + nullable: true + trafficSteeringPolIdUl: + type: string + nullable: true + routeToLocs: + type: array + items: + $ref: 'https://forge.3gpp.org/rep/all/5G_APIs/raw/REL-16/TS29571_CommonData.yaml#/components/schemas/RouteToLocation' + traffCorreInd: + type: boolean + upPathChgEvent: + $ref: 'https://forge.3gpp.org/rep/all/5G_APIs/raw/REL-16/TS29512_Npcf_SMPolicyControl.yaml#/components/schemas/UpPathChgEvent' + steerFun: + $ref: 'https://forge.3gpp.org/rep/all/5G_APIs/raw/REL-16/TS29512_Npcf_SMPolicyControl.yaml#/components/schemas/SteeringFunctionality' + steerModeDl: + $ref: '#/components/schemas/SteeringMode' + steerModeUl: + $ref: '#/components/schemas/SteeringMode' + mulAccCtrl: + $ref: 'https://forge.3gpp.org/rep/all/5G_APIs/raw/REL-16/TS29512_Npcf_SMPolicyControl.yaml#/components/schemas/MulticastAccessControl' + + TrafficControlDataList: + type: array + items: + $ref: '#/components/schemas/TrafficControlData' + + PccRule: + type: object + properties: + pccRuleId: + type: string + description: Univocally identifies the PCC rule within a PDU session. + flowInfoList: + type: array + items: + $ref: 'https://forge.3gpp.org/rep/all/5G_APIs/raw/REL-16/TS29512_Npcf_SMPolicyControl.yaml#/components/schemas/FlowInformation' + applicationId: + type: string + appDescriptor: + $ref: 'https://forge.3gpp.org/rep/all/5G_APIs/raw/REL-16/TS29512_Npcf_SMPolicyControl.yaml#/components/schemas/ApplicationDescriptor' + contentVersion: + $ref: 'https://forge.3gpp.org/rep/all/5G_APIs/raw/REL-16/TS29514_Npcf_PolicyAuthorization.yaml#/components/schemas/ContentVersion' + precedence: + $ref: 'https://forge.3gpp.org/rep/all/5G_APIs/raw/REL-16/TS29571_CommonData.yaml#/components/schemas/Uinteger' + afSigProtocol: + $ref: 'https://forge.3gpp.org/rep/all/5G_APIs/raw/REL-16/TS29512_Npcf_SMPolicyControl.yaml#/components/schemas/AfSigProtocol' + isAppRelocatable: + type: boolean + isUeAddrPreserved: + type: boolean + qosData: + type: array + items: + $ref: '#/components/schemas/QosDataList' + altQosParams: + type: array + items: + $ref: '#/components/schemas/QosDataList' + trafficControlData: + type: array + items: + $ref: '#/components/schemas/TrafficControlDataList' + conditionData: + $ref: 'https://forge.3gpp.org/rep/all/5G_APIs/raw/REL-16/TS29512_Npcf_SMPolicyControl.yaml#/components/schemas/ConditionData' + tscaiInputDl: + $ref: 'https://forge.3gpp.org/rep/all/5G_APIs/raw/REL-16/TS29514_Npcf_PolicyAuthorization.yaml#/components/schemas/TscaiInputContainer' + tscaiInputUl: + $ref: 'https://forge.3gpp.org/rep/all/5G_APIs/raw/REL-16/TS29514_Npcf_PolicyAuthorization.yaml#/components/schemas/TscaiInputContainer' + + SnssaiInfo: + type: object + properties: + plmnInfo: + $ref: 'nrNrm.yaml#/components/schemas/PlmnInfo' + administrativeState: + $ref: 'genericNrm.yaml#/components/schemas/AdministrativeState' + + NsacfInfoSnssai: + type: object + properties: + SnssaiInfo: + $ref: '#/components/schemas/SnssaiInfo' + isSubjectToNsac: + type: boolean + maxNumberofUEs: + type: integer + eACMode: + type: string + enum: + - INACTIVE + - ACTIVE + activeEacThreshhold: + type: integer + deactiveEacThreshhold: + type: integer + numberofUEs: + type: integer + uEIdList: + type: array + items: + type: string + + +#-------- Definition of concrete IOCs -------------------------------------------- + + SubNetwork-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/SubNetwork-Attr' + - $ref: 'genericNrm.yaml#/components/schemas/SubNetwork-ncO' + - type: object + properties: + SubNetwork: + $ref: '#/components/schemas/SubNetwork-Multiple' + ManagedElement: + $ref: '#/components/schemas/ManagedElement-Multiple' + ExternalAmfFunction: + $ref: '#/components/schemas/ExternalAmfFunction-Multiple' + ExternalNrfFunction: + $ref: '#/components/schemas/ExternalNrfFunction-Multiple' + ExternalNssfFunction: + $ref: '#/components/schemas/ExternalNssfFunction-Multiple' + AmfSet: + $ref: '#/components/schemas/AmfSet-Multiple' + AmfRegion: + $ref: '#/components/schemas/AmfRegion-Multiple' + Configurable5QISet: + $ref: '#/components/schemas/Configurable5QISet-Multiple' + Dynamic5QISet: + $ref: '#/components/schemas/Dynamic5QISet-Multiple' + + ManagedElement-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/ManagedElement-Attr' + - $ref: 'genericNrm.yaml#/components/schemas/ManagedElement-ncO' + - type: object + properties: + AmfFunction: + $ref: '#/components/schemas/AmfFunction-Multiple' + SmfFunction: + $ref: '#/components/schemas/SmfFunction-Multiple' + UpfFunction: + $ref: '#/components/schemas/UpfFunction-Multiple' + N3iwfFunction: + $ref: '#/components/schemas/N3iwfFunction-Multiple' + PcfFunction: + $ref: '#/components/schemas/PcfFunction-Multiple' + AusfFunction: + $ref: '#/components/schemas/AusfFunction-Multiple' + UdmFunction: + $ref: '#/components/schemas/UdmFunction-Multiple' + UdrFunction: + $ref: '#/components/schemas/UdrFunction-Multiple' + UdsfFunction: + $ref: '#/components/schemas/UdsfFunction-Multiple' + NrfFunction: + $ref: '#/components/schemas/NrfFunction-Multiple' + NssfFunction: + $ref: '#/components/schemas/NssfFunction-Multiple' + SmsfFunction: + $ref: '#/components/schemas/SmsfFunction-Multiple' + LmfFunction: + $ref: '#/components/schemas/LmfFunction-Multiple' + NgeirFunction: + $ref: '#/components/schemas/NgeirFunction-Multiple' + SeppFunction: + $ref: '#/components/schemas/SeppFunction-Multiple' + NwdafFunction: + $ref: '#/components/schemas/NwdafFunction-Multiple' + ScpFunction: + $ref: '#/components/schemas/ScpFunction-Multiple' + NefFunction: + $ref: '#/components/schemas/NefFunction-Multiple' + Configurable5QISet: + $ref: '#/components/schemas/Configurable5QISet-Multiple' + Dynamic5QISet: + $ref: '#/components/schemas/Dynamic5QISet-Multiple' + + AmfFunction-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' + - type: object + properties: + plmnIdList: + $ref: 'nrNrm.yaml#/components/schemas/PlmnIdList' + amfIdentifier: + $ref: '#/components/schemas/AmfIdentifier' + sBIFqdn: + type: string + weightFactor: + $ref: '#/components/schemas/WeightFactor' + snssaiList: + $ref: 'nrNrm.yaml#/components/schemas/SnssaiList' + amfSet: + $ref: 'genericNrm.yaml#/components/schemas/Dn' + managedNFProfile: + $ref: '#/components/schemas/ManagedNFProfile' + commModelList: + $ref: '#/components/schemas/CommModelList' + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' + - type: object + properties: + EP_N2: + $ref: '#/components/schemas/EP_N2-Multiple' + EP_N8: + $ref: '#/components/schemas/EP_N8-Multiple' + EP_N11: + $ref: '#/components/schemas/EP_N11-Multiple' + EP_N12: + $ref: '#/components/schemas/EP_N12-Multiple' + EP_N14: + $ref: '#/components/schemas/EP_N14-Multiple' + EP_N15: + $ref: '#/components/schemas/EP_N15-Multiple' + EP_N17: + $ref: '#/components/schemas/EP_N17-Multiple' + EP_N20: + $ref: '#/components/schemas/EP_N20-Multiple' + EP_N22: + $ref: '#/components/schemas/EP_N22-Multiple' + EP_N26: + $ref: '#/components/schemas/EP_N26-Multiple' + EP_NLS: + $ref: '#/components/schemas/EP_NLS-Multiple' + EP_NLG: + $ref: '#/components/schemas/EP_NLG-Multiple' + AmfSet-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' + - type: object + properties: + plmnIdList: + $ref: 'nrNrm.yaml#/components/schemas/PlmnIdList' + nRTACList: + $ref: '#/components/schemas/TACList' + amfSetId: + $ref: '#/components/schemas/AmfSetId' + snssaiList: + $ref: 'nrNrm.yaml#/components/schemas/SnssaiList' + AmfRegion-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' + - type: object + properties: + plmnIdList: + $ref: 'nrNrm.yaml#/components/schemas/PlmnIdList' + nRTACList: + $ref: '#/components/schemas/TACList' + amfRegionId: + $ref: '#/components/schemas/AmfRegionId' + snssaiList: + $ref: 'nrNrm.yaml#/components/schemas/SnssaiList' + SmfFunction-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' + - type: object + properties: + plmnIdList: + $ref: 'nrNrm.yaml#/components/schemas/PlmnIdList' + nRTACList: + $ref: '#/components/schemas/TACList' + sBIFqdn: + type: string + snssaiList: + $ref: 'nrNrm.yaml#/components/schemas/SnssaiList' + managedNFProfile: + $ref: '#/components/schemas/ManagedNFProfile' + commModelList: + $ref: '#/components/schemas/CommModelList' + configurable5QISetRef: + $ref: 'genericNrm.yaml#/components/schemas/Dn' + dynamic5QISetRef: + $ref: 'genericNrm.yaml#/components/schemas/Dn' + + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' + - type: object + properties: + EP_N4: + $ref: '#/components/schemas/EP_N4-Multiple' + EP_N7: + $ref: '#/components/schemas/EP_N7-Multiple' + EP_N10: + $ref: '#/components/schemas/EP_N10-Multiple' + EP_N11: + $ref: '#/components/schemas/EP_N11-Multiple' + EP_N16: + $ref: '#/components/schemas/EP_N16-Multiple' + EP_S5C: + $ref: '#/components/schemas/EP_S5C-Multiple' + FiveQiDscpMappingSet: + $ref: '#/components/schemas/FiveQiDscpMappingSet-Single' + GtpUPathQoSMonitoringControl: + $ref: '#/components/schemas/GtpUPathQoSMonitoringControl-Single' + QFQoSMonitoringControl: + $ref: '#/components/schemas/QFQoSMonitoringControl-Single' + PredefinedPccRuleSet: + $ref: '#/components/schemas/PredefinedPccRuleSet-Single' + + UpfFunction-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' + - type: object + properties: + plmnIdList: + $ref: 'nrNrm.yaml#/components/schemas/PlmnIdList' + nRTACList: + $ref: '#/components/schemas/TACList' + snssaiList: + $ref: 'nrNrm.yaml#/components/schemas/SnssaiList' + managedNFProfile: + $ref: '#/components/schemas/ManagedNFProfile' + commModelList: + $ref: '#/components/schemas/CommModelList' + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' + - type: object + properties: + EP_N3: + $ref: '#/components/schemas/EP_N3-Multiple' + EP_N4: + $ref: '#/components/schemas/EP_N4-Multiple' + EP_N6: + $ref: '#/components/schemas/EP_N6-Multiple' + EP_N9: + $ref: '#/components/schemas/EP_N9-Multiple' + EP_S5U: + $ref: '#/components/schemas/EP_S5U-Multiple' + N3iwfFunction-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' + - type: object + properties: + plmnIdList: + $ref: 'nrNrm.yaml#/components/schemas/PlmnIdList' + commModelList: + $ref: '#/components/schemas/CommModelList' + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' + - type: object + properties: + EP_N3: + $ref: '#/components/schemas/EP_N3-Multiple' + EP_N4: + $ref: '#/components/schemas/EP_N4-Multiple' + PcfFunction-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' + - type: object + properties: + plmnIdList: + $ref: 'nrNrm.yaml#/components/schemas/PlmnIdList' + sBIFqdn: + type: string + snssaiList: + $ref: 'nrNrm.yaml#/components/schemas/SnssaiList' + managedNFProfile: + $ref: '#/components/schemas/ManagedNFProfile' + commModelList: + $ref: '#/components/schemas/CommModelList' + configurable5QISetRef: + $ref: 'genericNrm.yaml#/components/schemas/Dn' + dynamic5QISetRef: + $ref: 'genericNrm.yaml#/components/schemas/Dn' + + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' + - type: object + properties: + EP_N5: + $ref: '#/components/schemas/EP_N5-Multiple' + EP_N7: + $ref: '#/components/schemas/EP_N7-Multiple' + EP_N15: + $ref: '#/components/schemas/EP_N15-Multiple' + EP_N16: + $ref: '#/components/schemas/EP_N16-Multiple' + EP_Rx: + $ref: '#/components/schemas/EP_Rx-Multiple' + PredefinedPccRuleSet: + $ref: '#/components/schemas/PredefinedPccRuleSet-Single' + + AusfFunction-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' + - type: object + properties: + plmnIdList: + $ref: 'nrNrm.yaml#/components/schemas/PlmnIdList' + sBIFqdn: + type: string + snssaiList: + $ref: 'nrNrm.yaml#/components/schemas/SnssaiList' + managedNFProfile: + $ref: '#/components/schemas/ManagedNFProfile' + commModelList: + $ref: '#/components/schemas/CommModelList' + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' + - type: object + properties: + EP_N12: + $ref: '#/components/schemas/EP_N12-Multiple' + EP_N13: + $ref: '#/components/schemas/EP_N13-Multiple' + UdmFunction-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' + - type: object + properties: + plmnIdList: + $ref: 'nrNrm.yaml#/components/schemas/PlmnIdList' + sBIFqdn: + type: string + snssaiList: + $ref: 'nrNrm.yaml#/components/schemas/SnssaiList' + managedNFProfile: + $ref: '#/components/schemas/ManagedNFProfile' + commModelList: + $ref: '#/components/schemas/CommModelList' + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' + - type: object + properties: + EP_N8: + $ref: '#/components/schemas/EP_N8-Multiple' + EP_N10: + $ref: '#/components/schemas/EP_N10-Multiple' + EP_N13: + $ref: '#/components/schemas/EP_N13-Multiple' + UdrFunction-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' + - type: object + properties: + plmnIdList: + $ref: 'nrNrm.yaml#/components/schemas/PlmnIdList' + sBIFqdn: + type: string + snssaiList: + $ref: 'nrNrm.yaml#/components/schemas/SnssaiList' + managedNFProfile: + $ref: '#/components/schemas/ManagedNFProfile' + UdsfFunction-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' + - type: object + properties: + plmnIdList: + $ref: 'nrNrm.yaml#/components/schemas/PlmnIdList' + sBIFqdn: + type: string + snssaiList: + $ref: 'nrNrm.yaml#/components/schemas/SnssaiList' + managedNFProfile: + $ref: '#/components/schemas/ManagedNFProfile' + NrfFunction-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' + - type: object + properties: + plmnIdList: + $ref: 'nrNrm.yaml#/components/schemas/PlmnIdList' + sBIFqdn: + type: string + cNSIIdList: + $ref: '#/components/schemas/CNSIIdList' + nFProfileList: + $ref: '#/components/schemas/NFProfileList' + snssaiList: + $ref: 'nrNrm.yaml#/components/schemas/SnssaiList' + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' + - type: object + properties: + EP_N27: + $ref: '#/components/schemas/EP_N27-Multiple' + NssfFunction-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' + - type: object + properties: + plmnIdList: + $ref: 'nrNrm.yaml#/components/schemas/PlmnIdList' + sBIFqdn: + type: string + cNSIIdList: + $ref: '#/components/schemas/CNSIIdList' + nFProfileList: + $ref: '#/components/schemas/NFProfileList' + snssaiList: + $ref: 'nrNrm.yaml#/components/schemas/SnssaiList' + commModelList: + $ref: '#/components/schemas/CommModelList' + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' + - type: object + properties: + EP_N22: + $ref: '#/components/schemas/EP_N22-Multiple' + EP_N31: + $ref: '#/components/schemas/EP_N31-Multiple' + SmsfFunction-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' + - type: object + properties: + plmnIdList: + $ref: 'nrNrm.yaml#/components/schemas/PlmnIdList' + sBIFqdn: + type: string + managedNFProfile: + $ref: '#/components/schemas/ManagedNFProfile' + commModelList: + $ref: '#/components/schemas/CommModelList' + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' + - type: object + properties: + EP_N20: + $ref: '#/components/schemas/EP_N20-Multiple' + EP_N21: + $ref: '#/components/schemas/EP_N21-Multiple' + EP_MAP_SMSC: + $ref: '#/components/schemas/EP_MAP_SMSC-Multiple' + LmfFunction-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' + - type: object + properties: + plmnIdList: + $ref: 'nrNrm.yaml#/components/schemas/PlmnIdList' + managedNFProfile: + $ref: '#/components/schemas/ManagedNFProfile' + commModelList: + $ref: '#/components/schemas/CommModelList' + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' + - type: object + properties: + EP_NLS: + $ref: '#/components/schemas/EP_NLS-Multiple' + NgeirFunction-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' + - type: object + properties: + plmnIdList: + $ref: 'nrNrm.yaml#/components/schemas/PlmnIdList' + sBIFqdn: + type: string + snssaiList: + $ref: 'nrNrm.yaml#/components/schemas/SnssaiList' + managedNFProfile: + $ref: '#/components/schemas/ManagedNFProfile' + commModelList: + $ref: '#/components/schemas/CommModelList' + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' + - type: object + properties: + EP_N17: + $ref: '#/components/schemas/EP_N17-Multiple' + SeppFunction-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' + - type: object + properties: + plmnId: + $ref: 'nrNrm.yaml#/components/schemas/PlmnId' + sEPPType: + $ref: '#/components/schemas/SEPPType' + sEPPId: + type: integer + fqdn: + $ref: 'genericNrm.yaml#/components/schemas/Fqdn' + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' + - type: object + properties: + EP_N32: + $ref: '#/components/schemas/EP_N32-Multiple' + NwdafFunction-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' + - type: object + properties: + plmnIdList: + $ref: 'nrNrm.yaml#/components/schemas/PlmnIdList' + sBIFqdn: + type: string + snssaiList: + $ref: 'nrNrm.yaml#/components/schemas/SnssaiList' + managedNFProfile: + $ref: '#/components/schemas/ManagedNFProfile' + commModelList: + $ref: '#/components/schemas/CommModelList' + networkSliceInfoList: + $ref: '#/components/schemas/NetworkSliceInfoList' + + ScpFunction-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' + - type: object + properties: + supportedFuncList: + $ref: '#/components/schemas/SupportedFuncList' + address: + $ref: 'genericNrm.yaml#/components/schemas/HostAddr' + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' + NefFunction-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' + - type: object + properties: + sBIFqdn: + type: string + snssaiList: + $ref: 'nrNrm.yaml#/components/schemas/SnssaiList' + managedNFProfile: + $ref: '#/components/schemas/ManagedNFProfile' + capabilityList: + $ref: '#/components/schemas/CapabilityList' + isINEF: + type: boolean + isCAPIFSup: + type: boolean + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' + + NsacfFunction-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' + - type: object + properties: + managedNFProfile: + $ref: '#/components/schemas/ManagedNFProfile' + nsacfInfoSnssai: + type: array + items: + $ref: '#/components/schemas/NsacfInfoSnssai' + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' + - type: object + properties: + EP_N60: + $ref: '#/components/schemas/EP_N60-Multiple' + + ExternalAmfFunction-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' + - type: object + properties: + plmnIdList: + $ref: 'nrNrm.yaml#/components/schemas/PlmnIdList' + amfIdentifier: + $ref: '#/components/schemas/AmfIdentifier' + ExternalNrfFunction-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' + - type: object + properties: + plmnIdList: + $ref: 'nrNrm.yaml#/components/schemas/PlmnIdList' + ExternalNssfFunction-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' + - type: object + properties: + plmnIdList: + $ref: 'nrNrm.yaml#/components/schemas/PlmnIdList' + ExternalSeppFunction-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' + - type: object + properties: + plmnId: + $ref: 'nrNrm.yaml#/components/schemas/PlmnId' + sEPPId: + type: integer + fqdn: + $ref: 'genericNrm.yaml#/components/schemas/Fqdn' + + + EP_N2-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' + - type: object + properties: + localAddress: + $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' + remoteAddress: + $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' + EP_N3-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' + - type: object + properties: + localAddress: + $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' + remoteAddress: + $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' + epTransportRefs: + $ref: 'genericNrm.yaml#/components/schemas/DnList' + EP_N4-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' + - type: object + properties: + localAddress: + $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' + remoteAddress: + $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' + EP_N5-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' + - type: object + properties: + localAddress: + $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' + remoteAddress: + $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' + EP_N6-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' + - type: object + properties: + localAddress: + $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' + remoteAddress: + $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' + EP_N7-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' + - type: object + properties: + localAddress: + $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' + remoteAddress: + $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' + EP_N8-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' + - type: object + properties: + localAddress: + $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' + remoteAddress: + $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' + EP_N9-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' + - type: object + properties: + localAddress: + $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' + remoteAddress: + $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' + EP_N10-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' + - type: object + properties: + localAddress: + $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' + remoteAddress: + $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' + EP_N11-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' + - type: object + properties: + localAddress: + $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' + remoteAddress: + $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' + EP_N12-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' + - type: object + properties: + localAddress: + $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' + remoteAddress: + $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' + EP_N13-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' + - type: object + properties: + localAddress: + $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' + remoteAddress: + $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' + EP_N14-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' + - type: object + properties: + localAddress: + $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' + remoteAddress: + $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' + EP_N15-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' + - type: object + properties: + localAddress: + $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' + remoteAddress: + $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' + EP_N16-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' + - type: object + properties: + localAddress: + $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' + remoteAddress: + $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' + EP_N17-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' + - type: object + properties: + localAddress: + $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' + remoteAddress: + $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' + + EP_N20-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' + - type: object + properties: + localAddress: + $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' + remoteAddress: + $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' + + EP_N21-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' + - type: object + properties: + localAddress: + $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' + remoteAddress: + $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' + EP_N22-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' + - type: object + properties: + localAddress: + $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' + remoteAddress: + $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' + + EP_N26-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' + - type: object + properties: + localAddress: + $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' + remoteAddress: + $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' + EP_N27-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' + - type: object + properties: + localAddress: + $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' + remoteAddress: + $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' + + + EP_N31-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' + - type: object + properties: + localAddress: + $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' + remoteAddress: + $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' + EP_N32-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' + - type: object + properties: + remotePlmnId: + $ref: 'nrNrm.yaml#/components/schemas/PlmnId' + remoteSeppAddress: + $ref: 'genericNrm.yaml#/components/schemas/HostAddr' + remoteSeppId: + type: integer + n32cParas: + type: string + n32fPolicy: + type: string + withIPX: + type: boolean + + EP_S5C-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' + - type: object + properties: + localAddress: + $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' + remoteAddress: + $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' + EP_S5U-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' + - type: object + properties: + localAddress: + $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' + remoteAddress: + $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' + EP_Rx-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' + - type: object + properties: + localAddress: + $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' + remoteAddress: + $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' + EP_MAP_SMSC-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' + - type: object + properties: + localAddress: + $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' + remoteAddress: + $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' + EP_NLS-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' + - type: object + properties: + localAddress: + $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' + remoteAddress: + $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' + EP_NLG-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' + - type: object + properties: + localAddress: + $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' + remoteAddress: + $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' + + EP_N60-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' + - type: object + properties: + localAddress: + $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' + remoteAddress: + $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' + + FiveQiDscpMappingSet-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + allOf: + - type: object + properties: + FiveQiDscpMappingList: + type: array + items: + $ref: '#/components/schemas/FiveQiDscpMapping' + + Configurable5QISet-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + allOf: + - type: object + properties: + configurable5QIs: + type: array + items: + $ref: '#/components/schemas/FiveQICharacteristics' + + Dynamic5QISet-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + allOf: + - type: object + properties: + dynamic5QIs: + type: array + items: + $ref: '#/components/schemas/FiveQICharacteristics' + + GtpUPathQoSMonitoringControl-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + allOf: + - type: object + properties: + gtpUPathQoSMonitoringState: + type: string + enum: + - ENABLED + - DISABLED + gtpUPathMonitoredSNSSAIs: + type: array + items: + $ref: 'nrNrm.yaml#/components/schemas/Snssai' + monitoredDSCPs: + type: array + items: + type: integer + minimum: 0 + maximum: 255 + isEventTriggeredGtpUPathMonitoringSupported: + type: boolean + isPeriodicGtpUMonitoringSupported: + type: boolean + isImmediateGtpUMonitoringSupported: + type: boolean + gtpUPathDelayThresholds: + $ref: '#/components/schemas/GtpUPathDelayThresholdsType' + gtpUPathMinimumWaitTime: + type: integer + gtpUPathMeasurementPeriod: + type: integer + + QFQoSMonitoringControl-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + allOf: + - type: object + properties: + qFQoSMonitoringState: + type: string + enum: + - ENABLED + - DISABLED + qFMonitoredSNSSAIs: + type: array + items: + $ref: 'nrNrm.yaml#/components/schemas/Snssai' + qFMonitored5QIs: + type: array + items: + type: integer + minimum: 0 + maximum: 255 + isEventTriggeredQFMonitoringSupported: + type: boolean + isPeriodicQFMonitoringSupported: + type: boolean + isSessionReleasedQFMonitoringSupported: + type: boolean + qFPacketDelayThresholds: + $ref: '#/components/schemas/QFPacketDelayThresholdsType' + qFMinimumWaitTime: + type: integer + qFMeasurementPeriod: + type: integer + + PredefinedPccRuleSet-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + allOf: + - type: object + properties: + predefinedPccRules: + type: array + items: + $ref: '#/components/schemas/PccRule' + +#-------- Definition of JSON arrays for name-contained IOCs ---------------------- + + SubNetwork-Multiple: + type: array + items: + $ref: '#/components/schemas/SubNetwork-Single' + ManagedElement-Multiple: + type: array + items: + $ref: '#/components/schemas/ManagedElement-Single' + AmfFunction-Multiple: + type: array + items: + $ref: '#/components/schemas/AmfFunction-Single' + SmfFunction-Multiple: + type: array + items: + $ref: '#/components/schemas/SmfFunction-Single' + UpfFunction-Multiple: + type: array + items: + $ref: '#/components/schemas/UpfFunction-Single' + N3iwfFunction-Multiple: + type: array + items: + $ref: '#/components/schemas/N3iwfFunction-Single' + PcfFunction-Multiple: + type: array + items: + $ref: '#/components/schemas/PcfFunction-Single' + AusfFunction-Multiple: + type: array + items: + $ref: '#/components/schemas/AusfFunction-Single' + UdmFunction-Multiple: + type: array + items: + $ref: '#/components/schemas/UdmFunction-Single' + UdrFunction-Multiple: + type: array + items: + $ref: '#/components/schemas/UdrFunction-Single' + UdsfFunction-Multiple: + type: array + items: + $ref: '#/components/schemas/UdsfFunction-Single' + NrfFunction-Multiple: + type: array + items: + $ref: '#/components/schemas/NrfFunction-Single' + NssfFunction-Multiple: + type: array + items: + $ref: '#/components/schemas/NssfFunction-Single' + SmsfFunction-Multiple: + type: array + items: + $ref: '#/components/schemas/SmsfFunction-Single' + LmfFunction-Multiple: + type: array + items: + $ref: '#/components/schemas/LmfFunction-Single' + NgeirFunction-Multiple: + type: array + items: + $ref: '#/components/schemas/NgeirFunction-Single' + SeppFunction-Multiple: + type: array + items: + $ref: '#/components/schemas/SeppFunction-Single' + NwdafFunction-Multiple: + type: array + items: + $ref: '#/components/schemas/NwdafFunction-Single' + ScpFunction-Multiple: + type: array + items: + $ref: '#/components/schemas/ScpFunction-Single' + NefFunction-Multiple: + type: array + items: + $ref: '#/components/schemas/NefFunction-Single' + + NsacfFunction-Multiple: + type: array + items: + $ref: '#/components/schemas/NsacfFunction-Single' + + ExternalAmfFunction-Multiple: + type: array + items: + $ref: '#/components/schemas/ExternalAmfFunction-Single' + ExternalNrfFunction-Multiple: + type: array + items: + $ref: '#/components/schemas/ExternalNrfFunction-Single' + ExternalNssfFunction-Multiple: + type: array + items: + $ref: '#/components/schemas/ExternalNssfFunction-Single' + ExternalSeppFunction-Nultiple: + type: array + items: + $ref: '#/components/schemas/ExternalSeppFunction-Single' + + AmfSet-Multiple: + type: array + items: + $ref: '#/components/schemas/AmfSet-Single' + AmfRegion-Multiple: + type: array + items: + $ref: '#/components/schemas/AmfRegion-Single' + + EP_N2-Multiple: + type: array + items: + $ref: '#/components/schemas/EP_N2-Single' + EP_N3-Multiple: + type: array + items: + $ref: '#/components/schemas/EP_N3-Single' + EP_N4-Multiple: + type: array + items: + $ref: '#/components/schemas/EP_N4-Single' + EP_N5-Multiple: + type: array + items: + $ref: '#/components/schemas/EP_N5-Single' + EP_N6-Multiple: + type: array + items: + $ref: '#/components/schemas/EP_N6-Single' + EP_N7-Multiple: + type: array + items: + $ref: '#/components/schemas/EP_N7-Single' + EP_N8-Multiple: + type: array + items: + $ref: '#/components/schemas/EP_N8-Single' + EP_N9-Multiple: + type: array + items: + $ref: '#/components/schemas/EP_N9-Single' + EP_N10-Multiple: + type: array + items: + $ref: '#/components/schemas/EP_N10-Single' + EP_N11-Multiple: + type: array + items: + $ref: '#/components/schemas/EP_N11-Single' + EP_N12-Multiple: + type: array + items: + $ref: '#/components/schemas/EP_N12-Single' + EP_N13-Multiple: + type: array + items: + $ref: '#/components/schemas/EP_N13-Single' + EP_N14-Multiple: + type: array + items: + $ref: '#/components/schemas/EP_N14-Single' + EP_N15-Multiple: + type: array + items: + $ref: '#/components/schemas/EP_N15-Single' + EP_N16-Multiple: + type: array + items: + $ref: '#/components/schemas/EP_N16-Single' + EP_N17-Multiple: + type: array + items: + $ref: '#/components/schemas/EP_N17-Single' + + EP_N20-Multiple: + type: array + items: + $ref: '#/components/schemas/EP_N20-Single' + EP_N21-Multiple: + type: array + items: + $ref: '#/components/schemas/EP_N21-Single' + EP_N22-Multiple: + type: array + items: + $ref: '#/components/schemas/EP_N22-Single' + + EP_N26-Multiple: + type: array + items: + $ref: '#/components/schemas/EP_N26-Single' + EP_N27-Multiple: + type: array + items: + $ref: '#/components/schemas/EP_N27-Single' + + EP_N31-Multiple: + type: array + items: + $ref: '#/components/schemas/EP_N31-Single' + EP_N32-Multiple: + type: array + items: + $ref: '#/components/schemas/EP_N32-Single' + + EP_S5C-Multiple: + type: array + items: + $ref: '#/components/schemas/EP_S5C-Single' + EP_S5U-Multiple: + type: array + items: + $ref: '#/components/schemas/EP_S5U-Single' + EP_Rx-Multiple: + type: array + items: + $ref: '#/components/schemas/EP_Rx-Single' + EP_MAP_SMSC-Multiple: + type: array + items: + $ref: '#/components/schemas/EP_MAP_SMSC-Single' + EP_NLS-Multiple: + type: array + items: + $ref: '#/components/schemas/EP_NLS-Single' + EP_NLG-Multiple: + type: array + items: + $ref: '#/components/schemas/EP_NLG-Single' + EP_N60-Multiple: + type: array + items: + $ref: '#/components/schemas/EP_N60-Single' + + Configurable5QISet-Multiple: + type: array + items: + $ref: '#/components/schemas/Configurable5QISet-Single' + Dynamic5QISet-Multiple: + type: array + items: + $ref: '#/components/schemas/Dynamic5QISet-Single' + + + +#------------ Definitions in TS 28.541 for TS 28.532 ----------------------------- + + resources-5gcNrm: + oneOf: + - $ref: '#/components/schemas/SubNetwork-Single' + - $ref: '#/components/schemas/ManagedElement-Single' + - $ref: '#/components/schemas/AmfFunction-Single' + - $ref: '#/components/schemas/SmfFunction-Single' + - $ref: '#/components/schemas/UpfFunction-Single' + - $ref: '#/components/schemas/N3iwfFunction-Single' + - $ref: '#/components/schemas/PcfFunction-Single' + - $ref: '#/components/schemas/AusfFunction-Single' + - $ref: '#/components/schemas/UdmFunction-Single' + - $ref: '#/components/schemas/UdrFunction-Single' + - $ref: '#/components/schemas/UdsfFunction-Single' + - $ref: '#/components/schemas/NrfFunction-Single' + - $ref: '#/components/schemas/NssfFunction-Single' + - $ref: '#/components/schemas/SmsfFunction-Single' + - $ref: '#/components/schemas/LmfFunction-Single' + - $ref: '#/components/schemas/NgeirFunction-Single' + - $ref: '#/components/schemas/SeppFunction-Single' + - $ref: '#/components/schemas/NwdafFunction-Single' + - $ref: '#/components/schemas/ScpFunction-Single' + - $ref: '#/components/schemas/NefFunction-Single' + - $ref: '#/components/schemas/NsacfFunction-Single' + + - $ref: '#/components/schemas/ExternalAmfFunction-Single' + - $ref: '#/components/schemas/ExternalNrfFunction-Single' + - $ref: '#/components/schemas/ExternalNssfFunction-Single' + - $ref: '#/components/schemas/ExternalSeppFunction-Single' + + - $ref: '#/components/schemas/AmfSet-Single' + - $ref: '#/components/schemas/AmfRegion-Single' + - $ref: '#/components/schemas/QFQoSMonitoringControl-Single' + - $ref: '#/components/schemas/GtpUPathQoSMonitoringControl-Single' + + - $ref: '#/components/schemas/EP_N2-Single' + - $ref: '#/components/schemas/EP_N3-Single' + - $ref: '#/components/schemas/EP_N4-Single' + - $ref: '#/components/schemas/EP_N5-Single' + - $ref: '#/components/schemas/EP_N6-Single' + - $ref: '#/components/schemas/EP_N7-Single' + - $ref: '#/components/schemas/EP_N8-Single' + - $ref: '#/components/schemas/EP_N9-Single' + - $ref: '#/components/schemas/EP_N10-Single' + - $ref: '#/components/schemas/EP_N11-Single' + - $ref: '#/components/schemas/EP_N12-Single' + - $ref: '#/components/schemas/EP_N13-Single' + - $ref: '#/components/schemas/EP_N14-Single' + - $ref: '#/components/schemas/EP_N15-Single' + - $ref: '#/components/schemas/EP_N16-Single' + - $ref: '#/components/schemas/EP_N17-Single' + + - $ref: '#/components/schemas/EP_N20-Single' + - $ref: '#/components/schemas/EP_N21-Single' + - $ref: '#/components/schemas/EP_N22-Single' + + - $ref: '#/components/schemas/EP_N26-Single' + - $ref: '#/components/schemas/EP_N27-Single' + + - $ref: '#/components/schemas/EP_N31-Single' + - $ref: '#/components/schemas/EP_N31-Single' + - $ref: '#/components/schemas/EP_N60-Single' + + - $ref: '#/components/schemas/EP_S5C-Single' + - $ref: '#/components/schemas/EP_S5U-Single' + - $ref: '#/components/schemas/EP_Rx-Single' + - $ref: '#/components/schemas/EP_MAP_SMSC-Single' + - $ref: '#/components/schemas/EP_NLS-Single' + - $ref: '#/components/schemas/EP_NLG-Single' + - $ref: '#/components/schemas/Configurable5QISet-Single' + - $ref: '#/components/schemas/FiveQiDscpMappingSet-Single' + - $ref: '#/components/schemas/PredefinedPccRuleSet-Single' + - $ref: '#/components/schemas/Dynamic5QISet-Single' diff --git a/OpenAPI/PerDataFileReportMnS.yaml b/OpenAPI/PerDataFileReportMnS.yaml new file mode 100644 index 000000000..83fd77acb --- /dev/null +++ b/OpenAPI/PerDataFileReportMnS.yaml @@ -0,0 +1,13 @@ +openapi: 3.0.1 +info: + title: TS 28.532 File data reporting Service + version: 16.6.0 + description: >- + OAS 3.0.1 specification of the File data reporting Management Service © 2020, + 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). All + rights reserved. +externalDocs: + description: 3GPP TS 28.532 V16.5.0; Generic management services + url: 'http://www.3gpp.org/ftp/Specs/archive/28_series/28.532/' +paths: {} + diff --git a/OpenAPI/PerMeasJobCtlMnS.yaml b/OpenAPI/PerMeasJobCtlMnS.yaml new file mode 100644 index 000000000..b6abe58b2 --- /dev/null +++ b/OpenAPI/PerMeasJobCtlMnS.yaml @@ -0,0 +1,280 @@ +openapi: 3.0.1 +info: + title: TS 28.550 Performance Measurement Job Control Service + version: 16.5.0 + description: >- + OAS 3.0.1 specification of the Performance Measurement Job Control Service + @ 2020, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). + All rights reserved. +externalDocs: + description: 3GPP TS 28.550 V16.5.0; Performance assurance + url: http://www.3gpp.org/ftp/Specs/archive/28_series/28.550/ +servers: + - url: 'http://{URI-DN-prefix}/{root}/PerfMeasJobCtrlMnS/v1650/{LDN-first-part}' + variables: + URI-DN-prefix: + description: See subclause 4.4 of TS 32.158 + default: example.com + root: + description: See subclause 4.4 of TS 32.158 + default: 3GPPManagement + LDN-first-part: + description: See subclause 4.4 of TS 32.158 + default: '' +paths: + /measJobs: + post: + summary: Create a measurement job + description: To create a measurement job the representation of the measurement job is POSTed on the /measJobs collection resource. + requestBody: + required: true + content: + application/json: + schema: + $ref: '#/components/schemas/measJobCreation-RequestType' + responses: + '201': + description: Success case ("201 Created"). The representation of the newly created measurement job resource shall be returned. + content: + application/json: + schema: + $ref: '#/components/schemas/measJobCreation-ResponseType' + '202': + description: Partial success case ("202 Partically created"). The representation of the newly created measurement job resource with unsupported list shall be returned. + content: + application/json: + schema: + $ref: '#/components/schemas/measJobCreation-ResponseType' + default: + description: Error case. + content: + application/json: + schema: + $ref: '#/components/schemas/error-ResponseType' + get: + summary: Read resources of measurement jobs + description: 'With HTTP GET, resources of measurement jobs are read. The resources to be read are identified with the path component (base resource) and the query component (jobIdList) of the URI. The fields query component allows to select the resource properties to be returned.' + parameters: + - name: jobIdList + in: query + description: This parameter identifies the list of jobId to select the resources from the collection resources identified with the path component of the URI. + required: true + schema: + type: array + items: + type: string + responses: + '200': + description: 'Success case ("200 OK"). The resources identified in the request for retrieval are returned in the response message body. In case the fields query parameter is used, the selected resources are returned.' + content: + application/json: + schema: + $ref: '#/components/schemas/measJobsRetrieval-ResponseType' + default: + description: Error case. + content: + application/json: + schema: + $ref: '#/components/schemas/error-ResponseType' + '/measJobs/{jobId}': + get: + summary: Read resource of a single measurement job + description: 'With HTTP GET, resource of a measurement job is read. The resource to be read is identified with the path component of the URI.' + parameters: + - name: jobId + in: path + description: Identifies the measurement job to be read. + required: true + schema: + $ref: '#/components/schemas/uri-Type' + responses: + '200': + description: 'Success case ("200 OK"). The resource identified in the path for retrieval is returned in the response message body. ' + content: + application/json: + schema: + $ref: '#/components/schemas/measJobsRetrieval-ResponseType' + default: + description: Error case. + content: + application/json: + schema: + $ref: '#/components/schemas/error-ResponseType' + delete: + summary: Delete a single measurement job + description: The measurement job is deleted by deleting the corresponding measurement job resource. The resource to be deleted is identified with the path component of the URI. + parameters: + - name: jobId + in: path + description: Identifies the measurement job to be deleted. + required: true + schema: + $ref: '#/components/schemas/uri-Type' + responses: + '204': + description: Success case ("204 No Content"). The measurement job resource has been deleted. The response message body is absent. + default: + description: Error case. + content: + application/json: + schema: + $ref: '#/components/schemas/error-ResponseType' +components: + schemas: + dateTime-Type: + type: string + format: date-Time + uri-Type: + type: string + measJobCreation-RequestType: + type: object + properties: + iOCName: + type: string + iOCInstanceList: + type: array + items: + $ref: '#/components/schemas/uri-Type' + measurementCategoryList: + type: array + items: + type: string + reportingMethod: + $ref: '#/components/schemas/reportingMethod-Type' + granularityPeriod: + type: integer + reportingPeriod: + type: integer + startTime: + $ref: '#/components/schemas/dateTime-Type' + stopTime: + $ref: '#/components/schemas/dateTime-Type' + schedule: + $ref: '#/components/schemas/schedule-Type' + streamTarget: + type: string + priority: + $ref: '#/components/schemas/priority-Type' + reliability: + type: string + measJobCreation-ResponseType: + type: object + properties: + unsupportedList: + type: array + items: + $ref: '#/components/schemas/unsupportedMeas-Type' + measJobsRetrieval-ResponseType: + type: object + properties: + jobInfoList: + type: array + items: + $ref: '#/components/schemas/measJobInfo-ResourceType' + error-ResponseType: + type: object + properties: + error: + type: object + properties: + errorInfo: + type: string + measJobInfo-ResourceType: + type: object + properties: + href: + $ref: '#/components/schemas/uri-Type' + iOCName: + type: string + iOCInstanceList: + type: array + items: + $ref: '#/components/schemas/uri-Type' + measurementCategoryList: + type: array + items: + type: string + reportingMethod: + $ref: '#/components/schemas/reportingMethod-Type' + granularityPeriod: + type: integer + reportingPeriod: + type: integer + startTime: + $ref: '#/components/schemas/dateTime-Type' + stopTime: + $ref: '#/components/schemas/dateTime-Type' + schedule: + $ref: '#/components/schemas/schedule-Type' + streamTarget: + type: string + priority: + $ref: '#/components/schemas/priority-Type' + reliability: + type: string + schedule-Type: + type: object + properties: + scheduleOption: + $ref: '#/components/schemas/scheduleOption-Type' + dailySchedule: + type: array + items: + $ref: '#/components/schemas/timeInterval-Type' + weeklySchedule: + type: array + items: + $ref: '#/components/schemas/scheduleOfDay-Type' + timeInterval-Type: + type: object + properties: + intervalStart: + type: string + format: Time + intervalEnd: + type: string + format: Time + scheduleOfDay-Type: + type: object + properties: + dayOfWeek: + $ref: '#/components/schemas/dayOfWeek-Type' + intervalsOfDay: + type: array + items: + $ref: '#/components/schemas/timeInterval-Type' + unsupportedMeas-Type: + type: object + properties: + iOCInstance: + $ref: '#/components/schemas/uri-Type' + measurementTypeName: + type: string + reason: + type: string + reportingMethod-Type: + type: string + enum: + - file + - streaming + priority-Type: + type: string + enum: + - low + - medium + - high + scheduleOption-Type: + type: string + enum: + - daily + - weekly + dayOfWeek-Type: + type: string + enum: + - Monday + - Tuesday + - Wednesday + - Thursday + - Friday + - Saturday + - Sunday diff --git a/OpenAPI/PerThresMonMnS.yaml b/OpenAPI/PerThresMonMnS.yaml new file mode 100644 index 000000000..923640a11 --- /dev/null +++ b/OpenAPI/PerThresMonMnS.yaml @@ -0,0 +1,102 @@ +openapi: 3.0.1 +info: + title: TS 28.532 Performance Threshold Monitoring Service + version: 16.4.0 + description: OAS 3.0.1 specification of the Performance Threshold Monitoring Service +servers: + - url: 'http://{monitoringNotifTarget}' + variables: + monitoringNotifTarget: + description: >- + The open API server of the performance threshold monitoring service is + located in the consumer side, see monitoringNotifTarget attribute of + the IOC ThresholdMonitor defined in 3GPP TS 28.622 [11]. + default: example.com +paths: + /notificationSink: + post: + summary: Send notifications about performance threshold crossing + description: To send a notifyThresholdCrossing notification + requestBody: + required: true + content: + application/json: + schema: + $ref: '#/components/schemas/notifyThresholdCrossing-NotifType' + responses: + '204': + description: >- + Success case ("204 No Content"). The notification is successfully + delivered. The response message body is absent. + default: + description: Error case. + content: + application/json: + schema: + $ref: '#/components/schemas/error-ResponseType' +components: + schemas: + dateTime-Type: + type: string + format: date-Time + uri-Type: + type: string + long-Type: + type: string + format: long + thresholdLevel-Type: + type: integer + measurementTypeName-Type: + type: string + measurementValue-Type: + type: string + additionalText-Type: + type: string + error-ResponseType: + type: object + properties: + error: + type: object + properties: + errorInfo: + type: string + header-Type: + description: Header used in notifications as notification header + type: object + properties: + uri: + $ref: '#/components/schemas/uri-Type' + notificationId: + $ref: '#/components/schemas/notificationId-Type' + notificationType: + $ref: '#/components/schemas/notificationType-Type' + eventTime: + $ref: '#/components/schemas/dateTime-Type' + notificationId-Type: + $ref: '#/components/schemas/long-Type' + notificationType-Type: + type: string + enum: + - notifyThresholdCrossing + notifyThresholdCrossing-NotifType: + type: object + properties: + header: + $ref: '#/components/schemas/header-Type' + body: + type: object + properties: + startOfMonitoringGP: + $ref: '#/components/schemas/dateTime-Type' + endOfMonitoringGP: + $ref: '#/components/schemas/dateTime-Type' + monitoredObjectInstance: + $ref: '#/components/schemas/uri-Type' + thresholdLevel: + $ref: '#/components/schemas/thresholdLevel-Type' + measurementTypeName: + $ref: '#/components/schemas/measurementTypeName-Type' + measurementValue: + $ref: '#/components/schemas/measurementValue-Type' + additionalText: + $ref: '#/components/schemas/additionalText-Type' diff --git a/OpenAPI/PerfDataStreamingMnS.yaml b/OpenAPI/PerfDataStreamingMnS.yaml new file mode 100644 index 000000000..e040e14c8 --- /dev/null +++ b/OpenAPI/PerfDataStreamingMnS.yaml @@ -0,0 +1,363 @@ +openapi: 3.0.1 +info: + title: TS 28.550 Performance Data Streaming Service + version: 16.3.0 + description: OAS 3.0.1 specification of the Performance Data Streaming Service +servers: + - url: 'http://{streamTarget}/PerfDataStreamMnS/v1630' + description: This URL is used for posting the set of information about streams supported on the connection between the producer and the consumer. + variables: + streamTarget: + description: 'The open API server of the performance data streaming service is located in the consumer side,and the “streamTarget” part corresponds to the streamTarget parameter provided in the createMeasurementJob operation (see clause 6.1.1.2) or the streamTarget attribute of the MOI of MeasurementControlor MeasurementReader, see 3GPP TS 28.622 [5]).' + default: example.com + - url: 'wss://{streamTarget}/PerfDataStreamMnS/v1630/streamingConnection' + description: This URL is used for establishing the WebSocket connection for the performance data streaming service. + variables: + streamTarget: + description: 'The open API server of the performance data streaming service is located in the consumer side,and the “streamTarget” part corresponds to the streamTarget parameter provided in the createMeasurementJob operation (see clause 6.1.1.2) or the streamTarget attribute of the MOI of MeasurementControlor MeasurementReader, see 3GPP TS 28.622 [5]).' + default: example.com +paths: + /streamInfoList: + post: + summary: The set of information about the streams sent from the producer to the consumer + description: To send the streamInfoList from the producer to the consumer + requestBody: + required: true + content: + application/json: + schema: + $ref: '#/components/schemas/streamInfoListPost-RequestType' + responses: + '201': + description: Success case ("201 Posted"). The streamInfoList is successfully posted. + content: + application/json: + schema: + $ref: '#/components/schemas/streamInfoListPost-ResponseType' + '202': + description: Partial success case ("202 Partially posted"). The representation of the posted resource on stream information. + content: + application/json: + schema: + $ref: '#/components/schemas/streamInfoListPost-ResponseType' + default: + description: Error case. + content: + application/json: + schema: + $ref: '#/components/schemas/error-ResponseType' + get: + summary: Read resources of stream information from the streaming consumer + description: 'With HTTP GET, resources of stream information are read. The resources to be read are identified with the path component (base resource) and the query component (streamIdList) of the URI. The fields query component allows to select the resource properties to be returned.' + parameters: + - name: streamIdList + in: query + description: This parameter identifies the list of streamId to select from the collection resources identified with the path component of the URI. + required: true + schema: + type: array + items: + type: integer + responses: + '200': + description: 'Success case ("200 OK"). The resources identified in the request for retrieval are returned in the response message body. In case the fields query parameter is used, the selected resources are returned.' + content: + application/json: + schema: + $ref: '#/components/schemas/listOfStreamInfoRetrieval-ResponseType' + '202': + description: Partial success case ("202 Partially retrieved"). The representation of the retrieved resources on stream information. + content: + application/json: + schema: + $ref: '#/components/schemas/listOfStreamInfoRetrieval-ResponseType' + default: + description: Error case. + content: + application/json: + schema: + $ref: '#/components/schemas/error-ResponseType' + patch: + summary: Update resources of stream information to the streaming consumer + description: 'With HTTP PATCH, resources of stream information are to be updated. The resources to be updated are identified with the path component (base resource) and the query component (streamIdList) of the URI. The fields query component allows to select the resource properties to be updated.' + parameters: + - name: streamIdList + in: query + description: This parameter identifies the list of streamId to select from the collection resources identified with the path component of the URI. + required: true + schema: + type: array + items: + type: integer + requestBody: + required: true + content: + application/json: + schema: + $ref: '#/components/schemas/listOfStreamInfoToUpdate-RequestType' + responses: + '200': + description: Success case ("200 OK"). The resources selected by the query parameter are updated and returned in the response message body. + content: + application/json: + schema: + $ref: '#/components/schemas/listOfStreamInfoUpdate-ResponseType' + '202': + description: Partial success case ("202 Partially updated"). The representation of the updated resources on stream information + content: + application/json: + schema: + $ref: '#/components/schemas/listOfStreamInfoUpdate-ResponseType' + default: + description: Error case. + content: + application/json: + schema: + $ref: '#/components/schemas/error-ResponseType' + delete: + summary: The information of streams to be deleted by the producer to the consumer + description: 'With HTTP DELETE, resources of stream information are to be deleted. The resources to be deleted are identified with the path component (base resource) and the query component (streamIdList) of the URI. The fields query component allows to select the resource properties to be deleted.' + parameters: + - name: streamIdList + in: query + description: This parameter identifies the list of streamId to select from the collection resources identified with the path component of the URI. + required: true + schema: + type: array + items: + type: integer + responses: + '204': + description: Success case ("204 No Content"). The stream information resource has been deleted. The response message body is absent. + default: + description: Error case. + content: + application/json: + schema: + $ref: '#/components/schemas/error-ResponseType' + '/streamInfoList/{streamId}': + get: + summary: Read resource of the stream information from the streaming consumer + description: 'With HTTP GET, resource of stream information is read. The resource to be read is identified with the path component the URI.' + parameters: + - name: streamId + in: path + description: Identifies the stream for which the information is to be retrieved. + required: true + schema: + $ref: '#/components/schemas/uri-Type' + responses: + '200': + description: Success case ("200 OK"). The resource identified in the request for retrieval is returned in the response message body. + content: + application/json: + schema: + $ref: '#/components/schemas/listOfStreamInfoRetrieval-ResponseType' + default: + description: Error case. + content: + application/json: + schema: + $ref: '#/components/schemas/error-ResponseType' + patch: + summary: Update the resource of stream information to the streaming consumer + description: 'With HTTP PATCH, resource of stream information is to be updated. The resource to be updated is identified by the path component of the URI. ' + parameters: + - name: streamId + in: path + description: Identifies the stream for which the information is to be updated. + required: true + schema: + $ref: '#/components/schemas/uri-Type' + requestBody: + required: true + content: + application/json: + schema: + $ref: '#/components/schemas/streamInfoToUpdate-RequestType' + responses: + '200': + description: Success case ("200 OK"). The resources identified by the path of the URI is updated and returned in the response message body. + content: + application/json: + schema: + $ref: '#/components/schemas/streamInfoUpdate-ResponseType' + default: + description: Error case. + content: + application/json: + schema: + $ref: '#/components/schemas/error-ResponseType' + delete: + summary: The stream information to be deleted by the producer to the consumer + description: 'With HTTP DELETE, resource of stream information identified by the path component of the URI is to be deleted.' + parameters: + - name: streamId + in: path + description: Identifies the stream for which the information is to be deleted + required: true + schema: + $ref: '#/components/schemas/uri-Type' + responses: + '204': + description: Success case ("204 No Content"). The stream information resource has been deleted. The response message body is absent. + default: + description: Error case. + content: + application/json: + schema: + $ref: '#/components/schemas/error-ResponseType' + /streamConnection: + get: + summary: The connection for streaming from the producer to the consumer + description: To establish the WebSocket connection between the producer and the consumer. The HTTP version of this operation shall not be earlier than HTTP/1.1 + parameters: + - in: header + name: Upgrade + required: true + schema: + $ref: '#/components/schemas/Upgrade-HeaderType' + - in: header + name: Connection + required: true + schema: + $ref: '#/components/schemas/Connection-HeaderType' + - in: header + name: Sec-WebSocket-Key + required: true + schema: + $ref: '#/components/schemas/Sec-WebSocket-Key-HeaderType' + - in: header + name: Sec-WebSocket-Version + required: true + schema: + $ref: '#/components/schemas/Sec-WebSocket-Version-HeaderType' + responses: + '101': + description: Success case ("101 Switching Protocols "). The connection has been successfully switched to WebSocket. The response message body is absent. + headers: + Upgrade: + schema: + $ref: '#/components/schemas/Upgrade-HeaderType' + Connection: + schema: + $ref: '#/components/schemas/Connection-HeaderType' + Sec-WebSocket-Accept-HeaderType: + schema: + $ref: '#/components/schemas/Sec-WebSocket-Accept-HeaderType' + default: + description: Error case. + content: + application/json: + schema: + $ref: '#/components/schemas/error-ResponseType' +components: + schemas: + uri-Type: + type: string + streamInfoIn-Type: + type: object + properties: + streamId: + type: integer + iOCInstance: + $ref: '#/components/schemas/uri-Type' + measTypes: + type: array + items: + type: string + streamInfoOut-Type: + type: object + properties: + streamId: + $ref: '#/components/schemas/uri-Type' + iOCInstance: + $ref: '#/components/schemas/uri-Type' + measTypes: + type: array + items: + type: string + error-ResponseType: + type: object + properties: + error: + type: object + properties: + errorInfo: + type: string + streamInfoListPost-RequestType: + type: object + properties: + streamInfoList: + type: array + items: + $ref: '#/components/schemas/streamInfoIn-Type' + streamInfoListPost-ResponseType: + type: object + properties: + streamInfoListPosted: + type: array + items: + $ref: '#/components/schemas/streamInfoOut-Type' + streamInfoRetrieval-ResponseType: + type: object + properties: + streamInfoOut: + $ref: '#/components/schemas/streamInfoOut-Type' + listOfStreamInfoRetrieval-ResponseType: + type: object + properties: + listOfStreamInfoOut: + type: array + items: + $ref: '#/components/schemas/streamInfoOut-Type' + streamInfoToUpdatePropertyType: + type: object + properties: + iOCInstance: + description: 'The updated measured object instance, empty value means no update.' + allOf: + - $ref: '#/components/schemas/uri-Type' + measTypes: + description: 'The updated list of measurement type, empty value means no update.' + type: array + items: + type: string + streamInfoToUpdate-RequestType: + type: object + properties: + streamInfoToUpdate: + $ref: '#/components/schemas/streamInfoToUpdatePropertyType' + listOfStreamInfoToUpdate-RequestType: + type: object + properties: + listOfStreamInfoToUpdate: + type: array + items: + $ref: '#/components/schemas/streamInfoToUpdatePropertyType' + streamInfoUpdate-ResponseType: + type: object + properties: + streamInfoUpdated: + $ref: '#/components/schemas/streamInfoOut-Type' + listOfStreamInfoUpdate-ResponseType: + type: object + properties: + listOfStreamInfoUpdated: + type: array + items: + $ref: '#/components/schemas/streamInfoOut-Type' + Upgrade-HeaderType: + type: string + enum: + - websocket + Connection-HeaderType: + type: string + enum: + - Upgrade + Sec-WebSocket-Key-HeaderType: + type: string + Sec-WebSocket-Version-HeaderType: + type: string + Sec-WebSocket-Accept-HeaderType: + type: string diff --git a/OpenAPI/README.md b/OpenAPI/README.md new file mode 100644 index 000000000..9de057463 --- /dev/null +++ b/OpenAPI/README.md @@ -0,0 +1,73 @@ +# 3GPP SA5 models and MnS OpenAPI definitions + +(c) 2020, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). All rights reserved. + +The links below will open the Swagger Editor/UI and auto-load the OpenAPI YAML file of each API: + + +## Network Resource Models (NRM) + +* Generic NRM (TS 28.623) +([Editor](https://forge.3gpp.org/swagger/tools/loader.html?yaml=OpenAPI/genericNrm.yaml)) +([UI](https://forge.3gpp.org/swagger/tools/loader.html?action=ui&yaml=OpenAPI/genericNrm.yaml)) + +* Common NRM definitions (TS 28.623) +([Editor](https://forge.3gpp.org/swagger/tools/loader.html?yaml=OpenAPI/comDefs.yaml)) +([UI](https://forge.3gpp.org/swagger/tools/loader.html?action=ui&yaml=OpenAPI/comDefs.yaml)) + +* NR NRM (TS 28.541) +([Editor](https://forge.3gpp.org/swagger/tools/loader.html?yaml=OpenAPI/nrNrm.yaml)) +([UI](https://forge.3gpp.org/swagger/tools/loader.html?action=ui&yaml=OpenAPI/nrNrm.yaml)) + +* 5GC NRM (TS 28.541) +([Editor](https://forge.3gpp.org/swagger/tools/loader.html?yaml=OpenAPI/5gcNrm.yaml)) +([UI](https://forge.3gpp.org/swagger/tools/loader.html?action=ui&yaml=OpenAPI/5gcNrm.yaml)) + +* Slice NRM (TS 28.541) +([Editor](https://forge.3gpp.org/swagger/tools/loader.html?yaml=OpenAPI/sliceNrm.yaml)) +([UI](https://forge.3gpp.org/swagger/tools/loader.html?action=ui&yaml=OpenAPI/sliceNrm.yaml)) + +* Communication Service Assurance NRM (TS 28.536) +([Editor](https://forge.3gpp.org/swagger/tools/loader.html?yaml=OpenAPI/coslaNrm.yaml)) +([UI](https://forge.3gpp.org/swagger/tools/loader.html?action=ui&yaml=OpenAPI/coslaNrm.yaml)) + +## Management Services (MnS) + +* Provisioning MnS (TS 28.532) +([Editor](https://forge.3gpp.org/swagger/tools/loader.html?yaml=OpenAPI/provMnS.yaml)) +([UI](https://forge.3gpp.org/swagger/tools/loader.html?action=ui&yaml=OpenAPI/provMnS.yaml)) + +* Fault Supervision MnS (TS 28.532) +([Editor](https://forge.3gpp.org/swagger/tools/loader.html?yaml=OpenAPI/faultMnS.yaml)) +([UI](https://forge.3gpp.org/swagger/tools/loader.html?action=ui&yaml=OpenAPI/faultMnS.yaml)) + +* Performance Measurement Job Control MnS (28.550) +([Editor](https://forge.3gpp.org/swagger/tools/loader.html?yaml=OpenAPI/PerMeasJobCtlMnS.yaml)) +([UI](https://forge.3gpp.org/swagger/tools/loader.html?action=ui&yaml=OpenAPI/PerMeasJobCtlMnS.yaml)) + +* Performance Data File Reporting MnS (TS 28.532) +([Editor](https://forge.3gpp.org/swagger/tools/loader.html?yaml=OpenAPI/PerDataFileReportMnS.yaml)) +([UI](https://forge.3gpp.org/swagger/tools/loader.html?action=ui&yaml=OpenAPI/PerDataFileReportMnS.yaml)) + +* Performance Threshold Monitoring MnS (TS 28.532) +([Editor](https://forge.3gpp.org/swagger/tools/loader.html?yaml=OpenAPI/PerThresMonMnS.yaml)) +([UI](https://forge.3gpp.org/swagger/tools/loader.html?action=ui&yaml=OpenAPI/PerThresMonMnS.yaml)) + +* Heartbeat Notifications(TS 28.532) +([Editor](https://forge.3gpp.org/swagger/tools/loader.html?yaml=OpenAPI/heartbeatNtf.yaml)) +([UI](https://forge.3gpp.org/swagger/tools/loader.html?action=ui&yaml=OpenAPI/heartbeatNtf.yaml)) + +* Streaming Data Reporting MnS (TS 28.532) +([Editor](https://forge.3gpp.org/swagger/tools/loader.html?yaml=OpenAPI/streamingDataMnS.yaml)) +([UI](https://forge.3gpp.org/swagger/tools/loader.html?action=ui&yaml=OpenAPI/streamingDataMnS.yaml)) + +## Tools + +* [Frontend](https://forge.3gpp.org/swagger/tools/GitlabOpenAPIFrontend.htm) to invoke the Swagger Editor, Swagger UI, or to parse OpenAPI files with APIDevTools Swagger Parser/Validator, or to search for APIs referencing a data structure +* [API Parser/Linter](https://forge.3gpp.org/swagger/tools/parser.html) to parse OpenAPI files with APIDevTools Swagger Parser/Validator and run a number of [lint](https://en.wikipedia.org/wiki/Lint_\(software\)) rules to improve API quality +* [Data Type Finder](https://forge.3gpp.org/swagger/tools/types.html) to find the impacted APIs due to a change on a given data type +* [API Versions Overview](https://forge.3gpp.org/swagger/tools/versions.html) to show a comprehensive report of the versions of all APIs in the repository + +## Other 3GPP API definitions + +* [CT4](https://forge.3gpp.org/rep/3GPP/5G_APIs) specifications. diff --git a/OpenAPI/comDefs.yaml b/OpenAPI/comDefs.yaml new file mode 100644 index 000000000..04ab65161 --- /dev/null +++ b/OpenAPI/comDefs.yaml @@ -0,0 +1,84 @@ +openapi: 3.0.1 +info: + title: Common Type Definitions + version: 16.3.0 + description: >- + OAS 3.0.1 specification of common type definitions in the Generic NRM + © 2020, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). + All rights reserved. +externalDocs: + description: 3GPP TS 28.623 V16.3.0; Generic NRM, Common Type Definitions + url: http://www.3gpp.org/ftp/Specs/archive/28_series/28.623/ +paths: {} +components: + schemas: + Long: + type: string + format: long + Float: + type: string + format: float + DateTime: + type: string + format: date-Time + Dn: + type: string + Uri: + type: string + AttributeNameValuePairSet: + type: object + minProperties: 1 + AttributeValueChangeSet: + description: >- + The key in this map is the attribute name. The value of each key is an array. + When only one item is present in the array, it carries the new attribute + value. If two items are present, then the first item carries the old value + and the second item the new value. The items can be of any type including null. + type: object + additionalProperties: + type: array + minItems: 1 + maxItems: 2 + items: + nullable: true + Filter: + type: string + SystemDN: + type: string + NotificationId: + type: integer + NotificationHeader: + description: >- + Header used for all notifications types + type: object + required: + - uri + - notificationId + - notificationType + - eventTime + - systemDn + properties: + uri: + $ref: '#/components/schemas/Uri' + notificationId: + $ref: '#/components/schemas/NotificationId' + notificationType: + oneOf: + - $ref: 'faultMnS.yaml#/components/schemas/AlarmNotificationTypes' + #- $ref: 'provMnS.yaml#/components/schemas/CmNotificationTypes' + # more to be added + eventTime: + $ref: '#/components/schemas/DateTime' + systemDN: + $ref: '#/components/schemas/SystemDN' + ErrorResponse: + description: >- + Default schema for the response message body in case the request + is not successful. + type: object + properties: + error: + type: object + properties: + errorInfo: + type: string diff --git a/OpenAPI/coslaNrm.yaml b/OpenAPI/coslaNrm.yaml new file mode 100644 index 000000000..e6a0ef13a --- /dev/null +++ b/OpenAPI/coslaNrm.yaml @@ -0,0 +1,168 @@ +openapi: 3.0.2 + +info: + title: coslaNrm + version: 16.4.0 + description: + OAS 3.0.1 specification of the Cosla NRM + © 2020, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). + All rights reserved. + +externalDocs: + description: 3GPP TS 28.536 V16.4.0; Cosla NRM + url: http://www.3gpp.org/ftp/Specs/archive/28_series/28.536/ + +paths: {} + +components: + + schemas: + +#------------ Type definitions --------------------------------------------------- + + ControlLoopLifeCyclePhase: + type: string + enum: + - PREPARATION + - COMMISSIONING + - OPERATION + - DECOMMISSIONING + + ObservationTime: + type: integer + + AssuranceGoalStatusObserved: + type: string + enum: + - FULFILLED + - NOT_FULFILLED + + AssuranceGoalStatusPredicted: + type: string + enum: + - FULFILLED + - NOT_FULFILLED + + AssuranceTargetStatusObserved: + type: string + enum: + - FULFILLED + - NOT_FULFILLED + + AssuranceTargetStatusPredicted: + type: string + enum: + - FULFILLED + - NOT_FULFILLED + + AssuranceTarget: + type: object + properties: + assuranceTargetName: + type: string + assuranceTargetValue: + type: string + assuranceTargetStatusObserved: + $ref: '#/components/schemas/AssuranceTargetStatusObserved' + assuranceTargetStatusPredicted: + $ref: '#/components/schemas/AssuranceTargetStatusPredicted' + + AssuranceTargetList: + type: array + items: + $ref: '#/components/schemas/AssuranceTarget' + + +#-------- Definition of concrete IOCs -------------------------------------------- + + SubNetwork-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/SubNetwork-Attr' + - $ref: 'genericNrm.yaml#/components/schemas/SubNetwork-ncO' + - type: object + properties: + AssuranceClosedControlLoop: + $ref: '#/components/schemas/AssuranceClosedControlLoop-Multiple' + + ManagedElement-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/ManagedElement-Attr' + - $ref: 'genericNrm.yaml#/components/schemas/ManagedElement-ncO' + - type: object + properties: + AssuranceClosedControlLoop: + $ref: '#/components/schemas/AssuranceClosedControlLoop-Multiple' + + AssuranceClosedControlLoop-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + type: object + properties: + operationalState: + $ref: 'genericNrm.yaml#/components/schemas/OperationalState' + administrativeState: + $ref: 'genericNrm.yaml#/components/schemas/AdministrativeState' + controlLoopLifeCyclePhase: + $ref: '#/components/schemas/ControlLoopLifeCyclePhase' + AssuranceGoal: + $ref: '#/components/schemas/AssuranceGoal-Multiple' + + AssuranceGoal-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + allOf: + - type: object + properties: + observationTime: + $ref: '#/components/schemas/ObservationTime' + assuranceTargetList: + $ref: '#/components/schemas/AssuranceTargetList' + assuranceGoalStatusObserved: + $ref: '#/components/schemas/AssuranceGoalStatusObserved' + assuranceGoalStatusPredicted: + $ref: '#/components/schemas/AssuranceGoalStatusPredicted' + serviceProfileId: + type: string + sliceProfileId: + type: string + networkSliceRef: + $ref: 'comDefs.yaml#/components/schemas/Dn' + networkSliceSubnetRef: + $ref: 'comDefs.yaml#/components/schemas/Dn' + +#-------- Definition of JSON arrays for name-contained IOCs ---------------------- + + AssuranceClosedControlLoop-Multiple: + type: array + items: + $ref: '#/components/schemas/AssuranceClosedControlLoop-Single' + + AssuranceGoal-Multiple: + type: array + items: + $ref: '#/components/schemas/AssuranceGoal-Single' + +#------------ Definitions in TS 28.536 for TS 28.623 ----------------------------- + + resources-coslaNrm: + oneOf: + - $ref: '#/components/schemas/AssuranceClosedControlLoop-Single' + - $ref: '#/components/schemas/AssuranceGoal-Single' + - $ref: '#/components/schemas/SubNetwork-Single' + - $ref: '#/components/schemas/ManagedElement-Single' \ No newline at end of file diff --git a/OpenAPI/faultMnS.yaml b/OpenAPI/faultMnS.yaml new file mode 100644 index 000000000..499123b90 --- /dev/null +++ b/OpenAPI/faultMnS.yaml @@ -0,0 +1,1144 @@ +openapi: 3.0.1 +info: + title: Fault Supervision MnS + version: 16.4.0 + description: >- + OAS 3.0.1 definition of the Fault Supervision MnS + © 2020, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). + All rights reserved. +externalDocs: + description: 3GPP TS 28.532 V16.4.0; Generic management services + url: http://www.3gpp.org/ftp/Specs/archive/28_series/28.532/ +servers: + - url: '{MnSRoot}/FaultSupervisionMnS/{version}' + variables: + MnSRoot: + description: See subclause 4.4.3 of TS 32.158 + default: http://example.com/3GPPManagement + version: + description: Versi on number of the OpenAPI definition + default: XXX +paths: + /alarms: + get: + summary: Retrieve multiple alarms + description: >- + Retrieves the alarms identified by alarmAckState, baseObjectInstance + and filter. + parameters: + - name: alarmAckState + in: query + required: false + schema: + $ref: '#/components/schemas/AlarmAckState' + - name: baseObjectInstance + in: query + required: false + schema: + $ref: '#/components/schemas/Dn' + - name: filter + in: query + required: false + schema: + $ref: '#/components/schemas/Filter' + responses: + '200': + description: >- + Success case ("200 OK"). + Returns the alarms identified in the request. The alarmId is the key + of the map. + content: + application/json: + schema: + type: object + additionalProperties: + type: object + allOf: + - type: object + properties: + lastNotificationHeader: + $ref: '#/components/schemas/NotificationHeader' + - $ref: '#/components/schemas/AlarmRecord' + - type: object + properties: + comments: + $ref: '#/components/schemas/Comments' + default: + description: Response in case of error. + content: + application/json: + schema: + $ref: '#/components/schemas/ErrorResponse' + patch: + summary: 'Clear, acknowledge or unacknowledge multiple alarms' + description: >- + Clears, acknowledges or unacknowledges multiple alarms using patch. Depending + on which action is to be performed, different merge patch documents need + to be used. + requestBody: + description: >- + Patch documents for acknowledging and unacknowledging, or clearing multiple + alarms. The keys in the map are the alarmIds to be patched. + content: + application/merge-patch+json: + schema: + oneOf: + - type: object + additionalProperties: + $ref: '#/components/schemas/MergePatchAcknowledgeAlarm' + - type: object + additionalProperties: + $ref: '#/components/schemas/MergePatchClearAlarm' + responses: + '204': + description: >- + Success case ("204 No content"). + The response message body is empty. + default: + description: Response in case of error. + content: + application/json: + schema: + type: array + items: + $ref: '#/components/schemas/FailedAlarm' + /alarms/alarmCount: + get: + summary: Get the alarm count per perceived severity + parameters: + - name: alarmAckState + in: query + required: false + schema: + $ref: '#/components/schemas/AlarmAckState' + - name: filter + in: query + required: false + schema: + type: string + responses: + '200': + description: >- + Success case ("200 OK"). + The alarm count per perceived severity is returned. + content: + application/json: + schema: + $ref: '#/components/schemas/AlarmCount' + default: + description: Response in case of error. The error case needs rework. + content: + application/json: + schema: + $ref: '#/components/schemas/ErrorResponse' + /alarms/{alarmId}: + patch: + summary: 'Clear, acknowledge or unacknowledge a single alarm' + description: >- + Clears, acknowledges or uncknowldeges a single alarm by patching the alarm + information. A conditional acknowledge request based on the perceived + severity is not supported. + parameters: + - name: alarmId + in: path + description: Identifies the alarm to be patched. + required: true + schema: + type: string + requestBody: + required: true + content: + application/merge-patch+json: + schema: + oneOf: + - $ref: '#/components/schemas/MergePatchAcknowledgeAlarm' + - $ref: '#/components/schemas/MergePatchClearAlarm' + responses: + '204': + description: >- + Success case (204 No content). + The response message body is absent. + default: + description: Response in case of error. + content: + application/json: + schema: + $ref: '#/components/schemas/ErrorResponse' + /alarms/{alarmId}/comments: + post: + summary: Add a comment to a single alarm + description: >- + Adds a comment to an alarm identified by alarmId. The id of the new comment + is allocated by the producer. + parameters: + - name: alarmId + in: path + description: Identifies the alarm to which the comment shall be added. + required: true + schema: + type: string + requestBody: + required: true + content: + application/json: + schema: + $ref: '#/components/schemas/Comment' + responses: + '201': + description: >- + Success case (201 Created). + The representation of the newly created comment resource shall be returned. + content: + application/json: + schema: + $ref: '#/components/schemas/Comment' + headers: + Location: + description: URI of the newly created comment resource. + required: true + schema: + type: string + default: + description: Error case. + content: + application/json: + schema: + $ref: '#/components/schemas/ErrorResponse' + + /subscriptions: + post: + summary: Create a subscription + description: >- + To create a subscription the representation of the subscription is + POSTed on the /subscriptions collection resource. + requestBody: + required: true + content: + application/json: + schema: + $ref: '#/components/schemas/Subscription' + responses: + '201': + description: >- + Success case ("201 Created"). + The representation of the newly created subscription resource shall + be returned. + content: + application/json: + schema: + $ref: '#/components/schemas/Subscription' + headers: + Location: + description: URI of the newly created subscription resource + required: true + schema: + type: string + default: + description: Error case. + content: + application/json: + schema: + $ref: '#/components/schemas/ErrorResponse' + callbacks: + notifyNewAlarm: + '{request.body#/consumerReference}': + post: + requestBody: + required: true + content: + application/json: + schema: + oneOf: + - $ref: '#/components/schemas/NotifyNewAlarm' + - $ref: '#/components/schemas/NotifyNewSecAlarm' + responses: + '204': + description: >- + Success case ("204 No Content"). + The notification is successfully delivered. The response message + body is absent. + default: + description: Error case. + content: + application/json: + schema: + $ref: '#/components/schemas/ErrorResponse' + notifyClearedAlarm: + '{request.body#/consumerReference}': + post: + requestBody: + required: true + content: + application/json: + schema: + $ref: '#/components/schemas/NotifyClearedAlarm' + responses: + '204': + description: >- + Success case ("204 No Content"). + The notification is successfully delivered. The response message + body is absent. + default: + description: Error case. + content: + application/json: + schema: + $ref: '#/components/schemas/ErrorResponse' + notifyChangedAlarm: + '{request.body#/consumerReference}': + post: + requestBody: + required: true + content: + application/json: + schema: + $ref: '#/components/schemas/NotifyChangedAlarm' + responses: + '204': + description: >- + Success case ("204 No Content"). + The notification is successfully delivered. The response message + body is absent. + default: + description: Error case. + content: + application/json: + schema: + $ref: '#/components/schemas/ErrorResponse' + notifyChangedAlarmGeneral: + '{request.body#/consumerReference}': + post: + requestBody: + required: true + content: + application/json: + schema: + oneOf: + - $ref: '#/components/schemas/NotifyChangedAlarmGeneral' + - $ref: '#/components/schemas/NotifyChangedSecAlarmGeneral' + responses: + '204': + description: >- + Success case ("204 No Content"). + The notification is successfully delivered. The response message + body is absent. + default: + description: Error case. + content: + application/json: + schema: + $ref: '#/components/schemas/ErrorResponse' + notifyCorrelatedNotificationChanged: + '{request.body#/consumerReference}': + post: + requestBody: + required: true + content: + application/json: + schema: + $ref: '#/components/schemas/NotifyCorrelatedNotificationChanged' + responses: + '204': + description: >- + Success case ("204 No Content"). + The notification is successfully delivered. The response message + body is absent. + default: + description: Error case. + content: + application/json: + schema: + $ref: '#/components/schemas/ErrorResponse' + notifyAckStateChanged: + '{request.body#/consumerReference}': + post: + requestBody: + required: true + content: + application/json: + schema: + $ref: '#/components/schemas/NotifyAckStateChanged' + responses: + '204': + description: >- + Success case ("204 No Content"). + The notification is successfully delivered. The response message + body is absent. + default: + description: Error case. + content: + application/json: + schema: + $ref: '#/components/schemas/ErrorResponse' + notifyComments: + '{request.body#/consumerReference}': + post: + requestBody: + required: true + content: + application/json: + schema: + $ref: '#/components/schemas/NotifyComments' + responses: + '204': + description: >- + Success case ("204 No Content"). + The notification is successfully delivered. The response message + body is absent. + default: + description: Error case. + content: + application/json: + schema: + $ref: '#/components/schemas/ErrorResponse' + notifyPotentialFaultyAlarmList: + '{request.body#/consumerReference}': + post: + requestBody: + required: true + content: + application/json: + schema: + $ref: '#/components/schemas/NotifyPotentialFaultyAlarmList' + responses: + '204': + description: >- + Success case ("204 No Content"). + The notification is successfully delivered. The response message + body is absent. + default: + description: Error case. + content: + application/json: + schema: + $ref: '#/components/schemas/ErrorResponse' + notifyAlarmListRebuilt: + '{request.body#/consumerReference}': + post: + requestBody: + required: true + content: + application/json: + schema: + $ref: '#/components/schemas/NotifyAlarmListRebuilt' + responses: + '204': + description: >- + Success case ("204 No Content"). + The notification is successfully delivered. The response message + body is absent. + default: + description: Error case. + content: + application/json: + schema: + $ref: '#/components/schemas/ErrorResponse' + /subscriptions/{subscriptionId}: + delete: + summary: Delete a subscription + description: >- + The subscription is deleted by deleting the corresponding subscription + resource. The resource to be deleted is identified with the path + component of the URI. + parameters: + - name: subscriptionId + in: path + description: Identifies the subscription to be deleted. + required: true + schema: + type: string + responses: + '204': + description: >- + Success case ("204 No Content"). + The subscription resource has been deleted. The response message body + is absent. + default: + description: Error case. + content: + application/json: + schema: + $ref: '#/components/schemas/ErrorResponse' + +components: + schemas: + + #---- Definitions to be moved to comDefs.yaml --------------------------------------# + + Long: + type: string + format: long + Float: + type: string + format: float + DateTime: + type: string + format: date-Time + + Dn: + type: string + Uri: + type: string + + AttributeNameValuePairSet: + type: object + minProperties: 1 + AttributeValueChangeSet: + description: >- + The key in this map is the attribute name. The value of each key is an array. + When only one item is present in the array, it carries the new attribute + value. If two items are present, then the first item carries the old value + and the second item the new value. The items can be of any type including null. + type: object + additionalProperties: + type: array + minItems: 1 + maxItems: 2 + items: + nullable: true + + Filter: + type: string + SystemDN: + type: string + + NotificationId: + type: integer + NotificationHeader: + description: >- + Header used for all notification types + type: object + required: + - href + - notificationId + - notificationType + - eventTime + - systemDN + properties: + uri: + $ref: '#/components/schemas/Uri' + notificationId: + $ref: '#/components/schemas/NotificationId' + notificationType: + oneOf: + - $ref: '#/components/schemas/AlarmNotificationTypes' + #- $ref: 'faultMnS.yaml#/components/schemas/AlarmNotificationTypes' + #- $ref: 'provMnS.yaml#/components/schemas/CmNotificationTypes' + # more to be added + eventTime: + $ref: '#/components/schemas/DateTime' + systemDN: + $ref: '#/components/schemas/SystemDN' + + ErrorResponse: + description: >- + Default schema for the response message body in case the request is not + successful. + type: object + properties: + error: + type: object + properties: + errorInfo: + type: string + + #---- End of definitions to be moved to comDefs.yaml -------------------------------# + + #---- Definition of AlarmRecord ----------------------------------------------------# + + AlarmId: + type: string + AlarmType: + type: string + enum: + - COMMUNICATIONS_ALARM + - QUALITY_OF_SERVICE_ALARM + - PROCESSING_ERROR_ALARM + - EQUIPMENT_ALARM + - ENVIRONMENTAL_ALARM + - INTEGRITY_VIOLATION + - OPERATIONAL_VIOLATION + - PHYSICAL_VIOLATION + - SECURITY_SERVICE_OR_MECHANISM_VIOLATION + - TIME_DOMAIN_VIOLATION + ProbableCause: + description: >- + The value of the probable cause may be a specific standardized string, or any + vendor provided string. Probable cause strings are not standardized in the + present document. They may be added in a future version. Up to then the + mapping of the generic probable cause strings "PROBABLE_CAUSE_001" to + "PROBABLE_CAUSE_005" is vendor specific. + The value of the probable cause may also be an integer. The mapping of integer + values to probable causes is vendor specific. + oneOf: + - anyOf: + - type: string + enum: + - PROBABLE_CAUSE_001 + - PROBABLE_CAUSE_002 + - PROBABLE_CAUSE_003 + - PROBABLE_CAUSE_004 + - PROBABLE_CAUSE_005 + - type: string + - type: integer + SpecificProblem: + oneOf: + - type: string + - type: integer + PerceivedSeverity: + type: string + enum: + - INDETERMINATE + - CRITICAL + - MAJOR + - MINOR + - WARNING + - CLEARED + TrendIndication: + type: string + enum: + - MORE_SEVERE + - NO_CHANGE + - LESS_SEVERE + ThresholdHysteresis: + type: object + required: + - high + properties: + high: + oneOf: + - type: integer + - $ref: '#/components/schemas/Float' + low: + $ref: '#/components/schemas/Float' + ThresholdLevelInd: + type: object + required: + - up + properties: + up: + $ref: '#/components/schemas/ThresholdHysteresis' + low: + $ref: '#/components/schemas/ThresholdHysteresis' + ThresholdInfo: + type: object + required: + - observedMeasurement + - observedValue + properties: + observedMeasurement: + type: string + observedValue: + oneOf: + - type: integer + - $ref: '#/components/schemas/Float' + thresholdLevelInd: + $ref: '#/components/schemas/ThresholdLevelInd' + armTime: + $ref: '#/components/schemas/DateTime' + CorrelatedNotification: + type: object + required: + - source + - notificationId + properties: + sourceObjectInstance: + $ref: '#/components/schemas/Dn' + notificationIds: + type: array + items: + $ref: '#/components/schemas/NotificationId' + CorrelatedNotifications: + type: array + items: + $ref: '#/components/schemas/CorrelatedNotification' + AckState: + type: string + enum: + - ACKNOWLEDGED + - UNACKNOWLEDGED + + AlarmRecord: + description: >- + The alarmId is not a property of an alarm record. It is used as key + in the map of alarm records instead. + type: object + properties: + # alarmId: + # $ref: '#/components/schemas/AlarmId' + objectInstance: + $ref: '#/components/schemas/Dn' + notificationId: + $ref: '#/components/schemas/NotificationId' + alarmRaisedTime: + $ref: '#/components/schemas/DateTime' + alarmChangedTime: + $ref: '#/components/schemas/DateTime' + alarmClearedTime: + $ref: '#/components/schemas/DateTime' + alarmType: + $ref: '#/components/schemas/AlarmType' + probableCause: + $ref: '#/components/schemas/ProbableCause' + specificProblem: + $ref: '#/components/schemas/SpecificProblem' + perceivedSeverity: + $ref: '#/components/schemas/PerceivedSeverity' + backedUpStatus: + type: boolean + backUpObject: + $ref: '#/components/schemas/Dn' + trendIndication: + $ref: '#/components/schemas/TrendIndication' + thresholdinfo: + $ref: '#/components/schemas/ThresholdInfo' + correlatedNotifications: + $ref: '#/components/schemas/CorrelatedNotifications' + stateChangeDefinition: + $ref: '#/components/schemas/AttributeValueChangeSet' + monitoredAttributes: + $ref: '#/components/schemas/AttributeNameValuePairSet' + proposedRepairActions: + type: string + additionalText: + type: string + additionalInformation: + $ref: '#/components/schemas/AttributeNameValuePairSet' + + rootCauseIndicator: + type: boolean + + ackTime: + $ref: '#/components/schemas/DateTime' + ackUserId: + type: string + ackSystemId: + type: string + ackState: + $ref: '#/components/schemas/AckState' + + clearUserId: + type: string + clearSystemId: + type: string + serviceUser: + type: string + serviceProvider: + type: string + securityAlarmDetector: + type: string + + #---- Definition of alarm notifications --------------------------------------------# + + AlarmNotificationTypes: + type: string + enum: + - notifyNewAlarm + - notifyChangedAlarm + - notifyChangedAlarmGeneral + - notifyAckStateChanged + - notifyCorrelatedNotificationChanged + - notifyComments + - notifyClearedAlarm + - notifyAlarmListRebuiltAlarm + - notifyPotentialFaultyAlarmList + AlarmListAlignmentRequirement: + type: string + enum: + - ALIGNMENT_REQUIRED + - ALIGNMENT_NOT_REQUIRED + + NotifyNewAlarm: + allOf: + - $ref: '#/components/schemas/NotificationHeader' + - type: object + required: + - alarmId + - alarmType + - probableCause + - perceivedSeverity + properties: + alarmId: + $ref: '#/components/schemas/AlarmId' + alarmType: + $ref: '#/components/schemas/AlarmType' + probableCause: + $ref: '#/components/schemas/ProbableCause' + specificProblem: + $ref: '#/components/schemas/SpecificProblem' + perceivedSeverity: + $ref: '#/components/schemas/PerceivedSeverity' + backedUpStatus: + type: boolean + backUpObject: + $ref: '#/components/schemas/Dn' + trendIndication: + $ref: '#/components/schemas/TrendIndication' + thresholdInfo: + $ref: '#/components/schemas/ThresholdInfo' + correlatedNotifications: + $ref: '#/components/schemas/CorrelatedNotifications' + stateChangeDefinition: + $ref: '#/components/schemas/AttributeValueChangeSet' + monitoredAttributes: + $ref: '#/components/schemas/AttributeNameValuePairSet' + proposedRepairActions: + type: string + additionalText: + type: string + additionalInformation: + $ref: '#/components/schemas/AttributeNameValuePairSet' + rootCauseIndicator: + type: boolean + NotifyNewSecAlarm: + allOf: + - $ref: '#/components/schemas/NotificationHeader' + - type: object + required: + - alarmId + - alarmType + - probableCause + - perceivedSeverity + - serviceUser + - serviceProvider + - securityAlarmDetector + properties: + alarmId: + $ref: '#/components/schemas/AlarmId' + alarmType: + $ref: '#/components/schemas/AlarmType' + probableCause: + $ref: '#/components/schemas/ProbableCause' + perceivedSeverity: + $ref: '#/components/schemas/PerceivedSeverity' + correlatedNotifications: + $ref: '#/components/schemas/CorrelatedNotifications' + additionalText: + type: string + additionalInformation: + $ref: '#/components/schemas/AttributeNameValuePairSet' + rootCauseIndicator: + type: boolean + serviceUser: + type: string + serviceProvider: + type: string + securityAlarmDetector: + type: string + NotifyClearedAlarm: + allOf: + - $ref: '#/components/schemas/NotificationHeader' + - type: object + required: + - alarmId + - alarmType + - probableCause + - perceivedSeverity + properties: + alarmId: + $ref: '#/components/schemas/AlarmId' + alarmType: + $ref: '#/components/schemas/AlarmType' + probableCause: + $ref: '#/components/schemas/ProbableCause' + perceivedSeverity: + $ref: '#/components/schemas/PerceivedSeverity' + correlatedNotifications: + $ref: '#/components/schemas/CorrelatedNotifications' + clearUserId: + type: string + clearSystemId: + type: string + NotifyChangedAlarm: + allOf: + - $ref: '#/components/schemas/NotificationHeader' + - type: object + required: + - alarmId + - alarmType + - probableCause + - perceivedSeverity + properties: + alarmId: + $ref: '#/components/schemas/AlarmId' + alarmType: + $ref: '#/components/schemas/AlarmType' + probableCause: + $ref: '#/components/schemas/ProbableCause' + perceivedSeverity: + $ref: '#/components/schemas/PerceivedSeverity' + NotifyChangedAlarmGeneral: + allOf: + - $ref: '#/components/schemas/NotificationHeader' + - type: object + required: + - alarmId + - alarmType + - probableCause + - perceivedSeverity + - changedAlarmAttributes + properties: + alarmId: + $ref: '#/components/schemas/AlarmId' + alarmType: + $ref: '#/components/schemas/AlarmType' + probableCause: + $ref: '#/components/schemas/ProbableCause' + specificProblem: + $ref: '#/components/schemas/SpecificProblem' + perceivedSeverity: + $ref: '#/components/schemas/PerceivedSeverity' + correlatedNotifications: + $ref: '#/components/schemas/CorrelatedNotifications' + backedUpStatus: + type: boolean + backUpObject: + $ref: '#/components/schemas/Dn' + trendIndication: + $ref: '#/components/schemas/TrendIndication' + thresholdInfo: + $ref: '#/components/schemas/ThresholdInfo' + stateChangeDefinition: + $ref: '#/components/schemas/AttributeValueChangeSet' + monitoredAttributes: + $ref: '#/components/schemas/AttributeNameValuePairSet' + proposedRepairActions: + type: string + additionalText: + type: string + additionalInformation: + $ref: '#/components/schemas/AttributeNameValuePairSet' + rootCauseIndicator: + type: boolean + changedAlarmAttributes: + $ref: '#/components/schemas/AttributeNameValuePairSet' + NotifyChangedSecAlarmGeneral: + allOf: + - $ref: '#/components/schemas/NotificationHeader' + - type: object + required: + - alarmId + - alarmType + - probableCause + - perceivedSeverity + - serviceUser + - serviceProvider + - securityAlarmDetector + - changedAlarmAttributes + properties: + alarmId: + $ref: '#/components/schemas/AlarmId' + alarmType: + $ref: '#/components/schemas/AlarmType' + probableCause: + $ref: '#/components/schemas/ProbableCause' + perceivedSeverity: + $ref: '#/components/schemas/PerceivedSeverity' + correlatedNotifications: + $ref: '#/components/schemas/CorrelatedNotifications' + additionalText: + type: string + additionalInformation: + $ref: '#/components/schemas/AttributeNameValuePairSet' + rootCauseIndicator: + type: boolean + serviceUser: + type: string + serviceProvider: + type: string + securityAlarmDetector: + type: string + changedAlarmAttributes: + $ref: '#/components/schemas/AttributeNameValuePairSet' + NotifyCorrelatedNotificationChanged: + allOf: + - $ref: '#/components/schemas/NotificationHeader' + - type: object + required: + - alarmId + - correlatedNotifications + properties: + alarmId: + $ref: '#/components/schemas/AlarmId' + correlatedNotifications: + $ref: '#/components/schemas/CorrelatedNotifications' + rootCauseIndicator: + type: boolean + NotifyAckStateChanged: + allOf: + - $ref: '#/components/schemas/NotificationHeader' + - type: object + required: + - alarmId + - alarmType + - probableCause + - perceivedSeverity + - ackState + - ackUserId + properties: + alarmId: + $ref: '#/components/schemas/AlarmId' + alarmType: + $ref: '#/components/schemas/AlarmType' + probableCause: + $ref: '#/components/schemas/ProbableCause' + perceivedSeverity: + $ref: '#/components/schemas/PerceivedSeverity' + ackState: + $ref: '#/components/schemas/AckState' + ackUserId: + type: string + ackSystemId: + type: string + NotifyComments: + allOf: + - $ref: '#/components/schemas/NotificationHeader' + - type: object + required: + - alarmId + - alarmType + - probableCause + - perceivedSeverity + - comments + properties: + alarmId: + $ref: '#/components/schemas/AlarmId' + alarmType: + $ref: '#/components/schemas/AlarmType' + probableCause: + $ref: '#/components/schemas/ProbableCause' + perceivedSeverity: + $ref: '#/components/schemas/PerceivedSeverity' + comments: + $ref: '#/components/schemas/Comments' + NotifyPotentialFaultyAlarmList: + allOf: + - $ref: '#/components/schemas/NotificationHeader' + - type: object + required: + - reason + properties: + reason: + type: string + NotifyAlarmListRebuilt: + allOf: + - $ref: '#/components/schemas/NotificationHeader' + - type: object + required: + - reason + properties: + reason: + type: string + alarmListAlignmentRequirement: + $ref: '#/components/schemas/AlarmListAlignmentRequirement' + + #---- Definition of query parameters -----------------------------------------------# + + AlarmAckState: + type: string + enum: + - ALL_ALARMS + - ALL_ACTIVE_ALARMS + - ALL_ACTIVE_AND_ACKNOWLEDGED_ALARMS + - ALL_ACTIVE_AND_UNACKNOWLEDGED_ALARMS + - ALL_CLEARED_AND_UNACKNOWLEDGED_ALARMS + - ALL_UNACKNOWLEDGED_ALARMS + + #---- Definition of patch documents ------------------------------------------------# + + MergePatchAcknowledgeAlarm: + description: >- + Patch document acknowledging or unacknowledging a single alarm. For + acknowleding an alarm the value of ackState is ACKNOWLEDGED, for unacknowleding + an alarm the value of ackState is UNACKNOWLEDGED. + type: object + required: + - ackUserId + - ackState + properties: + ackUserId: + type: string + ackSystemId: + type: string + ackState: + $ref: '#/components/schemas/AckState' + MergePatchClearAlarm: + description: Patch document for clearing a single alarm + type: object + required: + - clearUserId + - perceivedSeverity + properties: + clearUserId: + type: string + clearSystemId: + type: string + perceivedSeverity: + type: string + enum: + - CLEARED + + #---- Definition of method responses -----------------------------------------------# + + FailedAlarm: + type: object + required: + - alarmId + - failureReason + properties: + alarmId: + $ref: '#/components/schemas/AlarmId' + failureReason: + type: string + + #---- Definition of resources ------------------------------------------------------# + + AlarmCount: + type: object + required: + - criticalCount + - majorCount + - minorCount + - warningCount + - indeterminateCount + - clearedCount + properties: + criticalCount: + type: integer + majorCount: + type: integer + minorCount: + type: integer + warningCount: + type: integer + indeterminateCount: + type: integer + clearedCount: + type: integer + Comment: + type: object + properties: + commentTime: + $ref: '#/components/schemas/DateTime' + commentUserId: + type: string + commentSystemId: + type: string + commentText: + type: string + Comments: + description: >- + Collection of comments. The comment identifiers are allocated by the + MnS producer and used as key in the map. + type: object + additionalProperties: + $ref: '#/components/schemas/Comment' + Subscription: + type: object + properties: + consumerReference: + $ref: '#/components/schemas/Uri' + timeTick: + $ref: '#/components/schemas/Long' + filter: + $ref: '#/components/schemas/Filter' diff --git a/OpenAPI/genericNrm.yaml b/OpenAPI/genericNrm.yaml new file mode 100644 index 000000000..9355f53e9 --- /dev/null +++ b/OpenAPI/genericNrm.yaml @@ -0,0 +1,1590 @@ +openapi: 3.0.1 +info: + title: Generic NRM + version: 16.4.0 + description: >- + OAS 3.0.1 specification of the Generic NRM + © 2020, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). + All rights reserved. +externalDocs: + description: 3GPP TS 28.623 V16.4.0; Generic NRM + url: http://www.3gpp.org/ftp/Specs/archive/28_series/28.623/ +paths: {} +components: + schemas: + +#-------- Definition of types----------------------------------------------------- + + DateTime: + type: string + format: date-time + Dn: + type: string + maxLength: 400 + DnList: + type: array + items: + $ref: '#/components/schemas/Dn' + Mcc: + type: string + pattern: '^[0-9]{3}$' + Mnc: + type: string + pattern: '^[0-9]{2,3}$' + AdministrativeState: + type: string + enum: + - LOCKED + - UNLOCKED + OperationalState: + type: string + enum: + - ENABLED + - DISABLED + UsageState: + type: string + enum: + - IDEL + - ACTIVE + - BUSY + RegistrationState: + type: string + enum: + - REGISTERED + - DEREGISTERED + SetOfMcc: + type: array + items: + $ref: '#/components/schemas/Mcc' + ManagedElementType: + type: string + ManagedElementTypeList: + type: array + items: + $ref: '#/components/schemas/ManagedElementType' + VnfParameter: + type: object + properties: + vnfInstanceId: + type: string + vnfdId: + type: string + flavourId: + type: string + autoScalable: + type: boolean + VnfParametersList: + type: array + items: + $ref: '#/components/schemas/VnfParameter' + SiteLatitude: + type: number + format: float + minimum: -90 + maximum: 90 + SiteLongitude: + type: number + format: float + minimum: -180 + maximum: 180 + PeeParameter: + type: object + properties: + siteIdentification: + type: string + siteDescription: + type: string + siteLatitude: + $ref: '#/components/schemas/SiteLatitude' + siteLongitude: + $ref: '#/components/schemas/SiteLongitude' + equipmentType: + type: string + environmentType: + type: string + powerInterface: + type: string + PeeParametersList: + type: array + items: + $ref: '#/components/schemas/PeeParameter' + MonitoringGPList: + type: array + items: + type: integer + ThresholdInfoList: + type: array + items: + $ref: '#/components/schemas/ThresholdInfo' + ThresholdInfo: + type: object + properties: + measurementType: + type: string + direction: + $ref: '#/components/schemas/Direction' + thresholdPack: + $ref: '#/components/schemas/ThresholdPack' + Direction: + enum: + - Increasing + - Decreasing + ThresholdPack: + type: array + items: + $ref: '#/components/schemas/ThresholdPackElement' + ThresholdPackElement: + type: object + properties: + thresholdLevel: + type: integer + thresholdValue: + type: number + hysteresis: + type: number + Operation: + type: object + properties: + name: + type: string + allowedNFTypes: + $ref: '#/components/schemas/NFType' + operationSemantics: + $ref: '#/components/schemas/OperationSemantics' + OperationList: + type: array + items: + $ref: '#/components/schemas/Operation' + NFType: + type: string + description: ' NF name defined in TS 23.501' + enum: + - NRF + - UDM + - AMF + - SMF + - AUSF + - NEF + - PCF + - SMSF + - NSSF + - UDR + - LMF + - GMLC + - 5G_EIR + - SEPP + - UPF + - N3IWF + - AF + - UDSF + - DN + Fqdn: + type: string + OperationSemantics: + type: string + enum: + - REQUEST_RESPONSE + - SUBSCRIBE_NOTIFY + SAP: + type: object + properties: + host: + $ref: '#/components/schemas/HostAddr' + port: + type: integer + NFServiceType: + type: string + enum: + - Namf_Communication + - Namf_EventExposure + - Namf_MT + - Namf_Location + - Nsmf_PDUSession + - Nsmf_EventExposure + - Others + HostAddr: + oneOf: + - $ref: '#/components/schemas/Ipv4Addr' + - $ref: '#/components/schemas/Ipv6Addr' + - $ref: '#/components/schemas/Fqdn' + Ipv4Addr: + type: string + pattern: '^(([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])\.){3}([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])$' + example: '198.51.100.1' + Ipv4AddrRm: + type: string + pattern: '^(([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])\.){3}([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])$' + example: '198.51.100.1' + nullable: true + Ipv6Addr: + type: string + allOf: + - pattern: '^((:|(0?|([1-9a-f][0-9a-f]{0,3}))):)((0?|([1-9a-f][0-9a-f]{0,3})):){0,6}(:|(0?|([1-9a-f][0-9a-f]{0,3})))$' + - pattern: '^((([^:]+:){7}([^:]+))|((([^:]+:)*[^:]+)?::(([^:]+:)*[^:]+)?))$' + example: '2001:db8:85a3::8a2e:370:7334' + Ipv6AddrRm: + type: string + allOf: + - pattern: '^((:|(0?|([1-9a-f][0-9a-f]{0,3}))):)((0?|([1-9a-f][0-9a-f]{0,3})):){0,6}(:|(0?|([1-9a-f][0-9a-f]{0,3})))$' + - pattern: '^((([^:]+:){7}([^:]+))|((([^:]+:)*[^:]+)?::(([^:]+:)*[^:]+)?))$' + example: '2001:db8:85a3::8a2e:370:7334' + nullable: true + Ipv6Prefix: + type: string + allOf: + - pattern: '^((:|(0?|([1-9a-f][0-9a-f]{0,3}))):)((0?|([1-9a-f][0-9a-f]{0,3})):){0,6}(:|(0?|([1-9a-f][0-9a-f]{0,3})))(\/(([0-9])|([0-9]{2})|(1[0-1][0-9])|(12[0-8])))$' + - pattern: '^((([^:]+:){7}([^:]+))|((([^:]+:)*[^:]+)?::(([^:]+:)*[^:]+)?))(\/.+)$' + example: '2001:db8:abcd:12::0/64' + Uri: + type: string + TransportProtocol: + anyOf: + - type: string + enum: + - TCP + - type: string + SupportedPerfMetricGroup: + type: object + properties: + performanceMetrics: + type: array + items: + type: string + granularityPeriods: + type: array + items: + type: integer + minimum: 1 + reportingMethods: + type: array + items: + type: string + enum: + - FILE_BASED_LOC_SET_BY_PRODUCER + - FILE_BASED_LOC_SET_BY_CONSUMER + - STREAM_BASED + ReportingCtrl: + oneOf: + - type: object + properties: + fileReportingPeriod: + type: integer + - type: object + properties: + fileReportingPeriod: + type: integer + fileLocation: + $ref: '#/components/schemas/Uri' + - type: object + properties: + streamTarget: + $ref: '#/components/schemas/Uri' + Scope: + type: object + properties: + scopeType: + type: string + enum: + - BASE_ONLY + - BASE_ALL + - BASE_NTH_LEVEL + - BASE_SUBTREE + scopeLevel: + type: integer + NotificationType: + type: string + enum: + - notifyMOICreation + - notifyMOIDeletion + - notifyMOIAttributeValueChanges + - notifyEvent + - notifyNewAlarm + - notifyChangedAlarm + - notifyAckStateChanged + - notifyComments + - notifyCorrelatedNotificationChanged + - notifyChangedAlarmGeneral + - notifyAlarmListRebuilt + - notifyPotentialFaultyAlarmList + - notifyFileReady + - notifyFilePreparationError + - notifyThresholdCrossing + NotificationTypes: + type: array + items: + $ref: '#/components/schemas/NotificationType' + +#-------- Definition of types used in Trace control NRM fragment------------------ + + tjJobType-Type: + type: string + description: Specifies whether the TraceJob represents only MDT, Logged MBSFN MDT, Trace or a combined Trace and MDT job. Applicable for Trace, MDT, RCEF and RLF reporting. See 3GPP TS 32.422 clause 5.9a for additional details. + enum: + - IMMEDIATE_MDT_ONLY + - LOGGED_MDT_ONLY + - TRACE_ONLY + - IMMEDIATE_MDT AND TRACE + - RLF_REPORT_ONLY + - RCEF_REPORT_ONLY + - LOGGED_MBSFN_MDT + + tjListOfInterfaces-Type: + description: The interfaces to be recorded in the Network Element. See 3GPP TS 32.422 clause 5.5 for additional details. + type: object + properties: + MSCServerInterfaces: + type: array + items: + type: string + enum: + - A + - Iu-CS + - Mc + - MAP-G + - MAP-B + - MAP-E + - MAP-F + - MAP-D + - MAP-C + - CAP + MGWInterfaces: + type: array + items: + type: string + enum: + - Mc + - Nb-UP + - Iu-UP + RNCInterfaces: + type: array + items: + type: string + enum: + - Iu-CS + - Iu-PS + - Iur + - Iub + - Uu + SGSNInterfaces: + type: array + items: + type: string + enum: + - Gb + - Iu-PS + - Gn + - MAP-Gr + - MAP-Gd + - MAP-Gf + - Ge + - Gs + - S6d + - S4 + - S3 + - S13 + GGSNInterfaces: + type: array + items: + type: string + enum: + - Gn + - Gi + - Gmb + S-CSCFInterfaces: + type: array + items: + type: string + enum: + - Mw + - Mg + - Mr + - Mi + P-CSCFInterfaces: + type: array + items: + type: string + enum: + - Gm + - Mw + I-CSCFInterfaces: + type: array + items: + type: string + enum: + - Cx + - Dx + - Mg + - Mw + MRFCInterfaces: + type: array + items: + type: string + enum: + - Mp + - Mr + MGCFInterfaces: + type: array + items: + type: string + enum: + - Mg + - Mj + - Mn + IBCFInterfaces: + type: array + items: + type: string + enum: + - Ix + - Mx + E-CSCFInterfaces: + type: array + items: + type: string + enum: + - Mw + - Ml + - Mm + - Mi/Mg + BGCFInterfaces: + type: array + items: + type: string + enum: + - Mi + - Mj + - Mk + ASInterfaces: + type: array + items: + type: string + enum: + - Dh + - Sh + - ISC + - Ut + HSSInterfaces: + type: array + items: + type: string + enum: + - MAP-C + - MAP-D + - Gc + - Gr + - Cx + - S6d + - S6a + - Sh + EIRInterfaces: + type: array + items: + type: string + enum: + - MAP-F + - S13 + - MAP-Gf + BM-SCInterfaces: + type: array + items: + type: string + enum: + - Gmb + MMEInterfaces: + type: array + items: + type: string + enum: + - S1-MME + - S3 + - S6a + - S10 + - S11 + - S13 + SGWInterfaces: + type: array + items: + type: string + enum: + - S4 + - S5 + - S8 + - S11 + - Gxc + PDN_GWInterfaces: + type: array + items: + type: string + enum: + - S2a + - S2b + - S2c + - S5 + - S6b + - Gx + - S8 + - SGi + eNBInterfaces: + type: array + items: + type: string + enum: + - S1-MME + - X2 + en-gNBInterfaces: + type: array + items: + type: string + enum: + - S1-MME + - X2 + - Uu + - F1-C + - E1 + AMFInterfaces: + type: array + items: + type: string + enum: + - N1 + - N2 + - N8 + - N11 + - N12 + - N14 + - N15 + - N20 + - N22 + - N26 + AUSFInterfaces: + type: array + items: + type: string + enum: + - N12 + - N13 + NEFInterfaces: + type: array + items: + type: string + enum: + - N29 + - N30 + - N33 + NRFInterfaces: + type: array + items: + type: string + enum: + - N27 + NSSFInterfaces: + type: array + items: + type: string + enum: + - N22 + - N31 + PCFInterfaces: + type: array + items: + type: string + enum: + - N5 + - N7 + - N15 + SMFInterfaces: + type: array + items: + type: string + enum: + - N4 + - N7 + - N10 + - N11 + - S5-C + SMSFInterfaces: + type: array + items: + type: string + enum: + - N20 + - N21 + UDMInterfaces: + type: array + items: + type: string + enum: + - N8 + - N10 + - N13 + - N21 + UPFInterfaces: + type: array + items: + type: string + enum: + - N4 + ng-eNBInterfaces: + type: array + items: + type: string + enum: + - NG-C + - Xn-C + - Uu + gNB-CU-CPInterfaces: + type: array + items: + type: string + enum: + - NG-C + - Xn-C + - Uu + - F1-C + - E1 + - X2-C + gNB-CU-UPInterfaces: + type: array + items: + type: string + enum: + - E1 + gNB-DUInterfaces: + type: array + items: + type: string + enum: + - F1-C + + tjListOfNeTypes-Type: + description: The Network Element types where Trace Session activation is needed. See 3GPP TS 32.422 clause 5.4 for additional details. + type: array + items: + type: string + enum: + - MSC_SERVER + - SGSN + - MGW + - GGSN + - RNC + - BM_SC + - MME + - SGW + - PGW + - ENB + - EN_GNB + - GNB_CU_CP + - GNB_CU_UP + - GNB_DU + + tjPLMNTaget-Type: + type: object + description: The PLMN for which sessions shall be selected in the Trace Session in case of management based activation when several PLMNs are supported in the RAN (this means that shared cells and not shared cells are allowed for the specified PLMN. Note that the PLMN Target might differ from the PLMN specified in the Trace Reference, as that specifies the PLMN that is containing the management system requesting the Trace Session from the NE. See 3GPP TS 32.422 clause 5.9b for additional details. + properties: + mcc: + $ref: '#/components/schemas/Mcc' + mnc: + $ref: '#/components/schemas/Mnc' + required: + - mcc + - mnc + + tjStreamingTraceConsumerURI-Type: + type: string + description: The URI of the Trace Reporting MnS consumer (see 3GPP TS 28.532) to which the Trace records shall be sent. See 3GPP TS 32.422 clause 5.9 for additional details. + format: uri + + tjTraceCollectionEntityAddress-Type: + description: The IP address to which the Trace records shall be transferred. See 3GPP TS 32.422 clause 5.9 for additional details. + oneOf: + - $ref: '#/components/schemas/Ipv4Addr' + - $ref: '#/components/schemas/Ipv6Addr' + + tjTraceDepth-Type: + description: Specifies how detailed information should be recorded in the Network Element. The Trace Depth is a paremeter for Trace Session level, i.e., the Trace Depth is the same for all of the NEs to be traced in the same Trace Session. See 3GPP TS 32.422 clause 5.3 for additional details. + type: string + enum: + - MINIMUM + - MEDIUM + - MAXIMUM + - VENDORMINIMUM + - VENDORMEDIUM + - VENDORMAXIMUM + + tjTraceReference-Type: + type: object + description: The Trace Reference parameter shall be globally unique, therefore the Trace Reference shall compose as follows - MCC+MNC+Trace ID, where the MCC and MNC are coming with the Trace activation request from the management system to identify one PLMN containing the management system, and Trace ID is a 3 byte Octet String. See 3GPP TS 32.422 clause 5.6 for additional details. + properties: + mcc: + $ref: '#/components/schemas/Mcc' + mnc: + $ref: '#/components/schemas/Mnc' + traceId: + type: integer + required: + - mcc + - mnc + - traceId + + tjTraceReportingFormat-Type: + type: string + description: Specifies whether file-based or streaming reporting shall be used for this Trace Session. See 3GPP TS 32.422 clause 5.11 for additional details. + enum: + - FILE-BASED + - STREAMING + + tjTraceTarget-Type: + type: string + description: Type of trace target. For additional details see 3GPP TS 32.422. + enum: + - IMSI + - IMEI + - IMEISV + - PUBLIC_ID + - UTRAN_CELL + - E-UTRAN_CELL + - NG-RAN_CELL + - eNB + - RNC + - gNB + + tjTriggeringEvent-Type: + type: object + description: Specifies when to start a Trace Recording Session and which message shall be recorded first, when to stop a Trace Recording Session and which message shall be recorded last respectively. See 3GPP TS 32.422 clause 5.1 for additional detials. + properties: + NetworkElement: + type: string + enum: + - MSC_SERVER + - SGSN + - MGW + - GGSN + - BM_SC + - MME + - SGW + - PGW + - AMF + - SMF + - PCF + - UPF + EventBitmap: + type: integer + required: + - NetworkElement + - EventBitmap + + tjMDTAnonymizationOfData-Type: + description: Specifies level of MDT anonymization. For additional details see 3GPP TS 32.422 clause 5.10.12. + type: string + enum: + - NO_IDENTITY + - TAC_OF_IMEI + + tjMDTAreaConfigurationForNeighCell-Type: + description: Used for logged NR MDT and defines the area for which UE is requested to perform measurement logging for neighbour cells which have list of frequencies. For additional details see 3GPP TS 32.422 clause 5.10.26. + type: array + items: + type: object + properties: + frequency: + type: string + cell: + type: string + + tjMDTAreaScope-Type: + description: defines the area in terms or Cells or Tracking Area/Routing Area/Location Area where the MDT data collection shall take place. For additional details see 3GPP TS 32.422 clause 5.10.2. + allOf: + - $ref: '#/components/schemas/DnList' + + tjMDTCollectionPeriodRrmLte-Type: + description: See details in 3GPP TS 32.422 clause 5.10.20. + type: string + enum: + - 250ms + - 500ms + - 1000ms + - 2000ms + - 3000ms + - 4000ms + - 6000ms + - 8000ms + - 12000ms + - 16000ms + - 20000ms + - 24000ms + - 28000ms + - 32000ms + - 64000ms + + tjMDTCollectionPeriodRrmUmts-Type: + description: See details in 3GPP TS 32.422 clause 5.10.21. + type: string + enum: + - 1024ms + - 1280ms + - 2048ms + - 2560ms + - 5120ms + - 10240ms + - 1min + + tjMDTEventListForTriggeredMeasurement-Type: + description: See details in 3GPP TS 32.422 clause 5.10.28. + type: string + enum: + - OUT_OF_COVERAGE + - A2_EVENT + + tjMDTEventThreshold-Type: + description: See details in 3GPP TS 32.422 clause 5.10.7, 5.10.7a, 5.10.13 and 5.10.14. + type: object + properties: + EventThresholdRSRP: + type: integer + minimum: 0 + maximum: 97 + EventThresholdRSRQ: + type: integer + minimum: 0 + maximum: 34 + EventThreshold1F: + type: object + properties: + CPICH_RSCP: + type: integer + minimum: -120 + maximum: 25 + CPICH_EcNo: + type: integer + minimum: -24 + maximum: 0 + PathLoss: + type: integer + minimum: 30 + maximum: 165 + EventThreshold1I: + type: integer + minimum: -120 + maximum: 25 + + tjMDTListOfMeasurements-Type: + description: See details in 3GPP TS 32.422 clause 5.10.3 for details. + type: object + properties: + UMTS: + type: array + items: + type: string + enum: + - M1 + - M2 + - M3 + - M4 + - M5 + - M6_DL + - M6_UL + - M7_DL + - M7_UL + LTE: + type: array + items: + type: string + enum: + - M1 + - M2 + - M3 + - M4 + - M5 + - M1_EVENT_TRIGGERED + - M6 + - M7 + - M8 + - M9 + NR: + type: array + items: + type: string + enum: + - M1 + - M2 + - M3 + - M4 + - M5 + - M6 + - M7 + - M8 + - M9 + + tjMDTLoggingDuration-Type: + description: See details in 3GPP TS 32.422 clause 5.10.9. + type: string + enum: + - 600s + - 1200s + - 2400s + - 3600s + - 5400s + - 7200s + + tjMDTLoggingInterval-Type: + description: See details in 3GPP TS 32.422 clause 5.10.8. + type: string + enum: + - 1.28s + - 2.56s + - 5.12s + - 10.24s + - 20.48s + - 30.72s + - 40.96s + - 61.44s + + tjMDTMBSFNAreaList-Type: + description: See details in 3GPP TS 32.422 clause 5.10.25. + type: array + items: + type: object + properties: + mbsfnAreaId: + type: integer + minimum: 1 + earfcn: + type: integer + minimum: 1 + required: + - mbsfnAreaId + - earfcn + + tjMDTMeasurementPeriodLTE-Type: + description: See details in 3GPP TS 32.422 clause 5.10.23. + type: string + enum: + - 1024ms + - 1280ms + - 2048ms + - 2560ms + - 5120ms + - 10240ms + - 1min + + tjMDTMeasurementPeriodUMTS-Type: + description: See details in 3GPP TS 32.422 clause 5.10.22. + type: string + enum: + - 250ms + - 500ms + - 1000ms + - 2000ms + - 3000ms + - 4000ms + - 6000ms + - 8000ms + - 12000ms + - 16000ms + - 20000ms + - 24000ms + - 28000ms + - 32000ms + - 64000ms + + tjMDTMeasurementQuantity-Type: + description: See details in 3GPP TS 32.422 clause 5.10.15. + type: string + enum: + - CPICH_EcNo + - CPICH_RSCP + - PathLoss + + tjMDTPLMList-Type: + description: See details in 3GPP TS 32.422 clause 5.10.24. + type: array + items: + type: object + properties: + mcc: + $ref: '#/components/schemas/Mcc' + mnc: + $ref: '#/components/schemas/Mnc' + required: + - mcc + - mnc + maxItems: 16 + + tjMDTPositioningMethod-Type: + description: See details in 3GPP TS 32.422 clause 5.10.19. + type: string + enum: + - GNSS + - E-CELL_ID + + tjMDTReportAmount-Type: + description: See details in 3GPP TS 32.422 clause 5.10.6. + type: string + enum: + - 1 + - 2 + - 4 + - 8 + - 16 + - 32 + - 64 + - INFINITY + + tjMDTReportingTrigger-Type: + description: See details in 3GPP TS 32.422 clause 5.10.4. + type: array + items: + type: string + enum: + - PERIODICAL + - A2_FOR_LTE + - 1F_FOR_UMTS + - 1I_FOR_UMTS_MCPS_TDD + - A2_TRIGGERED_PERIODIC_FOR_LTE + - ALL_CONFIGURED_RRM_FOR_LTE + - ALL_CONFIGURED_RRM_FOR_UMTS + + tjMDTReportInterval-Type: + description: See details in 3GPP TS 32.422 clause 5.10.5. + type: string + enum: + - 250ms + - 500ms + - 1000ms + - 2000ms + - 3000ms + - 4000ms + - 6000ms + - 8000ms + - 12000ms + - 16000ms + - 20000ms + - 24000ms + - 28000ms + - 32000ms + - 64000ms + - 120ms + - 240ms + - 480ms + - 640ms + - 1024ms + - 2048ms + - 5120ms + - 10240ms + - 60000ms + - 360000ms + - 720000ms + - 1800000ms + - 3600000ms + + tjMDTReportType-Type: + description: Report type for logged NR MDT. See details in 3GPP TS 32.422 clause 5.10.27. + type: string + enum: + - PERIODICAL + - EVENT_TRIGGERED + + tjMDTSensorInformation-Type: + description: See details in 3GPP TS 32.422 clause 5.10.29. + type: array + items: + type: string + enum: + - BAROMETRIC_PRESSURE + - UE_SPEED + - UE_ORIENTATION + + tjMDTTraceCollectionEntityID-Type: + description: See details in 3GPP TS 32.422 clause 5.10.11. Only tceID value may be sent over the air to the UE being configured for Logged MDT. + type: object + properties: + tceID: + type: integer + tcePLMN: + type: object + properties: + mcc: + $ref: '#/components/schemas/Mcc' + mnc: + $ref: '#/components/schemas/Mnc' + required: + - mcc + - mnc + tceAddress: + oneOf: + - $ref: '#/components/schemas/tjTraceCollectionEntityAddress-Type' + - $ref: '#/components/schemas/tjStreamingTraceConsumerURI-Type' + required: + - tceID + - tcePLMN + - tceAddress + + +#-------- end of Definition of types used in Trace control NRM fragment ---------- + + +#-------- Definition of abstract IOC Top ----------------------------------------- + + Top-Attr: + # This definition will be deprecated, when all occurances of Top-Attr + # are replaced by Top. + type: object + properties: + id: + type: string + VsDataContainer: + $ref: '#/components/schemas/VsDataContainer-Multiple' + Top: + type: object + properties: + id: + type: string + VsDataContainer: + $ref: '#/components/schemas/VsDataContainer-Multiple' + +#-------- Definition of IOCs with new name-containments defined in other TS ------ + + SubNetwork-Attr: + type: object + properties: + dnPrefix: + type: string + userLabel: + type: string + userDefinedNetworkType: + type: string + setOfMcc: + $ref: '#/components/schemas/SetOfMcc' + priorityLabel: + type: integer + supportedPerfMetricGroups: + type: array + items: + $ref: '#/components/schemas/SupportedPerfMetricGroup' + ManagedElement-Attr: + type: object + properties: + dnPrefix: + type: string + managedElementTypeList: + $ref: '#/components/schemas/ManagedElementTypeList' + userLabel: + type: string + locationName: + type: string + managedBy: + $ref: '#/components/schemas/DnList' + vendorName: + type: string + userDefinedState: + type: string + swVersion: + type: string + priorityLabel: + type: integer + supportedPerfMetricGroups: + type: array + items: + $ref: '#/components/schemas/SupportedPerfMetricGroup' + + SubNetwork-ncO: + type: object + properties: + ManagementNode: + $ref: '#/components/schemas/ManagementNode-Multiple' + MeContext: + $ref: '#/components/schemas/MeContext-Multiple' + PerfMetricJob: + $ref: '#/components/schemas/PerfMetricJob-Multiple' + ThresholdMonitor: + $ref: '#/components/schemas/ThresholdMonitor-Multiple' + ThresholdMonitoringCapability: + $ref: '#/components/schemas/ThresholdMonitoringCapability-Single' + NtfSubscriptionControl: + $ref: '#/components/schemas/NtfSubscriptionControl-Multiple' + TraceJob: + $ref: '#/components/schemas/TraceJob-Multiple' + AlarmList: + $ref: '#/components/schemas/AlarmList-Single' + ManagedElement-ncO: + type: object + properties: + PerfMetricJob: + $ref: '#/components/schemas/PerfMetricJob-Multiple' + ThresholdMonitor: + $ref: '#/components/schemas/ThresholdMonitor-Multiple' + ThresholdMonitoringCapability: + $ref: '#/components/schemas/ThresholdMonitoringCapability-Single' + NtfSubscriptionControl: + $ref: '#/components/schemas/NtfSubscriptionControl-Multiple' + TraceJob: + $ref: '#/components/schemas/TraceJob-Multiple' + AlarmList: + $ref: '#/components/schemas/AlarmList-Single' + +#-------- Definition of abstract IOCs -------------------------------------------- + + ManagedFunction-Attr: + type: object + properties: + userLabel: + type: string + vnfParametersList: + $ref: '#/components/schemas/VnfParametersList' + peeParametersList: + $ref: '#/components/schemas/PeeParametersList' + priorityLabel: + type: integer + supportedPerfMetricGroups: + type: array + items: + $ref: '#/components/schemas/SupportedPerfMetricGroup' + EP_RP-Attr: + type: object + properties: + userLabel: + type: string + farEndEntity: + type: string + supportedPerfMetricGroups: + type: array + items: + $ref: '#/components/schemas/SupportedPerfMetricGroup' + + TraceJob-Attr: + type: object + description: abstract class used as a container of all TraceJob attributes + properties: + tjJobType: + $ref: '#/components/schemas/tjJobType-Type' + tjListOfInterfaces: + $ref: '#/components/schemas/tjListOfInterfaces-Type' + tjListOfNeTypes: + $ref: '#/components/schemas/tjListOfNeTypes-Type' + tjPLMNTarget: + $ref: '#/components/schemas/tjPLMNTaget-Type' + tjTraceConsumer: + oneOf: + - $ref: '#/components/schemas/tjStreamingTraceConsumerURI-Type' + - $ref: '#/components/schemas/tjTraceCollectionEntityAddress-Type' + tjTraceDepth: + $ref: '#/components/schemas/tjTraceDepth-Type' + tjTraceReference: + $ref: '#/components/schemas/tjTraceReference-Type' + tjTraceReportingFormat: + $ref: '#/components/schemas/tjTraceReportingFormat-Type' + tjTraceTarget: + $ref: '#/components/schemas/tjTraceTarget-Type' + tjTriggeringEvent: + $ref: '#/components/schemas/tjTriggeringEvent-Type' + tjMDTAnonymizationOfData: + $ref: '#/components/schemas/tjMDTAnonymizationOfData-Type' + tjMDTAreaConfigurationForNeighCell: + $ref: '#/components/schemas/tjMDTAreaConfigurationForNeighCell-Type' + tjMDTAreaScope: + $ref: '#/components/schemas/tjMDTAreaScope-Type' + tjMDTCollectionPeriodRrmLte: + $ref: '#/components/schemas/tjMDTCollectionPeriodRrmLte-Type' + tjMDTCollectionPeriodRrmUmts: + $ref: '#/components/schemas/tjMDTCollectionPeriodRrmUmts-Type' + tjMDTEventListForTriggeredMeasurement: + $ref: '#/components/schemas/tjMDTEventListForTriggeredMeasurement-Type' + tjMDTEventThreshold: + $ref: '#/components/schemas/tjMDTEventThreshold-Type' + tjMDTListOfMeasurements: + $ref: '#/components/schemas/tjMDTListOfMeasurements-Type' + tjMDTLoggingDuration: + $ref: '#/components/schemas/tjMDTLoggingDuration-Type' + tjMDTLoggingInterval: + $ref: '#/components/schemas/tjMDTLoggingInterval-Type' + tjMDTMBSFNAreaList: + $ref: '#/components/schemas/tjMDTMBSFNAreaList-Type' + tjMDTMeasurementPeriodLTE: + $ref: '#/components/schemas/tjMDTMeasurementPeriodLTE-Type' + tjMDTMeasurementPeriodUMTS: + $ref: '#/components/schemas/tjMDTMeasurementPeriodUMTS-Type' + tjMDTMeasurementQuantity: + $ref: '#/components/schemas/tjMDTMeasurementQuantity-Type' + tjMDTPLMList: + $ref: '#/components/schemas/tjMDTPLMList-Type' + tjMDTPositioningMethod: + $ref: '#/components/schemas/tjMDTPositioningMethod-Type' + tjMDTReportAmount: + $ref: '#/components/schemas/tjMDTReportAmount-Type' + tjMDTReportingTrigger: + $ref: '#/components/schemas/tjMDTReportingTrigger-Type' + tjMDTReportInterval: + $ref: '#/components/schemas/tjMDTReportInterval-Type' + tjMDTReportType: + $ref: '#/components/schemas/tjMDTReportType-Type' + tjMDTSensorInformation: + $ref: '#/components/schemas/tjMDTSensorInformation-Type' + tjMDTTraceCollectionEntityID: + $ref: '#/components/schemas/tjMDTTraceCollectionEntityID-Type' + required: + - tjJobType + - tjTraceReference + - tjTraceConsumer + - tjTraceReportingFormat + - tjTraceTarget + + ManagedFunction-ncO: + type: object + properties: + PerfMetricJob: + $ref: '#/components/schemas/PerfMetricJob-Multiple' + ThresholdMonitor: + $ref: '#/components/schemas/ThresholdMonitor-Multiple' + ThresholdMonitoringCapability: + $ref: '#/components/schemas/ThresholdMonitoringCapability-Single' + ManagedNFService: + $ref: '#/components/schemas/ManagedNFService-Multiple' + TraceJob: + $ref: '#/components/schemas/TraceJob-Multiple' + +#-------- Definition of concrete IOCs -------------------------------------------- + + VsDataContainer-Single: + type: object + properties: + id: + type: string + attributes: + type: object + properties: + vsDataType: + type: string + vsDataFormatVersion: + type: string + vsData: + nullable: true + VsDataContainer: + $ref: '#/components/schemas/VsDataContainer-Multiple' + ManagedNFService-Single: + allOf: + - $ref: '#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + type: object + properties: + userLabel: + type: string + nFServiceType: + $ref: '#/components/schemas/NFServiceType' + sAP: + $ref: '#/components/schemas/SAP' + operations: + $ref: '#/components/schemas/OperationList' + administrativeState: + $ref: '#/components/schemas/AdministrativeState' + operationalState: + $ref: '#/components/schemas/OperationalState' + usageState: + $ref: '#/components/schemas/UsageState' + registrationState: + $ref: '#/components/schemas/RegistrationState' + ManagementNode-Single: + allOf: + - $ref: '#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + type: object + properties: + userLabel: + type: string + managedElements: + $ref: '#/components/schemas/DnList' + vendorName: + type: string + userDefinedState: + type: string + locationName: + type: string + swVersion: + type: string + MeContext-Single: + allOf: + - $ref: '#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + type: object + properties: + dnPrefix: + type: string + PerfMetricJob-Single: + allOf: + - $ref: '#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + type: object + properties: + administrativeState: + $ref: '#/components/schemas/AdministrativeState' + operationalState: + $ref: '#/components/schemas/OperationalState' + perfMetricJobGroupId: + type: string + performanceMetrics: + type: array + items: + type: string + granularityPeriod: + type: integer + minimum: 1 + objectInstances: + $ref: '#/components/schemas/DnList' + rootObjectInstances: + $ref: '#/components/schemas/DnList' + reportingCtrl: + $ref: '#/components/schemas/ReportingCtrl' + ThresholdMonitoringCapability-Single: + allOf: + - $ref: '#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + type: object + properties: + supportedMonitoringGPs: + $ref: '#/components/schemas/MonitoringGPList' + ThresholdMonitor-Single: + allOf: + - $ref: '#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + type: object + properties: + thresholdInfoList: + $ref: '#/components/schemas/ThresholdInfoList' + monitoringGP: + type: integer + monitoringNotifTarget: + type: string + monitoredIOCName: + type: string + monitoredObjectDNs: + $ref: '#/components/schemas/DnList' + NtfSubscriptionControl-Single: + allOf: + - $ref: '#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + type: object + properties: + notificationRecipientAddress: + $ref: '#/components/schemas/Uri' + notificationTypes: + $ref: '#/components/schemas/NotificationTypes' + scope: + $ref: '#/components/schemas/Scope' + notificationFilter: + type: string + HeartbeatControl: + $ref: '#/components/schemas/HeartbeatControl-Single' + HeartbeatControl-Single: + allOf: + - $ref: '#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + type: object + properties: + heartbeatNtfPeriod: + type: integer + triggerHeartbeatNtf: + type: boolean + TraceJob-Single: + allOf: + - $ref: '#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + $ref: '#/components/schemas/TraceJob-Attr' + + AlarmList-Single: + allOf: + - $ref: '#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + type: object + properties: + administrativeState: + $ref: '#/components/schemas/AdministrativeState' + operationalState: + $ref: '#/components/schemas/OperationalState' + numOfAlarmRecords: + type: integer + lastModification: + $ref: '#/components/schemas/DateTime' + alarmRecords: + description: >- + This resource represents a map of alarm records. + The alarmIds are used as keys in the map. + type: object + additionalProperties: + $ref: 'faultMnS.yaml#/components/schemas/AlarmRecord' + +#-------- Definition of JSON arrays for name-contained IOCs ---------------------- + + VsDataContainer-Multiple: + type: array + items: + $ref: '#/components/schemas/VsDataContainer-Single' + ManagedNFService-Multiple: + type: array + items: + $ref: '#/components/schemas/ManagedNFService-Single' + ManagementNode-Multiple: + type: array + items: + $ref: '#/components/schemas/ManagementNode-Single' + MeContext-Multiple: + type: array + items: + $ref: '#/components/schemas/MeContext-Single' + PerfMetricJob-Multiple: + type: array + items: + $ref: '#/components/schemas/PerfMetricJob-Single' + ThresholdMonitor-Multiple: + type: array + items: + $ref: '#/components/schemas/ThresholdMonitor-Single' + NtfSubscriptionControl-Multiple: + type: array + items: + $ref: '#/components/schemas/NtfSubscriptionControl-Single' + TraceJob-Multiple: + type: array + items: + $ref: '#/components/schemas/TraceJob-Single' + +#-------- Definitions in TS 28.623 for TS 28.532 --------------------------------- + + resources-genericNrm: + oneOf: + + - $ref: '#/components/schemas/VsDataContainer-Single' + + - $ref: '#/components/schemas/ManagementNode-Single' + - $ref: '#/components/schemas/MeContext-Single' + + - $ref: '#/components/schemas/ManagedNFService-Single' + + - $ref: '#/components/schemas/PerfMetricJob-Single' + + - $ref: '#/components/schemas/ThresholdMonitoringCapability-Single' + - $ref: '#/components/schemas/ThresholdMonitor-Single' + + - $ref: '#/components/schemas/NtfSubscriptionControl-Single' + - $ref: '#/components/schemas/HeartbeatControl-Single' + - $ref: '#/components/schemas/TraceJob-Single' + + - $ref: '#/components/schemas/AlarmList-Single' diff --git a/OpenAPI/heartbeatNtf.yaml b/OpenAPI/heartbeatNtf.yaml new file mode 100644 index 000000000..afde5066d --- /dev/null +++ b/OpenAPI/heartbeatNtf.yaml @@ -0,0 +1,23 @@ +openapi: 3.0.1 +info: + title: Heartbeat notification + version: 16.3.0 + description: >- + OAS 3.0.1 specification of the heartbeat notification + © 2020, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). + All rights reserved. +externalDocs: + description: 3GPP TS 28.532 V16.3.0; Heartbeat notification + url: http://www.3gpp.org/ftp/Specs/archive/28_series/28.6532/ +paths: {} +components: + schemas: + hearbeatNtfPeriod-Type: + type: integer + notifyHeartbeat-NotifType: + allOf: + - $ref: 'provMnS.yaml#/components/schemas/header-Type' + - type: object + properties: + heartbeatNtfPeriod: + $ref: '#/components/schemas/hearbeatNtfPeriod-Type' diff --git a/OpenAPI/nrNrm.yaml b/OpenAPI/nrNrm.yaml new file mode 100644 index 000000000..b1a462f33 --- /dev/null +++ b/OpenAPI/nrNrm.yaml @@ -0,0 +1,1883 @@ +openapi: 3.0.1 +info: + title: NR NRM + version: 17.3.0 + description: >- + OAS 3.0.1 specification of the NR NRM + © 2020, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). + All rights reserved. +externalDocs: + description: 3GPP TS 28.541; 5G NRM, NR NRM + url: http://www.3gpp.org/ftp/Specs/archive/28_series/28.541/ +paths: {} +components: + schemas: + +#-------- Definition of types----------------------------------------------------- + + GnbId: + type: string + GnbIdLength: + type: integer + minimum: 22 + maximum: 32 + GnbName: + type: string + maxLength: 150 + GnbDuId: + type: number + minimum: 0 + maximum: 68719476735 + GnbCuUpId: + type: number + minimum: 0 + maximum: 68719476735 + + Sst: + type: integer + maximum: 255 + Snssai: + type: object + properties: + sst: + $ref: '#/components/schemas/Sst' + sd: + type: string + SnssaiList: + type: array + items: + $ref: '#/components/schemas/Snssai' + + Mnc: + type: string + pattern: '[0-9]{3}|[0-9]{2}' + PlmnId: + type: object + properties: + mcc: + $ref: 'genericNrm.yaml#/components/schemas/Mcc' + mnc: + $ref: '#/components/schemas/Mnc' + PlmnIdList: + type: array + items: + $ref: '#/components/schemas/PlmnId' + PlmnInfo: + type: object + properties: + plmnId": + $ref: '#/components/schemas/PlmnId' + snssai: + $ref: '#/components/schemas/Snssai' + PlmnInfoList: + type: array + items: + $ref: '#/components/schemas/PlmnInfo' + GGnbId: + type: string + pattern: '^[0-9]{3}[0-9]{2,3}-(22|23|24|25|26|27|28|29|30|31|32)-[0-9]{1,10}' + GEnbId: + type: string + pattern: '^[0-9]{3}[0-9]{2,3}-(18|20|21|22)-[0-9]{1,7}' + + GGnbIdList: + type: array + items: + $ref: '#/components/schemas/GGnbId' + + GEnbIdList: + type: array + items: + $ref: '#/components/schemas/GEnbId' + + NrPci: + type: integer + maximum: 503 + NrTac: + type: integer + maximum: 16777215 + Tai: + type: object + properties: + plmnId: + $ref: '#/components/schemas/PlmnId' + nrTac: + $ref: '#/components/schemas/NrTac' + + BackhaulAddress: + type: object + properties: + gnbId: + $ref: '#/components/schemas/GnbId' + tai: + $ref: "#/components/schemas/Tai" + MappingSetIDBackhaulAddress: + type: object + properties: + setID: + type: integer + backhaulAddress: + $ref: '#/components/schemas/BackhaulAddress' + IntraRatEsActivationOriginalCellLoadParameters: + type: object + properties: + loadThreshold: + type: integer + timeDuration: + type: integer + IntraRatEsActivationCandidateCellsLoadParameters: + type: object + properties: + loadThreshold: + type: integer + timeDuration: + type: integer + IntraRatEsDeactivationCandidateCellsLoadParameters: + type: object + properties: + loadThreshold: + type: integer + timeDuration: + type: integer + EsNotAllowedTimePeriod: + type: object + properties: + startTimeandendTime: + type: string + periodOfDay: + type: string + daysOfWeekList: + type: string + listoftimeperiods: + type: string + InterRatEsActivationOriginalCellParameters: + type: object + properties: + loadThreshold: + type: integer + timeDuration: + type: integer + InterRatEsActivationCandidateCellParameters: + type: object + properties: + loadThreshold: + type: integer + timeDuration: + type: integer + InterRatEsDeactivationCandidateCellParameters: + type: object + properties: + loadThreshold: + type: integer + timeDuration: + type: integer + + UeAccProbilityDist: + type: object + properties: + targetProbability: + type: integer + numberofpreamblessent: + type: integer + + UeAccDelayProbilityDist: + type: object + properties: + targetProbability: + type: integer + accessdelay: + type: integer + + NRPciList: + type: object + properties: + NRPci: + type: integer + + CSonPciList: + type: object + properties: + NRPci: + type: integer + + MaximumDeviationHoTrigger: + type: integer + minimum: -20 + maximum: 20 + + MinimumTimeBetweenHoTriggerChange: + type: integer + minimum: 0 + maximum: 604800 + + TstoreUEcntxt: + type: integer + minimum: 0 + maximum: 1023 + + CellState: + type: string + enum: + - IDLE + - INACTIVE + - ACTIVE + CyclicPrefix: + type: string + enum: + - '15' + - '30' + - '60' + - '120' + TxDirection: + type: string + enum: + - DL + - UL + - DL and UL + BwpContext: + type: string + enum: + - DL + - UL + - SUL + IsInitialBwp: + type: string + enum: + - INITIAL + - OTHER + - SUL + QuotaType: + type: string + enum: + - STRICT + - FLOAT + IsESCoveredBy: + type: string + enum: + - NO + - PARTIAL + - FULL + RrmPolicyMember: + type: object + properties: + plmnId: + $ref: '#/components/schemas/PlmnId' + snssai: + $ref: '#/components/schemas/Snssai' + RrmPolicyMemberList: + type: array + items: + $ref: '#/components/schemas/RrmPolicyMember' + AddressWithVlan: + type: object + properties: + ipv4Address: + $ref: 'genericNrm.yaml#/components/schemas/Ipv4Addr' + ipv6Address: + $ref: 'genericNrm.yaml#/components/schemas/Ipv6Addr' + vlanId: + type: integer + minimum: 0 + maximum: 4096 + LocalAddress: + type: object + properties: + addressWithVlan: + $ref: '#/components/schemas/AddressWithVlan' + port: + type: integer + minimum: 0 + maximum: 65535 + RemoteAddress: + type: object + properties: + ipv4Address: + $ref: 'genericNrm.yaml#/components/schemas/Ipv4Addr' + ipv6Address: + $ref: 'genericNrm.yaml#/components/schemas/Ipv6Addr' + + CellIndividualOffset: + type: object + properties: + rsrpOffsetSSB: + type: integer + rsrqOffsetSSB: + type: integer + sinrOffsetSSB: + type: integer + rsrpOffsetCSI-RS: + type: integer + rsrqOffsetCSI-RS: + type: integer + sinrOffsetCSI-RS: + type: integer + QOffsetRange: + type: integer + enum: + - -24 + - -22 + - -20 + - -18 + - -16 + - -14 + - -12 + - -10 + - -8 + - -6 + - -5 + - -4 + - -3 + - -2 + - -1 + - 0 + - 24 + - 22 + - 20 + - 18 + - 16 + - 14 + - 12 + - 10 + - 8 + - 6 + - 5 + - 4 + - 3 + - 2 + - 1 + QOffsetRangeList: + type: object + properties: + rsrpOffsetSSB: + $ref: '#/components/schemas/QOffsetRange' + rsrqOffsetSSB: + $ref: '#/components/schemas/QOffsetRange' + sinrOffsetSSB: + $ref: '#/components/schemas/QOffsetRange' + rsrpOffsetCSI-RS: + $ref: '#/components/schemas/QOffsetRange' + rsrqOffsetCSI-RS: + $ref: '#/components/schemas/QOffsetRange' + sinrOffsetCSI-RS: + $ref: '#/components/schemas/QOffsetRange' + QOffsetFreq: + type: number + TReselectionNRSf: + type: integer + enum: + - 25 + - 50 + - 75 + - 100 + SsbPeriodicity: + type: integer + enum: + - 5 + - 10 + - 20 + - 40 + - 80 + - 160 + SsbDuration: + type: integer + enum: + - 1 + - 2 + - 3 + - 4 + - 5 + SsbSubCarrierSpacing: + type: integer + enum: + - 15 + - 30 + - 120 + - 240 + CoverageShape: + type: integer + maximum: 65535 + DigitalTilt: + type: integer + minimum: -900 + maximum: 900 + DigitalAzimuth: + type: integer + minimum: -1800 + maximum: 1800 + + RSSetId: + type: integer + maximum: 4194303 + + RSSetType: + type: string + enum: + - RS1 + - RS2 + + FrequencyDomainPara: + type: object + properties: + rimRSSubcarrierSpacing: + type: integer + rIMRSBandwidth: + type: integer + nrofGlobalRIMRSFrequencyCandidates: + type: integer + rimRSCommonCarrierReferencePoint: + type: integer + rimRSStartingFrequencyOffsetIdList: + type: array + items: + type: integer + + SequenceDomainPara: + type: object + properties: + nrofRIMRSSequenceCandidatesofRS1: + type: integer + rimRSScrambleIdListofRS1: + type: array + items: + type: integer + nrofRIMRSSequenceCandidatesofRS2: + type: integer + rimRSScrambleIdListofRS2: + type: array + items: + type: integer + enableEnoughNotEnoughIndication: + type: string + enum: + - ENABLE + - DISABLE + RIMRSScrambleTimerMultiplier: + type: integer + RIMRSScrambleTimerOffset: + type: integer + + TimeDomainPara: + type: object + properties: + dlULSwitchingPeriod1: + type: string + enum: + - MS0P5 + - MS0P625 + - MS1 + - MS1P25 + - MS2 + - MS2P5 + - MS3 + - MS4 + - MS5 + - MS10 + - MS20 + symbolOffsetOfReferencePoint1: + type: integer + dlULSwitchingPeriod2: + type: string + enum: + - MS0P5 + - MS0P625 + - MS1 + - MS1P25 + - MS2 + - MS2P5 + - MS3 + - MS4 + - MS5 + - MS10 + - MS20 + symbolOffsetOfReferencePoint2: + type: integer + totalnrofSetIdofRS1: + type: integer + totalnrofSetIdofRS2: + type: integer + nrofConsecutiveRIMRS1: + type: integer + nrofConsecutiveRIMRS2: + type: integer + consecutiveRIMRS1List: + type: array + items: + type: integer + consecutiveRIMRS2List: + type: array + items: + type: integer + enablenearfarIndicationRS1: + type: string + enum: + - ENABLE + - DISABLE + enablenearfarIndicationRS2: + type: string + enum: + - ENABLE + - DISABLE + + RimRSReportInfo: + type: object + properties: + detectedSetID: + type: integer + propagationDelay: + type: integer + functionalityOfRIMRS: + type: string + enum: + - RS1 + - RS2 + - RS1forEnoughMitigation + - RS1forNotEnoughMitigation + + RimRSReportConf: + type: object + properties: + reportIndicator: + type: string + enum: + - ENABLE + - DISABLE + reportInterval: + type: integer + nrofRIMRSReportInfo: + type: integer + maxPropagationDelay: + type: integer + rimRSReportInfoList: + type: array + items: + $ref: '#/components/schemas/RimRSReportInfo' + TceMappingInfo: + type: object + properties: + TceIPAddress: + oneOf: + - $ref: 'genericNrm.yaml#/components/schemas/Ipv4Addr' + - $ref: 'genericNrm.yaml#/components/schemas/Ipv6Addr' + TceID: + type: integer + PlmnTarget: + $ref: '#/components/schemas/PlmnId' + TceMappingInfoList: + type: array + items: + $ref: '#/components/schemas/TceMappingInfo' + + +#-------- Definition of abstract IOCs -------------------------------------------- + + RrmPolicy_-Attr: + type: object + properties: + resourceType: + type: string + rRMPolicyMemberList: + $ref: '#/components/schemas/RrmPolicyMemberList' + + +#-------- Definition of concrete IOCs -------------------------------------------- + + SubNetwork-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + $ref: 'genericNrm.yaml#/components/schemas/SubNetwork-Attr' + - $ref: 'genericNrm.yaml#/components/schemas/SubNetwork-ncO' + - type: object + properties: + SubNetwork: + $ref: '#/components/schemas/SubNetwork-Multiple' + ManagedElement: + $ref: '#/components/schemas/ManagedElement-Multiple' + NRFrequency: + $ref: '#/components/schemas/NRFrequency-Multiple' + ExternalGnbCuCpFunction: + $ref: '#/components/schemas/ExternalGnbCuCpFunction-Multiple' + ExternalENBFunction: + $ref: '#/components/schemas/ExternalENBFunction-Multiple' + EUtranFrequency: + $ref: '#/components/schemas/EUtranFrequency-Multiple' + DESManagementFunction: + $ref: '#/components/schemas/DESManagementFunction-Single' + DRACHOptimizationFunction: + $ref: '#/components/schemas/DRACHOptimizationFunction-Single' + DMROFunction: + $ref: '#/components/schemas/DMROFunction-Single' + DPCIConfigurationFunction: + $ref: '#/components/schemas/DPCIConfigurationFunction-Single' + CPCIConfigurationFunction: + $ref: '#/components/schemas/CPCIConfigurationFunction-Single' + CESManagementFunction: + $ref: '#/components/schemas/CESManagementFunction-Single' + Configurable5QISet: + $ref: '5gcNrm.yaml#/components/schemas/Configurable5QISet-Multiple' + RimRSGlobal: + $ref: '#/components/schemas/RimRSGlobal-Single' + Dynamic5QISet: + $ref: '5gcNrm.yaml#/components/schemas/Dynamic5QISet-Multiple' + + ManagedElement-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + $ref: 'genericNrm.yaml#/components/schemas/ManagedElement-Attr' + - $ref: 'genericNrm.yaml#/components/schemas/ManagedElement-ncO' + - type: object + properties: + GnbDuFunction: + $ref: '#/components/schemas/GnbDuFunction-Multiple' + GnbCuUpFunction: + $ref: '#/components/schemas/GnbCuUpFunction-Multiple' + GnbCuCpFunction: + $ref: '#/components/schemas/GnbCuCpFunction-Multiple' + DESManagementFunction: + $ref: '#/components/schemas/DESManagementFunction-Single' + DRACHOptimizationFunction: + $ref: '#/components/schemas/DRACHOptimizationFunction-Single' + DMROFunction: + $ref: '#/components/schemas/DMROFunction-Single' + DPCIConfigurationFunction: + $ref: '#/components/schemas/DPCIConfigurationFunction-Single' + CPCIConfigurationFunction: + $ref: '#/components/schemas/CPCIConfigurationFunction-Single' + CESManagementFunction: + $ref: '#/components/schemas/CESManagementFunction-Single' + Configurable5QISet: + $ref: '5gcNrm.yaml#/components/schemas/Configurable5QISet-Multiple' + Dynamic5QISet: + $ref: '5gcNrm.yaml#/components/schemas/Dynamic5QISet-Multiple' + + GnbDuFunction-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' + - type: object + properties: + gnbDuId: + $ref: '#/components/schemas/GnbDuId' + gnbDuName: + $ref: '#/components/schemas/GnbName' + gnbId: + $ref: '#/components/schemas/GnbId' + gnbIdLength: + $ref: '#/components/schemas/GnbIdLength' + rimRSReportConf: + $ref: '#/components/schemas/RimRSReportConf' + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' + - type: object + properties: + RRMPolicyRatio: + $ref: '#/components/schemas/RRMPolicyRatio-Multiple' + NrCellDu: + $ref: '#/components/schemas/NrCellDu-Multiple' + Bwp-Multiple: + $ref: '#/components/schemas/Bwp-Multiple' + NrSectorCarrier-Multiple: + $ref: '#/components/schemas/NrSectorCarrier-Multiple' + EP_F1C: + $ref: '#/components/schemas/EP_F1C-Single' + EP_F1U: + $ref: '#/components/schemas/EP_F1U-Multiple' + DRACHOptimizationFunction: + $ref: '#/components/schemas/DRACHOptimizationFunction-Single' + GnbCuUpFunction-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' + - type: object + properties: + gnbId: + $ref: '#/components/schemas/GnbId' + gnbIdLength: + $ref: '#/components/schemas/GnbIdLength' + gnbCuUpId: + $ref: '#/components/schemas/GnbCuUpId' + plmnInfoList: + $ref: '#/components/schemas/PlmnInfoList' + configurable5QISetRef: + $ref: 'genericNrm.yaml#/components/schemas/Dn' + dynamic5QISetRef: + $ref: 'genericNrm.yaml#/components/schemas/Dn' + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' + - type: object + properties: + RRMPolicyRatio: + $ref: '#/components/schemas/RRMPolicyRatio-Multiple' + EP_E1: + $ref: '#/components/schemas/EP_E1-Single' + EP_XnU: + $ref: '#/components/schemas/EP_XnU-Multiple' + EP_F1U: + $ref: '#/components/schemas/EP_F1U-Multiple' + EP_NgU: + $ref: '#/components/schemas/EP_NgU-Multiple' + EP_X2U: + $ref: '#/components/schemas/EP_X2U-Multiple' + EP_S1U: + $ref: '#/components/schemas/EP_S1U-Multiple' + GnbCuCpFunction-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' + - type: object + properties: + gnbId: + $ref: '#/components/schemas/GnbId' + gnbIdLength: + $ref: '#/components/schemas/GnbIdLength' + gnbCuName: + $ref: '#/components/schemas/GnbName' + plmnId: + $ref: '#/components/schemas/PlmnId' + x2BlackList: + $ref: '#/components/schemas/GGnbIdList' + xnBlackList: + $ref: '#/components/schemas/GGnbIdList' + x2WhiteList: + $ref: '#/components/schemas/GGnbIdList' + xnWhiteList: + $ref: '#/components/schemas/GGnbIdList' + x2XnHOBlackList: + $ref: '#/components/schemas/GEnbIdList' + mappingSetIDBackhaulAddress: + $ref: '#/components/schemas/MappingSetIDBackhaulAddress' + tceMappingInfoList: + $ref: '#/components/schemas/TceMappingInfoList' + configurable5QISetRef: + $ref: 'genericNrm.yaml#/components/schemas/Dn' + dynamic5QISetRef: + $ref: 'genericNrm.yaml#/components/schemas/Dn' + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' + - type: object + properties: + RRMPolicyRatio: + $ref: '#/components/schemas/RRMPolicyRatio-Multiple' + NrCellCu: + $ref: '#/components/schemas/NrCellCu-Multiple' + EP_XnC: + $ref: '#/components/schemas/EP_XnC-Multiple' + EP_E1: + $ref: '#/components/schemas/EP_E1-Multiple' + EP_F1C: + $ref: '#/components/schemas/EP_F1C-Multiple' + EP_NgC: + $ref: '#/components/schemas/EP_NgC-Multiple' + EP_X2C: + $ref: '#/components/schemas/EP_X2C-Multiple' + DANRManagementFunction: + $ref: '#/components/schemas/DANRManagementFunction-Single' + DESManagementFunction: + $ref: '#/components/schemas/DESManagementFunction-Single' + DMROFunction: + $ref: '#/components/schemas/DMROFunction-Single' + + NrCellCu-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' + - type: object + properties: + cellLocalId: + type: integer + plmnInfoList: + $ref: '#/components/schemas/PlmnInfoList' + nRFrequencyRef: + $ref: 'genericNrm.yaml#/components/schemas/Dn' + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' + - type: object + properties: + RRMPolicyRatio: + $ref: '#/components/schemas/RRMPolicyRatio-Multiple' + NRCellRelation: + $ref: '#/components/schemas/NRCellRelation-Multiple' + EUtranCellRelation: + $ref: '#/components/schemas/EUtranCellRelation-Multiple' + NRFreqRelation: + $ref: '#/components/schemas/NRFreqRelation-Multiple' + EUtranFreqRelation: + $ref: '#/components/schemas/EUtranFreqRelation-Multiple' + DESManagementFunction: + $ref: '#/components/schemas/DESManagementFunction-Single' + DMROFunction: + $ref: '#/components/schemas/DMROFunction-Single' + CESManagementFunction: + $ref: '#/components/schemas/CESManagementFunction-Single' + DPCIConfigurationFunction: + $ref: '#/components/schemas/DPCIConfigurationFunction-Single' + + NrCellDu-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' + - type: object + properties: + administrativeState: + $ref: 'genericNrm.yaml#/components/schemas/AdministrativeState' + operationalState: + $ref: 'genericNrm.yaml#/components/schemas/OperationalState' + cellLocalId: + type: integer + cellState: + $ref: '#/components/schemas/CellState' + plmnInfoList: + $ref: '#/components/schemas/PlmnInfoList' + nrPci: + $ref: '#/components/schemas/NrPci' + nrTac: + $ref: '#/components/schemas/NrTac' + arfcnDL: + type: integer + arfcnUL: + type: integer + arfcnSUL: + type: integer + bSChannelBwDL: + type: integer + bSChannelBwUL: + type: integer + bSChannelBwSUL: + type: integer + ssbFrequency: + type: integer + minimum: 0 + maximum: 3279165 + ssbPeriodicity: + $ref: '#/components/schemas/SsbPeriodicity' + ssbSubCarrierSpacing: + $ref: '#/components/schemas/SsbSubCarrierSpacing' + ssbOffset: + type: integer + minimum: 0 + maximum: 159 + ssbDuration: + $ref: '#/components/schemas/SsbDuration' + nrSectorCarrierRef: + type: array + items: + $ref: 'genericNrm.yaml#/components/schemas/Dn' + bwpRef: + type: array + items: + $ref: 'genericNrm.yaml#/components/schemas/Dn' + nRFrequencyRef: + $ref: 'genericNrm.yaml#/components/schemas/Dn' + victimSetRef: + $ref: 'genericNrm.yaml#/components/schemas/Dn' + aggressorSetRef: + $ref: 'genericNrm.yaml#/components/schemas/Dn' + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' + - type: object + properties: + RRMPolicyRatio: + $ref: '#/components/schemas/RRMPolicyRatio-Multiple' + CPCIConfigurationFunction: + $ref: '#/components/schemas/CPCIConfigurationFunction-Single' + DRACHOptimizationFunction: + $ref: '#/components/schemas/DRACHOptimizationFunction-Single' + + NRFrequency-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + type: object + properties: + absoluteFrequencySSB: + type: integer + minimum: 0 + maximum: 3279165 + ssbSubCarrierSpacing: + $ref: '#/components/schemas/SsbSubCarrierSpacing' + multiFrequencyBandListNR: + type: integer + minimum: 1 + maximum: 256 + EUtranFrequency-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + type: object + properties: + earfcnDL: + type: integer + minimum: 0 + maximum: 262143 + multiBandInfoListEutra: + type: integer + minimum: 1 + maximum: 256 + + NrSectorCarrier-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' + - type: object + properties: + txDirection: + $ref: '#/components/schemas/TxDirection' + configuredMaxTxPower: + type: integer + arfcnDL: + type: integer + arfcnUL: + type: integer + bSChannelBwDL: + type: integer + bSChannelBwUL: + type: integer + sectorEquipmentFunctionRef: + $ref: 'genericNrm.yaml#/components/schemas/Dn' + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' + - type: object + properties: + CommonBeamformingFunction: + $ref: '#/components/schemas/CommonBeamformingFunction-Single' + Bwp-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' + - type: object + properties: + bwpContext: + $ref: '#/components/schemas/BwpContext' + isInitialBwp: + $ref: '#/components/schemas/IsInitialBwp' + subCarrierSpacing: + type: integer + cyclicPrefix: + $ref: '#/components/schemas/CyclicPrefix' + startRB: + type: integer + numberOfRBs: + type: integer + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' + CommonBeamformingFunction-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + allOf: + - type: object + properties: + coverageShape: + $ref: '#/components/schemas/CoverageShape' + digitalAzimuth: + $ref: '#/components/schemas/DigitalAzimuth' + digitalTilt: + $ref: '#/components/schemas/DigitalTilt' + - type: object + properties: + Beam: + $ref: '#/components/schemas/Beam-Multiple' + Beam-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + allOf: + - type: object + properties: + beamIndex: + type: integer + beamType: + type: string + enum: + - SSB-BEAM + beamAzimuth: + type: integer + minimum: -1800 + maximum: 1800 + beamTilt: + type: integer + minimum: -900 + maximum: 900 + beamHorizWidth: + type: integer + minimum: 0 + maximum: 3599 + beamVertWidth: + type: integer + minimum: 0 + maximum: 1800 + RRMPolicyRatio-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + allOf: + - $ref: '#/components/schemas/RrmPolicy_-Attr' + - type: object + properties: + rRMPolicyMaxRatio: + type: integer + rRMPolicyMinRatio: + type: integer + rRMPolicyDedicatedRatio: + type: integer + + NRCellRelation-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + type: object + properties: + nRTCI: + type: integer + cellIndividualOffset: + $ref: '#/components/schemas/CellIndividualOffset' + adjacentNRCellRef: + $ref: 'genericNrm.yaml#/components/schemas/Dn' + nRFrequencyRef: + $ref: 'genericNrm.yaml#/components/schemas/Dn' + isRemoveAllowed: + type: boolean + isHOAllowed: + type: boolean + isESCoveredBy: + $ref: '#/components/schemas/IsESCoveredBy' + isENDCAllowed: + type: boolean + isMLBAllowed: + type: boolean + EUtranCellRelation-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' + - type: object + properties: + adjacentEUtranCellRef: + $ref: 'genericNrm.yaml#/components/schemas/Dn' + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' + NRFreqRelation-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + type: object + properties: + offsetMO: + $ref: '#/components/schemas/QOffsetRangeList' + blackListEntry: + type: array + items: + type: integer + minimum: 0 + maximum: 1007 + blackListEntryIdleMode: + type: integer + cellReselectionPriority: + type: integer + cellReselectionSubPriority: + type: number + minimum: 0.2 + maximum: 0.8 + multipleOf: 0.2 + pMax: + type: integer + minimum: -30 + maximum: 33 + qOffsetFreq: + $ref: '#/components/schemas/QOffsetFreq' + qQualMin: + type: number + qRxLevMin: + type: integer + minimum: -140 + maximum: -44 + threshXHighP: + type: integer + minimum: 0 + maximum: 62 + threshXHighQ: + type: integer + minimum: 0 + maximum: 31 + threshXLowP: + type: integer + minimum: 0 + maximum: 62 + threshXLowQ: + type: integer + minimum: 0 + maximum: 31 + tReselectionNr: + type: integer + minimum: 0 + maximum: 7 + tReselectionNRSfHigh: + $ref: '#/components/schemas/TReselectionNRSf' + tReselectionNRSfMedium: + $ref: '#/components/schemas/TReselectionNRSf' + nRFrequencyRef: + $ref: 'genericNrm.yaml#/components/schemas/Dn' + EUtranFreqRelation-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + type: object + properties: + cellIndividualOffset: + $ref: '#/components/schemas/CellIndividualOffset' + blackListEntry: + type: array + items: + type: integer + minimum: 0 + maximum: 1007 + blackListEntryIdleMode: + type: integer + cellReselectionPriority: + type: integer + cellReselectionSubPriority: + type: number + minimum: 0.2 + maximum: 0.8 + multipleOf: 0.2 + pMax: + type: integer + minimum: -30 + maximum: 33 + qOffsetFreq: + $ref: '#/components/schemas/QOffsetFreq' + qQualMin: + type: number + qRxLevMin: + type: integer + minimum: -140 + maximum: -44 + threshXHighP: + type: integer + minimum: 0 + maximum: 62 + threshXHighQ: + type: integer + minimum: 0 + maximum: 31 + threshXLowP: + type: integer + minimum: 0 + maximum: 62 + threshXLowQ: + type: integer + minimum: 0 + maximum: 31 + tReselectionEutran: + type: integer + minimum: 0 + maximum: 7 + tReselectionNRSfHigh: + $ref: '#/components/schemas/TReselectionNRSf' + tReselectionNRSfMedium: + $ref: '#/components/schemas/TReselectionNRSf' + eUTranFrequencyRef: + $ref: 'genericNrm.yaml#/components/schemas/Dn' + DANRManagementFunction-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + type: object + properties: + intrasystemANRManagementSwitch: + type: boolean + intersystemANRManagementSwitch: + type: boolean + + DESManagementFunction-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + type: object + properties: + desSwitch: + type: boolean + intraRatEsActivationOriginalCellLoadParameters: + $ref: "#/components/schemas/IntraRatEsActivationOriginalCellLoadParameters" + intraRatEsActivationCandidateCellsLoadParameters: + $ref: "#/components/schemas/IntraRatEsActivationCandidateCellsLoadParameters" + intraRatEsDeactivationCandidateCellsLoadParameters: + $ref: "#/components/schemas/IntraRatEsDeactivationCandidateCellsLoadParameters" + esNotAllowedTimePeriod: + $ref: "#/components/schemas/EsNotAllowedTimePeriod" + interRatEsActivationOriginalCellParameters: + $ref: "#/components/schemas/IntraRatEsActivationOriginalCellLoadParameters" + interRatEsActivationCandidateCellParameters: + $ref: "#/components/schemas/IntraRatEsActivationOriginalCellLoadParameters" + interRatEsDeactivationCandidateCellParameters: + $ref: "#/components/schemas/IntraRatEsActivationOriginalCellLoadParameters" + isProbingCapable: + type: string + enum: + - yes + - no + energySavingState: + type: string + enum: + - isNotEnergySaving + - isEnergySaving + + DRACHOptimizationFunction-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + type: object + properties: + drachOptimizationControl: + type: boolean + ueAccProbilityDist: + $ref: "#/components/schemas/UeAccProbilityDist" + ueAccDelayProbilityDist: + $ref: "#/components/schemas/UeAccDelayProbilityDist" + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' + + DMROFunction-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + type: object + properties: + dmroControl: + type: boolean + maximumDeviationHoTrigger: + $ref: '#/components/schemas/MaximumDeviationHoTrigger' + minimumTimeBetweenHoTriggerChange: + $ref: '#/components/schemas/MinimumTimeBetweenHoTriggerChange' + tstoreUEcntxt: + $ref: '#/components/schemas/TstoreUEcntxt' + + DPCIConfigurationFunction-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + type: object + properties: + dPciConfigurationControl: + type: boolean + nRPciList: + $ref: "#/components/schemas/NRPciList" + + CPCIConfigurationFunction-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + type: object + properties: + cPciConfigurationControl: + type: boolean + cSonPciList: + $ref: "#/components/schemas/CSonPciList" + + CESManagementFunction-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + type: object + properties: + cesSwitch: + type: boolean + intraRatEsActivationOriginalCellLoadParameters: + $ref: "#/components/schemas/IntraRatEsActivationOriginalCellLoadParameters" + intraRatEsActivationCandidateCellsLoadParameters: + $ref: "#/components/schemas/IntraRatEsActivationCandidateCellsLoadParameters" + intraRatEsDeactivationCandidateCellsLoadParameters: + $ref: "#/components/schemas/IntraRatEsDeactivationCandidateCellsLoadParameters" + esNotAllowedTimePeriod: + $ref: "#/components/schemas/EsNotAllowedTimePeriod" + interRatEsActivationOriginalCellParameters: + $ref: "#/components/schemas/IntraRatEsActivationOriginalCellLoadParameters" + interRatEsActivationCandidateCellParameters: + $ref: "#/components/schemas/IntraRatEsActivationOriginalCellLoadParameters" + interRatEsDeactivationCandidateCellParameters: + $ref: "#/components/schemas/IntraRatEsActivationOriginalCellLoadParameters" + energySavingControl: + type: string + enum: + - toBeEnergySaving + - toBeNotEnergySaving + energySavingState: + type: string + enum: + - isNotEnergySaving + - isEnergySaving + + RimRSGlobal-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + type: object + properties: + frequencyDomainPara: + $ref: '#/components/schemas/FrequencyDomainPara' + sequenceDomainPara: + $ref: '#/components/schemas/SequenceDomainPara' + timeDomainPara: + $ref: '#/components/schemas/TimeDomainPara' + RimRSSet: + $ref: '#/components/schemas/RimRSSet-Multiple' + + RimRSSet-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + type: object + properties: + setId: + $ref: '#/components/schemas/RSSetId' + setType: + $ref: '#/components/schemas/RSSetType' + rimRSMonitoringStartTime: + type: string + rimRSMonitoringStopTime: + type: string + rimRSMonitoringWindowDuration: + type: integer + rimRSMonitoringWindowStartingOffset: + type: integer + rimRSMonitoringWindowPeriodicity: + type: integer + rimRSMonitoringOccasionInterval: + type: integer + rimRSMonitoringOccasionStartingOffset: + type: integer + nRCellDURefs: + $ref: 'genericNrm.yaml#/components/schemas/DnList' + + ExternalGnbDuFunction-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' + - type: object + properties: + gnbId: + $ref: '#/components/schemas/GnbId' + gnbIdLength: + $ref: '#/components/schemas/GnbIdLength' + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' + - type: object + properties: + EP_F1C: + $ref: '#/components/schemas/EP_F1C-Multiple' + EP_F1U: + $ref: '#/components/schemas/EP_F1U-Multiple' + ExternalGnbCuUpFunction-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' + - type: object + properties: + gnbId: + $ref: '#/components/schemas/GnbId' + gnbIdLength: + $ref: '#/components/schemas/GnbIdLength' + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' + - type: object + properties: + EP_E1: + $ref: '#/components/schemas/EP_E1-Multiple' + EP_F1U: + $ref: '#/components/schemas/EP_F1U-Multiple' + EP_XnU: + $ref: '#/components/schemas/EP_XnU-Multiple' + ExternalGnbCuCpFunction-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + allOf: + - $ref: >- + genericNrm.yaml#/components/schemas/ManagedFunction-Attr + - type: object + properties: + gnbId: + $ref: '#/components/schemas/GnbId' + gnbIdLength: + $ref: '#/components/schemas/GnbIdLength' + plmnId: + $ref: '#/components/schemas/PlmnId' + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' + - type: object + properties: + ExternalNrCellCu: + $ref: '#/components/schemas/ExternalNrCellCu-Multiple' + EP_XnC: + $ref: '#/components/schemas/EP_XnC-Multiple' + EP_E1: + $ref: '#/components/schemas/EP_E1-Multiple' + EP_F1C: + $ref: '#/components/schemas/EP_F1C-Multiple' + ExternalNrCellCu-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' + - type: object + properties: + cellLocalId: + type: integer + nrPci: + $ref: '#/components/schemas/NrPci' + plmnIdList: + $ref: '#/components/schemas/PlmnIdList' + nRFrequencyRef: + $ref: 'genericNrm.yaml#/components/schemas/Dn' + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' + ExternalENBFunction-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' + - type: object + properties: + eNBId: + type: integer + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' + - type: object + properties: + ExternalEUTranCell: + $ref: '#/components/schemas/ExternalEUTranCell-Multiple' + ExternalEUTranCell-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' + - type: object + properties: + EUtranFrequencyRef: + $ref: 'genericNrm.yaml#/components/schemas/Dn' + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' + + EP_XnC-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' + - type: object + properties: + localAddress: + $ref: '#/components/schemas/LocalAddress' + remoteAddress: + $ref: '#/components/schemas/RemoteAddress' + EP_E1-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' + - type: object + properties: + localAddress: + $ref: '#/components/schemas/LocalAddress' + remoteAddress: + $ref: '#/components/schemas/RemoteAddress' + EP_F1C-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' + - type: object + properties: + localAddress: + $ref: '#/components/schemas/LocalAddress' + remoteAddress: + $ref: '#/components/schemas/RemoteAddress' + EP_NgC-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' + - type: object + properties: + localAddress: + $ref: '#/components/schemas/LocalAddress' + remoteAddress: + $ref: '#/components/schemas/RemoteAddress' + EP_X2C-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' + - type: object + properties: + localAddress: + $ref: '#/components/schemas/LocalAddress' + remoteAddress: + $ref: '#/components/schemas/RemoteAddress' + EP_XnU-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' + - type: object + properties: + localAddress: + $ref: '#/components/schemas/LocalAddress' + remoteAddress: + $ref: '#/components/schemas/RemoteAddress' + EP_F1U-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' + - type: object + properties: + localAddress: + $ref: '#/components/schemas/LocalAddress' + remoteAddress: + $ref: '#/components/schemas/RemoteAddress' + EP_NgU-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' + - type: object + properties: + localAddress: + $ref: '#/components/schemas/LocalAddress' + remoteAddress: + $ref: '#/components/schemas/RemoteAddress' + epTransportRefs: + $ref: 'genericNrm.yaml#/components/schemas/DnList' + + EP_X2U-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' + - type: object + properties: + localAddress: + $ref: '#/components/schemas/LocalAddress' + remoteAddress: + $ref: '#/components/schemas/RemoteAddress' + EP_S1U-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' + - type: object + properties: + localAddress: + $ref: '#/components/schemas/LocalAddress' + remoteAddress: + $ref: '#/components/schemas/RemoteAddress' + +#-------- Definition of JSON arrays for name-contained IOCs ---------------------- + + SubNetwork-Multiple: + type: array + items: + $ref: '#/components/schemas/SubNetwork-Single' + ManagedElement-Multiple: + type: array + items: + $ref: '#/components/schemas/ManagedElement-Single' + GnbDuFunction-Multiple: + type: array + items: + $ref: '#/components/schemas/GnbDuFunction-Single' + GnbCuUpFunction-Multiple: + type: array + items: + $ref: '#/components/schemas/GnbCuUpFunction-Single' + GnbCuCpFunction-Multiple: + type: array + items: + $ref: '#/components/schemas/GnbCuCpFunction-Single' + + NrCellDu-Multiple: + type: array + items: + $ref: '#/components/schemas/NrCellDu-Single' + NrCellCu-Multiple: + type: array + items: + $ref: '#/components/schemas/NrCellCu-Single' + + NRFrequency-Multiple: + type: array + minItems: 1 + items: + $ref: '#/components/schemas/NRFrequency-Single' + EUtranFrequency-Multiple: + type: array + minItems: 1 + items: + $ref: '#/components/schemas/EUtranFrequency-Single' + + NrSectorCarrier-Multiple: + type: array + items: + $ref: '#/components/schemas/NrSectorCarrier-Single' + Bwp-Multiple: + type: array + items: + $ref: '#/components/schemas/Bwp-Single' + Beam-Multiple: + type: array + items: + $ref: '#/components/schemas/Beam-Single' + RRMPolicyRatio-Multiple: + type: array + items: + $ref: '#/components/schemas/RRMPolicyRatio-Single' + + NRCellRelation-Multiple: + type: array + items: + $ref: '#/components/schemas/NRCellRelation-Single' + EUtranCellRelation-Multiple: + type: array + items: + $ref: '#/components/schemas/EUtranCellRelation-Single' + NRFreqRelation-Multiple: + type: array + items: + $ref: '#/components/schemas/NRFreqRelation-Single' + EUtranFreqRelation-Multiple: + type: array + items: + $ref: '#/components/schemas/EUtranFreqRelation-Single' + + RimRSSet-Multiple: + type: array + items: + $ref: '#/components/schemas/RimRSSet-Single' + + ExternalGnbDuFunction-Multiple: + type: array + items: + $ref: '#/components/schemas/ExternalGnbDuFunction-Single' + ExternalGnbCuUpFunction-Multiple: + type: array + items: + $ref: '#/components/schemas/ExternalGnbCuUpFunction-Single' + ExternalGnbCuCpFunction-Multiple: + type: array + items: + $ref: '#/components/schemas/ExternalGnbCuCpFunction-Single' + ExternalNrCellCu-Multiple: + type: array + items: + $ref: '#/components/schemas/ExternalNrCellCu-Single' + + ExternalENBFunction-Multiple: + type: array + items: + $ref: '#/components/schemas/ExternalENBFunction-Single' + ExternalEUTranCell-Multiple: + type: array + items: + $ref: '#/components/schemas/ExternalEUTranCell-Single' + + EP_E1-Multiple: + type: array + items: + $ref: '#/components/schemas/EP_E1-Single' + EP_XnC-Multiple: + type: array + items: + $ref: '#/components/schemas/EP_XnC-Single' + EP_F1C-Multiple: + type: array + items: + $ref: '#/components/schemas/EP_F1C-Single' + EP_NgC-Multiple: + type: array + items: + $ref: '#/components/schemas/EP_NgC-Single' + EP_X2C-Multiple: + type: array + items: + $ref: '#/components/schemas/EP_X2C-Single' + EP_XnU-Multiple: + type: array + items: + $ref: '#/components/schemas/EP_XnU-Single' + EP_F1U-Multiple: + type: array + items: + $ref: '#/components/schemas/EP_F1U-Single' + EP_NgU-Multiple: + type: array + items: + $ref: '#/components/schemas/EP_NgU-Single' + EP_X2U-Multiple: + type: array + items: + $ref: '#/components/schemas/EP_X2U-Single' + EP_S1U-Multiple: + type: array + items: + $ref: '#/components/schemas/EP_S1U-Single' + +#-------- Definitions in TS 28.541 for TS 28.532 --------------------------------- + + resources-nrNrm: + oneOf: + - $ref: '#/components/schemas/SubNetwork-Single' + - $ref: '#/components/schemas/ManagedElement-Single' + + - $ref: '#/components/schemas/GnbDuFunction-Single' + - $ref: '#/components/schemas/GnbCuUpFunction-Single' + - $ref: '#/components/schemas/GnbCuCpFunction-Single' + + - $ref: '#/components/schemas/NrCellCu-Single' + - $ref: '#/components/schemas/NrCellDu-Single' + + - $ref: '#/components/schemas/NRFrequency-Single' + - $ref: '#/components/schemas/EUtranFrequency-Single' + + - $ref: '#/components/schemas/NrSectorCarrier-Single' + - $ref: '#/components/schemas/Bwp-Single' + - $ref: '#/components/schemas/CommonBeamformingFunction-Single' + - $ref: '#/components/schemas/Beam-Single' + - $ref: '#/components/schemas/RRMPolicyRatio-Single' + + - $ref: '#/components/schemas/NRCellRelation-Single' + - $ref: '#/components/schemas/EUtranCellRelation-Single' + - $ref: '#/components/schemas/NRFreqRelation-Single' + - $ref: '#/components/schemas/EUtranFreqRelation-Single' + + - $ref: '#/components/schemas/DANRManagementFunction-Single' + - $ref: '#/components/schemas/DESManagementFunction-Single' + - $ref: '#/components/schemas/DRACHOptimizationFunction-Single' + - $ref: '#/components/schemas/DMROFunction-Single' + - $ref: '#/components/schemas/DPCIConfigurationFunction-Single' + - $ref: '#/components/schemas/CPCIConfigurationFunction-Single' + - $ref: '#/components/schemas/CESManagementFunction-Single' + + - $ref: '#/components/schemas/RimRSGlobal-Single' + - $ref: '#/components/schemas/RimRSSet-Single' + + - $ref: '#/components/schemas/ExternalGnbDuFunction-Single' + - $ref: '#/components/schemas/ExternalGnbCuUpFunction-Single' + - $ref: '#/components/schemas/ExternalGnbCuCpFunction-Single' + - $ref: '#/components/schemas/ExternalNrCellCu-Single' + - $ref: '#/components/schemas/ExternalENBFunction-Single' + - $ref: '#/components/schemas/ExternalEUTranCell-Single' + + - $ref: '#/components/schemas/EP_XnC-Single' + - $ref: '#/components/schemas/EP_E1-Single' + - $ref: '#/components/schemas/EP_F1C-Single' + - $ref: '#/components/schemas/EP_NgC-Single' + - $ref: '#/components/schemas/EP_X2C-Single' + - $ref: '#/components/schemas/EP_XnU-Single' + - $ref: '#/components/schemas/EP_F1U-Single' + - $ref: '#/components/schemas/EP_NgU-Single' + - $ref: '#/components/schemas/EP_X2U-Single' + - $ref: '#/components/schemas/EP_S1U-Single' diff --git a/OpenAPI/provMnS.yaml b/OpenAPI/provMnS.yaml new file mode 100644 index 000000000..b2f84a4d2 --- /dev/null +++ b/OpenAPI/provMnS.yaml @@ -0,0 +1,579 @@ +openapi: 3.0.1 +info: + title: Provisioning MnS + version: 16.4.0 + description: >- + OAS 3.0.1 definition of the Provisioning MnS + © 2020, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). + All rights reserved. +externalDocs: + description: 3GPP TS 28.532 V16.4.0; Generic management services + url: http://www.3gpp.org/ftp/Specs/archive/28_series/28.532/ +servers: + - url: 'http://{URI-DN-prefix}/{root}/ProvMnS/v1640/{LDN-first-part}' + variables: + URI-DN-prefix: + description: See subclause 4.4 of TS 32.158 + default: example.com + root: + description: See subclause 4.4 of TS 32.158 + default: 3GPPManagement + LDN-first-part: + description: See subclause 4.4 of TS 32.158 + default: '' +paths: + '/{className}={id}': + parameters: + - name: className + in: path + required: true + schema: + $ref: '#/components/schemas/className-PathType' + - name: id + in: path + required: true + schema: + $ref: '#/components/schemas/id-PathType' + put: + summary: Replaces a complete single resource or creates it if it does not exist + description: >- + With HTTP PUT a complete resource is replaced or created if it does not + exist. The target resource is identified by the target URI. + requestBody: + required: true + content: + application/json: + schema: + $ref: '#/components/schemas/resourcePut-RequestType' + responses: + '200': + description: >- + Success case ("200 OK"). + This status code shall be returned when the resource is replaced, and + when the replaced resource representation is not identical to the resource + representation in the request. + This status code may be retourned when the resource is updated and when the + updated resource representation is identical to the resource representation + in the request. + The representation of the updated resource is returned in the response + message body. + content: + application/json: + schema: + $ref: '#/components/schemas/resourceUpdate-ResponseType' + '201': + description: >- + Success case ("201 Created"). + This status code shall be returned when the resource is created. + The representation of the created resource is returned in the response + message body. + content: + application/json: + schema: + $ref: '#/components/schemas/resourceCreation-ResponseType' + '204': + description: >- + Success case ("204 No Content"). + This status code may be returned only when the replaced resource + representation is identical to the representation in the request. + The response has no message body. + default: + description: Error case. + content: + application/json: + schema: + $ref: '#/components/schemas/error-ResponseType' + callbacks: + notifyMOICreation: + '{request.body#/notificationRecipientAddress}': + post: + requestBody: + required: true + content: + application/json: + schema: + $ref: '#/components/schemas/notifyMOICreation-NotifType' + responses: + '204': + description: >- + Success case ("204 No Content"). + The notification is successfully delivered. The response + has no message body. + default: + description: Error case. + content: + application/json: + schema: + $ref: '#/components/schemas/error-ResponseType' + notifyMOIDeletion: + '{request.body#/notificationRecipientAddress}': + post: + requestBody: + required: true + content: + application/json: + schema: + $ref: '#/components/schemas/notifyMOIDeletion-NotifType' + responses: + '204': + description: >- + Success case ("204 No Content"). + The notification is successfully delivered. The response + has no message body. + default: + description: Error case. + content: + application/json: + schema: + $ref: '#/components/schemas/error-ResponseType' + notifyMOIAttributeValueChange: + '{request.body#/notificationRecipientAddress}': + post: + requestBody: + required: true + content: + application/json: + schema: + $ref: '#/components/schemas/notifyMOIAttributeValueChange-NotifType' + responses: + '204': + description: >- + Success case ("204 No Content"). + The notification is successfully delivered. The response + has no message body. + default: + description: Error case. + content: + application/json: + schema: + $ref: '#/components/schemas/error-ResponseType' + notifyMOIChanges: + '{request.body#/notificationRecipientAddress}': + post: + requestBody: + required: true + content: + application/json: + schema: + $ref: '#/components/schemas/notifyMOIChanges-NotifType' + responses: + '204': + description: >- + Success case ("204 No Content"). + The notification is successfully delivered. The response + has no message body. + default: + description: Error case. + content: + application/json: + schema: + $ref: '#/components/schemas/error-ResponseType' + get: + summary: Reads one or multiple resources + description: >- + With HTTP GET resources are read. The resources to be retrieved are + identified with the target URI. The attributes and fields parameter + of the query components allow to select the resource properties to be returned. + parameters: + - name: scope + in: query + description: >- + This parameter extends the set of targeted resources beyond the base + resource identified with the path component of the URI. No scoping + mechanism is specified in the present document. + required: false + schema: + $ref: '#/components/schemas/scope-QueryType' + style: form + explode: true + - name: filter + in: query + description: >- + This parameter reduces the targeted set of resources by applying a + filter to the scoped set of resource representations. Only resource + representations for which the filter construct evaluates to "true" + are targeted. No filter language is specified in the present + document. + required: false + schema: + $ref: '#/components/schemas/filter-QueryType' + - name: attributes + in: query + description: >- + This parameter specifies the attributes of the scoped resources that + are returned. + required: true + schema: + $ref: '#/components/schemas/attributes-QueryType' + style: form + explode: false + - name: fields + in: query + description: >- + This parameter specifies the attribute field of the scoped resources + that are returned. + required: false + schema: + $ref: '#/components/schemas/fields-QueryType' + style: form + explode: false + responses: + '200': + description: >- + Success case ("200 OK"). + The resources identified in the request for retrieval are returned + in the response message body. In case the attributes or fields query + parameters are used, only the selected attributes or sub-attributes are + returned. The response message body is constructed according to the + hierarchical response construction method (TS 32.158 [15]). + content: + application/json: + schema: + $ref: '#/components/schemas/resourceRetrieval-ResponseType' + default: + description: Error case. + content: + application/json: + schema: + $ref: '#/components/schemas/error-ResponseType' + patch: + summary: Patches one or multiple resources + description: >- + With HTTP PATCH resources are created, updated or deleted. The resources + to be modified are identified with the target URI (base resource) and + the patch document included in the request message body. + requestBody: + description: >- + The request body describes changes to be made to the target resources. + The following patch media types are available + - "application/merge-patch+json" (RFC 7396) + - "application/3gpp-merge-patch+json" (TS 32.158) + - "application/json-patch+json" (RFC 6902) + - "application/3gpp-json-patch+json" (TS 32.158) + required: true + content: + application/merge-patch+json: + schema: + $ref: '#/components/schemas/jsonMergePatch-RequestType' + application/3gpp-merge-patch+json: + schema: + $ref: '#/components/schemas/3gppJsonMergePatch-RequestType' + application/json-patch+json: + schema: + $ref: '#/components/schemas/jsonPatch-RequestType' + application/3gpp-json-patch+json: + schema: + $ref: '#/components/schemas/3gppJsonPatch-RequestType' + responses: + '200': + description: >- + Success case ("200 OK"). + This status code is returned when the updated the resource representations + shall be returned for some reason. + The resource representations are returned in the response message body. The + response message body is constructed according to the hierarchical response + construction method (TS 32.158 [15]) + content: + application/json: + schema: + $ref: '#/components/schemas/resourceUpdate-ResponseType' + '204': + description: >- + Success case ("204 No Content"). + This status code is returned when there is no need to return the updated + resource representations. + The response message body is empty. + default: + description: Error case. + content: + application/json: + schema: + $ref: '#/components/schemas/error-ResponseType' + delete: + summary: Deletes one or multiple resources + description: >- + With HTTP DELETE resources are deleted. The resources to be deleted are + identified with the target URI. + parameters: + - name: scope + in: query + description: >- + This parameter extends the set of targeted resources beyond the base + resource identified with the path component of the URI. No scoping + mechanism is specified in the present document. + required: false + schema: + $ref: '#/components/schemas/scope-QueryType' + - name: filter + in: query + description: >- + This parameter reduces the targeted set of resources by applying a + filter to the scoped set of resource representations. Only resources + representations for which the filter construct evaluates to "true" + are returned. No filter language is specified in the present + document. + required: false + schema: + $ref: '#/components/schemas/filter-QueryType' + responses: + '200': + description: >- + Success case ("200 OK"). + This status code shall be returned, when query parameters are present in + the request and one or multiple resources are deleted. + The URIs of the deleted resources are returned in the response message body. + '204': + description: >- + Success case ("204 No Content"). + This status code shall be returned, when no query parameters are present in + the request and only one resource is deleted. + The message body is empty. + content: + application/json: + schema: + $ref: '#/components/schemas/resourceDeletion-ResponseType' + default: + description: Error case. + content: + application/json: + schema: + $ref: '#/components/schemas/error-ResponseType' +components: + schemas: + dateTime-Type: + type: string + format: date-time + long-Type: + type: integer + format: int64 + uri-Type: + type: string + correlatedNotification-Type: + type: object + properties: + source: + $ref: '#/components/schemas/uri-Type' + notificationIds: + type: array + items: + $ref: '#/components/schemas/notificationId-Type' + notificationId-Type: + $ref: '#/components/schemas/long-Type' + notificationType-Type: + type: string + enum: + - notifyMOICreation + - notifyMOIDeletion + - notifyMOIAttributeValueChange + systemDN-Type: + type: string + additionalText-Type: + type: string + sourceIndicator-Type: + type: string + enum: + - resourceOperation + - mangementOperation + - sONOperation + - unknown + header-Type: + type: object + properties: + href: + $ref: '#/components/schemas/uri-Type' + notificationId: + $ref: '#/components/schemas/notificationId-Type' + notificationType: + $ref: '#/components/schemas/notificationType-Type' + eventTime: + $ref: '#/components/schemas/dateTime-Type' + systemDN: + $ref: '#/components/schemas/systemDN-Type' + required: + - href + - notificationId + - notificationType + - eventTime + - systemDN + scopeType-Type: + type: string + enum: + - BASE_ONLY + - BASE_NTH_LEVEL + - BASE_SUBTREE + - BASE_ALL + scopeLevel-Type: + type: integer + className-PathType: + type: string + id-PathType: + type: string + attributes-QueryType: + type: array + items: + type: string + fields-QueryType: + type: array + items: + type: string + filter-QueryType: + type: string + scope-QueryType: + type: object + properties: + scopeType: + $ref: '#/components/schemas/scopeType-Type' + scopeLevel: + $ref: '#/components/schemas/scopeLevel-Type' + + resourcePut-RequestType: + $ref: '#/components/schemas/resourceRepresentation-Type' + jsonMergePatch-RequestType: + $ref: '#/components/schemas/resourceRepresentation-Type' + 3gppJsonMergePatch-RequestType: + $ref: '#/components/schemas/resourceRepresentation-Type' + jsonPatch-RequestType: + type: array + items: + type: object + 3gppJsonPatch-RequestType: + type: array + items: + type: object + + error-ResponseType: + type: object + properties: + error: + type: object + properties: + errorInfo: + type: string + resourceRetrieval-ResponseType: + $ref: '#/components/schemas/resourceRepresentation-Type' + resourceCreation-ResponseType: + $ref: '#/components/schemas/resourceRepresentation-Type' + resourceUpdate-ResponseType: + $ref: '#/components/schemas/resourceRepresentation-Type' + resourceDeletion-ResponseType: + type: array + items: + $ref: '#/components/schemas/uri-Type' + + resourceRepresentation-Type: + oneOf: + - type: object + properties: + id: + type: string + attributes: + type: object + additionalProperties: + type: array + items: + type: object + - anyOf: + - $ref: 'genericNrm.yaml#/components/schemas/resources-genericNrm' + - $ref: 'nrNrm.yaml#/components/schemas/resources-nrNrm' + - $ref: '5gcNrm.yaml#/components/schemas/resources-5gcNrm' + - $ref: 'sliceNrm.yaml#/components/schemas/resources-sliceNrm' + + mOIChange-Type: + type: object + properties: + notificationId: + $ref: '#/components/schemas/notificationId-Type' + correlatedNotifications: + type: array + items: + $ref: '#/components/schemas/correlatedNotification-Type' + additionalText: + $ref: '#/components/schemas/additionalText-Type' + sourceIndicator: + $ref: '#/components/schemas/sourceIndicator-Type' + path: + $ref: '#/components/schemas/uri-Type' + operation: + type: string + enum: + - CREATE + - DELETE + - REPLACE + value: + oneOf: + - type: object + additionalProperties: + nullable: true + - type: array + items: + type: object + minItems: 1 + maxItems: 2 + + notifyMOICreation-NotifType: + allOf: + - $ref: '#/components/schemas/header-Type' + - type: object + properties: + correlatedNotifications: + type: array + items: + $ref: '#/components/schemas/correlatedNotification-Type' + additionalText: + $ref: '#/components/schemas/additionalText-Type' + sourceIndicator: + $ref: '#/components/schemas/sourceIndicator-Type' + attributeList: + type: object + additionalProperties: + nullable: true + notifyMOIDeletion-NotifType: + allOf: + - $ref: '#/components/schemas/header-Type' + - type: object + properties: + correlatedNotifications: + type: array + items: + $ref: '#/components/schemas/correlatedNotification-Type' + additionalText: + $ref: '#/components/schemas/additionalText-Type' + sourceIndicator: + $ref: '#/components/schemas/sourceIndicator-Type' + attributeList: + type: object + additionalProperties: true + notifyMOIAttributeValueChange-NotifType: + allOf: + - $ref: '#/components/schemas/header-Type' + - type: object + properties: + correlatedNotifications: + type: array + items: + $ref: '#/components/schemas/correlatedNotification-Type' + additionalText: + $ref: '#/components/schemas/additionalText-Type' + sourceIndicator: + $ref: '#/components/schemas/sourceIndicator-Type' + attributeValueChange: + type: object + additionalProperties: + type: array + minItems: 1 + maxItems: 2 + items: + nullable: true + required: + - attributeValueChange + notifyMOIChanges-NotifType: + allOf: + - $ref: '#/components/schemas/header-Type' + - type: object + properties: + mOIChanges: + type: array + items: + $ref: '#/components/schemas/mOIChange-Type' + required: + - mOIChanges diff --git a/OpenAPI/sliceNrm.yaml b/OpenAPI/sliceNrm.yaml new file mode 100644 index 000000000..6e12a4d8b --- /dev/null +++ b/OpenAPI/sliceNrm.yaml @@ -0,0 +1,589 @@ +openapi: 3.0.1 +info: + title: Slice NRM + version: 17.3.0 + description: >- + OAS 3.0.1 specification of the Slice NRM + @ 2020, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). + All rights reserved. +externalDocs: + description: 3GPP TS 28.541; 5G NRM, Slice NRM + url: http://www.3gpp.org/ftp/Specs/archive/28_series/28.541/ +paths: {} +components: + schemas: + +#------------ Type definitions --------------------------------------------------- + + Float: + type: number + format: float + MobilityLevel: + type: string + enum: + - STATIONARY + - NOMADIC + - RESTRICTED MOBILITY + - FULLY MOBILITY + SynAvailability: + type: string + enum: + - NOT SUPPORTED + - BETWEEN BS AND UE + - BETWEEN BS AND UE & UE AND UE + PositioningAvailability: + type: array + items: + type: string + enum: + - CIDE-CID + - OTDOA + - RF FINGERPRINTING + - AECID + - HYBRID POSITIONING + - NET-RTK + Predictionfrequency: + type: string + enum: + - PERSEC + - PERMIN + - PERHOUR + SharingLevel: + type: string + enum: + - SHARED + - NON-SHARED + + NetworkSliceSharingIndicator: + type: string + enum: + - SHARED + - NON-SHARED + + ServiceType: + type: string + enum: + - eMBB + - RLLC + - MIoT + - V2X + SliceSimultaneousUse: + type: string + enum: + - ZERO + - ONE + - TWO + - THREE + - FOUR + Category: + type: string + enum: + - CHARACTER + - SCALABILITY + Tagging: + type: array + items: + type: string + enum: + - PERFORMANCE + - FUNCTION + - OPERATION + Exposure: + type: string + enum: + - API + - KPI + ServAttrCom: + type: object + properties: + category: + $ref: '#/components/schemas/Category' + tagging: + $ref: '#/components/schemas/Tagging' + exposure: + $ref: '#/components/schemas/Exposure' + Support: + type: string + enum: + - NOT SUPPORTED + - SUPPORTED + DelayTolerance: + type: object + properties: + servAttrCom: + $ref: '#/components/schemas/ServAttrCom' + support: + $ref: '#/components/schemas/Support' + DeterministicComm: + type: object + properties: + servAttrCom: + $ref: '#/components/schemas/ServAttrCom' + availability: + $ref: '#/components/schemas/Support' + periodicityList: + type: string + XLThpt: + type: object + properties: + servAttrCom: + $ref: '#/components/schemas/ServAttrCom' + guaThpt: + $ref: '#/components/schemas/Float' + maxThpt: + $ref: '#/components/schemas/Float' + MaxPktSize: + type: object + properties: + servAttrCom: + $ref: '#/components/schemas/ServAttrCom' + maxsize: + type: integer + MaxNumberofPDUSessions: + type: object + properties: + servAttrCom: + $ref: '#/components/schemas/ServAttrCom' + nOofPDUSessions: + type: integer + KPIMonitoring: + type: object + properties: + servAttrCom: + $ref: '#/components/schemas/ServAttrCom' + kPIList: + type: string + NBIoT: + type: object + properties: + servAttrCom: + $ref: '#/components/schemas/ServAttrCom' + support: + $ref: '#/components/schemas/Support' + Synchronicity: + type: object + properties: + servAttrCom: + $ref: '#/components/schemas/ServAttrCom' + availability: + $ref: '#/components/schemas/SynAvailability' + accuracy: + $ref: '#/components/schemas/Float' + SynchronicityRANSubnet: + type: object + properties: + availability: + $ref: '#/components/schemas/SynAvailability' + accuracy: + $ref: '#/components/schemas/Float' + Positioning: + type: object + properties: + servAttrCom: + $ref: '#/components/schemas/ServAttrCom' + availability: + $ref: '#/components/schemas/PositioningAvailability' + predictionfrequency: + $ref: '#/components/schemas/Predictionfrequency' + accuracy: + $ref: '#/components/schemas/Float' + PositioningRANSubnet: + type: object + properties: + availability: + $ref: '#/components/schemas/PositioningAvailability' + predictionfrequency: + $ref: '#/components/schemas/Predictionfrequency' + accuracy: + $ref: '#/components/schemas/Float' + UserMgmtOpen: + type: object + properties: + servAttrCom: + $ref: '#/components/schemas/ServAttrCom' + support: + $ref: '#/components/schemas/Support' + V2XCommModels: + type: object + properties: + servAttrCom: + $ref: '#/components/schemas/ServAttrCom' + v2XMode: + $ref: '#/components/schemas/Support' + TermDensity: + type: object + properties: + servAttrCom: + $ref: '#/components/schemas/ServAttrCom' + density: + type: integer + NsInfo: + type: object + properties: + nsInstanceId: + type: string + nsName: + type: string + EmbbEEPerfReq: + type: integer + UrllcEEPerfReq: + type: integer + MIoTEEPerfReq: + type: object + properties: + KpiType: + type: string + enum: + - MAXREGSUBS + - MEANACTIVEUES + Req: + type: integer + EEPerfReq: + oneOf: + - $ref: '#/components/schemas/EmbbEEPerfReq' + - $ref: '#/components/schemas/UrllcEEPerfReq' + - $ref: '#/components/schemas/MIoTEEPerfReq' + EnergyEfficiency: + type: object + properties: + servAttrCom: + $ref: '#/components/schemas/ServAttrCom' + performance: + $ref: '#/components/schemas/EEPerfReq' + CNSliceSubnetProfile: + type: object + properties: + maxNumberofUEs: + type: integer + latency: + type: integer + dLThptPerSliceSubnet: + $ref: '#/components/schemas/XLThpt' + dLThptPerUE: + $ref: '#/components/schemas/XLThpt' + uLThptPerSliceSubnet: + $ref: '#/components/schemas/XLThpt' + uLThptPerUE: + $ref: '#/components/schemas/XLThpt' + maxNumberOfPDUSessions: + type: integer + coverageAreaTAList: + type: integer + resourceSharingLevel: + $ref: '#/components/schemas/SharingLevel' + maxPktSize: + type: integer + delayTolerance: + $ref: '#/components/schemas/DelayTolerance' + synchronicity: + $ref: '#/components/schemas/SynchronicityRANSubnet' + sliceSimultaneousUse: + $ref: '#/components/schemas/SliceSimultaneousUse' + reliability: + type: string + energyEfficiency: + type: integer + deterministicComm: + $ref: '#/components/schemas/DeterministicComm' + RANSliceSubnetProfile: + type: object + properties: + coverageAreaTAList: + type: integer + uEMobilityLevel: + $ref: '#/components/schemas/MobilityLevel' + resourceSharingLevel: + $ref: '#/components/schemas/SharingLevel' + maxNumberofUEs: + type: integer + activityFactor: + type: integer + dLThptPerUE: + $ref: '#/components/schemas/XLThpt' + uLThptPerUE: + $ref: '#/components/schemas/XLThpt' + uESpeed: + type: integer + reliability: + type: string + serviceType: + $ref: '#/components/schemas/ServiceType' + maxPktSize: + type: integer + delayTolerance: + $ref: '#/components/schemas/DelayTolerance' + positioning: + $ref: '#/components/schemas/PositioningRANSubnet' + sliceSimultaneousUse: + $ref: '#/components/schemas/SliceSimultaneousUse' + energyEfficiency: + type: integer + termDensity: + $ref: '#/components/schemas/TermDensity' + survivalTime: + type: string + synchronicity: + $ref: '#/components/schemas/SynchronicityRANSubnet' + deterministicComm: + $ref: '#/components/schemas/DeterministicComm' + TopSliceSubnetProfile: + type: object + properties: + coverageArea: + type: string + latency: + type: integer + maxNumberofUEs: + type: integer + dLThptPerSliceSubnet: + $ref: '#/components/schemas/XLThpt' + dLThptPerUE: + $ref: '#/components/schemas/XLThpt' + uLThptPerSliceSubnet: + $ref: '#/components/schemas/XLThpt' + uLThptPerUE: + $ref: '#/components/schemas/XLThpt' + maxPktSize: + type: integer + maxNumberOfPDUSessions: + type: integer + sliceSimultaneousUse: + $ref: '#/components/schemas/SliceSimultaneousUse' + energyEfficiency: + type: integer + synchronicity: + $ref: '#/components/schemas/Synchronicity' + delayTolerance: + $ref: '#/components/schemas/DelayTolerance' + positioning: + $ref: '#/components/schemas/Positioning' + termDensity: + $ref: '#/components/schemas/TermDensity' + activityFactor: + type: integer + coverageAreaTAList: + type: integer + resourceSharingLevel: + $ref: '#/components/schemas/SharingLevel' + uEMobilityLevel: + $ref: '#/components/schemas/MobilityLevel' + uESpeed: + type: integer + reliability: + type: string + serviceType: + $ref: '#/components/schemas/ServiceType' + deterministicComm: + $ref: '#/components/schemas/DeterministicComm' + survivalTime: + type: string + + ServiceProfile: + type: object + properties: + serviceProfileId: + type: string + plmnInfoList: + $ref: 'nrNrm.yaml#/components/schemas/PlmnInfoList' + maxNumberofUEs: + type: number + latency: + type: number + uEMobilityLevel: + $ref: '#/components/schemas/MobilityLevel' + sst: + $ref: 'nrNrm.yaml#/components/schemas/Sst' + networkSliceSharingIndicator: + $ref: '#/components/schemas/NetworkSliceSharingIndicator' + availability: + type: number + delayTolerance: + $ref: '#/components/schemas/DelayTolerance' + deterministicComm: + $ref: '#/components/schemas/DeterministicComm' + dLThptPerSlice: + $ref: '#/components/schemas/XLThpt' + dLThptPerUE: + $ref: '#/components/schemas/XLThpt' + uLThptPerSlice: + $ref: '#/components/schemas/XLThpt' + uLThptPerUE: + $ref: '#/components/schemas/XLThpt' + maxPktSize: + $ref: '#/components/schemas/MaxPktSize' + maxNumberofPDUSessions: + $ref: '#/components/schemas/MaxNumberofPDUSessions' + kPIMonitoring: + $ref: '#/components/schemas/KPIMonitoring' + nBIoT: + $ref: '#/components/schemas/NBIoT' + synchronicity: + $ref: '#/components/schemas/Synchronicity' + positioning: + $ref: '#/components/schemas/Positioning' + userMgmtOpen: + $ref: '#/components/schemas/UserMgmtOpen' + v2XModels: + $ref: '#/components/schemas/V2XCommModels' + coverageArea: + type: string + termDensity: + $ref: '#/components/schemas/TermDensity' + activityFactor: + $ref: '#/components/schemas/Float' + uESpeed: + type: integer + jitter: + type: integer + survivalTime: + type: string + reliability: + type: string + maxDLDataVolume: + type: string + maxULDataVolume: + type: string + sliceSimultaneousUse: + $ref: '#/components/schemas/SliceSimultaneousUse' + energyEfficiency: + $ref: '#/components/schemas/EnergyEfficiency' + SliceProfile: + type: object + properties: + serviceProfileId: + type: string + plmnInfoList: + $ref: 'nrNrm.yaml#/components/schemas/PlmnInfoList' + cNSliceSubnetProfile: + $ref: '#/components/schemas/CNSliceSubnetProfile' + rANSliceSubnetProfile: + $ref: '#/components/schemas/RANSliceSubnetProfile' + topSliceSubnetProfile: + $ref: '#/components/schemas/TopSliceSubnetProfile' + + IpAddress: + oneOf: + - $ref: 'genericNrm.yaml#/components/schemas/Ipv4Addr' + - $ref: 'genericNrm.yaml#/components/schemas/Ipv6Addr' + + ServiceProfileList: + type: array + items: + $ref: '#/components/schemas/ServiceProfile' + + SliceProfileList: + type: array + items: + $ref: '#/components/schemas/SliceProfile' + +#------------ Definition of concrete IOCs ---------------------------------------- + SubNetwork-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/SubNetwork-Attr' + - $ref: 'genericNrm.yaml#/components/schemas/SubNetwork-ncO' + - type: object + properties: + SubNetwork: + $ref: '#/components/schemas/SubNetwork-Multiple' + NetworkSlice: + $ref: '#/components/schemas/NetworkSlice-Multiple' + NetworkSliceSubnet: + $ref: '#/components/schemas/NetworkSliceSubnet-Multiple' + EP_Transport: + $ref: '#/components/schemas/EP_Transport-Multiple' + + NetworkSlice-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + allOf: + - type: object + properties: + networkSliceSubnetRef: + $ref: 'genericNrm.yaml#/components/schemas/Dn' + operationalState: + $ref: 'genericNrm.yaml#/components/schemas/OperationalState' + administrativeState: + $ref: 'genericNrm.yaml#/components/schemas/AdministrativeState' + serviceProfileList: + $ref: '#/components/schemas/ServiceProfileList' + + NetworkSliceSubnet-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + allOf: + - type: object + properties: + managedFunctionRefList: + $ref: 'genericNrm.yaml#/components/schemas/DnList' + networkSliceSubnetRefList: + $ref: 'genericNrm.yaml#/components/schemas/DnList' + operationalState: + $ref: 'genericNrm.yaml#/components/schemas/OperationalState' + administrativeState: + $ref: 'genericNrm.yaml#/components/schemas/AdministrativeState' + nsInfo: + $ref: '#/components/schemas/NsInfo' + sliceProfileList: + $ref: '#/components/schemas/SliceProfileList' + epTransportRefList: + $ref: 'genericNrm.yaml#/components/schemas/DnList' + + EP_Transport-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + type: object + properties: + ipAddress: + $ref: '#/components/schemas/IpAddress' + logicInterfaceId: + type: string + nextHopInfo: + type: string + qosProfile: + type: string + epApplicationRefs: + $ref: 'genericNrm.yaml#/components/schemas/DnList' + +#-------- Definition of JSON arrays for name-contained IOCs ---------------------- + SubNetwork-Multiple: + type: array + items: + $ref: '#/components/schemas/SubNetwork-Single' + + NetworkSlice-Multiple: + type: array + items: + $ref: '#/components/schemas/NetworkSlice-Single' + + NetworkSliceSubnet-Multiple: + type: array + items: + $ref: '#/components/schemas/NetworkSliceSubnet-Single' + + EP_Transport-Multiple: + type: array + items: + $ref: '#/components/schemas/EP_Transport-Single' + +#------------ Definitions in TS 28.541 for TS 28.532 ----------------------------- + + resources-sliceNrm: + oneOf: + - $ref: '#/components/schemas/SubNetwork-Single' + - $ref: '#/components/schemas/NetworkSlice-Single' + - $ref: '#/components/schemas/NetworkSliceSubnet-Single' + - $ref: '#/components/schemas/EP_Transport-Single' diff --git a/OpenAPI/streamingDataMnS.yaml b/OpenAPI/streamingDataMnS.yaml new file mode 100644 index 000000000..ab7f71d4a --- /dev/null +++ b/OpenAPI/streamingDataMnS.yaml @@ -0,0 +1,453 @@ +openapi: 3.0.1 +info: + title: TS 28.532 Streaming data reporting service + version: 16.4.0 + description: OAS 3.0.1 specification for the Streaming data reporting service (Streaming MnS) +servers: + - url: '{protocol}://{root}/StreamingDataReportingMnS/{version}' + variables: + protocol: + description: Protocol used + enum: + - http + - https + - wss + default: https + root: + description: Indicates the host name and optional port, and an optional sequence of path segments that together represent a prefix path. + default: example.com + version: + description: Indicates the current version of the specification + default: 16.4.0 +paths: + '/connections': + post: + summary: Inform consumer about reporting streams to be carried by the new connection and receive a new connection id. + description: Exchange of meta-data (producer informs consumer about its own identity and the nature of the data to be reported via streaming) phase of the connection establishement by streaming data reporting producer to the streaming data reporting consumer (i.e. streaming target). + requestBody: + required: true + content: + application/json: + schema: + $ref: '#/components/schemas/connectionRequest-Type' + responses: + '201': + description: Success case (201 Created). + headers: + Location: + description: Location of the created connection resource. + schema: + $ref: '#/components/schemas/connectionId-Type' + default: + description: Error case. + content: + application/json: + schema: + $ref: '#/components/schemas/failedConnectionResponse-Type' + get: + summary: Obtain information about connections. + description: Enables the streaming data reporting service producer to obtain information about one or more streaming connections. + parameters: + - name: connectionIdList + in: query + description: The list of connectionId for which the connection information is to be returned. + required: false + schema: + type: array + items: + $ref: '#/components/schemas/connectionId-Type' + responses: + '200': + description: Success case (200 OK). The resources identified in the request for retrieval are returned in the response message body. In case the fields query parameter is used, the selected resources are returned. + content: + application/json: + schema: + type: array + items: + $ref: '#/components/schemas/connectionInfo-Type' + '202': + description: Partial success case (202 Partially retrieved). Subset of the resources identified in the request for retrieval are returned in the response message body. + content: + application/json: + schema: + type: array + items: + $ref: '#/components/schemas/connectionInfo-Type' + default: + description: Error case. + content: + application/json: + schema: + $ref: '#/components/schemas/errorResponse-Type' + '/connections/{connectionId}': + get: + summary: Obtain information about a connection. + description: Enables the streaming data reporting service producer to obtain information about one streaming connection. + parameters: + - name: connectionId + in: path + description: Indicate the ID (URI) of the connection for which the information is being retrieved + required: true + schema: + $ref: '#/components/schemas/connectionId-Type' + - name: Connection + in: header + schema: + $ref: '#/components/schemas/websocketHeaderConnection-Type' + - name: Sec-WebSocket-Extensions + in: header + schema: + $ref: '#/components/schemas/websocketHeader-Sec-WebSocket-Extensions-Type' + - name: Sec-WebSocket-Key + in: header + schema: + $ref: '#/components/schemas/websocketHeader-Sec-WebSocket-Key-Type' + - name: Sec-WebSocket-Protocol + in: header + schema: + $ref: '#/components/schemas/websocketHeader-Sec-WebSocket-Protocol-Type' + - name: Sec-WebSocket-Version + in: header + schema: + $ref: '#/components/schemas/websocketHeader-Sec-WebSocket-Version-Type' + responses: + '101': + description: Success case (101 Switching Protocols). The connection has been successfully switched to WebSocket. The response message body is absent. + headers: + Upgrade: + schema: + $ref: '#/components/schemas/websocketHeaderUpgrade-Type' + Connection: + schema: + $ref: '#/components/schemas/websocketHeaderConnection-Type' + Sec-WebSocket-Accept: + schema: + $ref: '#/components/schemas/websocketHeader-Sec-WebSocket-Accept-Type' + '200': + description: Success case (200 OK). The resource identified in the request for retrieval returned in the response message body. + content: + application/json: + schema: + $ref: '#/components/schemas/connectionInfo-Type' + default: + description: Error case. + content: + application/json: + schema: + $ref: '#/components/schemas/errorResponse-Type' + '/connections/{connectionId}/streams': + post: + summary: Inform consumer about new reporting streams on an existing connection. + description: Allows the producer to add one or more reporting streams to an already established streaming connection. + parameters: + - name: connectionId + in: path + description: Indicate the ID (URI) of the connection for which the reporting stream information is being added. + required: true + schema: + $ref: '#/components/schemas/connectionId-Type' + requestBody: + required: true + content: + application/json: + schema: + type: array + items: + $ref: '#/components/schemas/streamInfo-Type' + responses: + '201': + description: Success case (201 Posted). + content: + application/json: + schema: + type: array + items: + $ref: '#/components/schemas/streamInfo-Type' + '202': + description: Partial success case (202 Posted). + content: + application/json: + schema: + type: array + items: + $ref: '#/components/schemas/streamInfo-Type' + default: + description: Error case. + content: + application/json: + schema: + $ref: '#/components/schemas/errorResponse-Type' + delete: + summary: Remove reporting streams from an existing connection + description: Allows the producer to remove one or more reporting streams from an already established streaming connection. + parameters: + - name: connectionId + in: path + description: Indicate the ID (URI) of the connection for which the reporting stream information is being removed. + required: true + schema: + $ref: '#/components/schemas/connectionId-Type' + - name: streamIds + in: query + description: The list of streamId for the stream(s) to be deleted. + required: true + schema: + type: array + items: + $ref: '#/components/schemas/streamId-Type' + responses: + '204': + description: Success case (204 No Content). The stream information resource has been deleted. The response message body is absent. + default: + description: Error case. + content: + application/json: + schema: + $ref: '#/components/schemas/errorResponse-Type' + get: + summary: Obtain information about streams. + description: Enables the streaming data reporting service producer to obtain information about one or more reporting streams. + parameters: + - name: connectionId + in: path + description: Indicate the ID (URI) of the connection for which the information is being retrieved + required: true + schema: + $ref: '#/components/schemas/connectionId-Type' + - name: streamIds + in: query + description: The list of streamId for which the stream information is to be retrieved. + required: true + schema: + type: array + items: + $ref: '#/components/schemas/streamId-Type' + responses: + '200': + description: Success case (200 OK). + content: + application/json: + schema: + type: array + items: + $ref: '#/components/schemas/streamInfoWithReporters-Type' + '202': + description: Partial success case (202 Partially retrieved). + content: + application/json: + schema: + type: array + items: + $ref: '#/components/schemas/streamInfoWithReporters-Type' + default: + description: Error case. + content: + application/json: + schema: + $ref: '#/components/schemas/errorResponse-Type' + '/connections/{connectionId}/streams/{streamId}': + get: + summary: Obtain information about stream + description: Enables the streaming data reporting service producer to obtain information about a reporting stream. + parameters: + - name: connectionId + in: path + description: Indicate the ID (URI) of the connection for which the information is being retrieved + required: true + schema: + $ref: '#/components/schemas/connectionId-Type' + - name: streamId + in: path + description: Indicate the ID of the reporting stream for which the information is being retrieved + required: true + schema: + $ref: '#/components/schemas/streamId-Type' + responses: + '200': + description: Success case (200 OK). + content: + application/json: + schema: + $ref: '#/components/schemas/streamInfoWithReporters-Type' + default: + description: Error case. + content: + application/json: + schema: + $ref: '#/components/schemas/errorResponse-Type' +components: + schemas: + analyticsInfo-Type: + description: Information specific to analytics reporting. + type: object + properties: + activityDetails: + type: string + connectionId-Type: + $ref: '#/components/schemas/uri-Type' + connectionInfo-Type: + type: object + properties: + connection: + $ref: '#/components/schemas/connectionId-Type' + producer: + $ref: '#/components/schemas/producerId-Type' + streams: + type: array + items: + $ref: '#/components/schemas/streamId-Type' + connectionRequest-Type: + type: object + properties: + producer: + $ref: '#/components/schemas/producerId-Type' + streams: + type: array + items: + $ref: '#/components/schemas/streamInfo-Type' + errorResponse-Type: + type: object + properties: + error: + type: object + properties: + errorInfo: + type: string + failedConnectionResponse-Type: + type: object + properties: + error: + type: array + items: + type: object + properties: + streamId: + $ref: '#/components/schemas/streamId-Type' + errorReason: + type: string + measObjDn-Type: + description: DN of the measured object instance (see 3GPP TS 28.550) + allOf: + - $ref: '#/components/schemas/systemDN-Type' + measTypes-Type: + description: an ordered list of measurement type or KPI whose measurement values or KPI result values are to be reported by the Performance Data Stream Units (see Annex C of TS 28.550) via this stream + type: array + items: + type: string + performanceInfo-Type: + description: Information specific to performance data reporting + type: object + properties: + measObjDn: + $ref: '#/components/schemas/measObjDn-Type' + measTypes: + $ref: '#/components/schemas/measTypes-Type' + measurementReaderId: + $ref: '#/components/schemas/systemDN-Type' + jobId: + type: string + required: + - measObjDn + - measTypes + producerId-Type: + description: DN of the streaming data reporting MnS producer. + allOf: + - $ref: '#/components/schemas/systemDN-Type' + serializationFormat-Type: + type: string + enum: + - GPB + - ASN1 + streamId-Type: + description: globally unique stream identifier + type: string + example: '26F452550021' + streamInfo-Type: + description: Reporting stream meta-data. + type: object + properties: + streamType: + $ref: '#/components/schemas/streamType-Type' + serializationFormat: + $ref: '#/components/schemas/serializationFormat-Type' + streamId: + oneOf: + - $ref: '#/components/schemas/streamId-Type' + - $ref: '#/components/schemas/traceReference-Type' + additionalInfo: + oneOf: + - $ref: '#/components/schemas/traceInfo-Type' + - $ref: '#/components/schemas/performanceInfo-Type' + - $ref: '#/components/schemas/analyticsInfo-Type' + - $ref: '#/components/schemas/vsDataContainer-Type' + required: + - streamType + - serializationFormat + - streamId + streamInfoWithReporters-Type: + description: Reporting stream meta-data with added information about reporters. + type: object + properties: + streamInfo: + $ref: '#/components/schemas/streamInfo-Type' + reporters: + type: array + items: + $ref: '#/components/schemas/producerId-Type' + systemDN-Type: + description: See 3GPP TS 32.300 for details + type: string + example: 'SubNetwork=ABCNetwork,SubNetwork=MUC01,GNBDUFunction=XYZ0100' + streamType-Type: + type: string + enum: + - TRACE + - PERFORMANCE + - ANALYTICS + - PROPRIETARY + traceInfo-Type: + description: Information specific to trace data reporting + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/TraceJob-Attr' + traceReference-Type: + description: Trace Reference (see clause 5.6 of 3GPP TS 32.422) as stream identifier for streaming trace data reporting + type: string + example: '4358070034D7' + uri-Type: + description: Resource URI + type: string + vsDataContainer-Type: + description: container for vendor specific data (see 3GPP TS 28.622) + type: object + properties: + vsDataType: + type: string + vsData: + type: string + vsDataFormatVersion: + type: string + websocketHeaderConnection-Type: + description: Header value for the upgrade request and response. + type: string + enum: + - Upgrade + websocketHeaderUpgrade-Type: + description: Header value for the upgrade to WebSocket request and response. + type: string + enum: + - websocket + websocketHeader-Sec-WebSocket-Accept-Type: + description: Header value for secure WebSocket response. Carries hash. + type: string + websocketHeader-Sec-WebSocket-Extensions-Type: + description: Header value for secure WebSocket request. Carries protocol extensions. + type: string + websocketHeader-Sec-WebSocket-Key-Type: + description: Header value for secure WebSocket request. Provides information to the server which is needed in order to confirm that the client is entitled to request an upgrade to WebSocket. + type: string + websocketHeader-Sec-WebSocket-Protocol-Type: + description: Header value for secure WebSocket request. Carries a comma-separated list of subprotocol names, in the order of preference. + type: string + websocketHeader-Sec-WebSocket-Version-Type: + description: Header value for secure WebSocket request and response. Carries the WebSocket protocol version to be used. + type: string -- GitLab From fdf39fa722dfd980362cb417162d7eb3cf540a7d Mon Sep 17 00:00:00 2001 From: malashnyak Date: Tue, 10 Aug 2021 12:56:20 +0200 Subject: [PATCH 044/593] Update _3gpp-ns-nrm-networkslicesubnet.yang. Updated description of sliceProfileList --- yang-models/_3gpp-ns-nrm-networkslicesubnet.yang | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/yang-models/_3gpp-ns-nrm-networkslicesubnet.yang b/yang-models/_3gpp-ns-nrm-networkslicesubnet.yang index 005340362..89443d531 100755 --- a/yang-models/_3gpp-ns-nrm-networkslicesubnet.yang +++ b/yang-models/_3gpp-ns-nrm-networkslicesubnet.yang @@ -142,7 +142,12 @@ module _3gpp-ns-nrm-networkslicesubnet { list sliceProfileList { description "List of SliceProfiles supported by the network slice - subnet instance"; + subnet instance. All members of the list, instances of SliceProfile, + shall contain the same datatype representing slice profile requirements: + TopSliceSubnetProfile, RANSliceSubnetProfile or CNSliceSubnetProfile. + Members of the list may contain TopSliceSubnetProfile datatype + only when this attribute (sliceProfileList) belongs to + a NetworkSliceSubnet not contained by another NetworkSliceSubnet"; key sliceProfileId; uses SliceProfileGrp; } -- GitLab From 2a386f8f412559575356bd9ab14bd187ffb4408f Mon Sep 17 00:00:00 2001 From: malashnyak Date: Fri, 13 Aug 2021 10:46:20 +0200 Subject: [PATCH 045/593] Description of SliceProfileList updated --- yang-models/_3gpp-ns-nrm-networkslicesubnet.yang | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/yang-models/_3gpp-ns-nrm-networkslicesubnet.yang b/yang-models/_3gpp-ns-nrm-networkslicesubnet.yang index 89443d531..afd0f621f 100755 --- a/yang-models/_3gpp-ns-nrm-networkslicesubnet.yang +++ b/yang-models/_3gpp-ns-nrm-networkslicesubnet.yang @@ -147,7 +147,7 @@ module _3gpp-ns-nrm-networkslicesubnet { TopSliceSubnetProfile, RANSliceSubnetProfile or CNSliceSubnetProfile. Members of the list may contain TopSliceSubnetProfile datatype only when this attribute (sliceProfileList) belongs to - a NetworkSliceSubnet not contained by another NetworkSliceSubnet"; + a NetworkSliceSubnet that is directly referenced by a NetworkSlice"; key sliceProfileId; uses SliceProfileGrp; } -- GitLab From ab4ccaa5a97b451ccfcc82857370f1663a40451c Mon Sep 17 00:00:00 2001 From: Brendan Hassett Date: Sun, 29 Aug 2021 14:01:41 +0200 Subject: [PATCH 046/593] S5-214115rev1 Update genericNrm.yaml --- OpenAPI/genericNrm.yaml | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/OpenAPI/genericNrm.yaml b/OpenAPI/genericNrm.yaml index 9355f53e9..20b71d0b1 100644 --- a/OpenAPI/genericNrm.yaml +++ b/OpenAPI/genericNrm.yaml @@ -1206,6 +1206,10 @@ components: $ref: '#/components/schemas/TraceJob-Multiple' AlarmList: $ref: '#/components/schemas/AlarmList-Single' + MnsRegistry: + type: array + items: + $ref: '#/components/schemas/MnsRegistry' ManagedElement-ncO: type: object properties: @@ -1342,6 +1346,18 @@ components: TraceJob: $ref: '#/components/schemas/TraceJob-Multiple' + MnsRegistry: + type: object + properties: + mnsLabel: + type: string + mnsType: + type: string + mnsVersion: + type: string + mnsAddress: + type: string + #-------- Definition of concrete IOCs -------------------------------------------- VsDataContainer-Single: -- GitLab From dd7fae572d34e0706b2bf6b04f295b85029ab986 Mon Sep 17 00:00:00 2001 From: Brendan Hassett Date: Sun, 29 Aug 2021 14:03:23 +0200 Subject: [PATCH 047/593] Update genericNrm.yaml --- OpenAPI/genericNrm.yaml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/OpenAPI/genericNrm.yaml b/OpenAPI/genericNrm.yaml index 20b71d0b1..0911920a2 100644 --- a/OpenAPI/genericNrm.yaml +++ b/OpenAPI/genericNrm.yaml @@ -1208,8 +1208,8 @@ components: $ref: '#/components/schemas/AlarmList-Single' MnsRegistry: type: array - items: - $ref: '#/components/schemas/MnsRegistry' + items: + $ref: '#/components/schemas/MnsRegistry' ManagedElement-ncO: type: object properties: -- GitLab From 6e3c49f78441feb8f8e9daecba0d6090299627c6 Mon Sep 17 00:00:00 2001 From: ruiyue Date: Tue, 17 Aug 2021 03:01:26 +0200 Subject: [PATCH 048/593] Update logicInterfaceId of EP_transport --- OpenAPI/sliceNrm.yaml | 16 ++++++++++++++-- 1 file changed, 14 insertions(+), 2 deletions(-) diff --git a/OpenAPI/sliceNrm.yaml b/OpenAPI/sliceNrm.yaml index 6e12a4d8b..18473078c 100644 --- a/OpenAPI/sliceNrm.yaml +++ b/OpenAPI/sliceNrm.yaml @@ -465,6 +465,18 @@ components: oneOf: - $ref: 'genericNrm.yaml#/components/schemas/Ipv4Addr' - $ref: 'genericNrm.yaml#/components/schemas/Ipv6Addr' + + LogicInterfaceInfo: + type: object + properties: + logicalInterfceType: + type: string + enum: + - VLAN + - MPLS + - Segment + logicalInterfceId: + type: string ServiceProfileList: type: array @@ -549,8 +561,8 @@ components: properties: ipAddress: $ref: '#/components/schemas/IpAddress' - logicInterfaceId: - type: string + logicInterfaceInfo: + $ref: '#/components/schemas/LogicInterfaceInfo' nextHopInfo: type: string qosProfile: -- GitLab From 9d0df45f24b8470634b9ed7f7fd01ce9ecb550b4 Mon Sep 17 00:00:00 2001 From: ruiyue Date: Tue, 17 Aug 2021 02:53:23 +0200 Subject: [PATCH 049/593] Fix the issue caused by the updated NetworkSliceSubnet inheritence relationship --- OpenAPI/sliceNrm.yaml | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/OpenAPI/sliceNrm.yaml b/OpenAPI/sliceNrm.yaml index 18473078c..6c6f6a233 100644 --- a/OpenAPI/sliceNrm.yaml +++ b/OpenAPI/sliceNrm.yaml @@ -550,6 +550,18 @@ components: $ref: '#/components/schemas/SliceProfileList' epTransportRefList: $ref: 'genericNrm.yaml#/components/schemas/DnList' + priorityLabel: + type: integer + PerfMetricJob: + $ref: 'genericNrm.yaml#/components/schemas/PerfMetricJob-Multiple' + ThresholdMonitor: + $ref: 'genericNrm.yaml#/components/schemas/ThresholdMonitor-Multiple' + NtfSubscriptionControl: + $ref: 'genericNrm.yaml#/components/schemas/NtfSubscriptionControl-Multiple' + TraceJob: + $ref: 'genericNrm.yaml#/components/schemas/TraceJob-Multiple' + AlarmList: + $ref: 'genericNrm.yaml#/components/schemas/AlarmList-Single' EP_Transport-Single: allOf: -- GitLab From 5fab16f8c4dd464d56fb860dd14820ae535940dc Mon Sep 17 00:00:00 2001 From: ruiyue Date: Tue, 24 Aug 2021 13:28:51 +0200 Subject: [PATCH 050/593] Update sliceNrm.yaml to remove AlarmList --- OpenAPI/sliceNrm.yaml | 2 -- 1 file changed, 2 deletions(-) diff --git a/OpenAPI/sliceNrm.yaml b/OpenAPI/sliceNrm.yaml index 6c6f6a233..156255cd0 100644 --- a/OpenAPI/sliceNrm.yaml +++ b/OpenAPI/sliceNrm.yaml @@ -560,8 +560,6 @@ components: $ref: 'genericNrm.yaml#/components/schemas/NtfSubscriptionControl-Multiple' TraceJob: $ref: 'genericNrm.yaml#/components/schemas/TraceJob-Multiple' - AlarmList: - $ref: 'genericNrm.yaml#/components/schemas/AlarmList-Single' EP_Transport-Single: allOf: -- GitLab From 16f6f3f78c2a456c795cb4bccc261dc3f008c4d6 Mon Sep 17 00:00:00 2001 From: ruiyue Date: Tue, 31 Aug 2021 06:06:51 +0200 Subject: [PATCH 051/593] Update sliceNrm.yaml to remove XXX Control IOC name contained by NetworkSliceSubnet --- OpenAPI/sliceNrm.yaml | 8 -------- 1 file changed, 8 deletions(-) diff --git a/OpenAPI/sliceNrm.yaml b/OpenAPI/sliceNrm.yaml index 156255cd0..046c85abe 100644 --- a/OpenAPI/sliceNrm.yaml +++ b/OpenAPI/sliceNrm.yaml @@ -552,14 +552,6 @@ components: $ref: 'genericNrm.yaml#/components/schemas/DnList' priorityLabel: type: integer - PerfMetricJob: - $ref: 'genericNrm.yaml#/components/schemas/PerfMetricJob-Multiple' - ThresholdMonitor: - $ref: 'genericNrm.yaml#/components/schemas/ThresholdMonitor-Multiple' - NtfSubscriptionControl: - $ref: 'genericNrm.yaml#/components/schemas/NtfSubscriptionControl-Multiple' - TraceJob: - $ref: 'genericNrm.yaml#/components/schemas/TraceJob-Multiple' EP_Transport-Single: allOf: -- GitLab From e726ffdfa594aa448a23ecbcc1c0f4e16778d6dd Mon Sep 17 00:00:00 2001 From: ruiyue Date: Mon, 16 Aug 2021 11:22:08 +0200 Subject: [PATCH 052/593] Add YAML (Rest based) solution set for the CR S5-213508 which proposes to convert the 5QI characteristics datatype to IOC --- OpenAPI/5gcNrm.yaml | 51 ++++++++++++++++++++++++++------------------- 1 file changed, 29 insertions(+), 22 deletions(-) diff --git a/OpenAPI/5gcNrm.yaml b/OpenAPI/5gcNrm.yaml index fd61fca9d..50d31111a 100644 --- a/OpenAPI/5gcNrm.yaml +++ b/OpenAPI/5gcNrm.yaml @@ -265,26 +265,7 @@ components: type: integer exponent: type: integer - FiveQICharacteristics: - type: object - properties: - fiveQIValue: - type: integer - resourceType: - type: string - enum: - - GBR - - NonGBR - priorityLevel: - type: integer - packetDelayBudget: - type: integer - packetErrorRate: - $ref: '#/components/schemas/PacketErrorRate' - averagingWindow: - type: integer - maximumDataBurstVolume: - type: integer + GtpUPathDelayThresholdsType: @@ -1637,6 +1618,32 @@ components: items: $ref: '#/components/schemas/FiveQiDscpMapping' + FiveQICharacteristics-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - type: object + properties: + fiveQIValue: + type: integer + resourceType: + type: string + enum: + - GBR + - NonGBR + priorityLevel: + type: integer + packetDelayBudget: + type: integer + packetErrorRate: + $ref: '#/components/schemas/PacketErrorRate' + averagingWindow: + type: integer + maximumDataBurstVolume: + type: integer + FiveQICharacteristics-Multiple: + type: array + items: + $ref: '#/components/schemas/FiveQICharacteristics-Single' Configurable5QISet-Single: allOf: - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' @@ -1649,7 +1656,7 @@ components: configurable5QIs: type: array items: - $ref: '#/components/schemas/FiveQICharacteristics' + $ref: '#/components/schemas/FiveQICharacteristics-Multiple' Dynamic5QISet-Single: allOf: @@ -1663,7 +1670,7 @@ components: dynamic5QIs: type: array items: - $ref: '#/components/schemas/FiveQICharacteristics' + $ref: '#/components/schemas/FiveQICharacteristics-Multiple' GtpUPathQoSMonitoringControl-Single: allOf: -- GitLab From 33fd5aa300636542de12dccce05f6dda92cceef8 Mon Sep 17 00:00:00 2001 From: sunse Date: Mon, 16 Aug 2021 13:42:43 +0200 Subject: [PATCH 053/593] CR 0555 removing "isINEF" --- OpenAPI/5gcNrm.yaml | 2 -- 1 file changed, 2 deletions(-) diff --git a/OpenAPI/5gcNrm.yaml b/OpenAPI/5gcNrm.yaml index 50d31111a..042b94c04 100644 --- a/OpenAPI/5gcNrm.yaml +++ b/OpenAPI/5gcNrm.yaml @@ -1082,8 +1082,6 @@ components: $ref: '#/components/schemas/ManagedNFProfile' capabilityList: $ref: '#/components/schemas/CapabilityList' - isINEF: - type: boolean isCAPIFSup: type: boolean - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' -- GitLab From a8e1726f79a66fd5f24b5f7350d1256b43a0edbe Mon Sep 17 00:00:00 2001 From: sunse Date: Mon, 16 Aug 2021 13:45:44 +0200 Subject: [PATCH 054/593] CR 0555 removing isINEF --- yang-models/_3gpp-5gc-nrm-neffunction.yang | 4 ---- 1 file changed, 4 deletions(-) diff --git a/yang-models/_3gpp-5gc-nrm-neffunction.yang b/yang-models/_3gpp-5gc-nrm-neffunction.yang index fdb701ed4..7ab28015d 100755 --- a/yang-models/_3gpp-5gc-nrm-neffunction.yang +++ b/yang-models/_3gpp-5gc-nrm-neffunction.yang @@ -43,10 +43,6 @@ module _3gpp-5gc-nrm-neffunction { reference "3GPP TS 23.003"; type string; } - - leaf isINEF { - type boolean; - } leaf isCAPIFSup { type boolean; -- GitLab From 11710a7c203538e288e8e213ef82aeede7c1a2df Mon Sep 17 00:00:00 2001 From: sunse Date: Mon, 16 Aug 2021 13:29:28 +0200 Subject: [PATCH 055/593] Update nrNrm.yaml --- OpenAPI/nrNrm.yaml | 28 ++++++++++++++-------------- 1 file changed, 14 insertions(+), 14 deletions(-) diff --git a/OpenAPI/nrNrm.yaml b/OpenAPI/nrNrm.yaml index b1a462f33..00c32396f 100644 --- a/OpenAPI/nrNrm.yaml +++ b/OpenAPI/nrNrm.yaml @@ -887,6 +887,20 @@ components: type: array items: $ref: 'genericNrm.yaml#/components/schemas/Dn' + rimRSMonitoringStartTime: + type: string + rimRSMonitoringStopTime: + type: string + rimRSMonitoringWindowDuration: + type: integer + rimRSMonitoringWindowStartingOffset: + type: integer + rimRSMonitoringWindowPeriodicity: + type: integer + rimRSMonitoringOccasionInterval: + type: integer + rimRSMonitoringOccasionStartingOffset: + type: integer nRFrequencyRef: $ref: 'genericNrm.yaml#/components/schemas/Dn' victimSetRef: @@ -1393,20 +1407,6 @@ components: $ref: '#/components/schemas/RSSetId' setType: $ref: '#/components/schemas/RSSetType' - rimRSMonitoringStartTime: - type: string - rimRSMonitoringStopTime: - type: string - rimRSMonitoringWindowDuration: - type: integer - rimRSMonitoringWindowStartingOffset: - type: integer - rimRSMonitoringWindowPeriodicity: - type: integer - rimRSMonitoringOccasionInterval: - type: integer - rimRSMonitoringOccasionStartingOffset: - type: integer nRCellDURefs: $ref: 'genericNrm.yaml#/components/schemas/DnList' -- GitLab From df5692a7a195ae5d16a6e96056335130f1f566f0 Mon Sep 17 00:00:00 2001 From: sunse Date: Mon, 16 Aug 2021 13:14:14 +0200 Subject: [PATCH 056/593] Update OpenAPI/nrNrm.yaml, OpenAPI/5gcNrm.yaml, OpenAPI/sliceNrm.yaml files --- OpenAPI/5gcNrm.yaml | 126 +++++++++++++++++++++--------------------- OpenAPI/nrNrm.yaml | 86 ++++++++++++++-------------- OpenAPI/sliceNrm.yaml | 8 +-- 3 files changed, 110 insertions(+), 110 deletions(-) diff --git a/OpenAPI/5gcNrm.yaml b/OpenAPI/5gcNrm.yaml index 042b94c04..57bbc0a72 100644 --- a/OpenAPI/5gcNrm.yaml +++ b/OpenAPI/5gcNrm.yaml @@ -469,7 +469,7 @@ components: SubNetwork-Single: allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - $ref: 'genericNrm.yaml#/components/schemas/Top' - type: object properties: attributes: @@ -499,7 +499,7 @@ components: ManagedElement-Single: allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - $ref: 'genericNrm.yaml#/components/schemas/Top' - type: object properties: attributes: @@ -551,7 +551,7 @@ components: AmfFunction-Single: allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - $ref: 'genericNrm.yaml#/components/schemas/Top' - type: object properties: attributes: @@ -604,7 +604,7 @@ components: $ref: '#/components/schemas/EP_NLG-Multiple' AmfSet-Single: allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - $ref: 'genericNrm.yaml#/components/schemas/Top' - type: object properties: attributes: @@ -622,7 +622,7 @@ components: $ref: 'nrNrm.yaml#/components/schemas/SnssaiList' AmfRegion-Single: allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - $ref: 'genericNrm.yaml#/components/schemas/Top' - type: object properties: attributes: @@ -640,7 +640,7 @@ components: $ref: 'nrNrm.yaml#/components/schemas/SnssaiList' SmfFunction-Single: allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - $ref: 'genericNrm.yaml#/components/schemas/Top' - type: object properties: attributes: @@ -691,7 +691,7 @@ components: UpfFunction-Single: allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - $ref: 'genericNrm.yaml#/components/schemas/Top' - type: object properties: attributes: @@ -724,7 +724,7 @@ components: $ref: '#/components/schemas/EP_S5U-Multiple' N3iwfFunction-Single: allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - $ref: 'genericNrm.yaml#/components/schemas/Top' - type: object properties: attributes: @@ -745,7 +745,7 @@ components: $ref: '#/components/schemas/EP_N4-Multiple' PcfFunction-Single: allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - $ref: 'genericNrm.yaml#/components/schemas/Top' - type: object properties: attributes: @@ -786,7 +786,7 @@ components: AusfFunction-Single: allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - $ref: 'genericNrm.yaml#/components/schemas/Top' - type: object properties: attributes: @@ -813,7 +813,7 @@ components: $ref: '#/components/schemas/EP_N13-Multiple' UdmFunction-Single: allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - $ref: 'genericNrm.yaml#/components/schemas/Top' - type: object properties: attributes: @@ -842,7 +842,7 @@ components: $ref: '#/components/schemas/EP_N13-Multiple' UdrFunction-Single: allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - $ref: 'genericNrm.yaml#/components/schemas/Top' - type: object properties: attributes: @@ -860,7 +860,7 @@ components: $ref: '#/components/schemas/ManagedNFProfile' UdsfFunction-Single: allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - $ref: 'genericNrm.yaml#/components/schemas/Top' - type: object properties: attributes: @@ -878,7 +878,7 @@ components: $ref: '#/components/schemas/ManagedNFProfile' NrfFunction-Single: allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - $ref: 'genericNrm.yaml#/components/schemas/Top' - type: object properties: attributes: @@ -903,7 +903,7 @@ components: $ref: '#/components/schemas/EP_N27-Multiple' NssfFunction-Single: allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - $ref: 'genericNrm.yaml#/components/schemas/Top' - type: object properties: attributes: @@ -932,7 +932,7 @@ components: $ref: '#/components/schemas/EP_N31-Multiple' SmsfFunction-Single: allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - $ref: 'genericNrm.yaml#/components/schemas/Top' - type: object properties: attributes: @@ -959,7 +959,7 @@ components: $ref: '#/components/schemas/EP_MAP_SMSC-Multiple' LmfFunction-Single: allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - $ref: 'genericNrm.yaml#/components/schemas/Top' - type: object properties: attributes: @@ -980,7 +980,7 @@ components: $ref: '#/components/schemas/EP_NLS-Multiple' NgeirFunction-Single: allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - $ref: 'genericNrm.yaml#/components/schemas/Top' - type: object properties: attributes: @@ -1005,7 +1005,7 @@ components: $ref: '#/components/schemas/EP_N17-Multiple' SeppFunction-Single: allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - $ref: 'genericNrm.yaml#/components/schemas/Top' - type: object properties: attributes: @@ -1028,7 +1028,7 @@ components: $ref: '#/components/schemas/EP_N32-Multiple' NwdafFunction-Single: allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - $ref: 'genericNrm.yaml#/components/schemas/Top' - type: object properties: attributes: @@ -1051,7 +1051,7 @@ components: ScpFunction-Single: allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - $ref: 'genericNrm.yaml#/components/schemas/Top' - type: object properties: attributes: @@ -1066,7 +1066,7 @@ components: - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' NefFunction-Single: allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - $ref: 'genericNrm.yaml#/components/schemas/Top' - type: object properties: attributes: @@ -1088,7 +1088,7 @@ components: NsacfFunction-Single: allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - $ref: 'genericNrm.yaml#/components/schemas/Top' - type: object properties: attributes: @@ -1110,7 +1110,7 @@ components: ExternalAmfFunction-Single: allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - $ref: 'genericNrm.yaml#/components/schemas/Top' - type: object properties: attributes: @@ -1124,7 +1124,7 @@ components: $ref: '#/components/schemas/AmfIdentifier' ExternalNrfFunction-Single: allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - $ref: 'genericNrm.yaml#/components/schemas/Top' - type: object properties: attributes: @@ -1136,7 +1136,7 @@ components: $ref: 'nrNrm.yaml#/components/schemas/PlmnIdList' ExternalNssfFunction-Single: allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - $ref: 'genericNrm.yaml#/components/schemas/Top' - type: object properties: attributes: @@ -1148,7 +1148,7 @@ components: $ref: 'nrNrm.yaml#/components/schemas/PlmnIdList' ExternalSeppFunction-Single: allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - $ref: 'genericNrm.yaml#/components/schemas/Top' - type: object properties: attributes: @@ -1166,7 +1166,7 @@ components: EP_N2-Single: allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - $ref: 'genericNrm.yaml#/components/schemas/Top' - type: object properties: attributes: @@ -1180,7 +1180,7 @@ components: $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' EP_N3-Single: allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - $ref: 'genericNrm.yaml#/components/schemas/Top' - type: object properties: attributes: @@ -1196,7 +1196,7 @@ components: $ref: 'genericNrm.yaml#/components/schemas/DnList' EP_N4-Single: allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - $ref: 'genericNrm.yaml#/components/schemas/Top' - type: object properties: attributes: @@ -1210,7 +1210,7 @@ components: $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' EP_N5-Single: allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - $ref: 'genericNrm.yaml#/components/schemas/Top' - type: object properties: attributes: @@ -1224,7 +1224,7 @@ components: $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' EP_N6-Single: allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - $ref: 'genericNrm.yaml#/components/schemas/Top' - type: object properties: attributes: @@ -1238,7 +1238,7 @@ components: $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' EP_N7-Single: allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - $ref: 'genericNrm.yaml#/components/schemas/Top' - type: object properties: attributes: @@ -1252,7 +1252,7 @@ components: $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' EP_N8-Single: allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - $ref: 'genericNrm.yaml#/components/schemas/Top' - type: object properties: attributes: @@ -1266,7 +1266,7 @@ components: $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' EP_N9-Single: allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - $ref: 'genericNrm.yaml#/components/schemas/Top' - type: object properties: attributes: @@ -1280,7 +1280,7 @@ components: $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' EP_N10-Single: allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - $ref: 'genericNrm.yaml#/components/schemas/Top' - type: object properties: attributes: @@ -1294,7 +1294,7 @@ components: $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' EP_N11-Single: allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - $ref: 'genericNrm.yaml#/components/schemas/Top' - type: object properties: attributes: @@ -1308,7 +1308,7 @@ components: $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' EP_N12-Single: allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - $ref: 'genericNrm.yaml#/components/schemas/Top' - type: object properties: attributes: @@ -1322,7 +1322,7 @@ components: $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' EP_N13-Single: allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - $ref: 'genericNrm.yaml#/components/schemas/Top' - type: object properties: attributes: @@ -1336,7 +1336,7 @@ components: $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' EP_N14-Single: allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - $ref: 'genericNrm.yaml#/components/schemas/Top' - type: object properties: attributes: @@ -1350,7 +1350,7 @@ components: $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' EP_N15-Single: allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - $ref: 'genericNrm.yaml#/components/schemas/Top' - type: object properties: attributes: @@ -1364,7 +1364,7 @@ components: $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' EP_N16-Single: allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - $ref: 'genericNrm.yaml#/components/schemas/Top' - type: object properties: attributes: @@ -1378,7 +1378,7 @@ components: $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' EP_N17-Single: allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - $ref: 'genericNrm.yaml#/components/schemas/Top' - type: object properties: attributes: @@ -1393,7 +1393,7 @@ components: EP_N20-Single: allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - $ref: 'genericNrm.yaml#/components/schemas/Top' - type: object properties: attributes: @@ -1408,7 +1408,7 @@ components: EP_N21-Single: allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - $ref: 'genericNrm.yaml#/components/schemas/Top' - type: object properties: attributes: @@ -1422,7 +1422,7 @@ components: $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' EP_N22-Single: allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - $ref: 'genericNrm.yaml#/components/schemas/Top' - type: object properties: attributes: @@ -1437,7 +1437,7 @@ components: EP_N26-Single: allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - $ref: 'genericNrm.yaml#/components/schemas/Top' - type: object properties: attributes: @@ -1451,7 +1451,7 @@ components: $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' EP_N27-Single: allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - $ref: 'genericNrm.yaml#/components/schemas/Top' - type: object properties: attributes: @@ -1467,7 +1467,7 @@ components: EP_N31-Single: allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - $ref: 'genericNrm.yaml#/components/schemas/Top' - type: object properties: attributes: @@ -1481,7 +1481,7 @@ components: $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' EP_N32-Single: allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - $ref: 'genericNrm.yaml#/components/schemas/Top' - type: object properties: attributes: @@ -1504,7 +1504,7 @@ components: EP_S5C-Single: allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - $ref: 'genericNrm.yaml#/components/schemas/Top' - type: object properties: attributes: @@ -1518,7 +1518,7 @@ components: $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' EP_S5U-Single: allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - $ref: 'genericNrm.yaml#/components/schemas/Top' - type: object properties: attributes: @@ -1532,7 +1532,7 @@ components: $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' EP_Rx-Single: allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - $ref: 'genericNrm.yaml#/components/schemas/Top' - type: object properties: attributes: @@ -1546,7 +1546,7 @@ components: $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' EP_MAP_SMSC-Single: allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - $ref: 'genericNrm.yaml#/components/schemas/Top' - type: object properties: attributes: @@ -1560,7 +1560,7 @@ components: $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' EP_NLS-Single: allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - $ref: 'genericNrm.yaml#/components/schemas/Top' - type: object properties: attributes: @@ -1574,7 +1574,7 @@ components: $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' EP_NLG-Single: allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - $ref: 'genericNrm.yaml#/components/schemas/Top' - type: object properties: attributes: @@ -1589,7 +1589,7 @@ components: EP_N60-Single: allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - $ref: 'genericNrm.yaml#/components/schemas/Top' - type: object properties: attributes: @@ -1604,7 +1604,7 @@ components: FiveQiDscpMappingSet-Single: allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - $ref: 'genericNrm.yaml#/components/schemas/Top' - type: object properties: attributes: @@ -1644,7 +1644,7 @@ components: $ref: '#/components/schemas/FiveQICharacteristics-Single' Configurable5QISet-Single: allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - $ref: 'genericNrm.yaml#/components/schemas/Top' - type: object properties: attributes: @@ -1658,7 +1658,7 @@ components: Dynamic5QISet-Single: allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - $ref: 'genericNrm.yaml#/components/schemas/Top' - type: object properties: attributes: @@ -1672,7 +1672,7 @@ components: GtpUPathQoSMonitoringControl-Single: allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - $ref: 'genericNrm.yaml#/components/schemas/Top' - type: object properties: attributes: @@ -1709,7 +1709,7 @@ components: QFQoSMonitoringControl-Single: allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - $ref: 'genericNrm.yaml#/components/schemas/Top' - type: object properties: attributes: @@ -1746,7 +1746,7 @@ components: PredefinedPccRuleSet-Single: allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - $ref: 'genericNrm.yaml#/components/schemas/Top' - type: object properties: attributes: diff --git a/OpenAPI/nrNrm.yaml b/OpenAPI/nrNrm.yaml index 00c32396f..b235070e0 100644 --- a/OpenAPI/nrNrm.yaml +++ b/OpenAPI/nrNrm.yaml @@ -583,7 +583,7 @@ components: SubNetwork-Single: allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - $ref: 'genericNrm.yaml#/components/schemas/Top' - type: object properties: attributes: @@ -624,7 +624,7 @@ components: ManagedElement-Single: allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - $ref: 'genericNrm.yaml#/components/schemas/Top' - type: object properties: attributes: @@ -657,7 +657,7 @@ components: GnbDuFunction-Single: allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - $ref: 'genericNrm.yaml#/components/schemas/Top' - type: object properties: attributes: @@ -694,7 +694,7 @@ components: $ref: '#/components/schemas/DRACHOptimizationFunction-Single' GnbCuUpFunction-Single: allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - $ref: 'genericNrm.yaml#/components/schemas/Top' - type: object properties: attributes: @@ -733,7 +733,7 @@ components: $ref: '#/components/schemas/EP_S1U-Multiple' GnbCuCpFunction-Single: allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - $ref: 'genericNrm.yaml#/components/schemas/Top' - type: object properties: attributes: @@ -793,7 +793,7 @@ components: NrCellCu-Single: allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - $ref: 'genericNrm.yaml#/components/schemas/Top' - type: object properties: attributes: @@ -831,7 +831,7 @@ components: NrCellDu-Single: allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - $ref: 'genericNrm.yaml#/components/schemas/Top' - type: object properties: attributes: @@ -919,7 +919,7 @@ components: NRFrequency-Single: allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - $ref: 'genericNrm.yaml#/components/schemas/Top' - type: object properties: attributes: @@ -937,7 +937,7 @@ components: maximum: 256 EUtranFrequency-Single: allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - $ref: 'genericNrm.yaml#/components/schemas/Top' - type: object properties: attributes: @@ -954,7 +954,7 @@ components: NrSectorCarrier-Single: allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - $ref: 'genericNrm.yaml#/components/schemas/Top' - type: object properties: attributes: @@ -983,7 +983,7 @@ components: $ref: '#/components/schemas/CommonBeamformingFunction-Single' Bwp-Single: allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - $ref: 'genericNrm.yaml#/components/schemas/Top' - type: object properties: attributes: @@ -1006,7 +1006,7 @@ components: - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' CommonBeamformingFunction-Single: allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - $ref: 'genericNrm.yaml#/components/schemas/Top' - type: object properties: attributes: @@ -1025,7 +1025,7 @@ components: $ref: '#/components/schemas/Beam-Multiple' Beam-Single: allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - $ref: 'genericNrm.yaml#/components/schemas/Top' - type: object properties: attributes: @@ -1056,7 +1056,7 @@ components: maximum: 1800 RRMPolicyRatio-Single: allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - $ref: 'genericNrm.yaml#/components/schemas/Top' - type: object properties: attributes: @@ -1073,7 +1073,7 @@ components: NRCellRelation-Single: allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - $ref: 'genericNrm.yaml#/components/schemas/Top' - type: object properties: attributes: @@ -1099,7 +1099,7 @@ components: type: boolean EUtranCellRelation-Single: allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - $ref: 'genericNrm.yaml#/components/schemas/Top' - type: object properties: attributes: @@ -1112,7 +1112,7 @@ components: - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' NRFreqRelation-Single: allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - $ref: 'genericNrm.yaml#/components/schemas/Top' - type: object properties: attributes: @@ -1175,7 +1175,7 @@ components: $ref: 'genericNrm.yaml#/components/schemas/Dn' EUtranFreqRelation-Single: allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - $ref: 'genericNrm.yaml#/components/schemas/Top' - type: object properties: attributes: @@ -1238,7 +1238,7 @@ components: $ref: 'genericNrm.yaml#/components/schemas/Dn' DANRManagementFunction-Single: allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - $ref: 'genericNrm.yaml#/components/schemas/Top' - type: object properties: attributes: @@ -1251,7 +1251,7 @@ components: DESManagementFunction-Single: allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - $ref: 'genericNrm.yaml#/components/schemas/Top' - type: object properties: attributes: @@ -1286,7 +1286,7 @@ components: DRACHOptimizationFunction-Single: allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - $ref: 'genericNrm.yaml#/components/schemas/Top' - type: object properties: attributes: @@ -1302,7 +1302,7 @@ components: DMROFunction-Single: allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - $ref: 'genericNrm.yaml#/components/schemas/Top' - type: object properties: attributes: @@ -1319,7 +1319,7 @@ components: DPCIConfigurationFunction-Single: allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - $ref: 'genericNrm.yaml#/components/schemas/Top' - type: object properties: attributes: @@ -1332,7 +1332,7 @@ components: CPCIConfigurationFunction-Single: allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - $ref: 'genericNrm.yaml#/components/schemas/Top' - type: object properties: attributes: @@ -1345,7 +1345,7 @@ components: CESManagementFunction-Single: allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - $ref: 'genericNrm.yaml#/components/schemas/Top' - type: object properties: attributes: @@ -1380,7 +1380,7 @@ components: RimRSGlobal-Single: allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - $ref: 'genericNrm.yaml#/components/schemas/Top' - type: object properties: attributes: @@ -1397,7 +1397,7 @@ components: RimRSSet-Single: allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - $ref: 'genericNrm.yaml#/components/schemas/Top' - type: object properties: attributes: @@ -1412,7 +1412,7 @@ components: ExternalGnbDuFunction-Single: allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - $ref: 'genericNrm.yaml#/components/schemas/Top' - type: object properties: attributes: @@ -1433,7 +1433,7 @@ components: $ref: '#/components/schemas/EP_F1U-Multiple' ExternalGnbCuUpFunction-Single: allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - $ref: 'genericNrm.yaml#/components/schemas/Top' - type: object properties: attributes: @@ -1456,7 +1456,7 @@ components: $ref: '#/components/schemas/EP_XnU-Multiple' ExternalGnbCuCpFunction-Single: allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - $ref: 'genericNrm.yaml#/components/schemas/Top' - type: object properties: attributes: @@ -1484,7 +1484,7 @@ components: $ref: '#/components/schemas/EP_F1C-Multiple' ExternalNrCellCu-Single: allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - $ref: 'genericNrm.yaml#/components/schemas/Top' - type: object properties: attributes: @@ -1503,7 +1503,7 @@ components: - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' ExternalENBFunction-Single: allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - $ref: 'genericNrm.yaml#/components/schemas/Top' - type: object properties: attributes: @@ -1520,7 +1520,7 @@ components: $ref: '#/components/schemas/ExternalEUTranCell-Multiple' ExternalEUTranCell-Single: allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - $ref: 'genericNrm.yaml#/components/schemas/Top' - type: object properties: attributes: @@ -1534,7 +1534,7 @@ components: EP_XnC-Single: allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - $ref: 'genericNrm.yaml#/components/schemas/Top' - type: object properties: attributes: @@ -1548,7 +1548,7 @@ components: $ref: '#/components/schemas/RemoteAddress' EP_E1-Single: allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - $ref: 'genericNrm.yaml#/components/schemas/Top' - type: object properties: attributes: @@ -1562,7 +1562,7 @@ components: $ref: '#/components/schemas/RemoteAddress' EP_F1C-Single: allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - $ref: 'genericNrm.yaml#/components/schemas/Top' - type: object properties: attributes: @@ -1576,7 +1576,7 @@ components: $ref: '#/components/schemas/RemoteAddress' EP_NgC-Single: allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - $ref: 'genericNrm.yaml#/components/schemas/Top' - type: object properties: attributes: @@ -1590,7 +1590,7 @@ components: $ref: '#/components/schemas/RemoteAddress' EP_X2C-Single: allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - $ref: 'genericNrm.yaml#/components/schemas/Top' - type: object properties: attributes: @@ -1604,7 +1604,7 @@ components: $ref: '#/components/schemas/RemoteAddress' EP_XnU-Single: allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - $ref: 'genericNrm.yaml#/components/schemas/Top' - type: object properties: attributes: @@ -1618,7 +1618,7 @@ components: $ref: '#/components/schemas/RemoteAddress' EP_F1U-Single: allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - $ref: 'genericNrm.yaml#/components/schemas/Top' - type: object properties: attributes: @@ -1632,7 +1632,7 @@ components: $ref: '#/components/schemas/RemoteAddress' EP_NgU-Single: allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - $ref: 'genericNrm.yaml#/components/schemas/Top' - type: object properties: attributes: @@ -1649,7 +1649,7 @@ components: EP_X2U-Single: allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - $ref: 'genericNrm.yaml#/components/schemas/Top' - type: object properties: attributes: @@ -1663,7 +1663,7 @@ components: $ref: '#/components/schemas/RemoteAddress' EP_S1U-Single: allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - $ref: 'genericNrm.yaml#/components/schemas/Top' - type: object properties: attributes: diff --git a/OpenAPI/sliceNrm.yaml b/OpenAPI/sliceNrm.yaml index 046c85abe..f1ad099a3 100644 --- a/OpenAPI/sliceNrm.yaml +++ b/OpenAPI/sliceNrm.yaml @@ -491,7 +491,7 @@ components: #------------ Definition of concrete IOCs ---------------------------------------- SubNetwork-Single: allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - $ref: 'genericNrm.yaml#/components/schemas/Top' - type: object properties: attributes: @@ -511,7 +511,7 @@ components: NetworkSlice-Single: allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - $ref: 'genericNrm.yaml#/components/schemas/Top' - type: object properties: attributes: @@ -529,7 +529,7 @@ components: NetworkSliceSubnet-Single: allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - $ref: 'genericNrm.yaml#/components/schemas/Top' - type: object properties: attributes: @@ -555,7 +555,7 @@ components: EP_Transport-Single: allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - $ref: 'genericNrm.yaml#/components/schemas/Top' - type: object properties: attributes: -- GitLab From 4ec7d14c5b935d64326648fb6b4ae921339e22b1 Mon Sep 17 00:00:00 2001 From: sunse Date: Mon, 16 Aug 2021 13:22:24 +0200 Subject: [PATCH 057/593] Update nrNrm.yaml --- OpenAPI/nrNrm.yaml | 3 +++ 1 file changed, 3 insertions(+) diff --git a/OpenAPI/nrNrm.yaml b/OpenAPI/nrNrm.yaml index b235070e0..456b3060a 100644 --- a/OpenAPI/nrNrm.yaml +++ b/OpenAPI/nrNrm.yaml @@ -1630,6 +1630,9 @@ components: $ref: '#/components/schemas/LocalAddress' remoteAddress: $ref: '#/components/schemas/RemoteAddress' + epTransportRefs: + $ref: 'genericNrm.yaml#/components/schemas/DnList' + EP_NgU-Single: allOf: - $ref: 'genericNrm.yaml#/components/schemas/Top' -- GitLab From 122bda63d92ed422a39a28cefda29fa75a4ee46a Mon Sep 17 00:00:00 2001 From: Kai Zhang Date: Fri, 13 Aug 2021 09:32:48 +0200 Subject: [PATCH 058/593] Rel-17 CR 28.541 Add NPN Identity on NR cell to support access control for NPN UEs --- OpenAPI/nrNrm.yaml | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) diff --git a/OpenAPI/nrNrm.yaml b/OpenAPI/nrNrm.yaml index 456b3060a..035cf12ee 100644 --- a/OpenAPI/nrNrm.yaml +++ b/OpenAPI/nrNrm.yaml @@ -73,6 +73,23 @@ components: type: array items: $ref: '#/components/schemas/PlmnInfo' + cagId: + type: string + nid: + type: string + NpnIdentity: + type: object + properties: + plmnId": + $ref: '#/components/schemas/PlmnId' + cagidList: + $ref: '#/components/schemas/cagId' + nidList: + $ref: '#/components/schemas/nid' + NpnIdentityList: + type: array + items: + $ref: '#/components/schemas/NpnIdentity' GGnbId: type: string pattern: '^[0-9]{3}[0-9]{2,3}-(22|23|24|25|26|27|28|29|30|31|32)-[0-9]{1,10}' @@ -849,6 +866,8 @@ components: $ref: '#/components/schemas/CellState' plmnInfoList: $ref: '#/components/schemas/PlmnInfoList' + npnIdentityList: + $ref: '#/components/schemas/NpnIdentiyList' nrPci: $ref: '#/components/schemas/NrPci' nrTac: -- GitLab From a7e65bdd064271f6b34d6df8119a7cb61cb323c9 Mon Sep 17 00:00:00 2001 From: Kai Zhang Date: Fri, 13 Aug 2021 09:42:34 +0200 Subject: [PATCH 059/593] Rel-17 CR 28.541 Add NPN Identity on NR cell to support access control for NPN UEs --- OpenAPI/nrNrm.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/OpenAPI/nrNrm.yaml b/OpenAPI/nrNrm.yaml index 035cf12ee..f332d2d8a 100644 --- a/OpenAPI/nrNrm.yaml +++ b/OpenAPI/nrNrm.yaml @@ -867,7 +867,7 @@ components: plmnInfoList: $ref: '#/components/schemas/PlmnInfoList' npnIdentityList: - $ref: '#/components/schemas/NpnIdentiyList' + $ref: '#/components/schemas/NpnIdentityList' nrPci: $ref: '#/components/schemas/NrPci' nrTac: -- GitLab From 1b05157e0f1b14a5e50914b4bebdf2b5957a0dea Mon Sep 17 00:00:00 2001 From: Kai Zhang Date: Fri, 13 Aug 2021 11:31:13 +0200 Subject: [PATCH 060/593] Add radio spectrum support in slicing profiles --- OpenAPI/sliceNrm.yaml | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/OpenAPI/sliceNrm.yaml b/OpenAPI/sliceNrm.yaml index f1ad099a3..f0dcad991 100644 --- a/OpenAPI/sliceNrm.yaml +++ b/OpenAPI/sliceNrm.yaml @@ -160,6 +160,13 @@ components: $ref: '#/components/schemas/ServAttrCom' support: $ref: '#/components/schemas/Support' + RadioSpectrum: + type: object + properties: + servAttrCom: + $ref: '#/components/schemas/ServAttrCom' + nROperatingBands: + type: string Synchronicity: type: object properties: @@ -310,6 +317,8 @@ components: $ref: '#/components/schemas/ServiceType' maxPktSize: type: integer + nROperatingBands: + type: string delayTolerance: $ref: '#/components/schemas/DelayTolerance' positioning: @@ -347,6 +356,8 @@ components: type: integer maxNumberOfPDUSessions: type: integer + nROperatingBands: + type: string sliceSimultaneousUse: $ref: '#/components/schemas/SliceSimultaneousUse' energyEfficiency: @@ -417,6 +428,8 @@ components: $ref: '#/components/schemas/KPIMonitoring' nBIoT: $ref: '#/components/schemas/NBIoT' + radioSpectrum: + $ref: '#/components/schemas/RadioSpectrum' synchronicity: $ref: '#/components/schemas/Synchronicity' positioning: -- GitLab From 6afc80dd7a46f8986e99180044462808c6e18e76 Mon Sep 17 00:00:00 2001 From: Kai Zhang Date: Fri, 13 Aug 2021 11:02:07 +0200 Subject: [PATCH 061/593] Update maxPktSize and determinComm to support UL and DL requirements --- OpenAPI/sliceNrm.yaml | 32 ++++++++++++++++++++++++-------- 1 file changed, 24 insertions(+), 8 deletions(-) diff --git a/OpenAPI/sliceNrm.yaml b/OpenAPI/sliceNrm.yaml index f0dcad991..c05ab4376 100644 --- a/OpenAPI/sliceNrm.yaml +++ b/OpenAPI/sliceNrm.yaml @@ -278,7 +278,9 @@ components: type: integer resourceSharingLevel: $ref: '#/components/schemas/SharingLevel' - maxPktSize: + dLMaxPktSize: + type: integer + uLMaxPktSize: type: integer delayTolerance: $ref: '#/components/schemas/DelayTolerance' @@ -290,7 +292,9 @@ components: type: string energyEfficiency: type: integer - deterministicComm: + dLDeterministicComm: + $ref: '#/components/schemas/DeterministicComm' + uLDeterministicComm: $ref: '#/components/schemas/DeterministicComm' RANSliceSubnetProfile: type: object @@ -315,7 +319,9 @@ components: type: string serviceType: $ref: '#/components/schemas/ServiceType' - maxPktSize: + dLMaxPktSize: + type: integer + uLMaxPktSize: type: integer nROperatingBands: type: string @@ -333,7 +339,9 @@ components: type: string synchronicity: $ref: '#/components/schemas/SynchronicityRANSubnet' - deterministicComm: + dLDeterministicComm: + $ref: '#/components/schemas/DeterministicComm' + uLDeterministicComm: $ref: '#/components/schemas/DeterministicComm' TopSliceSubnetProfile: type: object @@ -352,7 +360,9 @@ components: $ref: '#/components/schemas/XLThpt' uLThptPerUE: $ref: '#/components/schemas/XLThpt' - maxPktSize: + dLMaxPktSize: + type: integer + uLMaxPktSize: type: integer maxNumberOfPDUSessions: type: integer @@ -384,7 +394,9 @@ components: type: string serviceType: $ref: '#/components/schemas/ServiceType' - deterministicComm: + dLDeterministicComm: + $ref: '#/components/schemas/DeterministicComm' + uLDeterministicComm: $ref: '#/components/schemas/DeterministicComm' survivalTime: type: string @@ -410,7 +422,9 @@ components: type: number delayTolerance: $ref: '#/components/schemas/DelayTolerance' - deterministicComm: + dLDeterministicComm: + $ref: '#/components/schemas/DeterministicComm' + uLDeterministicComm: $ref: '#/components/schemas/DeterministicComm' dLThptPerSlice: $ref: '#/components/schemas/XLThpt' @@ -420,7 +434,9 @@ components: $ref: '#/components/schemas/XLThpt' uLThptPerUE: $ref: '#/components/schemas/XLThpt' - maxPktSize: + dLMaxPktSize: + $ref: '#/components/schemas/MaxPktSize' + uLMaxPktSize: $ref: '#/components/schemas/MaxPktSize' maxNumberofPDUSessions: $ref: '#/components/schemas/MaxNumberofPDUSessions' -- GitLab From 6c738bb61a6cfef02119e04f15aeb84350922f0b Mon Sep 17 00:00:00 2001 From: Kai Zhang Date: Fri, 13 Aug 2021 10:50:50 +0200 Subject: [PATCH 062/593] Remove obsolete coverageArea attribute in TopSliceSubnetProfile --- OpenAPI/sliceNrm.yaml | 2 -- 1 file changed, 2 deletions(-) diff --git a/OpenAPI/sliceNrm.yaml b/OpenAPI/sliceNrm.yaml index c05ab4376..618cab023 100644 --- a/OpenAPI/sliceNrm.yaml +++ b/OpenAPI/sliceNrm.yaml @@ -346,8 +346,6 @@ components: TopSliceSubnetProfile: type: object properties: - coverageArea: - type: string latency: type: integer maxNumberofUEs: -- GitLab From 29ac65240020ef2eb243b3714bf0e4cb592ae3e9 Mon Sep 17 00:00:00 2001 From: shumim Date: Mon, 2 Aug 2021 14:05:38 +0800 Subject: [PATCH 063/593] Enhance 5GC NRM to support 5G DDNMF --- OpenAPI/5gcNrm.yaml | 83 ++++++++++++++++++++++++++++++++++++++++++++- 1 file changed, 82 insertions(+), 1 deletion(-) diff --git a/OpenAPI/5gcNrm.yaml b/OpenAPI/5gcNrm.yaml index 57bbc0a72..7c3fa97ae 100644 --- a/OpenAPI/5gcNrm.yaml +++ b/OpenAPI/5gcNrm.yaml @@ -1108,6 +1108,34 @@ components: EP_N60: $ref: '#/components/schemas/EP_N60-Multiple' + DDNMFFunction-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' + - type: object + properties: + plmnId: + $ref: 'nrNrm.yaml#/components/schemas/PlmnId' + sBIFqdn: + type: string + managedNFProfile: + $ref: '#/components/schemas/ManagedNFProfile' + commModelList: + $ref: '#/components/schemas/CommModelList' + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' + - type: object + properties: + EP_N64: + $ref: '#/components/schemas/EP_N64-Multiple' + EP_N65: + $ref: '#/components/schemas/EP_N65-Multiple' + EP_N66: + $ref: '#/components/schemas/EP_N66-Multiple' + ExternalAmfFunction-Single: allOf: - $ref: 'genericNrm.yaml#/components/schemas/Top' @@ -1601,6 +1629,48 @@ components: $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' remoteAddress: $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' + EP_N64-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' + - type: object + properties: + localAddress: + $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' + remoteAddress: + $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' + EP_N65-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' + - type: object + properties: + localAddress: + $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' + remoteAddress: + $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' + EP_N66-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' + - type: object + properties: + localAddress: + $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' + remoteAddress: + $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' FiveQiDscpMappingSet-Single: allOf: @@ -1996,7 +2066,18 @@ components: type: array items: $ref: '#/components/schemas/EP_N60-Single' - + EP_N64-Multiple: + type: array + items: + $ref: '#/components/schemas/EP_N64-Single' + EP_N65-Multiple: + type: array + items: + $ref: '#/components/schemas/EP_N65-Single' + EP_N66-Multiple: + type: array + items: + $ref: '#/components/schemas/EP_N66-Single' Configurable5QISet-Multiple: type: array items: -- GitLab From 106ee8f9cf6a50142a02683a9c55d7eb80fe1c51 Mon Sep 17 00:00:00 2001 From: Shitao Li Date: Tue, 17 Aug 2021 03:15:41 +0200 Subject: [PATCH 064/593] Update 5gcNrm.yaml --- OpenAPI/5gcNrm.yaml | 28 ++++++++++++++++++++++++---- 1 file changed, 24 insertions(+), 4 deletions(-) diff --git a/OpenAPI/5gcNrm.yaml b/OpenAPI/5gcNrm.yaml index 7c3fa97ae..1626b02b1 100644 --- a/OpenAPI/5gcNrm.yaml +++ b/OpenAPI/5gcNrm.yaml @@ -1085,7 +1085,10 @@ components: isCAPIFSup: type: boolean - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' - + - type: object + properties: + EP_N33: + $ref: '#/components/schemas/EP_N33-Multiple' NsacfFunction-Single: allOf: - $ref: 'genericNrm.yaml#/components/schemas/Top' @@ -1529,7 +1532,20 @@ components: type: string withIPX: type: boolean - + EP_N33-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' + - type: object + properties: + localAddress: + $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' + remoteAddress: + $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' EP_S5C-Single: allOf: - $ref: 'genericNrm.yaml#/components/schemas/Top' @@ -2037,7 +2053,10 @@ components: type: array items: $ref: '#/components/schemas/EP_N32-Single' - + EP_N33-Multiple: + type: array + items: + $ref: '#/components/schemas/EP_N33-Single' EP_S5C-Multiple: type: array items: @@ -2150,7 +2169,8 @@ components: - $ref: '#/components/schemas/EP_N27-Single' - $ref: '#/components/schemas/EP_N31-Single' - - $ref: '#/components/schemas/EP_N31-Single' + - $ref: '#/components/schemas/EP_N32-Single' + - $ref: '#/components/schemas/EP_N33-Single' - $ref: '#/components/schemas/EP_N60-Single' - $ref: '#/components/schemas/EP_S5C-Single' -- GitLab From bb18db315fd59f22b0f1c4365c5c7776c2f4d7dd Mon Sep 17 00:00:00 2001 From: ruiyue Date: Tue, 7 Sep 2021 05:30:34 +0200 Subject: [PATCH 065/593] Update sliceNrm.yaml --- OpenAPI/sliceNrm.yaml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/OpenAPI/sliceNrm.yaml b/OpenAPI/sliceNrm.yaml index 618cab023..7e0ad1f7f 100644 --- a/OpenAPI/sliceNrm.yaml +++ b/OpenAPI/sliceNrm.yaml @@ -296,6 +296,8 @@ components: $ref: '#/components/schemas/DeterministicComm' uLDeterministicComm: $ref: '#/components/schemas/DeterministicComm' + survivalTime: + type: string RANSliceSubnetProfile: type: object properties: -- GitLab From 7cbcc82c2814e7d2665ff1fcc0add597b87e5b07 Mon Sep 17 00:00:00 2001 From: ruiyue Date: Wed, 22 Sep 2021 02:58:54 +0200 Subject: [PATCH 066/593] Update the version of nrNrm.yaml --- OpenAPI/nrNrm.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/OpenAPI/nrNrm.yaml b/OpenAPI/nrNrm.yaml index f332d2d8a..850106631 100644 --- a/OpenAPI/nrNrm.yaml +++ b/OpenAPI/nrNrm.yaml @@ -1,7 +1,7 @@ openapi: 3.0.1 info: title: NR NRM - version: 17.3.0 + version: 17.4.0 description: >- OAS 3.0.1 specification of the NR NRM © 2020, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). -- GitLab From 0bd473769b9debe6f0693b6bf13020d88e71f290 Mon Sep 17 00:00:00 2001 From: ruiyue Date: Wed, 22 Sep 2021 03:01:33 +0200 Subject: [PATCH 067/593] Update version of 5gcNrm.yaml --- OpenAPI/5gcNrm.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/OpenAPI/5gcNrm.yaml b/OpenAPI/5gcNrm.yaml index 1626b02b1..e4c4b2619 100644 --- a/OpenAPI/5gcNrm.yaml +++ b/OpenAPI/5gcNrm.yaml @@ -1,7 +1,7 @@ openapi: 3.0.1 info: title: 3GPP 5GC NRM - version: 17.3.0 + version: 17.4.0 description: >- OAS 3.0.1 specification of the 5GC NRM © 2020, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). -- GitLab From 610fadd131ab0466d6f276a31c7ea6e0c6af7cba Mon Sep 17 00:00:00 2001 From: ruiyue Date: Wed, 22 Sep 2021 03:02:50 +0200 Subject: [PATCH 068/593] Update version of sliceNrm.yaml --- OpenAPI/sliceNrm.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/OpenAPI/sliceNrm.yaml b/OpenAPI/sliceNrm.yaml index 7e0ad1f7f..bf6b4d71c 100644 --- a/OpenAPI/sliceNrm.yaml +++ b/OpenAPI/sliceNrm.yaml @@ -1,7 +1,7 @@ openapi: 3.0.1 info: title: Slice NRM - version: 17.3.0 + version: 17.4.0 description: >- OAS 3.0.1 specification of the Slice NRM @ 2020, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). -- GitLab From 389a6e85ea5c474fafb360d1a663bccd4cb7a929 Mon Sep 17 00:00:00 2001 From: scottma Date: Fri, 13 Aug 2021 16:25:52 +0200 Subject: [PATCH 069/593] Add new file --- yang-models/_3gpp-common-mnsregistry.yang | 75 +++++++++++++++++++++++ 1 file changed, 75 insertions(+) create mode 100644 yang-models/_3gpp-common-mnsregistry.yang diff --git a/yang-models/_3gpp-common-mnsregistry.yang b/yang-models/_3gpp-common-mnsregistry.yang new file mode 100644 index 000000000..423f1d960 --- /dev/null +++ b/yang-models/_3gpp-common-mnsregistry.yang @@ -0,0 +1,75 @@ +module _3gpp-common-nrm-mnsregistry { + yang-version 1.1; + namespace "urn:3gpp:sa5:_3gpp-nr-nrm-mnsregistry"; + prefix "nrmnsregistry3gpp"; + + import _3gpp-common-yang-types { prefix types3gpp; } + import _3gpp-common-subnetwork { prefix subnet3gpp; } + import _3gpp-common-top { prefix top3gpp; } + + + organization "3GPP SA5"; + contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; + description "Defines the YANG mapping of the MNSRegistry Information Object + Class (IOC) that is part of the NR Network Resource Model (NRM)."; + reference "3GPP TS 28.541 5G Network Resource Model (NRM)"; + + revision 2021-08-10 { reference "Initial revision"; } + + feature MNSRegistry { + description "Class representing MsS Discovery Service Resgistry. + feature"; + } + + grouping MNSDataGrp { + description " This datatype represents an available Management Service (MnS + and provides the data required to support its discovery."; + reference "3GPP TS 28.541"; + key id; + leaf mnsLabel { + description "Human-readable name of management service."; + mandatory true; + type string; + } + leaf mnsType { + description "Type of management service. + allowedValues: PROVISIONING, FAULT_SUPERVISION, PERFORMANCE_ASSURANCE."; + mandatory true; + type enumeration { + enum provisioning; + enum faultSupervision; + enum performanceAssurance; + } + } + leaf mnsVersion { + description " Version of management service."; + mandatory true; + type string; + } } + leaf componentTypeAAddress { + description " Addressing information for Management Service operations."; + mandatory true; + type string; + } } + leaf componentTypeBAddress { + description " Addressing information for Management Service information models."; + mandatory true; + type string; + } +} + grouping MNSRegistryGrp { + description "Represents the MNSRegistry IOC."; + reference "3GPP TS 28.541"; + uses top3gpp:Top_Grp; + + list mnsList { + description "List of MnS Data."; + reference "3GPP TS 28.541"; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses MNSDataGrp; + } + } + } +} \ No newline at end of file -- GitLab From 1382c7f9c437fdb04cec66eb49f1e9d9afb53829 Mon Sep 17 00:00:00 2001 From: scottma Date: Fri, 13 Aug 2021 16:43:43 +0200 Subject: [PATCH 070/593] Update _3gpp-common-mnsregistry.yang --- yang-models/_3gpp-common-mnsregistry.yang | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/yang-models/_3gpp-common-mnsregistry.yang b/yang-models/_3gpp-common-mnsregistry.yang index 423f1d960..699c95485 100644 --- a/yang-models/_3gpp-common-mnsregistry.yang +++ b/yang-models/_3gpp-common-mnsregistry.yang @@ -56,8 +56,7 @@ module _3gpp-common-nrm-mnsregistry { mandatory true; type string; } -} - grouping MNSRegistryGrp { + grouping MNSRegistryGrp { description "Represents the MNSRegistry IOC."; reference "3GPP TS 28.541"; uses top3gpp:Top_Grp; -- GitLab From 03f12b2fea1599ea7e8f8b80809e67289bfff90c Mon Sep 17 00:00:00 2001 From: scottma Date: Fri, 13 Aug 2021 17:38:45 +0200 Subject: [PATCH 071/593] Update _3gpp-common-mnsregistry.yang --- yang-models/_3gpp-common-mnsregistry.yang | 38 +++++++++++------------ 1 file changed, 18 insertions(+), 20 deletions(-) diff --git a/yang-models/_3gpp-common-mnsregistry.yang b/yang-models/_3gpp-common-mnsregistry.yang index 699c95485..6dcda277e 100644 --- a/yang-models/_3gpp-common-mnsregistry.yang +++ b/yang-models/_3gpp-common-mnsregistry.yang @@ -7,7 +7,6 @@ module _3gpp-common-nrm-mnsregistry { import _3gpp-common-subnetwork { prefix subnet3gpp; } import _3gpp-common-top { prefix top3gpp; } - organization "3GPP SA5"; contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; description "Defines the YANG mapping of the MNSRegistry Information Object @@ -17,10 +16,24 @@ module _3gpp-common-nrm-mnsregistry { revision 2021-08-10 { reference "Initial revision"; } feature MNSRegistry { - description "Class representing MsS Discovery Service Resgistry. - feature"; + description "Class representing MsS Discovery Service Resgistry."; } + grouping MNSRegistryGrp { + description "Represents the MNSRegistry IOC."; + reference "3GPP TS 28.541"; + uses top3gpp:Top_Grp; + + list mnsList { + description "List of MnS Data."; + reference "3GPP TS 28.541"; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses MNSDataGrp; + } + } + } grouping MNSDataGrp { description " This datatype represents an available Management Service (MnS and provides the data required to support its discovery."; @@ -45,30 +58,15 @@ module _3gpp-common-nrm-mnsregistry { description " Version of management service."; mandatory true; type string; - } } + } leaf componentTypeAAddress { description " Addressing information for Management Service operations."; mandatory true; type string; - } } + } leaf componentTypeBAddress { description " Addressing information for Management Service information models."; mandatory true; type string; } - grouping MNSRegistryGrp { - description "Represents the MNSRegistry IOC."; - reference "3GPP TS 28.541"; - uses top3gpp:Top_Grp; - - list mnsList { - description "List of MnS Data."; - reference "3GPP TS 28.541"; - key id; - uses top3gpp:Top_Grp; - container attributes { - uses MNSDataGrp; - } - } - } } \ No newline at end of file -- GitLab From d7f41861d55537300dca22c12968cf7691d90732 Mon Sep 17 00:00:00 2001 From: scottma Date: Fri, 13 Aug 2021 17:48:55 +0200 Subject: [PATCH 072/593] Update _3gpp-common-mnsregistry.yang --- yang-models/_3gpp-common-mnsregistry.yang | 17 +++++++++-------- 1 file changed, 9 insertions(+), 8 deletions(-) diff --git a/yang-models/_3gpp-common-mnsregistry.yang b/yang-models/_3gpp-common-mnsregistry.yang index 6dcda277e..54ca7e596 100644 --- a/yang-models/_3gpp-common-mnsregistry.yang +++ b/yang-models/_3gpp-common-mnsregistry.yang @@ -33,7 +33,7 @@ module _3gpp-common-nrm-mnsregistry { uses MNSDataGrp; } } - } + grouping MNSDataGrp { description " This datatype represents an available Management Service (MnS and provides the data required to support its discovery."; @@ -49,24 +49,25 @@ module _3gpp-common-nrm-mnsregistry { allowedValues: PROVISIONING, FAULT_SUPERVISION, PERFORMANCE_ASSURANCE."; mandatory true; type enumeration { - enum provisioning; - enum faultSupervision; - enum performanceAssurance; + enum PROVISIONING; + enum FAULT_SUPERVISION; + enum PERFORMANCE_ASSURANCE; } } leaf mnsVersion { - description " Version of management service."; + description "Version of management service."; mandatory true; type string; } leaf componentTypeAAddress { - description " Addressing information for Management Service operations."; + description "Addressing information for Management Service operations."; mandatory true; type string; } leaf componentTypeBAddress { - description " Addressing information for Management Service information models."; + description "Addressing information for Management Service information models."; mandatory true; type string; } -} \ No newline at end of file + } +} -- GitLab From c16380ae3646bb6873f3f31efc35690974fca496 Mon Sep 17 00:00:00 2001 From: scottma Date: Fri, 13 Aug 2021 17:54:36 +0200 Subject: [PATCH 073/593] Update _3gpp-common-mnsregistry.yang --- yang-models/_3gpp-common-mnsregistry.yang | 1 + 1 file changed, 1 insertion(+) diff --git a/yang-models/_3gpp-common-mnsregistry.yang b/yang-models/_3gpp-common-mnsregistry.yang index 54ca7e596..0227e5658 100644 --- a/yang-models/_3gpp-common-mnsregistry.yang +++ b/yang-models/_3gpp-common-mnsregistry.yang @@ -33,6 +33,7 @@ module _3gpp-common-nrm-mnsregistry { uses MNSDataGrp; } } + } grouping MNSDataGrp { description " This datatype represents an available Management Service (MnS -- GitLab From bfdfdc212b58e487f248474dc61af7084d447f2c Mon Sep 17 00:00:00 2001 From: scottma Date: Fri, 13 Aug 2021 17:57:50 +0200 Subject: [PATCH 074/593] Update _3gpp-common-mnsregistry.yang --- yang-models/_3gpp-common-mnsregistry.yang | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/yang-models/_3gpp-common-mnsregistry.yang b/yang-models/_3gpp-common-mnsregistry.yang index 0227e5658..50fd1b4d9 100644 --- a/yang-models/_3gpp-common-mnsregistry.yang +++ b/yang-models/_3gpp-common-mnsregistry.yang @@ -1,4 +1,4 @@ -module _3gpp-common-nrm-mnsregistry { +module _3gpp-common-mnsregistry { yang-version 1.1; namespace "urn:3gpp:sa5:_3gpp-nr-nrm-mnsregistry"; prefix "nrmnsregistry3gpp"; @@ -39,7 +39,6 @@ module _3gpp-common-nrm-mnsregistry { description " This datatype represents an available Management Service (MnS and provides the data required to support its discovery."; reference "3GPP TS 28.541"; - key id; leaf mnsLabel { description "Human-readable name of management service."; mandatory true; -- GitLab From fa17d16b726732cd29928730ff16c9218faf19b3 Mon Sep 17 00:00:00 2001 From: scottma Date: Fri, 13 Aug 2021 18:01:46 +0200 Subject: [PATCH 075/593] Update _3gpp-common-mnsregistry.yang --- yang-models/_3gpp-common-mnsregistry.yang | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/yang-models/_3gpp-common-mnsregistry.yang b/yang-models/_3gpp-common-mnsregistry.yang index 50fd1b4d9..e651dbf67 100644 --- a/yang-models/_3gpp-common-mnsregistry.yang +++ b/yang-models/_3gpp-common-mnsregistry.yang @@ -1,7 +1,7 @@ module _3gpp-common-mnsregistry { yang-version 1.1; - namespace "urn:3gpp:sa5:_3gpp-nr-nrm-mnsregistry"; - prefix "nrmnsregistry3gpp"; + namespace "urn:3gpp:sa5:_3gpp-common-mnsregistry"; + prefix "mnsregistry3gpp"; import _3gpp-common-yang-types { prefix types3gpp; } import _3gpp-common-subnetwork { prefix subnet3gpp; } @@ -70,4 +70,4 @@ module _3gpp-common-mnsregistry { type string; } } -} + } -- GitLab From 362ad6f43f308c5e988ea18b81b1aeaa6e85d14e Mon Sep 17 00:00:00 2001 From: scottma Date: Fri, 13 Aug 2021 18:03:03 +0200 Subject: [PATCH 076/593] Update _3gpp-common-mnsregistry.yang --- yang-models/_3gpp-common-mnsregistry.yang | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/yang-models/_3gpp-common-mnsregistry.yang b/yang-models/_3gpp-common-mnsregistry.yang index e651dbf67..4a5e5be47 100644 --- a/yang-models/_3gpp-common-mnsregistry.yang +++ b/yang-models/_3gpp-common-mnsregistry.yang @@ -65,7 +65,8 @@ module _3gpp-common-mnsregistry { type string; } leaf componentTypeBAddress { - description "Addressing information for Management Service information models."; + description "Addressing information for Management Service information + models."; mandatory true; type string; } -- GitLab From 585de9c10fb2ec0a81d55d32562828ae16613283 Mon Sep 17 00:00:00 2001 From: scottma Date: Fri, 13 Aug 2021 18:07:39 +0200 Subject: [PATCH 077/593] Update _3gpp-common-mnsregistry.yang --- yang-models/_3gpp-common-mnsregistry.yang | 3 +++ 1 file changed, 3 insertions(+) diff --git a/yang-models/_3gpp-common-mnsregistry.yang b/yang-models/_3gpp-common-mnsregistry.yang index 4a5e5be47..aecc9c439 100644 --- a/yang-models/_3gpp-common-mnsregistry.yang +++ b/yang-models/_3gpp-common-mnsregistry.yang @@ -71,4 +71,7 @@ module _3gpp-common-mnsregistry { type string; } } + augment "/subnet3gpp:SubNetwork" { + uses MNSRegistryGrp; + } } -- GitLab From 2b5206807703344bcfd891dc09f01cbffbeddbb3 Mon Sep 17 00:00:00 2001 From: scottma Date: Fri, 13 Aug 2021 18:16:19 +0200 Subject: [PATCH 078/593] Update _3gpp-common-mnsregistry.yang --- yang-models/_3gpp-common-mnsregistry.yang | 1 - 1 file changed, 1 deletion(-) diff --git a/yang-models/_3gpp-common-mnsregistry.yang b/yang-models/_3gpp-common-mnsregistry.yang index aecc9c439..2f08b806e 100644 --- a/yang-models/_3gpp-common-mnsregistry.yang +++ b/yang-models/_3gpp-common-mnsregistry.yang @@ -3,7 +3,6 @@ module _3gpp-common-mnsregistry { namespace "urn:3gpp:sa5:_3gpp-common-mnsregistry"; prefix "mnsregistry3gpp"; - import _3gpp-common-yang-types { prefix types3gpp; } import _3gpp-common-subnetwork { prefix subnet3gpp; } import _3gpp-common-top { prefix top3gpp; } -- GitLab From 86e191861a7523ebe86c415706452ce9b07fe8a6 Mon Sep 17 00:00:00 2001 From: scottma Date: Fri, 13 Aug 2021 18:17:44 +0200 Subject: [PATCH 079/593] Update _3gpp-common-mnsregistry.yang --- yang-models/_3gpp-common-mnsregistry.yang | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/yang-models/_3gpp-common-mnsregistry.yang b/yang-models/_3gpp-common-mnsregistry.yang index 2f08b806e..0205bb66d 100644 --- a/yang-models/_3gpp-common-mnsregistry.yang +++ b/yang-models/_3gpp-common-mnsregistry.yang @@ -1,7 +1,7 @@ module _3gpp-common-mnsregistry { yang-version 1.1; namespace "urn:3gpp:sa5:_3gpp-common-mnsregistry"; - prefix "mnsregistry3gpp"; + prefix "mnsregist3gpp"; import _3gpp-common-subnetwork { prefix subnet3gpp; } import _3gpp-common-top { prefix top3gpp; } -- GitLab From a2becfe7e3f41ad3f700389c568fae5bf30d1fbc Mon Sep 17 00:00:00 2001 From: scottma Date: Wed, 18 Aug 2021 14:48:29 +0200 Subject: [PATCH 080/593] Update _3gpp-common-mnsregistry.yang --- yang-models/_3gpp-common-mnsregistry.yang | 20 ++++++-------------- 1 file changed, 6 insertions(+), 14 deletions(-) diff --git a/yang-models/_3gpp-common-mnsregistry.yang b/yang-models/_3gpp-common-mnsregistry.yang index 0205bb66d..a11d57f85 100644 --- a/yang-models/_3gpp-common-mnsregistry.yang +++ b/yang-models/_3gpp-common-mnsregistry.yang @@ -9,35 +9,28 @@ module _3gpp-common-mnsregistry { organization "3GPP SA5"; contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; description "Defines the YANG mapping of the MNSRegistry Information Object - Class (IOC) that is part of the NR Network Resource Model (NRM)."; - reference "3GPP TS 28.541 5G Network Resource Model (NRM)"; + Class (IOC) that is part of the Generic Network Resource Model (NRM)."; + reference "3GPP TS 28.623 Generic Network Resource Model (NRM)"; revision 2021-08-10 { reference "Initial revision"; } - feature MNSRegistry { - description "Class representing MsS Discovery Service Resgistry."; - } - grouping MNSRegistryGrp { description "Represents the MNSRegistry IOC."; reference "3GPP TS 28.541"; uses top3gpp:Top_Grp; list mnsList { + key "mnsType"; + key "mnsVersion"; description "List of MnS Data."; - reference "3GPP TS 28.541"; - key id; uses top3gpp:Top_Grp; - container attributes { - uses MNSDataGrp; - } + uses MNSDataGrp; } } grouping MNSDataGrp { description " This datatype represents an available Management Service (MnS and provides the data required to support its discovery."; - reference "3GPP TS 28.541"; leaf mnsLabel { description "Human-readable name of management service."; mandatory true; @@ -46,7 +39,6 @@ module _3gpp-common-mnsregistry { leaf mnsType { description "Type of management service. allowedValues: PROVISIONING, FAULT_SUPERVISION, PERFORMANCE_ASSURANCE."; - mandatory true; type enumeration { enum PROVISIONING; enum FAULT_SUPERVISION; @@ -55,7 +47,7 @@ module _3gpp-common-mnsregistry { } leaf mnsVersion { description "Version of management service."; - mandatory true; + ; type string; } leaf componentTypeAAddress { -- GitLab From e366842ee56a077c070b5681c8c414251fd6c4ed Mon Sep 17 00:00:00 2001 From: scottma Date: Wed, 18 Aug 2021 14:55:32 +0200 Subject: [PATCH 081/593] Update _3gpp-common-mnsregistry.yang --- yang-models/_3gpp-common-mnsregistry.yang | 23 +++++++++++++---------- 1 file changed, 13 insertions(+), 10 deletions(-) diff --git a/yang-models/_3gpp-common-mnsregistry.yang b/yang-models/_3gpp-common-mnsregistry.yang index a11d57f85..709b4c261 100644 --- a/yang-models/_3gpp-common-mnsregistry.yang +++ b/yang-models/_3gpp-common-mnsregistry.yang @@ -12,7 +12,7 @@ module _3gpp-common-mnsregistry { Class (IOC) that is part of the Generic Network Resource Model (NRM)."; reference "3GPP TS 28.623 Generic Network Resource Model (NRM)"; - revision 2021-08-10 { reference "Initial revision"; } + revision 2021-08-10 { reference "Initial revision, S5-214388"; } grouping MNSRegistryGrp { description "Represents the MNSRegistry IOC."; @@ -20,25 +20,22 @@ module _3gpp-common-mnsregistry { uses top3gpp:Top_Grp; list mnsList { - key "mnsType"; - key "mnsVersion"; + key "mnsType mnsVersion"; description "List of MnS Data."; - uses top3gpp:Top_Grp; uses MNSDataGrp; } } grouping MNSDataGrp { description " This datatype represents an available Management Service (MnS - and provides the data required to support its discovery."; + and provides the data required to support its discovery."; leaf mnsLabel { description "Human-readable name of management service."; mandatory true; type string; } leaf mnsType { - description "Type of management service. - allowedValues: PROVISIONING, FAULT_SUPERVISION, PERFORMANCE_ASSURANCE."; + description "Type of management service."; type enumeration { enum PROVISIONING; enum FAULT_SUPERVISION; @@ -47,7 +44,6 @@ module _3gpp-common-mnsregistry { } leaf mnsVersion { description "Version of management service."; - ; type string; } leaf componentTypeAAddress { @@ -63,6 +59,13 @@ module _3gpp-common-mnsregistry { } } augment "/subnet3gpp:SubNetwork" { - uses MNSRegistryGrp; - } + list MNSRegistry { + key id; + uses top3gpp:Top_Grp; + container attributes { + uses MNSRegistryGrp ; + } + } + } + } -- GitLab From 877106ee0d7885110a053df5e009a4a06656e06e Mon Sep 17 00:00:00 2001 From: scottma Date: Wed, 18 Aug 2021 15:01:19 +0200 Subject: [PATCH 082/593] Update _3gpp-common-mnsregistry.yang --- yang-models/_3gpp-common-mnsregistry.yang | 1 + 1 file changed, 1 insertion(+) diff --git a/yang-models/_3gpp-common-mnsregistry.yang b/yang-models/_3gpp-common-mnsregistry.yang index 709b4c261..e6ab68851 100644 --- a/yang-models/_3gpp-common-mnsregistry.yang +++ b/yang-models/_3gpp-common-mnsregistry.yang @@ -60,6 +60,7 @@ module _3gpp-common-mnsregistry { } augment "/subnet3gpp:SubNetwork" { list MNSRegistry { + description "Represents the MNSRegistry IOC."; key id; uses top3gpp:Top_Grp; container attributes { -- GitLab From 4346ee1abf102a77c9b8ce5bb94ef93abffdb912 Mon Sep 17 00:00:00 2001 From: scottma Date: Wed, 18 Aug 2021 15:02:18 +0200 Subject: [PATCH 083/593] Update _3gpp-common-mnsregistry.yang --- yang-models/_3gpp-common-mnsregistry.yang | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/yang-models/_3gpp-common-mnsregistry.yang b/yang-models/_3gpp-common-mnsregistry.yang index e6ab68851..601a7f587 100644 --- a/yang-models/_3gpp-common-mnsregistry.yang +++ b/yang-models/_3gpp-common-mnsregistry.yang @@ -65,8 +65,7 @@ module _3gpp-common-mnsregistry { uses top3gpp:Top_Grp; container attributes { uses MNSRegistryGrp ; - } + } } - } - } +} -- GitLab From d63af776bd77e2a8950f5c601ec0cf6cc96180a9 Mon Sep 17 00:00:00 2001 From: scottma Date: Sun, 29 Aug 2021 16:59:11 +0200 Subject: [PATCH 084/593] Update _3gpp-common-mnsregistry.yang --- yang-models/_3gpp-common-mnsregistry.yang | 26 ++++++----------------- 1 file changed, 7 insertions(+), 19 deletions(-) diff --git a/yang-models/_3gpp-common-mnsregistry.yang b/yang-models/_3gpp-common-mnsregistry.yang index 601a7f587..9e1e24360 100644 --- a/yang-models/_3gpp-common-mnsregistry.yang +++ b/yang-models/_3gpp-common-mnsregistry.yang @@ -18,22 +18,13 @@ module _3gpp-common-mnsregistry { description "Represents the MNSRegistry IOC."; reference "3GPP TS 28.541"; uses top3gpp:Top_Grp; - - list mnsList { - key "mnsType mnsVersion"; - description "List of MnS Data."; - uses MNSDataGrp; - } - } - grouping MNSDataGrp { - description " This datatype represents an available Management Service (MnS - and provides the data required to support its discovery."; leaf mnsLabel { description "Human-readable name of management service."; mandatory true; type string; } + leaf mnsType { description "Type of management service."; type enumeration { @@ -42,23 +33,20 @@ module _3gpp-common-mnsregistry { enum PERFORMANCE_ASSURANCE; } } + leaf mnsVersion { description "Version of management service."; type string; } - leaf componentTypeAAddress { + + leaf mnsAddress { description "Addressing information for Management Service operations."; mandatory true; type string; } - leaf componentTypeBAddress { - description "Addressing information for Management Service information - models."; - mandatory true; - type string; } - } - augment "/subnet3gpp:SubNetwork" { + + augment "/subnet3gpp:SubNetwork" { list MNSRegistry { description "Represents the MNSRegistry IOC."; key id; @@ -68,4 +56,4 @@ module _3gpp-common-mnsregistry { } } } -} +} \ No newline at end of file -- GitLab From f2cb1b4accd87d42202664704232b7d327891ca4 Mon Sep 17 00:00:00 2001 From: scottma Date: Sun, 29 Aug 2021 17:07:26 +0200 Subject: [PATCH 085/593] Update _3gpp-common-mnsregistry.yang --- yang-models/_3gpp-common-mnsregistry.yang | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/yang-models/_3gpp-common-mnsregistry.yang b/yang-models/_3gpp-common-mnsregistry.yang index 9e1e24360..2783fd385 100644 --- a/yang-models/_3gpp-common-mnsregistry.yang +++ b/yang-models/_3gpp-common-mnsregistry.yang @@ -12,7 +12,7 @@ module _3gpp-common-mnsregistry { Class (IOC) that is part of the Generic Network Resource Model (NRM)."; reference "3GPP TS 28.623 Generic Network Resource Model (NRM)"; - revision 2021-08-10 { reference "Initial revision, S5-214388"; } + revision 2021-08-29 { reference "Initial revision, S5-214388"; } grouping MNSRegistryGrp { description "Represents the MNSRegistry IOC."; @@ -52,7 +52,7 @@ module _3gpp-common-mnsregistry { key id; uses top3gpp:Top_Grp; container attributes { - uses MNSRegistryGrp ; + uses MNSRegistryGrp; } } } -- GitLab From 20471d5df2e6371f7a2f2ba91bb1b7ad948b9236 Mon Sep 17 00:00:00 2001 From: scottma Date: Tue, 31 Aug 2021 18:44:12 +0200 Subject: [PATCH 086/593] Update _3gpp-common-mnsregistry.yang --- yang-models/_3gpp-common-mnsregistry.yang | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/yang-models/_3gpp-common-mnsregistry.yang b/yang-models/_3gpp-common-mnsregistry.yang index 2783fd385..7fa8d6dfb 100644 --- a/yang-models/_3gpp-common-mnsregistry.yang +++ b/yang-models/_3gpp-common-mnsregistry.yang @@ -44,8 +44,16 @@ module _3gpp-common-mnsregistry { mandatory true; type string; } + + leaf mnsScope { + description "This indicates the URI of the supported NRM fragment."; + mandatory true; + type string; + } + } + augment "/subnet3gpp:SubNetwork" { list MNSRegistry { description "Represents the MNSRegistry IOC."; -- GitLab From d4de2f706e1944adaf20b9226d15f07a96f63997 Mon Sep 17 00:00:00 2001 From: scottma Date: Tue, 31 Aug 2021 18:46:36 +0200 Subject: [PATCH 087/593] Update _3gpp-common-mnsregistry.yang --- yang-models/_3gpp-common-mnsregistry.yang | 2 -- 1 file changed, 2 deletions(-) diff --git a/yang-models/_3gpp-common-mnsregistry.yang b/yang-models/_3gpp-common-mnsregistry.yang index 7fa8d6dfb..cce1554f3 100644 --- a/yang-models/_3gpp-common-mnsregistry.yang +++ b/yang-models/_3gpp-common-mnsregistry.yang @@ -50,10 +50,8 @@ module _3gpp-common-mnsregistry { mandatory true; type string; } - } - augment "/subnet3gpp:SubNetwork" { list MNSRegistry { description "Represents the MNSRegistry IOC."; -- GitLab From a0134a56c60e1ff23da446070487e67334db85bb Mon Sep 17 00:00:00 2001 From: scottma Date: Tue, 31 Aug 2021 19:15:38 +0200 Subject: [PATCH 088/593] Update _3gpp-common-mnsregistry.yang --- yang-models/_3gpp-common-mnsregistry.yang | 6 ------ 1 file changed, 6 deletions(-) diff --git a/yang-models/_3gpp-common-mnsregistry.yang b/yang-models/_3gpp-common-mnsregistry.yang index cce1554f3..2783fd385 100644 --- a/yang-models/_3gpp-common-mnsregistry.yang +++ b/yang-models/_3gpp-common-mnsregistry.yang @@ -44,12 +44,6 @@ module _3gpp-common-mnsregistry { mandatory true; type string; } - - leaf mnsScope { - description "This indicates the URI of the supported NRM fragment."; - mandatory true; - type string; - } } augment "/subnet3gpp:SubNetwork" { -- GitLab From 0742c87ebafa0c9d1c749c6102ce96ec340cf6d8 Mon Sep 17 00:00:00 2001 From: scottma Date: Fri, 13 Aug 2021 15:01:38 +0200 Subject: [PATCH 089/593] Update _3gpp-nr-nrm-rrmpolicy.yang --- yang-models/_3gpp-nr-nrm-rrmpolicy.yang | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/yang-models/_3gpp-nr-nrm-rrmpolicy.yang b/yang-models/_3gpp-nr-nrm-rrmpolicy.yang index 3480c753c..8e2538883 100755 --- a/yang-models/_3gpp-nr-nrm-rrmpolicy.yang +++ b/yang-models/_3gpp-nr-nrm-rrmpolicy.yang @@ -50,9 +50,15 @@ module _3gpp-nr-nrm-rrmpolicy { leaf resourceType { description "The resourceType attribute defines type of resource (PRB, RRC connected users, DRB usage etc.) that is subject to policy. - Valid values are 'PRB', 'RRC' or 'DRB'"; + Valid values are 'PRB', 'PRB-UL', 'PRB-DL', 'RRC' or 'DRB'"; mandatory true; - type string; + type enumeration { + enum prb; + enum prbUl; + enum prbDl; + enum rrc; + enum drb + }; } list rRMPolicyMemberList{ -- GitLab From bb3684210e577c651dda06e88ed64483eb9c021d Mon Sep 17 00:00:00 2001 From: scottma Date: Fri, 13 Aug 2021 15:28:39 +0200 Subject: [PATCH 090/593] Update _3gpp-nr-nrm-rrmpolicy.yang --- yang-models/_3gpp-nr-nrm-rrmpolicy.yang | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/yang-models/_3gpp-nr-nrm-rrmpolicy.yang b/yang-models/_3gpp-nr-nrm-rrmpolicy.yang index 8e2538883..aef754bbb 100755 --- a/yang-models/_3gpp-nr-nrm-rrmpolicy.yang +++ b/yang-models/_3gpp-nr-nrm-rrmpolicy.yang @@ -57,7 +57,7 @@ module _3gpp-nr-nrm-rrmpolicy { enum prbUl; enum prbDl; enum rrc; - enum drb + enum drb; }; } -- GitLab From d02781c712907aef2193289f04ce4db439fb9617 Mon Sep 17 00:00:00 2001 From: scottma Date: Fri, 13 Aug 2021 15:30:25 +0200 Subject: [PATCH 091/593] Update _3gpp-nr-nrm-rrmpolicy.yang --- yang-models/_3gpp-nr-nrm-rrmpolicy.yang | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/yang-models/_3gpp-nr-nrm-rrmpolicy.yang b/yang-models/_3gpp-nr-nrm-rrmpolicy.yang index aef754bbb..2a04cbc22 100755 --- a/yang-models/_3gpp-nr-nrm-rrmpolicy.yang +++ b/yang-models/_3gpp-nr-nrm-rrmpolicy.yang @@ -58,7 +58,7 @@ module _3gpp-nr-nrm-rrmpolicy { enum prbDl; enum rrc; enum drb; - }; + } } list rRMPolicyMemberList{ -- GitLab From 9949c478b05c3739632bf91f260615486f221a17 Mon Sep 17 00:00:00 2001 From: scottma Date: Fri, 13 Aug 2021 16:21:07 +0200 Subject: [PATCH 092/593] Update _3gpp-nr-nrm-rrmpolicy.yang --- yang-models/_3gpp-nr-nrm-rrmpolicy.yang | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/yang-models/_3gpp-nr-nrm-rrmpolicy.yang b/yang-models/_3gpp-nr-nrm-rrmpolicy.yang index 2a04cbc22..cfe977059 100755 --- a/yang-models/_3gpp-nr-nrm-rrmpolicy.yang +++ b/yang-models/_3gpp-nr-nrm-rrmpolicy.yang @@ -50,14 +50,14 @@ module _3gpp-nr-nrm-rrmpolicy { leaf resourceType { description "The resourceType attribute defines type of resource (PRB, RRC connected users, DRB usage etc.) that is subject to policy. - Valid values are 'PRB', 'PRB-UL', 'PRB-DL', 'RRC' or 'DRB'"; + Valid values are 'PRB', 'PRB_UL', 'PRB_DL', 'RRC' or 'DRB'"; mandatory true; type enumeration { - enum prb; - enum prbUl; - enum prbDl; - enum rrc; - enum drb; + enum PRB; + enum PRB_UL; + enum PRB_DL; + enum RRC; + enum DRB; } } -- GitLab From d012699c7bac2dae3d7a977a3d50b5b7233d3c08 Mon Sep 17 00:00:00 2001 From: "U-ERICSSON\\ETHBLL" Date: Mon, 30 Aug 2021 10:49:30 +0200 Subject: [PATCH 093/593] update sliceprofile --- yang-models/_3gpp-ns-nrm-common.yang | 8 +- yang-models/_3gpp-ns-nrm-sliceprofile.yang | 180 +++++++++++++++++---- 2 files changed, 156 insertions(+), 32 deletions(-) diff --git a/yang-models/_3gpp-ns-nrm-common.yang b/yang-models/_3gpp-ns-nrm-common.yang index c3e1079bf..500328301 100755 --- a/yang-models/_3gpp-ns-nrm-common.yang +++ b/yang-models/_3gpp-ns-nrm-common.yang @@ -1,7 +1,7 @@ module _3gpp-ns-nrm-common { yang-version 1.1; namespace urn:3gpp:sa5:_3gpp-ns-nrm-common; - prefix ns3cmn; + prefix ns3cmn3gpp; // import _3gpp-common-subnetwork { prefix subnet3gpp; } // import _3gpp-common-yang-types { prefix types3gpp; } @@ -17,6 +17,7 @@ module _3gpp-ns-nrm-common { Information model definitions for network slice NRM (chapter 6) "; + revision 2021-07-16 { reference CR-xxxx ; } revision 2021-05-17 { description "Introduction of Common Data types"; reference "CR-0485"; @@ -47,7 +48,7 @@ module _3gpp-ns-nrm-common { units kbits/s; } } - typedef Tagging-enum { + typedef Tagging-enum { type enumeration { enum performance; enum function; @@ -77,17 +78,20 @@ module _3gpp-ns-nrm-common { description "This attribute specifies the category of a service requirement/attribute of GST"; type Category-enum; + config false; } leaf-list tagging { description "This attribute specifies the tagging of a service requirement/attribute of GST in character category"; when "../category = 'character'"; type Tagging-enum; + config false; } leaf exposure { description "This attribute specifies exposure mode of a service requirement/attribute of GST"; type Exposure-enum; + config false; } } typedef DeterminCommAvailability { diff --git a/yang-models/_3gpp-ns-nrm-sliceprofile.yang b/yang-models/_3gpp-ns-nrm-sliceprofile.yang index 0ec5311ad..22b54ff8b 100755 --- a/yang-models/_3gpp-ns-nrm-sliceprofile.yang +++ b/yang-models/_3gpp-ns-nrm-sliceprofile.yang @@ -5,7 +5,7 @@ submodule _3gpp-ns-nrm-sliceprofile { import _3gpp-common-yang-types { prefix types3gpp; } import _3gpp-5g-common-yang-types { prefix types5g3gpp; } // import _3gpp-ns-nrm-networkslice { prefix ns3gpp; } - import _3gpp-ns-nrm-common { prefix ns3cmn; } + import _3gpp-ns-nrm-common { prefix ns3cmn3gpp; } organization "3GPP SA5"; contact @@ -19,6 +19,7 @@ submodule _3gpp-ns-nrm-sliceprofile { Information model definitions for network slice NRM (chapter 6) "; + revision 2021-07-16 { reference CR-xxxx ; } revision 2021-05-05 { description "replace perfReq with 3 new datatypes xxxSliceSubnetProfile"; reference "CR-0485"; @@ -51,6 +52,59 @@ submodule _3gpp-ns-nrm-sliceprofile { enum V2X; } } + + grouping PositioningGrp { + description "Represents positioning support."; + reference "Clause 3.4.20 of GSMA NG.116 "; + + uses ns3cmn3gpp:ServAttrComGrp ; + leaf-list availability { + type enumeration { + enum CIDE_CID ; + enum OTDOA; + enum RF_FINGERPRINTING; + enum AECID; + enum HYBRID_POSITIONING; + enum NET_RTK; + } + min-elements 1; + config false; + description "Specifies if this attribute is provided by the RAN domain + of the network slice and contains a list of positioning methods + provided by the RAN domain. If the list is empty this attribute is + not available in the RAN domain and the other parameters might be + ignored, see NG.116. Values allowed: are + CIDE-CID (LTE and NR), OTDOA (LTE and NR), RF fingerprinting, AECID, + Hybrid positioning, NET-RTK."; + } + leaf predictionfrequency { + type enumeration { + enum PERSEC; + enum PERMIN; + enum PERHOUR; + } + mandatory true; + description "Specifies how often location information is provided. + This parameter simply defines how often the customer is allowed to + request location information. This is not related to the time it + takes to determine the location, which is a characteristic of the + positioning method. + If leaf-list availability is empty, the value has no meaning."; + reference "NG.116"; + } + leaf accuracy { + type decimal64 { + fraction-digits 2; + } + units meter; + mandatory true; + description "Specifies the accuracy of the location information. + Accuracy depends on the respective positioning solution applied in the + RAN domain of the network slice."; + reference "NG.116"; + } + } + grouping TopSliceSubnetProfileGrp { leaf-list coverageArea { min-elements 1; @@ -84,7 +138,7 @@ submodule _3gpp-ns-nrm-sliceprofile { description "Synthetic index for the element."; type uint32; } - uses ns3cmn:XLThptGrp; + uses ns3cmn3gpp:XLThptGrp; } list dLThptPerUE { description "This attribute defines data rate supported by the @@ -95,7 +149,7 @@ submodule _3gpp-ns-nrm-sliceprofile { description "Synthetic index for the element."; type uint32; } - uses ns3cmn:XLThptGrp; + uses ns3cmn3gpp:XLThptGrp; } list uLThptPerSliceSubnet { description "This attribute defines achievable data rate of the @@ -107,7 +161,7 @@ submodule _3gpp-ns-nrm-sliceprofile { description "Synthetic index for the element."; type uint32; } - uses ns3cmn:XLThptGrp; + uses ns3cmn3gpp:XLThptGrp; } list uLThptPerUE { description "This attribute defines data rate supported by the @@ -118,7 +172,7 @@ submodule _3gpp-ns-nrm-sliceprofile { description "Synthetic index for the element."; type uint32; } - uses ns3cmn:XLThptGrp; + uses ns3cmn3gpp:XLThptGrp; } list maxPktSize { config false; @@ -141,7 +195,7 @@ submodule _3gpp-ns-nrm-sliceprofile { description "Synthetic index for the element."; type uint32; } - uses ns3cmn:ServAttrComGrp; + uses ns3cmn3gpp:ServAttrComGrp; } leaf maxSize { //Stage2 issue: Not defined in 28.541, guessing integer bytes @@ -170,7 +224,7 @@ submodule _3gpp-ns-nrm-sliceprofile { description "Synthetic index for the element."; type uint32; } - uses ns3cmn:ServAttrComGrp; + uses ns3cmn3gpp:ServAttrComGrp; } leaf nOofPDUSessions { //Stage2 issue: Not defined in 28.541, guessing integer @@ -206,13 +260,13 @@ submodule _3gpp-ns-nrm-sliceprofile { description "Synthetic index for the element."; type uint32; } - uses ns3cmn:ServAttrComGrp; + uses ns3cmn3gpp:ServAttrComGrp; } leaf support { description "An attribute specifies whether or not the network slice supports service delivery flexibility, especially for the vertical services that are not chasing a high system performance."; - type ns3cmn:Support-enum; + type ns3cmn3gpp:Support-enum; } } list termDensity { @@ -236,7 +290,7 @@ submodule _3gpp-ns-nrm-sliceprofile { description "Synthetic index for the element."; type uint32; } - uses ns3cmn:ServAttrComGrp; + uses ns3cmn3gpp:ServAttrComGrp; } leaf density { type uint32; @@ -321,13 +375,13 @@ submodule _3gpp-ns-nrm-sliceprofile { description "Synthetic index for the element."; type uint32; } - uses ns3cmn:ServAttrComGrp; + uses ns3cmn3gpp:ServAttrComGrp; } leaf availability { //Stage2 issue: Defined differently in 28.541 chapter 6, but XML // uses DeterminCommAvailability config false; - type ns3cmn:DeterminCommAvailability; + type ns3cmn3gpp:DeterminCommAvailability; } leaf periodicityList { //Stage2 issue: Not defined in 28.541 chapter 6. XML and YAML @@ -342,6 +396,15 @@ submodule _3gpp-ns-nrm-sliceprofile { reference "TS 22.104 clause 5"; type string; } + list positioning { + key predictionfrequency; + min-elements 1; + max-elements 1; + description "Specifies whether the network slice provides + geo-localization methods or supporting methods"; + reference "Clause 3.4.20 of NG.116"; + uses PositioningGrp; + } } grouping CNSliceSubnetProfileGrp { @@ -377,7 +440,7 @@ submodule _3gpp-ns-nrm-sliceprofile { description "Synthetic index for the element."; type uint32; } - uses ns3cmn:XLThptGrp; + uses ns3cmn3gpp:XLThptGrp; } list dLThptPerUE { description "This attribute defines data rate supported by the @@ -388,7 +451,7 @@ submodule _3gpp-ns-nrm-sliceprofile { description "Synthetic index for the element."; type uint32; } - uses ns3cmn:XLThptGrp; + uses ns3cmn3gpp:XLThptGrp; } list uLThptPerSliceSubnet { description "This attribute defines achievable data rate of the @@ -400,7 +463,7 @@ submodule _3gpp-ns-nrm-sliceprofile { description "Synthetic index for the element."; type uint32; } - uses ns3cmn:XLThptGrp; + uses ns3cmn3gpp:XLThptGrp; } list uLThptPerUE { description "This attribute defines data rate supported by the @@ -411,7 +474,7 @@ submodule _3gpp-ns-nrm-sliceprofile { description "Synthetic index for the element."; type uint32; } - uses ns3cmn:XLThptGrp; + uses ns3cmn3gpp:XLThptGrp; } list maxPktSize { config false; @@ -434,7 +497,7 @@ submodule _3gpp-ns-nrm-sliceprofile { description "Synthetic index for the element."; type uint32; } - uses ns3cmn:ServAttrComGrp; + uses ns3cmn3gpp:ServAttrComGrp; } leaf maxSize { //Stage2 issue: Not defined in 28.541, guessing integer bytes @@ -463,7 +526,7 @@ submodule _3gpp-ns-nrm-sliceprofile { description "Synthetic index for the element."; type uint32; } - uses ns3cmn:ServAttrComGrp; + uses ns3cmn3gpp:ServAttrComGrp; } leaf nOofPDUSessions { //Stage2 issue: Not defined in 28.541, guessing integer @@ -499,13 +562,13 @@ submodule _3gpp-ns-nrm-sliceprofile { description "Synthetic index for the element."; type uint32; } - uses ns3cmn:ServAttrComGrp; + uses ns3cmn3gpp:ServAttrComGrp; } leaf support { description "An attribute specifies whether or not the network slice supports service delivery flexibility, especially for the vertical services that are not chasing a high system performance."; - type ns3cmn:Support-enum; + type ns3cmn3gpp:Support-enum; } } leaf-list coverageAreaTAList { @@ -546,13 +609,13 @@ submodule _3gpp-ns-nrm-sliceprofile { description "Synthetic index for the element."; type uint32; } - uses ns3cmn:ServAttrComGrp; + uses ns3cmn3gpp:ServAttrComGrp; } leaf availability { //Stage2 issue: Defined differently in 28.541 chapter 6, but XML // uses DeterminCommAvailability config false; - type ns3cmn:DeterminCommAvailability; + type ns3cmn3gpp:DeterminCommAvailability; } leaf periodicityList { //Stage2 issue: Not defined in 28.541 chapter 6. XML and YAML @@ -562,7 +625,56 @@ submodule _3gpp-ns-nrm-sliceprofile { } } + grouping PositioningRANSubnetGrp { + description "Represents positioning support in RAN domain"; + leaf-list availability { + type enumeration { + enum CIDE_CID ; + enum OTDOA; + enum RF_FINGERPRINTING; + enum AECID; + enum HYBRID_POSITIONING; + enum NET_RTK; + } + config false; + description "Specifies if this attribute is provided by the RAN domain + of the network slice and contains a list of positioning methods + provided by the RAN domain. If the list is empty this attribute is + not available in the RAN domain and the other parameters might be + ignored, see NG.116. Values allowed: are + CIDE-CID (LTE and NR), OTDOA (LTE and NR), RF fingerprinting, AECID, + Hybrid positioning, NET-RTK."; + } + leaf predictionfrequency { + type enumeration { + enum PERSEC; + enum PERMIN; + enum PERHOUR; + } + mandatory true; + description "Specifies how often location information is provided. + This parameter simply defines how often the customer is allowed to + request location information. This is not related to the time it + takes to determine the location, which is a characteristic of the + positioning method. + If leaf-list availability is empty, the value has no meaning."; + reference "NG.116"; + } + leaf accuracy { + type decimal64 { + fraction-digits 2; + } + units meter; + mandatory true; + description "Specifies the accuracy of the location information. + Accuracy depends on the respective positioning solution applied in the + RAN domain of the network slice."; + reference "NG.116"; + } + } + grouping RANSliceSubnetProfileGrp { + description "Represents the RANSliceSubnetProfile datatype"; leaf latency { description "The packet transmission latency (milliseconds) through the RAN, CN, and TN part of 5G network, used to evaluate @@ -589,7 +701,7 @@ submodule _3gpp-ns-nrm-sliceprofile { description "Synthetic index for the element."; type uint32; } - uses ns3cmn:XLThptGrp; + uses ns3cmn3gpp:XLThptGrp; } list uLThptPerUE { description "This attribute defines data rate supported by the @@ -600,7 +712,7 @@ submodule _3gpp-ns-nrm-sliceprofile { description "Synthetic index for the element."; type uint32; } - uses ns3cmn:XLThptGrp; + uses ns3cmn3gpp:XLThptGrp; } list maxPktSize { config false; @@ -623,7 +735,7 @@ submodule _3gpp-ns-nrm-sliceprofile { description "Synthetic index for the element."; type uint32; } - uses ns3cmn:ServAttrComGrp; + uses ns3cmn3gpp:ServAttrComGrp; } leaf maxSize { //Stage2 issue: Not defined in 28.541, guessing integer bytes @@ -654,13 +766,13 @@ submodule _3gpp-ns-nrm-sliceprofile { description "Synthetic index for the element."; type uint32; } - uses ns3cmn:ServAttrComGrp; + uses ns3cmn3gpp:ServAttrComGrp; } leaf support { description "An attribute specifies whether or not the network slice supports service delivery flexibility, especially for the vertical services that are not chasing a high system performance."; - type ns3cmn:Support-enum; + type ns3cmn3gpp:Support-enum; } } leaf sliceSimultaneousUse { @@ -690,7 +802,7 @@ submodule _3gpp-ns-nrm-sliceprofile { description "Synthetic index for the element."; type uint32; } - uses ns3cmn:ServAttrComGrp; + uses ns3cmn3gpp:ServAttrComGrp; } leaf density { type uint32; @@ -775,13 +887,13 @@ submodule _3gpp-ns-nrm-sliceprofile { description "Synthetic index for the element."; type uint32; } - uses ns3cmn:ServAttrComGrp; + uses ns3cmn3gpp:ServAttrComGrp; } leaf availability { //Stage2 issue: Defined differently in 28.541 chapter 6, but XML // uses DeterminCommAvailability config false; - type ns3cmn:DeterminCommAvailability; + type ns3cmn3gpp:DeterminCommAvailability; } leaf periodicityList { //Stage2 issue: Not defined in 28.541 chapter 6. XML and YAML @@ -796,6 +908,14 @@ submodule _3gpp-ns-nrm-sliceprofile { reference "TS 22.104 clause 5"; type string; } + list positioning { + min-elements 1; + max-elements 1; + description "Specifies whether the RAN domain of the network slice + provides geo-localization methods or supporting methods."; + reference "Clause 3.4.20 of NG.116 [50]."; + uses PositioningRANSubnetGrp; + } } grouping SliceProfileGrp { -- GitLab From 209bd6ec1bf2d24d55c2bfb52e3dcf4f743fedbd Mon Sep 17 00:00:00 2001 From: "U-ERICSSON\\ETHBLL" Date: Mon, 30 Aug 2021 10:56:07 +0200 Subject: [PATCH 094/593] added cr numbers --- yang-models/_3gpp-ns-nrm-common.yang | 2 +- yang-models/_3gpp-ns-nrm-sliceprofile.yang | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/yang-models/_3gpp-ns-nrm-common.yang b/yang-models/_3gpp-ns-nrm-common.yang index 500328301..3b03adda2 100755 --- a/yang-models/_3gpp-ns-nrm-common.yang +++ b/yang-models/_3gpp-ns-nrm-common.yang @@ -17,7 +17,7 @@ module _3gpp-ns-nrm-common { Information model definitions for network slice NRM (chapter 6) "; - revision 2021-07-16 { reference CR-xxxx ; } + revision 2021-07-16 { reference CR-0566 ; } revision 2021-05-17 { description "Introduction of Common Data types"; reference "CR-0485"; diff --git a/yang-models/_3gpp-ns-nrm-sliceprofile.yang b/yang-models/_3gpp-ns-nrm-sliceprofile.yang index 22b54ff8b..cd5247d46 100755 --- a/yang-models/_3gpp-ns-nrm-sliceprofile.yang +++ b/yang-models/_3gpp-ns-nrm-sliceprofile.yang @@ -19,7 +19,7 @@ submodule _3gpp-ns-nrm-sliceprofile { Information model definitions for network slice NRM (chapter 6) "; - revision 2021-07-16 { reference CR-xxxx ; } + revision 2021-07-16 { reference CR-0566 ; } revision 2021-05-05 { description "replace perfReq with 3 new datatypes xxxSliceSubnetProfile"; reference "CR-0485"; -- GitLab From bd7a71dd2a52d40b4a6b0ee766e248f3603afd88 Mon Sep 17 00:00:00 2001 From: Brendan Hassett Date: Sun, 29 Aug 2021 14:01:41 +0200 Subject: [PATCH 095/593] S5-214115rev1 Update genericNrm.yaml --- OpenAPI/genericNrm.yaml | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/OpenAPI/genericNrm.yaml b/OpenAPI/genericNrm.yaml index 9355f53e9..20b71d0b1 100644 --- a/OpenAPI/genericNrm.yaml +++ b/OpenAPI/genericNrm.yaml @@ -1206,6 +1206,10 @@ components: $ref: '#/components/schemas/TraceJob-Multiple' AlarmList: $ref: '#/components/schemas/AlarmList-Single' + MnsRegistry: + type: array + items: + $ref: '#/components/schemas/MnsRegistry' ManagedElement-ncO: type: object properties: @@ -1342,6 +1346,18 @@ components: TraceJob: $ref: '#/components/schemas/TraceJob-Multiple' + MnsRegistry: + type: object + properties: + mnsLabel: + type: string + mnsType: + type: string + mnsVersion: + type: string + mnsAddress: + type: string + #-------- Definition of concrete IOCs -------------------------------------------- VsDataContainer-Single: -- GitLab From 983ca34d083b54b671febbf4c219ae143f1a31fa Mon Sep 17 00:00:00 2001 From: Brendan Hassett Date: Sun, 29 Aug 2021 14:03:23 +0200 Subject: [PATCH 096/593] Update genericNrm.yaml --- OpenAPI/genericNrm.yaml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/OpenAPI/genericNrm.yaml b/OpenAPI/genericNrm.yaml index 20b71d0b1..0911920a2 100644 --- a/OpenAPI/genericNrm.yaml +++ b/OpenAPI/genericNrm.yaml @@ -1208,8 +1208,8 @@ components: $ref: '#/components/schemas/AlarmList-Single' MnsRegistry: type: array - items: - $ref: '#/components/schemas/MnsRegistry' + items: + $ref: '#/components/schemas/MnsRegistry' ManagedElement-ncO: type: object properties: -- GitLab From bf894d087a3a0db4bc09065e02f0c90cab875af9 Mon Sep 17 00:00:00 2001 From: ruiyue Date: Tue, 17 Aug 2021 03:01:26 +0200 Subject: [PATCH 097/593] Update logicInterfaceId of EP_transport --- OpenAPI/sliceNrm.yaml | 16 ++++++++++++++-- 1 file changed, 14 insertions(+), 2 deletions(-) diff --git a/OpenAPI/sliceNrm.yaml b/OpenAPI/sliceNrm.yaml index 6e12a4d8b..18473078c 100644 --- a/OpenAPI/sliceNrm.yaml +++ b/OpenAPI/sliceNrm.yaml @@ -465,6 +465,18 @@ components: oneOf: - $ref: 'genericNrm.yaml#/components/schemas/Ipv4Addr' - $ref: 'genericNrm.yaml#/components/schemas/Ipv6Addr' + + LogicInterfaceInfo: + type: object + properties: + logicalInterfceType: + type: string + enum: + - VLAN + - MPLS + - Segment + logicalInterfceId: + type: string ServiceProfileList: type: array @@ -549,8 +561,8 @@ components: properties: ipAddress: $ref: '#/components/schemas/IpAddress' - logicInterfaceId: - type: string + logicInterfaceInfo: + $ref: '#/components/schemas/LogicInterfaceInfo' nextHopInfo: type: string qosProfile: -- GitLab From c54b7ede5186deb353f3541592cace6c91862ba4 Mon Sep 17 00:00:00 2001 From: ruiyue Date: Tue, 17 Aug 2021 02:53:23 +0200 Subject: [PATCH 098/593] Fix the issue caused by the updated NetworkSliceSubnet inheritence relationship --- OpenAPI/sliceNrm.yaml | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/OpenAPI/sliceNrm.yaml b/OpenAPI/sliceNrm.yaml index 18473078c..6c6f6a233 100644 --- a/OpenAPI/sliceNrm.yaml +++ b/OpenAPI/sliceNrm.yaml @@ -550,6 +550,18 @@ components: $ref: '#/components/schemas/SliceProfileList' epTransportRefList: $ref: 'genericNrm.yaml#/components/schemas/DnList' + priorityLabel: + type: integer + PerfMetricJob: + $ref: 'genericNrm.yaml#/components/schemas/PerfMetricJob-Multiple' + ThresholdMonitor: + $ref: 'genericNrm.yaml#/components/schemas/ThresholdMonitor-Multiple' + NtfSubscriptionControl: + $ref: 'genericNrm.yaml#/components/schemas/NtfSubscriptionControl-Multiple' + TraceJob: + $ref: 'genericNrm.yaml#/components/schemas/TraceJob-Multiple' + AlarmList: + $ref: 'genericNrm.yaml#/components/schemas/AlarmList-Single' EP_Transport-Single: allOf: -- GitLab From 04557f304d339bbe01564ceaa20b0be53e04f8d7 Mon Sep 17 00:00:00 2001 From: ruiyue Date: Tue, 24 Aug 2021 13:28:51 +0200 Subject: [PATCH 099/593] Update sliceNrm.yaml to remove AlarmList --- OpenAPI/sliceNrm.yaml | 2 -- 1 file changed, 2 deletions(-) diff --git a/OpenAPI/sliceNrm.yaml b/OpenAPI/sliceNrm.yaml index 6c6f6a233..156255cd0 100644 --- a/OpenAPI/sliceNrm.yaml +++ b/OpenAPI/sliceNrm.yaml @@ -560,8 +560,6 @@ components: $ref: 'genericNrm.yaml#/components/schemas/NtfSubscriptionControl-Multiple' TraceJob: $ref: 'genericNrm.yaml#/components/schemas/TraceJob-Multiple' - AlarmList: - $ref: 'genericNrm.yaml#/components/schemas/AlarmList-Single' EP_Transport-Single: allOf: -- GitLab From e093170350edc052bd71bd1a1c27f246a956112f Mon Sep 17 00:00:00 2001 From: ruiyue Date: Tue, 31 Aug 2021 06:06:51 +0200 Subject: [PATCH 100/593] Update sliceNrm.yaml to remove XXX Control IOC name contained by NetworkSliceSubnet --- OpenAPI/sliceNrm.yaml | 8 -------- 1 file changed, 8 deletions(-) diff --git a/OpenAPI/sliceNrm.yaml b/OpenAPI/sliceNrm.yaml index 156255cd0..046c85abe 100644 --- a/OpenAPI/sliceNrm.yaml +++ b/OpenAPI/sliceNrm.yaml @@ -552,14 +552,6 @@ components: $ref: 'genericNrm.yaml#/components/schemas/DnList' priorityLabel: type: integer - PerfMetricJob: - $ref: 'genericNrm.yaml#/components/schemas/PerfMetricJob-Multiple' - ThresholdMonitor: - $ref: 'genericNrm.yaml#/components/schemas/ThresholdMonitor-Multiple' - NtfSubscriptionControl: - $ref: 'genericNrm.yaml#/components/schemas/NtfSubscriptionControl-Multiple' - TraceJob: - $ref: 'genericNrm.yaml#/components/schemas/TraceJob-Multiple' EP_Transport-Single: allOf: -- GitLab From 43e7333f1ce4ebc7b90ad24789552f4d4730c8d8 Mon Sep 17 00:00:00 2001 From: ruiyue Date: Mon, 16 Aug 2021 11:22:08 +0200 Subject: [PATCH 101/593] Add YAML (Rest based) solution set for the CR S5-213508 which proposes to convert the 5QI characteristics datatype to IOC --- OpenAPI/5gcNrm.yaml | 51 ++++++++++++++++++++++++++------------------- 1 file changed, 29 insertions(+), 22 deletions(-) diff --git a/OpenAPI/5gcNrm.yaml b/OpenAPI/5gcNrm.yaml index fd61fca9d..50d31111a 100644 --- a/OpenAPI/5gcNrm.yaml +++ b/OpenAPI/5gcNrm.yaml @@ -265,26 +265,7 @@ components: type: integer exponent: type: integer - FiveQICharacteristics: - type: object - properties: - fiveQIValue: - type: integer - resourceType: - type: string - enum: - - GBR - - NonGBR - priorityLevel: - type: integer - packetDelayBudget: - type: integer - packetErrorRate: - $ref: '#/components/schemas/PacketErrorRate' - averagingWindow: - type: integer - maximumDataBurstVolume: - type: integer + GtpUPathDelayThresholdsType: @@ -1637,6 +1618,32 @@ components: items: $ref: '#/components/schemas/FiveQiDscpMapping' + FiveQICharacteristics-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - type: object + properties: + fiveQIValue: + type: integer + resourceType: + type: string + enum: + - GBR + - NonGBR + priorityLevel: + type: integer + packetDelayBudget: + type: integer + packetErrorRate: + $ref: '#/components/schemas/PacketErrorRate' + averagingWindow: + type: integer + maximumDataBurstVolume: + type: integer + FiveQICharacteristics-Multiple: + type: array + items: + $ref: '#/components/schemas/FiveQICharacteristics-Single' Configurable5QISet-Single: allOf: - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' @@ -1649,7 +1656,7 @@ components: configurable5QIs: type: array items: - $ref: '#/components/schemas/FiveQICharacteristics' + $ref: '#/components/schemas/FiveQICharacteristics-Multiple' Dynamic5QISet-Single: allOf: @@ -1663,7 +1670,7 @@ components: dynamic5QIs: type: array items: - $ref: '#/components/schemas/FiveQICharacteristics' + $ref: '#/components/schemas/FiveQICharacteristics-Multiple' GtpUPathQoSMonitoringControl-Single: allOf: -- GitLab From 54965ee45954807a4705045798f2fa83b09bc8d5 Mon Sep 17 00:00:00 2001 From: sunse Date: Mon, 16 Aug 2021 13:42:43 +0200 Subject: [PATCH 102/593] CR 0555 removing "isINEF" --- OpenAPI/5gcNrm.yaml | 2 -- 1 file changed, 2 deletions(-) diff --git a/OpenAPI/5gcNrm.yaml b/OpenAPI/5gcNrm.yaml index 50d31111a..042b94c04 100644 --- a/OpenAPI/5gcNrm.yaml +++ b/OpenAPI/5gcNrm.yaml @@ -1082,8 +1082,6 @@ components: $ref: '#/components/schemas/ManagedNFProfile' capabilityList: $ref: '#/components/schemas/CapabilityList' - isINEF: - type: boolean isCAPIFSup: type: boolean - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' -- GitLab From f06f97ef1f112a422ca81c89368fa78b0eaa3534 Mon Sep 17 00:00:00 2001 From: sunse Date: Mon, 16 Aug 2021 13:45:44 +0200 Subject: [PATCH 103/593] CR 0555 removing isINEF --- yang-models/_3gpp-5gc-nrm-neffunction.yang | 4 ---- 1 file changed, 4 deletions(-) diff --git a/yang-models/_3gpp-5gc-nrm-neffunction.yang b/yang-models/_3gpp-5gc-nrm-neffunction.yang index fdb701ed4..7ab28015d 100755 --- a/yang-models/_3gpp-5gc-nrm-neffunction.yang +++ b/yang-models/_3gpp-5gc-nrm-neffunction.yang @@ -43,10 +43,6 @@ module _3gpp-5gc-nrm-neffunction { reference "3GPP TS 23.003"; type string; } - - leaf isINEF { - type boolean; - } leaf isCAPIFSup { type boolean; -- GitLab From 07f79c78c2f908b4948e3fd139f255217d5393e9 Mon Sep 17 00:00:00 2001 From: "U-ERICSSON\\ETHBLL" Date: Thu, 23 Sep 2021 23:28:49 +0200 Subject: [PATCH 104/593] first part of S5-214053 --- yang-models/_3gpp-5g-common-yang-types.yang | 45 ++++++++++++++++++- yang-models/_3gpp-ns-nrm-networkslice.yang | 4 ++ .../_3gpp-ns-nrm-networkslicesubnet.yang | 5 +++ 3 files changed, 53 insertions(+), 1 deletion(-) diff --git a/yang-models/_3gpp-5g-common-yang-types.yang b/yang-models/_3gpp-5g-common-yang-types.yang index 9c07b5cf8..7101b213c 100755 --- a/yang-models/_3gpp-5g-common-yang-types.yang +++ b/yang-models/_3gpp-5g-common-yang-types.yang @@ -12,6 +12,7 @@ module _3gpp-5g-common-yang-types { network slicing."; reference "3GPP TS 28.541"; + revision 2021-08-05 { reference S5-214053/CR-0518; } revision 2020-11-05 { reference CR-0412 ; } revision 2019-10-20 { reference "Initial version."; } @@ -72,7 +73,8 @@ module _3gpp-5g-common-yang-types { enum INDIRECT_COMMUNICATION_WITH_DEDICATED_DISCOVERY { value 3; - description "Communication to NF service discovered by NRF through SCP as a proxy."; + description "Communication to NF service discovered by NRF through SCP + as a proxy."; } } @@ -102,4 +104,45 @@ module _3gpp-5g-common-yang-types { } } + typedef EnergySavingLoadThresholdT { + type uint32 { + range 0..10000; + } + units 1/10000; + } + + typedef EnergySavingTimeDurationT { + type uint32 { + range 0..900; + } + units seconds; + } + + typedef PhysCellID { + type uint32 { + range "0..1007"; + } + reference "clause 7.4.2 of TS 38.211"; + } + + typedef UTC24TimeOfDayT { + description "Time of day in HH:MM or H:MM 24-hour format per UTC + time zone."; + type string { + pattern "(([01]?[0-9])|(2[0-3])):([0-5][0-9])"; + } + } + + typedef DayOfWeekT { + type enumeration { + enum Monday; + enum Tuesday; + enum Wednesday; + enum Thursday; + enum Friday; + enum Saturday; + enum Sunday; + } + } + } \ No newline at end of file diff --git a/yang-models/_3gpp-ns-nrm-networkslice.yang b/yang-models/_3gpp-ns-nrm-networkslice.yang index d7b0d5044..22ad9c7c5 100755 --- a/yang-models/_3gpp-ns-nrm-networkslice.yang +++ b/yang-models/_3gpp-ns-nrm-networkslice.yang @@ -20,6 +20,10 @@ module _3gpp-ns-nrm-networkslice { Information model definitions for network slice NRM (chapter 6) "; + revision 2020-06-02 { + reference "CR-0485, CR-0508"; + } + revision 2020-02-19 { description "Introduction of YANG definitions for network slice NRM"; reference "CR-0458"; diff --git a/yang-models/_3gpp-ns-nrm-networkslicesubnet.yang b/yang-models/_3gpp-ns-nrm-networkslicesubnet.yang index 005340362..cb66d1b71 100755 --- a/yang-models/_3gpp-ns-nrm-networkslicesubnet.yang +++ b/yang-models/_3gpp-ns-nrm-networkslicesubnet.yang @@ -23,6 +23,11 @@ module _3gpp-ns-nrm-networkslicesubnet { Information model definitions for network slice NRM (chapter 6) "; + revision 2021-05-05 { + description "replace perfReq with 3 new datatypes xxxSliceSubnetProfile"; + reference "CR-0485"; + } + revision 2020-02-19 { description "Introduction of YANG definitions for network slice NRM"; reference "CR-0458"; -- GitLab From 8efa9cbe0601b2029e6a3c986fbc7f2eee2603ea Mon Sep 17 00:00:00 2001 From: "U-ERICSSON\\ETHBLL" Date: Fri, 24 Sep 2021 00:06:41 +0200 Subject: [PATCH 105/593] S5-214053 --- .../_3gpp-nr-nrm-cesmanagementfunction.yang | 413 +++++++++--------- ...3gpp-nr-nrm-cpciconfigurationfunction.yang | 79 ++-- .../_3gpp-nr-nrm-desmanagementfunction.yang | 377 +++++++--------- yang-models/_3gpp-nr-nrm-dmrofunction.yang | 93 ++-- ...3gpp-nr-nrm-dpciconfigurationfunction.yang | 71 +-- ...3gpp-nr-nrm-drachoptimizationfunction.yang | 142 +++--- 6 files changed, 580 insertions(+), 595 deletions(-) diff --git a/yang-models/_3gpp-nr-nrm-cesmanagementfunction.yang b/yang-models/_3gpp-nr-nrm-cesmanagementfunction.yang index 7235d704b..f438d0b22 100755 --- a/yang-models/_3gpp-nr-nrm-cesmanagementfunction.yang +++ b/yang-models/_3gpp-nr-nrm-cesmanagementfunction.yang @@ -1,256 +1,269 @@ module _3gpp-nr-nrm-cesmanagementfunction { yang-version 1.1; namespace "urn:3gpp:sa5:_3gpp-nr-nrm-cesmanagementfunction"; - prefix "cesmanagementfunction3gpp"; + prefix "cesmf3gpp"; import _3gpp-common-subnetwork { prefix subnet3gpp; } import _3gpp-common-top { prefix top3gpp; } import _3gpp-nr-nrm-nrcellcu { prefix nrcellcu3gpp; } import _3gpp-nr-nrm-gnbcucpfunction { prefix gnbcucp3gpp; } import _3gpp-common-managed-element { prefix me3gpp; } - + import _3gpp-5g-common-yang-types { prefix type5g3gpp; } organization "3GPP SA5"; contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; - description "Defines the YANG mapping of the CESManagementFunction Information Object Class - (IOC) that is part of the NR Network Resource Model (NRM)."; + description "Defines the YANG mapping of the CESManagementFunction + Information Object Class (IOC) that is part of the NR Network Resource Model + (NRM)."; reference "3GPP TS 28.541 5G Network Resource Model (NRM)"; + revision 2021-08-05 { reference S5-214053/CR-0518; } revision 2020-05-08 { reference S5-203316; } + grouping loadTimeThresholdGrp { + description "Represents the the traffic load threshold and the time + duration."; + leaf loadThreshold { + description "This attribute is used by distributed ES algorithms to allow + a cell to enter the energySaving state."; + type type5g3gpp:EnergySavingLoadThresholdT; + } + leaf timeDuration { + description "The time duration indicates how long the traffic load + (either for UL or DL) in the cell needs to have been above the + threshold to wake up one or more original cells which have been + provided backup coverage by the candidate cell."; + type type5g3gpp:EnergySavingLoadThresholdT; + } + } grouping CESManagementFunctionGrp { description "Represents the CESManagementFunction IOC."; - reference "3GPP TS 28.541"; - uses top3gpp:Top_Grp; leaf cesSwitch { - description "This attribute determines whether the Centralized SON energy saving function is enabled or disabled."; - type boolean; + description "This attribute determines whether the Centralized SON energy + saving function is enabled or disabled."; + type boolean; + default true; } - list intraRatEsActivationOriginalCellLoadParameters { - key loadThreshold; - description "This attributes is relevant, if the cell acts as an original cell.This attribute indicates the traffic load threshold and the time duration, which are used by distributed ES algorithms to allow a cell to enter the energySaving state."; - leaf loadThreshold {type int32;} - container attributes { - uses IntraRatEsActivationOriginalCellLoadParametersGrp; - } + list intraRatEsActivationOriginalCellLoadParameters { + description "This attributes is relevant, if the cell acts as an original + cell.This attribute indicates the traffic load threshold and the time + duration, which are used by distributed ES algorithms to allow a cell + to enter the energySaving state. The time duration indicates how long + the load needs to have been below the threshold."; + key loadThreshold; + min-elements 1; + max-elements 1; + uses loadTimeThresholdGrp; } - - list intraRatEsActivationCandidateCellsLoadParameters { - key loadThreshold; - description "This attribute indicates the traffic load threshold and the time duration, which are used by distributed ES algorithms level to allow a n ‘original’ cell to enter the energySaving state."; - leaf loadThreshold {type int32;} - container attributes { - uses IntraRatEsActivationCandidateCellsLoadParametersGrp; - } + list intraRatEsActivationCandidateCellsLoadParameters { + description "This attributes is relevant, if the cell acts as a candidate + cell. This attribute indicates the traffic load threshold and the time + duration, which are used by distributed ES algorithms level to allow an + 'original' cell to enter the energySaving state. Threshold and duration + are applied to the candidate cell(s) which will provides coverage + backup of an original cell when it is in the energySaving state. The + threshold applies in the same way for a candidate cell, no matter for + which original cell it will provide backup coverage. + The time duration indicates how long the traffic in the candidate cell + needs to have been below the threshold before any original cells which + will be provided backup coverage by the candidate cell enters energy + saving state."; + key loadThreshold; + min-elements 1; + max-elements 1; + uses loadTimeThresholdGrp; } - list intraRatEsDeactivationCandidateCellsLoadParameters { - key loadThreshold; - description "This attributes is relevant, if the cell acts as a candidate cell.This attribute indicates the traffic load threshold and the time duration which is used by distributed ES algorithms to allow a cell to leave the energySaving state."; - leaf loadThreshold {type int32;} - container attributes { - uses IntraRatEsDeactivationCandidateCellsLoadParametersGrp; - } + list intraRatEsDeactivationCandidateCellsLoadParameters { + description "This attributes is relevant, if the cell acts as a candidate + cell. This attribute indicates the traffic load threshold and the time + duration which is used by distributed ES algorithms to allow a cell to + leave the energySaving state. Threshold and time duration are applied + to the candidate cell when it which provides coverage backup for the + cell in energySaving state. The threshold applies in the same way for a + candidate cell, no matter for which original cell it provides backup + coverage. + The time duration indicates how long the traffic in the candidate cell + needs to have been above the threshold to wake up one or more original + cells which have been provided backup coverage by the candidate cell."; + key loadThreshold; + min-elements 1; + max-elements 1; + uses loadTimeThresholdGrp; } - list esNotAllowedTimePeriod { - key startTimeandendTime; - description "This attribute indicates a list of time periods during which inter-RAT energy saving is not allowed."; - leaf startTimeandendTime {type string;} - container attributes { - uses EsNotAllowedTimePeriodGrp; - } - } + list esNotAllowedTimePeriod { + description "This is a list of time periods during which + inter-RAT energy saving is not allowed"; + key idx; - list interRatEsActivationOriginalCellParameters { - key loadThreshold; - description "This attribute indicates the traffic load threshold and the time duration, which are used by distributed inter-RAT ES algorithms to allow an original cell to enter the energySaving state."; - leaf loadThreshold {type int32;} - container attributes { - uses InterRatEsActivationOriginalCellParametersGrp; - } + leaf idx { + type uint32; + } + uses EsNotAllowedTimePeriodGrp; } - list interRatEsActivationCandidateCellParameters { - key loadThreshold; - description "This attribute indicates the traffic load threshold and the time duration, which are used by distributed inter-RAT ES algorithms to allow an original cell to enter the energySaving state."; - leaf loadThreshold {type int32;} - container attributes { - uses InterRatEsActivationCandidateCellParametersGrp; - } + list interRatEsActivationOriginalCellParameters { + description "This attribute is relevant, if the cell acts as an original + cell. This attribute indicates the traffic load threshold and the time + duration, which are used by distributed inter-RAT ES algorithms to + allow an original cell to enter the energySaving state. The time + duration indicates how long the traffic load (both for UL and DL) needs + to have been below the threshold. + + In case the original cell is an EUTRAN cell, the load information + refers to Composite Available Capacity Group IE (see 3GPP TS 36.413 + [12] Annex B.1.5) and the following applies: + Load = (100 - 'Capacity Value' ) * 'Cell Capacity Class Value', + where 'Capacity Value' and 'Cell Capacity Class Value' are defined in + 3GPP TS 36.423 [7]. + + In case the original cell is a UTRAN cell, the load information refers + to Cell Load Information Group IE (see 3GPP TS 36.413 [12] Annex B.1.5) + and the following applies: + Load= 'Load Value' * 'Cell Capacity Class Value', where 'Load Value' + and 'Cell Capacity Class Value' are defined in 3GPP TS 25.413 [19]. + + If the 'Cell Capacity Class Value' is not known, then 'Cell Capacity + Class Value' should be set to 1 when calculating the load, and the load + threshold should be set in range of 0..100."; + key loadThreshold; + min-elements 1; + max-elements 1; + uses loadTimeThresholdGrp; } - list interRatEsDeactivationCandidateCellParameters { - key loadThreshold; - description "This attribute indicates the traffic load threshold and the time duration which is used by distributed inter-RAT ES algorithms to allow an original cell to leave the energySaving state."; - leaf loadThreshold {type int32;} - container attributes { - uses InterRatEsDeactivationCandidateCellParametersGrp; - } + list interRatEsActivationCandidateCellParameters { + description "This attribute is relevant, if the cell acts as a candidate + cell. This attribute indicates the traffic load threshold and the time + duration, which are used by distributed inter-RAT ES algorithms to + allow an original cell to enter the energySaving state. Threshold and + time duration are applied to the candidate cell(s) which will provides + coverage backup of an original cell when it is in the energySaving + state. The time duration indicates how long the traffic load (both for + UL and DL) in the candidate cell needs to have been below the threshold + before any original cells which will be provided backup coverage by the + candidate cell enters energySaving state. + + In case the candidate cell is a UTRAN or GERAN cell, the load + information refers to Cell Load Information Group IE (see 3GPP TS + 36.413 [12] Annex B.1.5) and the following applies: + Load= 'Load Value' * 'Cell Capacity Class Value', where 'Load Value' + and 'Cell Capacity Class Value' are defined in 3GPP TS 25.413 [19] + (for UTRAN) / TS 48.008 [20] (for GERAN). + + If the 'Cell Capacity Class Value' is not known, then 'Cell Capacity + Class Value' should be set to 1 when calculating the load, and the load + threshold should be set in range of 0..100."; + min-elements 1; + max-elements 1; + key loadThreshold; + uses loadTimeThresholdGrp; } + list interRatEsDeactivationCandidateCellParameters { + description "This attribute is relevant, if the cell acts as a candidate + cell. This attribute indicates the traffic load threshold and the time + duration which is used by distributed inter-RAT ES algorithms to allow + an original cell to leave the energySaving state. Threshold and time + duration are applied to the candidate cell which provides coverage + backup for the cell in energySaving state. + The time duration indicates how long the traffic load (either for UL or + DL) in the candidate cell needs to have been above the threshold to + wake up one or more original cells which have been provided backup + coverage by the candidate cell. + + For the load see the definition of + interRatEsActivationCandidateCellParameters. + + This attribute indicates the traffic load threshold and the time + duration which is used by distributed inter-RAT ES algorithms to allow + an original cell to leave the energySaving state."; + key loadThreshold; + min-elements 1; + max-elements 1; + uses loadTimeThresholdGrp; + } leaf energySavingState { - description "Specifies the status regarding the energy saving in the cell. If the value of energySavingControl is toBeEnergySaving, then it shall be tried to achieve the value isEnergySaving for the energySavingState. If the value of energySavingControl is toBeNotEnergySaving, then it shall be tried to achieve the value isNotEnergySaving for the energySavingState. "; - type enumeration{ - enum isNotEnergySaving; - enum isEnergySaving; - } + description "Specifies the status regarding the energy saving in the + cell. If the value of energySavingControl is toBeEnergySaving, then it + shall be tried to achieve the value isEnergySaving for the + energySavingState. If the value of energySavingControl is + toBeNotEnergySaving, then it shall be tried to achieve the value + isNotEnergySaving for the energySavingState. "; + type enumeration{ + enum isNotEnergySaving; + enum isEnergySaving; + } } - leaf energySavingControl { - description "This attribute allows the Cross Domain-Centralized SON energy saving function to initiate energy saving activation or deactivation."; - type enumeration{ - enum toBeEnergySaving; - enum toBeNotEnergySaving; - } - } - - - } - grouping IntraRatEsActivationOriginalCellLoadParametersGrp { - description "Represents the the traffic load threshold and the time duration."; - - leaf loadThreshold { - description "This attribute is used by distributed ES algorithms to allow a cell to enter the energySaving state."; - type int32 { range "0..10000"; } - units "1"; - } - - - leaf timeDuration { - description " The time duration indicates how long the load needs to have been below the threshold."; - type int32 { range "0..900"; } - units "1"; - } - } - - grouping IntraRatEsActivationCandidateCellsLoadParametersGrp { - description "Represents the the traffic load threshold and the time duration."; - - leaf loadThreshold { - description "This attribute is used by distributed ES algorithms to allow a cell to enter the energySaving state."; - type int32 { range "0..10000"; } - units "1"; - } - - - leaf timeDuration { - description " The time duration indicates how long the load needs to have been below the threshold."; - type int32 { range "0..900"; } - units "1"; - } - } - - grouping IntraRatEsDeactivationCandidateCellsLoadParametersGrp { - description "Represents the the traffic load threshold and the time duration."; - - leaf loadThreshold { - description "This attribute is used by distributed ES algorithms to allow a cell to enter the energySaving state."; - type int32 { range "0..10000"; } - units "1"; - } - - - leaf timeDuration { - description " The time duration indicates how long the load needs to have been below the threshold."; - type int32 { range "0..900"; } - units "1"; + description "This attribute allows the Cross Domain-Centralized SON + energy saving function to initiate energy saving activation or + deactivation."; + type enumeration{ + enum toBeEnergySaving; + enum toBeNotEnergySaving; + } } } grouping EsNotAllowedTimePeriodGrp { - description "Represents the the traffic load threshold and the time duration."; - - leaf startTimeandendTime { - description "This field indicate valid UTC time."; - type string; + leaf startTime { + description "Start of not allowed time period in UTC time zone. + If set, the endTime must also be set. If not set, this is + interpreted as around the clock."; + must ../endTime; + type type5g3gpp:UTC24TimeOfDayT; } - - - leaf periodOfDay { - description "This field indicate the period of day."; - type string; + leaf endTime { + description "If endTime has a lower value than startTime, it will + be interpreted as referring to the following day."; + must ../startTime; + type type5g3gpp:UTC24TimeOfDayT; } - - leaf daysOfWeekList { - description "This field indicate the list of weekday."; - type string; - } - - leaf listoftimeperiods { - description "This field indicate the list of time periods."; - type string; + leaf-list daysOfWeek { + description "Specifies that the not allowed periods are only + applicable to the specified days in UTC timezone. Every day if + not set."; + type type5g3gpp:DayOfWeekT; } - } - grouping InterRatEsActivationOriginalCellParametersGrp { - description "Represents the the traffic load threshold and the time duration."; - - leaf loadThreshold { - description "The time duration indicates how long the traffic load (both for UL and DL) needs to have been below the threshold."; - type int32 { range "0..10000"; } - units "1"; - } - - - leaf timeDuration { - description " The time duration indicates how long the load needs to have been below the threshold."; - type int32 { range "0..900"; } - units "1"; + grouping CESManagementFunctionSubtree { + list CESManagementFunction { + description "This IOC represents the management capabilities of + Centralized SON Energy Saving (ES) functions. This is provided for + Energy Saving purposes. + + In the case where multiple CESManagement MOIs exist at different + levels of the containment tree, the CESManagement MOI at the lower + level overrides the CESManagement MOIs at higher level(s) of the + same containment tree."; + reference "clause 6.2.2 in TS 28.310"; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses CESManagementFunctionGrp; + } } } - grouping InterRatEsActivationCandidateCellParametersGrp { - description "Represents the the traffic load threshold and the time duration."; - - leaf loadThreshold { - description "This attribute is used by distributed ES algorithms to allow a cell to enter the energySaving state."; - type int32 { range "0..10000"; } - units "1"; - } - - - leaf timeDuration { - description "The time duration indicates how long the traffic load (both for UL and DL) in the candidate cell needs to have been below the threshold before any original cells which will be provided backup coverage by the candidate cell enters energySaving state."; - type int32 { range "0..900"; } - units "1"; - } - } - - grouping InterRatEsDeactivationCandidateCellParametersGrp { - description "Represents the the traffic load threshold and the time duration."; - - leaf loadThreshold { - description "This attribute is used by distributed ES algorithms to allow a cell to enter the energySaving state."; - type int32 { range "0..10000"; } - units "1"; - } - - - leaf timeDuration { - description "The time duration indicates how long the traffic load (either for UL or DL) in the candidate cell needs to have been above the threshold to wake up one or more original cells which have been provided backup coverage by the candidate cell."; - type int32 { range "0..900"; } - units "1"; - } - } - - - augment "/me3gpp:ManagedElement/gnbcucp3gpp:GNBCUCPFunction/nrcellcu3gpp:NRCellCU" { + augment "/me3gpp:ManagedElement/gnbcucp3gpp:GNBCUCPFunction/"+ + "nrcellcu3gpp:NRCellCU" { if-feature nrcellcu3gpp:CESManagementFunction; - uses CESManagementFunctionGrp; - } - augment "/me3gpp:ManagedElement" { + uses CESManagementFunctionSubtree; + } + augment /me3gpp:ManagedElement { if-feature me3gpp:CESManagementFunction; - uses CESManagementFunctionGrp; - } - augment "/subnet3gpp:SubNetwork" { + uses CESManagementFunctionSubtree; + } + augment /subnet3gpp:SubNetwork { if-feature subnet3gpp:CESManagementFunction; - uses CESManagementFunctionGrp; - } + uses CESManagementFunctionSubtree; + } } \ No newline at end of file diff --git a/yang-models/_3gpp-nr-nrm-cpciconfigurationfunction.yang b/yang-models/_3gpp-nr-nrm-cpciconfigurationfunction.yang index 918c0581f..2a704d3aa 100755 --- a/yang-models/_3gpp-nr-nrm-cpciconfigurationfunction.yang +++ b/yang-models/_3gpp-nr-nrm-cpciconfigurationfunction.yang @@ -1,7 +1,7 @@ module _3gpp-nr-nrm-cpciconfigurationfunction { yang-version 1.1; namespace "urn:3gpp:sa5:_3gpp-nr-nrm-cpciconfigurationfunction"; - prefix "cpciconfigurationfunction3gpp"; + prefix "cpcicf3gpp"; import _3gpp-common-subnetwork { prefix subnet3gpp; } import _3gpp-common-top { prefix top3gpp; } @@ -11,57 +11,64 @@ module _3gpp-nr-nrm-cpciconfigurationfunction { organization "3GPP SA5"; contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; - description "Defines the YANG mapping of the CPCIConfigurationFunction Information Object Class - (IOC) that is part of the NR Network Resource Model (NRM)."; + description "Represents the CPCIConfigurationFunction Information Object + Class(IOC) that is part of the NR Network Resource Model."; reference "3GPP TS 28.541 5G Network Resource Model (NRM)"; + revision 2021-08-05 { reference S5-214053/CR-0518; } revision 2020-05-08 { reference S5-203316; } - grouping CPCIConfigurationFunctionGrp { - description "Represents the CPCICONFIGURATIONFunction IOC."; - reference "3GPP TS 28.541"; - uses top3gpp:Top_Grp; - - - list cSonPciList { - key NRPci; - description " This holds a list of physical cell identities that can be assigned to the pci attribute by gNB. The assignment algorithm is not specified. This attribute shall be supported if and only if the C-SON PCI configuration is supported."; - leaf NRPci {type int32;} - container attributes { - uses CSonPciListGrp; - } - } - + description "Represents the CPCIConfigurationFunction IOC."; leaf cPciConfigurationControl { - description "This attribute determines whether the Centralized SON PCI configuration function is enabled or disabled."; + description "This attribute determines whether the Centralized SON + PCI configuration function is enabled or disabled."; type boolean; + mandatory true; } + leaf-list cSonPciList { + type int32 { range "0..1007"; } + min-elements 1; + description "Holds a list of physical cell identities that can be + assigned to the pci attribute by gNB. The assignment algorithm is not + specified. + See TS 38.211 clause 7.4.2.1 for legal values of pci. + This attribute shall be supported if and only if the C-SON PCI + configuration is supported."; + reference "See TS 38.211 clause 7.4.2.1"; + } } - grouping CSonPciListGrp { - description "Represents the C-SON PCI list for the PCI configuration function."; - - leaf NRPci { - description "This attribute determines the NR PCI."; - type int32 { range "0..1007"; } - units "1"; + grouping CPCIConfigurationFunctionSubtree { + list CPCIConfigurationFunction { + description "This IOC contains attributes to support the Cross + Domain-Centralized SON function of PCI configuration + + In the case where multiple CPCIConfiguration MOIs exist at different + levels of the containment tree, the CPCIConfiguration MOI at the lower + level overrides the CPCIConfiguration MOIs at higher level(s) of the + same containment tree."; + reference "clause 7.2.1 in TS 28.313"; + key id; + uses top3gpp:Top_Grp ; + container attributes { + uses CPCIConfigurationFunctionGrp ; + } } } - - augment "/me3gpp:ManagedElement/gnbdu3gpp:GNBDUFunction/nrcelldu3gpp:NRCellDU" { + augment /me3gpp:ManagedElement/gnbdu3gpp:GNBDUFunction/nrcelldu3gpp:NRCellDU { if-feature nrcelldu3gpp:CPCIConfigurationFunction; - uses CPCIConfigurationFunctionGrp; - } - augment "/me3gpp:ManagedElement" { + uses CPCIConfigurationFunctionSubtree; + } + augment /me3gpp:ManagedElement { if-feature me3gpp:CPCIConfigurationFunction; - uses CPCIConfigurationFunctionGrp; - } - augment "/subnet3gpp:SubNetwork" { + uses CPCIConfigurationFunctionSubtree; + } + augment /subnet3gpp:SubNetwork { if-feature subnet3gpp:CPCIConfigurationFunction; - uses CPCIConfigurationFunctionGrp; - } + uses CPCIConfigurationFunctionSubtree; + } } \ No newline at end of file diff --git a/yang-models/_3gpp-nr-nrm-desmanagementfunction.yang b/yang-models/_3gpp-nr-nrm-desmanagementfunction.yang index a69c94e79..6df736c4d 100755 --- a/yang-models/_3gpp-nr-nrm-desmanagementfunction.yang +++ b/yang-models/_3gpp-nr-nrm-desmanagementfunction.yang @@ -1,261 +1,200 @@ module _3gpp-nr-nrm-desmanagementfunction { yang-version 1.1; namespace "urn:3gpp:sa5:_3gpp-nr-nrm-desmanagementfunction"; - prefix "desmanagementfunction3gpp"; - + prefix "desmf3gpp"; import _3gpp-common-top { prefix top3gpp; } import _3gpp-nr-nrm-gnbcucpfunction { prefix gnbcucp3gpp; } import _3gpp-common-managed-element { prefix me3gpp; } import _3gpp-nr-nrm-nrcellcu { prefix nrcellcu3gpp; } import _3gpp-common-subnetwork { prefix subnet3gpp; } - + import _3gpp-5g-common-yang-types { prefix type5g3gpp; } organization "3GPP SA5"; contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; - description "Defines the YANG mapping of the DESManagementFunction Information Object Class - (IOC) that is part of the NR Network Resource Model (NRM)."; + description "Defines the YANG mapping of the DESManagementFunction + Information Object Class (IOC) that is part of the NR Network Resource + Model (NRM)."; reference "3GPP TS 28.541 5G Network Resource Model (NRM)"; + revision 2021-08-05 { reference S5-214053/CR-0518; } revision 2020-05-08 { reference S5-203316; } - - grouping DESManagementFunctionGrp { - description "Represents the DESManagementFunction IOC."; - reference "3GPP TS 28.541"; - uses top3gpp:Top_Grp; - - leaf desSwitch { - description "This attribute determines whether the Distributed SON energy saving function is enabled or disabled."; - type boolean; - } - - list intraRatEsActivationOriginalCellLoadParameters { - key loadThreshold; - description "This attributes is relevant, if the cell acts as an original cell.This attribute indicates the traffic load threshold and the time duration, which are used by distributed ES algorithms to allow a cell to enter the energySaving state."; - leaf loadThreshold {type int32;} - container attributes { - uses IntraRatEsActivationOriginalCellLoadParametersGrp; - } - } - - - list intraRatEsActivationCandidateCellsLoadParameters { - key loadThreshold; - description "This attribute indicates the traffic load threshold and the time duration, which are used by distributed ES algorithms level to allow a n 'original' cell to enter the energySaving state."; - leaf loadThreshold {type int32;} - container attributes { - uses IntraRatEsActivationCandidateCellsLoadParametersGrp; - } - } - - list intraRatEsDeactivationCandidateCellsLoadParameters { - key loadThreshold; - description "This attributes is relevant, if the cell acts as a candidate cell.This attribute indicates the traffic load threshold and the time duration which is used by distributed ES algorithms to allow a cell to leave the energySaving state."; - leaf loadThreshold {type int32;} - container attributes { - uses IntraRatEsDeactivationCandidateCellsLoadParametersGrp; - } - } - - list esNotAllowedTimePeriod { - key startTimeandendTime; - description "This attribute indicates a list of time periods during which inter-RAT energy saving is not allowed."; - leaf startTimeandendTime {type string;} - container attributes { - uses EsNotAllowedTimePeriodGrp; - } - } - - list interRatEsActivationOriginalCellParameters { - key loadThreshold; - description "This attribute indicates the traffic load threshold and the time duration, which are used by distributed inter-RAT ES algorithms to allow an original cell to enter the energySaving state."; - leaf loadThreshold {type int32;} - container attributes { - uses InterRatEsActivationOriginalCellParametersGrp; - } - } - - list interRatEsActivationCandidateCellParameters { - key loadThreshold; - description "This attribute indicates the traffic load threshold and the time duration, which are used by distributed inter-RAT ES algorithms to allow an original cell to enter the energySaving state."; - leaf loadThreshold {type int32;} - container attributes { - uses InterRatEsActivationCandidateCellParametersGrp; - } - } - - list interRatEsDeactivationCandidateCellParameters { - key loadThreshold; - description "This attribute indicates the traffic load threshold and the time duration which is used by distributed inter-RAT ES algorithms to allow an original cell to leave the energySaving state."; - leaf loadThreshold {type int32;} - container attributes { - uses InterRatEsDeactivationCandidateCellParametersGrp; - } - } - - leaf energySavingState { - description "Specifies the status regarding the energy saving in the cell."; - type enumeration { - enum isNotEnergySaving; - enum isEnergySaving; - } - } - - leaf isProbingCapable { - description " This attribute indicates whether this cell is capable of performing the ES probing procedure."; - type enumeration{ - enum yes; - enum no; - } - } - - } - - grouping IntraRatEsActivationOriginalCellLoadParametersGrp { - description "Represents the the traffic load threshold and the time duration."; + grouping loadTimeThresholdGrp { + description "Represents the the traffic load threshold and the time + duration."; leaf loadThreshold { - description "This attribute is used by distributed ES algorithms to allow a cell to enter the energySaving state."; - type int32 { range "0..10000"; } - units "1"; + description "This attribute is used by distributed ES algorithms to allow + a cell to enter the energySaving state."; + type type5g3gpp:EnergySavingLoadThresholdT; } - - leaf timeDuration { - description " The time duration indicates how long the load needs to have been below the threshold."; - type int32 { range "0..900"; } - units "1"; + description "The time duration indicates how long the traffic load + (either for UL or DL) in the cell needs to have been above the + threshold to wake up one or more original cells which have been + provided backup coverage by the candidate cell."; + type type5g3gpp:EnergySavingTimeDurationT; } } - grouping IntraRatEsActivationCandidateCellsLoadParametersGrp { - description "Represents the the traffic load threshold and the time duration."; - - leaf loadThreshold { - description "This attribute is used by distributed ES algorithms to allow a cell to enter the energySaving state."; - type int32 { range "0..10000"; } - units "1"; - } - + grouping DESManagementFunctionGrp { + description "Represents the DESManagementFunction IOC."; - leaf timeDuration { - description " The time duration indicates how long the load needs to have been below the threshold."; - type int32 { range "0..900"; } - units "1"; + leaf desSwitch { + description "This attribute determines whether the Distributed SON + energy saving function is enabled or disabled."; + type boolean; + } + + list intraRatEsActivationOriginalCellLoadParameters { + description "This attributes is relevant, if the cell acts as an original + cell. This attribute indicates the traffic load threshold and the time + duration, which are used by distributed ES algorithms to allow a cell + to enter the energySaving state."; + key loadThreshold; + min-elements 1; + max-elements 1; + uses loadTimeThresholdGrp; + } + + list intraRatEsActivationCandidateCellsLoadParameters { + description "This attribute indicates the traffic load threshold and the + time duration, which are used by distributed ES algorithms level to + allow an 'original' cell to enter the energySaving state."; + key loadThreshold; + min-elements 1; + max-elements 1; + uses loadTimeThresholdGrp; + } + + list intraRatEsDeactivationCandidateCellsLoadParameters { + description "This attributes is relevant, if the cell acts as a candidate + cell.This attribute indicates the traffic load threshold and the time + duration which is used by distributed ES algorithms to allow a cell to + leave the energySaving state."; + key loadThreshold; + min-elements 1; + max-elements 1; + uses loadTimeThresholdGrp; + } + + list esNotAllowedTimePeriod { + description "This is a list of time periods during which + inter-RAT energy saving is not allowed"; + key idx; + + leaf idx { + type uint32; + } + uses EsNotAllowedTimePeriodGrp; + } + + list interRatEsActivationOriginalCellParameters { + description "This attribute indicates the traffic load threshold and the + time duration, which are used by distributed inter-RAT ES algorithms to + allow an original cell to enter the energySaving state."; + key loadThreshold; + min-elements 1; + max-elements 1; + uses loadTimeThresholdGrp; + } + + list interRatEsActivationCandidateCellParameters { + description "This attribute indicates the traffic load threshold and the + time duration, which are used by distributed inter-RAT ES algorithms to + allow an original cell to enter the energySaving state."; + key loadThreshold; + min-elements 1; + max-elements 1; + uses loadTimeThresholdGrp; + } + + list interRatEsDeactivationCandidateCellParameters { + description "This attribute indicates the traffic load threshold and the + time duration which is used by distributed inter-RAT ES algorithms to + allow an original cell to leave the energySaving state."; + key loadThreshold; + min-elements 1; + max-elements 1; + uses loadTimeThresholdGrp; } - } - - grouping IntraRatEsDeactivationCandidateCellsLoadParametersGrp { - description "Represents the the traffic load threshold and the time duration."; - leaf loadThreshold { - description "This attribute is used by distributed ES algorithms to allow a cell to enter the energySaving state."; - type int32 { range "0..10000"; } - units "1"; + leaf energySavingState { + description "Specifies the status regarding the energy saving in the + cell."; + type enumeration { + enum isNotEnergySaving; + enum isEnergySaving; + } } - - leaf timeDuration { - description " The time duration indicates how long the load needs to have been below the threshold."; - type int32 { range "0..900"; } - units "1"; - } + leaf isProbingCapable { + description "This attribute indicates whether this cell is capable of + performing the ES probing procedure."; + type enumeration{ + enum yes; + enum no; + } + } } grouping EsNotAllowedTimePeriodGrp { - description "Represents the the traffic load threshold and the time duration."; - - leaf startTimeandendTime { - description "This field indicate valid UTC time."; - type string; - } - - - leaf periodOfDay { - description "This field indicate the period of day."; - type string; - } - - leaf daysOfWeekList { - description "This field indicate the list of weekday."; - type string; - } - - leaf listoftimeperiods { - description "This field indicate the list of time periods."; - type string; - } - - } - - grouping InterRatEsActivationOriginalCellParametersGrp { - description "Represents the the traffic load threshold and the time duration."; - - leaf loadThreshold { - description "The time duration indicates how long the traffic load (both for UL and DL) needs to have been below the threshold."; - type int32 { range "0..10000"; } - units "1"; - } - - - leaf timeDuration { - description " The time duration indicates how long the load needs to have been below the threshold."; - type int32 { range "0..900"; } - units "1"; - } - } - - grouping InterRatEsActivationCandidateCellParametersGrp { - description "Represents the the traffic load threshold and the time duration."; - - leaf loadThreshold { - description "This attribute is used by distributed ES algorithms to allow a cell to enter the energySaving state."; - type int32 { range "0..10000"; } - units "1"; - } - - - leaf timeDuration { - description "The time duration indicates how long the traffic load (both for UL and DL) in the candidate cell needs to have been below the threshold before any original cells which will be provided backup coverage by the candidate cell enters energySaving state."; - type int32 { range "0..900"; } - units "1"; + leaf startTime { + description "Start of not allowed time period in UTC time zone. + If set, the endTime must also be set. If not set, this is + interpreted as around the clock."; + must ../endTime; + type type5g3gpp:UTC24TimeOfDayT; + } + leaf endTime { + description "If endTime has a lower value than startTime, it will + be interpreted as referring to the following day."; + type type5g3gpp:UTC24TimeOfDayT; + must ../startTime; + } + leaf-list daysOfWeek { + description "Specifies that the not allowed periods are only + applicable to the specified days in UTC timezone. Every day if + not set."; + type type5g3gpp:DayOfWeekT; } } - grouping InterRatEsDeactivationCandidateCellParametersGrp { - description "Represents the the traffic load threshold and the time duration."; - - leaf loadThreshold { - description "This attribute is used by distributed ES algorithms to allow a cell to enter the energySaving state."; - type int32 { range "0..10000"; } - units "1"; - } - - - leaf timeDuration { - description "The time duration indicates how long the traffic load (either for UL or DL) in the candidate cell needs to have been above the threshold to wake up one or more original cells which have been provided backup coverage by the candidate cell."; - type int32 { range "0..900"; } - units "1"; + grouping DESManagementFunctionSubtree { + list DESManagementFunction { + description "This IOC represents the management capabilities of + Distributed SON Energy Saving (ES) functions. This is provided for + Energy Saving purposes. + + In the case where multiple DESManagement MOIs exist at different + levels of the containment tree, the DESManagement MOI at the lower + level overrides the DESManagement MOIs at higher level(s) of the same + containment tree."; + reference "clause 6.2.3.0 in TS 28.310"; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses DESManagementFunctionGrp; + } } } - - augment "/me3gpp:ManagedElement/gnbcucp3gpp:GNBCUCPFunction/nrcellcu3gpp:NRCellCU" { + augment "/me3gpp:ManagedElement/gnbcucp3gpp:GNBCUCPFunction/"+ + "nrcellcu3gpp:NRCellCU" { if-feature nrcellcu3gpp:DESManagementFunction; - uses DESManagementFunctionGrp; - } - augment "/me3gpp:ManagedElement/gnbcucp3gpp:GNBCUCPFunction" { + uses DESManagementFunctionSubtree; + } + augment /me3gpp:ManagedElement/gnbcucp3gpp:GNBCUCPFunction { if-feature gnbcucp3gpp:DESManagementFunction; - uses DESManagementFunctionGrp; - } - augment "/me3gpp:ManagedElement" { + uses DESManagementFunctionSubtree; + } + augment /me3gpp:ManagedElement { if-feature me3gpp:DESManagementFunction; - uses DESManagementFunctionGrp; - } - augment "/subnet3gpp:SubNetwork" { + uses DESManagementFunctionSubtree; + } + augment /subnet3gpp:SubNetwork { if-feature subnet3gpp:DESManagementFunction; - uses DESManagementFunctionGrp; - } - + uses DESManagementFunctionSubtree; + } } \ No newline at end of file diff --git a/yang-models/_3gpp-nr-nrm-dmrofunction.yang b/yang-models/_3gpp-nr-nrm-dmrofunction.yang index c657f1587..2b7de1349 100755 --- a/yang-models/_3gpp-nr-nrm-dmrofunction.yang +++ b/yang-models/_3gpp-nr-nrm-dmrofunction.yang @@ -1,7 +1,7 @@ module _3gpp-nr-nrm-dmrofunction { yang-version 1.1; namespace "urn:3gpp:sa5:_3gpp-nr-nrm-dmrofunction"; - prefix "dmrofunction3gpp"; + prefix "dmrof3gpp"; import _3gpp-common-subnetwork { prefix subnet3gpp; } import _3gpp-common-top { prefix top3gpp; } @@ -9,62 +9,85 @@ module _3gpp-nr-nrm-dmrofunction { import _3gpp-common-managed-element { prefix me3gpp; } import _3gpp-nr-nrm-nrcellcu { prefix nrcellcu3gpp; } - organization "3GPP SA5"; contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; - description "Defines the YANG mapping of the DMROFunction Information Object Class - (IOC) that is part of the NR Network Resource Model (NRM)."; + description "Defines the YANG mapping of the DMROFunction + Information Object Class (IOC) that is part of the NR Network Resource + Model (NRM)."; reference "3GPP TS 28.541 5G Network Resource Model (NRM)"; + revision 2021-08-05 { reference S5-214053/CR-0518; } revision 2020-05-08 { reference S5-203316; } - grouping DMROFunctionGrp { description "Represents the DMROFunction IOC."; - reference "3GPP TS 28.541"; - uses top3gpp:Top_Grp; leaf maximumDeviationHoTrigger { - description "This parameter defines the maximum allowed absolute deviation of the Handover Trigger, from the default point of operation."; - type int32 { range "-20..20"; } - units "0.5"; + description "This parameter defines the maximum allowed absolute + deviation of the Handover Trigger, from the default point of + operation. Range -20 to 20 in .5 dB steps. "; + type string { + pattern '-?((20)|(1?[0-9]))\.[05]'; + // -20.0, -19.5, -19.0, ..., -0.5, 0.0, 0.5, 1.0, ... 19.5, 20.0 + } + units dB; } - leaf minimumTimeBetweenHoTriggerChange { - description "This parameter defines the minimum allowed time interval between two Handover Trigger change performed by MRO. This is used to control the stability and convergence of the algorithm."; - type int32 { range "0..604800"; } - units "1"; + description "This parameter defines the minimum allowed time interval + between two Handover Trigger change performed by MRO. This is used to + control the stability and convergence of the algorithm."; + type uint32 { + range 0..604800; // <= 1 week + } + units seconds; } - leaf tstoreUEcntxt { - description "The timer used for detection of too early HO, too late HO and HO to wrong cell."; - type int32 { range "0..1023"; } - units "100"; + description "The timer used for detection of too early HO, too late HO + and HO to wrong cell."; + type uint32 { + range 0..1023; + } + units "100 milliseconds"; } - - leaf dmroControl { - description " This attribute determines whether the MRO function is enabled or disabled."; - type boolean; + description "This attribute determines whether the MRO function is + enabled or disabled."; + type boolean; } - } + grouping DMROFunctionSubtree { + list DMROFunction { + description "This IOC contains attributes to support the D-SON function + of MRO. - augment "/me3gpp:ManagedElement/gnbcucp3gpp:GNBCUCPFunction/nrcellcu3gpp:NRCellCU" { - if-feature nrcellcu3gpp:DMROFunction; - uses DMROFunctionGrp; + In the case where multiple DMRO MOIs exist at different levels of the + containment tree, the DMRO MOI at the lower level overrides the DMRO + MOIs at higher level(s) of the same containment tree."; + reference "clause 7.1.2 in TS 28.313"; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses DMROFunctionGrp; + } } - augment "/me3gpp:ManagedElement/gnbcucp3gpp:GNBCUCPFunction" { + } + + augment "/me3gpp:ManagedElement/gnbcucp3gpp:GNBCUCPFunction/"+ + "nrcellcu3gpp:NRCellCU" { + if-feature nrcellcu3gpp:DMROFunction; + uses DMROFunctionSubtree; + } + augment /me3gpp:ManagedElement/gnbcucp3gpp:GNBCUCPFunction { if-feature gnbcucp3gpp:DMROFunction; - uses DMROFunctionGrp; - } - augment "/me3gpp:ManagedElement" { + uses DMROFunctionSubtree; + } + augment /me3gpp:ManagedElement { if-feature me3gpp:DMROFunction; - uses DMROFunctionGrp; - } - augment "/subnet3gpp:SubNetwork" { + uses DMROFunctionSubtree; + } + augment /subnet3gpp:SubNetwork { if-feature subnet3gpp:DMROFunction; - uses DMROFunctionGrp; - } + uses DMROFunctionSubtree; + } } \ No newline at end of file diff --git a/yang-models/_3gpp-nr-nrm-dpciconfigurationfunction.yang b/yang-models/_3gpp-nr-nrm-dpciconfigurationfunction.yang index a150af4b7..806b0d659 100755 --- a/yang-models/_3gpp-nr-nrm-dpciconfigurationfunction.yang +++ b/yang-models/_3gpp-nr-nrm-dpciconfigurationfunction.yang @@ -1,69 +1,76 @@ module _3gpp-nr-nrm-dpciconfigurationfunction { yang-version 1.1; namespace "urn:3gpp:sa5:_3gpp-nr-nrm-dpciconfigurationfunction"; - prefix "dpciconfigurationfunction3gpp"; + prefix "dpcicf3gpp"; import _3gpp-common-subnetwork { prefix subnet3gpp; } import _3gpp-common-top { prefix top3gpp; } import _3gpp-nr-nrm-nrcellcu { prefix nrcellcu3gpp; } import _3gpp-nr-nrm-gnbcucpfunction { prefix gnbcucp3gpp; } import _3gpp-common-managed-element { prefix me3gpp; } + import _3gpp-5g-common-yang-types { prefix type5g3gpp; } organization "3GPP SA5"; contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; - description "Defines the YANG mapping of the DPCIConfigurationFunction Information Object Class - (IOC) that is part of the NR Network Resource Model (NRM)."; + description "Defines the YANG mapping of the DPCIConfigurationFunction + Information Object Class (IOC) that is part of the NR Network Resource + Model (NRM)."; reference "3GPP TS 28.541 5G Network Resource Model (NRM)"; + revision 2021-08-05 { reference S5-214053/CR-0518; } revision 2021-01-25 { reference CR-0454 ; } revision 2020-11-25 { reference CR-0386 ; } revision 2020-05-08 { reference S5-203316; } - grouping DPCIConfigurationFunctionGrp { description "Represents the DPCICONFIGURATIONFunction IOC."; - reference "3GPP TS 28.541"; - uses top3gpp:Top_Grp; - list nRPciList { + description "This holds a list of physical cell identities that can be + assigned to the NR cells. This attribute shall be supported if D-SON + PCI configuration function is supported."; key NRPci; - description "This holds a list of physical cell identities that can be assigned to the NR cells. This attribute shall be supported if D-SON PCI configuration function is supported."; - leaf NRPci {type int32;} - container attributes { - uses NRPciListGrp; - } + leaf NRPci { + type type5g3gpp:PhysCellID; + } } - leaf dPciConfigurationControl { - description " This attribute determines whether the Distributed SON PCI configuration Function is enabled or disabled."; - type boolean; + description "This attribute determines whether the Distributed SON PCI + configuration Function is enabled or disabled."; + type boolean; } - } - grouping NRPciListGrp { - description "Represents the NR PCI list for the PCI configuration function."; + grouping DPCIConfigurationFunctionSubtree { + list DPCIConfigurationFunction { + description "This IOC contains attributes to support the Distributed SON + function of PCI configuration. - leaf NRPci { - description "This attribute determines the NR PCI."; - type int32 { range "0..1007"; } - units "1"; + In the case where multiple DPCIConfiguration MOIs exist at different + levels of the containment tree, the DPCIConfiguration MOI at the lower + level overrides the DPCIConfiguration MOIs at higher level(s) of the + same containment tree."; + reference "clause 7.1.3 in TS 28.313"; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses DPCIConfigurationFunctionGrp; + } } } - - augment "/me3gpp:ManagedElement/gnbcucp3gpp:GNBCUCPFunction/nrcellcu3gpp:NRCellCU" { + augment "/me3gpp:ManagedElement/gnbcucp3gpp:GNBCUCPFunction/"+ + "nrcellcu3gpp:NRCellCU" { if-feature nrcellcu3gpp:DPCIConfigurationFunction; - uses DPCIConfigurationFunctionGrp; - } - augment "/me3gpp:ManagedElement" { + uses DPCIConfigurationFunctionSubtree; + } + augment /me3gpp:ManagedElement { if-feature me3gpp:DPCIConfigurationFunction; - uses DPCIConfigurationFunctionGrp; - } - augment "/subnet3gpp:SubNetwork" { + uses DPCIConfigurationFunctionSubtree; + } + augment /subnet3gpp:SubNetwork { if-feature subnet3gpp:DPCIConfigurationFunction; - uses DPCIConfigurationFunctionGrp; - } + uses DPCIConfigurationFunctionSubtree; + } } \ No newline at end of file diff --git a/yang-models/_3gpp-nr-nrm-drachoptimizationfunction.yang b/yang-models/_3gpp-nr-nrm-drachoptimizationfunction.yang index 7ef35373c..314372c38 100755 --- a/yang-models/_3gpp-nr-nrm-drachoptimizationfunction.yang +++ b/yang-models/_3gpp-nr-nrm-drachoptimizationfunction.yang @@ -1,7 +1,7 @@ module _3gpp-nr-nrm-drachoptimizationfunction { yang-version 1.1; namespace "urn:3gpp:sa5:_3gpp-nr-nrm-drachoptimizationfunction"; - prefix "drachoptimizationfunction3gpp"; + prefix "dracho3gpp"; import _3gpp-common-subnetwork { prefix subnet3gpp; } import _3gpp-common-top { prefix top3gpp; } @@ -11,110 +11,106 @@ module _3gpp-nr-nrm-drachoptimizationfunction { organization "3GPP SA5"; contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; - description "Defines the YANG mapping of the DRACHOptimizationFunction Information Object Class - (IOC) that is part of the NR Network Resource Model (NRM)."; + description "Defines the YANG mapping of the DRACHOptimizationFunction + Information Object Class (IOC) that is part of the NR Network Resource + Model (NRM)."; reference "3GPP TS 28.541 5G Network Resource Model (NRM)"; + revision 2021-08-05 { reference S5-214053/CR-0518; } revision 2021-01-25 { reference CR-0454 ; } revision 2020-10-02 { reference "CR-0384, CR-0382" ; } revision 2020-05-08 { reference S5-203316; } - grouping DRACHOptimizationFunctionGrp { - description "Represents the DRACHOptimizationFunction IOC."; - reference "3GPP TS 28.541"; - uses top3gpp:Top_Grp; - - list ueAccProbilityDist { - key targetProbability; - description "This is a list of target Access Probability (APn) for the RACH optimization function."; - leaf targetProbability {type TargetProbability;} - container attributes { - uses UeAccProbilityDistGrp; - } - } - - list ueAccDelayProbilityDist { - key targetProbability; - description "This is a list of target Access Delay probability (ADP) for the RACH optimization function."; - leaf targetProbability {type TargetProbability;} - container attributes { - uses UeAccDelayProbilityDistGrp; - } - } - - leaf drachOptimizationControl { - description "This attribute determines whether the RACH Optimization function is enabled or disabled."; - type boolean; - } - } - typedef TargetProbability { - type enumeration { + typedef TargetProbabilityT { + type enumeration { enum 25; enum 50; enum 75; enum 90; } } - - typedef Numberofpreamblessent { - type int32 { range "1..200"; } - units "1"; + typedef NumberofpreamblessentT { + type uint32 { + range "1..200"; + } } - - typedef Accessdelay { - type int32 { range "10..560"; } - units "1"; + typedef AccessdelayT { + type uint32 { + range "10..560"; + } } - - - grouping UeAccProbilityDistGrp { - description "Represents the target Access Probability (APn) for the RACH optimization function."; + grouping NumPreableAccessDelayGrp { + description "Represents the target Access Probability (APn) for the RACH + optimization function."; leaf targetProbability { - description "This attribute determines the target Probability."; - mandatory true; - type TargetProbability; + description "This attribute determines the target Probability."; + mandatory true; + type TargetProbabilityT; } - - leaf numberofpreamblessent { - description "This attribute determines the number of preambles sent."; - mandatory true; - type Numberofpreamblessent; + description "This attribute determines the number of preambles sent."; + mandatory true; + type NumberofpreamblessentT; } } - grouping UeAccDelayProbilityDistGrp { - description "Represents the target Access Delay probability (ADP) for the RACH optimization function."; + grouping DRACHOptimizationFunctionGrp { + description "Represents the DRACHOptimizationFunction IOC."; - leaf targetProbability { - description "This attribute determines the target Probability."; - mandatory true; - type TargetProbability; + list ueAccProbilityDist { + description "This is a list of target Access Probability (APn) for the + RACH optimization function."; + key "targetProbability numberofpreamblessent"; + uses NumPreableAccessDelayGrp; } + list ueAccDelayProbilityDist { + description "This is a list of target Access Delay probability (ADP) + for the RACH optimization function."; + key "targetProbability numberofpreamblessent"; + uses NumPreableAccessDelayGrp; + } + leaf drachOptimizationControl { + description "This attribute determines whether the RACH Optimization + function is enabled or disabled."; + type boolean; + } + } - - leaf accessdelay { - description "This attribute determines the access delay."; - mandatory true; - type Accessdelay; + grouping DRACHOptimizationFunctionSubtree { + list DRACHOptimizationFunction { + description "This IOC represents the management capabilities of + Centralized SON Energy Saving (ES) functions. This is provided for + Energy Saving purposes. + + In the case where multiple CESManagement MOIs exist at different + levels of the containment tree, the CESManagement MOI at the lower + level overrides the CESManagement MOIs at higher level(s) of the + same containment tree."; + reference "clause 6.2.2 in TS 28.310"; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses DRACHOptimizationFunctionGrp; + } } } - augment "/me3gpp:ManagedElement/gnbdu3gpp:GNBDUFunction/nrcelldu3gpp:NRCellDU" { + augment "/me3gpp:ManagedElement/gnbdu3gpp:GNBDUFunction/"+ + "nrcelldu3gpp:NRCellDU" { if-feature nrcelldu3gpp:DRACHOptimizationFunction; - uses DRACHOptimizationFunctionGrp; - } + uses DRACHOptimizationFunctionSubtree; + } augment "/me3gpp:ManagedElement/gnbdu3gpp:GNBDUFunction" { if-feature gnbdu3gpp:DRACHOptimizationFunction; - uses DRACHOptimizationFunctionGrp; - } + uses DRACHOptimizationFunctionSubtree; + } augment "/me3gpp:ManagedElement" { if-feature me3gpp:DRACHOptimizationFunction; - uses DRACHOptimizationFunctionGrp; - } + uses DRACHOptimizationFunctionSubtree; + } augment "/subnet3gpp:SubNetwork" { if-feature nrcelldu3gpp:DRACHOptimizationFunction; - uses DRACHOptimizationFunctionGrp; - } + uses DRACHOptimizationFunctionSubtree; + } } \ No newline at end of file -- GitLab From 0032d2835382c47bc402c077b40ef71d77c9a3c9 Mon Sep 17 00:00:00 2001 From: "U-ERICSSON\\ETHBLL" Date: Wed, 29 Sep 2021 10:39:31 +0200 Subject: [PATCH 106/593] SA5-138e 28.623 updates pulled into the Rel17_draft branch --- yang-models/_3gpp-common-fm.yang | 2 +- yang-models/_3gpp-common-measurements.yang | 516 +++++++++++---------- yang-models/_3gpp-common-subnetwork.yang | 2 +- yang-models/_3gpp-common-trace.yang | 486 +++++++++++-------- 4 files changed, 566 insertions(+), 440 deletions(-) diff --git a/yang-models/_3gpp-common-fm.yang b/yang-models/_3gpp-common-fm.yang index c6b4d33cb..fc1b0d0f7 100755 --- a/yang-models/_3gpp-common-fm.yang +++ b/yang-models/_3gpp-common-fm.yang @@ -115,7 +115,7 @@ module _3gpp-common-fm { } leaf notificationId { - type string; + type int32; config false ; mandatory true; } diff --git a/yang-models/_3gpp-common-measurements.yang b/yang-models/_3gpp-common-measurements.yang index 30627565c..96893e6c3 100755 --- a/yang-models/_3gpp-common-measurements.yang +++ b/yang-models/_3gpp-common-measurements.yang @@ -1,84 +1,85 @@ module _3gpp-common-measurements { - yang-version 1.1; + yang-version 1.1; namespace "urn:3gpp:sa5:_3gpp-common-measurements"; prefix "meas3gpp"; - + import _3gpp-common-top { prefix top3gpp; } import _3gpp-common-yang-types { prefix types3gpp; } organization "3GPP SA5"; - contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; - + contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; + description "Defines Measurement and KPI related groupings Any list/class intending to use this should include 2 or 3 uses statements controlled by a feature: - - A) + + A) +++ feature MeasurementsUnderMyClass { -+++ description 'Indicates whether measurements and/or KPIs are supported ++++ description 'Indicates whether measurements and/or KPIs are supported +++ for this class.'; +++ } - - B) include the attribute measurementsList and/or kPIsList indicating the - supported measurment and KPI types and GPs. Note that for classes - inheriting from ManagedFunction, EP_RP or SubNetwork these attributes are + + B) include the attribute measurementsList and/or kPIsList indicating the + supported measurment and KPI types and GPs. Note that for classes + inheriting from ManagedFunction, EP_RP or SubNetwork these attributes are already inherited, so there is no need to include them once more. E.g. - + +++ grouping MyClassGrp { +++ uses meas3gpp:SupportedPerfMetricGroup; +++ } - - C) include the class PerfmetricJob to control the measurements/KPIs. E.g. - + + C) include the class PerfmetricJob to control the measurements/KPIs. E.g. + list MyClass { container attributes { uses MyClassGrp; } +++ uses meas3gpp:MeasurementSubtree { +++ if-feature MeasurementsUnderMyClass ; -+++ } ++++ } } - + Measurements can be contained under ManagedElement, SubNetwork, or - any list representing a class inheriting from Subnetwork or + any list representing a class inheriting from Subnetwork or ManagedFunction. Note: KPIs will only be supported under SubNetwork"; - + reference "3GPP TS 28.623 Generic Network Resource Model (NRM) Integration Reference Point (IRP); Solution Set (SS) definitions - + 3GPP TS 28.622 Generic Network Resource Model (NRM) Integration Reference Point (IRP); Information Service (IS)"; + revision 2021-07-22 { reference "CR-0137"; } revision 2020-11-06 { reference "CR-0118"; } - revision 2020-09-04 { reference "CR-000107"; } - revision 2020-06-08 { reference "CR-0092"; } + revision 2020-09-04 { reference "CR-000107"; } + revision 2020-06-08 { reference "CR-0092"; } revision 2020-05-31 { reference "CR-0084"; } revision 2020-03-11 { reference "S5-201581, SP-200229"; } revision 2019-11-21 { reference "S5-197275, S5-197735"; } revision 2019-10-28 { reference "S5-193516"; } - revision 2019-06-17 { } - + revision 2019-06-17 { reference " "; } + grouping ThresholdInfoGrp { description "Defines a single threshold level."; - + leaf-list measurementTypes { type string; - description "The Measurement type can be those specified in TS 28.552, - TS 32.404 and can be those specified by other SDOs or can be + description "The Measurement type can be those specified in TS 28.552, + TS 32.404 and can be those specified by other SDOs or can be vendor-specific."; } - + leaf thresholdLevel { type uint64; mandatory true; - description "Number (key) for a single threshold in the threshold list + description "Number (key) for a single threshold in the threshold list applicable to the monitored performance metric."; } - + leaf thresholdDirection { type enumeration { enum UP; @@ -86,32 +87,32 @@ module _3gpp-common-measurements { enum UP_AND_DOWN; } must '. = "UP_AND_DOWN" or not(../hysteresis)' { - error-message "In case a threshold with hysteresis is configured, the " + error-message "In case a threshold with hysteresis is configured, the " +"threshold direction attribute shall be set to 'UP_AND_DOWN'."; } mandatory true; - description "Direction of a threshold indicating the direction for which + description "Direction of a threshold indicating the direction for which a threshold crossing triggers a threshold. - When the threshold direction is configured to 'UP', the associated - treshold is triggered only when the performance metric value is going - up upon reaching or crossing the threshold value. The treshold is not - triggered, when the performance metric is going down upon reaching or + When the threshold direction is configured to 'UP', the associated + treshold is triggered only when the performance metric value is going + up upon reaching or crossing the threshold value. The treshold is not + triggered, when the performance metric is going down upon reaching or crossing the threshold value. - Vice versa, when the threshold direction is configured to 'DOWN', the - associated treshold is triggered only when the performance metric is - going down upon reaching or crossing the threshold value. The treshold - is not triggered, when the performance metric is going up upon reaching + Vice versa, when the threshold direction is configured to 'DOWN', the + associated treshold is triggered only when the performance metric is + going down upon reaching or crossing the threshold value. The treshold + is not triggered, when the performance metric is going up upon reaching or crossing the threshold value. - When the threshold direction is set to 'UP_AND_DOWN' the treshold is + When the threshold direction is set to 'UP_AND_DOWN' the treshold is active in both direcions. - In case a threshold with hysteresis is configured, the threshold + In case a threshold with hysteresis is configured, the threshold direction attribute shall be set to 'UP_AND_DOWN'."; } - + leaf thresholdValue { type union { type int64; @@ -120,10 +121,10 @@ module _3gpp-common-measurements { } } mandatory true; - description "Value against which the monitored performance metric is + description "Value against which the monitored performance metric is compared at a threshold level in case the hysteresis is zero"; } - + leaf hysteresis { type union { type uint64; @@ -132,63 +133,65 @@ module _3gpp-common-measurements { range "0..max"; } } - description "Hysteresis of a threshold. If this attribute is present - the monitored performance metric is not compared against the - threshold value as specified by the thresholdValue attribute but + description "Hysteresis of a threshold. If this attribute is present + the monitored performance metric is not compared against the + threshold value as specified by the thresholdValue attribute but against a high and low threshold value given by threshold-high = thresholdValue + hysteresis threshold-low = thresholdValue - hysteresis - When going up, the threshold is triggered when the performance metric - reaches or crosses the high threshold value. When going down, the - hreshold is triggered when the performance metric reaches or crosses + When going up, the threshold is triggered when the performance metric + reaches or crosses the high threshold value. When going down, the + hreshold is triggered when the performance metric reaches or crosses the low threshold value. - A hysteresis may be present only when the monitored performance - metric is not of type counter that can go up only. If present + A hysteresis may be present only when the monitored performance + metric is not of type counter that can go up only. If present for a performance metric of type counter, it shall be ignored."; } } - - grouping SupportedPerfMetricGroupGrp { + + grouping SupportedPerfMetricGroupGrp { list SupportedPerfMetricGroup { config false; - description "Captures a group of supported performance metrics and + description "Captures a group of supported performance metrics and associated parameters related to their production and reporting. - A SupportedPerfMetricGroup attribute which is part of an MOI may - define performanceMetrics for any MOI under the subtree contained - under that MOI, e.g. SupportedPerfMetricGroup on a ManagedElement - can specify supported metrics for contained ManagedFunctions + A SupportedPerfMetricGroup attribute which is part of an MOI may + define performanceMetrics for any MOI under the subtree contained + under that MOI, e.g. SupportedPerfMetricGroup on a ManagedElement + can specify supported metrics for contained ManagedFunctions like a GNBDUFunction."; - + leaf-list performanceMetrics { type string; min-elements 1; - description "Performance metrics include measurements defined in - TS 28.552 and KPIs defined in TS 28.554. Performance metrics can - also be those specified by other SDOs or vendor specific metrics. - Performance metrics are identfied with their names. A name can also - identify a vendor specific group of performance metrics. + description "Performance metrics include measurements defined in + TS 28.552 and KPIs defined in TS 28.554. Performance metrics can + also be specified by other SDOs or be vendor specific. + Performance metrics are identfied with their names. - For measurements defined in TS 28.552 the name is constructed as + For measurements defined in TS 28.552 the name is constructed as follows: - - 'family.measurementName.subcounter' for measurement types with + - 'family.measurementName.subcounter' for measurement types with subcounters - 'family.measurementName' for measurement types without subcounters - 'family' for measurement families - For KPIs defined in TS 28.554 the name is defined in the KPI - definitions template as the component designated with e)."; + For KPIs defined in TS 28.554 the name is defined in the KPI + definitions template as the component designated with e). + + A name can also identify a vendor specific performance metric or a + group of vendor specific performance metrics."; } - + leaf-list granularityPeriods { type uint32 { range 1..max ; } units seconds; } - + leaf-list reportingMethods { type enumeration { enum FILE_BASED_LOC_SET_BY_PRODUCER; @@ -197,13 +200,13 @@ module _3gpp-common-measurements { } min-elements 1; } - + leaf-list monitorGranularityPeriods { type uint32 { range 1..max ; } units seconds; - description "Granularity periods supported for the monitoring of + description "Granularity periods supported for the monitoring of associated measurement types for thresholds"; } } @@ -211,88 +214,88 @@ module _3gpp-common-measurements { grouping PerfMetricJobGrp { description "Represents the attributtes of the IOC PerfMetricJob"; - + leaf administrativeState { default UNLOCKED; type types3gpp:AdministrativeState ; description "Enable or disables production of the metrics"; } - + leaf operationalState { config false; mandatory true; type types3gpp:OperationalState ; description "Indicates whether the PerfMetricJob is working."; - } + } leaf jobId { type string; description "Id for a PerfMetricJob job."; } - leaf-list performanceMetrics { + leaf-list performanceMetrics { type string; min-elements 1; - description "Performance metrics include measurements defined in - TS 28.552 and KPIs defined in TS 28.554. Performance metrics can - also be those specified by other SDOs or vendor specific metrics. - Performance metrics are identfied with their names. A name can also + description "Performance metrics include measurements defined in + TS 28.552 and KPIs defined in TS 28.554. Performance metrics can + also be those specified by other SDOs or vendor specific metrics. + Performance metrics are identfied with their names. A name can also identify a vendor specific group of performance metrics. - For measurements defined in TS 28.552 the name is constructed as + For measurements defined in TS 28.552 the name is constructed as follows: - - 'family.measurementName.subcounter' for measurement types with + - 'family.measurementName.subcounter' for measurement types with subcounters - 'family.measurementName' for measurement types without subcounters - 'family' for measurement families - For KPIs defined in TS 28.554 the name is defined in the KPI + For KPIs defined in TS 28.554 the name is defined in the KPI definitions template as the component designated with e)."; } - + leaf granularityPeriod { type uint32 { range 1..max ; } units seconds; mandatory true; - description "Granularity period used to produce measurements. The value + description "Granularity period used to produce measurements. The value must be one of the supported granularity periods for the metric."; } leaf-list objectInstances { type types3gpp:DistinguishedName; } - + leaf-list rootObjectInstances { type types3gpp:DistinguishedName; - description "Each object instance designates the root of a subtree that + description "Each object instance designates the root of a subtree that contains the root object and all descendant objects."; } - + choice reportingCtrl { mandatory true; - description "This choice defines the method for reporting collected - performance metrics to MnS consumers as well as the parameters for - configuring the reporting function. It is a choice between the control - parameter required for the reporting methods, whose presence selects + description "This choice defines the method for reporting collected + performance metrics to MnS consumers as well as the parameters for + configuring the reporting function. It is a choice between the control + parameter required for the reporting methods, whose presence selects the reporting method as follows: - - When only the fileReportingPeriod attribute is present, the MnS - producer shall store files on the MnS producer at a location selected - by the MnS producer and inform the MnS consumer about the availability - of new files and the file location using the notifyFileReady + - When only the fileReportingPeriod attribute is present, the MnS + producer shall store files on the MnS producer at a location selected + by the MnS producer and inform the MnS consumer about the availability + of new files and the file location using the notifyFileReady notification. - - When only the fileReportingPeriod and fileLocation attributes are - present, the MnS producer shall store the files on the MnS consumer at - the location specified by fileLocation. No notification is emitted by + - When only the fileReportingPeriod and fileLocation attributes are + present, the MnS producer shall store the files on the MnS consumer at + the location specified by fileLocation. No notification is emitted by the MnS producer. - - When only the streamTarget attribute is present, the MnS producer + - When only the streamTarget attribute is present, the MnS producer shall stream the data to the location specified by streamTarget. - - For the file-based reporting methods the fileReportingPeriod attribute - specifies the time window during which collected measurements are stored + + For the file-based reporting methods the fileReportingPeriod attribute + specifies the time window during which collected measurements are stored into the same file before the file is closed and a new file is opened."; - + case file-based-reporting { leaf fileReportingPeriod { type uint32 { @@ -300,22 +303,22 @@ module _3gpp-common-measurements { } units minutes; must '(number(.)*"60") mod number(../granularityPeriod) = "0"' { - error-message - "The time-period must be a multiple of the granularityPeriod."; - } + error-message + "The time-period must be a multiple of the granularityPeriod."; + } mandatory true; - description "For the file-based reporting method this is the time - window during which collected measurements are stored into the same - file before the file is closed and a new file is opened. + description "For the file-based reporting method this is the time + window during which collected measurements are stored into the same + file before the file is closed and a new file is opened. The time-period must be a multiple of the granularityPeriod. - + Applicable when the file-based reporting method is supported"; } - - leaf fileLocation { + + leaf fileLocation { type string ; - description "Applicable and must be present when the file-based - reporting method is supported, and the files are stored on the MnS + description "Applicable and must be present when the file-based + reporting method is supported, and the files are stored on the MnS consumer."; } } @@ -323,17 +326,17 @@ module _3gpp-common-measurements { leaf streamTarget { type string; mandatory true; - description "Applicable when stream-based reporting method is + description "Applicable when stream-based reporting method is supported."; } } } } - + grouping ThresholdMonitorGrp { - description "A threshold monitor that is created by the consumer for - the monitored entities whose measurements are required by consumer + description "A threshold monitor that is created by the consumer for + the monitored entities whose measurements are required by consumer to monitor."; leaf administrativeState { @@ -341,202 +344,221 @@ module _3gpp-common-measurements { type types3gpp:AdministrativeState ; description "Enables or disables the ThresholdMonitor."; } - + leaf operationalState { config false; mandatory true; type types3gpp:OperationalState ; description "Indicates whether the ThresholdMonitor is working."; - } + } list thresholdInfoList { - key idx; + key idx; min-elements 1; leaf idx { type uint32 ; } - uses ThresholdInfoGrp; + uses ThresholdInfoGrp; } - + leaf monitorGranularityPeriod { type uint32 { range "1..max"; } units second; - mandatory true; - description " Granularity period used to monitor measurements for + mandatory true; + description " Granularity period used to monitor measurements for threshold crossings. "; } - + leaf-list objectInstances { type types3gpp:DistinguishedName; } - + leaf-list rootObjectInstances { type types3gpp:DistinguishedName; - description "Each object instance designates the root of a subtree that + description "Each object instance designates the root of a subtree that contains the root object and all descendant objects."; - } + } } - + grouping MeasurementSubtree { - description "Contains classes that define measurements. - Should be used in all classes (or classes inheriting from) + description "Contains classes that define measurements. + Should be used in all classes (or classes inheriting from) - SubNnetwork - ManagedElement - ManagedFunction - - If a YANG module wants to augment these classes/list/groupings they must + + If a YANG module wants to augment these classes/list/groupings they must augment all user classes! - - If a class uses this grouping in its list it shall also use the - grouping SupportedPerfMetricGroupGrp to add SupportedPerfMetricGroup as + + If a class uses this grouping in its list it shall also use the + grouping SupportedPerfMetricGroupGrp to add SupportedPerfMetricGroup as an attribute to its grouping"; - + list PerfMetricJob { - description "This IOC represents a performance metric production job. It + description "This IOC represents a performance metric production job. It can be name-contained by SubNetwork, ManagedElement, or ManagedFunction. - - To activate the production of the specified performance metrics, a MnS - consumer needs to create a PerfMetricJob instance on the MnS producer - and ensure that the adminState is sUNLOCKED>. - For ultimate deactivation of metric production, the MnS consumer should + + To activate the production of the specified performance metrics, a MnS + consumer needs to create a PerfMetricJob instance on the MnS producer. + For ultimate deactivation of metric production, the MnS consumer should delete the job to free up resources on the MnS producer. - - For temporary suspension of metric production, the MnS consumer can - manipulate the value of the administrative state attribute. The MnS - producer may disable metric production as well, for example in overload - situations. This situation is indicated by the MnS producer with setting - the operational state attribute to disabled. When production is resumed - the operational state is set again to enabled. - + + For temporary suspension of metric production, the MnS consumer can + manipulate the value of the administrative state attribute. The MnS + producer may disable metric production as well, for example in overload + situations. This situation is indicated by the MnS producer with setting + the operational state attribute to disabled. When production is resumed + the operational state is set back to enabled. + The jobId attribute can be used to associate metrics from multiple - PerfMetricJob instances. The jobId can be included when reporting - performance metrics to allow a MnS consumer to associate received - metrics for the same purpose. For example, it is possible to configure - the same jobId value for multiple PerfMetricJob instances required to - produce the measurements for a specific KPI. - - The attribute performanceMetrics defines the performance metrics to be - produced and the attribute granularityPeriod defines the granularity - period to be applied. - - All object instances below and including the instance name-containing - the PerfMetricJob (base object instance) are scoped for performance - metric production. Performance metrics are produced only on those object - instances whose object class matches the object class associated to the + PerfMetricJob instances. The jobId can be included when reporting + performance metrics to allow a MnS consumer to associate received + metrics for the same purpose. For example, it is possible to configure + the same jobId value for multiple PerfMetricJob instances required to + produce the measurements for a specific KPI. + + The attribute performanceMetrics defines the performance metrics to be + produced and the attribute granularityPeriod defines the granularity + period to be applied. + + All object instances below and including the instance name-containing + the PerfMetricJob (base object instance) are scoped for performance + metric production. Performance metrics are produced only on those object + instances whose object class matches the object class associated to the performance metrics to be produced. - The attributes objectInstances and rootObjectInstances allow to restrict - the scope. When the attribute objectInstances is present, only the object - instances identified by this attribute are scoped. When the attribute - rootObjectInstances is present, then the subtrees whose root objects are - identified by this attribute are scoped. Both attributes may be present - at the same time meaning the total scope is equal to the sum of both - scopes. Object instances may be scoped by both the objectInstances and - rootObjectInstances attributes. This shall not be considered as an error - by the MnS producer. - - When the performance metric requires performance metric production on - multiple managed objects, which is for example the case for KPIs, the - MnS consumer needs to ensure all required objects are scoped. Otherwise + The attributes objectInstances and rootObjectInstances allow to restrict + the scope. When the attribute objectInstances is present, only the object + instances identified by this attribute are scoped. When the attribute + rootObjectInstances is present, then the subtrees whose root objects are + identified by this attribute are scoped. Both attributes may be present + at the same time meaning the total scope is equal to the sum of both + scopes. Object instances may be scoped by both the objectInstances and + rootObjectInstances attributes. This shall not be considered as an error + by the MnS producer. + + When the performance metric requires performance metric production on + multiple managed objects, which is for example the case for KPIs, the + MnS consumer needs to ensure all required objects are scoped. Otherwise a PerfMetricJob creation request shall fail. - The attribute reportingCtrl specifies the method and associated control - parameters for reporting the produced measurements to MnS consumers. - Three methods are available: file-based reporting with selection of the - file location by the MnS producer, file-based reporting with selection + The attribute reportingCtrl specifies the method and associated control + parameters for reporting the produced measurements to MnS consumers. + Three methods are available: file-based reporting with selection of the + file location by the MnS producer, file-based reporting with selection of the file location by the MnS consumer and stream-based reporting. - A PerfMetricJob creation request shall fail, when the requested - performance metrics, the requested granularity period, the requested - repoting method, or the requested combination thereof is not supported + For file-based reporting, all performance metrics that are produced + related to a 'PerfMetricJob' instance for a reporting period shall be + stored in a single reporting file. + + When the administrative state is set to 'UNLOCKED' after the creation + of a 'PerfMetricJob' the first granularity period shall start. When + the administrative state is set to 'LOCKED' or the operational state + to 'DISABLED', the ongoing reporting period shall be aborted, for + streaming the ongoing granularity period. When the administrative + state is set back to 'UNLOCKED' or the operational state to 'ENABLED' + a new reporting period period shall start, in case of streaming a new + granularity period. + + Changes of all other configurable attributes shall take effect only at + the beginning of the next reporting period, for streaming at the + beginning of the next granularity period. + + When the 'PerfMetricJob' is deleted, the ongoing reporting period shall + be aborted, for streaming the ongoing granularity period. + + A PerfMetricJob creation request shall fail, when the requested + performance metrics, the requested granularity period, the requested + repoting method, or the requested combination thereof is not supported by the MnS producer. - Creation and deletion of PerfMetricJob instances by MnS consumers is - optional; when not supported, PerfMetricJob instances may be created and + Creation and deletion of PerfMetricJob instances by MnS consumers is + optional; when not supported, PerfMetricJob instances may be created and deleted by the system or be pre-installed."; - key id; - uses top3gpp:Top_Grp ; + key id; + uses top3gpp:Top_Grp ; container attributes { uses PerfMetricJobGrp ; - } + } } - + list ThresholdMonitor { - key id; - description "Represents a threshold monitor for performance metrics. - It can be contained by SubNetwork, ManagedElement, or ManagedFunction. - A threshold monitor checks for threshold crossings of performance metric + key id; + description "Represents a threshold monitor for performance metrics. + It can be contained by SubNetwork, ManagedElement, or ManagedFunction. + A threshold monitor checks for threshold crossings of performance metric values and generates a notification when that happens. - To activate threshold monitoring, a MnS consumer needs to create a - ThresholdMonitor instance on the MnS producer. For ultimate deactivation - of threshold monitoring, the MnS consumer should delete the monitor to + To activate threshold monitoring, a MnS consumer needs to create a + ThresholdMonitor instance on the MnS producer. For ultimate deactivation + of threshold monitoring, the MnS consumer should delete the monitor to free up resources on the MnS producer. - For temporary suspension of threshold monitoring, the MnS consumer can - manipulate the value of the administrative state attribute. The MnS - producer may disable threshold monitoring as well, for example in - overload situations. This situation is indicated by the MnS producer with - setting the operational state attribute to disabled. When monitoring is + For temporary suspension of threshold monitoring, the MnS consumer can + manipulate the value of the administrative state attribute. The MnS + producer may disable threshold monitoring as well, for example in + overload situations. This situation is indicated by the MnS producer with + setting the operational state attribute to disabled. When monitoring is resumed the operational state is set again to enabled. - All object instances below and including the instance containing the - ThresholdMonitor (base object instance) are scoped for performance - metric production. Performance metrics are monitored only on those - object instances whose object class matches the object class associated + All object instances below and including the instance containing the + ThresholdMonitor (base object instance) are scoped for performance + metric production. Performance metrics are monitored only on those + object instances whose object class matches the object class associated to the performance metrics to be monitored. - - The optional attributes objectInstances and rootObjectInstances allow to - restrict the scope. When the attribute objectInstances is present, only - the object instances identified by this attribute are scoped. When the - attribute rootObjectInstances is present, then the subtrees whose root - objects are identified by this attribute are scoped. Both attributes may - be present at the same time meaning the total scope is equal to the sum - of both scopes. Object instances may be scoped by both the objectInstances - and rootObjectInstances attributes. This shall not be considered as an + + The optional attributes objectInstances and rootObjectInstances allow to + restrict the scope. When the attribute objectInstances is present, only + the object instances identified by this attribute are scoped. When the + attribute rootObjectInstances is present, then the subtrees whose root + objects are identified by this attribute are scoped. Both attributes may + be present at the same time meaning the total scope is equal to the sum + of both scopes. Object instances may be scoped by both the objectInstances + and rootObjectInstances attributes. This shall not be considered as an error by the MnS producer. - Multiple thresholds can be defined for multiple performance metric sets - in a single monitor using thresholdInfoList. The attribute + Multiple thresholds can be defined for multiple performance metric sets + in a single monitor using thresholdInfoList. The attribute monitorGranularityPeriod defines the granularity period to be applied. - Each threshold is identified with a number (key) called thresholdLevel. - A threshold is defined using the attributes thresholdValue , + Each threshold is identified with a number (key) called thresholdLevel. + A threshold is defined using the attributes thresholdValue , thresholdDirection and hysteresis. - When hysteresis is absent or carries no information, a threshold is - triggered when the thresholdValue is reached or crossed. When hysteresis - is present, two threshold values are specified for the threshold as - follows: A high treshold value equal to the threshold value plus the - hysteresis value, and a low threshold value equal to the threshold value - minus the hysteresis value. When the monitored performance metric - increases, the threshold is triggered when the high threshold value is - reached or crossed. When the monitored performance metric decreases, the - threshold is triggered when the low threshold value is reached or crossed. - The hsyteresis ensures that the performance metric value can oscillate - around a comparison value without triggering each time the threshold when + When hysteresis is absent or carries no information, a threshold is + triggered when the thresholdValue is reached or crossed. When hysteresis + is present, two threshold values are specified for the threshold as + follows: A high treshold value equal to the threshold value plus the + hysteresis value, and a low threshold value equal to the threshold value + minus the hysteresis value. When the monitored performance metric + increases, the threshold is triggered when the high threshold value is + reached or crossed. When the monitored performance metric decreases, the + threshold is triggered when the low threshold value is reached or crossed. + The hsyteresis ensures that the performance metric value can oscillate + around a comparison value without triggering each time the threshold when the threshold value is crossed. - Using the thresholdDirection attribute a threshold can be configured in - such a manner that it is triggered only when the monitored performance + Using the thresholdDirection attribute a threshold can be configured in + such a manner that it is triggered only when the monitored performance metric is going up or down upon reaching or crossing the threshold. - A ThresholdMonitor creation request shall be rejected, if the performance - metrics requested to be monitored, the requested granularity period, or - the requested combination thereof is not supported by the MnS producer. - A creation request may fail, when the performance metrics requested to be + A ThresholdMonitor creation request shall be rejected, if the performance + metrics requested to be monitored, the requested granularity period, or + the requested combination thereof is not supported by the MnS producer. + A creation request may fail, when the performance metrics requested to be monitored are not produced by a PerfMetricJob. - Creation and deletion of ThresholdMonitor instances by MnS consumers is - optional; when not supported, ThresholdMonitor instances may be created + Creation and deletion of ThresholdMonitor instances by MnS consumers is + optional; when not supported, ThresholdMonitor instances may be created and deleted by the system or be pre-installed."; - - uses top3gpp:Top_Grp ; + + uses top3gpp:Top_Grp ; container attributes { uses ThresholdMonitorGrp ; - } + } } - } + } } \ No newline at end of file diff --git a/yang-models/_3gpp-common-subnetwork.yang b/yang-models/_3gpp-common-subnetwork.yang index 36776b38a..53739e61c 100755 --- a/yang-models/_3gpp-common-subnetwork.yang +++ b/yang-models/_3gpp-common-subnetwork.yang @@ -211,4 +211,4 @@ module _3gpp-common-subnetwork { // augment external parts here } -} \ No newline at end of file +} \ No newline at end of file diff --git a/yang-models/_3gpp-common-trace.yang b/yang-models/_3gpp-common-trace.yang index 13b3f026d..84ae422ee 100755 --- a/yang-models/_3gpp-common-trace.yang +++ b/yang-models/_3gpp-common-trace.yang @@ -1,31 +1,32 @@ module _3gpp-common-trace { - yang-version 1.1; + yang-version 1.1; namespace "urn:3gpp:sa5:_3gpp-common-trace"; prefix "trace3gpp"; - + import _3gpp-common-top { prefix top3gpp; } import _3gpp-common-yang-types {prefix types3gpp; } import ietf-inet-types { prefix inet; } organization "3GPP SA5"; - contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; - + contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; + description "Trace handling"; reference "3GPP TS 28.623 Generic Network Resource Model (NRM) Integration Reference Point (IRP); Solution Set (SS) definitions - + 3GPP TS 28.622 Generic Network Resource Model (NRM) Integration Reference Point (IRP); Information Service (IS)"; - revision 2021-01-25 { reference "CR-0122"; } + revision 2021-07-22 { reference "CR-0137"; } + revision 2021-01-25 { reference "CR-0122"; } revision 2020-11-16 { reference "CR-0117"; } - revision 2020-08-06 { reference "CR-0102"; } - + revision 2020-08-06 { reference "CR-0102"; } + grouping TraceJobGrp { leaf tjJobType { type enumeration { @@ -38,14 +39,14 @@ module _3gpp-common-trace { enum LOGGED_MBSFN_MDT; } default TRACE_ONLY; - description "Specifies the MDT mode and it specifies also whether the - TraceJob represents only MDT, Logged MBSFN MDT, Trace or a combined - Trace and MDT job. The attribute is applicable for Trace, MDT, RCEF and - RLF reporting."; - reference "Clause 5.9a of 3GPP TS 32.422 for additional details on the + description "Specifies the MDT mode and it specifies also whether the + TraceJob represents only MDT, Logged MBSFN MDT, Trace or a combined + Trace and MDT job. The attribute is applicable for Trace, MDT, RCEF and + RLF reporting."; + reference "Clause 5.9a of 3GPP TS 32.422 for additional details on the allowed values."; } - + list tjListOfInterfaces { key idx; must 'count(MSCServerInterfaces)+count(MGWInterfaces)+count(RNCInterfaces)' @@ -59,16 +60,17 @@ module _3gpp-common-trace { +'+count(NEFInterfaces)+count(NRFInterfaces)+count(NSSFInterfaces)' +'+count(PCFInterfaces)+count(SMFInterfaces)+count(SMSFInterfaces)' +'+count(UDMInterfaces)+count(UPFInterfaces)+count(ng-eNBInterfaces)' - +'+count(gNB-CU-CPInterfaces)+count(gNB-CU-UPInterfaces)+count(gNB-DUInterfaces)'; - - description "Specifies the interfaces that need to be traced in the given - ManagedEntityFunction.The attribute is applicable only for Trace. In + +'+count(gNB-CU-CPInterfaces)+count(gNB-CU-UPInterfaces)' + +'+count(gNB-DUInterfaces)'; + + description "Specifies the interfaces that need to be traced in the given + ManagedEntityFunction.The attribute is applicable only for Trace. In case this attribute is not used, it carries a null semantic."; - reference "Clause 5.5 of 3GPP TS 32.422 for additional details on the + reference "Clause 5.5 of 3GPP TS 32.422 for additional details on the allowed values."; - - leaf idx { type uint32 ; } - + + leaf idx { type uint32 ; } + leaf-list MSCServerInterfaces { type enumeration { enum A ; @@ -375,35 +377,35 @@ module _3gpp-common-trace { enum GNB_CU_UP; enum GNB_DU; } - description "Specifies in which type of ManagedFunction the trace should - be activated. The attribute is applicable only for Trace with - Signalling Based Trace activation. In case this attribute is not used, + description "Specifies in which type of ManagedFunction the trace should + be activated. The attribute is applicable only for Trace with + Signalling Based Trace activation. In case this attribute is not used, it carries a null semantic"; - reference "Clause 5.4 of 3GPP TS 32.422 for additional details on the + reference "Clause 5.4 of 3GPP TS 32.422 for additional details on the allowed values"; } - + leaf tjPLMNTarget { type string; mandatory true; - description "Specifies which PLMN that the subscriber of the session to - be recorded uses as selected PLMN. PLMN Target might differ from the + description "Specifies which PLMN that the subscriber of the session to + be recorded uses as selected PLMN. PLMN Target might differ from the PLMN specified in the Trace Reference"; reference "Clause 5.9b of 3GPP TS 32.422"; } - + leaf tjStreamingTraceConsumerURI { when './tjTraceReportingFormat = "STREAMING"'; type inet:uri; mandatory true; - description "URI of the Streaming Trace data reporting MnS consumer - (a.k.a. streaming target). - This attribute shall be present if file based trace data reporting is - supported and tjTraceReportingFormat set to 'file based' or when + description "URI of the Streaming Trace data reporting MnS consumer + (a.k.a. streaming target). + This attribute shall be present if file based trace data reporting is + supported and tjTraceReportingFormat set to 'file based' or when tjJobType is set to Logged MDT or Logged MBSFN MDT."; reference "Clause 5.9 of 3GPP TS 32.422"; } - + leaf tjTraceCollectionEntityAddress { when './tjTraceReportingFormat = "FILE_BASED" or ' +'./tjJobType = "LOGGED_MDT_ONLY" or ./tjJobType = "LOGGED_MBSFN_MDT"'; @@ -412,41 +414,51 @@ module _3gpp-common-trace { type inet:ip-address; } mandatory true; - description "Specifies the address of the Trace Collection Entity when - the attribute tjTraceReportingFormat is configured for the file-based + description "Specifies the address of the Trace Collection Entity when + the attribute tjTraceReportingFormat is configured for the file-based reporting. The attribute is applicable for both Trace and MDT."; reference "Clause 5.9 of 3GPP TS 32.422"; } - + leaf tjTraceDepth { - when './tjJobType = "TRACE_ONLY" or ./tjJobType = "IMMEDIATE_MDT_AND_TRACE"'; + when './tjJobType = "TRACE_ONLY"' + + ' or ./tjJobType = "IMMEDIATE_MDT_AND_TRACE"'; type enumeration { enum MINIMUM; enum MEDIUM; enum MAXIMUM; enum VENDORMINIMUM; enum VENDORMEDIUM; - enum VENDORMAXIMUM; + enum VENDORMAXIMUM; } default MAXIMUM; - description "Specifies how detailed information should be recorded in the - Network Element. The Trace Depth is a paremeter for Trace Session level, - i.e., the Trace Depth is the same for all of the NEs to be traced in + description "Specifies how detailed information should be recorded in the + Network Element. The Trace Depth is a paremeter for Trace Session level, + i.e., the Trace Depth is the same for all of the NEs to be traced in the same Trace Session. - The attribute is applicable only for Trace, otherwise it carries a null + The attribute is applicable only for Trace, otherwise it carries a null semantic."; reference "Clause 5.3 of 3GPP TS 32.422"; } - + leaf tjTraceReference { type uint64; mandatory true; - description "A globally unique identifier, which uniquely identifies the - Trace Session that is created by the TraceJob. - In case of shared network, it is the MCC and MNC of the Participating + description "A globally unique identifier, which uniquely identifies the + Trace Session that is created by the TraceJob. + In case of shared network, it is the MCC and MNC of the Participating Operator that request the trace session that shall be provided. The attribute is applicable for both Trace and MDT."; } + + leaf tjTraceRecordSessionReference { + type string; + mandatory true; + description "An identifier, which identifies the Trace Recording Session. + The attribute is applicable for both Trace and MDT. + See the clause 5.7 of 3GPP TS 32.422 for additional details on the + allowed values."; + } leaf tjTraceReportingFormat { type enumeration { @@ -454,7 +466,7 @@ module _3gpp-common-trace { enum STREAMING; } default FILE_BASED; - description "Specifies the trace reporting format - streaming trace + description "Specifies the trace reporting format - streaming trace reporting or file-based trace reporting"; reference "3GPP TS 32.422 clause 5.11"; } @@ -481,46 +493,48 @@ module _3gpp-common-trace { leaf targetIdValue { type string; } - - description "Specifies the target object of the Trace and MDT. The - attribute is applicable for both Trace and MDT. This attribute + + description "Specifies the target object of the Trace and MDT. The + attribute is applicable for both Trace and MDT. This attribute includes the ID type of the target as an enumeration and the ID value. - - The tjTraceTarget shall be public ID in case of a Management Based - Activation is done to an ScscfFunction. The tjTraceTarget shall be - cell only in case of the UTRAN cell traffic trace function. - The tjTraceTarget shall be E-UtranCell only in case of E-UTRAN cell - traffic trace function.The tjTraceTarget shall be either IMSI or - IMEI(SV) if the Trace Session is activated to any of the following + The tjTraceTarget shall be public ID in case of a Management Based + Activation is done to an ScscfFunction. The tjTraceTarget shall be + cell only in case of the UTRAN cell traffic trace function. + + The tjTraceTarget shall be E-UtranCell only in case of E-UTRAN cell + traffic trace function.The tjTraceTarget shall be either IMSI or + IMEI(SV) if the Trace Session is activated to any of the following ManagedEntity(ies): - - HssFunction - - MscServerFunction - - SgsnFunction - - GgsnFunction - - BmscFunction - - RncFunction - - MmeFunction - - The tjTraceTarget shall be IMSI if the Trace Session is activated to a + - HssFunction + - MscServerFunction + - SgsnFunction + - GgsnFunction + - BmscFunction + - RncFunction + - MmeFunction + + The tjTraceTarget shall be IMSI if the Trace Session is activated to a ManagedEntity playing a role of ServinGWFunction. - In case of signaling based Trace/MDT, the tjTraceTarget attribute shall be - able to carry (IMSI or IMEI(SV)or SUPI), the tjMDTAreaScope attribute shall be - able to carry a list of (cell or E-UtranCell or NRCellDU or TA/LA/RA). + In case of signaling based Trace/MDT, the tjTraceTarget attribute shall + be able to carry (IMSI or IMEI(SV)or SUPI), the tjMDTAreaScope attribute + shall be able to carry a list of (cell or E-UtranCell or NRCellDU or + TA/LA/RA). - In case of management based Immediate MDT, the tjTraceTarget attribute - shall be null value, the tjMDTAreaScope attribute shall carry a list of + In case of management based Immediate MDT, the tjTraceTarget attribute + shall be null value, the tjMDTAreaScope attribute shall carry a list of (Utrancell or E-UtranCell or NRCellDU). - In case of management based Logged MDT, the tjTraceTarget attribute - shall carry an eBs or a RNC or gNBs. The Logged MDT should be initiated on - the specified eNB or RNC or gNB in tjTraceTarget. The tjMDTAreaScope attribute - shall carry a list of (Utrancell or E-UtranCell or NRCellDU or TA/LA/RA). + In case of management based Logged MDT, the tjTraceTarget attribute + shall carry an eBs or a RNC or gNBs. The Logged MDT should be initiated + on the specified eNB or RNC or gNB in tjTraceTarget. The tjMDTAreaScope + attribute shall carry a list of (Utrancell or E-UtranCell or NRCellDU or + TA/LA/RA). - In case of RLF reporting, or RCEF reporting, the tjTraceTarget attribute - shall be null value, the tjMDTAreaScope attribute shall carry one or - list of eNBs/gNBs"; + In case of RLF reporting, or RCEF reporting, the tjTraceTarget + attribute shall be null value, the tjMDTAreaScope attribute shall carry + one or list of eNBs/gNBs"; reference "3GPP TS 32.422"; } @@ -528,8 +542,8 @@ module _3gpp-common-trace { when './tjJobType = "TRACE" or ./tjJobType = "IMMEDIATE_MDT_AND_TRACE"'; type string ; mandatory true; - description "Specifies the triggering event parameter of the trace session. - The attribute is applicable only for Trace. In case this attribute is + description "Specifies the triggering event parameter of the trace session. + The attribute is applicable only for Trace. In case this attribute is not used, it carries a null semantic."; reference "Clause 5.1 of 3GPP TS 32.422"; } @@ -550,19 +564,19 @@ module _3gpp-common-trace { key "idx"; min-elements 1; leaf idx { type uint32 ; } - - description "It specifies the area for which UE is requested to perform - measurement logging for neighbour cells which have list of frequencies. - If it is not configured, the UE shall perform measurement logging for + + description "It specifies the area for which UE is requested to perform + measurement logging for neighbour cells which have list of frequencies. + If it is not configured, the UE shall perform measurement logging for all the neighbour cells. Applicable only to NR Logged MDT."; reference "3GPP TS 32.422 clause 5.10.26."; - + leaf frequency { type string; } - + leaf cell { type string; } @@ -570,13 +584,13 @@ module _3gpp-common-trace { leaf-list tjMDTAreaScope { type string; - description "specifies MDT area scope when activates an MDT job. + description "specifies MDT area scope when activates an MDT job. - For RLF and RCEF reporting it specifies the eNB or list of eNBs where the + For RLF and RCEF reporting it specifies the eNB or list of eNBs where the RLF or RCEF reports should be collected. - List of cells/TA/LA/RA for signaling based MDT or management based Logged + List of cells/TA/LA/RA for signaling based MDT or management based Logged MDT. List of cells for management based Immediate MDT. @@ -586,48 +600,51 @@ module _3gpp-common-trace { One or list of eNBs for RLF and RCEFreporting"; reference "Clause 5.10.2 of 3GPP TS 32.422"; } - + leaf tjMDTCollectionPeriodRrmLte { - when './tjJobType = "IMMEDIATE_MDT_ONLY" or ./tjJobType = "IMMEDIATE_MDT_AND_TRACE"'; + when './tjJobType = "IMMEDIATE_MDT_ONLY"' + + ' or ./tjJobType = "IMMEDIATE_MDT_AND_TRACE"'; type uint32 { range "250|500|1000|2000|3000|4000|6000|8000|12000|16000|20000|" +"24000|28000|32000|64000"; } units milliseconds; - description "Specifies the collection period for collecting RRM configured - measurement samples for M2, M3 in LTE. The attribute is applicable only - for Immediate MDT. In case this attribute is not used, it carries a + description "Specifies the collection period for collecting RRM configured + measurement samples for M2, M3 in LTE. The attribute is applicable only + for Immediate MDT. In case this attribute is not used, it carries a null semantic."; reference "Clause 5.10.20 of 3GPP TS 32.422"; } leaf tjMDTCollectionPeriodRrmUmts { - when './tjJobType = "IMMEDIATE_MDT_ONLY" or ./tjJobType = "IMMEDIATE_MDT_AND_TRACE"'; + when './tjJobType = "IMMEDIATE_MDT_ONLY"' + + ' or ./tjJobType = "IMMEDIATE_MDT_AND_TRACE"'; type uint32 { range "1024|1280|2048|2560|5120|" +"10240|60000"; } units milliseconds; - description "Specifies the collection period for collecting RRM configured - measurement samples for M3, M4, M5 in UMTS. The attribute is applicable - only for Immediate MDT. In case this attribute is not used, it carries + description "Specifies the collection period for collecting RRM configured + measurement samples for M3, M4, M5 in UMTS. The attribute is applicable + only for Immediate MDT. In case this attribute is not used, it carries a null semantic"; reference "Clause 5.10.21 of 3GPP TS 32.422"; } leaf tjMDTCollectionPeriodRrmNR { - when './tjJobType = "IMMEDIATE_MDT_ONLY" or ./tjJobType = "IMMEDIATE_MDT_AND_TRACE"'; + when './tjJobType = "IMMEDIATE_MDT_ONLY"' + + ' or ./tjJobType = "IMMEDIATE_MDT_AND_TRACE"'; type uint32 { range "1024|2048|5120|10240|60000"; } units milliseconds; - description "Specifies the collection period for collecting RRM configured - measurement samples for M4, M5 in NR. The attribute is applicable only - for Immediate MDT. In case this attribute is not used, it carries a - null semantic."; + description "Specifies the collection period for collecting RRM + configured measurement samples for M4, M5 in NR. The attribute is + applicable only for Immediate MDT. In case this attribute is not + used, it carries a null semantic."; reference "Clause 5.10.30 of 3GPP TS 32.422"; } - + leaf tjMDTEventListForTriggeredMeasurement { when './tjJobType = "LOGGED_MDT_ONLY"'; type enumeration { @@ -635,35 +652,35 @@ module _3gpp-common-trace { enum A2_EVENT ; } mandatory true; - description "Specifies event types for event triggered measurement in the - case of logged NR MDT. Each trace session may configure at most one - event. The UE shall perform logging of measurements only upon certain + description "Specifies event types for event triggered measurement in the + case of logged NR MDT. Each trace session may configure at most one + event. The UE shall perform logging of measurements only upon certain condition being fulfilled: - Out of coverage. - A2 event."; reference "Clause 5.10.28 of 3GPP TS 32.422"; } - + leaf tjMDTEventThreshold { type int64; - description "Specifies the threshold which should trigger the reporting - in case A2 event reporting in LTE or 1F/1l event in UMTS. The attribute - is applicable only for Immediate MDT and when reportingTrigger is - configured for A2 event in LTE or 1F event or 1l event in UMTS. In + description "Specifies the threshold which should trigger the reporting + in case A2 event reporting in LTE or 1F/1l event in UMTS. The attribute + is applicable only for Immediate MDT and when reportingTrigger is + configured for A2 event in LTE or 1F event or 1l event in UMTS. In case this attribute is not used, it carries a null semantic."; reference "Clauses 5.10.7 and 5.10.7a of 3GPP TS 32.422"; } - + leaf tjMDTListOfMeasurements { when './tjJobType = "IMMEDIATE_MDT"'; type int64; mandatory true; - description "It specifies the UE measurements that shall be collected in - an Immediate MDT job. The attribute is applicable only for Immediate MDT. + description "It specifies the UE measurements that shall be collected in + an Immediate MDT job. The attribute is applicable only for Immediate MDT. In case this attribute is not used, it carries a null semantic."; reference "3GPP TS 32.422 clause 5.10.3"; } - + leaf tjMDTLoggingDuration { when './tjJobType = "LOGGED_MDT_ONLY" or ./tjJobType = "LOGGED_MBSFN_MDT"'; type uint32 { @@ -671,13 +688,13 @@ module _3gpp-common-trace { } units seconds; mandatory true; - description "Specifies how long the MDT configuration is valid at the - UE in case of Logged MDT. The attribute is applicable only for - Logged MDT and Logged MBSFN MDT. In case this attribute is not used, it + description "Specifies how long the MDT configuration is valid at the + UE in case of Logged MDT. The attribute is applicable only for + Logged MDT and Logged MBSFN MDT. In case this attribute is not used, it carries a null semantic."; reference "5.10.9 of 3GPP TS 32.422"; } - + leaf tjMDTLoggingInterval { when './tjJobType = "LOGGED_MDT_ONLY" or ./tjJobType = "LOGGED_MBSFN_MDT"'; type uint32 { @@ -686,87 +703,92 @@ module _3gpp-common-trace { } units milliseconds; mandatory true; - description "Specifies the periodicty for Logged MDT. The attribute is - applicable only for Logged MDT and Logged MBSFN MDT. In case this + description "Specifies the periodicty for Logged MDT. The attribute is + applicable only for Logged MDT and Logged MBSFN MDT. In case this attribute is not used, it carries a null semantic"; reference "5.10.8 of 3GPP TS 32.422"; } - + leaf-list tjMDTMBSFNAreaList { when './tjJobType = "LOGGED_MBSFN_MDT"'; type string; min-elements 1; max-elements 8; - description "The MBSFN Area consists of a MBSFN Area ID and Carrier - Frequency (EARFCN). The target MBSFN area List can have up to 8 entries. + description "The MBSFN Area consists of a MBSFN Area ID and Carrier + Frequency (EARFCN). The target MBSFN area List can have up to 8 entries. This parameter is applicable only if the job type is Logged MBSFN MDT."; reference "5.10.25 of 3GPP TS 32.422"; } leaf tjMDTMeasurementPeriodLTE { - when './tjJobType = "IMMEDIATE_MDT_ONLY" or ./tjJobType = "IMMEDIATE_MDT_AND_TRACE"'; + when './tjJobType = "IMMEDIATE_MDT_ONLY"' + + ' or ./tjJobType = "IMMEDIATE_MDT_AND_TRACE"'; type uint32 { range "1024|1280|2048|2560|5120|" +"10240|60000"; } units milliseconds; mandatory true; - description "It specifies the measurement period for the Data Volume and - Scheduled IP throughput measurements for MDT taken by the eNB. - The attribute is applicable only for Immediate MDT. In case this + description "It specifies the measurement period for the Data Volume and + Scheduled IP throughput measurements for MDT taken by the eNB. + The attribute is applicable only for Immediate MDT. In case this attribute is not used, it carries a null semantic."; reference "Clause 5.10.23 of 3GPP TS 32.422"; } leaf tjMDTMeasurementPeriodUMTS { - when './tjJobType = "IMMEDIATE_MDT_ONLY" or ./tjJobType = "IMMEDIATE_MDT_AND_TRACE"'; + when './tjJobType = "IMMEDIATE_MDT_ONLY"' + + 'or ./tjJobType = "IMMEDIATE_MDT_AND_TRACE"'; type uint32 { range "250|500|1000|2000|3000|4000|6000|8000|12000|16000|20000|" +"24000|28000|32000|64000"; } units milliseconds; mandatory true; - description "It specifies the measurement period for the Data Volume and - Throughput measurements for MDT taken by RNC. - The attribute is applicable only for Immediate MDT. In case this + description "It specifies the measurement period for the Data Volume and + Throughput measurements for MDT taken by RNC. + The attribute is applicable only for Immediate MDT. In case this attribute is not used, it carries a null semantic."; reference "Clause 5.10.22 of 3GPP TS 32.422"; } - + leaf tjMDTMeasurementQuantity { - when './tjJobType = "IMMEDIATE_MDT_ONLY" or ./tjJobType = "IMMEDIATE_MDT_AND_TRACE"'; + when './tjJobType = "IMMEDIATE_MDT_ONLY"' + + ' or ./tjJobType = "IMMEDIATE_MDT_AND_TRACE"'; type uint64 ; mandatory true; - description "It specifies the measurements that are collected in an MDT + description "It specifies the measurements that are collected in an MDT job for a UMTS MDT configured for event triggered reporting."; reference "Clause 5.10.15 of 3GPP TS 32.422"; } - + list tjMDTPLMList { when './tjJobType = "LOGGED_MDT_ONLY"'; key "mcc mnc"; uses types3gpp:PLMNId; min-elements 1; max-elements 16; - description "It indicates the PLMNs where measurement collection, status + description "It indicates the PLMNs where measurement collection, status indication and log reporting is allowed."; reference "Clause 5.10.24 of 3GPP TS 32.422"; } leaf tjMDTPositioningMethod { - when './tjJobType = "IMMEDIATE_MDT_ONLY" or ./tjJobType = "IMMEDIATE_MDT_AND_TRACE"'; + when './tjJobType = "IMMEDIATE_MDT_ONLY"' + + ' or ./tjJobType = "IMMEDIATE_MDT_AND_TRACE"'; type enumeration { enum GNSS; enum E_CELL_ID; } mandatory true; - description "It specifies what positioning method should be used in the + description "It specifies what positioning method should be used in the MDT job."; reference "Clause 5.10.19 of 3GPP TS 32.422"; } - + leaf tjMDTReportAmount { - when './tjJobType = "IMMEDIATE_MDT_ONLY" and ./tjMDTReportingTrigger = "PERIODICAL"'; + when './tjJobType = "IMMEDIATE_MDT_ONLY"' + + ' and ./tjMDTReportingTrigger = "PERIODICAL"'; type union { type uint32 { range "1|4|8|16|32|64" ; @@ -776,14 +798,14 @@ module _3gpp-common-trace { } } mandatory true; - description "It specifies the number of measurement reports that shall be - taken for periodic reporting while the UE is in connected. - The attribute is applicable only for Immediate MDT and when - tjMDTReportingTrigger is configured for periodical measurements. In + description "It specifies the number of measurement reports that shall be + taken for periodic reporting while the UE is in connected. + The attribute is applicable only for Immediate MDT and when + tjMDTReportingTrigger is configured for periodical measurements. In case this attribute is not used, it carries a null semantic."; reference "Clause 5.10.6 of 3GPP TS 32.422"; } - + leaf tjMDTReportingTrigger { when './tjJobType = "IMMEDIATE_MDT_ONLY"'; type enumeration { @@ -795,17 +817,18 @@ module _3gpp-common-trace { enum ALL_CONFIGURED_RRM_FOR_LTE; enum ALL_CONFIGURED_RRM_FOR_UMTS; } - description "It specifies whether periodic or event based measurements - should be collected. - The attribute is applicable only for Immediate MDT and when the - tjMDTListOfMeasurements is configured for M1 (for both UMTS and LTE) - or M2 (only for UMTS). In case this attribute is not used, it carries + description "It specifies whether periodic or event based measurements + should be collected. + The attribute is applicable only for Immediate MDT and when the + tjMDTListOfMeasurements is configured for M1 (for both UMTS and LTE) + or M2 (only for UMTS). In case this attribute is not used, it carries a null semantic."; reference "Clause 5.10.4 of 3GPP TS 32.422"; } - + leaf tjMDTReportInterval { - when './tjJobType = "IMMEDIATE_MDT_ONLY" and ./tjMDTReportingTrigger = "PERIODICAL"'; + when './tjJobType = "IMMEDIATE_MDT_ONLY"' + + ' and ./tjMDTReportingTrigger = "PERIODICAL"'; type uint32 { range "120|240|250|480|500|640|1000|1024|2000|2048|3000|4000|" +"5120|6000|8000|10240|12000|16000|20000|" @@ -814,14 +837,14 @@ module _3gpp-common-trace { } units milliseconds; mandatory true; - description "It specifies the interval between the periodical measurements - that shall be taken when the UE is in connected mode. - The attribute is applicable only for Immediate MDT and when - tjMDTReportingTrigger is configured for periodical measurements. In case + description "It specifies the interval between the periodical measurements + that shall be taken when the UE is in connected mode. + The attribute is applicable only for Immediate MDT and when + tjMDTReportingTrigger is configured for periodical measurements. In case this attribute is not used, it carries a null semantic."; reference "5.10.5 of 3GPP TS 32.422"; - } - + } + leaf tjMDTReportType { when './tjJobType = "LOGGED_MDT_ONLY"'; type enumeration { @@ -832,7 +855,7 @@ module _3gpp-common-trace { description "It specifies report type for logged NR MDT"; reference "Clause 5.10.27 of 3GPP TS 32.422"; } - + leaf tjMDTSensorInformation { type bits { bit BAROMETRIC_PRESSURE; @@ -840,56 +863,137 @@ module _3gpp-common-trace { bit UE_ORIENTATION; } default ""; - description "It specifies which sensor information shall be included in - logged NR MDT and immediate NR MDT measurement if they are available. - The following sensor measurement can be included or excluded for the UE."; + description "It specifies which sensor information shall be included in + logged NR MDT and immediate NR MDT measurement if they are available. + The following sensor measurement can be included or excluded for + the UE."; reference "Clause 5.10.29 of 3GPP TS 32.422"; } - + leaf tjMDTTraceCollectionEntityID { when './tjJobType = "LOGGED_MDT_ONLY" or ./tjJobType = "LOGGED_MBSFN_MDT"'; type uint8; mandatory true; - description "It specifies the TCE Id which is sent to the UE in Logged MDT."; + description "It specifies the TCE Id which is sent to the UE in + Logged MDT."; reference "Clause 5.10.11 of 3GPP TS 32.422"; } } - + grouping TraceSubtree { - description "Contains classes that manage Tracing. - Should be used in all classes (or classes inheriting from) + description "Contains classes that manage Tracing. + Should be used in all classes (or classes inheriting from) - SubNnetwork - ManagedElement - ManagedFunction - - If a YANG module wants to augment these classes/list/groupings they must + + If a YANG module wants to augment these classes/list/groupings they must augment all user classes!"; - + list TraceJob { - description "Represents the Trace Control and Configuration parameters of a + description "Represents the Trace Control and Configuration parameters of a particular Trace Job (see TS 32.421 and TS 32.422 for details). - - To activate Trace Jobs, a MnS consumer has to create TraceJob object - instances on the MnS producer. A MnS consumer can activate a Trace Job - for another MnS consumer since it is not required the value of - tjTraceCollectionEntityAddress or tjStreamingTraceConsumerUri to be his + It can be name-contained by SubNetwork, ManagedElement, ManagedFunction + or NetworkSliceSubnet. + + To activate Trace Jobs, a MnS consumer has to create TraceJob object + instances on the MnS producer. A MnS consumer can activate a Trace Job + for another MnS consumer since it is not required the value of + tjTraceCollectionEntityAddress or tjStreamingTraceConsumerUri to be his own. - - When a MnS consumer wishes to deactivate a Trace Job, the MnS consumer - shall delete the corresponding TraceJob instance. - - For details of management Trace Job activation/deactivation see clause + + When a MnS consumer wishes to deactivate a Trace Job, the MnS consumer + shall delete the corresponding TraceJob instance. + + For details of management Trace Job activation/deactivation see clause 4.1.1.1.2 of TS 32.422. - Creation and deletion of TraceJob instances by MnS consumers is optional; - when not supported, the TraceJob instances may be created and deleted by + The attribute tjJobType specifies the kind of data to collect. Dependent + on the selected type various parameters shall be available. The + attributes tjJobType, tjTraceReference, tjTraceRecordSessionReference, + tjTraceCollectionEntityAddress and tjTraceReportingFormat are mandatory + for all job types. If streaming reporting is selected for + tjTraceReportingFormat, tjStreamingTraceConsumerURI shall be present + additionally. The attribute tjPLMNTarget shall be present if trace + activation method is management based. + + For the different job types the attributes are differentiated as follows: + - In case of TRACE_ONLY additionally the following attributes shall be + available: tjListOfNeTypes, tjTraceDepth, tjTraceTarget and + tjTriggeringEvent. + + For this case the optional attribute tjListOfInterfaces allows to + specify the interfaces to be recorded. + + - In case of IMMEDIATE_MDT_ONLY additionally the following attributes + shall be available: + - tjTraceTarget + - tjMDTAnonymizationOfData, + - tjMDTListOfMeasurements, + - tjMDTCollectionPeriodRrmUmts (conditional for M3, M4 and M5 in UMTS), + - tjMDTMeasurementPeriodUMTS (conditional for M6 and M7 in UMTS), + - tjMDTCollectionPeriodRrmLte (conditional for M2 and M3 in LTE), + - tjMDTMeasurementPeriodLTE (conditional for M4 and M5 in LTE), + - tjMDTCollectionPeriodM6Lte (conditional for M6 in LTE), + - tjMDTCollectionPeriodM7Lte (conditional for M7 in LTE), + - tjMDTCollectionPeriodRrmNR (conditional for M4 and M5 in NR), + - tjMDTCollectionPeriodM6NR (conditional for M6 in NR), + - tjMDTCollectionPeriodM7NR (conditional for M7 in NR), + - tjMDTReportInterval (conditional for M1 in LTE or NR and M1/M2 in + UMTS), + - tjMDTReportAmount (conditional for M1 in LTE or NR and M1/M2 in + UMTS), + - tjMDTReportingTrigger (conditional for M1 in LTE or NR and M1/M2 in + UMTS), + - tjMDTEventThreshold (conditional for A2 event reporting or A2 event + triggered periodic reporting), + - tjMDTMeasurementQuantity (conditional for 1F event reporting). + + For this case the optional attribute tjMDTAreaScope allows to specify + the area in terms of cells or Tracking Area/Routing Area/Location area + where the MDT data collection shall take place and the optional + attributes tjMDTPositioningMethod, tjMDTSensorInformation allow to + specify the positioning methods to use or the sensor information to + include. + + - In case of IMMEDIATE_MDT_AND_TRACE both additional attributes of + TRACE_ONLY and IMMEDIATE_MDT_ONLY shall apply. + + - In case of LOGGED_MDT_ONLY additionally the following attributes + shall be available: tjTraceTarget, tjMDTAnonymizationOfData, + tjMDTTraceCollectionEntityID, tjMDTLoggingInterval, + tjMDTLoggingDuration, tjMDTReportType, + tjMDTEventListForTriggeredMeasurements. + + For this case the optional attribute tjMDTAreaScope allows to specify + the area in terms of cells or Tracking Area/Routing Area/Location area + where the MDT data collection shall take place, the optional attribute + tjMDTPLMNList allows to specify the PLMNs where measurement collection, + status indication and log reporting is allowed, the optional attribute + tjMDTAreaConfigurationForNeighCell allows to specify the area for + which UE is requested to perform measurements logging for neighbour + cells which have list of frequencies and the optional attribute + tjMDTSensorInformation allows to specify the sensor information to + include. + + - In case of RLF_REPORT_ONLY and RCEF_REPORT_ONLY additionally the + attribute tjTraceTarget shall be available, the optional attribute + tjMDTAreaScope allows to specify the eNB or list of eNBs or gNB or + list of gNBs where the reports should be collected. + + - In case of LOGGED_MBSFN_MDT additionally the following attributes + shall be available: tjMDTAnonymizationOfData, tjMDTLoggingInterval, + tjMDTLoggingDuration, tjMDTMBSFNAreaList. + + Creation and deletion of TraceJob instances by MnS consumers is optional; + when not supported, the TraceJob instances may be created and deleted by the system or be pre-installed."; - - key id; - uses top3gpp:Top_Grp ; + + key id; + uses top3gpp:Top_Grp ; container attributes { uses TraceJobGrp ; - } + } } } } \ No newline at end of file -- GitLab From 816a87a2b19552c49386c30bc37cdebdc1a942f1 Mon Sep 17 00:00:00 2001 From: sunse Date: Mon, 16 Aug 2021 13:29:28 +0200 Subject: [PATCH 107/593] Update nrNrm.yaml --- OpenAPI/nrNrm.yaml | 28 ++++++++++++++-------------- 1 file changed, 14 insertions(+), 14 deletions(-) diff --git a/OpenAPI/nrNrm.yaml b/OpenAPI/nrNrm.yaml index b1a462f33..00c32396f 100644 --- a/OpenAPI/nrNrm.yaml +++ b/OpenAPI/nrNrm.yaml @@ -887,6 +887,20 @@ components: type: array items: $ref: 'genericNrm.yaml#/components/schemas/Dn' + rimRSMonitoringStartTime: + type: string + rimRSMonitoringStopTime: + type: string + rimRSMonitoringWindowDuration: + type: integer + rimRSMonitoringWindowStartingOffset: + type: integer + rimRSMonitoringWindowPeriodicity: + type: integer + rimRSMonitoringOccasionInterval: + type: integer + rimRSMonitoringOccasionStartingOffset: + type: integer nRFrequencyRef: $ref: 'genericNrm.yaml#/components/schemas/Dn' victimSetRef: @@ -1393,20 +1407,6 @@ components: $ref: '#/components/schemas/RSSetId' setType: $ref: '#/components/schemas/RSSetType' - rimRSMonitoringStartTime: - type: string - rimRSMonitoringStopTime: - type: string - rimRSMonitoringWindowDuration: - type: integer - rimRSMonitoringWindowStartingOffset: - type: integer - rimRSMonitoringWindowPeriodicity: - type: integer - rimRSMonitoringOccasionInterval: - type: integer - rimRSMonitoringOccasionStartingOffset: - type: integer nRCellDURefs: $ref: 'genericNrm.yaml#/components/schemas/DnList' -- GitLab From 85e6a7f28b08e14431aa3d96bd48b8a9a1da552e Mon Sep 17 00:00:00 2001 From: sunse Date: Mon, 16 Aug 2021 13:14:14 +0200 Subject: [PATCH 108/593] Update OpenAPI/nrNrm.yaml, OpenAPI/5gcNrm.yaml, OpenAPI/sliceNrm.yaml files --- OpenAPI/5gcNrm.yaml | 126 +++++++++++++++++++++--------------------- OpenAPI/nrNrm.yaml | 86 ++++++++++++++-------------- OpenAPI/sliceNrm.yaml | 8 +-- 3 files changed, 110 insertions(+), 110 deletions(-) diff --git a/OpenAPI/5gcNrm.yaml b/OpenAPI/5gcNrm.yaml index 042b94c04..57bbc0a72 100644 --- a/OpenAPI/5gcNrm.yaml +++ b/OpenAPI/5gcNrm.yaml @@ -469,7 +469,7 @@ components: SubNetwork-Single: allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - $ref: 'genericNrm.yaml#/components/schemas/Top' - type: object properties: attributes: @@ -499,7 +499,7 @@ components: ManagedElement-Single: allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - $ref: 'genericNrm.yaml#/components/schemas/Top' - type: object properties: attributes: @@ -551,7 +551,7 @@ components: AmfFunction-Single: allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - $ref: 'genericNrm.yaml#/components/schemas/Top' - type: object properties: attributes: @@ -604,7 +604,7 @@ components: $ref: '#/components/schemas/EP_NLG-Multiple' AmfSet-Single: allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - $ref: 'genericNrm.yaml#/components/schemas/Top' - type: object properties: attributes: @@ -622,7 +622,7 @@ components: $ref: 'nrNrm.yaml#/components/schemas/SnssaiList' AmfRegion-Single: allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - $ref: 'genericNrm.yaml#/components/schemas/Top' - type: object properties: attributes: @@ -640,7 +640,7 @@ components: $ref: 'nrNrm.yaml#/components/schemas/SnssaiList' SmfFunction-Single: allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - $ref: 'genericNrm.yaml#/components/schemas/Top' - type: object properties: attributes: @@ -691,7 +691,7 @@ components: UpfFunction-Single: allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - $ref: 'genericNrm.yaml#/components/schemas/Top' - type: object properties: attributes: @@ -724,7 +724,7 @@ components: $ref: '#/components/schemas/EP_S5U-Multiple' N3iwfFunction-Single: allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - $ref: 'genericNrm.yaml#/components/schemas/Top' - type: object properties: attributes: @@ -745,7 +745,7 @@ components: $ref: '#/components/schemas/EP_N4-Multiple' PcfFunction-Single: allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - $ref: 'genericNrm.yaml#/components/schemas/Top' - type: object properties: attributes: @@ -786,7 +786,7 @@ components: AusfFunction-Single: allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - $ref: 'genericNrm.yaml#/components/schemas/Top' - type: object properties: attributes: @@ -813,7 +813,7 @@ components: $ref: '#/components/schemas/EP_N13-Multiple' UdmFunction-Single: allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - $ref: 'genericNrm.yaml#/components/schemas/Top' - type: object properties: attributes: @@ -842,7 +842,7 @@ components: $ref: '#/components/schemas/EP_N13-Multiple' UdrFunction-Single: allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - $ref: 'genericNrm.yaml#/components/schemas/Top' - type: object properties: attributes: @@ -860,7 +860,7 @@ components: $ref: '#/components/schemas/ManagedNFProfile' UdsfFunction-Single: allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - $ref: 'genericNrm.yaml#/components/schemas/Top' - type: object properties: attributes: @@ -878,7 +878,7 @@ components: $ref: '#/components/schemas/ManagedNFProfile' NrfFunction-Single: allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - $ref: 'genericNrm.yaml#/components/schemas/Top' - type: object properties: attributes: @@ -903,7 +903,7 @@ components: $ref: '#/components/schemas/EP_N27-Multiple' NssfFunction-Single: allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - $ref: 'genericNrm.yaml#/components/schemas/Top' - type: object properties: attributes: @@ -932,7 +932,7 @@ components: $ref: '#/components/schemas/EP_N31-Multiple' SmsfFunction-Single: allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - $ref: 'genericNrm.yaml#/components/schemas/Top' - type: object properties: attributes: @@ -959,7 +959,7 @@ components: $ref: '#/components/schemas/EP_MAP_SMSC-Multiple' LmfFunction-Single: allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - $ref: 'genericNrm.yaml#/components/schemas/Top' - type: object properties: attributes: @@ -980,7 +980,7 @@ components: $ref: '#/components/schemas/EP_NLS-Multiple' NgeirFunction-Single: allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - $ref: 'genericNrm.yaml#/components/schemas/Top' - type: object properties: attributes: @@ -1005,7 +1005,7 @@ components: $ref: '#/components/schemas/EP_N17-Multiple' SeppFunction-Single: allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - $ref: 'genericNrm.yaml#/components/schemas/Top' - type: object properties: attributes: @@ -1028,7 +1028,7 @@ components: $ref: '#/components/schemas/EP_N32-Multiple' NwdafFunction-Single: allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - $ref: 'genericNrm.yaml#/components/schemas/Top' - type: object properties: attributes: @@ -1051,7 +1051,7 @@ components: ScpFunction-Single: allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - $ref: 'genericNrm.yaml#/components/schemas/Top' - type: object properties: attributes: @@ -1066,7 +1066,7 @@ components: - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' NefFunction-Single: allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - $ref: 'genericNrm.yaml#/components/schemas/Top' - type: object properties: attributes: @@ -1088,7 +1088,7 @@ components: NsacfFunction-Single: allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - $ref: 'genericNrm.yaml#/components/schemas/Top' - type: object properties: attributes: @@ -1110,7 +1110,7 @@ components: ExternalAmfFunction-Single: allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - $ref: 'genericNrm.yaml#/components/schemas/Top' - type: object properties: attributes: @@ -1124,7 +1124,7 @@ components: $ref: '#/components/schemas/AmfIdentifier' ExternalNrfFunction-Single: allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - $ref: 'genericNrm.yaml#/components/schemas/Top' - type: object properties: attributes: @@ -1136,7 +1136,7 @@ components: $ref: 'nrNrm.yaml#/components/schemas/PlmnIdList' ExternalNssfFunction-Single: allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - $ref: 'genericNrm.yaml#/components/schemas/Top' - type: object properties: attributes: @@ -1148,7 +1148,7 @@ components: $ref: 'nrNrm.yaml#/components/schemas/PlmnIdList' ExternalSeppFunction-Single: allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - $ref: 'genericNrm.yaml#/components/schemas/Top' - type: object properties: attributes: @@ -1166,7 +1166,7 @@ components: EP_N2-Single: allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - $ref: 'genericNrm.yaml#/components/schemas/Top' - type: object properties: attributes: @@ -1180,7 +1180,7 @@ components: $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' EP_N3-Single: allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - $ref: 'genericNrm.yaml#/components/schemas/Top' - type: object properties: attributes: @@ -1196,7 +1196,7 @@ components: $ref: 'genericNrm.yaml#/components/schemas/DnList' EP_N4-Single: allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - $ref: 'genericNrm.yaml#/components/schemas/Top' - type: object properties: attributes: @@ -1210,7 +1210,7 @@ components: $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' EP_N5-Single: allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - $ref: 'genericNrm.yaml#/components/schemas/Top' - type: object properties: attributes: @@ -1224,7 +1224,7 @@ components: $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' EP_N6-Single: allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - $ref: 'genericNrm.yaml#/components/schemas/Top' - type: object properties: attributes: @@ -1238,7 +1238,7 @@ components: $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' EP_N7-Single: allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - $ref: 'genericNrm.yaml#/components/schemas/Top' - type: object properties: attributes: @@ -1252,7 +1252,7 @@ components: $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' EP_N8-Single: allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - $ref: 'genericNrm.yaml#/components/schemas/Top' - type: object properties: attributes: @@ -1266,7 +1266,7 @@ components: $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' EP_N9-Single: allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - $ref: 'genericNrm.yaml#/components/schemas/Top' - type: object properties: attributes: @@ -1280,7 +1280,7 @@ components: $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' EP_N10-Single: allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - $ref: 'genericNrm.yaml#/components/schemas/Top' - type: object properties: attributes: @@ -1294,7 +1294,7 @@ components: $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' EP_N11-Single: allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - $ref: 'genericNrm.yaml#/components/schemas/Top' - type: object properties: attributes: @@ -1308,7 +1308,7 @@ components: $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' EP_N12-Single: allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - $ref: 'genericNrm.yaml#/components/schemas/Top' - type: object properties: attributes: @@ -1322,7 +1322,7 @@ components: $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' EP_N13-Single: allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - $ref: 'genericNrm.yaml#/components/schemas/Top' - type: object properties: attributes: @@ -1336,7 +1336,7 @@ components: $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' EP_N14-Single: allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - $ref: 'genericNrm.yaml#/components/schemas/Top' - type: object properties: attributes: @@ -1350,7 +1350,7 @@ components: $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' EP_N15-Single: allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - $ref: 'genericNrm.yaml#/components/schemas/Top' - type: object properties: attributes: @@ -1364,7 +1364,7 @@ components: $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' EP_N16-Single: allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - $ref: 'genericNrm.yaml#/components/schemas/Top' - type: object properties: attributes: @@ -1378,7 +1378,7 @@ components: $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' EP_N17-Single: allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - $ref: 'genericNrm.yaml#/components/schemas/Top' - type: object properties: attributes: @@ -1393,7 +1393,7 @@ components: EP_N20-Single: allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - $ref: 'genericNrm.yaml#/components/schemas/Top' - type: object properties: attributes: @@ -1408,7 +1408,7 @@ components: EP_N21-Single: allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - $ref: 'genericNrm.yaml#/components/schemas/Top' - type: object properties: attributes: @@ -1422,7 +1422,7 @@ components: $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' EP_N22-Single: allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - $ref: 'genericNrm.yaml#/components/schemas/Top' - type: object properties: attributes: @@ -1437,7 +1437,7 @@ components: EP_N26-Single: allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - $ref: 'genericNrm.yaml#/components/schemas/Top' - type: object properties: attributes: @@ -1451,7 +1451,7 @@ components: $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' EP_N27-Single: allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - $ref: 'genericNrm.yaml#/components/schemas/Top' - type: object properties: attributes: @@ -1467,7 +1467,7 @@ components: EP_N31-Single: allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - $ref: 'genericNrm.yaml#/components/schemas/Top' - type: object properties: attributes: @@ -1481,7 +1481,7 @@ components: $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' EP_N32-Single: allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - $ref: 'genericNrm.yaml#/components/schemas/Top' - type: object properties: attributes: @@ -1504,7 +1504,7 @@ components: EP_S5C-Single: allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - $ref: 'genericNrm.yaml#/components/schemas/Top' - type: object properties: attributes: @@ -1518,7 +1518,7 @@ components: $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' EP_S5U-Single: allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - $ref: 'genericNrm.yaml#/components/schemas/Top' - type: object properties: attributes: @@ -1532,7 +1532,7 @@ components: $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' EP_Rx-Single: allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - $ref: 'genericNrm.yaml#/components/schemas/Top' - type: object properties: attributes: @@ -1546,7 +1546,7 @@ components: $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' EP_MAP_SMSC-Single: allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - $ref: 'genericNrm.yaml#/components/schemas/Top' - type: object properties: attributes: @@ -1560,7 +1560,7 @@ components: $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' EP_NLS-Single: allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - $ref: 'genericNrm.yaml#/components/schemas/Top' - type: object properties: attributes: @@ -1574,7 +1574,7 @@ components: $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' EP_NLG-Single: allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - $ref: 'genericNrm.yaml#/components/schemas/Top' - type: object properties: attributes: @@ -1589,7 +1589,7 @@ components: EP_N60-Single: allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - $ref: 'genericNrm.yaml#/components/schemas/Top' - type: object properties: attributes: @@ -1604,7 +1604,7 @@ components: FiveQiDscpMappingSet-Single: allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - $ref: 'genericNrm.yaml#/components/schemas/Top' - type: object properties: attributes: @@ -1644,7 +1644,7 @@ components: $ref: '#/components/schemas/FiveQICharacteristics-Single' Configurable5QISet-Single: allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - $ref: 'genericNrm.yaml#/components/schemas/Top' - type: object properties: attributes: @@ -1658,7 +1658,7 @@ components: Dynamic5QISet-Single: allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - $ref: 'genericNrm.yaml#/components/schemas/Top' - type: object properties: attributes: @@ -1672,7 +1672,7 @@ components: GtpUPathQoSMonitoringControl-Single: allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - $ref: 'genericNrm.yaml#/components/schemas/Top' - type: object properties: attributes: @@ -1709,7 +1709,7 @@ components: QFQoSMonitoringControl-Single: allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - $ref: 'genericNrm.yaml#/components/schemas/Top' - type: object properties: attributes: @@ -1746,7 +1746,7 @@ components: PredefinedPccRuleSet-Single: allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - $ref: 'genericNrm.yaml#/components/schemas/Top' - type: object properties: attributes: diff --git a/OpenAPI/nrNrm.yaml b/OpenAPI/nrNrm.yaml index 00c32396f..b235070e0 100644 --- a/OpenAPI/nrNrm.yaml +++ b/OpenAPI/nrNrm.yaml @@ -583,7 +583,7 @@ components: SubNetwork-Single: allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - $ref: 'genericNrm.yaml#/components/schemas/Top' - type: object properties: attributes: @@ -624,7 +624,7 @@ components: ManagedElement-Single: allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - $ref: 'genericNrm.yaml#/components/schemas/Top' - type: object properties: attributes: @@ -657,7 +657,7 @@ components: GnbDuFunction-Single: allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - $ref: 'genericNrm.yaml#/components/schemas/Top' - type: object properties: attributes: @@ -694,7 +694,7 @@ components: $ref: '#/components/schemas/DRACHOptimizationFunction-Single' GnbCuUpFunction-Single: allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - $ref: 'genericNrm.yaml#/components/schemas/Top' - type: object properties: attributes: @@ -733,7 +733,7 @@ components: $ref: '#/components/schemas/EP_S1U-Multiple' GnbCuCpFunction-Single: allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - $ref: 'genericNrm.yaml#/components/schemas/Top' - type: object properties: attributes: @@ -793,7 +793,7 @@ components: NrCellCu-Single: allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - $ref: 'genericNrm.yaml#/components/schemas/Top' - type: object properties: attributes: @@ -831,7 +831,7 @@ components: NrCellDu-Single: allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - $ref: 'genericNrm.yaml#/components/schemas/Top' - type: object properties: attributes: @@ -919,7 +919,7 @@ components: NRFrequency-Single: allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - $ref: 'genericNrm.yaml#/components/schemas/Top' - type: object properties: attributes: @@ -937,7 +937,7 @@ components: maximum: 256 EUtranFrequency-Single: allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - $ref: 'genericNrm.yaml#/components/schemas/Top' - type: object properties: attributes: @@ -954,7 +954,7 @@ components: NrSectorCarrier-Single: allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - $ref: 'genericNrm.yaml#/components/schemas/Top' - type: object properties: attributes: @@ -983,7 +983,7 @@ components: $ref: '#/components/schemas/CommonBeamformingFunction-Single' Bwp-Single: allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - $ref: 'genericNrm.yaml#/components/schemas/Top' - type: object properties: attributes: @@ -1006,7 +1006,7 @@ components: - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' CommonBeamformingFunction-Single: allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - $ref: 'genericNrm.yaml#/components/schemas/Top' - type: object properties: attributes: @@ -1025,7 +1025,7 @@ components: $ref: '#/components/schemas/Beam-Multiple' Beam-Single: allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - $ref: 'genericNrm.yaml#/components/schemas/Top' - type: object properties: attributes: @@ -1056,7 +1056,7 @@ components: maximum: 1800 RRMPolicyRatio-Single: allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - $ref: 'genericNrm.yaml#/components/schemas/Top' - type: object properties: attributes: @@ -1073,7 +1073,7 @@ components: NRCellRelation-Single: allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - $ref: 'genericNrm.yaml#/components/schemas/Top' - type: object properties: attributes: @@ -1099,7 +1099,7 @@ components: type: boolean EUtranCellRelation-Single: allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - $ref: 'genericNrm.yaml#/components/schemas/Top' - type: object properties: attributes: @@ -1112,7 +1112,7 @@ components: - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' NRFreqRelation-Single: allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - $ref: 'genericNrm.yaml#/components/schemas/Top' - type: object properties: attributes: @@ -1175,7 +1175,7 @@ components: $ref: 'genericNrm.yaml#/components/schemas/Dn' EUtranFreqRelation-Single: allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - $ref: 'genericNrm.yaml#/components/schemas/Top' - type: object properties: attributes: @@ -1238,7 +1238,7 @@ components: $ref: 'genericNrm.yaml#/components/schemas/Dn' DANRManagementFunction-Single: allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - $ref: 'genericNrm.yaml#/components/schemas/Top' - type: object properties: attributes: @@ -1251,7 +1251,7 @@ components: DESManagementFunction-Single: allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - $ref: 'genericNrm.yaml#/components/schemas/Top' - type: object properties: attributes: @@ -1286,7 +1286,7 @@ components: DRACHOptimizationFunction-Single: allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - $ref: 'genericNrm.yaml#/components/schemas/Top' - type: object properties: attributes: @@ -1302,7 +1302,7 @@ components: DMROFunction-Single: allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - $ref: 'genericNrm.yaml#/components/schemas/Top' - type: object properties: attributes: @@ -1319,7 +1319,7 @@ components: DPCIConfigurationFunction-Single: allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - $ref: 'genericNrm.yaml#/components/schemas/Top' - type: object properties: attributes: @@ -1332,7 +1332,7 @@ components: CPCIConfigurationFunction-Single: allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - $ref: 'genericNrm.yaml#/components/schemas/Top' - type: object properties: attributes: @@ -1345,7 +1345,7 @@ components: CESManagementFunction-Single: allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - $ref: 'genericNrm.yaml#/components/schemas/Top' - type: object properties: attributes: @@ -1380,7 +1380,7 @@ components: RimRSGlobal-Single: allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - $ref: 'genericNrm.yaml#/components/schemas/Top' - type: object properties: attributes: @@ -1397,7 +1397,7 @@ components: RimRSSet-Single: allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - $ref: 'genericNrm.yaml#/components/schemas/Top' - type: object properties: attributes: @@ -1412,7 +1412,7 @@ components: ExternalGnbDuFunction-Single: allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - $ref: 'genericNrm.yaml#/components/schemas/Top' - type: object properties: attributes: @@ -1433,7 +1433,7 @@ components: $ref: '#/components/schemas/EP_F1U-Multiple' ExternalGnbCuUpFunction-Single: allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - $ref: 'genericNrm.yaml#/components/schemas/Top' - type: object properties: attributes: @@ -1456,7 +1456,7 @@ components: $ref: '#/components/schemas/EP_XnU-Multiple' ExternalGnbCuCpFunction-Single: allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - $ref: 'genericNrm.yaml#/components/schemas/Top' - type: object properties: attributes: @@ -1484,7 +1484,7 @@ components: $ref: '#/components/schemas/EP_F1C-Multiple' ExternalNrCellCu-Single: allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - $ref: 'genericNrm.yaml#/components/schemas/Top' - type: object properties: attributes: @@ -1503,7 +1503,7 @@ components: - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' ExternalENBFunction-Single: allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - $ref: 'genericNrm.yaml#/components/schemas/Top' - type: object properties: attributes: @@ -1520,7 +1520,7 @@ components: $ref: '#/components/schemas/ExternalEUTranCell-Multiple' ExternalEUTranCell-Single: allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - $ref: 'genericNrm.yaml#/components/schemas/Top' - type: object properties: attributes: @@ -1534,7 +1534,7 @@ components: EP_XnC-Single: allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - $ref: 'genericNrm.yaml#/components/schemas/Top' - type: object properties: attributes: @@ -1548,7 +1548,7 @@ components: $ref: '#/components/schemas/RemoteAddress' EP_E1-Single: allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - $ref: 'genericNrm.yaml#/components/schemas/Top' - type: object properties: attributes: @@ -1562,7 +1562,7 @@ components: $ref: '#/components/schemas/RemoteAddress' EP_F1C-Single: allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - $ref: 'genericNrm.yaml#/components/schemas/Top' - type: object properties: attributes: @@ -1576,7 +1576,7 @@ components: $ref: '#/components/schemas/RemoteAddress' EP_NgC-Single: allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - $ref: 'genericNrm.yaml#/components/schemas/Top' - type: object properties: attributes: @@ -1590,7 +1590,7 @@ components: $ref: '#/components/schemas/RemoteAddress' EP_X2C-Single: allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - $ref: 'genericNrm.yaml#/components/schemas/Top' - type: object properties: attributes: @@ -1604,7 +1604,7 @@ components: $ref: '#/components/schemas/RemoteAddress' EP_XnU-Single: allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - $ref: 'genericNrm.yaml#/components/schemas/Top' - type: object properties: attributes: @@ -1618,7 +1618,7 @@ components: $ref: '#/components/schemas/RemoteAddress' EP_F1U-Single: allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - $ref: 'genericNrm.yaml#/components/schemas/Top' - type: object properties: attributes: @@ -1632,7 +1632,7 @@ components: $ref: '#/components/schemas/RemoteAddress' EP_NgU-Single: allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - $ref: 'genericNrm.yaml#/components/schemas/Top' - type: object properties: attributes: @@ -1649,7 +1649,7 @@ components: EP_X2U-Single: allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - $ref: 'genericNrm.yaml#/components/schemas/Top' - type: object properties: attributes: @@ -1663,7 +1663,7 @@ components: $ref: '#/components/schemas/RemoteAddress' EP_S1U-Single: allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - $ref: 'genericNrm.yaml#/components/schemas/Top' - type: object properties: attributes: diff --git a/OpenAPI/sliceNrm.yaml b/OpenAPI/sliceNrm.yaml index 046c85abe..f1ad099a3 100644 --- a/OpenAPI/sliceNrm.yaml +++ b/OpenAPI/sliceNrm.yaml @@ -491,7 +491,7 @@ components: #------------ Definition of concrete IOCs ---------------------------------------- SubNetwork-Single: allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - $ref: 'genericNrm.yaml#/components/schemas/Top' - type: object properties: attributes: @@ -511,7 +511,7 @@ components: NetworkSlice-Single: allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - $ref: 'genericNrm.yaml#/components/schemas/Top' - type: object properties: attributes: @@ -529,7 +529,7 @@ components: NetworkSliceSubnet-Single: allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - $ref: 'genericNrm.yaml#/components/schemas/Top' - type: object properties: attributes: @@ -555,7 +555,7 @@ components: EP_Transport-Single: allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - $ref: 'genericNrm.yaml#/components/schemas/Top' - type: object properties: attributes: -- GitLab From 9a3eb1dfcb4ea79585831b78f27d5f4ead9947a0 Mon Sep 17 00:00:00 2001 From: sunse Date: Mon, 16 Aug 2021 13:22:24 +0200 Subject: [PATCH 109/593] Update nrNrm.yaml --- OpenAPI/nrNrm.yaml | 3 +++ 1 file changed, 3 insertions(+) diff --git a/OpenAPI/nrNrm.yaml b/OpenAPI/nrNrm.yaml index b235070e0..456b3060a 100644 --- a/OpenAPI/nrNrm.yaml +++ b/OpenAPI/nrNrm.yaml @@ -1630,6 +1630,9 @@ components: $ref: '#/components/schemas/LocalAddress' remoteAddress: $ref: '#/components/schemas/RemoteAddress' + epTransportRefs: + $ref: 'genericNrm.yaml#/components/schemas/DnList' + EP_NgU-Single: allOf: - $ref: 'genericNrm.yaml#/components/schemas/Top' -- GitLab From f34ce3577577dc72e9ed4e47e929a908e486725d Mon Sep 17 00:00:00 2001 From: Kai Zhang Date: Fri, 13 Aug 2021 09:32:48 +0200 Subject: [PATCH 110/593] Rel-17 CR 28.541 Add NPN Identity on NR cell to support access control for NPN UEs --- OpenAPI/nrNrm.yaml | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) diff --git a/OpenAPI/nrNrm.yaml b/OpenAPI/nrNrm.yaml index 456b3060a..035cf12ee 100644 --- a/OpenAPI/nrNrm.yaml +++ b/OpenAPI/nrNrm.yaml @@ -73,6 +73,23 @@ components: type: array items: $ref: '#/components/schemas/PlmnInfo' + cagId: + type: string + nid: + type: string + NpnIdentity: + type: object + properties: + plmnId": + $ref: '#/components/schemas/PlmnId' + cagidList: + $ref: '#/components/schemas/cagId' + nidList: + $ref: '#/components/schemas/nid' + NpnIdentityList: + type: array + items: + $ref: '#/components/schemas/NpnIdentity' GGnbId: type: string pattern: '^[0-9]{3}[0-9]{2,3}-(22|23|24|25|26|27|28|29|30|31|32)-[0-9]{1,10}' @@ -849,6 +866,8 @@ components: $ref: '#/components/schemas/CellState' plmnInfoList: $ref: '#/components/schemas/PlmnInfoList' + npnIdentityList: + $ref: '#/components/schemas/NpnIdentiyList' nrPci: $ref: '#/components/schemas/NrPci' nrTac: -- GitLab From a15fee0c45558cbcef63fc4713244539dfdb5ccc Mon Sep 17 00:00:00 2001 From: Kai Zhang Date: Fri, 13 Aug 2021 09:42:34 +0200 Subject: [PATCH 111/593] Rel-17 CR 28.541 Add NPN Identity on NR cell to support access control for NPN UEs --- OpenAPI/nrNrm.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/OpenAPI/nrNrm.yaml b/OpenAPI/nrNrm.yaml index 035cf12ee..f332d2d8a 100644 --- a/OpenAPI/nrNrm.yaml +++ b/OpenAPI/nrNrm.yaml @@ -867,7 +867,7 @@ components: plmnInfoList: $ref: '#/components/schemas/PlmnInfoList' npnIdentityList: - $ref: '#/components/schemas/NpnIdentiyList' + $ref: '#/components/schemas/NpnIdentityList' nrPci: $ref: '#/components/schemas/NrPci' nrTac: -- GitLab From 995b755fd347e2e3113be76ca65e17b55d2914ce Mon Sep 17 00:00:00 2001 From: Kai Zhang Date: Fri, 13 Aug 2021 11:31:13 +0200 Subject: [PATCH 112/593] Add radio spectrum support in slicing profiles --- OpenAPI/sliceNrm.yaml | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/OpenAPI/sliceNrm.yaml b/OpenAPI/sliceNrm.yaml index f1ad099a3..f0dcad991 100644 --- a/OpenAPI/sliceNrm.yaml +++ b/OpenAPI/sliceNrm.yaml @@ -160,6 +160,13 @@ components: $ref: '#/components/schemas/ServAttrCom' support: $ref: '#/components/schemas/Support' + RadioSpectrum: + type: object + properties: + servAttrCom: + $ref: '#/components/schemas/ServAttrCom' + nROperatingBands: + type: string Synchronicity: type: object properties: @@ -310,6 +317,8 @@ components: $ref: '#/components/schemas/ServiceType' maxPktSize: type: integer + nROperatingBands: + type: string delayTolerance: $ref: '#/components/schemas/DelayTolerance' positioning: @@ -347,6 +356,8 @@ components: type: integer maxNumberOfPDUSessions: type: integer + nROperatingBands: + type: string sliceSimultaneousUse: $ref: '#/components/schemas/SliceSimultaneousUse' energyEfficiency: @@ -417,6 +428,8 @@ components: $ref: '#/components/schemas/KPIMonitoring' nBIoT: $ref: '#/components/schemas/NBIoT' + radioSpectrum: + $ref: '#/components/schemas/RadioSpectrum' synchronicity: $ref: '#/components/schemas/Synchronicity' positioning: -- GitLab From 77c173611a720b0ad4f8e38a70f4ab7be465cac4 Mon Sep 17 00:00:00 2001 From: Kai Zhang Date: Fri, 13 Aug 2021 11:02:07 +0200 Subject: [PATCH 113/593] Update maxPktSize and determinComm to support UL and DL requirements --- OpenAPI/sliceNrm.yaml | 32 ++++++++++++++++++++++++-------- 1 file changed, 24 insertions(+), 8 deletions(-) diff --git a/OpenAPI/sliceNrm.yaml b/OpenAPI/sliceNrm.yaml index f0dcad991..c05ab4376 100644 --- a/OpenAPI/sliceNrm.yaml +++ b/OpenAPI/sliceNrm.yaml @@ -278,7 +278,9 @@ components: type: integer resourceSharingLevel: $ref: '#/components/schemas/SharingLevel' - maxPktSize: + dLMaxPktSize: + type: integer + uLMaxPktSize: type: integer delayTolerance: $ref: '#/components/schemas/DelayTolerance' @@ -290,7 +292,9 @@ components: type: string energyEfficiency: type: integer - deterministicComm: + dLDeterministicComm: + $ref: '#/components/schemas/DeterministicComm' + uLDeterministicComm: $ref: '#/components/schemas/DeterministicComm' RANSliceSubnetProfile: type: object @@ -315,7 +319,9 @@ components: type: string serviceType: $ref: '#/components/schemas/ServiceType' - maxPktSize: + dLMaxPktSize: + type: integer + uLMaxPktSize: type: integer nROperatingBands: type: string @@ -333,7 +339,9 @@ components: type: string synchronicity: $ref: '#/components/schemas/SynchronicityRANSubnet' - deterministicComm: + dLDeterministicComm: + $ref: '#/components/schemas/DeterministicComm' + uLDeterministicComm: $ref: '#/components/schemas/DeterministicComm' TopSliceSubnetProfile: type: object @@ -352,7 +360,9 @@ components: $ref: '#/components/schemas/XLThpt' uLThptPerUE: $ref: '#/components/schemas/XLThpt' - maxPktSize: + dLMaxPktSize: + type: integer + uLMaxPktSize: type: integer maxNumberOfPDUSessions: type: integer @@ -384,7 +394,9 @@ components: type: string serviceType: $ref: '#/components/schemas/ServiceType' - deterministicComm: + dLDeterministicComm: + $ref: '#/components/schemas/DeterministicComm' + uLDeterministicComm: $ref: '#/components/schemas/DeterministicComm' survivalTime: type: string @@ -410,7 +422,9 @@ components: type: number delayTolerance: $ref: '#/components/schemas/DelayTolerance' - deterministicComm: + dLDeterministicComm: + $ref: '#/components/schemas/DeterministicComm' + uLDeterministicComm: $ref: '#/components/schemas/DeterministicComm' dLThptPerSlice: $ref: '#/components/schemas/XLThpt' @@ -420,7 +434,9 @@ components: $ref: '#/components/schemas/XLThpt' uLThptPerUE: $ref: '#/components/schemas/XLThpt' - maxPktSize: + dLMaxPktSize: + $ref: '#/components/schemas/MaxPktSize' + uLMaxPktSize: $ref: '#/components/schemas/MaxPktSize' maxNumberofPDUSessions: $ref: '#/components/schemas/MaxNumberofPDUSessions' -- GitLab From d57c6c0315ec71bcb81332894793fd30c43c1a79 Mon Sep 17 00:00:00 2001 From: Kai Zhang Date: Fri, 13 Aug 2021 10:50:50 +0200 Subject: [PATCH 114/593] Remove obsolete coverageArea attribute in TopSliceSubnetProfile --- OpenAPI/sliceNrm.yaml | 2 -- 1 file changed, 2 deletions(-) diff --git a/OpenAPI/sliceNrm.yaml b/OpenAPI/sliceNrm.yaml index c05ab4376..618cab023 100644 --- a/OpenAPI/sliceNrm.yaml +++ b/OpenAPI/sliceNrm.yaml @@ -346,8 +346,6 @@ components: TopSliceSubnetProfile: type: object properties: - coverageArea: - type: string latency: type: integer maxNumberofUEs: -- GitLab From 1fb23c216c4c73488abc13f8fb25aaa3813b9a8f Mon Sep 17 00:00:00 2001 From: shumim Date: Mon, 2 Aug 2021 14:05:38 +0800 Subject: [PATCH 115/593] Enhance 5GC NRM to support 5G DDNMF --- OpenAPI/5gcNrm.yaml | 83 ++++++++++++++++++++++++++++++++++++++++++++- 1 file changed, 82 insertions(+), 1 deletion(-) diff --git a/OpenAPI/5gcNrm.yaml b/OpenAPI/5gcNrm.yaml index 57bbc0a72..7c3fa97ae 100644 --- a/OpenAPI/5gcNrm.yaml +++ b/OpenAPI/5gcNrm.yaml @@ -1108,6 +1108,34 @@ components: EP_N60: $ref: '#/components/schemas/EP_N60-Multiple' + DDNMFFunction-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' + - type: object + properties: + plmnId: + $ref: 'nrNrm.yaml#/components/schemas/PlmnId' + sBIFqdn: + type: string + managedNFProfile: + $ref: '#/components/schemas/ManagedNFProfile' + commModelList: + $ref: '#/components/schemas/CommModelList' + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' + - type: object + properties: + EP_N64: + $ref: '#/components/schemas/EP_N64-Multiple' + EP_N65: + $ref: '#/components/schemas/EP_N65-Multiple' + EP_N66: + $ref: '#/components/schemas/EP_N66-Multiple' + ExternalAmfFunction-Single: allOf: - $ref: 'genericNrm.yaml#/components/schemas/Top' @@ -1601,6 +1629,48 @@ components: $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' remoteAddress: $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' + EP_N64-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' + - type: object + properties: + localAddress: + $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' + remoteAddress: + $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' + EP_N65-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' + - type: object + properties: + localAddress: + $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' + remoteAddress: + $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' + EP_N66-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' + - type: object + properties: + localAddress: + $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' + remoteAddress: + $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' FiveQiDscpMappingSet-Single: allOf: @@ -1996,7 +2066,18 @@ components: type: array items: $ref: '#/components/schemas/EP_N60-Single' - + EP_N64-Multiple: + type: array + items: + $ref: '#/components/schemas/EP_N64-Single' + EP_N65-Multiple: + type: array + items: + $ref: '#/components/schemas/EP_N65-Single' + EP_N66-Multiple: + type: array + items: + $ref: '#/components/schemas/EP_N66-Single' Configurable5QISet-Multiple: type: array items: -- GitLab From ef7701e2dd20762a13ad5dd2d119a9bf02226b57 Mon Sep 17 00:00:00 2001 From: Shitao Li Date: Tue, 17 Aug 2021 03:15:41 +0200 Subject: [PATCH 116/593] Update 5gcNrm.yaml --- OpenAPI/5gcNrm.yaml | 28 ++++++++++++++++++++++++---- 1 file changed, 24 insertions(+), 4 deletions(-) diff --git a/OpenAPI/5gcNrm.yaml b/OpenAPI/5gcNrm.yaml index 7c3fa97ae..1626b02b1 100644 --- a/OpenAPI/5gcNrm.yaml +++ b/OpenAPI/5gcNrm.yaml @@ -1085,7 +1085,10 @@ components: isCAPIFSup: type: boolean - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' - + - type: object + properties: + EP_N33: + $ref: '#/components/schemas/EP_N33-Multiple' NsacfFunction-Single: allOf: - $ref: 'genericNrm.yaml#/components/schemas/Top' @@ -1529,7 +1532,20 @@ components: type: string withIPX: type: boolean - + EP_N33-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' + - type: object + properties: + localAddress: + $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' + remoteAddress: + $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' EP_S5C-Single: allOf: - $ref: 'genericNrm.yaml#/components/schemas/Top' @@ -2037,7 +2053,10 @@ components: type: array items: $ref: '#/components/schemas/EP_N32-Single' - + EP_N33-Multiple: + type: array + items: + $ref: '#/components/schemas/EP_N33-Single' EP_S5C-Multiple: type: array items: @@ -2150,7 +2169,8 @@ components: - $ref: '#/components/schemas/EP_N27-Single' - $ref: '#/components/schemas/EP_N31-Single' - - $ref: '#/components/schemas/EP_N31-Single' + - $ref: '#/components/schemas/EP_N32-Single' + - $ref: '#/components/schemas/EP_N33-Single' - $ref: '#/components/schemas/EP_N60-Single' - $ref: '#/components/schemas/EP_S5C-Single' -- GitLab From 7babe15fc249b8a8f40cf0f0117328f77d4ee7a8 Mon Sep 17 00:00:00 2001 From: ruiyue Date: Tue, 7 Sep 2021 05:30:34 +0200 Subject: [PATCH 117/593] Update sliceNrm.yaml --- OpenAPI/sliceNrm.yaml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/OpenAPI/sliceNrm.yaml b/OpenAPI/sliceNrm.yaml index 618cab023..7e0ad1f7f 100644 --- a/OpenAPI/sliceNrm.yaml +++ b/OpenAPI/sliceNrm.yaml @@ -296,6 +296,8 @@ components: $ref: '#/components/schemas/DeterministicComm' uLDeterministicComm: $ref: '#/components/schemas/DeterministicComm' + survivalTime: + type: string RANSliceSubnetProfile: type: object properties: -- GitLab From 0b539e54e1e9db7a5348da4be181d4bea6f9b727 Mon Sep 17 00:00:00 2001 From: ruiyue Date: Wed, 22 Sep 2021 02:58:54 +0200 Subject: [PATCH 118/593] Update the version of nrNrm.yaml --- OpenAPI/nrNrm.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/OpenAPI/nrNrm.yaml b/OpenAPI/nrNrm.yaml index f332d2d8a..850106631 100644 --- a/OpenAPI/nrNrm.yaml +++ b/OpenAPI/nrNrm.yaml @@ -1,7 +1,7 @@ openapi: 3.0.1 info: title: NR NRM - version: 17.3.0 + version: 17.4.0 description: >- OAS 3.0.1 specification of the NR NRM © 2020, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). -- GitLab From 5d57112dcc8790266d6f26d0eb2e6921d55a0c73 Mon Sep 17 00:00:00 2001 From: ruiyue Date: Wed, 22 Sep 2021 03:01:33 +0200 Subject: [PATCH 119/593] Update version of 5gcNrm.yaml --- OpenAPI/5gcNrm.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/OpenAPI/5gcNrm.yaml b/OpenAPI/5gcNrm.yaml index 1626b02b1..e4c4b2619 100644 --- a/OpenAPI/5gcNrm.yaml +++ b/OpenAPI/5gcNrm.yaml @@ -1,7 +1,7 @@ openapi: 3.0.1 info: title: 3GPP 5GC NRM - version: 17.3.0 + version: 17.4.0 description: >- OAS 3.0.1 specification of the 5GC NRM © 2020, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). -- GitLab From 7e789ab6e89306ab24c972e3df6e4e6f726580f8 Mon Sep 17 00:00:00 2001 From: ruiyue Date: Wed, 22 Sep 2021 03:02:50 +0200 Subject: [PATCH 120/593] Update version of sliceNrm.yaml --- OpenAPI/sliceNrm.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/OpenAPI/sliceNrm.yaml b/OpenAPI/sliceNrm.yaml index 7e0ad1f7f..bf6b4d71c 100644 --- a/OpenAPI/sliceNrm.yaml +++ b/OpenAPI/sliceNrm.yaml @@ -1,7 +1,7 @@ openapi: 3.0.1 info: title: Slice NRM - version: 17.3.0 + version: 17.4.0 description: >- OAS 3.0.1 specification of the Slice NRM @ 2020, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). -- GitLab From 3c357066126673c2c687c2e4c06dc0566e8a6f4d Mon Sep 17 00:00:00 2001 From: ruiyue Date: Mon, 4 Oct 2021 17:12:54 +0200 Subject: [PATCH 121/593] Update nrNrm.yaml --- OpenAPI/nrNrm.yaml | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/OpenAPI/nrNrm.yaml b/OpenAPI/nrNrm.yaml index 850106631..87c0a499f 100644 --- a/OpenAPI/nrNrm.yaml +++ b/OpenAPI/nrNrm.yaml @@ -592,6 +592,12 @@ components: properties: resourceType: type: string + enum: + - PRB + - PRB_UL + - PRB_DL + - RRC + - DRB rRMPolicyMemberList: $ref: '#/components/schemas/RrmPolicyMemberList' -- GitLab From 066b37664c6f97a247ee544bee36c35158f7ac25 Mon Sep 17 00:00:00 2001 From: ruiyue Date: Mon, 4 Oct 2021 17:17:20 +0200 Subject: [PATCH 122/593] Update nrNrm.yaml --- OpenAPI/nrNrm.yaml | 17 +++++++++-------- 1 file changed, 9 insertions(+), 8 deletions(-) diff --git a/OpenAPI/nrNrm.yaml b/OpenAPI/nrNrm.yaml index 87c0a499f..be42e57f0 100644 --- a/OpenAPI/nrNrm.yaml +++ b/OpenAPI/nrNrm.yaml @@ -583,7 +583,14 @@ components: type: array items: $ref: '#/components/schemas/TceMappingInfo' - + ResourceType: + type: string + enum: + - PRB + - PRB_UL + - PRB_DL + - RRC + - DRB #-------- Definition of abstract IOCs -------------------------------------------- @@ -591,13 +598,7 @@ components: type: object properties: resourceType: - type: string - enum: - - PRB - - PRB_UL - - PRB_DL - - RRC - - DRB + $ref: '#/components/schemas/ResourceType' rRMPolicyMemberList: $ref: '#/components/schemas/RrmPolicyMemberList' -- GitLab From ead49c14fbf9f3a1b0aae7343c8639e10825564e Mon Sep 17 00:00:00 2001 From: sunxixi Date: Mon, 18 Oct 2021 12:15:09 +0200 Subject: [PATCH 123/593] Update 5gcNrm.yaml --- OpenAPI/5gcNrm.yaml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/OpenAPI/5gcNrm.yaml b/OpenAPI/5gcNrm.yaml index e4c4b2619..2de797b5d 100644 --- a/OpenAPI/5gcNrm.yaml +++ b/OpenAPI/5gcNrm.yaml @@ -1105,6 +1105,8 @@ components: type: array items: $ref: '#/components/schemas/NsacfInfoSnssai' + taiList: + $ref: 'nrNrm.yaml#/components/schemas/Tai' - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' - type: object properties: -- GitLab From 71c6bfa98fc8776a94a6f91149072b32850d1afb Mon Sep 17 00:00:00 2001 From: sunxixi Date: Mon, 18 Oct 2021 12:23:01 +0200 Subject: [PATCH 124/593] Update 5gcNrm.yaml --- OpenAPI/5gcNrm.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/OpenAPI/5gcNrm.yaml b/OpenAPI/5gcNrm.yaml index 2de797b5d..8234b2489 100644 --- a/OpenAPI/5gcNrm.yaml +++ b/OpenAPI/5gcNrm.yaml @@ -1106,7 +1106,7 @@ components: items: $ref: '#/components/schemas/NsacfInfoSnssai' taiList: - $ref: 'nrNrm.yaml#/components/schemas/Tai' + $ref: '#/components/schemas/Tailist' - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' - type: object properties: -- GitLab From 9f80f4aee97e91296bb5812a02ff4fa7760df3e2 Mon Sep 17 00:00:00 2001 From: sunxixi Date: Mon, 18 Oct 2021 12:26:14 +0200 Subject: [PATCH 125/593] Update 5gcNrm.yaml --- OpenAPI/5gcNrm.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/OpenAPI/5gcNrm.yaml b/OpenAPI/5gcNrm.yaml index 8234b2489..2de797b5d 100644 --- a/OpenAPI/5gcNrm.yaml +++ b/OpenAPI/5gcNrm.yaml @@ -1106,7 +1106,7 @@ components: items: $ref: '#/components/schemas/NsacfInfoSnssai' taiList: - $ref: '#/components/schemas/Tailist' + $ref: 'nrNrm.yaml#/components/schemas/Tai' - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' - type: object properties: -- GitLab From 5fe90e9ae04f07b5ff38d8b3a49b6e4520b871b0 Mon Sep 17 00:00:00 2001 From: ruiyue Date: Mon, 18 Oct 2021 13:40:14 +0200 Subject: [PATCH 126/593] Update 5gcNrm.yaml --- OpenAPI/5gcNrm.yaml | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/OpenAPI/5gcNrm.yaml b/OpenAPI/5gcNrm.yaml index 2de797b5d..15088b4b1 100644 --- a/OpenAPI/5gcNrm.yaml +++ b/OpenAPI/5gcNrm.yaml @@ -1105,8 +1105,10 @@ components: type: array items: $ref: '#/components/schemas/NsacfInfoSnssai' - taiList: - $ref: 'nrNrm.yaml#/components/schemas/Tai' + taiList: + type: array + items: + $ref: 'nrNrm.yaml#/components/schemas/Tai' - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' - type: object properties: -- GitLab From f25802de3ebc94b59b537c06091524b46e493367 Mon Sep 17 00:00:00 2001 From: sunxixi Date: Mon, 18 Oct 2021 17:51:29 +0200 Subject: [PATCH 127/593] Update 5gcNrm.yaml --- OpenAPI/5gcNrm.yaml | 33 ++++++++++++++++++++++++++++++++- 1 file changed, 32 insertions(+), 1 deletion(-) diff --git a/OpenAPI/5gcNrm.yaml b/OpenAPI/5gcNrm.yaml index e4c4b2619..3a6ba3ca4 100644 --- a/OpenAPI/5gcNrm.yaml +++ b/OpenAPI/5gcNrm.yaml @@ -463,7 +463,27 @@ components: type: array items: type: string - + + NRTACRange: + type: object + properties: + nRTACstart: + type: string + nRTACend: + type: string + nRTACpattern: + type: string + + TaiRange: + type: object + properties: + plmnId: + $ref: 'nrNrm.yaml#/components/schemas/PlmnIdList' + nRTACRangelist: + type: array + items: + $ref: '#/components/schemas/NRTACRange' + #-------- Definition of concrete IOCs -------------------------------------------- @@ -1084,6 +1104,17 @@ components: $ref: '#/components/schemas/CapabilityList' isCAPIFSup: type: boolean + taiList: + type: array + items: + $ref: 'nrNrm.yaml#/components/schemas/Tai' + taiRangeList: + type: array + items: + $ref: '#/components/schemas/TaiRange' + dnai: + type: string + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' - type: object properties: -- GitLab From 10f4dc673a7e57cb3759e8252602df4494167255 Mon Sep 17 00:00:00 2001 From: sunxixi Date: Tue, 19 Oct 2021 07:08:34 +0200 Subject: [PATCH 128/593] Update 5gcNrm.yaml --- OpenAPI/5gcNrm.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/OpenAPI/5gcNrm.yaml b/OpenAPI/5gcNrm.yaml index 3a6ba3ca4..74c16b91e 100644 --- a/OpenAPI/5gcNrm.yaml +++ b/OpenAPI/5gcNrm.yaml @@ -478,7 +478,7 @@ components: type: object properties: plmnId: - $ref: 'nrNrm.yaml#/components/schemas/PlmnIdList' + $ref: 'nrNrm.yaml#/components/schemas/PlmnId' nRTACRangelist: type: array items: -- GitLab From 4953c8f33fe1c6e820b06a25fe036c5bcb44bad7 Mon Sep 17 00:00:00 2001 From: sunxixi Date: Tue, 19 Oct 2021 07:10:47 +0200 Subject: [PATCH 129/593] Update nrNrm.yaml --- OpenAPI/nrNrm.yaml | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/OpenAPI/nrNrm.yaml b/OpenAPI/nrNrm.yaml index 850106631..aa60042b9 100644 --- a/OpenAPI/nrNrm.yaml +++ b/OpenAPI/nrNrm.yaml @@ -120,6 +120,10 @@ components: $ref: '#/components/schemas/PlmnId' nrTac: $ref: '#/components/schemas/NrTac' + TaiList: + type: array + items: + $ref: '#/components/schemas/Tai' BackhaulAddress: type: object -- GitLab From bf418a438e70748acfdb8ee2efa7ea3ed0ddeb85 Mon Sep 17 00:00:00 2001 From: sunxixi Date: Tue, 19 Oct 2021 07:14:35 +0200 Subject: [PATCH 130/593] Update 5gcNrm.yaml --- OpenAPI/5gcNrm.yaml | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/OpenAPI/5gcNrm.yaml b/OpenAPI/5gcNrm.yaml index 74c16b91e..a3da040c8 100644 --- a/OpenAPI/5gcNrm.yaml +++ b/OpenAPI/5gcNrm.yaml @@ -1105,9 +1105,8 @@ components: isCAPIFSup: type: boolean taiList: - type: array items: - $ref: 'nrNrm.yaml#/components/schemas/Tai' + $ref: 'nrNrm.yaml#/components/schemas/TaiList' taiRangeList: type: array items: -- GitLab From ab5109435bd4b3b1fbb25b319643e11f526072d8 Mon Sep 17 00:00:00 2001 From: sunxixi Date: Tue, 19 Oct 2021 07:15:39 +0200 Subject: [PATCH 131/593] Update 5gcNrm.yaml --- OpenAPI/5gcNrm.yaml | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/OpenAPI/5gcNrm.yaml b/OpenAPI/5gcNrm.yaml index 15088b4b1..c00bb4015 100644 --- a/OpenAPI/5gcNrm.yaml +++ b/OpenAPI/5gcNrm.yaml @@ -1106,9 +1106,8 @@ components: items: $ref: '#/components/schemas/NsacfInfoSnssai' taiList: - type: array items: - $ref: 'nrNrm.yaml#/components/schemas/Tai' + $ref: 'nrNrm.yaml#/components/schemas/TaiList' - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' - type: object properties: -- GitLab From 42a917073008338ffbdfe92be4d69d71956005a3 Mon Sep 17 00:00:00 2001 From: sunxixi Date: Tue, 19 Oct 2021 07:28:39 +0200 Subject: [PATCH 132/593] Update nrNrm.yaml --- OpenAPI/nrNrm.yaml | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/OpenAPI/nrNrm.yaml b/OpenAPI/nrNrm.yaml index 850106631..33e89980a 100644 --- a/OpenAPI/nrNrm.yaml +++ b/OpenAPI/nrNrm.yaml @@ -120,6 +120,10 @@ components: $ref: '#/components/schemas/PlmnId' nrTac: $ref: '#/components/schemas/NrTac' + TaiList: + type: array + items: + $ref: '#/components/schemas/Tai' BackhaulAddress: type: object -- GitLab From 0dcd113bae16594b2208225d26ce77b5b500e217 Mon Sep 17 00:00:00 2001 From: sunxixi Date: Tue, 19 Oct 2021 07:30:00 +0200 Subject: [PATCH 133/593] Update 5gcNrm.yaml -- GitLab From 6c40d6e26c0762bcfe8b826372d251fc00a67c9b Mon Sep 17 00:00:00 2001 From: sunxixi Date: Tue, 19 Oct 2021 07:31:27 +0200 Subject: [PATCH 134/593] Update 5gcNrm.yaml -- GitLab From 1d040773f3d6f17e52de335035e58eaf3f6a6390 Mon Sep 17 00:00:00 2001 From: sunxixi Date: Tue, 19 Oct 2021 07:34:44 +0200 Subject: [PATCH 135/593] Update 5gcNrm.yaml --- OpenAPI/5gcNrm.yaml | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/OpenAPI/5gcNrm.yaml b/OpenAPI/5gcNrm.yaml index c00bb4015..687f64773 100644 --- a/OpenAPI/5gcNrm.yaml +++ b/OpenAPI/5gcNrm.yaml @@ -1105,9 +1105,7 @@ components: type: array items: $ref: '#/components/schemas/NsacfInfoSnssai' - taiList: - items: - $ref: 'nrNrm.yaml#/components/schemas/TaiList' + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' - type: object properties: -- GitLab From aea62c08129402350b04c7f61d4c45bc4ac47780 Mon Sep 17 00:00:00 2001 From: sunxixi Date: Tue, 19 Oct 2021 07:37:10 +0200 Subject: [PATCH 136/593] Update 5gcNrm.yaml --- OpenAPI/5gcNrm.yaml | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/OpenAPI/5gcNrm.yaml b/OpenAPI/5gcNrm.yaml index 687f64773..c00bb4015 100644 --- a/OpenAPI/5gcNrm.yaml +++ b/OpenAPI/5gcNrm.yaml @@ -1105,7 +1105,9 @@ components: type: array items: $ref: '#/components/schemas/NsacfInfoSnssai' - + taiList: + items: + $ref: 'nrNrm.yaml#/components/schemas/TaiList' - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' - type: object properties: -- GitLab From 50fb368d560dccbb13a2d338c59bb217527c04da Mon Sep 17 00:00:00 2001 From: allwang Date: Wed, 17 Nov 2021 20:56:22 +0100 Subject: [PATCH 137/593] Correct attribute nRFrequencyRef to nRFreqRelationRef in IOC NRCellRelation --- OpenAPI/nrNrm.yaml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/OpenAPI/nrNrm.yaml b/OpenAPI/nrNrm.yaml index 850106631..d4993ba31 100644 --- a/OpenAPI/nrNrm.yaml +++ b/OpenAPI/nrNrm.yaml @@ -1104,7 +1104,7 @@ components: $ref: '#/components/schemas/CellIndividualOffset' adjacentNRCellRef: $ref: 'genericNrm.yaml#/components/schemas/Dn' - nRFrequencyRef: + nRFreqRelationRef: $ref: 'genericNrm.yaml#/components/schemas/Dn' isRemoveAllowed: type: boolean @@ -1139,13 +1139,13 @@ components: properties: offsetMO: $ref: '#/components/schemas/QOffsetRangeList' - blackListEntry: + blockListEntry: type: array items: type: integer minimum: 0 maximum: 1007 - blackListEntryIdleMode: + blockListEntryIdleMode: type: integer cellReselectionPriority: type: integer -- GitLab From 87f32d12340c11145d3560553543987a6f0127a1 Mon Sep 17 00:00:00 2001 From: sunxixi Date: Fri, 19 Nov 2021 16:45:42 +0100 Subject: [PATCH 138/593] Update 5gcNrm.yaml --- OpenAPI/5gcNrm.yaml | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/OpenAPI/5gcNrm.yaml b/OpenAPI/5gcNrm.yaml index e4c4b2619..080dfdb99 100644 --- a/OpenAPI/5gcNrm.yaml +++ b/OpenAPI/5gcNrm.yaml @@ -464,6 +464,10 @@ components: items: type: string + SupportedBMOList: + type: array + items: + type: string #-------- Definition of concrete IOCs -------------------------------------------- @@ -707,8 +711,8 @@ components: $ref: 'nrNrm.yaml#/components/schemas/SnssaiList' managedNFProfile: $ref: '#/components/schemas/ManagedNFProfile' - commModelList: - $ref: '#/components/schemas/CommModelList' + supportedBMOList: + $ref: '#/components/schemas/SupportedBMOList' - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' - type: object properties: @@ -767,6 +771,8 @@ components: $ref: 'genericNrm.yaml#/components/schemas/Dn' dynamic5QISetRef: $ref: 'genericNrm.yaml#/components/schemas/Dn' + supportedBMOList: + $ref: '#/components/schemas/SupportedBMOList' - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' - type: object -- GitLab From 623af0d088ab5edf07c6f004030a8ec7098ab249 Mon Sep 17 00:00:00 2001 From: ruiyue Date: Tue, 5 Oct 2021 03:24:03 +0200 Subject: [PATCH 139/593] Update sliceNrm.yaml --- OpenAPI/sliceNrm.yaml | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/OpenAPI/sliceNrm.yaml b/OpenAPI/sliceNrm.yaml index bf6b4d71c..201537f03 100644 --- a/OpenAPI/sliceNrm.yaml +++ b/OpenAPI/sliceNrm.yaml @@ -581,6 +581,12 @@ components: $ref: 'genericNrm.yaml#/components/schemas/DnList' priorityLabel: type: integer + networkSliceSubnetType: + type: integer + enum: + - TopSliceSubnet + - RANSliceSubnet + - CNSliceSubnet EP_Transport-Single: allOf: -- GitLab From 8496ae87b3fbbc7f5fd9feccadcda522a364e405 Mon Sep 17 00:00:00 2001 From: ruiyue Date: Wed, 13 Oct 2021 06:48:57 +0200 Subject: [PATCH 140/593] Update sliceNrm.yaml --- OpenAPI/sliceNrm.yaml | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/OpenAPI/sliceNrm.yaml b/OpenAPI/sliceNrm.yaml index 201537f03..67bfbe5a6 100644 --- a/OpenAPI/sliceNrm.yaml +++ b/OpenAPI/sliceNrm.yaml @@ -582,11 +582,11 @@ components: priorityLabel: type: integer networkSliceSubnetType: - type: integer + type: string enum: - - TopSliceSubnet - - RANSliceSubnet - - CNSliceSubnet + - TOP_SLICESUBNET + - RAN_SLICESUBNET + - CN_SLICESUBNET EP_Transport-Single: allOf: -- GitLab From dfb4155d7ef77c5dfaadef9aea2a98ab9a31ece5 Mon Sep 17 00:00:00 2001 From: Kai Zhang Date: Sat, 9 Oct 2021 09:23:40 +0200 Subject: [PATCH 141/593] Update latency to support UL and DL requirements --- OpenAPI/sliceNrm.yaml | 16 +++++++++++++--- 1 file changed, 13 insertions(+), 3 deletions(-) diff --git a/OpenAPI/sliceNrm.yaml b/OpenAPI/sliceNrm.yaml index 67bfbe5a6..f7652ecac 100644 --- a/OpenAPI/sliceNrm.yaml +++ b/OpenAPI/sliceNrm.yaml @@ -262,7 +262,9 @@ components: properties: maxNumberofUEs: type: integer - latency: + dLLatency: + type: integer + uLLatency: type: integer dLThptPerSliceSubnet: $ref: '#/components/schemas/XLThpt' @@ -303,6 +305,10 @@ components: properties: coverageAreaTAList: type: integer + dLLatency: + type: integer + uLLatency: + type: integer uEMobilityLevel: $ref: '#/components/schemas/MobilityLevel' resourceSharingLevel: @@ -348,7 +354,9 @@ components: TopSliceSubnetProfile: type: object properties: - latency: + dLLatency: + type: integer + uLLatency: type: integer maxNumberofUEs: type: integer @@ -410,7 +418,9 @@ components: $ref: 'nrNrm.yaml#/components/schemas/PlmnInfoList' maxNumberofUEs: type: number - latency: + dLLatency: + type: number + uLLatency: type: number uEMobilityLevel: $ref: '#/components/schemas/MobilityLevel' -- GitLab From 18ac7809c2660fc784ee1e6255d157777c984e0b Mon Sep 17 00:00:00 2001 From: ruiyue Date: Tue, 9 Nov 2021 08:37:21 +0100 Subject: [PATCH 142/593] Update nrNrm.yaml --- OpenAPI/nrNrm.yaml | 41 +++++++++++++++++++++++++++++++++++++++++ 1 file changed, 41 insertions(+) diff --git a/OpenAPI/nrNrm.yaml b/OpenAPI/nrNrm.yaml index d4993ba31..49db64394 100644 --- a/OpenAPI/nrNrm.yaml +++ b/OpenAPI/nrNrm.yaml @@ -709,6 +709,23 @@ components: $ref: '#/components/schemas/EP_F1U-Multiple' DRACHOptimizationFunction: $ref: '#/components/schemas/DRACHOptimizationFunction-Single' + + OperatorDu-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top' + - type: object + properties: + gnbId: + $ref: '#/components/schemas/GnbId' + gnbIdLength: + $ref: '#/components/schemas/GnbIdLength' + - type: object + properties: + EP_F1C: + $ref: '#/components/schemas/EP_F1C-Single' + EP_F1U: + $ref: '#/components/schemas/EP_F1U-Multiple' + GnbCuUpFunction-Single: allOf: - $ref: 'genericNrm.yaml#/components/schemas/Top' @@ -936,6 +953,18 @@ components: DRACHOptimizationFunction: $ref: '#/components/schemas/DRACHOptimizationFunction-Single' + NrOperatorCellDu-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top' + - type: object + properties: + cellLocalId: + type: integer + plmnInfoList: + $ref: '#/components/schemas/PlmnInfoList' + nrTac: + $ref: '#/components/schemas/NrTac' + NRFrequency-Single: allOf: - $ref: 'genericNrm.yaml#/components/schemas/Top' @@ -1712,6 +1741,10 @@ components: type: array items: $ref: '#/components/schemas/GnbDuFunction-Single' + OperatorDu-Multiple: + type: array + items: + $ref: '#/components/schemas/OperatorDu-Single' GnbCuUpFunction-Multiple: type: array items: @@ -1725,6 +1758,12 @@ components: type: array items: $ref: '#/components/schemas/NrCellDu-Single' + + NrOperatorCellDu-Multiple: + type: array + items: + $ref: '#/components/schemas/NrOperatorCellDu-Single' + NrCellCu-Multiple: type: array items: @@ -1857,9 +1896,11 @@ components: - $ref: '#/components/schemas/GnbDuFunction-Single' - $ref: '#/components/schemas/GnbCuUpFunction-Single' - $ref: '#/components/schemas/GnbCuCpFunction-Single' + - $ref: '#/components/schemas/OperatorDu-Single' - $ref: '#/components/schemas/NrCellCu-Single' - $ref: '#/components/schemas/NrCellDu-Single' + - $ref: '#/components/schemas/NrOperatorCellDu-Single' - $ref: '#/components/schemas/NRFrequency-Single' - $ref: '#/components/schemas/EUtranFrequency-Single' -- GitLab From a6a30df0a04381d0a1e314dcf90a022d44127657 Mon Sep 17 00:00:00 2001 From: sunse Date: Fri, 5 Nov 2021 13:25:46 +0100 Subject: [PATCH 143/593] Rel17 CR0624 removing extra '"', Update nrNrm.yaml --- OpenAPI/nrNrm.yaml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/OpenAPI/nrNrm.yaml b/OpenAPI/nrNrm.yaml index 49db64394..e0fe8fbe0 100644 --- a/OpenAPI/nrNrm.yaml +++ b/OpenAPI/nrNrm.yaml @@ -65,7 +65,7 @@ components: PlmnInfo: type: object properties: - plmnId": + plmnId: $ref: '#/components/schemas/PlmnId' snssai: $ref: '#/components/schemas/Snssai' @@ -80,7 +80,7 @@ components: NpnIdentity: type: object properties: - plmnId": + plmnId: $ref: '#/components/schemas/PlmnId' cagidList: $ref: '#/components/schemas/cagId' -- GitLab From bba333dd9f5a053917d70e48f2560a46af904c6c Mon Sep 17 00:00:00 2001 From: sunse Date: Fri, 5 Nov 2021 13:29:35 +0100 Subject: [PATCH 144/593] Rel17_CR0627 NS specific authentication, Update sliceNrm.yaml --- OpenAPI/sliceNrm.yaml | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/OpenAPI/sliceNrm.yaml b/OpenAPI/sliceNrm.yaml index bf6b4d71c..48d584283 100644 --- a/OpenAPI/sliceNrm.yaml +++ b/OpenAPI/sliceNrm.yaml @@ -298,6 +298,8 @@ components: $ref: '#/components/schemas/DeterministicComm' survivalTime: type: string + nSSAA: + $ref: '#/components/schemas/Nssaa' RANSliceSubnetProfile: type: object properties: @@ -476,6 +478,8 @@ components: $ref: '#/components/schemas/SliceSimultaneousUse' energyEfficiency: $ref: '#/components/schemas/EnergyEfficiency' + nSSAA: + $ref: '#/components/schemas/Nssaa' SliceProfile: type: object properties: @@ -517,6 +521,12 @@ components: items: $ref: '#/components/schemas/SliceProfile' + Nssaa: + type: string + enum: + - NOT SUPPORTED + - SUPPORTED + #------------ Definition of concrete IOCs ---------------------------------------- SubNetwork-Single: allOf: -- GitLab From 532cbc40408229a48a6481c944875b6db07559de Mon Sep 17 00:00:00 2001 From: sunse Date: Thu, 11 Nov 2021 02:45:51 +0100 Subject: [PATCH 145/593] 28.541 Rel17 CR0627 NS specific authentication Update sliceNrm.yaml --- OpenAPI/sliceNrm.yaml | 21 +++++++++++---------- 1 file changed, 11 insertions(+), 10 deletions(-) diff --git a/OpenAPI/sliceNrm.yaml b/OpenAPI/sliceNrm.yaml index 48d584283..ad349f244 100644 --- a/OpenAPI/sliceNrm.yaml +++ b/OpenAPI/sliceNrm.yaml @@ -257,6 +257,13 @@ components: $ref: '#/components/schemas/ServAttrCom' performance: $ref: '#/components/schemas/EEPerfReq' + NSSAASupport: + type: object + properties: + servAttrCom: + $ref: '#/components/schemas/ServAttrCom' + support: + $ref: '#/components/schemas/Support' CNSliceSubnetProfile: type: object properties: @@ -298,8 +305,8 @@ components: $ref: '#/components/schemas/DeterministicComm' survivalTime: type: string - nSSAA: - $ref: '#/components/schemas/Nssaa' + nssaaSupport: + $ref: '#/components/schemas/NSSAASupport’ RANSliceSubnetProfile: type: object properties: @@ -478,8 +485,8 @@ components: $ref: '#/components/schemas/SliceSimultaneousUse' energyEfficiency: $ref: '#/components/schemas/EnergyEfficiency' - nSSAA: - $ref: '#/components/schemas/Nssaa' + nssaaSupport: + $ref: '#/components/schemas/NSSAASupport’ SliceProfile: type: object properties: @@ -521,12 +528,6 @@ components: items: $ref: '#/components/schemas/SliceProfile' - Nssaa: - type: string - enum: - - NOT SUPPORTED - - SUPPORTED - #------------ Definition of concrete IOCs ---------------------------------------- SubNetwork-Single: allOf: -- GitLab From 3171f2449abb899c06892d15f5e4c4637e01da5d Mon Sep 17 00:00:00 2001 From: sunse Date: Thu, 11 Nov 2021 02:58:01 +0100 Subject: [PATCH 146/593] fix ' at the end of $ref --- OpenAPI/sliceNrm.yaml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/OpenAPI/sliceNrm.yaml b/OpenAPI/sliceNrm.yaml index ad349f244..0948ef91d 100644 --- a/OpenAPI/sliceNrm.yaml +++ b/OpenAPI/sliceNrm.yaml @@ -306,7 +306,7 @@ components: survivalTime: type: string nssaaSupport: - $ref: '#/components/schemas/NSSAASupport’ + $ref: '#/components/schemas/NSSAASupport' RANSliceSubnetProfile: type: object properties: @@ -486,7 +486,7 @@ components: energyEfficiency: $ref: '#/components/schemas/EnergyEfficiency' nssaaSupport: - $ref: '#/components/schemas/NSSAASupport’ + $ref: '#/components/schemas/NSSAASupport' SliceProfile: type: object properties: -- GitLab From d2872fb7062a5525732f2465062386f457134054 Mon Sep 17 00:00:00 2001 From: sunse Date: Fri, 5 Nov 2021 15:01:02 +0100 Subject: [PATCH 147/593] Rel17_CR0626 NS protection on N6 Protection TrafficControlData: Update 5gcNrm.yaml --- OpenAPI/5gcNrm.yaml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/OpenAPI/5gcNrm.yaml b/OpenAPI/5gcNrm.yaml index e4c4b2619..71b238711 100644 --- a/OpenAPI/5gcNrm.yaml +++ b/OpenAPI/5gcNrm.yaml @@ -382,6 +382,8 @@ components: $ref: '#/components/schemas/SteeringMode' mulAccCtrl: $ref: 'https://forge.3gpp.org/rep/all/5G_APIs/raw/REL-16/TS29512_Npcf_SMPolicyControl.yaml#/components/schemas/MulticastAccessControl' + snssaiList: + $ref: 'nrNrm.yaml#/components/schemas/SnssaiList' TrafficControlDataList: type: array -- GitLab From 25cdbb06d40a3a126fb263ef038e36347e80c2d2 Mon Sep 17 00:00:00 2001 From: sunse Date: Fri, 5 Nov 2021 15:31:26 +0100 Subject: [PATCH 148/593] Rel17 CR0626 NS protection on N6 Update sliceNrm.yaml --- OpenAPI/sliceNrm.yaml | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) diff --git a/OpenAPI/sliceNrm.yaml b/OpenAPI/sliceNrm.yaml index bf6b4d71c..26da19480 100644 --- a/OpenAPI/sliceNrm.yaml +++ b/OpenAPI/sliceNrm.yaml @@ -257,6 +257,27 @@ components: $ref: '#/components/schemas/ServAttrCom' performance: $ref: '#/components/schemas/EEPerfReq' + SecFunc: + type: object + properties: + secFunId: + type: integer + secFunType: + type: string + secRules: + type: array + items: + type: string + N6Protection: + type: object + properties: + servAttrCom: + $ref: '#/components/schemas/ServAttrCom' + secFuncList: + type: array + items: + $ref: '#/components/schemas/SecFunc' + CNSliceSubnetProfile: type: object properties: @@ -298,6 +319,8 @@ components: $ref: '#/components/schemas/DeterministicComm' survivalTime: type: string + n6Protection: + $ref: '#/components/schemas/N6Protection' RANSliceSubnetProfile: type: object properties: @@ -476,6 +499,8 @@ components: $ref: '#/components/schemas/SliceSimultaneousUse' energyEfficiency: $ref: '#/components/schemas/EnergyEfficiency' + n6Protection: + $ref: '#/components/schemas/N6Protection' SliceProfile: type: object properties: -- GitLab From 2aad923ccf77c1481e45fa720d85a3a2d92a516c Mon Sep 17 00:00:00 2001 From: sunse Date: Fri, 5 Nov 2021 16:20:36 +0100 Subject: [PATCH 149/593] Update sliceNrm.yaml --- OpenAPI/sliceNrm.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/OpenAPI/sliceNrm.yaml b/OpenAPI/sliceNrm.yaml index 26da19480..df35db02d 100644 --- a/OpenAPI/sliceNrm.yaml +++ b/OpenAPI/sliceNrm.yaml @@ -261,7 +261,7 @@ components: type: object properties: secFunId: - type: integer + type: string secFunType: type: string secRules: -- GitLab From 3375522253f4f16a2b5fb4f30c830e3cc7c5dfa9 Mon Sep 17 00:00:00 2001 From: Per Elmdahl EPKPEEL Date: Wed, 3 Nov 2021 19:21:49 +0100 Subject: [PATCH 150/593] This commit corresponds to S5-216053 --- OpenAPI/nrNrm.yaml | 2 ++ yang-models/_3gpp-nr-nrm-gnbcucpfunction.yang | 9 ++++++++- 2 files changed, 10 insertions(+), 1 deletion(-) diff --git a/OpenAPI/nrNrm.yaml b/OpenAPI/nrNrm.yaml index e0fe8fbe0..924d98a1c 100644 --- a/OpenAPI/nrNrm.yaml +++ b/OpenAPI/nrNrm.yaml @@ -801,6 +801,8 @@ components: $ref: 'genericNrm.yaml#/components/schemas/Dn' dynamic5QISetRef: $ref: 'genericNrm.yaml#/components/schemas/Dn' + dDAPSHOControl: + type: boolean - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' - type: object properties: diff --git a/yang-models/_3gpp-nr-nrm-gnbcucpfunction.yang b/yang-models/_3gpp-nr-nrm-gnbcucpfunction.yang index 04122e97f..8906880d9 100755 --- a/yang-models/_3gpp-nr-nrm-gnbcucpfunction.yang +++ b/yang-models/_3gpp-nr-nrm-gnbcucpfunction.yang @@ -15,6 +15,7 @@ module _3gpp-nr-nrm-gnbcucpfunction { Object Class (IOC) that is part of the NR Network Resource Model (NRM)."; reference "3GPP TS 28.541 5G Network Resource Model (NRM)"; + revision 2020-11-05 { reference "CR-0611" ; } revision 2020-10-02 { reference CR-0384 ; } revision 2020-08-06 { reference "CR-0333"; } revision 2020-08-03 { reference "CR-0321"; } @@ -114,6 +115,12 @@ module _3gpp-nr-nrm-gnbcucpfunction { type types3gpp:DistinguishedName; description "DN of the Dynamic5QISet that the GNBCUCPFunction supports (is associated to)."; } + + leaf dDAPSHOControl { + type boolean; + description "This attribute determines whether the DAPS handover function + is enabled or disabled."; + } } augment "/me3gpp:ManagedElement" { @@ -129,4 +136,4 @@ module _3gpp-nr-nrm-gnbcucpfunction { uses mf3gpp:ManagedFunctionContainedClasses; } } -} \ No newline at end of file +} -- GitLab From 05fba37ea3d3db4a70ca8c143d18f6f7c7c16f6d Mon Sep 17 00:00:00 2001 From: Brendan Hassett Date: Fri, 1 Oct 2021 10:58:57 +0200 Subject: [PATCH 151/593] S5-215263 Update genericNrm.yaml --- OpenAPI/genericNrm.yaml | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/OpenAPI/genericNrm.yaml b/OpenAPI/genericNrm.yaml index 0911920a2..b4712edfd 100644 --- a/OpenAPI/genericNrm.yaml +++ b/OpenAPI/genericNrm.yaml @@ -1210,6 +1210,10 @@ components: type: array items: $ref: '#/components/schemas/MnsRegistry' + MnsRegistry: + type: array + items: + $ref: '#/components/schemas/MnsRegistry' ManagedElement-ncO: type: object properties: @@ -1353,6 +1357,11 @@ components: type: string mnsType: type: string + enum: + - ProvMnS + - FaultSupervisionMnS + - StreamingDataReportingMnS + - FileDataReportingMnS mnsVersion: type: string mnsAddress: -- GitLab From 9217760115c8db26679a09b2adfbac05cd96acc3 Mon Sep 17 00:00:00 2001 From: Brendan Hassett Date: Fri, 1 Oct 2021 10:59:48 +0200 Subject: [PATCH 152/593] S5-215263 Update genericNrm.yaml --- OpenAPI/genericNrm.yaml | 4 ---- 1 file changed, 4 deletions(-) diff --git a/OpenAPI/genericNrm.yaml b/OpenAPI/genericNrm.yaml index b4712edfd..2b46aa48c 100644 --- a/OpenAPI/genericNrm.yaml +++ b/OpenAPI/genericNrm.yaml @@ -1210,10 +1210,6 @@ components: type: array items: $ref: '#/components/schemas/MnsRegistry' - MnsRegistry: - type: array - items: - $ref: '#/components/schemas/MnsRegistry' ManagedElement-ncO: type: object properties: -- GitLab From d5ae0af16496bff952da90eb587aa2d776dc1acd Mon Sep 17 00:00:00 2001 From: Brendan Hassett Date: Fri, 1 Oct 2021 11:02:22 +0200 Subject: [PATCH 153/593] S5-215263 Update _3gpp-common-mnsregistry.yang --- yang-models/_3gpp-common-mnsregistry.yang | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/yang-models/_3gpp-common-mnsregistry.yang b/yang-models/_3gpp-common-mnsregistry.yang index 2783fd385..5471937f0 100644 --- a/yang-models/_3gpp-common-mnsregistry.yang +++ b/yang-models/_3gpp-common-mnsregistry.yang @@ -28,9 +28,10 @@ module _3gpp-common-mnsregistry { leaf mnsType { description "Type of management service."; type enumeration { - enum PROVISIONING; - enum FAULT_SUPERVISION; - enum PERFORMANCE_ASSURANCE; + enum ProvMnS; + enum FaultSupervisionMnS; + enum StreamingDataReportingMnS; + enum FileDataReportingMnS; } } -- GitLab From 43753f6a78787bc80446af1c55d0a47231c1c464 Mon Sep 17 00:00:00 2001 From: scottma Date: Mon, 18 Oct 2021 14:23:40 +0200 Subject: [PATCH 154/593] Update _3gpp-common-mnsregistry.yang --- yang-models/_3gpp-common-mnsregistry.yang | 14 +++++++++----- 1 file changed, 9 insertions(+), 5 deletions(-) diff --git a/yang-models/_3gpp-common-mnsregistry.yang b/yang-models/_3gpp-common-mnsregistry.yang index 5471937f0..9489507ae 100644 --- a/yang-models/_3gpp-common-mnsregistry.yang +++ b/yang-models/_3gpp-common-mnsregistry.yang @@ -14,11 +14,7 @@ module _3gpp-common-mnsregistry { revision 2021-08-29 { reference "Initial revision, S5-214388"; } - grouping MNSRegistryGrp { - description "Represents the MNSRegistry IOC."; - reference "3GPP TS 28.541"; - uses top3gpp:Top_Grp; - + grouping MNSInfoGrp { leaf mnsLabel { description "Human-readable name of management service."; mandatory true; @@ -45,6 +41,14 @@ module _3gpp-common-mnsregistry { mandatory true; type string; } + + } + + grouping MNSRegistryGrp { + description "Represents the MNSRegistry IOC."; + reference "3GPP TS 28.541"; + uses top3gpp:Top_Grp; + uses MNSInfoGrp; } augment "/subnet3gpp:SubNetwork" { -- GitLab From a33c92748d9a9c338aa809f1102947140bd9e34e Mon Sep 17 00:00:00 2001 From: scottma Date: Mon, 18 Oct 2021 14:41:57 +0200 Subject: [PATCH 155/593] Update _3gpp-common-mnsregistry.yang --- yang-models/_3gpp-common-mnsregistry.yang | 16 ++++++++++++++-- 1 file changed, 14 insertions(+), 2 deletions(-) diff --git a/yang-models/_3gpp-common-mnsregistry.yang b/yang-models/_3gpp-common-mnsregistry.yang index 9489507ae..719d8bfd6 100644 --- a/yang-models/_3gpp-common-mnsregistry.yang +++ b/yang-models/_3gpp-common-mnsregistry.yang @@ -29,7 +29,6 @@ module _3gpp-common-mnsregistry { enum StreamingDataReportingMnS; enum FileDataReportingMnS; } - } leaf mnsVersion { description "Version of management service."; @@ -44,11 +43,23 @@ module _3gpp-common-mnsregistry { } + augment "/subnet3gpp:SubNetwork" { + list MNSInfo { + description "Represents the MNSInfo IOC."; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses MNSInfoGrp; + } + } + grouping MNSRegistryGrp { description "Represents the MNSRegistry IOC."; reference "3GPP TS 28.541"; uses top3gpp:Top_Grp; - uses MNSInfoGrp; + container attributes { + uses MNSInfoGrp; + }; } augment "/subnet3gpp:SubNetwork" { @@ -60,5 +71,6 @@ module _3gpp-common-mnsregistry { uses MNSRegistryGrp; } } + } } } \ No newline at end of file -- GitLab From d9eb9e2005483fa2cb17ddaed6c00198ad424686 Mon Sep 17 00:00:00 2001 From: scottma Date: Mon, 18 Oct 2021 14:47:18 +0200 Subject: [PATCH 156/593] Update _3gpp-common-mnsregistry.yang --- yang-models/_3gpp-common-mnsregistry.yang | 22 ++++++++++++---------- 1 file changed, 12 insertions(+), 10 deletions(-) diff --git a/yang-models/_3gpp-common-mnsregistry.yang b/yang-models/_3gpp-common-mnsregistry.yang index 719d8bfd6..14b220ec8 100644 --- a/yang-models/_3gpp-common-mnsregistry.yang +++ b/yang-models/_3gpp-common-mnsregistry.yang @@ -15,6 +15,8 @@ module _3gpp-common-mnsregistry { revision 2021-08-29 { reference "Initial revision, S5-214388"; } grouping MNSInfoGrp { + description "Represents the MNSInfo IOC."; + reference "3GPP TS 28.622"; leaf mnsLabel { description "Human-readable name of management service."; mandatory true; @@ -43,19 +45,19 @@ module _3gpp-common-mnsregistry { } - augment "/subnet3gpp:SubNetwork" { - list MNSInfo { - description "Represents the MNSInfo IOC."; - key id; - uses top3gpp:Top_Grp; - container attributes { - uses MNSInfoGrp; - } - } + augment "mnsregist3gpp:MNSRegistry" { + list MNSInfo { + description "Represents the MNSInfo IOC."; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses MNSInfoGrp; + } + } grouping MNSRegistryGrp { description "Represents the MNSRegistry IOC."; - reference "3GPP TS 28.541"; + reference "3GPP TS 28.622"; uses top3gpp:Top_Grp; container attributes { uses MNSInfoGrp; -- GitLab From b304c3c4c29dd5fea83a24f8e6ea953e18a390e1 Mon Sep 17 00:00:00 2001 From: scottma Date: Mon, 18 Oct 2021 14:47:55 +0200 Subject: [PATCH 157/593] Update _3gpp-common-mnsregistry.yang --- yang-models/_3gpp-common-mnsregistry.yang | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/yang-models/_3gpp-common-mnsregistry.yang b/yang-models/_3gpp-common-mnsregistry.yang index 14b220ec8..d3e59ac3d 100644 --- a/yang-models/_3gpp-common-mnsregistry.yang +++ b/yang-models/_3gpp-common-mnsregistry.yang @@ -61,7 +61,7 @@ module _3gpp-common-mnsregistry { uses top3gpp:Top_Grp; container attributes { uses MNSInfoGrp; - }; + } } augment "/subnet3gpp:SubNetwork" { -- GitLab From 6219915a55ea9a8cd916af023e746456657cb9fc Mon Sep 17 00:00:00 2001 From: scottma Date: Mon, 18 Oct 2021 14:50:23 +0200 Subject: [PATCH 158/593] Update _3gpp-common-mnsregistry.yang --- yang-models/_3gpp-common-mnsregistry.yang | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/yang-models/_3gpp-common-mnsregistry.yang b/yang-models/_3gpp-common-mnsregistry.yang index d3e59ac3d..60f82942c 100644 --- a/yang-models/_3gpp-common-mnsregistry.yang +++ b/yang-models/_3gpp-common-mnsregistry.yang @@ -42,7 +42,6 @@ module _3gpp-common-mnsregistry { mandatory true; type string; } - } augment "mnsregist3gpp:MNSRegistry" { @@ -54,6 +53,7 @@ module _3gpp-common-mnsregistry { uses MNSInfoGrp; } } + } grouping MNSRegistryGrp { description "Represents the MNSRegistry IOC."; -- GitLab From 07bfccb25695e8f1c70fe562ca0352020f442c4d Mon Sep 17 00:00:00 2001 From: scottma Date: Mon, 18 Oct 2021 14:57:29 +0200 Subject: [PATCH 159/593] Update _3gpp-common-mnsregistry.yang --- yang-models/_3gpp-common-mnsregistry.yang | 40 +++++++++++------------ 1 file changed, 19 insertions(+), 21 deletions(-) diff --git a/yang-models/_3gpp-common-mnsregistry.yang b/yang-models/_3gpp-common-mnsregistry.yang index 60f82942c..0e7166c8e 100644 --- a/yang-models/_3gpp-common-mnsregistry.yang +++ b/yang-models/_3gpp-common-mnsregistry.yang @@ -43,17 +43,6 @@ module _3gpp-common-mnsregistry { type string; } } - - augment "mnsregist3gpp:MNSRegistry" { - list MNSInfo { - description "Represents the MNSInfo IOC."; - key id; - uses top3gpp:Top_Grp; - container attributes { - uses MNSInfoGrp; - } - } - } grouping MNSRegistryGrp { description "Represents the MNSRegistry IOC."; @@ -62,17 +51,26 @@ module _3gpp-common-mnsregistry { container attributes { uses MNSInfoGrp; } - } + } - augment "/subnet3gpp:SubNetwork" { - list MNSRegistry { - description "Represents the MNSRegistry IOC."; - key id; - uses top3gpp:Top_Grp; - container attributes { - uses MNSRegistryGrp; - } - } + augment "mnsregist3gpp:MNSRegistry" { + list MNSInfo { + description "Represents the MNSInfo IOC."; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses MNSInfoGrp; } + } + + augment "/subnet3gpp:SubNetwork" { + description "Represents the MNSRegistry IOC."; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses MNSRegistryGrp; + } } + + } \ No newline at end of file -- GitLab From f766d12648ce8149417b93663c133dd29d098a3b Mon Sep 17 00:00:00 2001 From: scottma Date: Mon, 18 Oct 2021 15:02:31 +0200 Subject: [PATCH 160/593] Update _3gpp-common-mnsregistry.yang --- yang-models/_3gpp-common-mnsregistry.yang | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/yang-models/_3gpp-common-mnsregistry.yang b/yang-models/_3gpp-common-mnsregistry.yang index 0e7166c8e..f5a68fa30 100644 --- a/yang-models/_3gpp-common-mnsregistry.yang +++ b/yang-models/_3gpp-common-mnsregistry.yang @@ -62,6 +62,7 @@ module _3gpp-common-mnsregistry { uses MNSInfoGrp; } } + } augment "/subnet3gpp:SubNetwork" { description "Represents the MNSRegistry IOC."; @@ -69,8 +70,6 @@ module _3gpp-common-mnsregistry { uses top3gpp:Top_Grp; container attributes { uses MNSRegistryGrp; + } } - } - - } \ No newline at end of file -- GitLab From 8bdb0010c6fdabda75d903e9e93e5f61aeebba47 Mon Sep 17 00:00:00 2001 From: scottma Date: Mon, 18 Oct 2021 15:55:18 +0200 Subject: [PATCH 161/593] Update _3gpp-common-mnsregistry.yang --- yang-models/_3gpp-common-mnsregistry.yang | 1 + 1 file changed, 1 insertion(+) diff --git a/yang-models/_3gpp-common-mnsregistry.yang b/yang-models/_3gpp-common-mnsregistry.yang index f5a68fa30..1585140a9 100644 --- a/yang-models/_3gpp-common-mnsregistry.yang +++ b/yang-models/_3gpp-common-mnsregistry.yang @@ -31,6 +31,7 @@ module _3gpp-common-mnsregistry { enum StreamingDataReportingMnS; enum FileDataReportingMnS; } + } leaf mnsVersion { description "Version of management service."; -- GitLab From 3e3b1724f8881a033394c52d105da3ee82bd18e9 Mon Sep 17 00:00:00 2001 From: scottma Date: Mon, 18 Oct 2021 16:02:01 +0200 Subject: [PATCH 162/593] Update _3gpp-common-mnsregistry.yang --- yang-models/_3gpp-common-mnsregistry.yang | 8 ++------ 1 file changed, 2 insertions(+), 6 deletions(-) diff --git a/yang-models/_3gpp-common-mnsregistry.yang b/yang-models/_3gpp-common-mnsregistry.yang index 1585140a9..2af524bf0 100644 --- a/yang-models/_3gpp-common-mnsregistry.yang +++ b/yang-models/_3gpp-common-mnsregistry.yang @@ -54,7 +54,7 @@ module _3gpp-common-mnsregistry { } } - augment "mnsregist3gpp:MNSRegistry" { + augment "/mnsregist3gpp:MNSRegistry" { list MNSInfo { description "Represents the MNSInfo IOC."; key id; @@ -67,10 +67,6 @@ module _3gpp-common-mnsregistry { augment "/subnet3gpp:SubNetwork" { description "Represents the MNSRegistry IOC."; - key id; - uses top3gpp:Top_Grp; - container attributes { - uses MNSRegistryGrp; - } + uses top3gpp:Top_Grp; } } \ No newline at end of file -- GitLab From 3ba896c6e9b4523776bca904332ea6fdbe775946 Mon Sep 17 00:00:00 2001 From: scottma Date: Mon, 18 Oct 2021 16:04:23 +0200 Subject: [PATCH 163/593] Update _3gpp-common-mnsregistry.yang --- yang-models/_3gpp-common-mnsregistry.yang | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/yang-models/_3gpp-common-mnsregistry.yang b/yang-models/_3gpp-common-mnsregistry.yang index 2af524bf0..e36b8cb41 100644 --- a/yang-models/_3gpp-common-mnsregistry.yang +++ b/yang-models/_3gpp-common-mnsregistry.yang @@ -53,7 +53,8 @@ module _3gpp-common-mnsregistry { uses MNSInfoGrp; } } - + } + augment "/mnsregist3gpp:MNSRegistry" { list MNSInfo { description "Represents the MNSInfo IOC."; @@ -63,8 +64,6 @@ module _3gpp-common-mnsregistry { uses MNSInfoGrp; } } - } - augment "/subnet3gpp:SubNetwork" { description "Represents the MNSRegistry IOC."; uses top3gpp:Top_Grp; -- GitLab From b444d79b03a8d6570c1c50520fd4c82e760efa61 Mon Sep 17 00:00:00 2001 From: scottma Date: Mon, 18 Oct 2021 16:10:46 +0200 Subject: [PATCH 164/593] Update _3gpp-common-mnsregistry.yang --- yang-models/_3gpp-common-mnsregistry.yang | 3 +++ 1 file changed, 3 insertions(+) diff --git a/yang-models/_3gpp-common-mnsregistry.yang b/yang-models/_3gpp-common-mnsregistry.yang index e36b8cb41..dfc756948 100644 --- a/yang-models/_3gpp-common-mnsregistry.yang +++ b/yang-models/_3gpp-common-mnsregistry.yang @@ -64,8 +64,11 @@ module _3gpp-common-mnsregistry { uses MNSInfoGrp; } } + } + augment "/subnet3gpp:SubNetwork" { description "Represents the MNSRegistry IOC."; uses top3gpp:Top_Grp; } + } \ No newline at end of file -- GitLab From a992bc8afd0b8409c2bb59f6c10c8dcabedf56b0 Mon Sep 17 00:00:00 2001 From: scottma Date: Mon, 18 Oct 2021 16:13:12 +0200 Subject: [PATCH 165/593] Update _3gpp-common-mnsregistry.yang --- yang-models/_3gpp-common-mnsregistry.yang | 1 - 1 file changed, 1 deletion(-) diff --git a/yang-models/_3gpp-common-mnsregistry.yang b/yang-models/_3gpp-common-mnsregistry.yang index dfc756948..f8c6ec145 100644 --- a/yang-models/_3gpp-common-mnsregistry.yang +++ b/yang-models/_3gpp-common-mnsregistry.yang @@ -53,7 +53,6 @@ module _3gpp-common-mnsregistry { uses MNSInfoGrp; } } - } augment "/mnsregist3gpp:MNSRegistry" { list MNSInfo { -- GitLab From 57c72bda362d1747f8e262b6b0040db5c31d2dd6 Mon Sep 17 00:00:00 2001 From: scottma Date: Mon, 18 Oct 2021 16:47:18 +0200 Subject: [PATCH 166/593] Update _3gpp-common-mnsregistry.yang --- yang-models/_3gpp-common-mnsregistry.yang | 30 ++++++++++++++--------- 1 file changed, 18 insertions(+), 12 deletions(-) diff --git a/yang-models/_3gpp-common-mnsregistry.yang b/yang-models/_3gpp-common-mnsregistry.yang index f8c6ec145..adce96bb4 100644 --- a/yang-models/_3gpp-common-mnsregistry.yang +++ b/yang-models/_3gpp-common-mnsregistry.yang @@ -53,21 +53,27 @@ module _3gpp-common-mnsregistry { uses MNSInfoGrp; } } - + augment "/mnsregist3gpp:MNSRegistry" { - list MNSInfo { - description "Represents the MNSInfo IOC."; - key id; - uses top3gpp:Top_Grp; - container attributes { - uses MNSInfoGrp; + list MNSInfo { + description "Represents the MNS Registry."; + reference "3GPP TS 28.622"; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses MNSInfoGrp; + } } - } } - + augment "/subnet3gpp:SubNetwork" { - description "Represents the MNSRegistry IOC."; + description "Represents the MNS Registry IOC."; + reference "3GPP TS 28.622"; + key id; uses top3gpp:Top_Grp; - } - + container attributes { + uses MNSRegistryGrp; + } + } + } \ No newline at end of file -- GitLab From 2a661b04cd4a4786f0e329646a597f86424a505d Mon Sep 17 00:00:00 2001 From: scottma Date: Mon, 18 Oct 2021 16:48:59 +0200 Subject: [PATCH 167/593] Update _3gpp-common-mnsregistry.yang --- yang-models/_3gpp-common-mnsregistry.yang | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/yang-models/_3gpp-common-mnsregistry.yang b/yang-models/_3gpp-common-mnsregistry.yang index adce96bb4..fe778553d 100644 --- a/yang-models/_3gpp-common-mnsregistry.yang +++ b/yang-models/_3gpp-common-mnsregistry.yang @@ -71,9 +71,7 @@ module _3gpp-common-mnsregistry { reference "3GPP TS 28.622"; key id; uses top3gpp:Top_Grp; - container attributes { - uses MNSRegistryGrp; - } + uses MNSRegistryGrp; } } \ No newline at end of file -- GitLab From c0b21f74f693c62b67a304f7bec39cf35be0c145 Mon Sep 17 00:00:00 2001 From: scottma Date: Mon, 18 Oct 2021 16:51:56 +0200 Subject: [PATCH 168/593] Update _3gpp-common-mnsregistry.yang --- yang-models/_3gpp-common-mnsregistry.yang | 2 -- 1 file changed, 2 deletions(-) diff --git a/yang-models/_3gpp-common-mnsregistry.yang b/yang-models/_3gpp-common-mnsregistry.yang index fe778553d..1ac406b73 100644 --- a/yang-models/_3gpp-common-mnsregistry.yang +++ b/yang-models/_3gpp-common-mnsregistry.yang @@ -69,8 +69,6 @@ module _3gpp-common-mnsregistry { augment "/subnet3gpp:SubNetwork" { description "Represents the MNS Registry IOC."; reference "3GPP TS 28.622"; - key id; - uses top3gpp:Top_Grp; uses MNSRegistryGrp; } -- GitLab From e27b56221a54b00c2b9fb3df844450a17a07f48c Mon Sep 17 00:00:00 2001 From: scottma Date: Mon, 18 Oct 2021 16:55:24 +0200 Subject: [PATCH 169/593] Update _3gpp-common-mnsregistry.yang --- yang-models/_3gpp-common-mnsregistry.yang | 17 +++++++---------- 1 file changed, 7 insertions(+), 10 deletions(-) diff --git a/yang-models/_3gpp-common-mnsregistry.yang b/yang-models/_3gpp-common-mnsregistry.yang index 1ac406b73..18387a8e2 100644 --- a/yang-models/_3gpp-common-mnsregistry.yang +++ b/yang-models/_3gpp-common-mnsregistry.yang @@ -46,24 +46,21 @@ module _3gpp-common-mnsregistry { } grouping MNSRegistryGrp { + list MNSInfo { description "Represents the MNSRegistry IOC."; reference "3GPP TS 28.622"; + key id; uses top3gpp:Top_Grp; container attributes { uses MNSInfoGrp; } + } } - augment "/mnsregist3gpp:MNSRegistry" { - list MNSInfo { - description "Represents the MNS Registry."; - reference "3GPP TS 28.622"; - key id; - uses top3gpp:Top_Grp; - container attributes { - uses MNSInfoGrp; - } - } + augment "/mnsregist3gpp:MNSRegistryGrp" { + description "Represents the MNS Registry."; + reference "3GPP TS 28.622"; + uses MNSInfoGrp; } augment "/subnet3gpp:SubNetwork" { -- GitLab From c947d37e6d5a665792244bd1ec55ebc0f5292c1b Mon Sep 17 00:00:00 2001 From: scottma Date: Mon, 18 Oct 2021 16:58:25 +0200 Subject: [PATCH 170/593] Update _3gpp-common-mnsregistry.yang --- yang-models/_3gpp-common-mnsregistry.yang | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/yang-models/_3gpp-common-mnsregistry.yang b/yang-models/_3gpp-common-mnsregistry.yang index 18387a8e2..64cbd0e67 100644 --- a/yang-models/_3gpp-common-mnsregistry.yang +++ b/yang-models/_3gpp-common-mnsregistry.yang @@ -45,19 +45,19 @@ module _3gpp-common-mnsregistry { } } - grouping MNSRegistryGrp { + grouping MNSRegistry { list MNSInfo { - description "Represents the MNSRegistry IOC."; - reference "3GPP TS 28.622"; - key id; - uses top3gpp:Top_Grp; - container attributes { - uses MNSInfoGrp; - } + description "Represents the MNSRegistry IOC."; + reference "3GPP TS 28.622"; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses MNSInfoGrp; + } } } - augment "/mnsregist3gpp:MNSRegistryGrp" { + augment "/mnsregist3gpp:MNSRegistry" { description "Represents the MNS Registry."; reference "3GPP TS 28.622"; uses MNSInfoGrp; -- GitLab From cb4ab0eaaf1bcd9f42c066b17a0b842a772dd983 Mon Sep 17 00:00:00 2001 From: scottma Date: Mon, 18 Oct 2021 16:59:54 +0200 Subject: [PATCH 171/593] Update _3gpp-common-mnsregistry.yang --- yang-models/_3gpp-common-mnsregistry.yang | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/yang-models/_3gpp-common-mnsregistry.yang b/yang-models/_3gpp-common-mnsregistry.yang index 64cbd0e67..a28997d3d 100644 --- a/yang-models/_3gpp-common-mnsregistry.yang +++ b/yang-models/_3gpp-common-mnsregistry.yang @@ -45,7 +45,7 @@ module _3gpp-common-mnsregistry { } } - grouping MNSRegistry { + grouping MNSRegistryGrp { list MNSInfo { description "Represents the MNSRegistry IOC."; reference "3GPP TS 28.622"; @@ -57,7 +57,7 @@ module _3gpp-common-mnsregistry { } } - augment "/mnsregist3gpp:MNSRegistry" { + augment "/mnsregist3gpp:MNSRegistryGrp" { description "Represents the MNS Registry."; reference "3GPP TS 28.622"; uses MNSInfoGrp; -- GitLab From a1573793bedb0c15e89181477886e2098656f23d Mon Sep 17 00:00:00 2001 From: scottma Date: Mon, 18 Oct 2021 17:05:46 +0200 Subject: [PATCH 172/593] Update _3gpp-common-mnsregistry.yang --- yang-models/_3gpp-common-mnsregistry.yang | 20 +++++++------------- 1 file changed, 7 insertions(+), 13 deletions(-) diff --git a/yang-models/_3gpp-common-mnsregistry.yang b/yang-models/_3gpp-common-mnsregistry.yang index a28997d3d..f1a3c5e84 100644 --- a/yang-models/_3gpp-common-mnsregistry.yang +++ b/yang-models/_3gpp-common-mnsregistry.yang @@ -46,27 +46,21 @@ module _3gpp-common-mnsregistry { } grouping MNSRegistryGrp { - list MNSInfo { - description "Represents the MNSRegistry IOC."; - reference "3GPP TS 28.622"; - key id; - uses top3gpp:Top_Grp; - container attributes { - uses MNSInfoGrp; - } + description "Represents the MNSRegistry IOC."; + reference "3GPP TS 28.622"; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses MNSInfoGrp; } } augment "/mnsregist3gpp:MNSRegistryGrp" { - description "Represents the MNS Registry."; - reference "3GPP TS 28.622"; uses MNSInfoGrp; } augment "/subnet3gpp:SubNetwork" { - description "Represents the MNS Registry IOC."; - reference "3GPP TS 28.622"; uses MNSRegistryGrp; - } + } } \ No newline at end of file -- GitLab From 513268203c5811e8e064ec63755a7d8658c6d039 Mon Sep 17 00:00:00 2001 From: scottma Date: Mon, 18 Oct 2021 17:08:25 +0200 Subject: [PATCH 173/593] Update _3gpp-common-mnsregistry.yang --- yang-models/_3gpp-common-mnsregistry.yang | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/yang-models/_3gpp-common-mnsregistry.yang b/yang-models/_3gpp-common-mnsregistry.yang index f1a3c5e84..bbb3db917 100644 --- a/yang-models/_3gpp-common-mnsregistry.yang +++ b/yang-models/_3gpp-common-mnsregistry.yang @@ -45,7 +45,7 @@ module _3gpp-common-mnsregistry { } } - grouping MNSRegistryGrp { + grouping MNSInfo { description "Represents the MNSRegistry IOC."; reference "3GPP TS 28.622"; key id; @@ -54,6 +54,17 @@ module _3gpp-common-mnsregistry { uses MNSInfoGrp; } } + + grouping MNSRegistryGrp { + list MNSInfo { + description "Represents the MNSRegistry IOC."; + reference "3GPP TS 28.622"; + uses top3gpp:Top_Grp; + container attributes { + uses MNSInfo; + } + } + } augment "/mnsregist3gpp:MNSRegistryGrp" { uses MNSInfoGrp; -- GitLab From 1fa8825079cd7eaa6833e611e0d8d4dc6c08d0a5 Mon Sep 17 00:00:00 2001 From: scottma Date: Mon, 18 Oct 2021 17:14:39 +0200 Subject: [PATCH 174/593] Update _3gpp-common-mnsregistry.yang --- yang-models/_3gpp-common-mnsregistry.yang | 24 +++++------------------ 1 file changed, 5 insertions(+), 19 deletions(-) diff --git a/yang-models/_3gpp-common-mnsregistry.yang b/yang-models/_3gpp-common-mnsregistry.yang index bbb3db917..5fda6eaca 100644 --- a/yang-models/_3gpp-common-mnsregistry.yang +++ b/yang-models/_3gpp-common-mnsregistry.yang @@ -45,33 +45,19 @@ module _3gpp-common-mnsregistry { } } - grouping MNSInfo { + grouping MNSRegistry { description "Represents the MNSRegistry IOC."; reference "3GPP TS 28.622"; - key id; uses top3gpp:Top_Grp; - container attributes { - uses MNSInfoGrp; - } - } - - grouping MNSRegistryGrp { list MNSInfo { - description "Represents the MNSRegistry IOC."; - reference "3GPP TS 28.622"; - uses top3gpp:Top_Grp; - container attributes { - uses MNSInfo; + uses MNSInfoGroup; + key "mnsType mnsVersion"; } } } - - augment "/mnsregist3gpp:MNSRegistryGrp" { - uses MNSInfoGrp; - } - + augment "/subnet3gpp:SubNetwork" { - uses MNSRegistryGrp; + uses MNSRegistry; } } \ No newline at end of file -- GitLab From 98957bb6946e119d29194806664bb7a5fb019074 Mon Sep 17 00:00:00 2001 From: scottma Date: Mon, 18 Oct 2021 17:21:02 +0200 Subject: [PATCH 175/593] Update _3gpp-common-mnsregistry.yang --- yang-models/_3gpp-common-mnsregistry.yang | 20 +++++++++++++++----- 1 file changed, 15 insertions(+), 5 deletions(-) diff --git a/yang-models/_3gpp-common-mnsregistry.yang b/yang-models/_3gpp-common-mnsregistry.yang index 5fda6eaca..3d61c6b06 100644 --- a/yang-models/_3gpp-common-mnsregistry.yang +++ b/yang-models/_3gpp-common-mnsregistry.yang @@ -45,19 +45,29 @@ module _3gpp-common-mnsregistry { } } - grouping MNSRegistry { - description "Represents the MNSRegistry IOC."; + grouping MNSInfo { + list MNSInfo { + description "Represents the MNSInfo IOC."; reference "3GPP TS 28.622"; + key "mnsType mnsVersion"; uses top3gpp:Top_Grp; - list MNSInfo { + container attributes { uses MNSInfoGroup; - key "mnsType mnsVersion"; + } } + + grouping MNSRegistry { + description "Represents the MNSRegistry IOC."; + reference "3GPP TS 28.622"; + uses top3gpp:Top_Grp; } - } augment "/subnet3gpp:SubNetwork" { uses MNSRegistry; } + + augment "/mnsregist3gpp:MNSRegistry" { + uses MNSInfo; + } } \ No newline at end of file -- GitLab From 37c0e7ae556ba528709a2e6f949ba953952ff910 Mon Sep 17 00:00:00 2001 From: scottma Date: Mon, 18 Oct 2021 17:22:13 +0200 Subject: [PATCH 176/593] Update _3gpp-common-mnsregistry.yang --- yang-models/_3gpp-common-mnsregistry.yang | 1 + 1 file changed, 1 insertion(+) diff --git a/yang-models/_3gpp-common-mnsregistry.yang b/yang-models/_3gpp-common-mnsregistry.yang index 3d61c6b06..c8ffbdbb5 100644 --- a/yang-models/_3gpp-common-mnsregistry.yang +++ b/yang-models/_3gpp-common-mnsregistry.yang @@ -55,6 +55,7 @@ module _3gpp-common-mnsregistry { uses MNSInfoGroup; } } + } grouping MNSRegistry { description "Represents the MNSRegistry IOC."; -- GitLab From 56e03099bbb8fd48cc0a778414c2f998e95aa02d Mon Sep 17 00:00:00 2001 From: scottma Date: Mon, 18 Oct 2021 17:25:02 +0200 Subject: [PATCH 177/593] Update _3gpp-common-mnsregistry.yang --- yang-models/_3gpp-common-mnsregistry.yang | 26 ++++++++++------------- 1 file changed, 11 insertions(+), 15 deletions(-) diff --git a/yang-models/_3gpp-common-mnsregistry.yang b/yang-models/_3gpp-common-mnsregistry.yang index c8ffbdbb5..5553f6c0d 100644 --- a/yang-models/_3gpp-common-mnsregistry.yang +++ b/yang-models/_3gpp-common-mnsregistry.yang @@ -44,19 +44,7 @@ module _3gpp-common-mnsregistry { type string; } } - - grouping MNSInfo { - list MNSInfo { - description "Represents the MNSInfo IOC."; - reference "3GPP TS 28.622"; - key "mnsType mnsVersion"; - uses top3gpp:Top_Grp; - container attributes { - uses MNSInfoGroup; - } - } - } - + grouping MNSRegistry { description "Represents the MNSRegistry IOC."; reference "3GPP TS 28.622"; @@ -68,7 +56,15 @@ module _3gpp-common-mnsregistry { } augment "/mnsregist3gpp:MNSRegistry" { - uses MNSInfo; + list MNSInfo { + description "Represents the MNSInfo IOC."; + reference "3GPP TS 28.622"; + key "mnsType mnsVersion"; + uses top3gpp:Top_Grp; + container attributes { + uses MNSInfoGroup; + } + } } - + } \ No newline at end of file -- GitLab From 732b5e37c43088767743624b1b04ce3952784b69 Mon Sep 17 00:00:00 2001 From: scottma Date: Mon, 18 Oct 2021 17:33:15 +0200 Subject: [PATCH 178/593] Update _3gpp-common-mnsregistry.yang --- yang-models/_3gpp-common-mnsregistry.yang | 29 ++++++++++++++++------- 1 file changed, 21 insertions(+), 8 deletions(-) diff --git a/yang-models/_3gpp-common-mnsregistry.yang b/yang-models/_3gpp-common-mnsregistry.yang index 5553f6c0d..fa6887fa7 100644 --- a/yang-models/_3gpp-common-mnsregistry.yang +++ b/yang-models/_3gpp-common-mnsregistry.yang @@ -45,26 +45,39 @@ module _3gpp-common-mnsregistry { } } + grouping MNSInfo { + description "Represents the MNSInfo IOC."; + reference "3GPP TS 28.622"; + uses top3gpp:Top_Grp; + key "mnsType mnsVersion mnsAddress"; + container attributes { + uses MNSInfoGrp; + } + } + grouping MNSRegistry { description "Represents the MNSRegistry IOC."; reference "3GPP TS 28.622"; uses top3gpp:Top_Grp; - } - - augment "/subnet3gpp:SubNetwork" { - uses MNSRegistry; } augment "/mnsregist3gpp:MNSRegistry" { list MNSInfo { - description "Represents the MNSInfo IOC."; + description "Represents the MNSRegistry IOC."; reference "3GPP TS 28.622"; - key "mnsType mnsVersion"; uses top3gpp:Top_Grp; container attributes { - uses MNSInfoGroup; - } + uses MNSInfo; } + } + } + + augment "/subnet3gpp:SubNetwork" { + uses MNSRegistry; + } + + augment "/mnsregist3gpp:MNSRegistry" { + uses MNSInfo; } } \ No newline at end of file -- GitLab From d0e06bca5f9af0b08c6cffa96c962c77f0ab2c5b Mon Sep 17 00:00:00 2001 From: scottma Date: Mon, 18 Oct 2021 17:36:11 +0200 Subject: [PATCH 179/593] Update _3gpp-common-mnsregistry.yang --- yang-models/_3gpp-common-mnsregistry.yang | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/yang-models/_3gpp-common-mnsregistry.yang b/yang-models/_3gpp-common-mnsregistry.yang index fa6887fa7..65f2366b1 100644 --- a/yang-models/_3gpp-common-mnsregistry.yang +++ b/yang-models/_3gpp-common-mnsregistry.yang @@ -49,7 +49,6 @@ module _3gpp-common-mnsregistry { description "Represents the MNSInfo IOC."; reference "3GPP TS 28.622"; uses top3gpp:Top_Grp; - key "mnsType mnsVersion mnsAddress"; container attributes { uses MNSInfoGrp; } @@ -62,13 +61,12 @@ module _3gpp-common-mnsregistry { } augment "/mnsregist3gpp:MNSRegistry" { - list MNSInfo { description "Represents the MNSRegistry IOC."; reference "3GPP TS 28.622"; uses top3gpp:Top_Grp; - container attributes { + list MNSInfo { uses MNSInfo; - } + key "mnsType mnsVersion mnsAddress"; } } -- GitLab From aa535cf4c2aa885a432948d259e3252fecbd9568 Mon Sep 17 00:00:00 2001 From: scottma Date: Mon, 18 Oct 2021 17:40:08 +0200 Subject: [PATCH 180/593] Update _3gpp-common-mnsregistry.yang --- yang-models/_3gpp-common-mnsregistry.yang | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/yang-models/_3gpp-common-mnsregistry.yang b/yang-models/_3gpp-common-mnsregistry.yang index 65f2366b1..3d7dce15c 100644 --- a/yang-models/_3gpp-common-mnsregistry.yang +++ b/yang-models/_3gpp-common-mnsregistry.yang @@ -54,12 +54,22 @@ module _3gpp-common-mnsregistry { } } + grouping MNSRegistryGrp { + description "Represents the MNSRegistry IOC."; + reference "3GPP TS 28.622"; + uses top3gpp:Top_Grp; + } + grouping MNSRegistry { description "Represents the MNSRegistry IOC."; reference "3GPP TS 28.622"; uses top3gpp:Top_Grp; + container attributes { + uses MNSRegistryGrp; + } } + augment "/mnsregist3gpp:MNSRegistry" { description "Represents the MNSRegistry IOC."; reference "3GPP TS 28.622"; -- GitLab From 8c02491ab8e3c2d33545de4d496d53edc58a6b05 Mon Sep 17 00:00:00 2001 From: scottma Date: Mon, 18 Oct 2021 17:46:37 +0200 Subject: [PATCH 181/593] Update _3gpp-common-mnsregistry.yang --- yang-models/_3gpp-common-mnsregistry.yang | 17 ----------------- 1 file changed, 17 deletions(-) diff --git a/yang-models/_3gpp-common-mnsregistry.yang b/yang-models/_3gpp-common-mnsregistry.yang index 3d7dce15c..684f23277 100644 --- a/yang-models/_3gpp-common-mnsregistry.yang +++ b/yang-models/_3gpp-common-mnsregistry.yang @@ -53,30 +53,13 @@ module _3gpp-common-mnsregistry { uses MNSInfoGrp; } } - - grouping MNSRegistryGrp { - description "Represents the MNSRegistry IOC."; - reference "3GPP TS 28.622"; - uses top3gpp:Top_Grp; - } grouping MNSRegistry { description "Represents the MNSRegistry IOC."; reference "3GPP TS 28.622"; uses top3gpp:Top_Grp; container attributes { - uses MNSRegistryGrp; - } - } - - - augment "/mnsregist3gpp:MNSRegistry" { - description "Represents the MNSRegistry IOC."; - reference "3GPP TS 28.622"; - uses top3gpp:Top_Grp; - list MNSInfo { uses MNSInfo; - key "mnsType mnsVersion mnsAddress"; } } -- GitLab From a8250ac1c52e52640ec0ba9cdc0ff8347c60d7ff Mon Sep 17 00:00:00 2001 From: scottma Date: Mon, 18 Oct 2021 17:49:54 +0200 Subject: [PATCH 182/593] Update _3gpp-common-mnsregistry.yang --- yang-models/_3gpp-common-mnsregistry.yang | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/yang-models/_3gpp-common-mnsregistry.yang b/yang-models/_3gpp-common-mnsregistry.yang index 684f23277..2db2da6c4 100644 --- a/yang-models/_3gpp-common-mnsregistry.yang +++ b/yang-models/_3gpp-common-mnsregistry.yang @@ -54,7 +54,7 @@ module _3gpp-common-mnsregistry { } } - grouping MNSRegistry { + grouping MNSRegistryGrp { description "Represents the MNSRegistry IOC."; reference "3GPP TS 28.622"; uses top3gpp:Top_Grp; @@ -63,6 +63,14 @@ module _3gpp-common-mnsregistry { } } + grouping MNSRegistry { + description "Represents the MNSRegistry IOC."; + reference "3GPP TS 28.622"; + uses top3gpp:Top_Grp; + uses MNSRegistryGrp; + } + + augment "/subnet3gpp:SubNetwork" { uses MNSRegistry; } -- GitLab From 9046bef22da6b569269941d048178b41b427f5b8 Mon Sep 17 00:00:00 2001 From: scottma Date: Mon, 18 Oct 2021 17:51:48 +0200 Subject: [PATCH 183/593] Update _3gpp-common-mnsregistry.yang --- yang-models/_3gpp-common-mnsregistry.yang | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/yang-models/_3gpp-common-mnsregistry.yang b/yang-models/_3gpp-common-mnsregistry.yang index 2db2da6c4..fa6bfea3a 100644 --- a/yang-models/_3gpp-common-mnsregistry.yang +++ b/yang-models/_3gpp-common-mnsregistry.yang @@ -72,11 +72,11 @@ module _3gpp-common-mnsregistry { augment "/subnet3gpp:SubNetwork" { - uses MNSRegistry; + uses MNSRegistryGrp; } augment "/mnsregist3gpp:MNSRegistry" { - uses MNSInfo; + uses MNSInfoGrp; } } \ No newline at end of file -- GitLab From 0167c6823e53bdc964abfbd86dae92e1e8ba0fa3 Mon Sep 17 00:00:00 2001 From: scottma Date: Mon, 18 Oct 2021 17:57:25 +0200 Subject: [PATCH 184/593] Update _3gpp-common-mnsregistry.yang --- yang-models/_3gpp-common-mnsregistry.yang | 1 - 1 file changed, 1 deletion(-) diff --git a/yang-models/_3gpp-common-mnsregistry.yang b/yang-models/_3gpp-common-mnsregistry.yang index fa6bfea3a..221181eef 100644 --- a/yang-models/_3gpp-common-mnsregistry.yang +++ b/yang-models/_3gpp-common-mnsregistry.yang @@ -66,7 +66,6 @@ module _3gpp-common-mnsregistry { grouping MNSRegistry { description "Represents the MNSRegistry IOC."; reference "3GPP TS 28.622"; - uses top3gpp:Top_Grp; uses MNSRegistryGrp; } -- GitLab From 059f8c8c1b3e6324eb8025576d739f92ce5fe15b Mon Sep 17 00:00:00 2001 From: scottma Date: Mon, 18 Oct 2021 17:59:18 +0200 Subject: [PATCH 185/593] Update _3gpp-common-mnsregistry.yang --- yang-models/_3gpp-common-mnsregistry.yang | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/yang-models/_3gpp-common-mnsregistry.yang b/yang-models/_3gpp-common-mnsregistry.yang index 221181eef..9bdef8c8e 100644 --- a/yang-models/_3gpp-common-mnsregistry.yang +++ b/yang-models/_3gpp-common-mnsregistry.yang @@ -71,11 +71,11 @@ module _3gpp-common-mnsregistry { augment "/subnet3gpp:SubNetwork" { - uses MNSRegistryGrp; + uses MNSRegistry; } augment "/mnsregist3gpp:MNSRegistry" { - uses MNSInfoGrp; + uses MNSInfo; } } \ No newline at end of file -- GitLab From 128c18d62b1622da5b66e0e54d3d7f1d7fa9b66a Mon Sep 17 00:00:00 2001 From: scottma Date: Mon, 18 Oct 2021 18:07:22 +0200 Subject: [PATCH 186/593] Update _3gpp-common-mnsregistry.yang --- yang-models/_3gpp-common-mnsregistry.yang | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/yang-models/_3gpp-common-mnsregistry.yang b/yang-models/_3gpp-common-mnsregistry.yang index 9bdef8c8e..254968881 100644 --- a/yang-models/_3gpp-common-mnsregistry.yang +++ b/yang-models/_3gpp-common-mnsregistry.yang @@ -75,6 +75,14 @@ module _3gpp-common-mnsregistry { } augment "/mnsregist3gpp:MNSRegistry" { + list MNSInfo { + description "Represents the MNS Registry."; + reference "3GPP TS 28.622"; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses AMFFunctionGrp; + } uses MNSInfo; } -- GitLab From 94c591c13327290ff8a96fffdb81a776e198a49c Mon Sep 17 00:00:00 2001 From: scottma Date: Mon, 18 Oct 2021 18:08:42 +0200 Subject: [PATCH 187/593] Update _3gpp-common-mnsregistry.yang --- yang-models/_3gpp-common-mnsregistry.yang | 17 +++++++++-------- 1 file changed, 9 insertions(+), 8 deletions(-) diff --git a/yang-models/_3gpp-common-mnsregistry.yang b/yang-models/_3gpp-common-mnsregistry.yang index 254968881..1de7de4e5 100644 --- a/yang-models/_3gpp-common-mnsregistry.yang +++ b/yang-models/_3gpp-common-mnsregistry.yang @@ -76,14 +76,15 @@ module _3gpp-common-mnsregistry { augment "/mnsregist3gpp:MNSRegistry" { list MNSInfo { - description "Represents the MNS Registry."; - reference "3GPP TS 28.622"; - key id; - uses top3gpp:Top_Grp; - container attributes { - uses AMFFunctionGrp; + description "Represents the MNS Registry."; + reference "3GPP TS 28.622"; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses AMFFunctionGrp; } - uses MNSInfo; - } + uses MNSInfo; + } + } } \ No newline at end of file -- GitLab From 09ee7bc225410e49a0732b1b3c69e1af9a9b1790 Mon Sep 17 00:00:00 2001 From: scottma Date: Mon, 18 Oct 2021 18:12:36 +0200 Subject: [PATCH 188/593] Update _3gpp-common-mnsregistry.yang --- yang-models/_3gpp-common-mnsregistry.yang | 16 ++++++---------- 1 file changed, 6 insertions(+), 10 deletions(-) diff --git a/yang-models/_3gpp-common-mnsregistry.yang b/yang-models/_3gpp-common-mnsregistry.yang index 1de7de4e5..f8205b55b 100644 --- a/yang-models/_3gpp-common-mnsregistry.yang +++ b/yang-models/_3gpp-common-mnsregistry.yang @@ -64,9 +64,14 @@ module _3gpp-common-mnsregistry { } grouping MNSRegistry { + list MNSInfo { description "Represents the MNSRegistry IOC."; reference "3GPP TS 28.622"; - uses MNSRegistryGrp; + uses top3gpp:Top_Grp; + container attributes { + uses MNSRegistryGrp; + key "mnsType mnsVersion mnsAddress"; + } } @@ -75,16 +80,7 @@ module _3gpp-common-mnsregistry { } augment "/mnsregist3gpp:MNSRegistry" { - list MNSInfo { - description "Represents the MNS Registry."; - reference "3GPP TS 28.622"; - key id; - uses top3gpp:Top_Grp; - container attributes { - uses AMFFunctionGrp; - } uses MNSInfo; - } } } \ No newline at end of file -- GitLab From be2df06f18cf15923847aa8b0141bfb2a2c7667a Mon Sep 17 00:00:00 2001 From: scottma Date: Mon, 18 Oct 2021 18:13:40 +0200 Subject: [PATCH 189/593] Update _3gpp-common-mnsregistry.yang --- yang-models/_3gpp-common-mnsregistry.yang | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/yang-models/_3gpp-common-mnsregistry.yang b/yang-models/_3gpp-common-mnsregistry.yang index f8205b55b..bdb694c90 100644 --- a/yang-models/_3gpp-common-mnsregistry.yang +++ b/yang-models/_3gpp-common-mnsregistry.yang @@ -73,7 +73,7 @@ module _3gpp-common-mnsregistry { key "mnsType mnsVersion mnsAddress"; } } - + } augment "/subnet3gpp:SubNetwork" { uses MNSRegistry; -- GitLab From a3e77ca00861dd443ad29e4ee43d990f3fa946c9 Mon Sep 17 00:00:00 2001 From: scottma Date: Mon, 18 Oct 2021 18:15:43 +0200 Subject: [PATCH 190/593] Update _3gpp-common-mnsregistry.yang --- yang-models/_3gpp-common-mnsregistry.yang | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/yang-models/_3gpp-common-mnsregistry.yang b/yang-models/_3gpp-common-mnsregistry.yang index bdb694c90..ba0365739 100644 --- a/yang-models/_3gpp-common-mnsregistry.yang +++ b/yang-models/_3gpp-common-mnsregistry.yang @@ -68,9 +68,9 @@ module _3gpp-common-mnsregistry { description "Represents the MNSRegistry IOC."; reference "3GPP TS 28.622"; uses top3gpp:Top_Grp; + key "mnsType mnsVersion mnsAddress"; container attributes { uses MNSRegistryGrp; - key "mnsType mnsVersion mnsAddress"; } } } -- GitLab From 39ecd3f4cfcdf98439e64eeac14d1ec7fe75c9a4 Mon Sep 17 00:00:00 2001 From: scottma Date: Mon, 18 Oct 2021 18:18:35 +0200 Subject: [PATCH 191/593] Update _3gpp-common-mnsregistry.yang --- yang-models/_3gpp-common-mnsregistry.yang | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/yang-models/_3gpp-common-mnsregistry.yang b/yang-models/_3gpp-common-mnsregistry.yang index ba0365739..0b3f08b84 100644 --- a/yang-models/_3gpp-common-mnsregistry.yang +++ b/yang-models/_3gpp-common-mnsregistry.yang @@ -64,7 +64,7 @@ module _3gpp-common-mnsregistry { } grouping MNSRegistry { - list MNSInfo { + list MNSInfoGrp { description "Represents the MNSRegistry IOC."; reference "3GPP TS 28.622"; uses top3gpp:Top_Grp; @@ -79,8 +79,8 @@ module _3gpp-common-mnsregistry { uses MNSRegistry; } - augment "/mnsregist3gpp:MNSRegistry" { - uses MNSInfo; + augment "/mnsregist3gpp:MNSRegistryGrp" { + uses MNSInfoGrp; } } \ No newline at end of file -- GitLab From 7c5fd9dd3830f9df3b187a1a2cf5c3a3917283aa Mon Sep 17 00:00:00 2001 From: scottma Date: Mon, 18 Oct 2021 18:22:15 +0200 Subject: [PATCH 192/593] Update _3gpp-common-mnsregistry.yang --- yang-models/_3gpp-common-mnsregistry.yang | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/yang-models/_3gpp-common-mnsregistry.yang b/yang-models/_3gpp-common-mnsregistry.yang index 0b3f08b84..37694f194 100644 --- a/yang-models/_3gpp-common-mnsregistry.yang +++ b/yang-models/_3gpp-common-mnsregistry.yang @@ -64,13 +64,13 @@ module _3gpp-common-mnsregistry { } grouping MNSRegistry { - list MNSInfoGrp { + list MNSRegistry { description "Represents the MNSRegistry IOC."; reference "3GPP TS 28.622"; uses top3gpp:Top_Grp; key "mnsType mnsVersion mnsAddress"; container attributes { - uses MNSRegistryGrp; + uses MNSInfo; } } } -- GitLab From 1499743ec1fae646e7b5d46bfb89f3b65dc12b87 Mon Sep 17 00:00:00 2001 From: scottma Date: Mon, 18 Oct 2021 18:41:27 +0200 Subject: [PATCH 193/593] Update _3gpp-common-mnsregistry.yang --- yang-models/_3gpp-common-mnsregistry.yang | 7 ++----- 1 file changed, 2 insertions(+), 5 deletions(-) diff --git a/yang-models/_3gpp-common-mnsregistry.yang b/yang-models/_3gpp-common-mnsregistry.yang index 37694f194..f712d4cd6 100644 --- a/yang-models/_3gpp-common-mnsregistry.yang +++ b/yang-models/_3gpp-common-mnsregistry.yang @@ -58,19 +58,16 @@ module _3gpp-common-mnsregistry { description "Represents the MNSRegistry IOC."; reference "3GPP TS 28.622"; uses top3gpp:Top_Grp; - container attributes { - uses MNSInfo; - } } grouping MNSRegistry { - list MNSRegistry { + list mnsRegistry { description "Represents the MNSRegistry IOC."; reference "3GPP TS 28.622"; uses top3gpp:Top_Grp; key "mnsType mnsVersion mnsAddress"; container attributes { - uses MNSInfo; + uses MNSInfoGrp; } } } -- GitLab From 9210de595f8c1fdced2ca675b073383d8538579d Mon Sep 17 00:00:00 2001 From: scottma Date: Mon, 18 Oct 2021 18:43:16 +0200 Subject: [PATCH 194/593] Update _3gpp-common-mnsregistry.yang --- yang-models/_3gpp-common-mnsregistry.yang | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/yang-models/_3gpp-common-mnsregistry.yang b/yang-models/_3gpp-common-mnsregistry.yang index f712d4cd6..f3f305021 100644 --- a/yang-models/_3gpp-common-mnsregistry.yang +++ b/yang-models/_3gpp-common-mnsregistry.yang @@ -73,10 +73,10 @@ module _3gpp-common-mnsregistry { } augment "/subnet3gpp:SubNetwork" { - uses MNSRegistry; + uses MNSRegistryGrp; } - augment "/mnsregist3gpp:MNSRegistryGrp" { + augment "/mnsregist3gpp:MNSRegistry" { uses MNSInfoGrp; } -- GitLab From 77fb5ebda4c9a9ac03f3fa3c19d129e5ed6146be Mon Sep 17 00:00:00 2001 From: scottma Date: Mon, 18 Oct 2021 18:45:31 +0200 Subject: [PATCH 195/593] Update _3gpp-common-mnsregistry.yang --- yang-models/_3gpp-common-mnsregistry.yang | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/yang-models/_3gpp-common-mnsregistry.yang b/yang-models/_3gpp-common-mnsregistry.yang index f3f305021..3fecd1d18 100644 --- a/yang-models/_3gpp-common-mnsregistry.yang +++ b/yang-models/_3gpp-common-mnsregistry.yang @@ -76,7 +76,7 @@ module _3gpp-common-mnsregistry { uses MNSRegistryGrp; } - augment "/mnsregist3gpp:MNSRegistry" { + augment "/mnsregist3gpp:MNSRegistryGrp" { uses MNSInfoGrp; } -- GitLab From b2572d4c7daef694eb157a175e447a9f4a519ba9 Mon Sep 17 00:00:00 2001 From: scottma Date: Mon, 18 Oct 2021 18:46:45 +0200 Subject: [PATCH 196/593] Update _3gpp-common-mnsregistry.yang --- yang-models/_3gpp-common-mnsregistry.yang | 4 ---- 1 file changed, 4 deletions(-) diff --git a/yang-models/_3gpp-common-mnsregistry.yang b/yang-models/_3gpp-common-mnsregistry.yang index 3fecd1d18..845342116 100644 --- a/yang-models/_3gpp-common-mnsregistry.yang +++ b/yang-models/_3gpp-common-mnsregistry.yang @@ -76,8 +76,4 @@ module _3gpp-common-mnsregistry { uses MNSRegistryGrp; } - augment "/mnsregist3gpp:MNSRegistryGrp" { - uses MNSInfoGrp; - } - } \ No newline at end of file -- GitLab From 1736381a004c9abeaad56540c07fa9692f9b38d3 Mon Sep 17 00:00:00 2001 From: scottma Date: Mon, 18 Oct 2021 19:54:44 +0200 Subject: [PATCH 197/593] Update _3gpp-common-mnsregistry.yang --- yang-models/_3gpp-common-mnsregistry.yang | 1 + 1 file changed, 1 insertion(+) diff --git a/yang-models/_3gpp-common-mnsregistry.yang b/yang-models/_3gpp-common-mnsregistry.yang index 845342116..27fd8a713 100644 --- a/yang-models/_3gpp-common-mnsregistry.yang +++ b/yang-models/_3gpp-common-mnsregistry.yang @@ -13,6 +13,7 @@ module _3gpp-common-mnsregistry { reference "3GPP TS 28.623 Generic Network Resource Model (NRM)"; revision 2021-08-29 { reference "Initial revision, S5-214388"; } + revision 2021-10-18 { reference "Update, S5-215263"; } grouping MNSInfoGrp { description "Represents the MNSInfo IOC."; -- GitLab From bbd553d6541f59acbb422372e64b5db4112472dc Mon Sep 17 00:00:00 2001 From: scottma Date: Mon, 18 Oct 2021 20:00:09 +0200 Subject: [PATCH 198/593] Update _3gpp-common-mnsregistry.yang --- yang-models/_3gpp-common-mnsregistry.yang | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/yang-models/_3gpp-common-mnsregistry.yang b/yang-models/_3gpp-common-mnsregistry.yang index 27fd8a713..52163902b 100644 --- a/yang-models/_3gpp-common-mnsregistry.yang +++ b/yang-models/_3gpp-common-mnsregistry.yang @@ -12,9 +12,9 @@ module _3gpp-common-mnsregistry { Class (IOC) that is part of the Generic Network Resource Model (NRM)."; reference "3GPP TS 28.623 Generic Network Resource Model (NRM)"; + revision 2021-10-18 { reference "S5-215263"; } revision 2021-08-29 { reference "Initial revision, S5-214388"; } - revision 2021-10-18 { reference "Update, S5-215263"; } - + grouping MNSInfoGrp { description "Represents the MNSInfo IOC."; reference "3GPP TS 28.622"; -- GitLab From 5bf1f95fca4935fda6a5c30bfde29d0181771094 Mon Sep 17 00:00:00 2001 From: Brendan Hassett Date: Tue, 19 Oct 2021 11:33:35 +0200 Subject: [PATCH 199/593] S5-215266rev2 genericNrm.yaml --- OpenAPI/genericNrm.yaml | 46 ++++++++++++++++++++++++++--------------- 1 file changed, 29 insertions(+), 17 deletions(-) diff --git a/OpenAPI/genericNrm.yaml b/OpenAPI/genericNrm.yaml index 2b46aa48c..864d5427a 100644 --- a/OpenAPI/genericNrm.yaml +++ b/OpenAPI/genericNrm.yaml @@ -1207,9 +1207,8 @@ components: AlarmList: $ref: '#/components/schemas/AlarmList-Single' MnsRegistry: - type: array - items: - $ref: '#/components/schemas/MnsRegistry' + $ref: '#/components/schemas/MnsRegistry-Single' + ManagedElement-ncO: type: object properties: @@ -1346,22 +1345,11 @@ components: TraceJob: $ref: '#/components/schemas/TraceJob-Multiple' - MnsRegistry: + MnsRegistry-Single: type: object properties: - mnsLabel: - type: string - mnsType: - type: string - enum: - - ProvMnS - - FaultSupervisionMnS - - StreamingDataReportingMnS - - FileDataReportingMnS - mnsVersion: - type: string - mnsAddress: - type: string + MnsInfo: + $ref: '#/components/schemas/MnsInfo-Multiple' #-------- Definition of concrete IOCs -------------------------------------------- @@ -1552,6 +1540,24 @@ components: additionalProperties: $ref: 'faultMnS.yaml#/components/schemas/AlarmRecord' + MnsInfo-Single: + type: object + properties: + mnsLabel: + type: string + mnsType: + type: string + enum: + - ProvMnS + - FaultSupervisionMnS + - StreamingDataReportingMnS + - FileDataReportingMnS + mnsVersion: + type: string + mnsAddress: + description: Resource URI as defined in the relevant Technical Specification + $ref: 'comDefs.yaml#/components/schemas/Uri' + #-------- Definition of JSON arrays for name-contained IOCs ---------------------- VsDataContainer-Multiple: @@ -1586,6 +1592,10 @@ components: type: array items: $ref: '#/components/schemas/TraceJob-Single' + MnsInfo-Multiple: + type: array + items: + $ref: '#/components/schemas/MnsInfo-Single' #-------- Definitions in TS 28.623 for TS 28.532 --------------------------------- @@ -1609,3 +1619,5 @@ components: - $ref: '#/components/schemas/TraceJob-Single' - $ref: '#/components/schemas/AlarmList-Single' + - $ref: '#/components/schemas/MnsRegistry-Single' + - $ref: '#/components/schemas/MnsInfo-Single' -- GitLab From b3ba4cab37aa78a32dba7934f5da97edf9b3df8e Mon Sep 17 00:00:00 2001 From: shumim Date: Thu, 4 Nov 2021 10:51:25 +0100 Subject: [PATCH 200/593] This is referred to S5-216066 --- OpenAPI/5gcNrm.yaml | 50 +++++++++++++++++++++++++++++++-------------- 1 file changed, 35 insertions(+), 15 deletions(-) diff --git a/OpenAPI/5gcNrm.yaml b/OpenAPI/5gcNrm.yaml index e4c4b2619..72aec4330 100644 --- a/OpenAPI/5gcNrm.yaml +++ b/OpenAPI/5gcNrm.yaml @@ -1132,12 +1132,14 @@ components: - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' - type: object properties: - EP_N64: - $ref: '#/components/schemas/EP_N64-Multiple' - EP_N65: - $ref: '#/components/schemas/EP_N65-Multiple' - EP_N66: - $ref: '#/components/schemas/EP_N66-Multiple' + EP_Npc4: + $ref: '#/components/schemas/EP_Npc4-Multiple' + EP_Npc6: + $ref: '#/components/schemas/EP_Npc6-Multiple' + EP_Npc7: + $ref: '#/components/schemas/EP_Npc7-Multiple' + EP_Npc8: + $ref: '#/components/schemas/EP_Npc8-Multiple' ExternalAmfFunction-Single: allOf: @@ -1645,7 +1647,7 @@ components: $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' remoteAddress: $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' - EP_N64-Single: + EP_Npc4-Single: allOf: - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' - type: object @@ -1659,7 +1661,7 @@ components: $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' remoteAddress: $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' - EP_N65-Single: + EP_Npc6-Single: allOf: - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' - type: object @@ -1673,7 +1675,21 @@ components: $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' remoteAddress: $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' - EP_N66-Single: + EP_Npc7-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' + - type: object + properties: + localAddress: + $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' + remoteAddress: + $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' + EP_Npc8-Single: allOf: - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' - type: object @@ -2085,18 +2101,22 @@ components: type: array items: $ref: '#/components/schemas/EP_N60-Single' - EP_N64-Multiple: + EP_Npc4-Multiple: + type: array + items: + $ref: '#/components/schemas/EP_Npc4-Single' + EP_Npc6-Multiple: type: array items: - $ref: '#/components/schemas/EP_N64-Single' - EP_N65-Multiple: + $ref: '#/components/schemas/EP_Npc6-Single' + EP_Npc7-Multiple: type: array items: - $ref: '#/components/schemas/EP_N65-Single' - EP_N66-Multiple: + $ref: '#/components/schemas/EP_Npc7-Single' + EP_Npc8-Multiple: type: array items: - $ref: '#/components/schemas/EP_N66-Single' + $ref: '#/components/schemas/EP_Npc8-Single' Configurable5QISet-Multiple: type: array items: -- GitLab From f86a0d1b69f6beba53064a27c527ccb7376f4114 Mon Sep 17 00:00:00 2001 From: Per Elmdahl EPKPEEL Date: Wed, 3 Nov 2021 16:46:12 +0100 Subject: [PATCH 201/593] This commit reflects S5-216051 --- OpenAPI/nrNrm.yaml | 2 ++ yang-models/_3gpp-nr-nrm-gnbcucpfunction.yang | 12 ++++++++++-- 2 files changed, 12 insertions(+), 2 deletions(-) diff --git a/OpenAPI/nrNrm.yaml b/OpenAPI/nrNrm.yaml index e0fe8fbe0..35ead708f 100644 --- a/OpenAPI/nrNrm.yaml +++ b/OpenAPI/nrNrm.yaml @@ -801,6 +801,8 @@ components: $ref: 'genericNrm.yaml#/components/schemas/Dn' dynamic5QISetRef: $ref: 'genericNrm.yaml#/components/schemas/Dn' + dCHOControl: + type: boolean - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' - type: object properties: diff --git a/yang-models/_3gpp-nr-nrm-gnbcucpfunction.yang b/yang-models/_3gpp-nr-nrm-gnbcucpfunction.yang index 04122e97f..ecce855d6 100755 --- a/yang-models/_3gpp-nr-nrm-gnbcucpfunction.yang +++ b/yang-models/_3gpp-nr-nrm-gnbcucpfunction.yang @@ -15,6 +15,7 @@ module _3gpp-nr-nrm-gnbcucpfunction { Object Class (IOC) that is part of the NR Network Resource Model (NRM)."; reference "3GPP TS 28.541 5G Network Resource Model (NRM)"; + revision 2021-11-05 { reference "CR-XXXX"; } revision 2020-10-02 { reference CR-0384 ; } revision 2020-08-06 { reference "CR-0333"; } revision 2020-08-03 { reference "CR-0321"; } @@ -100,7 +101,8 @@ module _3gpp-nr-nrm-gnbcucpfunction { leaf-list xnHOBlackList { type string; description "List of nodes to which handovers over Xn are prohibited."; - } + } + leaf configurable5QISetRef { type types3gpp:DistinguishedName; description "DN of the Configurable5QISet that the GNBCUCPFunction supports (is associated to)."; @@ -110,10 +112,16 @@ module _3gpp-nr-nrm-gnbcucpfunction { type string; description "List of nodes to which handovers over X2 are prohibited."; } + leaf dynamic5QISetRef { type types3gpp:DistinguishedName; description "DN of the Dynamic5QISet that the GNBCUCPFunction supports (is associated to)."; } + + leaf dCHOControl { + type boolean; + description "This attribute determines whether the CHO function is enabled or disabled."; + } } augment "/me3gpp:ManagedElement" { @@ -129,4 +137,4 @@ module _3gpp-nr-nrm-gnbcucpfunction { uses mf3gpp:ManagedFunctionContainedClasses; } } -} \ No newline at end of file +} -- GitLab From 5e19b3cc9abc2c814dda11f23c4a6606ec31bb0c Mon Sep 17 00:00:00 2001 From: Per Elmdahl EPKPEEL Date: Wed, 3 Nov 2021 17:13:46 +0100 Subject: [PATCH 202/593] Corrected CR number in description of revision. --- yang-models/_3gpp-nr-nrm-gnbcucpfunction.yang | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/yang-models/_3gpp-nr-nrm-gnbcucpfunction.yang b/yang-models/_3gpp-nr-nrm-gnbcucpfunction.yang index ecce855d6..4ba821028 100755 --- a/yang-models/_3gpp-nr-nrm-gnbcucpfunction.yang +++ b/yang-models/_3gpp-nr-nrm-gnbcucpfunction.yang @@ -15,7 +15,7 @@ module _3gpp-nr-nrm-gnbcucpfunction { Object Class (IOC) that is part of the NR Network Resource Model (NRM)."; reference "3GPP TS 28.541 5G Network Resource Model (NRM)"; - revision 2021-11-05 { reference "CR-XXXX"; } + revision 2021-11-05 { reference "CR-0609"; } revision 2020-10-02 { reference CR-0384 ; } revision 2020-08-06 { reference "CR-0333"; } revision 2020-08-03 { reference "CR-0321"; } -- GitLab From 7b20583cf2c9bd2d81a45ce8b60bf8c1bf64e178 Mon Sep 17 00:00:00 2001 From: sunse Date: Thu, 23 Dec 2021 10:54:00 +0000 Subject: [PATCH 203/593] Update 5gcNrm.yaml for CR0637 TS28.541 --- OpenAPI/5gcNrm.yaml | 28 ++++++++++++++++++++++++++++ 1 file changed, 28 insertions(+) diff --git a/OpenAPI/5gcNrm.yaml b/OpenAPI/5gcNrm.yaml index b676afe78..726707974 100644 --- a/OpenAPI/5gcNrm.yaml +++ b/OpenAPI/5gcNrm.yaml @@ -173,6 +173,32 @@ components: - $ref: '#/components/schemas/UpfInfo' - $ref: '#/components/schemas/AmfInfo' - $ref: '#/components/schemas/Udrinfo' + NotificationType: + type: string + enum: + - N1_MESSAGES + - N2_INFORMATION + - LOCATION_NOTIFICATION + - DATA_REMOVAL_NOTIFICATION + - DATA_CHANGE_NOTIFICATION + - LOCATION_UPDATE_NOTIFICATION + - NSSAA_REAUTH_NOTIFICATION + - NSSAA_REVOC_NOTIFICATION + DefaultNotificationSubscription: + type: object + properties: + notificationType: + $ref: '#/components/schemas/NotificationType' + callbackURI: + type: string + n1MessageClass: + type: boolean + n2InfroamtionClass: + type: boolean + versions: + type: string + binding: + type: string ManagedNFProfile: type: object properties: @@ -180,6 +206,8 @@ components: type: string nfType: $ref: 'genericNrm.yaml#/components/schemas/NFType' + heartbeatTimer: + type: integer authzInfo: type: string hostAddr: -- GitLab From 0ae8bf978e8ac28f024c335151a2e568b64786c8 Mon Sep 17 00:00:00 2001 From: sunse Date: Thu, 23 Dec 2021 11:06:20 +0000 Subject: [PATCH 204/593] fix syntax issue Update 5gcNrm.yaml --- OpenAPI/5gcNrm.yaml | 30 +++++++++++++++--------------- 1 file changed, 15 insertions(+), 15 deletions(-) diff --git a/OpenAPI/5gcNrm.yaml b/OpenAPI/5gcNrm.yaml index 726707974..d7497dc28 100644 --- a/OpenAPI/5gcNrm.yaml +++ b/OpenAPI/5gcNrm.yaml @@ -184,21 +184,21 @@ components: - LOCATION_UPDATE_NOTIFICATION - NSSAA_REAUTH_NOTIFICATION - NSSAA_REVOC_NOTIFICATION - DefaultNotificationSubscription: - type: object - properties: - notificationType: - $ref: '#/components/schemas/NotificationType' - callbackURI: - type: string - n1MessageClass: - type: boolean - n2InfroamtionClass: - type: boolean - versions: - type: string - binding: - type: string + DefaultNotificationSubscription: + type: object + properties: + notificationType: + $ref: '#/components/schemas/NotificationType' + callbackURI: + type: string + n1MessageClass: + type: boolean + n2InfroamtionClass: + type: boolean + versions: + type: string + binding: + type: string ManagedNFProfile: type: object properties: -- GitLab From 64c1f05261d0e9441679d94d211efa4644b99e2d Mon Sep 17 00:00:00 2001 From: Shitao Li Date: Fri, 15 Oct 2021 05:37:24 +0200 Subject: [PATCH 205/593] Update 5gcNrm.yaml --- OpenAPI/5gcNrm.yaml | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/OpenAPI/5gcNrm.yaml b/OpenAPI/5gcNrm.yaml index d7497dc28..e8685f21c 100644 --- a/OpenAPI/5gcNrm.yaml +++ b/OpenAPI/5gcNrm.yaml @@ -599,7 +599,7 @@ components: $ref: '#/components/schemas/WeightFactor' snssaiList: $ref: 'nrNrm.yaml#/components/schemas/SnssaiList' - amfSet: + amfSetRef: $ref: 'genericNrm.yaml#/components/schemas/Dn' managedNFProfile: $ref: '#/components/schemas/ManagedNFProfile' @@ -650,6 +650,10 @@ components: $ref: '#/components/schemas/AmfSetId' snssaiList: $ref: 'nrNrm.yaml#/components/schemas/SnssaiList' + aMFRegionRef: + $ref: 'genericNrm.yaml#/components/schemas/Dn' + aMFSetMemberListRef: + $ref: 'genericNrm.yaml#/components/schemas/DnList' AmfRegion-Single: allOf: - $ref: 'genericNrm.yaml#/components/schemas/Top' @@ -668,6 +672,8 @@ components: $ref: '#/components/schemas/AmfRegionId' snssaiList: $ref: 'nrNrm.yaml#/components/schemas/SnssaiList' + aMFSetListRef: + $ref: 'genericNrm.yaml#/components/schemas/DnList' SmfFunction-Single: allOf: - $ref: 'genericNrm.yaml#/components/schemas/Top' -- GitLab From 1afab58155213665fd8fab02303f06836196f95c Mon Sep 17 00:00:00 2001 From: Shitao Li Date: Fri, 15 Oct 2021 08:16:00 +0200 Subject: [PATCH 206/593] Update 5gcNrm.yaml --- OpenAPI/5gcNrm.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/OpenAPI/5gcNrm.yaml b/OpenAPI/5gcNrm.yaml index e8685f21c..20f279e88 100644 --- a/OpenAPI/5gcNrm.yaml +++ b/OpenAPI/5gcNrm.yaml @@ -652,7 +652,7 @@ components: $ref: 'nrNrm.yaml#/components/schemas/SnssaiList' aMFRegionRef: $ref: 'genericNrm.yaml#/components/schemas/Dn' - aMFSetMemberListRef: + aMFSetMemberList: $ref: 'genericNrm.yaml#/components/schemas/DnList' AmfRegion-Single: allOf: -- GitLab From 627abeadce48a23f3b69547d9db343c470026a7d Mon Sep 17 00:00:00 2001 From: sunxixi Date: Mon, 18 Oct 2021 12:06:30 +0200 Subject: [PATCH 207/593] Update 5gcNrm.yaml --- OpenAPI/5gcNrm.yaml | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/OpenAPI/5gcNrm.yaml b/OpenAPI/5gcNrm.yaml index e4c4b2619..069fa158d 100644 --- a/OpenAPI/5gcNrm.yaml +++ b/OpenAPI/5gcNrm.yaml @@ -463,7 +463,8 @@ components: type: array items: type: string - + maxNumberofPDUSessions: + type: integer #-------- Definition of concrete IOCs -------------------------------------------- -- GitLab From db1819be92e208d41fa80209633f667517030ec6 Mon Sep 17 00:00:00 2001 From: sunxixi Date: Tue, 19 Oct 2021 03:55:01 +0200 Subject: [PATCH 208/593] Update 5gcNrm.yaml --- OpenAPI/5gcNrm.yaml | 46 ++++++++++++++++++++++++++++++++++++++++++++- 1 file changed, 45 insertions(+), 1 deletion(-) diff --git a/OpenAPI/5gcNrm.yaml b/OpenAPI/5gcNrm.yaml index 069fa158d..475ddb8da 100644 --- a/OpenAPI/5gcNrm.yaml +++ b/OpenAPI/5gcNrm.yaml @@ -1140,6 +1140,31 @@ components: EP_N66: $ref: '#/components/schemas/EP_N66-Multiple' + EASDFFunction-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' + - type: object + properties: + plmnId: + $ref: 'nrNrm.yaml#/components/schemas/PlmnId' + sBIFqdn: + type: string + managedNFProfile: + $ref: '#/components/schemas/ManagedNFProfile' + serverAddr: + type: string + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' + - type: object + properties: + EP_Nxx: + $ref: '#/components/schemas/EP_Nxx-Multiple' + + ExternalAmfFunction-Single: allOf: - $ref: 'genericNrm.yaml#/components/schemas/Top' @@ -1688,7 +1713,22 @@ components: $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' remoteAddress: $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' - + + EP_Nxx-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' + - type: object + properties: + localAddress: + $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' + remoteAddress: + $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' + FiveQiDscpMappingSet-Single: allOf: - $ref: 'genericNrm.yaml#/components/schemas/Top' @@ -2098,6 +2138,10 @@ components: type: array items: $ref: '#/components/schemas/EP_N66-Single' + EP_Nxx-Multiple: + type: array + items: + $ref: '#/components/schemas/EP_Nxx-Single' Configurable5QISet-Multiple: type: array items: -- GitLab From 2225499f923dfb0c1cfca3fb694b89bf3739020d Mon Sep 17 00:00:00 2001 From: sunxixi Date: Tue, 19 Oct 2021 05:17:37 +0200 Subject: [PATCH 209/593] Update 5gcNrm.yaml --- OpenAPI/5gcNrm.yaml | 1 + 1 file changed, 1 insertion(+) diff --git a/OpenAPI/5gcNrm.yaml b/OpenAPI/5gcNrm.yaml index 475ddb8da..56ced5922 100644 --- a/OpenAPI/5gcNrm.yaml +++ b/OpenAPI/5gcNrm.yaml @@ -2217,6 +2217,7 @@ components: - $ref: '#/components/schemas/EP_N32-Single' - $ref: '#/components/schemas/EP_N33-Single' - $ref: '#/components/schemas/EP_N60-Single' + - $ref: '#/components/schemas/EP_Nxx-Single' - $ref: '#/components/schemas/EP_S5C-Single' - $ref: '#/components/schemas/EP_S5U-Single' -- GitLab From 1958ff5289e2663e8c142688d4e46ac046640bdb Mon Sep 17 00:00:00 2001 From: sunxixi Date: Fri, 19 Nov 2021 17:38:44 +0100 Subject: [PATCH 210/593] Update 5gcNrm.yaml --- OpenAPI/5gcNrm.yaml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/OpenAPI/5gcNrm.yaml b/OpenAPI/5gcNrm.yaml index 20f279e88..d8e400073 100644 --- a/OpenAPI/5gcNrm.yaml +++ b/OpenAPI/5gcNrm.yaml @@ -867,6 +867,8 @@ components: $ref: '#/components/schemas/ManagedNFProfile' commModelList: $ref: '#/components/schemas/CommModelList' + eCSAddrConfigInfo: + type: string - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' - type: object properties: -- GitLab From 7ffe1480e0f83538ed40687e01a4c400a9b33984 Mon Sep 17 00:00:00 2001 From: sunxixi Date: Mon, 22 Nov 2021 03:55:46 +0100 Subject: [PATCH 211/593] Update 5gcNrm.yaml --- OpenAPI/5gcNrm.yaml | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/OpenAPI/5gcNrm.yaml b/OpenAPI/5gcNrm.yaml index d8e400073..ad4dc15c3 100644 --- a/OpenAPI/5gcNrm.yaml +++ b/OpenAPI/5gcNrm.yaml @@ -493,7 +493,12 @@ components: type: array items: type: string - + + ECSAddrConfigInfo: + type: array + items: + type: string + #-------- Definition of concrete IOCs -------------------------------------------- @@ -868,7 +873,7 @@ components: commModelList: $ref: '#/components/schemas/CommModelList' eCSAddrConfigInfo: - type: string + $ref: '#/components/schemas/ECSAddrConfigInfo' - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' - type: object properties: -- GitLab From cdbae5fc65576087ea2df217185dfa1832394388 Mon Sep 17 00:00:00 2001 From: sunse Date: Fri, 24 Dec 2021 10:35:09 +0000 Subject: [PATCH 212/593] 28.541_Rel17_CR0601 Update 5gcNrm.yaml --- OpenAPI/5gcNrm.yaml | 67 ++++++++++++++++++++++++++++++++++++++------- 1 file changed, 57 insertions(+), 10 deletions(-) diff --git a/OpenAPI/5gcNrm.yaml b/OpenAPI/5gcNrm.yaml index e4c4b2619..44add0c8d 100644 --- a/OpenAPI/5gcNrm.yaml +++ b/OpenAPI/5gcNrm.yaml @@ -144,11 +144,6 @@ components: properties: smfServingAreas: type: string - AmfInfo: - type: object - properties: - priority: - type: integer SupportedDataSetId: type: string description: any of enumrated value @@ -171,7 +166,6 @@ components: - $ref: '#/components/schemas/UdmInfo' - $ref: '#/components/schemas/AusfInfo' - $ref: '#/components/schemas/UpfInfo' - - $ref: '#/components/schemas/AmfInfo' - $ref: '#/components/schemas/Udrinfo' ManagedNFProfile: type: object @@ -184,12 +178,46 @@ components: type: string hostAddr: $ref: 'genericNrm.yaml#/components/schemas/HostAddr' + allowedPLMNs: + type: array + items: + $ref: 'comDefs.yaml#/components/schemas/PlmnId' + allowedSNPNs: + type: array + items: + $ref: 'nrNrm.yaml#/components/schemas/SnpnInfo' + allowedNfTypes: + type: array + items: + $ref: 'genericNrm.yaml#/components/schemas/NFType' + allowedNfDomains: + type: array + items: string + allowedNSSAIs: + type: array + items: + $ref: 'nrNrm.yaml#/components/schemas/Snssai' locality: type: string nFInfo: $ref: '#/components/schemas/NFInfo' capacity: type: integer + nfSetIdList: + type: array + items: string + servingScope: + type: array + items: string + nfSetRecoveryTimeList: + type: array + items: + $ref: 'comDefs.yaml#/components/schemas/DateTime' + scpDomains: + type: array + items: string + vendorId: + type: string SEPPType: type: string description: any of enumrated value @@ -463,7 +491,14 @@ components: type: array items: type: string - + + GUAMInfo: + type: object + properties: + pLMNId: + $ref: 'nrNrm.yaml#/components/schemas/PlmnId' + aMFIdentifier: + type: integer #-------- Definition of concrete IOCs -------------------------------------------- @@ -548,7 +583,7 @@ components: $ref: '#/components/schemas/Configurable5QISet-Multiple' Dynamic5QISet: $ref: '#/components/schemas/Dynamic5QISet-Multiple' - + AmfFunction-Single: allOf: - $ref: 'genericNrm.yaml#/components/schemas/Top' @@ -565,10 +600,22 @@ components: $ref: '#/components/schemas/AmfIdentifier' sBIFqdn: type: string + interPlmnFQDN: + type: string + taiList: + $ref: 'nrNrm.yaml#/components/schemas/Tai' + taiRangeList: + $ref: 'nrNrm.yaml#/components/schemas/TaiRange' weightFactor: $ref: '#/components/schemas/WeightFactor' - snssaiList: - $ref: 'nrNrm.yaml#/components/schemas/SnssaiList' + cNSIIdList: + $ref: '#/components/schemas/CNSIIdList' + gUAMIdList: + $ref: '#/components/schemas/GUAMInfo' + backupInfoAmfFailure: + $ref: '#/components/schemas/GUAMInfo' + backupInfoAmfRemoval: + $ref: '#/components/schemas/GUAMInfo' amfSet: $ref: 'genericNrm.yaml#/components/schemas/Dn' managedNFProfile: -- GitLab From 2cab45c80612c182aa7cf0561cb6672cbeef00f7 Mon Sep 17 00:00:00 2001 From: sunse Date: Fri, 24 Dec 2021 10:40:39 +0000 Subject: [PATCH 213/593] 28.541_Rel17_CR0602 Update nrNrm.yaml --- OpenAPI/nrNrm.yaml | 34 ++++++++++++++++++++++++++++++++++ 1 file changed, 34 insertions(+) diff --git a/OpenAPI/nrNrm.yaml b/OpenAPI/nrNrm.yaml index 850106631..6c30ea673 100644 --- a/OpenAPI/nrNrm.yaml +++ b/OpenAPI/nrNrm.yaml @@ -73,6 +73,22 @@ components: type: array items: $ref: '#/components/schemas/PlmnInfo' + SnpnId: + type: object + properties: + mcc: + $ref: 'genericNrm.yaml#/components/schemas/Mcc' + mnc: + $ref: '#/components/schemas/Mnc' + nid: + type: string + SnpnInfo: + type: object + properties: + snpnId: + $ref: '#/components/schemas/SnpnId' + snssai: + $ref: '#/components/schemas/Snssai' cagId: type: string nid: @@ -120,6 +136,24 @@ components: $ref: '#/components/schemas/PlmnId' nrTac: $ref: '#/components/schemas/NrTac' + NrtacRange: + type: object + properties: + nRTACstart: + type: string + nRTACend: + type: string + nRTACpattern: + type: string + TaiRange: + type: object + properties: + plmnId: + $ref: '#/components/schemas/PlmnId' + nRTACRangeList: + type: array + items: + $ref: '#/components/schemas/NrtacRange' BackhaulAddress: type: object -- GitLab From 6e568488a8b42fe648f6632b3a85b10329a4deff Mon Sep 17 00:00:00 2001 From: sunse Date: Fri, 24 Dec 2021 14:38:57 +0000 Subject: [PATCH 214/593] update version to 17.5.0 for 5gcNrm.yaml --- OpenAPI/5gcNrm.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/OpenAPI/5gcNrm.yaml b/OpenAPI/5gcNrm.yaml index 21249959e..b36c96012 100644 --- a/OpenAPI/5gcNrm.yaml +++ b/OpenAPI/5gcNrm.yaml @@ -1,7 +1,7 @@ openapi: 3.0.1 info: title: 3GPP 5GC NRM - version: 17.4.0 + version: 17.5.0 description: >- OAS 3.0.1 specification of the 5GC NRM © 2020, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). -- GitLab From cd8e9e3d7cb30b28c9a8cb0062fcb0df9b150fd2 Mon Sep 17 00:00:00 2001 From: sunse Date: Thu, 30 Dec 2021 07:58:23 +0000 Subject: [PATCH 215/593] update version to 17.5.0 for nrNrm.yaml --- OpenAPI/nrNrm.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/OpenAPI/nrNrm.yaml b/OpenAPI/nrNrm.yaml index ad666127d..4dfb1e61d 100644 --- a/OpenAPI/nrNrm.yaml +++ b/OpenAPI/nrNrm.yaml @@ -1,7 +1,7 @@ openapi: 3.0.1 info: title: NR NRM - version: 17.4.0 + version: 17.5.0 description: >- OAS 3.0.1 specification of the NR NRM © 2020, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). -- GitLab From f5b7d390222397b7dc2594de84d84db45c2f57c8 Mon Sep 17 00:00:00 2001 From: sunse Date: Thu, 30 Dec 2021 07:59:06 +0000 Subject: [PATCH 216/593] update version to 17.5.0 for sliceNrm.yaml --- OpenAPI/sliceNrm.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/OpenAPI/sliceNrm.yaml b/OpenAPI/sliceNrm.yaml index 048da8df8..babd2c83b 100644 --- a/OpenAPI/sliceNrm.yaml +++ b/OpenAPI/sliceNrm.yaml @@ -1,7 +1,7 @@ openapi: 3.0.1 info: title: Slice NRM - version: 17.4.0 + version: 17.5.0 description: >- OAS 3.0.1 specification of the Slice NRM @ 2020, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). -- GitLab From 9fd1c942ab7b6433037b3429cbfd447b666c6540 Mon Sep 17 00:00:00 2001 From: lengyelb Date: Sun, 2 Jan 2022 09:38:46 +0000 Subject: [PATCH 217/593] Update README.md Added 1 space to test pipeline --- yang-models/README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/yang-models/README.md b/yang-models/README.md index 4959d98c5..bcd5ec655 100755 --- a/yang-models/README.md +++ b/yang-models/README.md @@ -5,4 +5,4 @@ All commited YANG modules MUST pass the "pyang --strict -p external-yams _3gpp-*.yang" validation command without errors. - \ No newline at end of file + -- GitLab From 10200757060e8ea2d1a88b13f9b06d0e356f7be4 Mon Sep 17 00:00:00 2001 From: "U-ERICSSON\\ETHBLL" Date: Sun, 2 Jan 2022 11:01:29 +0100 Subject: [PATCH 218/593] CR-0138 S5-215572 --- yang-models/_3gpp-common-yang-types.yang | 37 ++++++++++++++++++++++++ 1 file changed, 37 insertions(+) diff --git a/yang-models/_3gpp-common-yang-types.yang b/yang-models/_3gpp-common-yang-types.yang index f71e5420b..d5371e347 100755 --- a/yang-models/_3gpp-common-yang-types.yang +++ b/yang-models/_3gpp-common-yang-types.yang @@ -13,6 +13,11 @@ module _3gpp-common-yang-types { network slicing."; reference "3GPP TS 28.541"; + revision 2021-09-30 { + description "Added Longitude, Latitude, TenthOfDegrees, OnOff."; + reference "CR-0138"; + } + revision 2020-11-06 { description "Removed incorrect S-NSSAI definitions."; reference "CR-0118"; @@ -37,6 +42,38 @@ module _3gpp-common-yang-types { reference "Initial version."; } + typedef TenthOfDegrees { + type uint16 { + range 0..3600; + } + units "0.1 degrees"; + description "A single integral value corresponding to an angle in degrees + between 0 and 360 with a resolution of 0.1 degrees."; + } + + typedef Latitude { + type decimal64 { + fraction-digits 4; + range "-90.0000..+90.0000"; + } + description "Latitude values"; + } + + typedef Longitude { + type decimal64 { + fraction-digits 4; + range "-180.0000..+180.0000"; + } + description "Longitude values"; + } + + typedef OnOff { + type enumeration { + enum ON; + enum OFF; + } + } + grouping ManagedNFProfile { description "Defines profile for managed NF"; reference "3GPP TS 23.501"; -- GitLab From 72689f2e863141a9919709edf509e758c7eb9d7e Mon Sep 17 00:00:00 2001 From: "U-ERICSSON\\ETHBLL" Date: Sun, 2 Jan 2022 11:05:25 +0100 Subject: [PATCH 219/593] S5-215533 CR-0140 --- yang-models/_3gpp-common-mnsregistry.yang | 59 +++++++++++++++-------- 1 file changed, 40 insertions(+), 19 deletions(-) mode change 100644 => 100755 yang-models/_3gpp-common-mnsregistry.yang diff --git a/yang-models/_3gpp-common-mnsregistry.yang b/yang-models/_3gpp-common-mnsregistry.yang old mode 100644 new mode 100755 index 2783fd385..52163902b --- a/yang-models/_3gpp-common-mnsregistry.yang +++ b/yang-models/_3gpp-common-mnsregistry.yang @@ -12,13 +12,12 @@ module _3gpp-common-mnsregistry { Class (IOC) that is part of the Generic Network Resource Model (NRM)."; reference "3GPP TS 28.623 Generic Network Resource Model (NRM)"; + revision 2021-10-18 { reference "S5-215263"; } revision 2021-08-29 { reference "Initial revision, S5-214388"; } - - grouping MNSRegistryGrp { - description "Represents the MNSRegistry IOC."; - reference "3GPP TS 28.541"; - uses top3gpp:Top_Grp; - + + grouping MNSInfoGrp { + description "Represents the MNSInfo IOC."; + reference "3GPP TS 28.622"; leaf mnsLabel { description "Human-readable name of management service."; mandatory true; @@ -28,9 +27,10 @@ module _3gpp-common-mnsregistry { leaf mnsType { description "Type of management service."; type enumeration { - enum PROVISIONING; - enum FAULT_SUPERVISION; - enum PERFORMANCE_ASSURANCE; + enum ProvMnS; + enum FaultSupervisionMnS; + enum StreamingDataReportingMnS; + enum FileDataReportingMnS; } } @@ -44,16 +44,37 @@ module _3gpp-common-mnsregistry { mandatory true; type string; } + } + + grouping MNSInfo { + description "Represents the MNSInfo IOC."; + reference "3GPP TS 28.622"; + uses top3gpp:Top_Grp; + container attributes { + uses MNSInfoGrp; } - - augment "/subnet3gpp:SubNetwork" { - list MNSRegistry { - description "Represents the MNSRegistry IOC."; - key id; - uses top3gpp:Top_Grp; - container attributes { - uses MNSRegistryGrp; - } + } + + grouping MNSRegistryGrp { + description "Represents the MNSRegistry IOC."; + reference "3GPP TS 28.622"; + uses top3gpp:Top_Grp; + } + + grouping MNSRegistry { + list mnsRegistry { + description "Represents the MNSRegistry IOC."; + reference "3GPP TS 28.622"; + uses top3gpp:Top_Grp; + key "mnsType mnsVersion mnsAddress"; + container attributes { + uses MNSInfoGrp; } - } + } + } + + augment "/subnet3gpp:SubNetwork" { + uses MNSRegistryGrp; + } + } \ No newline at end of file -- GitLab From 664adf684dd92d3a9a6f9cef9ad755ad529a556c Mon Sep 17 00:00:00 2001 From: "U-ERICSSON\\ETHBLL" Date: Sun, 2 Jan 2022 11:09:01 +0100 Subject: [PATCH 220/593] S5-215534 CR-0468 _3gpp-nr-nrm-operatordu.yang _3gpp-nr-nrm-nroperatorcelldu.yang --- .../_3gpp-nr-nrm-nroperatorcelldu.yang | 73 +++++++++++++++++++ yang-models/_3gpp-nr-nrm-operatordu.yang | 44 +++++++++++ 2 files changed, 117 insertions(+) create mode 100755 yang-models/_3gpp-nr-nrm-nroperatorcelldu.yang create mode 100755 yang-models/_3gpp-nr-nrm-operatordu.yang diff --git a/yang-models/_3gpp-nr-nrm-nroperatorcelldu.yang b/yang-models/_3gpp-nr-nrm-nroperatorcelldu.yang new file mode 100755 index 000000000..6f8ac2d06 --- /dev/null +++ b/yang-models/_3gpp-nr-nrm-nroperatorcelldu.yang @@ -0,0 +1,73 @@ +module _3gpp-nr-nrm-nroperatorcelldu { + yang-version 1.1; + namespace "urn:3gpp:sa5:_3gpp-nr-nrm-nroperatorcelldu"; + prefix "nropcelld3gpp"; + + import _3gpp-common-top { prefix top3gpp; } + import _3gpp-common-managed-element { prefix me3gpp; } + import _3gpp-nr-nrm-operatordu { prefix operdu3gpp; } + import _3gpp-5g-common-yang-types { prefix types5g3gpp; } + import _3gpp-common-yang-types { prefix types3gpp; } + import _3gpp-nr-nrm-gnbdufunction { prefix gnbdu3gpp; } + + organization "3GPP SA5"; + contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; + description "Defines the YANG mapping of the OperatorDU Information Object + Class (IOC) that is part of the NR Network Resource Model (NRM)."; + reference "3GPP TS 28.541 5G Network Resource Model (NRM)"; + + revision 2021-10-01 { reference "Initial revision"; } + + grouping NROperatorCellDUGrp { + description "Represents the NROperatorCellDU IOC."; + reference "3GPP TS 28.541"; + uses operdu3gpp:OperatorDUGrp; + + leaf cellLocalId { + description "Identifies an NR cell of a gNB. Together with the + corresponding gNB identifier in forms the NR Cell Identity (NCI)."; + reference "NCI in 3GPP TS 38.300"; + type int32 { range "0..16383"; } + } + + list pLMNInfoList { + description "The PLMNInfoList is a list of PLMNInfo data type. It + defines which PLMNs that can be served by the NR cell, and which + S-NSSAIs that can be supported by the NR cell for corresponding PLMN + in case of network slicing feature is supported. The plMNId of the + first entry of the list is the PLMNId used to construct the nCGI for + the NR cell."; + key "mcc mnc sd sst"; + min-elements 1; + ordered-by user; + uses types5g3gpp:PLMNInfo; + } + + leaf nRTAC { + description "The common 5GS Tracking Area Code for the PLMNs."; + reference "3GPP TS 23.003, 3GPP TS 38.473"; + type types3gpp:Tac; + } + + leaf-list nRCellDURef { + description "Reference to corresponding NRCellDU instance."; + type types3gpp:DistinguishedName; + } + + } + + augment "/me3gpp:ManagedElement/gnbdu3gpp:GNBDUFunction/operdu3gpp:OperatorDU" + { + + list NROperatorCellDU { + description "Contains attributes to support 5G MOCN network sharing."; + reference "3GPP TS 28.541"; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses NROperatorCellDUGrp; + } + uses gnbdu3gpp:GNBDUFunctionGrp; + } + } +} diff --git a/yang-models/_3gpp-nr-nrm-operatordu.yang b/yang-models/_3gpp-nr-nrm-operatordu.yang new file mode 100755 index 000000000..f0536c43b --- /dev/null +++ b/yang-models/_3gpp-nr-nrm-operatordu.yang @@ -0,0 +1,44 @@ +module _3gpp-nr-nrm-operatordu { + yang-version 1.1; + namespace "urn:3gpp:sa5:_3gpp-nr-nrm-operatordu"; + prefix "operdu3gpp"; + + import _3gpp-common-top { prefix top3gpp; } + import _3gpp-common-managed-element { prefix me3gpp; } + import _3gpp-nr-nrm-gnbdufunction {prefix gnbdu3gpp; } + + organization "3GPP SA5"; + contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; + description "Defines the YANG mapping of the OperatorDU Information Object + Class (IOC) that is part of the NR Network Resource Model (NRM)."; + reference "3GPP TS 28.541 5G Network Resource Model (NRM)"; + + revision 2021-10-01 { reference "Initial revision"; } + + grouping OperatorDUGrp { + description "Represents the OperatorDU IOC."; + reference "3GPP TS 28.541"; + uses gnbdu3gpp:GNBDUFunctionGrp { + refine gNBId { + mandatory true; + } + refine gNBIdLength { + mandatory true; + } + } + } + + augment "/me3gpp:ManagedElement/gnbdu3gpp:GNBDUFunction" { + + list OperatorDU { + description "Contains attributes to support the 5G MOCN network sharing."; + reference "3GPP TS 28.541"; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses OperatorDUGrp; + } + uses gnbdu3gpp:GNBDUFunctionGrp; + } + } +} -- GitLab From 73e27070fdbaa572842cb2bac063cccad577f999 Mon Sep 17 00:00:00 2001 From: Joey Chou Date: Thu, 21 Oct 2021 21:31:37 +0200 Subject: [PATCH 221/593] Add new file --- yang-models/3gpp-nr-nrm-dlbofunction.yang | 77 +++++++++++++++++++++++ 1 file changed, 77 insertions(+) create mode 100644 yang-models/3gpp-nr-nrm-dlbofunction.yang diff --git a/yang-models/3gpp-nr-nrm-dlbofunction.yang b/yang-models/3gpp-nr-nrm-dlbofunction.yang new file mode 100644 index 000000000..4f3a94468 --- /dev/null +++ b/yang-models/3gpp-nr-nrm-dlbofunction.yang @@ -0,0 +1,77 @@ + +module _3gpp-nr-nrm-dlbofunction { + yang-version 1.1; + namespace "urn:3gpp:sa5:_3gpp-nr-nrm-dlbofunction"; + prefix "dlbof3gpp"; + + import _3gpp-common-subnetwork { prefix subnet3gpp; } + import _3gpp-common-top { prefix top3gpp; } + import _3gpp-nr-nrm-gnbcucpfunction { prefix gnbcucp3gpp; } + import _3gpp-common-managed-element { prefix me3gpp; } + import _3gpp-nr-nrm-nrcellcu { prefix nrcellcu3gpp; } + + organization "3GPP SA5"; + contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; + description "Defines the YANG mapping of the DLBOFunction + Information Object Class (IOC) that is part of the NR Network Resource + Model (NRM)."; + reference "3GPP TS 28.541 5G Network Resource Model (NRM)"; + + grouping DLBOFunctionGrp { + description "Represents the DLBOFunction IOC."; + + leaf dlboControl { + description "This attribute determines whether the LBO function is + enabled or disabled."; + type boolean; + } + + leaf maximumDeviationHoTrigger { + description "This parameter defines the maximum allowed absolute deviation of the Handover Trigger, from the default point of operation."; + type int32 { range "-20..20"; } + units "0.5"; + } + + leaf minimumTimeBetweenHoTriggerChange { + description "This parameter defines the minimum allowed time interval between two Handover Trigger change performed by MRO. This is used to control the stability and convergence of the algorithm."; + type int32 { range "0..604800"; } + units "1"; + } + + } + + grouping DLBOFunctionSubtree { + list DLBOFunction { + description "This IOC contains attributes to support the D-SON function + of LBO. + + In the case where multiple DLBO MOIs exist at different levels of the + containment tree, the DLBO MOI at the lower level overrides the DLBO + MOIs at higher level(s) of the same containment tree."; + reference "clause 7.1.2 in TS 28.313"; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses DLBOFunctionGrp; + } + } + } + + augment "/me3gpp:ManagedElement/gnbcucp3gpp:GNBCUCPFunction/"+ + "nrcellcu3gpp:NRCellCU" { + if-feature nrcellcu3gpp:DLBOFunction; + uses DLBOFunctionSubtree; + } + augment /me3gpp:ManagedElement/gnbcucp3gpp:GNBCUCPFunction { + if-feature gnbcucp3gpp:DLBOFunction; + uses DLBOFunctionSubtree; + } + augment /me3gpp:ManagedElement { + if-feature me3gpp:DLBOFunction; + uses DLBOFunctionSubtree; + } + augment /subnet3gpp:SubNetwork { + if-feature subnet3gpp:DLBOFunction; + uses DLBOFunctionSubtree; + } +} -- GitLab From b5c1d7d497c1a2a2ebec1e17a3cabd44adbd42c3 Mon Sep 17 00:00:00 2001 From: "U-ERICSSON\\ETHBLL" Date: Fri, 22 Oct 2021 14:03:55 +0200 Subject: [PATCH 222/593] Renamed file dlbofunc adding the lead underscore and corrected features for containment. --- ...on.yang => _3gpp-nr-nrm-dlbofunction.yang} | 37 +++++++++++++------ 1 file changed, 26 insertions(+), 11 deletions(-) rename yang-models/{3gpp-nr-nrm-dlbofunction.yang => _3gpp-nr-nrm-dlbofunction.yang} (68%) diff --git a/yang-models/3gpp-nr-nrm-dlbofunction.yang b/yang-models/_3gpp-nr-nrm-dlbofunction.yang similarity index 68% rename from yang-models/3gpp-nr-nrm-dlbofunction.yang rename to yang-models/_3gpp-nr-nrm-dlbofunction.yang index 4f3a94468..e3146a24b 100644 --- a/yang-models/3gpp-nr-nrm-dlbofunction.yang +++ b/yang-models/_3gpp-nr-nrm-dlbofunction.yang @@ -1,4 +1,3 @@ - module _3gpp-nr-nrm-dlbofunction { yang-version 1.1; namespace "urn:3gpp:sa5:_3gpp-nr-nrm-dlbofunction"; @@ -17,6 +16,22 @@ module _3gpp-nr-nrm-dlbofunction { Model (NRM)."; reference "3GPP TS 28.541 5G Network Resource Model (NRM)"; + revision 2021-10-22 { reference "CR-0577"; } + + feature DLBOUnderGNBCUCPFunction { + description "The DLBOFunction shall be available under + GNBCUCPFunction"; + } + + feature DLBOUnderManagedElement { + description "The DLBOFunction shall be available under + ManagedElement"; + } + + feature DLBOUnderSubNetwork { + description "The DLBOFunction shall be available under + SubNetwork"; + } grouping DLBOFunctionGrp { description "Represents the DLBOFunction IOC."; @@ -27,13 +42,17 @@ module _3gpp-nr-nrm-dlbofunction { } leaf maximumDeviationHoTrigger { - description "This parameter defines the maximum allowed absolute deviation of the Handover Trigger, from the default point of operation."; + description "This parameter defines the maximum allowed absolute + deviation of the Handover Trigger, from the default point of + operation."; type int32 { range "-20..20"; } units "0.5"; } leaf minimumTimeBetweenHoTriggerChange { - description "This parameter defines the minimum allowed time interval between two Handover Trigger change performed by MRO. This is used to control the stability and convergence of the algorithm."; + description "This parameter defines the minimum allowed time interval + between two Handover Trigger change performed by MRO. This is used + to control the stability and convergence of the algorithm."; type int32 { range "0..604800"; } units "1"; } @@ -59,19 +78,15 @@ module _3gpp-nr-nrm-dlbofunction { augment "/me3gpp:ManagedElement/gnbcucp3gpp:GNBCUCPFunction/"+ "nrcellcu3gpp:NRCellCU" { - if-feature nrcellcu3gpp:DLBOFunction; - uses DLBOFunctionSubtree; - } - augment /me3gpp:ManagedElement/gnbcucp3gpp:GNBCUCPFunction { - if-feature gnbcucp3gpp:DLBOFunction; + if-feature DLBOUnderGNBCUCPFunction; uses DLBOFunctionSubtree; } augment /me3gpp:ManagedElement { - if-feature me3gpp:DLBOFunction; + if-feature DLBOUnderManagedElement; uses DLBOFunctionSubtree; } augment /subnet3gpp:SubNetwork { - if-feature subnet3gpp:DLBOFunction; + if-feature DLBOUnderSubNetwork; uses DLBOFunctionSubtree; } -} +} \ No newline at end of file -- GitLab From defc7c0f3d4cd6ef28dba4d928800f3e3ae11be3 Mon Sep 17 00:00:00 2001 From: "U-ERICSSON\\ETHBLL" Date: Sun, 2 Jan 2022 18:49:20 +0100 Subject: [PATCH 223/593] delete all yaml --- OpenAPI/5gcNrm.yaml | 2185 ----------------------------- OpenAPI/PerDataFileReportMnS.yaml | 13 - OpenAPI/PerMeasJobCtlMnS.yaml | 280 ---- OpenAPI/PerThresMonMnS.yaml | 102 -- OpenAPI/PerfDataStreamingMnS.yaml | 363 ----- OpenAPI/comDefs.yaml | 84 -- OpenAPI/coslaNrm.yaml | 168 --- OpenAPI/faultMnS.yaml | 1144 --------------- OpenAPI/genericNrm.yaml | 1606 --------------------- OpenAPI/heartbeatNtf.yaml | 23 - OpenAPI/nrNrm.yaml | 1905 ------------------------- OpenAPI/provMnS.yaml | 579 -------- OpenAPI/sliceNrm.yaml | 632 --------- OpenAPI/streamingDataMnS.yaml | 453 ------ 14 files changed, 9537 deletions(-) delete mode 100644 OpenAPI/5gcNrm.yaml delete mode 100644 OpenAPI/PerDataFileReportMnS.yaml delete mode 100644 OpenAPI/PerMeasJobCtlMnS.yaml delete mode 100644 OpenAPI/PerThresMonMnS.yaml delete mode 100644 OpenAPI/PerfDataStreamingMnS.yaml delete mode 100644 OpenAPI/comDefs.yaml delete mode 100644 OpenAPI/coslaNrm.yaml delete mode 100644 OpenAPI/faultMnS.yaml delete mode 100644 OpenAPI/genericNrm.yaml delete mode 100644 OpenAPI/heartbeatNtf.yaml delete mode 100644 OpenAPI/nrNrm.yaml delete mode 100644 OpenAPI/provMnS.yaml delete mode 100644 OpenAPI/sliceNrm.yaml delete mode 100644 OpenAPI/streamingDataMnS.yaml diff --git a/OpenAPI/5gcNrm.yaml b/OpenAPI/5gcNrm.yaml deleted file mode 100644 index e4c4b2619..000000000 --- a/OpenAPI/5gcNrm.yaml +++ /dev/null @@ -1,2185 +0,0 @@ -openapi: 3.0.1 -info: - title: 3GPP 5GC NRM - version: 17.4.0 - description: >- - OAS 3.0.1 specification of the 5GC NRM - © 2020, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). - All rights reserved. -externalDocs: - description: 3GPP TS 28.541; 5G NRM, 5GC NRM - url: http://www.3gpp.org/ftp/Specs/archive/28_series/28.541/ -paths: {} -components: - schemas: - -#-------- Definition of types----------------------------------------------------- - - AmfIdentifier: - type: object - description: 'AmfIdentifier comprise of amfRegionId, amfSetId and amfPointer' - properties: - amfRegionId: - $ref: '#/components/schemas/AmfRegionId' - amfSetId: - $ref: '#/components/schemas/AmfSetId' - amfPointer: - $ref: '#/components/schemas/AmfPointer' - AmfRegionId: - type: integer - description: AmfRegionId is defined in TS 23.003 - maximum: 255 - AmfSetId: - type: string - description: AmfSetId is defined in TS 23.003 - maximum: 1023 - AmfPointer: - type: integer - description: AmfPointer is defined in TS 23.003 - maximum: 63 - IpEndPoint: - type: object - properties: - ipv4Address: - $ref: 'genericNrm.yaml#/components/schemas/Ipv4Addr' - ipv6Address: - $ref: 'genericNrm.yaml#/components/schemas/Ipv6Addr' - ipv6Prefix: - $ref: 'genericNrm.yaml#/components/schemas/Ipv6Prefix' - transport: - $ref: 'genericNrm.yaml#/components/schemas/TransportProtocol' - port: - type: integer - NFProfileList: - type: array - description: List of NF profile - items: - $ref: '#/components/schemas/NFProfile' - NFProfile: - type: object - description: 'NF profile stored in NRF, defined in TS 29.510' - properties: - nFInstanceId: - type: string - description: uuid of NF instance - nFType: - $ref: 'genericNrm.yaml#/components/schemas/NFType' - nFStatus: - $ref: '#/components/schemas/NFStatus' - plmn: - $ref: 'nrNrm.yaml#/components/schemas/PlmnId' - sNssais: - $ref: 'nrNrm.yaml#/components/schemas/Snssai' - fqdn: - $ref: 'genericNrm.yaml#/components/schemas/Fqdn' - interPlmnFqdn: - $ref: 'genericNrm.yaml#/components/schemas/Fqdn' - nfServices: - type: array - items: - $ref: '#/components/schemas/NFService' - NFService: - type: object - description: NF Service is defined in TS 29.510 - properties: - serviceInstanceId: - type: string - serviceName: - type: string - version: - type: string - schema: - type: string - fqdn: - $ref: 'genericNrm.yaml#/components/schemas/Fqdn' - interPlmnFqdn: - $ref: 'genericNrm.yaml#/components/schemas/Fqdn' - ipEndPoints: - type: array - items: - $ref: '#/components/schemas/IpEndPoint' - apiPrfix: - type: string - allowedPlmns: - $ref: 'nrNrm.yaml#/components/schemas/PlmnId' - allowedNfTypes: - type: array - items: - $ref: 'genericNrm.yaml#/components/schemas/NFType' - allowedNssais: - type: array - items: - $ref: 'nrNrm.yaml#/components/schemas/Snssai' - NFStatus: - type: string - description: any of enumrated value - enum: - - REGISTERED - - SUSPENDED - CNSIIdList: - type: array - items: - $ref: '#/components/schemas/CNSIId' - CNSIId: - type: string - description: CNSI Id is defined in TS 29.531, only for Core Network - TACList: - type: array - items: - $ref: 'nrNrm.yaml#/components/schemas/NrTac' - WeightFactor: - type: integer - UdmInfo: - type: object - properties: - nFSrvGroupId: - type: string - AusfInfo: - type: object - properties: - nFSrvGroupId: - type: string - UpfInfo: - type: object - properties: - smfServingAreas: - type: string - AmfInfo: - type: object - properties: - priority: - type: integer - SupportedDataSetId: - type: string - description: any of enumrated value - enum: - - SUBSCRIPTION - - POLICY - - EXPOSURE - - APPLICATION - Udrinfo: - type: object - properties: - supportedDataSetIds: - type: array - items: - $ref: '#/components/schemas/SupportedDataSetId' - nFSrvGroupId: - type: string - NFInfo: - oneOf: - - $ref: '#/components/schemas/UdmInfo' - - $ref: '#/components/schemas/AusfInfo' - - $ref: '#/components/schemas/UpfInfo' - - $ref: '#/components/schemas/AmfInfo' - - $ref: '#/components/schemas/Udrinfo' - ManagedNFProfile: - type: object - properties: - nfInstanceID: - type: string - nfType: - $ref: 'genericNrm.yaml#/components/schemas/NFType' - authzInfo: - type: string - hostAddr: - $ref: 'genericNrm.yaml#/components/schemas/HostAddr' - locality: - type: string - nFInfo: - $ref: '#/components/schemas/NFInfo' - capacity: - type: integer - SEPPType: - type: string - description: any of enumrated value - enum: - - CSEPP - - PSEPP - SupportedFunc: - type: object - properties: - function: - type: string - policy: - type: string - SupportedFuncList: - type: array - items: - $ref: '#/components/schemas/SupportedFunc' - CommModelType: - type: string - description: any of enumrated value - enum: - - DIRECT_COMMUNICATION_WO_NRF - - DIRECT_COMMUNICATION_WITH_NRF - - INDIRECT_COMMUNICATION_WO_DEDICATED_DISCOVERY - - INDIRECT_COMMUNICATION_WITH_DEDICATED_DISCOVERY - CommModel: - type: object - properties: - groupId: - type: integer - commModelType: - $ref: '#/components/schemas/CommModelType' - targetNFServiceList: - $ref: 'genericNrm.yaml#/components/schemas/DnList' - commModelConfiguration: - type: string - CommModelList: - type: array - items: - $ref: '#/components/schemas/CommModel' - CapabilityList: - type: array - items: - type: string - FiveQiDscpMapping: - type: object - properties: - fiveQIValues: - type: array - items: - type: integer - dscp: - type: integer - NetworkSliceInfo: - type: object - properties: - sNSSAI: - $ref: 'nrNrm.yaml#/components/schemas/Snssai' - cNSIId: - $ref: '#/components/schemas/CNSIId' - networkSliceRef: - $ref: 'genericNrm.yaml#/components/schemas/DnList' - NetworkSliceInfoList: - type: array - items: - $ref: '#/components/schemas/NetworkSliceInfo' - - - PacketErrorRate: - type: object - properties: - scalar: - type: integer - exponent: - type: integer - - - - GtpUPathDelayThresholdsType: - type: object - properties: - n3AveragePacketDelayThreshold: - type: integer - n3MinPacketDelayThreshold: - type: integer - n3MaxPacketDelayThreshold: - type: integer - n9AveragePacketDelayThreshold: - type: integer - n9MinPacketDelayThreshold: - type: integer - n9MaxPacketDelayThreshold: - type: integer - QFPacketDelayThresholdsType: - type: object - properties: - thresholdDl: - type: integer - thresholdUl: - type: integer - thresholdRtt: - type: integer - - QosData: - type: object - properties: - qosId: - type: string - fiveQIValue: - type: integer - maxbrUl: - $ref: 'https://forge.3gpp.org/rep/all/5G_APIs/raw/REL-16/TS29571_CommonData.yaml#/components/schemas/BitRateRm' - maxbrDl: - $ref: 'https://forge.3gpp.org/rep/all/5G_APIs/raw/REL-16/TS29571_CommonData.yaml#/components/schemas/BitRateRm' - gbrUl: - $ref: 'https://forge.3gpp.org/rep/all/5G_APIs/raw/REL-16/TS29571_CommonData.yaml#/components/schemas/BitRateRm' - gbrDl: - $ref: 'https://forge.3gpp.org/rep/all/5G_APIs/raw/REL-16/TS29571_CommonData.yaml#/components/schemas/BitRateRm' - arp: - $ref: 'https://forge.3gpp.org/rep/all/5G_APIs/raw/REL-16/TS29571_CommonData.yaml#/components/schemas/Arp' - qosNotificationControl: - type: boolean - reflectiveQos: - type: boolean - sharingKeyDl: - type: string - sharingKeyUl: - type: string - maxPacketLossRateDl: - $ref: 'https://forge.3gpp.org/rep/all/5G_APIs/raw/REL-16/TS29571_CommonData.yaml#/components/schemas/PacketLossRateRm' - maxPacketLossRateUl: - $ref: 'https://forge.3gpp.org/rep/all/5G_APIs/raw/REL-16/TS29571_CommonData.yaml#/components/schemas/PacketLossRateRm' - extMaxDataBurstVol: - $ref: 'https://forge.3gpp.org/rep/all/5G_APIs/raw/REL-16/TS29571_CommonData.yaml#/components/schemas/ExtMaxDataBurstVolRm' - - QosDataList: - type: array - items: - $ref: '#/components/schemas/QosData' - - SteeringMode: - type: object - properties: - steerModeValue: - $ref: 'https://forge.3gpp.org/rep/all/5G_APIs/raw/REL-16/TS29512_Npcf_SMPolicyControl.yaml#/components/schemas/SteerModeValue' - active: - $ref: 'https://forge.3gpp.org/rep/all/5G_APIs/raw/REL-16/TS29571_CommonData.yaml#/components/schemas/AccessType' - standby: - $ref: 'https://forge.3gpp.org/rep/all/5G_APIs/raw/REL-16/TS29571_CommonData.yaml#/components/schemas/AccessTypeRm' - threeGLoad: - $ref: 'https://forge.3gpp.org/rep/all/5G_APIs/raw/REL-16/TS29571_CommonData.yaml#/components/schemas/Uinteger' - prioAcc: - $ref: 'https://forge.3gpp.org/rep/all/5G_APIs/raw/REL-16/TS29571_CommonData.yaml#/components/schemas/AccessType' - - TrafficControlData: - type: object - properties: - tcId: - type: string - flowStatus: - $ref: 'https://forge.3gpp.org/rep/all/5G_APIs/raw/REL-16/TS29514_Npcf_PolicyAuthorization.yaml#/components/schemas/FlowStatus' - redirectInfo: - $ref: 'https://forge.3gpp.org/rep/all/5G_APIs/raw/REL-16/TS29512_Npcf_SMPolicyControl.yaml#/components/schemas/RedirectInformation' - addRedirectInfo: - type: array - items: - $ref: 'https://forge.3gpp.org/rep/all/5G_APIs/raw/REL-16/TS29512_Npcf_SMPolicyControl.yaml#/components/schemas/RedirectInformation' - minItems: 1 - muteNotif: - type: boolean - trafficSteeringPolIdDl: - type: string - nullable: true - trafficSteeringPolIdUl: - type: string - nullable: true - routeToLocs: - type: array - items: - $ref: 'https://forge.3gpp.org/rep/all/5G_APIs/raw/REL-16/TS29571_CommonData.yaml#/components/schemas/RouteToLocation' - traffCorreInd: - type: boolean - upPathChgEvent: - $ref: 'https://forge.3gpp.org/rep/all/5G_APIs/raw/REL-16/TS29512_Npcf_SMPolicyControl.yaml#/components/schemas/UpPathChgEvent' - steerFun: - $ref: 'https://forge.3gpp.org/rep/all/5G_APIs/raw/REL-16/TS29512_Npcf_SMPolicyControl.yaml#/components/schemas/SteeringFunctionality' - steerModeDl: - $ref: '#/components/schemas/SteeringMode' - steerModeUl: - $ref: '#/components/schemas/SteeringMode' - mulAccCtrl: - $ref: 'https://forge.3gpp.org/rep/all/5G_APIs/raw/REL-16/TS29512_Npcf_SMPolicyControl.yaml#/components/schemas/MulticastAccessControl' - - TrafficControlDataList: - type: array - items: - $ref: '#/components/schemas/TrafficControlData' - - PccRule: - type: object - properties: - pccRuleId: - type: string - description: Univocally identifies the PCC rule within a PDU session. - flowInfoList: - type: array - items: - $ref: 'https://forge.3gpp.org/rep/all/5G_APIs/raw/REL-16/TS29512_Npcf_SMPolicyControl.yaml#/components/schemas/FlowInformation' - applicationId: - type: string - appDescriptor: - $ref: 'https://forge.3gpp.org/rep/all/5G_APIs/raw/REL-16/TS29512_Npcf_SMPolicyControl.yaml#/components/schemas/ApplicationDescriptor' - contentVersion: - $ref: 'https://forge.3gpp.org/rep/all/5G_APIs/raw/REL-16/TS29514_Npcf_PolicyAuthorization.yaml#/components/schemas/ContentVersion' - precedence: - $ref: 'https://forge.3gpp.org/rep/all/5G_APIs/raw/REL-16/TS29571_CommonData.yaml#/components/schemas/Uinteger' - afSigProtocol: - $ref: 'https://forge.3gpp.org/rep/all/5G_APIs/raw/REL-16/TS29512_Npcf_SMPolicyControl.yaml#/components/schemas/AfSigProtocol' - isAppRelocatable: - type: boolean - isUeAddrPreserved: - type: boolean - qosData: - type: array - items: - $ref: '#/components/schemas/QosDataList' - altQosParams: - type: array - items: - $ref: '#/components/schemas/QosDataList' - trafficControlData: - type: array - items: - $ref: '#/components/schemas/TrafficControlDataList' - conditionData: - $ref: 'https://forge.3gpp.org/rep/all/5G_APIs/raw/REL-16/TS29512_Npcf_SMPolicyControl.yaml#/components/schemas/ConditionData' - tscaiInputDl: - $ref: 'https://forge.3gpp.org/rep/all/5G_APIs/raw/REL-16/TS29514_Npcf_PolicyAuthorization.yaml#/components/schemas/TscaiInputContainer' - tscaiInputUl: - $ref: 'https://forge.3gpp.org/rep/all/5G_APIs/raw/REL-16/TS29514_Npcf_PolicyAuthorization.yaml#/components/schemas/TscaiInputContainer' - - SnssaiInfo: - type: object - properties: - plmnInfo: - $ref: 'nrNrm.yaml#/components/schemas/PlmnInfo' - administrativeState: - $ref: 'genericNrm.yaml#/components/schemas/AdministrativeState' - - NsacfInfoSnssai: - type: object - properties: - SnssaiInfo: - $ref: '#/components/schemas/SnssaiInfo' - isSubjectToNsac: - type: boolean - maxNumberofUEs: - type: integer - eACMode: - type: string - enum: - - INACTIVE - - ACTIVE - activeEacThreshhold: - type: integer - deactiveEacThreshhold: - type: integer - numberofUEs: - type: integer - uEIdList: - type: array - items: - type: string - - -#-------- Definition of concrete IOCs -------------------------------------------- - - SubNetwork-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/SubNetwork-Attr' - - $ref: 'genericNrm.yaml#/components/schemas/SubNetwork-ncO' - - type: object - properties: - SubNetwork: - $ref: '#/components/schemas/SubNetwork-Multiple' - ManagedElement: - $ref: '#/components/schemas/ManagedElement-Multiple' - ExternalAmfFunction: - $ref: '#/components/schemas/ExternalAmfFunction-Multiple' - ExternalNrfFunction: - $ref: '#/components/schemas/ExternalNrfFunction-Multiple' - ExternalNssfFunction: - $ref: '#/components/schemas/ExternalNssfFunction-Multiple' - AmfSet: - $ref: '#/components/schemas/AmfSet-Multiple' - AmfRegion: - $ref: '#/components/schemas/AmfRegion-Multiple' - Configurable5QISet: - $ref: '#/components/schemas/Configurable5QISet-Multiple' - Dynamic5QISet: - $ref: '#/components/schemas/Dynamic5QISet-Multiple' - - ManagedElement-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/ManagedElement-Attr' - - $ref: 'genericNrm.yaml#/components/schemas/ManagedElement-ncO' - - type: object - properties: - AmfFunction: - $ref: '#/components/schemas/AmfFunction-Multiple' - SmfFunction: - $ref: '#/components/schemas/SmfFunction-Multiple' - UpfFunction: - $ref: '#/components/schemas/UpfFunction-Multiple' - N3iwfFunction: - $ref: '#/components/schemas/N3iwfFunction-Multiple' - PcfFunction: - $ref: '#/components/schemas/PcfFunction-Multiple' - AusfFunction: - $ref: '#/components/schemas/AusfFunction-Multiple' - UdmFunction: - $ref: '#/components/schemas/UdmFunction-Multiple' - UdrFunction: - $ref: '#/components/schemas/UdrFunction-Multiple' - UdsfFunction: - $ref: '#/components/schemas/UdsfFunction-Multiple' - NrfFunction: - $ref: '#/components/schemas/NrfFunction-Multiple' - NssfFunction: - $ref: '#/components/schemas/NssfFunction-Multiple' - SmsfFunction: - $ref: '#/components/schemas/SmsfFunction-Multiple' - LmfFunction: - $ref: '#/components/schemas/LmfFunction-Multiple' - NgeirFunction: - $ref: '#/components/schemas/NgeirFunction-Multiple' - SeppFunction: - $ref: '#/components/schemas/SeppFunction-Multiple' - NwdafFunction: - $ref: '#/components/schemas/NwdafFunction-Multiple' - ScpFunction: - $ref: '#/components/schemas/ScpFunction-Multiple' - NefFunction: - $ref: '#/components/schemas/NefFunction-Multiple' - Configurable5QISet: - $ref: '#/components/schemas/Configurable5QISet-Multiple' - Dynamic5QISet: - $ref: '#/components/schemas/Dynamic5QISet-Multiple' - - AmfFunction-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' - - type: object - properties: - plmnIdList: - $ref: 'nrNrm.yaml#/components/schemas/PlmnIdList' - amfIdentifier: - $ref: '#/components/schemas/AmfIdentifier' - sBIFqdn: - type: string - weightFactor: - $ref: '#/components/schemas/WeightFactor' - snssaiList: - $ref: 'nrNrm.yaml#/components/schemas/SnssaiList' - amfSet: - $ref: 'genericNrm.yaml#/components/schemas/Dn' - managedNFProfile: - $ref: '#/components/schemas/ManagedNFProfile' - commModelList: - $ref: '#/components/schemas/CommModelList' - - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' - - type: object - properties: - EP_N2: - $ref: '#/components/schemas/EP_N2-Multiple' - EP_N8: - $ref: '#/components/schemas/EP_N8-Multiple' - EP_N11: - $ref: '#/components/schemas/EP_N11-Multiple' - EP_N12: - $ref: '#/components/schemas/EP_N12-Multiple' - EP_N14: - $ref: '#/components/schemas/EP_N14-Multiple' - EP_N15: - $ref: '#/components/schemas/EP_N15-Multiple' - EP_N17: - $ref: '#/components/schemas/EP_N17-Multiple' - EP_N20: - $ref: '#/components/schemas/EP_N20-Multiple' - EP_N22: - $ref: '#/components/schemas/EP_N22-Multiple' - EP_N26: - $ref: '#/components/schemas/EP_N26-Multiple' - EP_NLS: - $ref: '#/components/schemas/EP_NLS-Multiple' - EP_NLG: - $ref: '#/components/schemas/EP_NLG-Multiple' - AmfSet-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' - - type: object - properties: - plmnIdList: - $ref: 'nrNrm.yaml#/components/schemas/PlmnIdList' - nRTACList: - $ref: '#/components/schemas/TACList' - amfSetId: - $ref: '#/components/schemas/AmfSetId' - snssaiList: - $ref: 'nrNrm.yaml#/components/schemas/SnssaiList' - AmfRegion-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' - - type: object - properties: - plmnIdList: - $ref: 'nrNrm.yaml#/components/schemas/PlmnIdList' - nRTACList: - $ref: '#/components/schemas/TACList' - amfRegionId: - $ref: '#/components/schemas/AmfRegionId' - snssaiList: - $ref: 'nrNrm.yaml#/components/schemas/SnssaiList' - SmfFunction-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' - - type: object - properties: - plmnIdList: - $ref: 'nrNrm.yaml#/components/schemas/PlmnIdList' - nRTACList: - $ref: '#/components/schemas/TACList' - sBIFqdn: - type: string - snssaiList: - $ref: 'nrNrm.yaml#/components/schemas/SnssaiList' - managedNFProfile: - $ref: '#/components/schemas/ManagedNFProfile' - commModelList: - $ref: '#/components/schemas/CommModelList' - configurable5QISetRef: - $ref: 'genericNrm.yaml#/components/schemas/Dn' - dynamic5QISetRef: - $ref: 'genericNrm.yaml#/components/schemas/Dn' - - - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' - - type: object - properties: - EP_N4: - $ref: '#/components/schemas/EP_N4-Multiple' - EP_N7: - $ref: '#/components/schemas/EP_N7-Multiple' - EP_N10: - $ref: '#/components/schemas/EP_N10-Multiple' - EP_N11: - $ref: '#/components/schemas/EP_N11-Multiple' - EP_N16: - $ref: '#/components/schemas/EP_N16-Multiple' - EP_S5C: - $ref: '#/components/schemas/EP_S5C-Multiple' - FiveQiDscpMappingSet: - $ref: '#/components/schemas/FiveQiDscpMappingSet-Single' - GtpUPathQoSMonitoringControl: - $ref: '#/components/schemas/GtpUPathQoSMonitoringControl-Single' - QFQoSMonitoringControl: - $ref: '#/components/schemas/QFQoSMonitoringControl-Single' - PredefinedPccRuleSet: - $ref: '#/components/schemas/PredefinedPccRuleSet-Single' - - UpfFunction-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' - - type: object - properties: - plmnIdList: - $ref: 'nrNrm.yaml#/components/schemas/PlmnIdList' - nRTACList: - $ref: '#/components/schemas/TACList' - snssaiList: - $ref: 'nrNrm.yaml#/components/schemas/SnssaiList' - managedNFProfile: - $ref: '#/components/schemas/ManagedNFProfile' - commModelList: - $ref: '#/components/schemas/CommModelList' - - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' - - type: object - properties: - EP_N3: - $ref: '#/components/schemas/EP_N3-Multiple' - EP_N4: - $ref: '#/components/schemas/EP_N4-Multiple' - EP_N6: - $ref: '#/components/schemas/EP_N6-Multiple' - EP_N9: - $ref: '#/components/schemas/EP_N9-Multiple' - EP_S5U: - $ref: '#/components/schemas/EP_S5U-Multiple' - N3iwfFunction-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' - - type: object - properties: - plmnIdList: - $ref: 'nrNrm.yaml#/components/schemas/PlmnIdList' - commModelList: - $ref: '#/components/schemas/CommModelList' - - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' - - type: object - properties: - EP_N3: - $ref: '#/components/schemas/EP_N3-Multiple' - EP_N4: - $ref: '#/components/schemas/EP_N4-Multiple' - PcfFunction-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' - - type: object - properties: - plmnIdList: - $ref: 'nrNrm.yaml#/components/schemas/PlmnIdList' - sBIFqdn: - type: string - snssaiList: - $ref: 'nrNrm.yaml#/components/schemas/SnssaiList' - managedNFProfile: - $ref: '#/components/schemas/ManagedNFProfile' - commModelList: - $ref: '#/components/schemas/CommModelList' - configurable5QISetRef: - $ref: 'genericNrm.yaml#/components/schemas/Dn' - dynamic5QISetRef: - $ref: 'genericNrm.yaml#/components/schemas/Dn' - - - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' - - type: object - properties: - EP_N5: - $ref: '#/components/schemas/EP_N5-Multiple' - EP_N7: - $ref: '#/components/schemas/EP_N7-Multiple' - EP_N15: - $ref: '#/components/schemas/EP_N15-Multiple' - EP_N16: - $ref: '#/components/schemas/EP_N16-Multiple' - EP_Rx: - $ref: '#/components/schemas/EP_Rx-Multiple' - PredefinedPccRuleSet: - $ref: '#/components/schemas/PredefinedPccRuleSet-Single' - - AusfFunction-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' - - type: object - properties: - plmnIdList: - $ref: 'nrNrm.yaml#/components/schemas/PlmnIdList' - sBIFqdn: - type: string - snssaiList: - $ref: 'nrNrm.yaml#/components/schemas/SnssaiList' - managedNFProfile: - $ref: '#/components/schemas/ManagedNFProfile' - commModelList: - $ref: '#/components/schemas/CommModelList' - - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' - - type: object - properties: - EP_N12: - $ref: '#/components/schemas/EP_N12-Multiple' - EP_N13: - $ref: '#/components/schemas/EP_N13-Multiple' - UdmFunction-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' - - type: object - properties: - plmnIdList: - $ref: 'nrNrm.yaml#/components/schemas/PlmnIdList' - sBIFqdn: - type: string - snssaiList: - $ref: 'nrNrm.yaml#/components/schemas/SnssaiList' - managedNFProfile: - $ref: '#/components/schemas/ManagedNFProfile' - commModelList: - $ref: '#/components/schemas/CommModelList' - - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' - - type: object - properties: - EP_N8: - $ref: '#/components/schemas/EP_N8-Multiple' - EP_N10: - $ref: '#/components/schemas/EP_N10-Multiple' - EP_N13: - $ref: '#/components/schemas/EP_N13-Multiple' - UdrFunction-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' - - type: object - properties: - plmnIdList: - $ref: 'nrNrm.yaml#/components/schemas/PlmnIdList' - sBIFqdn: - type: string - snssaiList: - $ref: 'nrNrm.yaml#/components/schemas/SnssaiList' - managedNFProfile: - $ref: '#/components/schemas/ManagedNFProfile' - UdsfFunction-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' - - type: object - properties: - plmnIdList: - $ref: 'nrNrm.yaml#/components/schemas/PlmnIdList' - sBIFqdn: - type: string - snssaiList: - $ref: 'nrNrm.yaml#/components/schemas/SnssaiList' - managedNFProfile: - $ref: '#/components/schemas/ManagedNFProfile' - NrfFunction-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' - - type: object - properties: - plmnIdList: - $ref: 'nrNrm.yaml#/components/schemas/PlmnIdList' - sBIFqdn: - type: string - cNSIIdList: - $ref: '#/components/schemas/CNSIIdList' - nFProfileList: - $ref: '#/components/schemas/NFProfileList' - snssaiList: - $ref: 'nrNrm.yaml#/components/schemas/SnssaiList' - - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' - - type: object - properties: - EP_N27: - $ref: '#/components/schemas/EP_N27-Multiple' - NssfFunction-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' - - type: object - properties: - plmnIdList: - $ref: 'nrNrm.yaml#/components/schemas/PlmnIdList' - sBIFqdn: - type: string - cNSIIdList: - $ref: '#/components/schemas/CNSIIdList' - nFProfileList: - $ref: '#/components/schemas/NFProfileList' - snssaiList: - $ref: 'nrNrm.yaml#/components/schemas/SnssaiList' - commModelList: - $ref: '#/components/schemas/CommModelList' - - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' - - type: object - properties: - EP_N22: - $ref: '#/components/schemas/EP_N22-Multiple' - EP_N31: - $ref: '#/components/schemas/EP_N31-Multiple' - SmsfFunction-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' - - type: object - properties: - plmnIdList: - $ref: 'nrNrm.yaml#/components/schemas/PlmnIdList' - sBIFqdn: - type: string - managedNFProfile: - $ref: '#/components/schemas/ManagedNFProfile' - commModelList: - $ref: '#/components/schemas/CommModelList' - - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' - - type: object - properties: - EP_N20: - $ref: '#/components/schemas/EP_N20-Multiple' - EP_N21: - $ref: '#/components/schemas/EP_N21-Multiple' - EP_MAP_SMSC: - $ref: '#/components/schemas/EP_MAP_SMSC-Multiple' - LmfFunction-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' - - type: object - properties: - plmnIdList: - $ref: 'nrNrm.yaml#/components/schemas/PlmnIdList' - managedNFProfile: - $ref: '#/components/schemas/ManagedNFProfile' - commModelList: - $ref: '#/components/schemas/CommModelList' - - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' - - type: object - properties: - EP_NLS: - $ref: '#/components/schemas/EP_NLS-Multiple' - NgeirFunction-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' - - type: object - properties: - plmnIdList: - $ref: 'nrNrm.yaml#/components/schemas/PlmnIdList' - sBIFqdn: - type: string - snssaiList: - $ref: 'nrNrm.yaml#/components/schemas/SnssaiList' - managedNFProfile: - $ref: '#/components/schemas/ManagedNFProfile' - commModelList: - $ref: '#/components/schemas/CommModelList' - - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' - - type: object - properties: - EP_N17: - $ref: '#/components/schemas/EP_N17-Multiple' - SeppFunction-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' - - type: object - properties: - plmnId: - $ref: 'nrNrm.yaml#/components/schemas/PlmnId' - sEPPType: - $ref: '#/components/schemas/SEPPType' - sEPPId: - type: integer - fqdn: - $ref: 'genericNrm.yaml#/components/schemas/Fqdn' - - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' - - type: object - properties: - EP_N32: - $ref: '#/components/schemas/EP_N32-Multiple' - NwdafFunction-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' - - type: object - properties: - plmnIdList: - $ref: 'nrNrm.yaml#/components/schemas/PlmnIdList' - sBIFqdn: - type: string - snssaiList: - $ref: 'nrNrm.yaml#/components/schemas/SnssaiList' - managedNFProfile: - $ref: '#/components/schemas/ManagedNFProfile' - commModelList: - $ref: '#/components/schemas/CommModelList' - networkSliceInfoList: - $ref: '#/components/schemas/NetworkSliceInfoList' - - ScpFunction-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' - - type: object - properties: - supportedFuncList: - $ref: '#/components/schemas/SupportedFuncList' - address: - $ref: 'genericNrm.yaml#/components/schemas/HostAddr' - - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' - NefFunction-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' - - type: object - properties: - sBIFqdn: - type: string - snssaiList: - $ref: 'nrNrm.yaml#/components/schemas/SnssaiList' - managedNFProfile: - $ref: '#/components/schemas/ManagedNFProfile' - capabilityList: - $ref: '#/components/schemas/CapabilityList' - isCAPIFSup: - type: boolean - - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' - - type: object - properties: - EP_N33: - $ref: '#/components/schemas/EP_N33-Multiple' - NsacfFunction-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' - - type: object - properties: - managedNFProfile: - $ref: '#/components/schemas/ManagedNFProfile' - nsacfInfoSnssai: - type: array - items: - $ref: '#/components/schemas/NsacfInfoSnssai' - - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' - - type: object - properties: - EP_N60: - $ref: '#/components/schemas/EP_N60-Multiple' - - DDNMFFunction-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' - - type: object - properties: - plmnId: - $ref: 'nrNrm.yaml#/components/schemas/PlmnId' - sBIFqdn: - type: string - managedNFProfile: - $ref: '#/components/schemas/ManagedNFProfile' - commModelList: - $ref: '#/components/schemas/CommModelList' - - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' - - type: object - properties: - EP_N64: - $ref: '#/components/schemas/EP_N64-Multiple' - EP_N65: - $ref: '#/components/schemas/EP_N65-Multiple' - EP_N66: - $ref: '#/components/schemas/EP_N66-Multiple' - - ExternalAmfFunction-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' - - type: object - properties: - plmnIdList: - $ref: 'nrNrm.yaml#/components/schemas/PlmnIdList' - amfIdentifier: - $ref: '#/components/schemas/AmfIdentifier' - ExternalNrfFunction-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' - - type: object - properties: - plmnIdList: - $ref: 'nrNrm.yaml#/components/schemas/PlmnIdList' - ExternalNssfFunction-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' - - type: object - properties: - plmnIdList: - $ref: 'nrNrm.yaml#/components/schemas/PlmnIdList' - ExternalSeppFunction-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' - - type: object - properties: - plmnId: - $ref: 'nrNrm.yaml#/components/schemas/PlmnId' - sEPPId: - type: integer - fqdn: - $ref: 'genericNrm.yaml#/components/schemas/Fqdn' - - - EP_N2-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' - - type: object - properties: - localAddress: - $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' - remoteAddress: - $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' - EP_N3-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' - - type: object - properties: - localAddress: - $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' - remoteAddress: - $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' - epTransportRefs: - $ref: 'genericNrm.yaml#/components/schemas/DnList' - EP_N4-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' - - type: object - properties: - localAddress: - $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' - remoteAddress: - $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' - EP_N5-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' - - type: object - properties: - localAddress: - $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' - remoteAddress: - $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' - EP_N6-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' - - type: object - properties: - localAddress: - $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' - remoteAddress: - $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' - EP_N7-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' - - type: object - properties: - localAddress: - $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' - remoteAddress: - $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' - EP_N8-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' - - type: object - properties: - localAddress: - $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' - remoteAddress: - $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' - EP_N9-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' - - type: object - properties: - localAddress: - $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' - remoteAddress: - $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' - EP_N10-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' - - type: object - properties: - localAddress: - $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' - remoteAddress: - $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' - EP_N11-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' - - type: object - properties: - localAddress: - $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' - remoteAddress: - $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' - EP_N12-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' - - type: object - properties: - localAddress: - $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' - remoteAddress: - $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' - EP_N13-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' - - type: object - properties: - localAddress: - $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' - remoteAddress: - $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' - EP_N14-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' - - type: object - properties: - localAddress: - $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' - remoteAddress: - $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' - EP_N15-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' - - type: object - properties: - localAddress: - $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' - remoteAddress: - $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' - EP_N16-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' - - type: object - properties: - localAddress: - $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' - remoteAddress: - $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' - EP_N17-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' - - type: object - properties: - localAddress: - $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' - remoteAddress: - $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' - - EP_N20-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' - - type: object - properties: - localAddress: - $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' - remoteAddress: - $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' - - EP_N21-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' - - type: object - properties: - localAddress: - $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' - remoteAddress: - $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' - EP_N22-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' - - type: object - properties: - localAddress: - $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' - remoteAddress: - $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' - - EP_N26-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' - - type: object - properties: - localAddress: - $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' - remoteAddress: - $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' - EP_N27-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' - - type: object - properties: - localAddress: - $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' - remoteAddress: - $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' - - - EP_N31-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' - - type: object - properties: - localAddress: - $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' - remoteAddress: - $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' - EP_N32-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' - - type: object - properties: - remotePlmnId: - $ref: 'nrNrm.yaml#/components/schemas/PlmnId' - remoteSeppAddress: - $ref: 'genericNrm.yaml#/components/schemas/HostAddr' - remoteSeppId: - type: integer - n32cParas: - type: string - n32fPolicy: - type: string - withIPX: - type: boolean - EP_N33-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' - - type: object - properties: - localAddress: - $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' - remoteAddress: - $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' - EP_S5C-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' - - type: object - properties: - localAddress: - $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' - remoteAddress: - $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' - EP_S5U-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' - - type: object - properties: - localAddress: - $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' - remoteAddress: - $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' - EP_Rx-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' - - type: object - properties: - localAddress: - $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' - remoteAddress: - $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' - EP_MAP_SMSC-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' - - type: object - properties: - localAddress: - $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' - remoteAddress: - $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' - EP_NLS-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' - - type: object - properties: - localAddress: - $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' - remoteAddress: - $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' - EP_NLG-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' - - type: object - properties: - localAddress: - $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' - remoteAddress: - $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' - - EP_N60-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' - - type: object - properties: - localAddress: - $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' - remoteAddress: - $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' - EP_N64-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' - - type: object - properties: - localAddress: - $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' - remoteAddress: - $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' - EP_N65-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' - - type: object - properties: - localAddress: - $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' - remoteAddress: - $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' - EP_N66-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' - - type: object - properties: - localAddress: - $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' - remoteAddress: - $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' - - FiveQiDscpMappingSet-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top' - - type: object - properties: - attributes: - allOf: - - type: object - properties: - FiveQiDscpMappingList: - type: array - items: - $ref: '#/components/schemas/FiveQiDscpMapping' - - FiveQICharacteristics-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' - - type: object - properties: - fiveQIValue: - type: integer - resourceType: - type: string - enum: - - GBR - - NonGBR - priorityLevel: - type: integer - packetDelayBudget: - type: integer - packetErrorRate: - $ref: '#/components/schemas/PacketErrorRate' - averagingWindow: - type: integer - maximumDataBurstVolume: - type: integer - FiveQICharacteristics-Multiple: - type: array - items: - $ref: '#/components/schemas/FiveQICharacteristics-Single' - Configurable5QISet-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top' - - type: object - properties: - attributes: - allOf: - - type: object - properties: - configurable5QIs: - type: array - items: - $ref: '#/components/schemas/FiveQICharacteristics-Multiple' - - Dynamic5QISet-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top' - - type: object - properties: - attributes: - allOf: - - type: object - properties: - dynamic5QIs: - type: array - items: - $ref: '#/components/schemas/FiveQICharacteristics-Multiple' - - GtpUPathQoSMonitoringControl-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top' - - type: object - properties: - attributes: - allOf: - - type: object - properties: - gtpUPathQoSMonitoringState: - type: string - enum: - - ENABLED - - DISABLED - gtpUPathMonitoredSNSSAIs: - type: array - items: - $ref: 'nrNrm.yaml#/components/schemas/Snssai' - monitoredDSCPs: - type: array - items: - type: integer - minimum: 0 - maximum: 255 - isEventTriggeredGtpUPathMonitoringSupported: - type: boolean - isPeriodicGtpUMonitoringSupported: - type: boolean - isImmediateGtpUMonitoringSupported: - type: boolean - gtpUPathDelayThresholds: - $ref: '#/components/schemas/GtpUPathDelayThresholdsType' - gtpUPathMinimumWaitTime: - type: integer - gtpUPathMeasurementPeriod: - type: integer - - QFQoSMonitoringControl-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top' - - type: object - properties: - attributes: - allOf: - - type: object - properties: - qFQoSMonitoringState: - type: string - enum: - - ENABLED - - DISABLED - qFMonitoredSNSSAIs: - type: array - items: - $ref: 'nrNrm.yaml#/components/schemas/Snssai' - qFMonitored5QIs: - type: array - items: - type: integer - minimum: 0 - maximum: 255 - isEventTriggeredQFMonitoringSupported: - type: boolean - isPeriodicQFMonitoringSupported: - type: boolean - isSessionReleasedQFMonitoringSupported: - type: boolean - qFPacketDelayThresholds: - $ref: '#/components/schemas/QFPacketDelayThresholdsType' - qFMinimumWaitTime: - type: integer - qFMeasurementPeriod: - type: integer - - PredefinedPccRuleSet-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top' - - type: object - properties: - attributes: - allOf: - - type: object - properties: - predefinedPccRules: - type: array - items: - $ref: '#/components/schemas/PccRule' - -#-------- Definition of JSON arrays for name-contained IOCs ---------------------- - - SubNetwork-Multiple: - type: array - items: - $ref: '#/components/schemas/SubNetwork-Single' - ManagedElement-Multiple: - type: array - items: - $ref: '#/components/schemas/ManagedElement-Single' - AmfFunction-Multiple: - type: array - items: - $ref: '#/components/schemas/AmfFunction-Single' - SmfFunction-Multiple: - type: array - items: - $ref: '#/components/schemas/SmfFunction-Single' - UpfFunction-Multiple: - type: array - items: - $ref: '#/components/schemas/UpfFunction-Single' - N3iwfFunction-Multiple: - type: array - items: - $ref: '#/components/schemas/N3iwfFunction-Single' - PcfFunction-Multiple: - type: array - items: - $ref: '#/components/schemas/PcfFunction-Single' - AusfFunction-Multiple: - type: array - items: - $ref: '#/components/schemas/AusfFunction-Single' - UdmFunction-Multiple: - type: array - items: - $ref: '#/components/schemas/UdmFunction-Single' - UdrFunction-Multiple: - type: array - items: - $ref: '#/components/schemas/UdrFunction-Single' - UdsfFunction-Multiple: - type: array - items: - $ref: '#/components/schemas/UdsfFunction-Single' - NrfFunction-Multiple: - type: array - items: - $ref: '#/components/schemas/NrfFunction-Single' - NssfFunction-Multiple: - type: array - items: - $ref: '#/components/schemas/NssfFunction-Single' - SmsfFunction-Multiple: - type: array - items: - $ref: '#/components/schemas/SmsfFunction-Single' - LmfFunction-Multiple: - type: array - items: - $ref: '#/components/schemas/LmfFunction-Single' - NgeirFunction-Multiple: - type: array - items: - $ref: '#/components/schemas/NgeirFunction-Single' - SeppFunction-Multiple: - type: array - items: - $ref: '#/components/schemas/SeppFunction-Single' - NwdafFunction-Multiple: - type: array - items: - $ref: '#/components/schemas/NwdafFunction-Single' - ScpFunction-Multiple: - type: array - items: - $ref: '#/components/schemas/ScpFunction-Single' - NefFunction-Multiple: - type: array - items: - $ref: '#/components/schemas/NefFunction-Single' - - NsacfFunction-Multiple: - type: array - items: - $ref: '#/components/schemas/NsacfFunction-Single' - - ExternalAmfFunction-Multiple: - type: array - items: - $ref: '#/components/schemas/ExternalAmfFunction-Single' - ExternalNrfFunction-Multiple: - type: array - items: - $ref: '#/components/schemas/ExternalNrfFunction-Single' - ExternalNssfFunction-Multiple: - type: array - items: - $ref: '#/components/schemas/ExternalNssfFunction-Single' - ExternalSeppFunction-Nultiple: - type: array - items: - $ref: '#/components/schemas/ExternalSeppFunction-Single' - - AmfSet-Multiple: - type: array - items: - $ref: '#/components/schemas/AmfSet-Single' - AmfRegion-Multiple: - type: array - items: - $ref: '#/components/schemas/AmfRegion-Single' - - EP_N2-Multiple: - type: array - items: - $ref: '#/components/schemas/EP_N2-Single' - EP_N3-Multiple: - type: array - items: - $ref: '#/components/schemas/EP_N3-Single' - EP_N4-Multiple: - type: array - items: - $ref: '#/components/schemas/EP_N4-Single' - EP_N5-Multiple: - type: array - items: - $ref: '#/components/schemas/EP_N5-Single' - EP_N6-Multiple: - type: array - items: - $ref: '#/components/schemas/EP_N6-Single' - EP_N7-Multiple: - type: array - items: - $ref: '#/components/schemas/EP_N7-Single' - EP_N8-Multiple: - type: array - items: - $ref: '#/components/schemas/EP_N8-Single' - EP_N9-Multiple: - type: array - items: - $ref: '#/components/schemas/EP_N9-Single' - EP_N10-Multiple: - type: array - items: - $ref: '#/components/schemas/EP_N10-Single' - EP_N11-Multiple: - type: array - items: - $ref: '#/components/schemas/EP_N11-Single' - EP_N12-Multiple: - type: array - items: - $ref: '#/components/schemas/EP_N12-Single' - EP_N13-Multiple: - type: array - items: - $ref: '#/components/schemas/EP_N13-Single' - EP_N14-Multiple: - type: array - items: - $ref: '#/components/schemas/EP_N14-Single' - EP_N15-Multiple: - type: array - items: - $ref: '#/components/schemas/EP_N15-Single' - EP_N16-Multiple: - type: array - items: - $ref: '#/components/schemas/EP_N16-Single' - EP_N17-Multiple: - type: array - items: - $ref: '#/components/schemas/EP_N17-Single' - - EP_N20-Multiple: - type: array - items: - $ref: '#/components/schemas/EP_N20-Single' - EP_N21-Multiple: - type: array - items: - $ref: '#/components/schemas/EP_N21-Single' - EP_N22-Multiple: - type: array - items: - $ref: '#/components/schemas/EP_N22-Single' - - EP_N26-Multiple: - type: array - items: - $ref: '#/components/schemas/EP_N26-Single' - EP_N27-Multiple: - type: array - items: - $ref: '#/components/schemas/EP_N27-Single' - - EP_N31-Multiple: - type: array - items: - $ref: '#/components/schemas/EP_N31-Single' - EP_N32-Multiple: - type: array - items: - $ref: '#/components/schemas/EP_N32-Single' - EP_N33-Multiple: - type: array - items: - $ref: '#/components/schemas/EP_N33-Single' - EP_S5C-Multiple: - type: array - items: - $ref: '#/components/schemas/EP_S5C-Single' - EP_S5U-Multiple: - type: array - items: - $ref: '#/components/schemas/EP_S5U-Single' - EP_Rx-Multiple: - type: array - items: - $ref: '#/components/schemas/EP_Rx-Single' - EP_MAP_SMSC-Multiple: - type: array - items: - $ref: '#/components/schemas/EP_MAP_SMSC-Single' - EP_NLS-Multiple: - type: array - items: - $ref: '#/components/schemas/EP_NLS-Single' - EP_NLG-Multiple: - type: array - items: - $ref: '#/components/schemas/EP_NLG-Single' - EP_N60-Multiple: - type: array - items: - $ref: '#/components/schemas/EP_N60-Single' - EP_N64-Multiple: - type: array - items: - $ref: '#/components/schemas/EP_N64-Single' - EP_N65-Multiple: - type: array - items: - $ref: '#/components/schemas/EP_N65-Single' - EP_N66-Multiple: - type: array - items: - $ref: '#/components/schemas/EP_N66-Single' - Configurable5QISet-Multiple: - type: array - items: - $ref: '#/components/schemas/Configurable5QISet-Single' - Dynamic5QISet-Multiple: - type: array - items: - $ref: '#/components/schemas/Dynamic5QISet-Single' - - - -#------------ Definitions in TS 28.541 for TS 28.532 ----------------------------- - - resources-5gcNrm: - oneOf: - - $ref: '#/components/schemas/SubNetwork-Single' - - $ref: '#/components/schemas/ManagedElement-Single' - - $ref: '#/components/schemas/AmfFunction-Single' - - $ref: '#/components/schemas/SmfFunction-Single' - - $ref: '#/components/schemas/UpfFunction-Single' - - $ref: '#/components/schemas/N3iwfFunction-Single' - - $ref: '#/components/schemas/PcfFunction-Single' - - $ref: '#/components/schemas/AusfFunction-Single' - - $ref: '#/components/schemas/UdmFunction-Single' - - $ref: '#/components/schemas/UdrFunction-Single' - - $ref: '#/components/schemas/UdsfFunction-Single' - - $ref: '#/components/schemas/NrfFunction-Single' - - $ref: '#/components/schemas/NssfFunction-Single' - - $ref: '#/components/schemas/SmsfFunction-Single' - - $ref: '#/components/schemas/LmfFunction-Single' - - $ref: '#/components/schemas/NgeirFunction-Single' - - $ref: '#/components/schemas/SeppFunction-Single' - - $ref: '#/components/schemas/NwdafFunction-Single' - - $ref: '#/components/schemas/ScpFunction-Single' - - $ref: '#/components/schemas/NefFunction-Single' - - $ref: '#/components/schemas/NsacfFunction-Single' - - - $ref: '#/components/schemas/ExternalAmfFunction-Single' - - $ref: '#/components/schemas/ExternalNrfFunction-Single' - - $ref: '#/components/schemas/ExternalNssfFunction-Single' - - $ref: '#/components/schemas/ExternalSeppFunction-Single' - - - $ref: '#/components/schemas/AmfSet-Single' - - $ref: '#/components/schemas/AmfRegion-Single' - - $ref: '#/components/schemas/QFQoSMonitoringControl-Single' - - $ref: '#/components/schemas/GtpUPathQoSMonitoringControl-Single' - - - $ref: '#/components/schemas/EP_N2-Single' - - $ref: '#/components/schemas/EP_N3-Single' - - $ref: '#/components/schemas/EP_N4-Single' - - $ref: '#/components/schemas/EP_N5-Single' - - $ref: '#/components/schemas/EP_N6-Single' - - $ref: '#/components/schemas/EP_N7-Single' - - $ref: '#/components/schemas/EP_N8-Single' - - $ref: '#/components/schemas/EP_N9-Single' - - $ref: '#/components/schemas/EP_N10-Single' - - $ref: '#/components/schemas/EP_N11-Single' - - $ref: '#/components/schemas/EP_N12-Single' - - $ref: '#/components/schemas/EP_N13-Single' - - $ref: '#/components/schemas/EP_N14-Single' - - $ref: '#/components/schemas/EP_N15-Single' - - $ref: '#/components/schemas/EP_N16-Single' - - $ref: '#/components/schemas/EP_N17-Single' - - - $ref: '#/components/schemas/EP_N20-Single' - - $ref: '#/components/schemas/EP_N21-Single' - - $ref: '#/components/schemas/EP_N22-Single' - - - $ref: '#/components/schemas/EP_N26-Single' - - $ref: '#/components/schemas/EP_N27-Single' - - - $ref: '#/components/schemas/EP_N31-Single' - - $ref: '#/components/schemas/EP_N32-Single' - - $ref: '#/components/schemas/EP_N33-Single' - - $ref: '#/components/schemas/EP_N60-Single' - - - $ref: '#/components/schemas/EP_S5C-Single' - - $ref: '#/components/schemas/EP_S5U-Single' - - $ref: '#/components/schemas/EP_Rx-Single' - - $ref: '#/components/schemas/EP_MAP_SMSC-Single' - - $ref: '#/components/schemas/EP_NLS-Single' - - $ref: '#/components/schemas/EP_NLG-Single' - - $ref: '#/components/schemas/Configurable5QISet-Single' - - $ref: '#/components/schemas/FiveQiDscpMappingSet-Single' - - $ref: '#/components/schemas/PredefinedPccRuleSet-Single' - - $ref: '#/components/schemas/Dynamic5QISet-Single' diff --git a/OpenAPI/PerDataFileReportMnS.yaml b/OpenAPI/PerDataFileReportMnS.yaml deleted file mode 100644 index 83fd77acb..000000000 --- a/OpenAPI/PerDataFileReportMnS.yaml +++ /dev/null @@ -1,13 +0,0 @@ -openapi: 3.0.1 -info: - title: TS 28.532 File data reporting Service - version: 16.6.0 - description: >- - OAS 3.0.1 specification of the File data reporting Management Service © 2020, - 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). All - rights reserved. -externalDocs: - description: 3GPP TS 28.532 V16.5.0; Generic management services - url: 'http://www.3gpp.org/ftp/Specs/archive/28_series/28.532/' -paths: {} - diff --git a/OpenAPI/PerMeasJobCtlMnS.yaml b/OpenAPI/PerMeasJobCtlMnS.yaml deleted file mode 100644 index b6abe58b2..000000000 --- a/OpenAPI/PerMeasJobCtlMnS.yaml +++ /dev/null @@ -1,280 +0,0 @@ -openapi: 3.0.1 -info: - title: TS 28.550 Performance Measurement Job Control Service - version: 16.5.0 - description: >- - OAS 3.0.1 specification of the Performance Measurement Job Control Service - @ 2020, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). - All rights reserved. -externalDocs: - description: 3GPP TS 28.550 V16.5.0; Performance assurance - url: http://www.3gpp.org/ftp/Specs/archive/28_series/28.550/ -servers: - - url: 'http://{URI-DN-prefix}/{root}/PerfMeasJobCtrlMnS/v1650/{LDN-first-part}' - variables: - URI-DN-prefix: - description: See subclause 4.4 of TS 32.158 - default: example.com - root: - description: See subclause 4.4 of TS 32.158 - default: 3GPPManagement - LDN-first-part: - description: See subclause 4.4 of TS 32.158 - default: '' -paths: - /measJobs: - post: - summary: Create a measurement job - description: To create a measurement job the representation of the measurement job is POSTed on the /measJobs collection resource. - requestBody: - required: true - content: - application/json: - schema: - $ref: '#/components/schemas/measJobCreation-RequestType' - responses: - '201': - description: Success case ("201 Created"). The representation of the newly created measurement job resource shall be returned. - content: - application/json: - schema: - $ref: '#/components/schemas/measJobCreation-ResponseType' - '202': - description: Partial success case ("202 Partically created"). The representation of the newly created measurement job resource with unsupported list shall be returned. - content: - application/json: - schema: - $ref: '#/components/schemas/measJobCreation-ResponseType' - default: - description: Error case. - content: - application/json: - schema: - $ref: '#/components/schemas/error-ResponseType' - get: - summary: Read resources of measurement jobs - description: 'With HTTP GET, resources of measurement jobs are read. The resources to be read are identified with the path component (base resource) and the query component (jobIdList) of the URI. The fields query component allows to select the resource properties to be returned.' - parameters: - - name: jobIdList - in: query - description: This parameter identifies the list of jobId to select the resources from the collection resources identified with the path component of the URI. - required: true - schema: - type: array - items: - type: string - responses: - '200': - description: 'Success case ("200 OK"). The resources identified in the request for retrieval are returned in the response message body. In case the fields query parameter is used, the selected resources are returned.' - content: - application/json: - schema: - $ref: '#/components/schemas/measJobsRetrieval-ResponseType' - default: - description: Error case. - content: - application/json: - schema: - $ref: '#/components/schemas/error-ResponseType' - '/measJobs/{jobId}': - get: - summary: Read resource of a single measurement job - description: 'With HTTP GET, resource of a measurement job is read. The resource to be read is identified with the path component of the URI.' - parameters: - - name: jobId - in: path - description: Identifies the measurement job to be read. - required: true - schema: - $ref: '#/components/schemas/uri-Type' - responses: - '200': - description: 'Success case ("200 OK"). The resource identified in the path for retrieval is returned in the response message body. ' - content: - application/json: - schema: - $ref: '#/components/schemas/measJobsRetrieval-ResponseType' - default: - description: Error case. - content: - application/json: - schema: - $ref: '#/components/schemas/error-ResponseType' - delete: - summary: Delete a single measurement job - description: The measurement job is deleted by deleting the corresponding measurement job resource. The resource to be deleted is identified with the path component of the URI. - parameters: - - name: jobId - in: path - description: Identifies the measurement job to be deleted. - required: true - schema: - $ref: '#/components/schemas/uri-Type' - responses: - '204': - description: Success case ("204 No Content"). The measurement job resource has been deleted. The response message body is absent. - default: - description: Error case. - content: - application/json: - schema: - $ref: '#/components/schemas/error-ResponseType' -components: - schemas: - dateTime-Type: - type: string - format: date-Time - uri-Type: - type: string - measJobCreation-RequestType: - type: object - properties: - iOCName: - type: string - iOCInstanceList: - type: array - items: - $ref: '#/components/schemas/uri-Type' - measurementCategoryList: - type: array - items: - type: string - reportingMethod: - $ref: '#/components/schemas/reportingMethod-Type' - granularityPeriod: - type: integer - reportingPeriod: - type: integer - startTime: - $ref: '#/components/schemas/dateTime-Type' - stopTime: - $ref: '#/components/schemas/dateTime-Type' - schedule: - $ref: '#/components/schemas/schedule-Type' - streamTarget: - type: string - priority: - $ref: '#/components/schemas/priority-Type' - reliability: - type: string - measJobCreation-ResponseType: - type: object - properties: - unsupportedList: - type: array - items: - $ref: '#/components/schemas/unsupportedMeas-Type' - measJobsRetrieval-ResponseType: - type: object - properties: - jobInfoList: - type: array - items: - $ref: '#/components/schemas/measJobInfo-ResourceType' - error-ResponseType: - type: object - properties: - error: - type: object - properties: - errorInfo: - type: string - measJobInfo-ResourceType: - type: object - properties: - href: - $ref: '#/components/schemas/uri-Type' - iOCName: - type: string - iOCInstanceList: - type: array - items: - $ref: '#/components/schemas/uri-Type' - measurementCategoryList: - type: array - items: - type: string - reportingMethod: - $ref: '#/components/schemas/reportingMethod-Type' - granularityPeriod: - type: integer - reportingPeriod: - type: integer - startTime: - $ref: '#/components/schemas/dateTime-Type' - stopTime: - $ref: '#/components/schemas/dateTime-Type' - schedule: - $ref: '#/components/schemas/schedule-Type' - streamTarget: - type: string - priority: - $ref: '#/components/schemas/priority-Type' - reliability: - type: string - schedule-Type: - type: object - properties: - scheduleOption: - $ref: '#/components/schemas/scheduleOption-Type' - dailySchedule: - type: array - items: - $ref: '#/components/schemas/timeInterval-Type' - weeklySchedule: - type: array - items: - $ref: '#/components/schemas/scheduleOfDay-Type' - timeInterval-Type: - type: object - properties: - intervalStart: - type: string - format: Time - intervalEnd: - type: string - format: Time - scheduleOfDay-Type: - type: object - properties: - dayOfWeek: - $ref: '#/components/schemas/dayOfWeek-Type' - intervalsOfDay: - type: array - items: - $ref: '#/components/schemas/timeInterval-Type' - unsupportedMeas-Type: - type: object - properties: - iOCInstance: - $ref: '#/components/schemas/uri-Type' - measurementTypeName: - type: string - reason: - type: string - reportingMethod-Type: - type: string - enum: - - file - - streaming - priority-Type: - type: string - enum: - - low - - medium - - high - scheduleOption-Type: - type: string - enum: - - daily - - weekly - dayOfWeek-Type: - type: string - enum: - - Monday - - Tuesday - - Wednesday - - Thursday - - Friday - - Saturday - - Sunday diff --git a/OpenAPI/PerThresMonMnS.yaml b/OpenAPI/PerThresMonMnS.yaml deleted file mode 100644 index 923640a11..000000000 --- a/OpenAPI/PerThresMonMnS.yaml +++ /dev/null @@ -1,102 +0,0 @@ -openapi: 3.0.1 -info: - title: TS 28.532 Performance Threshold Monitoring Service - version: 16.4.0 - description: OAS 3.0.1 specification of the Performance Threshold Monitoring Service -servers: - - url: 'http://{monitoringNotifTarget}' - variables: - monitoringNotifTarget: - description: >- - The open API server of the performance threshold monitoring service is - located in the consumer side, see monitoringNotifTarget attribute of - the IOC ThresholdMonitor defined in 3GPP TS 28.622 [11]. - default: example.com -paths: - /notificationSink: - post: - summary: Send notifications about performance threshold crossing - description: To send a notifyThresholdCrossing notification - requestBody: - required: true - content: - application/json: - schema: - $ref: '#/components/schemas/notifyThresholdCrossing-NotifType' - responses: - '204': - description: >- - Success case ("204 No Content"). The notification is successfully - delivered. The response message body is absent. - default: - description: Error case. - content: - application/json: - schema: - $ref: '#/components/schemas/error-ResponseType' -components: - schemas: - dateTime-Type: - type: string - format: date-Time - uri-Type: - type: string - long-Type: - type: string - format: long - thresholdLevel-Type: - type: integer - measurementTypeName-Type: - type: string - measurementValue-Type: - type: string - additionalText-Type: - type: string - error-ResponseType: - type: object - properties: - error: - type: object - properties: - errorInfo: - type: string - header-Type: - description: Header used in notifications as notification header - type: object - properties: - uri: - $ref: '#/components/schemas/uri-Type' - notificationId: - $ref: '#/components/schemas/notificationId-Type' - notificationType: - $ref: '#/components/schemas/notificationType-Type' - eventTime: - $ref: '#/components/schemas/dateTime-Type' - notificationId-Type: - $ref: '#/components/schemas/long-Type' - notificationType-Type: - type: string - enum: - - notifyThresholdCrossing - notifyThresholdCrossing-NotifType: - type: object - properties: - header: - $ref: '#/components/schemas/header-Type' - body: - type: object - properties: - startOfMonitoringGP: - $ref: '#/components/schemas/dateTime-Type' - endOfMonitoringGP: - $ref: '#/components/schemas/dateTime-Type' - monitoredObjectInstance: - $ref: '#/components/schemas/uri-Type' - thresholdLevel: - $ref: '#/components/schemas/thresholdLevel-Type' - measurementTypeName: - $ref: '#/components/schemas/measurementTypeName-Type' - measurementValue: - $ref: '#/components/schemas/measurementValue-Type' - additionalText: - $ref: '#/components/schemas/additionalText-Type' diff --git a/OpenAPI/PerfDataStreamingMnS.yaml b/OpenAPI/PerfDataStreamingMnS.yaml deleted file mode 100644 index e040e14c8..000000000 --- a/OpenAPI/PerfDataStreamingMnS.yaml +++ /dev/null @@ -1,363 +0,0 @@ -openapi: 3.0.1 -info: - title: TS 28.550 Performance Data Streaming Service - version: 16.3.0 - description: OAS 3.0.1 specification of the Performance Data Streaming Service -servers: - - url: 'http://{streamTarget}/PerfDataStreamMnS/v1630' - description: This URL is used for posting the set of information about streams supported on the connection between the producer and the consumer. - variables: - streamTarget: - description: 'The open API server of the performance data streaming service is located in the consumer side,and the “streamTarget” part corresponds to the streamTarget parameter provided in the createMeasurementJob operation (see clause 6.1.1.2) or the streamTarget attribute of the MOI of MeasurementControlor MeasurementReader, see 3GPP TS 28.622 [5]).' - default: example.com - - url: 'wss://{streamTarget}/PerfDataStreamMnS/v1630/streamingConnection' - description: This URL is used for establishing the WebSocket connection for the performance data streaming service. - variables: - streamTarget: - description: 'The open API server of the performance data streaming service is located in the consumer side,and the “streamTarget” part corresponds to the streamTarget parameter provided in the createMeasurementJob operation (see clause 6.1.1.2) or the streamTarget attribute of the MOI of MeasurementControlor MeasurementReader, see 3GPP TS 28.622 [5]).' - default: example.com -paths: - /streamInfoList: - post: - summary: The set of information about the streams sent from the producer to the consumer - description: To send the streamInfoList from the producer to the consumer - requestBody: - required: true - content: - application/json: - schema: - $ref: '#/components/schemas/streamInfoListPost-RequestType' - responses: - '201': - description: Success case ("201 Posted"). The streamInfoList is successfully posted. - content: - application/json: - schema: - $ref: '#/components/schemas/streamInfoListPost-ResponseType' - '202': - description: Partial success case ("202 Partially posted"). The representation of the posted resource on stream information. - content: - application/json: - schema: - $ref: '#/components/schemas/streamInfoListPost-ResponseType' - default: - description: Error case. - content: - application/json: - schema: - $ref: '#/components/schemas/error-ResponseType' - get: - summary: Read resources of stream information from the streaming consumer - description: 'With HTTP GET, resources of stream information are read. The resources to be read are identified with the path component (base resource) and the query component (streamIdList) of the URI. The fields query component allows to select the resource properties to be returned.' - parameters: - - name: streamIdList - in: query - description: This parameter identifies the list of streamId to select from the collection resources identified with the path component of the URI. - required: true - schema: - type: array - items: - type: integer - responses: - '200': - description: 'Success case ("200 OK"). The resources identified in the request for retrieval are returned in the response message body. In case the fields query parameter is used, the selected resources are returned.' - content: - application/json: - schema: - $ref: '#/components/schemas/listOfStreamInfoRetrieval-ResponseType' - '202': - description: Partial success case ("202 Partially retrieved"). The representation of the retrieved resources on stream information. - content: - application/json: - schema: - $ref: '#/components/schemas/listOfStreamInfoRetrieval-ResponseType' - default: - description: Error case. - content: - application/json: - schema: - $ref: '#/components/schemas/error-ResponseType' - patch: - summary: Update resources of stream information to the streaming consumer - description: 'With HTTP PATCH, resources of stream information are to be updated. The resources to be updated are identified with the path component (base resource) and the query component (streamIdList) of the URI. The fields query component allows to select the resource properties to be updated.' - parameters: - - name: streamIdList - in: query - description: This parameter identifies the list of streamId to select from the collection resources identified with the path component of the URI. - required: true - schema: - type: array - items: - type: integer - requestBody: - required: true - content: - application/json: - schema: - $ref: '#/components/schemas/listOfStreamInfoToUpdate-RequestType' - responses: - '200': - description: Success case ("200 OK"). The resources selected by the query parameter are updated and returned in the response message body. - content: - application/json: - schema: - $ref: '#/components/schemas/listOfStreamInfoUpdate-ResponseType' - '202': - description: Partial success case ("202 Partially updated"). The representation of the updated resources on stream information - content: - application/json: - schema: - $ref: '#/components/schemas/listOfStreamInfoUpdate-ResponseType' - default: - description: Error case. - content: - application/json: - schema: - $ref: '#/components/schemas/error-ResponseType' - delete: - summary: The information of streams to be deleted by the producer to the consumer - description: 'With HTTP DELETE, resources of stream information are to be deleted. The resources to be deleted are identified with the path component (base resource) and the query component (streamIdList) of the URI. The fields query component allows to select the resource properties to be deleted.' - parameters: - - name: streamIdList - in: query - description: This parameter identifies the list of streamId to select from the collection resources identified with the path component of the URI. - required: true - schema: - type: array - items: - type: integer - responses: - '204': - description: Success case ("204 No Content"). The stream information resource has been deleted. The response message body is absent. - default: - description: Error case. - content: - application/json: - schema: - $ref: '#/components/schemas/error-ResponseType' - '/streamInfoList/{streamId}': - get: - summary: Read resource of the stream information from the streaming consumer - description: 'With HTTP GET, resource of stream information is read. The resource to be read is identified with the path component the URI.' - parameters: - - name: streamId - in: path - description: Identifies the stream for which the information is to be retrieved. - required: true - schema: - $ref: '#/components/schemas/uri-Type' - responses: - '200': - description: Success case ("200 OK"). The resource identified in the request for retrieval is returned in the response message body. - content: - application/json: - schema: - $ref: '#/components/schemas/listOfStreamInfoRetrieval-ResponseType' - default: - description: Error case. - content: - application/json: - schema: - $ref: '#/components/schemas/error-ResponseType' - patch: - summary: Update the resource of stream information to the streaming consumer - description: 'With HTTP PATCH, resource of stream information is to be updated. The resource to be updated is identified by the path component of the URI. ' - parameters: - - name: streamId - in: path - description: Identifies the stream for which the information is to be updated. - required: true - schema: - $ref: '#/components/schemas/uri-Type' - requestBody: - required: true - content: - application/json: - schema: - $ref: '#/components/schemas/streamInfoToUpdate-RequestType' - responses: - '200': - description: Success case ("200 OK"). The resources identified by the path of the URI is updated and returned in the response message body. - content: - application/json: - schema: - $ref: '#/components/schemas/streamInfoUpdate-ResponseType' - default: - description: Error case. - content: - application/json: - schema: - $ref: '#/components/schemas/error-ResponseType' - delete: - summary: The stream information to be deleted by the producer to the consumer - description: 'With HTTP DELETE, resource of stream information identified by the path component of the URI is to be deleted.' - parameters: - - name: streamId - in: path - description: Identifies the stream for which the information is to be deleted - required: true - schema: - $ref: '#/components/schemas/uri-Type' - responses: - '204': - description: Success case ("204 No Content"). The stream information resource has been deleted. The response message body is absent. - default: - description: Error case. - content: - application/json: - schema: - $ref: '#/components/schemas/error-ResponseType' - /streamConnection: - get: - summary: The connection for streaming from the producer to the consumer - description: To establish the WebSocket connection between the producer and the consumer. The HTTP version of this operation shall not be earlier than HTTP/1.1 - parameters: - - in: header - name: Upgrade - required: true - schema: - $ref: '#/components/schemas/Upgrade-HeaderType' - - in: header - name: Connection - required: true - schema: - $ref: '#/components/schemas/Connection-HeaderType' - - in: header - name: Sec-WebSocket-Key - required: true - schema: - $ref: '#/components/schemas/Sec-WebSocket-Key-HeaderType' - - in: header - name: Sec-WebSocket-Version - required: true - schema: - $ref: '#/components/schemas/Sec-WebSocket-Version-HeaderType' - responses: - '101': - description: Success case ("101 Switching Protocols "). The connection has been successfully switched to WebSocket. The response message body is absent. - headers: - Upgrade: - schema: - $ref: '#/components/schemas/Upgrade-HeaderType' - Connection: - schema: - $ref: '#/components/schemas/Connection-HeaderType' - Sec-WebSocket-Accept-HeaderType: - schema: - $ref: '#/components/schemas/Sec-WebSocket-Accept-HeaderType' - default: - description: Error case. - content: - application/json: - schema: - $ref: '#/components/schemas/error-ResponseType' -components: - schemas: - uri-Type: - type: string - streamInfoIn-Type: - type: object - properties: - streamId: - type: integer - iOCInstance: - $ref: '#/components/schemas/uri-Type' - measTypes: - type: array - items: - type: string - streamInfoOut-Type: - type: object - properties: - streamId: - $ref: '#/components/schemas/uri-Type' - iOCInstance: - $ref: '#/components/schemas/uri-Type' - measTypes: - type: array - items: - type: string - error-ResponseType: - type: object - properties: - error: - type: object - properties: - errorInfo: - type: string - streamInfoListPost-RequestType: - type: object - properties: - streamInfoList: - type: array - items: - $ref: '#/components/schemas/streamInfoIn-Type' - streamInfoListPost-ResponseType: - type: object - properties: - streamInfoListPosted: - type: array - items: - $ref: '#/components/schemas/streamInfoOut-Type' - streamInfoRetrieval-ResponseType: - type: object - properties: - streamInfoOut: - $ref: '#/components/schemas/streamInfoOut-Type' - listOfStreamInfoRetrieval-ResponseType: - type: object - properties: - listOfStreamInfoOut: - type: array - items: - $ref: '#/components/schemas/streamInfoOut-Type' - streamInfoToUpdatePropertyType: - type: object - properties: - iOCInstance: - description: 'The updated measured object instance, empty value means no update.' - allOf: - - $ref: '#/components/schemas/uri-Type' - measTypes: - description: 'The updated list of measurement type, empty value means no update.' - type: array - items: - type: string - streamInfoToUpdate-RequestType: - type: object - properties: - streamInfoToUpdate: - $ref: '#/components/schemas/streamInfoToUpdatePropertyType' - listOfStreamInfoToUpdate-RequestType: - type: object - properties: - listOfStreamInfoToUpdate: - type: array - items: - $ref: '#/components/schemas/streamInfoToUpdatePropertyType' - streamInfoUpdate-ResponseType: - type: object - properties: - streamInfoUpdated: - $ref: '#/components/schemas/streamInfoOut-Type' - listOfStreamInfoUpdate-ResponseType: - type: object - properties: - listOfStreamInfoUpdated: - type: array - items: - $ref: '#/components/schemas/streamInfoOut-Type' - Upgrade-HeaderType: - type: string - enum: - - websocket - Connection-HeaderType: - type: string - enum: - - Upgrade - Sec-WebSocket-Key-HeaderType: - type: string - Sec-WebSocket-Version-HeaderType: - type: string - Sec-WebSocket-Accept-HeaderType: - type: string diff --git a/OpenAPI/comDefs.yaml b/OpenAPI/comDefs.yaml deleted file mode 100644 index 04ab65161..000000000 --- a/OpenAPI/comDefs.yaml +++ /dev/null @@ -1,84 +0,0 @@ -openapi: 3.0.1 -info: - title: Common Type Definitions - version: 16.3.0 - description: >- - OAS 3.0.1 specification of common type definitions in the Generic NRM - © 2020, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). - All rights reserved. -externalDocs: - description: 3GPP TS 28.623 V16.3.0; Generic NRM, Common Type Definitions - url: http://www.3gpp.org/ftp/Specs/archive/28_series/28.623/ -paths: {} -components: - schemas: - Long: - type: string - format: long - Float: - type: string - format: float - DateTime: - type: string - format: date-Time - Dn: - type: string - Uri: - type: string - AttributeNameValuePairSet: - type: object - minProperties: 1 - AttributeValueChangeSet: - description: >- - The key in this map is the attribute name. The value of each key is an array. - When only one item is present in the array, it carries the new attribute - value. If two items are present, then the first item carries the old value - and the second item the new value. The items can be of any type including null. - type: object - additionalProperties: - type: array - minItems: 1 - maxItems: 2 - items: - nullable: true - Filter: - type: string - SystemDN: - type: string - NotificationId: - type: integer - NotificationHeader: - description: >- - Header used for all notifications types - type: object - required: - - uri - - notificationId - - notificationType - - eventTime - - systemDn - properties: - uri: - $ref: '#/components/schemas/Uri' - notificationId: - $ref: '#/components/schemas/NotificationId' - notificationType: - oneOf: - - $ref: 'faultMnS.yaml#/components/schemas/AlarmNotificationTypes' - #- $ref: 'provMnS.yaml#/components/schemas/CmNotificationTypes' - # more to be added - eventTime: - $ref: '#/components/schemas/DateTime' - systemDN: - $ref: '#/components/schemas/SystemDN' - ErrorResponse: - description: >- - Default schema for the response message body in case the request - is not successful. - type: object - properties: - error: - type: object - properties: - errorInfo: - type: string diff --git a/OpenAPI/coslaNrm.yaml b/OpenAPI/coslaNrm.yaml deleted file mode 100644 index e6a0ef13a..000000000 --- a/OpenAPI/coslaNrm.yaml +++ /dev/null @@ -1,168 +0,0 @@ -openapi: 3.0.2 - -info: - title: coslaNrm - version: 16.4.0 - description: - OAS 3.0.1 specification of the Cosla NRM - © 2020, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). - All rights reserved. - -externalDocs: - description: 3GPP TS 28.536 V16.4.0; Cosla NRM - url: http://www.3gpp.org/ftp/Specs/archive/28_series/28.536/ - -paths: {} - -components: - - schemas: - -#------------ Type definitions --------------------------------------------------- - - ControlLoopLifeCyclePhase: - type: string - enum: - - PREPARATION - - COMMISSIONING - - OPERATION - - DECOMMISSIONING - - ObservationTime: - type: integer - - AssuranceGoalStatusObserved: - type: string - enum: - - FULFILLED - - NOT_FULFILLED - - AssuranceGoalStatusPredicted: - type: string - enum: - - FULFILLED - - NOT_FULFILLED - - AssuranceTargetStatusObserved: - type: string - enum: - - FULFILLED - - NOT_FULFILLED - - AssuranceTargetStatusPredicted: - type: string - enum: - - FULFILLED - - NOT_FULFILLED - - AssuranceTarget: - type: object - properties: - assuranceTargetName: - type: string - assuranceTargetValue: - type: string - assuranceTargetStatusObserved: - $ref: '#/components/schemas/AssuranceTargetStatusObserved' - assuranceTargetStatusPredicted: - $ref: '#/components/schemas/AssuranceTargetStatusPredicted' - - AssuranceTargetList: - type: array - items: - $ref: '#/components/schemas/AssuranceTarget' - - -#-------- Definition of concrete IOCs -------------------------------------------- - - SubNetwork-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/SubNetwork-Attr' - - $ref: 'genericNrm.yaml#/components/schemas/SubNetwork-ncO' - - type: object - properties: - AssuranceClosedControlLoop: - $ref: '#/components/schemas/AssuranceClosedControlLoop-Multiple' - - ManagedElement-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/ManagedElement-Attr' - - $ref: 'genericNrm.yaml#/components/schemas/ManagedElement-ncO' - - type: object - properties: - AssuranceClosedControlLoop: - $ref: '#/components/schemas/AssuranceClosedControlLoop-Multiple' - - AssuranceClosedControlLoop-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top' - - type: object - properties: - attributes: - type: object - properties: - operationalState: - $ref: 'genericNrm.yaml#/components/schemas/OperationalState' - administrativeState: - $ref: 'genericNrm.yaml#/components/schemas/AdministrativeState' - controlLoopLifeCyclePhase: - $ref: '#/components/schemas/ControlLoopLifeCyclePhase' - AssuranceGoal: - $ref: '#/components/schemas/AssuranceGoal-Multiple' - - AssuranceGoal-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top' - - type: object - properties: - attributes: - allOf: - - type: object - properties: - observationTime: - $ref: '#/components/schemas/ObservationTime' - assuranceTargetList: - $ref: '#/components/schemas/AssuranceTargetList' - assuranceGoalStatusObserved: - $ref: '#/components/schemas/AssuranceGoalStatusObserved' - assuranceGoalStatusPredicted: - $ref: '#/components/schemas/AssuranceGoalStatusPredicted' - serviceProfileId: - type: string - sliceProfileId: - type: string - networkSliceRef: - $ref: 'comDefs.yaml#/components/schemas/Dn' - networkSliceSubnetRef: - $ref: 'comDefs.yaml#/components/schemas/Dn' - -#-------- Definition of JSON arrays for name-contained IOCs ---------------------- - - AssuranceClosedControlLoop-Multiple: - type: array - items: - $ref: '#/components/schemas/AssuranceClosedControlLoop-Single' - - AssuranceGoal-Multiple: - type: array - items: - $ref: '#/components/schemas/AssuranceGoal-Single' - -#------------ Definitions in TS 28.536 for TS 28.623 ----------------------------- - - resources-coslaNrm: - oneOf: - - $ref: '#/components/schemas/AssuranceClosedControlLoop-Single' - - $ref: '#/components/schemas/AssuranceGoal-Single' - - $ref: '#/components/schemas/SubNetwork-Single' - - $ref: '#/components/schemas/ManagedElement-Single' \ No newline at end of file diff --git a/OpenAPI/faultMnS.yaml b/OpenAPI/faultMnS.yaml deleted file mode 100644 index 499123b90..000000000 --- a/OpenAPI/faultMnS.yaml +++ /dev/null @@ -1,1144 +0,0 @@ -openapi: 3.0.1 -info: - title: Fault Supervision MnS - version: 16.4.0 - description: >- - OAS 3.0.1 definition of the Fault Supervision MnS - © 2020, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). - All rights reserved. -externalDocs: - description: 3GPP TS 28.532 V16.4.0; Generic management services - url: http://www.3gpp.org/ftp/Specs/archive/28_series/28.532/ -servers: - - url: '{MnSRoot}/FaultSupervisionMnS/{version}' - variables: - MnSRoot: - description: See subclause 4.4.3 of TS 32.158 - default: http://example.com/3GPPManagement - version: - description: Versi on number of the OpenAPI definition - default: XXX -paths: - /alarms: - get: - summary: Retrieve multiple alarms - description: >- - Retrieves the alarms identified by alarmAckState, baseObjectInstance - and filter. - parameters: - - name: alarmAckState - in: query - required: false - schema: - $ref: '#/components/schemas/AlarmAckState' - - name: baseObjectInstance - in: query - required: false - schema: - $ref: '#/components/schemas/Dn' - - name: filter - in: query - required: false - schema: - $ref: '#/components/schemas/Filter' - responses: - '200': - description: >- - Success case ("200 OK"). - Returns the alarms identified in the request. The alarmId is the key - of the map. - content: - application/json: - schema: - type: object - additionalProperties: - type: object - allOf: - - type: object - properties: - lastNotificationHeader: - $ref: '#/components/schemas/NotificationHeader' - - $ref: '#/components/schemas/AlarmRecord' - - type: object - properties: - comments: - $ref: '#/components/schemas/Comments' - default: - description: Response in case of error. - content: - application/json: - schema: - $ref: '#/components/schemas/ErrorResponse' - patch: - summary: 'Clear, acknowledge or unacknowledge multiple alarms' - description: >- - Clears, acknowledges or unacknowledges multiple alarms using patch. Depending - on which action is to be performed, different merge patch documents need - to be used. - requestBody: - description: >- - Patch documents for acknowledging and unacknowledging, or clearing multiple - alarms. The keys in the map are the alarmIds to be patched. - content: - application/merge-patch+json: - schema: - oneOf: - - type: object - additionalProperties: - $ref: '#/components/schemas/MergePatchAcknowledgeAlarm' - - type: object - additionalProperties: - $ref: '#/components/schemas/MergePatchClearAlarm' - responses: - '204': - description: >- - Success case ("204 No content"). - The response message body is empty. - default: - description: Response in case of error. - content: - application/json: - schema: - type: array - items: - $ref: '#/components/schemas/FailedAlarm' - /alarms/alarmCount: - get: - summary: Get the alarm count per perceived severity - parameters: - - name: alarmAckState - in: query - required: false - schema: - $ref: '#/components/schemas/AlarmAckState' - - name: filter - in: query - required: false - schema: - type: string - responses: - '200': - description: >- - Success case ("200 OK"). - The alarm count per perceived severity is returned. - content: - application/json: - schema: - $ref: '#/components/schemas/AlarmCount' - default: - description: Response in case of error. The error case needs rework. - content: - application/json: - schema: - $ref: '#/components/schemas/ErrorResponse' - /alarms/{alarmId}: - patch: - summary: 'Clear, acknowledge or unacknowledge a single alarm' - description: >- - Clears, acknowledges or uncknowldeges a single alarm by patching the alarm - information. A conditional acknowledge request based on the perceived - severity is not supported. - parameters: - - name: alarmId - in: path - description: Identifies the alarm to be patched. - required: true - schema: - type: string - requestBody: - required: true - content: - application/merge-patch+json: - schema: - oneOf: - - $ref: '#/components/schemas/MergePatchAcknowledgeAlarm' - - $ref: '#/components/schemas/MergePatchClearAlarm' - responses: - '204': - description: >- - Success case (204 No content). - The response message body is absent. - default: - description: Response in case of error. - content: - application/json: - schema: - $ref: '#/components/schemas/ErrorResponse' - /alarms/{alarmId}/comments: - post: - summary: Add a comment to a single alarm - description: >- - Adds a comment to an alarm identified by alarmId. The id of the new comment - is allocated by the producer. - parameters: - - name: alarmId - in: path - description: Identifies the alarm to which the comment shall be added. - required: true - schema: - type: string - requestBody: - required: true - content: - application/json: - schema: - $ref: '#/components/schemas/Comment' - responses: - '201': - description: >- - Success case (201 Created). - The representation of the newly created comment resource shall be returned. - content: - application/json: - schema: - $ref: '#/components/schemas/Comment' - headers: - Location: - description: URI of the newly created comment resource. - required: true - schema: - type: string - default: - description: Error case. - content: - application/json: - schema: - $ref: '#/components/schemas/ErrorResponse' - - /subscriptions: - post: - summary: Create a subscription - description: >- - To create a subscription the representation of the subscription is - POSTed on the /subscriptions collection resource. - requestBody: - required: true - content: - application/json: - schema: - $ref: '#/components/schemas/Subscription' - responses: - '201': - description: >- - Success case ("201 Created"). - The representation of the newly created subscription resource shall - be returned. - content: - application/json: - schema: - $ref: '#/components/schemas/Subscription' - headers: - Location: - description: URI of the newly created subscription resource - required: true - schema: - type: string - default: - description: Error case. - content: - application/json: - schema: - $ref: '#/components/schemas/ErrorResponse' - callbacks: - notifyNewAlarm: - '{request.body#/consumerReference}': - post: - requestBody: - required: true - content: - application/json: - schema: - oneOf: - - $ref: '#/components/schemas/NotifyNewAlarm' - - $ref: '#/components/schemas/NotifyNewSecAlarm' - responses: - '204': - description: >- - Success case ("204 No Content"). - The notification is successfully delivered. The response message - body is absent. - default: - description: Error case. - content: - application/json: - schema: - $ref: '#/components/schemas/ErrorResponse' - notifyClearedAlarm: - '{request.body#/consumerReference}': - post: - requestBody: - required: true - content: - application/json: - schema: - $ref: '#/components/schemas/NotifyClearedAlarm' - responses: - '204': - description: >- - Success case ("204 No Content"). - The notification is successfully delivered. The response message - body is absent. - default: - description: Error case. - content: - application/json: - schema: - $ref: '#/components/schemas/ErrorResponse' - notifyChangedAlarm: - '{request.body#/consumerReference}': - post: - requestBody: - required: true - content: - application/json: - schema: - $ref: '#/components/schemas/NotifyChangedAlarm' - responses: - '204': - description: >- - Success case ("204 No Content"). - The notification is successfully delivered. The response message - body is absent. - default: - description: Error case. - content: - application/json: - schema: - $ref: '#/components/schemas/ErrorResponse' - notifyChangedAlarmGeneral: - '{request.body#/consumerReference}': - post: - requestBody: - required: true - content: - application/json: - schema: - oneOf: - - $ref: '#/components/schemas/NotifyChangedAlarmGeneral' - - $ref: '#/components/schemas/NotifyChangedSecAlarmGeneral' - responses: - '204': - description: >- - Success case ("204 No Content"). - The notification is successfully delivered. The response message - body is absent. - default: - description: Error case. - content: - application/json: - schema: - $ref: '#/components/schemas/ErrorResponse' - notifyCorrelatedNotificationChanged: - '{request.body#/consumerReference}': - post: - requestBody: - required: true - content: - application/json: - schema: - $ref: '#/components/schemas/NotifyCorrelatedNotificationChanged' - responses: - '204': - description: >- - Success case ("204 No Content"). - The notification is successfully delivered. The response message - body is absent. - default: - description: Error case. - content: - application/json: - schema: - $ref: '#/components/schemas/ErrorResponse' - notifyAckStateChanged: - '{request.body#/consumerReference}': - post: - requestBody: - required: true - content: - application/json: - schema: - $ref: '#/components/schemas/NotifyAckStateChanged' - responses: - '204': - description: >- - Success case ("204 No Content"). - The notification is successfully delivered. The response message - body is absent. - default: - description: Error case. - content: - application/json: - schema: - $ref: '#/components/schemas/ErrorResponse' - notifyComments: - '{request.body#/consumerReference}': - post: - requestBody: - required: true - content: - application/json: - schema: - $ref: '#/components/schemas/NotifyComments' - responses: - '204': - description: >- - Success case ("204 No Content"). - The notification is successfully delivered. The response message - body is absent. - default: - description: Error case. - content: - application/json: - schema: - $ref: '#/components/schemas/ErrorResponse' - notifyPotentialFaultyAlarmList: - '{request.body#/consumerReference}': - post: - requestBody: - required: true - content: - application/json: - schema: - $ref: '#/components/schemas/NotifyPotentialFaultyAlarmList' - responses: - '204': - description: >- - Success case ("204 No Content"). - The notification is successfully delivered. The response message - body is absent. - default: - description: Error case. - content: - application/json: - schema: - $ref: '#/components/schemas/ErrorResponse' - notifyAlarmListRebuilt: - '{request.body#/consumerReference}': - post: - requestBody: - required: true - content: - application/json: - schema: - $ref: '#/components/schemas/NotifyAlarmListRebuilt' - responses: - '204': - description: >- - Success case ("204 No Content"). - The notification is successfully delivered. The response message - body is absent. - default: - description: Error case. - content: - application/json: - schema: - $ref: '#/components/schemas/ErrorResponse' - /subscriptions/{subscriptionId}: - delete: - summary: Delete a subscription - description: >- - The subscription is deleted by deleting the corresponding subscription - resource. The resource to be deleted is identified with the path - component of the URI. - parameters: - - name: subscriptionId - in: path - description: Identifies the subscription to be deleted. - required: true - schema: - type: string - responses: - '204': - description: >- - Success case ("204 No Content"). - The subscription resource has been deleted. The response message body - is absent. - default: - description: Error case. - content: - application/json: - schema: - $ref: '#/components/schemas/ErrorResponse' - -components: - schemas: - - #---- Definitions to be moved to comDefs.yaml --------------------------------------# - - Long: - type: string - format: long - Float: - type: string - format: float - DateTime: - type: string - format: date-Time - - Dn: - type: string - Uri: - type: string - - AttributeNameValuePairSet: - type: object - minProperties: 1 - AttributeValueChangeSet: - description: >- - The key in this map is the attribute name. The value of each key is an array. - When only one item is present in the array, it carries the new attribute - value. If two items are present, then the first item carries the old value - and the second item the new value. The items can be of any type including null. - type: object - additionalProperties: - type: array - minItems: 1 - maxItems: 2 - items: - nullable: true - - Filter: - type: string - SystemDN: - type: string - - NotificationId: - type: integer - NotificationHeader: - description: >- - Header used for all notification types - type: object - required: - - href - - notificationId - - notificationType - - eventTime - - systemDN - properties: - uri: - $ref: '#/components/schemas/Uri' - notificationId: - $ref: '#/components/schemas/NotificationId' - notificationType: - oneOf: - - $ref: '#/components/schemas/AlarmNotificationTypes' - #- $ref: 'faultMnS.yaml#/components/schemas/AlarmNotificationTypes' - #- $ref: 'provMnS.yaml#/components/schemas/CmNotificationTypes' - # more to be added - eventTime: - $ref: '#/components/schemas/DateTime' - systemDN: - $ref: '#/components/schemas/SystemDN' - - ErrorResponse: - description: >- - Default schema for the response message body in case the request is not - successful. - type: object - properties: - error: - type: object - properties: - errorInfo: - type: string - - #---- End of definitions to be moved to comDefs.yaml -------------------------------# - - #---- Definition of AlarmRecord ----------------------------------------------------# - - AlarmId: - type: string - AlarmType: - type: string - enum: - - COMMUNICATIONS_ALARM - - QUALITY_OF_SERVICE_ALARM - - PROCESSING_ERROR_ALARM - - EQUIPMENT_ALARM - - ENVIRONMENTAL_ALARM - - INTEGRITY_VIOLATION - - OPERATIONAL_VIOLATION - - PHYSICAL_VIOLATION - - SECURITY_SERVICE_OR_MECHANISM_VIOLATION - - TIME_DOMAIN_VIOLATION - ProbableCause: - description: >- - The value of the probable cause may be a specific standardized string, or any - vendor provided string. Probable cause strings are not standardized in the - present document. They may be added in a future version. Up to then the - mapping of the generic probable cause strings "PROBABLE_CAUSE_001" to - "PROBABLE_CAUSE_005" is vendor specific. - The value of the probable cause may also be an integer. The mapping of integer - values to probable causes is vendor specific. - oneOf: - - anyOf: - - type: string - enum: - - PROBABLE_CAUSE_001 - - PROBABLE_CAUSE_002 - - PROBABLE_CAUSE_003 - - PROBABLE_CAUSE_004 - - PROBABLE_CAUSE_005 - - type: string - - type: integer - SpecificProblem: - oneOf: - - type: string - - type: integer - PerceivedSeverity: - type: string - enum: - - INDETERMINATE - - CRITICAL - - MAJOR - - MINOR - - WARNING - - CLEARED - TrendIndication: - type: string - enum: - - MORE_SEVERE - - NO_CHANGE - - LESS_SEVERE - ThresholdHysteresis: - type: object - required: - - high - properties: - high: - oneOf: - - type: integer - - $ref: '#/components/schemas/Float' - low: - $ref: '#/components/schemas/Float' - ThresholdLevelInd: - type: object - required: - - up - properties: - up: - $ref: '#/components/schemas/ThresholdHysteresis' - low: - $ref: '#/components/schemas/ThresholdHysteresis' - ThresholdInfo: - type: object - required: - - observedMeasurement - - observedValue - properties: - observedMeasurement: - type: string - observedValue: - oneOf: - - type: integer - - $ref: '#/components/schemas/Float' - thresholdLevelInd: - $ref: '#/components/schemas/ThresholdLevelInd' - armTime: - $ref: '#/components/schemas/DateTime' - CorrelatedNotification: - type: object - required: - - source - - notificationId - properties: - sourceObjectInstance: - $ref: '#/components/schemas/Dn' - notificationIds: - type: array - items: - $ref: '#/components/schemas/NotificationId' - CorrelatedNotifications: - type: array - items: - $ref: '#/components/schemas/CorrelatedNotification' - AckState: - type: string - enum: - - ACKNOWLEDGED - - UNACKNOWLEDGED - - AlarmRecord: - description: >- - The alarmId is not a property of an alarm record. It is used as key - in the map of alarm records instead. - type: object - properties: - # alarmId: - # $ref: '#/components/schemas/AlarmId' - objectInstance: - $ref: '#/components/schemas/Dn' - notificationId: - $ref: '#/components/schemas/NotificationId' - alarmRaisedTime: - $ref: '#/components/schemas/DateTime' - alarmChangedTime: - $ref: '#/components/schemas/DateTime' - alarmClearedTime: - $ref: '#/components/schemas/DateTime' - alarmType: - $ref: '#/components/schemas/AlarmType' - probableCause: - $ref: '#/components/schemas/ProbableCause' - specificProblem: - $ref: '#/components/schemas/SpecificProblem' - perceivedSeverity: - $ref: '#/components/schemas/PerceivedSeverity' - backedUpStatus: - type: boolean - backUpObject: - $ref: '#/components/schemas/Dn' - trendIndication: - $ref: '#/components/schemas/TrendIndication' - thresholdinfo: - $ref: '#/components/schemas/ThresholdInfo' - correlatedNotifications: - $ref: '#/components/schemas/CorrelatedNotifications' - stateChangeDefinition: - $ref: '#/components/schemas/AttributeValueChangeSet' - monitoredAttributes: - $ref: '#/components/schemas/AttributeNameValuePairSet' - proposedRepairActions: - type: string - additionalText: - type: string - additionalInformation: - $ref: '#/components/schemas/AttributeNameValuePairSet' - - rootCauseIndicator: - type: boolean - - ackTime: - $ref: '#/components/schemas/DateTime' - ackUserId: - type: string - ackSystemId: - type: string - ackState: - $ref: '#/components/schemas/AckState' - - clearUserId: - type: string - clearSystemId: - type: string - serviceUser: - type: string - serviceProvider: - type: string - securityAlarmDetector: - type: string - - #---- Definition of alarm notifications --------------------------------------------# - - AlarmNotificationTypes: - type: string - enum: - - notifyNewAlarm - - notifyChangedAlarm - - notifyChangedAlarmGeneral - - notifyAckStateChanged - - notifyCorrelatedNotificationChanged - - notifyComments - - notifyClearedAlarm - - notifyAlarmListRebuiltAlarm - - notifyPotentialFaultyAlarmList - AlarmListAlignmentRequirement: - type: string - enum: - - ALIGNMENT_REQUIRED - - ALIGNMENT_NOT_REQUIRED - - NotifyNewAlarm: - allOf: - - $ref: '#/components/schemas/NotificationHeader' - - type: object - required: - - alarmId - - alarmType - - probableCause - - perceivedSeverity - properties: - alarmId: - $ref: '#/components/schemas/AlarmId' - alarmType: - $ref: '#/components/schemas/AlarmType' - probableCause: - $ref: '#/components/schemas/ProbableCause' - specificProblem: - $ref: '#/components/schemas/SpecificProblem' - perceivedSeverity: - $ref: '#/components/schemas/PerceivedSeverity' - backedUpStatus: - type: boolean - backUpObject: - $ref: '#/components/schemas/Dn' - trendIndication: - $ref: '#/components/schemas/TrendIndication' - thresholdInfo: - $ref: '#/components/schemas/ThresholdInfo' - correlatedNotifications: - $ref: '#/components/schemas/CorrelatedNotifications' - stateChangeDefinition: - $ref: '#/components/schemas/AttributeValueChangeSet' - monitoredAttributes: - $ref: '#/components/schemas/AttributeNameValuePairSet' - proposedRepairActions: - type: string - additionalText: - type: string - additionalInformation: - $ref: '#/components/schemas/AttributeNameValuePairSet' - rootCauseIndicator: - type: boolean - NotifyNewSecAlarm: - allOf: - - $ref: '#/components/schemas/NotificationHeader' - - type: object - required: - - alarmId - - alarmType - - probableCause - - perceivedSeverity - - serviceUser - - serviceProvider - - securityAlarmDetector - properties: - alarmId: - $ref: '#/components/schemas/AlarmId' - alarmType: - $ref: '#/components/schemas/AlarmType' - probableCause: - $ref: '#/components/schemas/ProbableCause' - perceivedSeverity: - $ref: '#/components/schemas/PerceivedSeverity' - correlatedNotifications: - $ref: '#/components/schemas/CorrelatedNotifications' - additionalText: - type: string - additionalInformation: - $ref: '#/components/schemas/AttributeNameValuePairSet' - rootCauseIndicator: - type: boolean - serviceUser: - type: string - serviceProvider: - type: string - securityAlarmDetector: - type: string - NotifyClearedAlarm: - allOf: - - $ref: '#/components/schemas/NotificationHeader' - - type: object - required: - - alarmId - - alarmType - - probableCause - - perceivedSeverity - properties: - alarmId: - $ref: '#/components/schemas/AlarmId' - alarmType: - $ref: '#/components/schemas/AlarmType' - probableCause: - $ref: '#/components/schemas/ProbableCause' - perceivedSeverity: - $ref: '#/components/schemas/PerceivedSeverity' - correlatedNotifications: - $ref: '#/components/schemas/CorrelatedNotifications' - clearUserId: - type: string - clearSystemId: - type: string - NotifyChangedAlarm: - allOf: - - $ref: '#/components/schemas/NotificationHeader' - - type: object - required: - - alarmId - - alarmType - - probableCause - - perceivedSeverity - properties: - alarmId: - $ref: '#/components/schemas/AlarmId' - alarmType: - $ref: '#/components/schemas/AlarmType' - probableCause: - $ref: '#/components/schemas/ProbableCause' - perceivedSeverity: - $ref: '#/components/schemas/PerceivedSeverity' - NotifyChangedAlarmGeneral: - allOf: - - $ref: '#/components/schemas/NotificationHeader' - - type: object - required: - - alarmId - - alarmType - - probableCause - - perceivedSeverity - - changedAlarmAttributes - properties: - alarmId: - $ref: '#/components/schemas/AlarmId' - alarmType: - $ref: '#/components/schemas/AlarmType' - probableCause: - $ref: '#/components/schemas/ProbableCause' - specificProblem: - $ref: '#/components/schemas/SpecificProblem' - perceivedSeverity: - $ref: '#/components/schemas/PerceivedSeverity' - correlatedNotifications: - $ref: '#/components/schemas/CorrelatedNotifications' - backedUpStatus: - type: boolean - backUpObject: - $ref: '#/components/schemas/Dn' - trendIndication: - $ref: '#/components/schemas/TrendIndication' - thresholdInfo: - $ref: '#/components/schemas/ThresholdInfo' - stateChangeDefinition: - $ref: '#/components/schemas/AttributeValueChangeSet' - monitoredAttributes: - $ref: '#/components/schemas/AttributeNameValuePairSet' - proposedRepairActions: - type: string - additionalText: - type: string - additionalInformation: - $ref: '#/components/schemas/AttributeNameValuePairSet' - rootCauseIndicator: - type: boolean - changedAlarmAttributes: - $ref: '#/components/schemas/AttributeNameValuePairSet' - NotifyChangedSecAlarmGeneral: - allOf: - - $ref: '#/components/schemas/NotificationHeader' - - type: object - required: - - alarmId - - alarmType - - probableCause - - perceivedSeverity - - serviceUser - - serviceProvider - - securityAlarmDetector - - changedAlarmAttributes - properties: - alarmId: - $ref: '#/components/schemas/AlarmId' - alarmType: - $ref: '#/components/schemas/AlarmType' - probableCause: - $ref: '#/components/schemas/ProbableCause' - perceivedSeverity: - $ref: '#/components/schemas/PerceivedSeverity' - correlatedNotifications: - $ref: '#/components/schemas/CorrelatedNotifications' - additionalText: - type: string - additionalInformation: - $ref: '#/components/schemas/AttributeNameValuePairSet' - rootCauseIndicator: - type: boolean - serviceUser: - type: string - serviceProvider: - type: string - securityAlarmDetector: - type: string - changedAlarmAttributes: - $ref: '#/components/schemas/AttributeNameValuePairSet' - NotifyCorrelatedNotificationChanged: - allOf: - - $ref: '#/components/schemas/NotificationHeader' - - type: object - required: - - alarmId - - correlatedNotifications - properties: - alarmId: - $ref: '#/components/schemas/AlarmId' - correlatedNotifications: - $ref: '#/components/schemas/CorrelatedNotifications' - rootCauseIndicator: - type: boolean - NotifyAckStateChanged: - allOf: - - $ref: '#/components/schemas/NotificationHeader' - - type: object - required: - - alarmId - - alarmType - - probableCause - - perceivedSeverity - - ackState - - ackUserId - properties: - alarmId: - $ref: '#/components/schemas/AlarmId' - alarmType: - $ref: '#/components/schemas/AlarmType' - probableCause: - $ref: '#/components/schemas/ProbableCause' - perceivedSeverity: - $ref: '#/components/schemas/PerceivedSeverity' - ackState: - $ref: '#/components/schemas/AckState' - ackUserId: - type: string - ackSystemId: - type: string - NotifyComments: - allOf: - - $ref: '#/components/schemas/NotificationHeader' - - type: object - required: - - alarmId - - alarmType - - probableCause - - perceivedSeverity - - comments - properties: - alarmId: - $ref: '#/components/schemas/AlarmId' - alarmType: - $ref: '#/components/schemas/AlarmType' - probableCause: - $ref: '#/components/schemas/ProbableCause' - perceivedSeverity: - $ref: '#/components/schemas/PerceivedSeverity' - comments: - $ref: '#/components/schemas/Comments' - NotifyPotentialFaultyAlarmList: - allOf: - - $ref: '#/components/schemas/NotificationHeader' - - type: object - required: - - reason - properties: - reason: - type: string - NotifyAlarmListRebuilt: - allOf: - - $ref: '#/components/schemas/NotificationHeader' - - type: object - required: - - reason - properties: - reason: - type: string - alarmListAlignmentRequirement: - $ref: '#/components/schemas/AlarmListAlignmentRequirement' - - #---- Definition of query parameters -----------------------------------------------# - - AlarmAckState: - type: string - enum: - - ALL_ALARMS - - ALL_ACTIVE_ALARMS - - ALL_ACTIVE_AND_ACKNOWLEDGED_ALARMS - - ALL_ACTIVE_AND_UNACKNOWLEDGED_ALARMS - - ALL_CLEARED_AND_UNACKNOWLEDGED_ALARMS - - ALL_UNACKNOWLEDGED_ALARMS - - #---- Definition of patch documents ------------------------------------------------# - - MergePatchAcknowledgeAlarm: - description: >- - Patch document acknowledging or unacknowledging a single alarm. For - acknowleding an alarm the value of ackState is ACKNOWLEDGED, for unacknowleding - an alarm the value of ackState is UNACKNOWLEDGED. - type: object - required: - - ackUserId - - ackState - properties: - ackUserId: - type: string - ackSystemId: - type: string - ackState: - $ref: '#/components/schemas/AckState' - MergePatchClearAlarm: - description: Patch document for clearing a single alarm - type: object - required: - - clearUserId - - perceivedSeverity - properties: - clearUserId: - type: string - clearSystemId: - type: string - perceivedSeverity: - type: string - enum: - - CLEARED - - #---- Definition of method responses -----------------------------------------------# - - FailedAlarm: - type: object - required: - - alarmId - - failureReason - properties: - alarmId: - $ref: '#/components/schemas/AlarmId' - failureReason: - type: string - - #---- Definition of resources ------------------------------------------------------# - - AlarmCount: - type: object - required: - - criticalCount - - majorCount - - minorCount - - warningCount - - indeterminateCount - - clearedCount - properties: - criticalCount: - type: integer - majorCount: - type: integer - minorCount: - type: integer - warningCount: - type: integer - indeterminateCount: - type: integer - clearedCount: - type: integer - Comment: - type: object - properties: - commentTime: - $ref: '#/components/schemas/DateTime' - commentUserId: - type: string - commentSystemId: - type: string - commentText: - type: string - Comments: - description: >- - Collection of comments. The comment identifiers are allocated by the - MnS producer and used as key in the map. - type: object - additionalProperties: - $ref: '#/components/schemas/Comment' - Subscription: - type: object - properties: - consumerReference: - $ref: '#/components/schemas/Uri' - timeTick: - $ref: '#/components/schemas/Long' - filter: - $ref: '#/components/schemas/Filter' diff --git a/OpenAPI/genericNrm.yaml b/OpenAPI/genericNrm.yaml deleted file mode 100644 index 0911920a2..000000000 --- a/OpenAPI/genericNrm.yaml +++ /dev/null @@ -1,1606 +0,0 @@ -openapi: 3.0.1 -info: - title: Generic NRM - version: 16.4.0 - description: >- - OAS 3.0.1 specification of the Generic NRM - © 2020, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). - All rights reserved. -externalDocs: - description: 3GPP TS 28.623 V16.4.0; Generic NRM - url: http://www.3gpp.org/ftp/Specs/archive/28_series/28.623/ -paths: {} -components: - schemas: - -#-------- Definition of types----------------------------------------------------- - - DateTime: - type: string - format: date-time - Dn: - type: string - maxLength: 400 - DnList: - type: array - items: - $ref: '#/components/schemas/Dn' - Mcc: - type: string - pattern: '^[0-9]{3}$' - Mnc: - type: string - pattern: '^[0-9]{2,3}$' - AdministrativeState: - type: string - enum: - - LOCKED - - UNLOCKED - OperationalState: - type: string - enum: - - ENABLED - - DISABLED - UsageState: - type: string - enum: - - IDEL - - ACTIVE - - BUSY - RegistrationState: - type: string - enum: - - REGISTERED - - DEREGISTERED - SetOfMcc: - type: array - items: - $ref: '#/components/schemas/Mcc' - ManagedElementType: - type: string - ManagedElementTypeList: - type: array - items: - $ref: '#/components/schemas/ManagedElementType' - VnfParameter: - type: object - properties: - vnfInstanceId: - type: string - vnfdId: - type: string - flavourId: - type: string - autoScalable: - type: boolean - VnfParametersList: - type: array - items: - $ref: '#/components/schemas/VnfParameter' - SiteLatitude: - type: number - format: float - minimum: -90 - maximum: 90 - SiteLongitude: - type: number - format: float - minimum: -180 - maximum: 180 - PeeParameter: - type: object - properties: - siteIdentification: - type: string - siteDescription: - type: string - siteLatitude: - $ref: '#/components/schemas/SiteLatitude' - siteLongitude: - $ref: '#/components/schemas/SiteLongitude' - equipmentType: - type: string - environmentType: - type: string - powerInterface: - type: string - PeeParametersList: - type: array - items: - $ref: '#/components/schemas/PeeParameter' - MonitoringGPList: - type: array - items: - type: integer - ThresholdInfoList: - type: array - items: - $ref: '#/components/schemas/ThresholdInfo' - ThresholdInfo: - type: object - properties: - measurementType: - type: string - direction: - $ref: '#/components/schemas/Direction' - thresholdPack: - $ref: '#/components/schemas/ThresholdPack' - Direction: - enum: - - Increasing - - Decreasing - ThresholdPack: - type: array - items: - $ref: '#/components/schemas/ThresholdPackElement' - ThresholdPackElement: - type: object - properties: - thresholdLevel: - type: integer - thresholdValue: - type: number - hysteresis: - type: number - Operation: - type: object - properties: - name: - type: string - allowedNFTypes: - $ref: '#/components/schemas/NFType' - operationSemantics: - $ref: '#/components/schemas/OperationSemantics' - OperationList: - type: array - items: - $ref: '#/components/schemas/Operation' - NFType: - type: string - description: ' NF name defined in TS 23.501' - enum: - - NRF - - UDM - - AMF - - SMF - - AUSF - - NEF - - PCF - - SMSF - - NSSF - - UDR - - LMF - - GMLC - - 5G_EIR - - SEPP - - UPF - - N3IWF - - AF - - UDSF - - DN - Fqdn: - type: string - OperationSemantics: - type: string - enum: - - REQUEST_RESPONSE - - SUBSCRIBE_NOTIFY - SAP: - type: object - properties: - host: - $ref: '#/components/schemas/HostAddr' - port: - type: integer - NFServiceType: - type: string - enum: - - Namf_Communication - - Namf_EventExposure - - Namf_MT - - Namf_Location - - Nsmf_PDUSession - - Nsmf_EventExposure - - Others - HostAddr: - oneOf: - - $ref: '#/components/schemas/Ipv4Addr' - - $ref: '#/components/schemas/Ipv6Addr' - - $ref: '#/components/schemas/Fqdn' - Ipv4Addr: - type: string - pattern: '^(([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])\.){3}([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])$' - example: '198.51.100.1' - Ipv4AddrRm: - type: string - pattern: '^(([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])\.){3}([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])$' - example: '198.51.100.1' - nullable: true - Ipv6Addr: - type: string - allOf: - - pattern: '^((:|(0?|([1-9a-f][0-9a-f]{0,3}))):)((0?|([1-9a-f][0-9a-f]{0,3})):){0,6}(:|(0?|([1-9a-f][0-9a-f]{0,3})))$' - - pattern: '^((([^:]+:){7}([^:]+))|((([^:]+:)*[^:]+)?::(([^:]+:)*[^:]+)?))$' - example: '2001:db8:85a3::8a2e:370:7334' - Ipv6AddrRm: - type: string - allOf: - - pattern: '^((:|(0?|([1-9a-f][0-9a-f]{0,3}))):)((0?|([1-9a-f][0-9a-f]{0,3})):){0,6}(:|(0?|([1-9a-f][0-9a-f]{0,3})))$' - - pattern: '^((([^:]+:){7}([^:]+))|((([^:]+:)*[^:]+)?::(([^:]+:)*[^:]+)?))$' - example: '2001:db8:85a3::8a2e:370:7334' - nullable: true - Ipv6Prefix: - type: string - allOf: - - pattern: '^((:|(0?|([1-9a-f][0-9a-f]{0,3}))):)((0?|([1-9a-f][0-9a-f]{0,3})):){0,6}(:|(0?|([1-9a-f][0-9a-f]{0,3})))(\/(([0-9])|([0-9]{2})|(1[0-1][0-9])|(12[0-8])))$' - - pattern: '^((([^:]+:){7}([^:]+))|((([^:]+:)*[^:]+)?::(([^:]+:)*[^:]+)?))(\/.+)$' - example: '2001:db8:abcd:12::0/64' - Uri: - type: string - TransportProtocol: - anyOf: - - type: string - enum: - - TCP - - type: string - SupportedPerfMetricGroup: - type: object - properties: - performanceMetrics: - type: array - items: - type: string - granularityPeriods: - type: array - items: - type: integer - minimum: 1 - reportingMethods: - type: array - items: - type: string - enum: - - FILE_BASED_LOC_SET_BY_PRODUCER - - FILE_BASED_LOC_SET_BY_CONSUMER - - STREAM_BASED - ReportingCtrl: - oneOf: - - type: object - properties: - fileReportingPeriod: - type: integer - - type: object - properties: - fileReportingPeriod: - type: integer - fileLocation: - $ref: '#/components/schemas/Uri' - - type: object - properties: - streamTarget: - $ref: '#/components/schemas/Uri' - Scope: - type: object - properties: - scopeType: - type: string - enum: - - BASE_ONLY - - BASE_ALL - - BASE_NTH_LEVEL - - BASE_SUBTREE - scopeLevel: - type: integer - NotificationType: - type: string - enum: - - notifyMOICreation - - notifyMOIDeletion - - notifyMOIAttributeValueChanges - - notifyEvent - - notifyNewAlarm - - notifyChangedAlarm - - notifyAckStateChanged - - notifyComments - - notifyCorrelatedNotificationChanged - - notifyChangedAlarmGeneral - - notifyAlarmListRebuilt - - notifyPotentialFaultyAlarmList - - notifyFileReady - - notifyFilePreparationError - - notifyThresholdCrossing - NotificationTypes: - type: array - items: - $ref: '#/components/schemas/NotificationType' - -#-------- Definition of types used in Trace control NRM fragment------------------ - - tjJobType-Type: - type: string - description: Specifies whether the TraceJob represents only MDT, Logged MBSFN MDT, Trace or a combined Trace and MDT job. Applicable for Trace, MDT, RCEF and RLF reporting. See 3GPP TS 32.422 clause 5.9a for additional details. - enum: - - IMMEDIATE_MDT_ONLY - - LOGGED_MDT_ONLY - - TRACE_ONLY - - IMMEDIATE_MDT AND TRACE - - RLF_REPORT_ONLY - - RCEF_REPORT_ONLY - - LOGGED_MBSFN_MDT - - tjListOfInterfaces-Type: - description: The interfaces to be recorded in the Network Element. See 3GPP TS 32.422 clause 5.5 for additional details. - type: object - properties: - MSCServerInterfaces: - type: array - items: - type: string - enum: - - A - - Iu-CS - - Mc - - MAP-G - - MAP-B - - MAP-E - - MAP-F - - MAP-D - - MAP-C - - CAP - MGWInterfaces: - type: array - items: - type: string - enum: - - Mc - - Nb-UP - - Iu-UP - RNCInterfaces: - type: array - items: - type: string - enum: - - Iu-CS - - Iu-PS - - Iur - - Iub - - Uu - SGSNInterfaces: - type: array - items: - type: string - enum: - - Gb - - Iu-PS - - Gn - - MAP-Gr - - MAP-Gd - - MAP-Gf - - Ge - - Gs - - S6d - - S4 - - S3 - - S13 - GGSNInterfaces: - type: array - items: - type: string - enum: - - Gn - - Gi - - Gmb - S-CSCFInterfaces: - type: array - items: - type: string - enum: - - Mw - - Mg - - Mr - - Mi - P-CSCFInterfaces: - type: array - items: - type: string - enum: - - Gm - - Mw - I-CSCFInterfaces: - type: array - items: - type: string - enum: - - Cx - - Dx - - Mg - - Mw - MRFCInterfaces: - type: array - items: - type: string - enum: - - Mp - - Mr - MGCFInterfaces: - type: array - items: - type: string - enum: - - Mg - - Mj - - Mn - IBCFInterfaces: - type: array - items: - type: string - enum: - - Ix - - Mx - E-CSCFInterfaces: - type: array - items: - type: string - enum: - - Mw - - Ml - - Mm - - Mi/Mg - BGCFInterfaces: - type: array - items: - type: string - enum: - - Mi - - Mj - - Mk - ASInterfaces: - type: array - items: - type: string - enum: - - Dh - - Sh - - ISC - - Ut - HSSInterfaces: - type: array - items: - type: string - enum: - - MAP-C - - MAP-D - - Gc - - Gr - - Cx - - S6d - - S6a - - Sh - EIRInterfaces: - type: array - items: - type: string - enum: - - MAP-F - - S13 - - MAP-Gf - BM-SCInterfaces: - type: array - items: - type: string - enum: - - Gmb - MMEInterfaces: - type: array - items: - type: string - enum: - - S1-MME - - S3 - - S6a - - S10 - - S11 - - S13 - SGWInterfaces: - type: array - items: - type: string - enum: - - S4 - - S5 - - S8 - - S11 - - Gxc - PDN_GWInterfaces: - type: array - items: - type: string - enum: - - S2a - - S2b - - S2c - - S5 - - S6b - - Gx - - S8 - - SGi - eNBInterfaces: - type: array - items: - type: string - enum: - - S1-MME - - X2 - en-gNBInterfaces: - type: array - items: - type: string - enum: - - S1-MME - - X2 - - Uu - - F1-C - - E1 - AMFInterfaces: - type: array - items: - type: string - enum: - - N1 - - N2 - - N8 - - N11 - - N12 - - N14 - - N15 - - N20 - - N22 - - N26 - AUSFInterfaces: - type: array - items: - type: string - enum: - - N12 - - N13 - NEFInterfaces: - type: array - items: - type: string - enum: - - N29 - - N30 - - N33 - NRFInterfaces: - type: array - items: - type: string - enum: - - N27 - NSSFInterfaces: - type: array - items: - type: string - enum: - - N22 - - N31 - PCFInterfaces: - type: array - items: - type: string - enum: - - N5 - - N7 - - N15 - SMFInterfaces: - type: array - items: - type: string - enum: - - N4 - - N7 - - N10 - - N11 - - S5-C - SMSFInterfaces: - type: array - items: - type: string - enum: - - N20 - - N21 - UDMInterfaces: - type: array - items: - type: string - enum: - - N8 - - N10 - - N13 - - N21 - UPFInterfaces: - type: array - items: - type: string - enum: - - N4 - ng-eNBInterfaces: - type: array - items: - type: string - enum: - - NG-C - - Xn-C - - Uu - gNB-CU-CPInterfaces: - type: array - items: - type: string - enum: - - NG-C - - Xn-C - - Uu - - F1-C - - E1 - - X2-C - gNB-CU-UPInterfaces: - type: array - items: - type: string - enum: - - E1 - gNB-DUInterfaces: - type: array - items: - type: string - enum: - - F1-C - - tjListOfNeTypes-Type: - description: The Network Element types where Trace Session activation is needed. See 3GPP TS 32.422 clause 5.4 for additional details. - type: array - items: - type: string - enum: - - MSC_SERVER - - SGSN - - MGW - - GGSN - - RNC - - BM_SC - - MME - - SGW - - PGW - - ENB - - EN_GNB - - GNB_CU_CP - - GNB_CU_UP - - GNB_DU - - tjPLMNTaget-Type: - type: object - description: The PLMN for which sessions shall be selected in the Trace Session in case of management based activation when several PLMNs are supported in the RAN (this means that shared cells and not shared cells are allowed for the specified PLMN. Note that the PLMN Target might differ from the PLMN specified in the Trace Reference, as that specifies the PLMN that is containing the management system requesting the Trace Session from the NE. See 3GPP TS 32.422 clause 5.9b for additional details. - properties: - mcc: - $ref: '#/components/schemas/Mcc' - mnc: - $ref: '#/components/schemas/Mnc' - required: - - mcc - - mnc - - tjStreamingTraceConsumerURI-Type: - type: string - description: The URI of the Trace Reporting MnS consumer (see 3GPP TS 28.532) to which the Trace records shall be sent. See 3GPP TS 32.422 clause 5.9 for additional details. - format: uri - - tjTraceCollectionEntityAddress-Type: - description: The IP address to which the Trace records shall be transferred. See 3GPP TS 32.422 clause 5.9 for additional details. - oneOf: - - $ref: '#/components/schemas/Ipv4Addr' - - $ref: '#/components/schemas/Ipv6Addr' - - tjTraceDepth-Type: - description: Specifies how detailed information should be recorded in the Network Element. The Trace Depth is a paremeter for Trace Session level, i.e., the Trace Depth is the same for all of the NEs to be traced in the same Trace Session. See 3GPP TS 32.422 clause 5.3 for additional details. - type: string - enum: - - MINIMUM - - MEDIUM - - MAXIMUM - - VENDORMINIMUM - - VENDORMEDIUM - - VENDORMAXIMUM - - tjTraceReference-Type: - type: object - description: The Trace Reference parameter shall be globally unique, therefore the Trace Reference shall compose as follows - MCC+MNC+Trace ID, where the MCC and MNC are coming with the Trace activation request from the management system to identify one PLMN containing the management system, and Trace ID is a 3 byte Octet String. See 3GPP TS 32.422 clause 5.6 for additional details. - properties: - mcc: - $ref: '#/components/schemas/Mcc' - mnc: - $ref: '#/components/schemas/Mnc' - traceId: - type: integer - required: - - mcc - - mnc - - traceId - - tjTraceReportingFormat-Type: - type: string - description: Specifies whether file-based or streaming reporting shall be used for this Trace Session. See 3GPP TS 32.422 clause 5.11 for additional details. - enum: - - FILE-BASED - - STREAMING - - tjTraceTarget-Type: - type: string - description: Type of trace target. For additional details see 3GPP TS 32.422. - enum: - - IMSI - - IMEI - - IMEISV - - PUBLIC_ID - - UTRAN_CELL - - E-UTRAN_CELL - - NG-RAN_CELL - - eNB - - RNC - - gNB - - tjTriggeringEvent-Type: - type: object - description: Specifies when to start a Trace Recording Session and which message shall be recorded first, when to stop a Trace Recording Session and which message shall be recorded last respectively. See 3GPP TS 32.422 clause 5.1 for additional detials. - properties: - NetworkElement: - type: string - enum: - - MSC_SERVER - - SGSN - - MGW - - GGSN - - BM_SC - - MME - - SGW - - PGW - - AMF - - SMF - - PCF - - UPF - EventBitmap: - type: integer - required: - - NetworkElement - - EventBitmap - - tjMDTAnonymizationOfData-Type: - description: Specifies level of MDT anonymization. For additional details see 3GPP TS 32.422 clause 5.10.12. - type: string - enum: - - NO_IDENTITY - - TAC_OF_IMEI - - tjMDTAreaConfigurationForNeighCell-Type: - description: Used for logged NR MDT and defines the area for which UE is requested to perform measurement logging for neighbour cells which have list of frequencies. For additional details see 3GPP TS 32.422 clause 5.10.26. - type: array - items: - type: object - properties: - frequency: - type: string - cell: - type: string - - tjMDTAreaScope-Type: - description: defines the area in terms or Cells or Tracking Area/Routing Area/Location Area where the MDT data collection shall take place. For additional details see 3GPP TS 32.422 clause 5.10.2. - allOf: - - $ref: '#/components/schemas/DnList' - - tjMDTCollectionPeriodRrmLte-Type: - description: See details in 3GPP TS 32.422 clause 5.10.20. - type: string - enum: - - 250ms - - 500ms - - 1000ms - - 2000ms - - 3000ms - - 4000ms - - 6000ms - - 8000ms - - 12000ms - - 16000ms - - 20000ms - - 24000ms - - 28000ms - - 32000ms - - 64000ms - - tjMDTCollectionPeriodRrmUmts-Type: - description: See details in 3GPP TS 32.422 clause 5.10.21. - type: string - enum: - - 1024ms - - 1280ms - - 2048ms - - 2560ms - - 5120ms - - 10240ms - - 1min - - tjMDTEventListForTriggeredMeasurement-Type: - description: See details in 3GPP TS 32.422 clause 5.10.28. - type: string - enum: - - OUT_OF_COVERAGE - - A2_EVENT - - tjMDTEventThreshold-Type: - description: See details in 3GPP TS 32.422 clause 5.10.7, 5.10.7a, 5.10.13 and 5.10.14. - type: object - properties: - EventThresholdRSRP: - type: integer - minimum: 0 - maximum: 97 - EventThresholdRSRQ: - type: integer - minimum: 0 - maximum: 34 - EventThreshold1F: - type: object - properties: - CPICH_RSCP: - type: integer - minimum: -120 - maximum: 25 - CPICH_EcNo: - type: integer - minimum: -24 - maximum: 0 - PathLoss: - type: integer - minimum: 30 - maximum: 165 - EventThreshold1I: - type: integer - minimum: -120 - maximum: 25 - - tjMDTListOfMeasurements-Type: - description: See details in 3GPP TS 32.422 clause 5.10.3 for details. - type: object - properties: - UMTS: - type: array - items: - type: string - enum: - - M1 - - M2 - - M3 - - M4 - - M5 - - M6_DL - - M6_UL - - M7_DL - - M7_UL - LTE: - type: array - items: - type: string - enum: - - M1 - - M2 - - M3 - - M4 - - M5 - - M1_EVENT_TRIGGERED - - M6 - - M7 - - M8 - - M9 - NR: - type: array - items: - type: string - enum: - - M1 - - M2 - - M3 - - M4 - - M5 - - M6 - - M7 - - M8 - - M9 - - tjMDTLoggingDuration-Type: - description: See details in 3GPP TS 32.422 clause 5.10.9. - type: string - enum: - - 600s - - 1200s - - 2400s - - 3600s - - 5400s - - 7200s - - tjMDTLoggingInterval-Type: - description: See details in 3GPP TS 32.422 clause 5.10.8. - type: string - enum: - - 1.28s - - 2.56s - - 5.12s - - 10.24s - - 20.48s - - 30.72s - - 40.96s - - 61.44s - - tjMDTMBSFNAreaList-Type: - description: See details in 3GPP TS 32.422 clause 5.10.25. - type: array - items: - type: object - properties: - mbsfnAreaId: - type: integer - minimum: 1 - earfcn: - type: integer - minimum: 1 - required: - - mbsfnAreaId - - earfcn - - tjMDTMeasurementPeriodLTE-Type: - description: See details in 3GPP TS 32.422 clause 5.10.23. - type: string - enum: - - 1024ms - - 1280ms - - 2048ms - - 2560ms - - 5120ms - - 10240ms - - 1min - - tjMDTMeasurementPeriodUMTS-Type: - description: See details in 3GPP TS 32.422 clause 5.10.22. - type: string - enum: - - 250ms - - 500ms - - 1000ms - - 2000ms - - 3000ms - - 4000ms - - 6000ms - - 8000ms - - 12000ms - - 16000ms - - 20000ms - - 24000ms - - 28000ms - - 32000ms - - 64000ms - - tjMDTMeasurementQuantity-Type: - description: See details in 3GPP TS 32.422 clause 5.10.15. - type: string - enum: - - CPICH_EcNo - - CPICH_RSCP - - PathLoss - - tjMDTPLMList-Type: - description: See details in 3GPP TS 32.422 clause 5.10.24. - type: array - items: - type: object - properties: - mcc: - $ref: '#/components/schemas/Mcc' - mnc: - $ref: '#/components/schemas/Mnc' - required: - - mcc - - mnc - maxItems: 16 - - tjMDTPositioningMethod-Type: - description: See details in 3GPP TS 32.422 clause 5.10.19. - type: string - enum: - - GNSS - - E-CELL_ID - - tjMDTReportAmount-Type: - description: See details in 3GPP TS 32.422 clause 5.10.6. - type: string - enum: - - 1 - - 2 - - 4 - - 8 - - 16 - - 32 - - 64 - - INFINITY - - tjMDTReportingTrigger-Type: - description: See details in 3GPP TS 32.422 clause 5.10.4. - type: array - items: - type: string - enum: - - PERIODICAL - - A2_FOR_LTE - - 1F_FOR_UMTS - - 1I_FOR_UMTS_MCPS_TDD - - A2_TRIGGERED_PERIODIC_FOR_LTE - - ALL_CONFIGURED_RRM_FOR_LTE - - ALL_CONFIGURED_RRM_FOR_UMTS - - tjMDTReportInterval-Type: - description: See details in 3GPP TS 32.422 clause 5.10.5. - type: string - enum: - - 250ms - - 500ms - - 1000ms - - 2000ms - - 3000ms - - 4000ms - - 6000ms - - 8000ms - - 12000ms - - 16000ms - - 20000ms - - 24000ms - - 28000ms - - 32000ms - - 64000ms - - 120ms - - 240ms - - 480ms - - 640ms - - 1024ms - - 2048ms - - 5120ms - - 10240ms - - 60000ms - - 360000ms - - 720000ms - - 1800000ms - - 3600000ms - - tjMDTReportType-Type: - description: Report type for logged NR MDT. See details in 3GPP TS 32.422 clause 5.10.27. - type: string - enum: - - PERIODICAL - - EVENT_TRIGGERED - - tjMDTSensorInformation-Type: - description: See details in 3GPP TS 32.422 clause 5.10.29. - type: array - items: - type: string - enum: - - BAROMETRIC_PRESSURE - - UE_SPEED - - UE_ORIENTATION - - tjMDTTraceCollectionEntityID-Type: - description: See details in 3GPP TS 32.422 clause 5.10.11. Only tceID value may be sent over the air to the UE being configured for Logged MDT. - type: object - properties: - tceID: - type: integer - tcePLMN: - type: object - properties: - mcc: - $ref: '#/components/schemas/Mcc' - mnc: - $ref: '#/components/schemas/Mnc' - required: - - mcc - - mnc - tceAddress: - oneOf: - - $ref: '#/components/schemas/tjTraceCollectionEntityAddress-Type' - - $ref: '#/components/schemas/tjStreamingTraceConsumerURI-Type' - required: - - tceID - - tcePLMN - - tceAddress - - -#-------- end of Definition of types used in Trace control NRM fragment ---------- - - -#-------- Definition of abstract IOC Top ----------------------------------------- - - Top-Attr: - # This definition will be deprecated, when all occurances of Top-Attr - # are replaced by Top. - type: object - properties: - id: - type: string - VsDataContainer: - $ref: '#/components/schemas/VsDataContainer-Multiple' - Top: - type: object - properties: - id: - type: string - VsDataContainer: - $ref: '#/components/schemas/VsDataContainer-Multiple' - -#-------- Definition of IOCs with new name-containments defined in other TS ------ - - SubNetwork-Attr: - type: object - properties: - dnPrefix: - type: string - userLabel: - type: string - userDefinedNetworkType: - type: string - setOfMcc: - $ref: '#/components/schemas/SetOfMcc' - priorityLabel: - type: integer - supportedPerfMetricGroups: - type: array - items: - $ref: '#/components/schemas/SupportedPerfMetricGroup' - ManagedElement-Attr: - type: object - properties: - dnPrefix: - type: string - managedElementTypeList: - $ref: '#/components/schemas/ManagedElementTypeList' - userLabel: - type: string - locationName: - type: string - managedBy: - $ref: '#/components/schemas/DnList' - vendorName: - type: string - userDefinedState: - type: string - swVersion: - type: string - priorityLabel: - type: integer - supportedPerfMetricGroups: - type: array - items: - $ref: '#/components/schemas/SupportedPerfMetricGroup' - - SubNetwork-ncO: - type: object - properties: - ManagementNode: - $ref: '#/components/schemas/ManagementNode-Multiple' - MeContext: - $ref: '#/components/schemas/MeContext-Multiple' - PerfMetricJob: - $ref: '#/components/schemas/PerfMetricJob-Multiple' - ThresholdMonitor: - $ref: '#/components/schemas/ThresholdMonitor-Multiple' - ThresholdMonitoringCapability: - $ref: '#/components/schemas/ThresholdMonitoringCapability-Single' - NtfSubscriptionControl: - $ref: '#/components/schemas/NtfSubscriptionControl-Multiple' - TraceJob: - $ref: '#/components/schemas/TraceJob-Multiple' - AlarmList: - $ref: '#/components/schemas/AlarmList-Single' - MnsRegistry: - type: array - items: - $ref: '#/components/schemas/MnsRegistry' - ManagedElement-ncO: - type: object - properties: - PerfMetricJob: - $ref: '#/components/schemas/PerfMetricJob-Multiple' - ThresholdMonitor: - $ref: '#/components/schemas/ThresholdMonitor-Multiple' - ThresholdMonitoringCapability: - $ref: '#/components/schemas/ThresholdMonitoringCapability-Single' - NtfSubscriptionControl: - $ref: '#/components/schemas/NtfSubscriptionControl-Multiple' - TraceJob: - $ref: '#/components/schemas/TraceJob-Multiple' - AlarmList: - $ref: '#/components/schemas/AlarmList-Single' - -#-------- Definition of abstract IOCs -------------------------------------------- - - ManagedFunction-Attr: - type: object - properties: - userLabel: - type: string - vnfParametersList: - $ref: '#/components/schemas/VnfParametersList' - peeParametersList: - $ref: '#/components/schemas/PeeParametersList' - priorityLabel: - type: integer - supportedPerfMetricGroups: - type: array - items: - $ref: '#/components/schemas/SupportedPerfMetricGroup' - EP_RP-Attr: - type: object - properties: - userLabel: - type: string - farEndEntity: - type: string - supportedPerfMetricGroups: - type: array - items: - $ref: '#/components/schemas/SupportedPerfMetricGroup' - - TraceJob-Attr: - type: object - description: abstract class used as a container of all TraceJob attributes - properties: - tjJobType: - $ref: '#/components/schemas/tjJobType-Type' - tjListOfInterfaces: - $ref: '#/components/schemas/tjListOfInterfaces-Type' - tjListOfNeTypes: - $ref: '#/components/schemas/tjListOfNeTypes-Type' - tjPLMNTarget: - $ref: '#/components/schemas/tjPLMNTaget-Type' - tjTraceConsumer: - oneOf: - - $ref: '#/components/schemas/tjStreamingTraceConsumerURI-Type' - - $ref: '#/components/schemas/tjTraceCollectionEntityAddress-Type' - tjTraceDepth: - $ref: '#/components/schemas/tjTraceDepth-Type' - tjTraceReference: - $ref: '#/components/schemas/tjTraceReference-Type' - tjTraceReportingFormat: - $ref: '#/components/schemas/tjTraceReportingFormat-Type' - tjTraceTarget: - $ref: '#/components/schemas/tjTraceTarget-Type' - tjTriggeringEvent: - $ref: '#/components/schemas/tjTriggeringEvent-Type' - tjMDTAnonymizationOfData: - $ref: '#/components/schemas/tjMDTAnonymizationOfData-Type' - tjMDTAreaConfigurationForNeighCell: - $ref: '#/components/schemas/tjMDTAreaConfigurationForNeighCell-Type' - tjMDTAreaScope: - $ref: '#/components/schemas/tjMDTAreaScope-Type' - tjMDTCollectionPeriodRrmLte: - $ref: '#/components/schemas/tjMDTCollectionPeriodRrmLte-Type' - tjMDTCollectionPeriodRrmUmts: - $ref: '#/components/schemas/tjMDTCollectionPeriodRrmUmts-Type' - tjMDTEventListForTriggeredMeasurement: - $ref: '#/components/schemas/tjMDTEventListForTriggeredMeasurement-Type' - tjMDTEventThreshold: - $ref: '#/components/schemas/tjMDTEventThreshold-Type' - tjMDTListOfMeasurements: - $ref: '#/components/schemas/tjMDTListOfMeasurements-Type' - tjMDTLoggingDuration: - $ref: '#/components/schemas/tjMDTLoggingDuration-Type' - tjMDTLoggingInterval: - $ref: '#/components/schemas/tjMDTLoggingInterval-Type' - tjMDTMBSFNAreaList: - $ref: '#/components/schemas/tjMDTMBSFNAreaList-Type' - tjMDTMeasurementPeriodLTE: - $ref: '#/components/schemas/tjMDTMeasurementPeriodLTE-Type' - tjMDTMeasurementPeriodUMTS: - $ref: '#/components/schemas/tjMDTMeasurementPeriodUMTS-Type' - tjMDTMeasurementQuantity: - $ref: '#/components/schemas/tjMDTMeasurementQuantity-Type' - tjMDTPLMList: - $ref: '#/components/schemas/tjMDTPLMList-Type' - tjMDTPositioningMethod: - $ref: '#/components/schemas/tjMDTPositioningMethod-Type' - tjMDTReportAmount: - $ref: '#/components/schemas/tjMDTReportAmount-Type' - tjMDTReportingTrigger: - $ref: '#/components/schemas/tjMDTReportingTrigger-Type' - tjMDTReportInterval: - $ref: '#/components/schemas/tjMDTReportInterval-Type' - tjMDTReportType: - $ref: '#/components/schemas/tjMDTReportType-Type' - tjMDTSensorInformation: - $ref: '#/components/schemas/tjMDTSensorInformation-Type' - tjMDTTraceCollectionEntityID: - $ref: '#/components/schemas/tjMDTTraceCollectionEntityID-Type' - required: - - tjJobType - - tjTraceReference - - tjTraceConsumer - - tjTraceReportingFormat - - tjTraceTarget - - ManagedFunction-ncO: - type: object - properties: - PerfMetricJob: - $ref: '#/components/schemas/PerfMetricJob-Multiple' - ThresholdMonitor: - $ref: '#/components/schemas/ThresholdMonitor-Multiple' - ThresholdMonitoringCapability: - $ref: '#/components/schemas/ThresholdMonitoringCapability-Single' - ManagedNFService: - $ref: '#/components/schemas/ManagedNFService-Multiple' - TraceJob: - $ref: '#/components/schemas/TraceJob-Multiple' - - MnsRegistry: - type: object - properties: - mnsLabel: - type: string - mnsType: - type: string - mnsVersion: - type: string - mnsAddress: - type: string - -#-------- Definition of concrete IOCs -------------------------------------------- - - VsDataContainer-Single: - type: object - properties: - id: - type: string - attributes: - type: object - properties: - vsDataType: - type: string - vsDataFormatVersion: - type: string - vsData: - nullable: true - VsDataContainer: - $ref: '#/components/schemas/VsDataContainer-Multiple' - ManagedNFService-Single: - allOf: - - $ref: '#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - type: object - properties: - userLabel: - type: string - nFServiceType: - $ref: '#/components/schemas/NFServiceType' - sAP: - $ref: '#/components/schemas/SAP' - operations: - $ref: '#/components/schemas/OperationList' - administrativeState: - $ref: '#/components/schemas/AdministrativeState' - operationalState: - $ref: '#/components/schemas/OperationalState' - usageState: - $ref: '#/components/schemas/UsageState' - registrationState: - $ref: '#/components/schemas/RegistrationState' - ManagementNode-Single: - allOf: - - $ref: '#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - type: object - properties: - userLabel: - type: string - managedElements: - $ref: '#/components/schemas/DnList' - vendorName: - type: string - userDefinedState: - type: string - locationName: - type: string - swVersion: - type: string - MeContext-Single: - allOf: - - $ref: '#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - type: object - properties: - dnPrefix: - type: string - PerfMetricJob-Single: - allOf: - - $ref: '#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - type: object - properties: - administrativeState: - $ref: '#/components/schemas/AdministrativeState' - operationalState: - $ref: '#/components/schemas/OperationalState' - perfMetricJobGroupId: - type: string - performanceMetrics: - type: array - items: - type: string - granularityPeriod: - type: integer - minimum: 1 - objectInstances: - $ref: '#/components/schemas/DnList' - rootObjectInstances: - $ref: '#/components/schemas/DnList' - reportingCtrl: - $ref: '#/components/schemas/ReportingCtrl' - ThresholdMonitoringCapability-Single: - allOf: - - $ref: '#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - type: object - properties: - supportedMonitoringGPs: - $ref: '#/components/schemas/MonitoringGPList' - ThresholdMonitor-Single: - allOf: - - $ref: '#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - type: object - properties: - thresholdInfoList: - $ref: '#/components/schemas/ThresholdInfoList' - monitoringGP: - type: integer - monitoringNotifTarget: - type: string - monitoredIOCName: - type: string - monitoredObjectDNs: - $ref: '#/components/schemas/DnList' - NtfSubscriptionControl-Single: - allOf: - - $ref: '#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - type: object - properties: - notificationRecipientAddress: - $ref: '#/components/schemas/Uri' - notificationTypes: - $ref: '#/components/schemas/NotificationTypes' - scope: - $ref: '#/components/schemas/Scope' - notificationFilter: - type: string - HeartbeatControl: - $ref: '#/components/schemas/HeartbeatControl-Single' - HeartbeatControl-Single: - allOf: - - $ref: '#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - type: object - properties: - heartbeatNtfPeriod: - type: integer - triggerHeartbeatNtf: - type: boolean - TraceJob-Single: - allOf: - - $ref: '#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - $ref: '#/components/schemas/TraceJob-Attr' - - AlarmList-Single: - allOf: - - $ref: '#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - type: object - properties: - administrativeState: - $ref: '#/components/schemas/AdministrativeState' - operationalState: - $ref: '#/components/schemas/OperationalState' - numOfAlarmRecords: - type: integer - lastModification: - $ref: '#/components/schemas/DateTime' - alarmRecords: - description: >- - This resource represents a map of alarm records. - The alarmIds are used as keys in the map. - type: object - additionalProperties: - $ref: 'faultMnS.yaml#/components/schemas/AlarmRecord' - -#-------- Definition of JSON arrays for name-contained IOCs ---------------------- - - VsDataContainer-Multiple: - type: array - items: - $ref: '#/components/schemas/VsDataContainer-Single' - ManagedNFService-Multiple: - type: array - items: - $ref: '#/components/schemas/ManagedNFService-Single' - ManagementNode-Multiple: - type: array - items: - $ref: '#/components/schemas/ManagementNode-Single' - MeContext-Multiple: - type: array - items: - $ref: '#/components/schemas/MeContext-Single' - PerfMetricJob-Multiple: - type: array - items: - $ref: '#/components/schemas/PerfMetricJob-Single' - ThresholdMonitor-Multiple: - type: array - items: - $ref: '#/components/schemas/ThresholdMonitor-Single' - NtfSubscriptionControl-Multiple: - type: array - items: - $ref: '#/components/schemas/NtfSubscriptionControl-Single' - TraceJob-Multiple: - type: array - items: - $ref: '#/components/schemas/TraceJob-Single' - -#-------- Definitions in TS 28.623 for TS 28.532 --------------------------------- - - resources-genericNrm: - oneOf: - - - $ref: '#/components/schemas/VsDataContainer-Single' - - - $ref: '#/components/schemas/ManagementNode-Single' - - $ref: '#/components/schemas/MeContext-Single' - - - $ref: '#/components/schemas/ManagedNFService-Single' - - - $ref: '#/components/schemas/PerfMetricJob-Single' - - - $ref: '#/components/schemas/ThresholdMonitoringCapability-Single' - - $ref: '#/components/schemas/ThresholdMonitor-Single' - - - $ref: '#/components/schemas/NtfSubscriptionControl-Single' - - $ref: '#/components/schemas/HeartbeatControl-Single' - - $ref: '#/components/schemas/TraceJob-Single' - - - $ref: '#/components/schemas/AlarmList-Single' diff --git a/OpenAPI/heartbeatNtf.yaml b/OpenAPI/heartbeatNtf.yaml deleted file mode 100644 index afde5066d..000000000 --- a/OpenAPI/heartbeatNtf.yaml +++ /dev/null @@ -1,23 +0,0 @@ -openapi: 3.0.1 -info: - title: Heartbeat notification - version: 16.3.0 - description: >- - OAS 3.0.1 specification of the heartbeat notification - © 2020, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). - All rights reserved. -externalDocs: - description: 3GPP TS 28.532 V16.3.0; Heartbeat notification - url: http://www.3gpp.org/ftp/Specs/archive/28_series/28.6532/ -paths: {} -components: - schemas: - hearbeatNtfPeriod-Type: - type: integer - notifyHeartbeat-NotifType: - allOf: - - $ref: 'provMnS.yaml#/components/schemas/header-Type' - - type: object - properties: - heartbeatNtfPeriod: - $ref: '#/components/schemas/hearbeatNtfPeriod-Type' diff --git a/OpenAPI/nrNrm.yaml b/OpenAPI/nrNrm.yaml deleted file mode 100644 index 850106631..000000000 --- a/OpenAPI/nrNrm.yaml +++ /dev/null @@ -1,1905 +0,0 @@ -openapi: 3.0.1 -info: - title: NR NRM - version: 17.4.0 - description: >- - OAS 3.0.1 specification of the NR NRM - © 2020, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). - All rights reserved. -externalDocs: - description: 3GPP TS 28.541; 5G NRM, NR NRM - url: http://www.3gpp.org/ftp/Specs/archive/28_series/28.541/ -paths: {} -components: - schemas: - -#-------- Definition of types----------------------------------------------------- - - GnbId: - type: string - GnbIdLength: - type: integer - minimum: 22 - maximum: 32 - GnbName: - type: string - maxLength: 150 - GnbDuId: - type: number - minimum: 0 - maximum: 68719476735 - GnbCuUpId: - type: number - minimum: 0 - maximum: 68719476735 - - Sst: - type: integer - maximum: 255 - Snssai: - type: object - properties: - sst: - $ref: '#/components/schemas/Sst' - sd: - type: string - SnssaiList: - type: array - items: - $ref: '#/components/schemas/Snssai' - - Mnc: - type: string - pattern: '[0-9]{3}|[0-9]{2}' - PlmnId: - type: object - properties: - mcc: - $ref: 'genericNrm.yaml#/components/schemas/Mcc' - mnc: - $ref: '#/components/schemas/Mnc' - PlmnIdList: - type: array - items: - $ref: '#/components/schemas/PlmnId' - PlmnInfo: - type: object - properties: - plmnId": - $ref: '#/components/schemas/PlmnId' - snssai: - $ref: '#/components/schemas/Snssai' - PlmnInfoList: - type: array - items: - $ref: '#/components/schemas/PlmnInfo' - cagId: - type: string - nid: - type: string - NpnIdentity: - type: object - properties: - plmnId": - $ref: '#/components/schemas/PlmnId' - cagidList: - $ref: '#/components/schemas/cagId' - nidList: - $ref: '#/components/schemas/nid' - NpnIdentityList: - type: array - items: - $ref: '#/components/schemas/NpnIdentity' - GGnbId: - type: string - pattern: '^[0-9]{3}[0-9]{2,3}-(22|23|24|25|26|27|28|29|30|31|32)-[0-9]{1,10}' - GEnbId: - type: string - pattern: '^[0-9]{3}[0-9]{2,3}-(18|20|21|22)-[0-9]{1,7}' - - GGnbIdList: - type: array - items: - $ref: '#/components/schemas/GGnbId' - - GEnbIdList: - type: array - items: - $ref: '#/components/schemas/GEnbId' - - NrPci: - type: integer - maximum: 503 - NrTac: - type: integer - maximum: 16777215 - Tai: - type: object - properties: - plmnId: - $ref: '#/components/schemas/PlmnId' - nrTac: - $ref: '#/components/schemas/NrTac' - - BackhaulAddress: - type: object - properties: - gnbId: - $ref: '#/components/schemas/GnbId' - tai: - $ref: "#/components/schemas/Tai" - MappingSetIDBackhaulAddress: - type: object - properties: - setID: - type: integer - backhaulAddress: - $ref: '#/components/schemas/BackhaulAddress' - IntraRatEsActivationOriginalCellLoadParameters: - type: object - properties: - loadThreshold: - type: integer - timeDuration: - type: integer - IntraRatEsActivationCandidateCellsLoadParameters: - type: object - properties: - loadThreshold: - type: integer - timeDuration: - type: integer - IntraRatEsDeactivationCandidateCellsLoadParameters: - type: object - properties: - loadThreshold: - type: integer - timeDuration: - type: integer - EsNotAllowedTimePeriod: - type: object - properties: - startTimeandendTime: - type: string - periodOfDay: - type: string - daysOfWeekList: - type: string - listoftimeperiods: - type: string - InterRatEsActivationOriginalCellParameters: - type: object - properties: - loadThreshold: - type: integer - timeDuration: - type: integer - InterRatEsActivationCandidateCellParameters: - type: object - properties: - loadThreshold: - type: integer - timeDuration: - type: integer - InterRatEsDeactivationCandidateCellParameters: - type: object - properties: - loadThreshold: - type: integer - timeDuration: - type: integer - - UeAccProbilityDist: - type: object - properties: - targetProbability: - type: integer - numberofpreamblessent: - type: integer - - UeAccDelayProbilityDist: - type: object - properties: - targetProbability: - type: integer - accessdelay: - type: integer - - NRPciList: - type: object - properties: - NRPci: - type: integer - - CSonPciList: - type: object - properties: - NRPci: - type: integer - - MaximumDeviationHoTrigger: - type: integer - minimum: -20 - maximum: 20 - - MinimumTimeBetweenHoTriggerChange: - type: integer - minimum: 0 - maximum: 604800 - - TstoreUEcntxt: - type: integer - minimum: 0 - maximum: 1023 - - CellState: - type: string - enum: - - IDLE - - INACTIVE - - ACTIVE - CyclicPrefix: - type: string - enum: - - '15' - - '30' - - '60' - - '120' - TxDirection: - type: string - enum: - - DL - - UL - - DL and UL - BwpContext: - type: string - enum: - - DL - - UL - - SUL - IsInitialBwp: - type: string - enum: - - INITIAL - - OTHER - - SUL - QuotaType: - type: string - enum: - - STRICT - - FLOAT - IsESCoveredBy: - type: string - enum: - - NO - - PARTIAL - - FULL - RrmPolicyMember: - type: object - properties: - plmnId: - $ref: '#/components/schemas/PlmnId' - snssai: - $ref: '#/components/schemas/Snssai' - RrmPolicyMemberList: - type: array - items: - $ref: '#/components/schemas/RrmPolicyMember' - AddressWithVlan: - type: object - properties: - ipv4Address: - $ref: 'genericNrm.yaml#/components/schemas/Ipv4Addr' - ipv6Address: - $ref: 'genericNrm.yaml#/components/schemas/Ipv6Addr' - vlanId: - type: integer - minimum: 0 - maximum: 4096 - LocalAddress: - type: object - properties: - addressWithVlan: - $ref: '#/components/schemas/AddressWithVlan' - port: - type: integer - minimum: 0 - maximum: 65535 - RemoteAddress: - type: object - properties: - ipv4Address: - $ref: 'genericNrm.yaml#/components/schemas/Ipv4Addr' - ipv6Address: - $ref: 'genericNrm.yaml#/components/schemas/Ipv6Addr' - - CellIndividualOffset: - type: object - properties: - rsrpOffsetSSB: - type: integer - rsrqOffsetSSB: - type: integer - sinrOffsetSSB: - type: integer - rsrpOffsetCSI-RS: - type: integer - rsrqOffsetCSI-RS: - type: integer - sinrOffsetCSI-RS: - type: integer - QOffsetRange: - type: integer - enum: - - -24 - - -22 - - -20 - - -18 - - -16 - - -14 - - -12 - - -10 - - -8 - - -6 - - -5 - - -4 - - -3 - - -2 - - -1 - - 0 - - 24 - - 22 - - 20 - - 18 - - 16 - - 14 - - 12 - - 10 - - 8 - - 6 - - 5 - - 4 - - 3 - - 2 - - 1 - QOffsetRangeList: - type: object - properties: - rsrpOffsetSSB: - $ref: '#/components/schemas/QOffsetRange' - rsrqOffsetSSB: - $ref: '#/components/schemas/QOffsetRange' - sinrOffsetSSB: - $ref: '#/components/schemas/QOffsetRange' - rsrpOffsetCSI-RS: - $ref: '#/components/schemas/QOffsetRange' - rsrqOffsetCSI-RS: - $ref: '#/components/schemas/QOffsetRange' - sinrOffsetCSI-RS: - $ref: '#/components/schemas/QOffsetRange' - QOffsetFreq: - type: number - TReselectionNRSf: - type: integer - enum: - - 25 - - 50 - - 75 - - 100 - SsbPeriodicity: - type: integer - enum: - - 5 - - 10 - - 20 - - 40 - - 80 - - 160 - SsbDuration: - type: integer - enum: - - 1 - - 2 - - 3 - - 4 - - 5 - SsbSubCarrierSpacing: - type: integer - enum: - - 15 - - 30 - - 120 - - 240 - CoverageShape: - type: integer - maximum: 65535 - DigitalTilt: - type: integer - minimum: -900 - maximum: 900 - DigitalAzimuth: - type: integer - minimum: -1800 - maximum: 1800 - - RSSetId: - type: integer - maximum: 4194303 - - RSSetType: - type: string - enum: - - RS1 - - RS2 - - FrequencyDomainPara: - type: object - properties: - rimRSSubcarrierSpacing: - type: integer - rIMRSBandwidth: - type: integer - nrofGlobalRIMRSFrequencyCandidates: - type: integer - rimRSCommonCarrierReferencePoint: - type: integer - rimRSStartingFrequencyOffsetIdList: - type: array - items: - type: integer - - SequenceDomainPara: - type: object - properties: - nrofRIMRSSequenceCandidatesofRS1: - type: integer - rimRSScrambleIdListofRS1: - type: array - items: - type: integer - nrofRIMRSSequenceCandidatesofRS2: - type: integer - rimRSScrambleIdListofRS2: - type: array - items: - type: integer - enableEnoughNotEnoughIndication: - type: string - enum: - - ENABLE - - DISABLE - RIMRSScrambleTimerMultiplier: - type: integer - RIMRSScrambleTimerOffset: - type: integer - - TimeDomainPara: - type: object - properties: - dlULSwitchingPeriod1: - type: string - enum: - - MS0P5 - - MS0P625 - - MS1 - - MS1P25 - - MS2 - - MS2P5 - - MS3 - - MS4 - - MS5 - - MS10 - - MS20 - symbolOffsetOfReferencePoint1: - type: integer - dlULSwitchingPeriod2: - type: string - enum: - - MS0P5 - - MS0P625 - - MS1 - - MS1P25 - - MS2 - - MS2P5 - - MS3 - - MS4 - - MS5 - - MS10 - - MS20 - symbolOffsetOfReferencePoint2: - type: integer - totalnrofSetIdofRS1: - type: integer - totalnrofSetIdofRS2: - type: integer - nrofConsecutiveRIMRS1: - type: integer - nrofConsecutiveRIMRS2: - type: integer - consecutiveRIMRS1List: - type: array - items: - type: integer - consecutiveRIMRS2List: - type: array - items: - type: integer - enablenearfarIndicationRS1: - type: string - enum: - - ENABLE - - DISABLE - enablenearfarIndicationRS2: - type: string - enum: - - ENABLE - - DISABLE - - RimRSReportInfo: - type: object - properties: - detectedSetID: - type: integer - propagationDelay: - type: integer - functionalityOfRIMRS: - type: string - enum: - - RS1 - - RS2 - - RS1forEnoughMitigation - - RS1forNotEnoughMitigation - - RimRSReportConf: - type: object - properties: - reportIndicator: - type: string - enum: - - ENABLE - - DISABLE - reportInterval: - type: integer - nrofRIMRSReportInfo: - type: integer - maxPropagationDelay: - type: integer - rimRSReportInfoList: - type: array - items: - $ref: '#/components/schemas/RimRSReportInfo' - TceMappingInfo: - type: object - properties: - TceIPAddress: - oneOf: - - $ref: 'genericNrm.yaml#/components/schemas/Ipv4Addr' - - $ref: 'genericNrm.yaml#/components/schemas/Ipv6Addr' - TceID: - type: integer - PlmnTarget: - $ref: '#/components/schemas/PlmnId' - TceMappingInfoList: - type: array - items: - $ref: '#/components/schemas/TceMappingInfo' - - -#-------- Definition of abstract IOCs -------------------------------------------- - - RrmPolicy_-Attr: - type: object - properties: - resourceType: - type: string - rRMPolicyMemberList: - $ref: '#/components/schemas/RrmPolicyMemberList' - - -#-------- Definition of concrete IOCs -------------------------------------------- - - SubNetwork-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top' - - type: object - properties: - attributes: - $ref: 'genericNrm.yaml#/components/schemas/SubNetwork-Attr' - - $ref: 'genericNrm.yaml#/components/schemas/SubNetwork-ncO' - - type: object - properties: - SubNetwork: - $ref: '#/components/schemas/SubNetwork-Multiple' - ManagedElement: - $ref: '#/components/schemas/ManagedElement-Multiple' - NRFrequency: - $ref: '#/components/schemas/NRFrequency-Multiple' - ExternalGnbCuCpFunction: - $ref: '#/components/schemas/ExternalGnbCuCpFunction-Multiple' - ExternalENBFunction: - $ref: '#/components/schemas/ExternalENBFunction-Multiple' - EUtranFrequency: - $ref: '#/components/schemas/EUtranFrequency-Multiple' - DESManagementFunction: - $ref: '#/components/schemas/DESManagementFunction-Single' - DRACHOptimizationFunction: - $ref: '#/components/schemas/DRACHOptimizationFunction-Single' - DMROFunction: - $ref: '#/components/schemas/DMROFunction-Single' - DPCIConfigurationFunction: - $ref: '#/components/schemas/DPCIConfigurationFunction-Single' - CPCIConfigurationFunction: - $ref: '#/components/schemas/CPCIConfigurationFunction-Single' - CESManagementFunction: - $ref: '#/components/schemas/CESManagementFunction-Single' - Configurable5QISet: - $ref: '5gcNrm.yaml#/components/schemas/Configurable5QISet-Multiple' - RimRSGlobal: - $ref: '#/components/schemas/RimRSGlobal-Single' - Dynamic5QISet: - $ref: '5gcNrm.yaml#/components/schemas/Dynamic5QISet-Multiple' - - ManagedElement-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top' - - type: object - properties: - attributes: - $ref: 'genericNrm.yaml#/components/schemas/ManagedElement-Attr' - - $ref: 'genericNrm.yaml#/components/schemas/ManagedElement-ncO' - - type: object - properties: - GnbDuFunction: - $ref: '#/components/schemas/GnbDuFunction-Multiple' - GnbCuUpFunction: - $ref: '#/components/schemas/GnbCuUpFunction-Multiple' - GnbCuCpFunction: - $ref: '#/components/schemas/GnbCuCpFunction-Multiple' - DESManagementFunction: - $ref: '#/components/schemas/DESManagementFunction-Single' - DRACHOptimizationFunction: - $ref: '#/components/schemas/DRACHOptimizationFunction-Single' - DMROFunction: - $ref: '#/components/schemas/DMROFunction-Single' - DPCIConfigurationFunction: - $ref: '#/components/schemas/DPCIConfigurationFunction-Single' - CPCIConfigurationFunction: - $ref: '#/components/schemas/CPCIConfigurationFunction-Single' - CESManagementFunction: - $ref: '#/components/schemas/CESManagementFunction-Single' - Configurable5QISet: - $ref: '5gcNrm.yaml#/components/schemas/Configurable5QISet-Multiple' - Dynamic5QISet: - $ref: '5gcNrm.yaml#/components/schemas/Dynamic5QISet-Multiple' - - GnbDuFunction-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' - - type: object - properties: - gnbDuId: - $ref: '#/components/schemas/GnbDuId' - gnbDuName: - $ref: '#/components/schemas/GnbName' - gnbId: - $ref: '#/components/schemas/GnbId' - gnbIdLength: - $ref: '#/components/schemas/GnbIdLength' - rimRSReportConf: - $ref: '#/components/schemas/RimRSReportConf' - - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' - - type: object - properties: - RRMPolicyRatio: - $ref: '#/components/schemas/RRMPolicyRatio-Multiple' - NrCellDu: - $ref: '#/components/schemas/NrCellDu-Multiple' - Bwp-Multiple: - $ref: '#/components/schemas/Bwp-Multiple' - NrSectorCarrier-Multiple: - $ref: '#/components/schemas/NrSectorCarrier-Multiple' - EP_F1C: - $ref: '#/components/schemas/EP_F1C-Single' - EP_F1U: - $ref: '#/components/schemas/EP_F1U-Multiple' - DRACHOptimizationFunction: - $ref: '#/components/schemas/DRACHOptimizationFunction-Single' - GnbCuUpFunction-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' - - type: object - properties: - gnbId: - $ref: '#/components/schemas/GnbId' - gnbIdLength: - $ref: '#/components/schemas/GnbIdLength' - gnbCuUpId: - $ref: '#/components/schemas/GnbCuUpId' - plmnInfoList: - $ref: '#/components/schemas/PlmnInfoList' - configurable5QISetRef: - $ref: 'genericNrm.yaml#/components/schemas/Dn' - dynamic5QISetRef: - $ref: 'genericNrm.yaml#/components/schemas/Dn' - - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' - - type: object - properties: - RRMPolicyRatio: - $ref: '#/components/schemas/RRMPolicyRatio-Multiple' - EP_E1: - $ref: '#/components/schemas/EP_E1-Single' - EP_XnU: - $ref: '#/components/schemas/EP_XnU-Multiple' - EP_F1U: - $ref: '#/components/schemas/EP_F1U-Multiple' - EP_NgU: - $ref: '#/components/schemas/EP_NgU-Multiple' - EP_X2U: - $ref: '#/components/schemas/EP_X2U-Multiple' - EP_S1U: - $ref: '#/components/schemas/EP_S1U-Multiple' - GnbCuCpFunction-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' - - type: object - properties: - gnbId: - $ref: '#/components/schemas/GnbId' - gnbIdLength: - $ref: '#/components/schemas/GnbIdLength' - gnbCuName: - $ref: '#/components/schemas/GnbName' - plmnId: - $ref: '#/components/schemas/PlmnId' - x2BlackList: - $ref: '#/components/schemas/GGnbIdList' - xnBlackList: - $ref: '#/components/schemas/GGnbIdList' - x2WhiteList: - $ref: '#/components/schemas/GGnbIdList' - xnWhiteList: - $ref: '#/components/schemas/GGnbIdList' - x2XnHOBlackList: - $ref: '#/components/schemas/GEnbIdList' - mappingSetIDBackhaulAddress: - $ref: '#/components/schemas/MappingSetIDBackhaulAddress' - tceMappingInfoList: - $ref: '#/components/schemas/TceMappingInfoList' - configurable5QISetRef: - $ref: 'genericNrm.yaml#/components/schemas/Dn' - dynamic5QISetRef: - $ref: 'genericNrm.yaml#/components/schemas/Dn' - - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' - - type: object - properties: - RRMPolicyRatio: - $ref: '#/components/schemas/RRMPolicyRatio-Multiple' - NrCellCu: - $ref: '#/components/schemas/NrCellCu-Multiple' - EP_XnC: - $ref: '#/components/schemas/EP_XnC-Multiple' - EP_E1: - $ref: '#/components/schemas/EP_E1-Multiple' - EP_F1C: - $ref: '#/components/schemas/EP_F1C-Multiple' - EP_NgC: - $ref: '#/components/schemas/EP_NgC-Multiple' - EP_X2C: - $ref: '#/components/schemas/EP_X2C-Multiple' - DANRManagementFunction: - $ref: '#/components/schemas/DANRManagementFunction-Single' - DESManagementFunction: - $ref: '#/components/schemas/DESManagementFunction-Single' - DMROFunction: - $ref: '#/components/schemas/DMROFunction-Single' - - NrCellCu-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' - - type: object - properties: - cellLocalId: - type: integer - plmnInfoList: - $ref: '#/components/schemas/PlmnInfoList' - nRFrequencyRef: - $ref: 'genericNrm.yaml#/components/schemas/Dn' - - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' - - type: object - properties: - RRMPolicyRatio: - $ref: '#/components/schemas/RRMPolicyRatio-Multiple' - NRCellRelation: - $ref: '#/components/schemas/NRCellRelation-Multiple' - EUtranCellRelation: - $ref: '#/components/schemas/EUtranCellRelation-Multiple' - NRFreqRelation: - $ref: '#/components/schemas/NRFreqRelation-Multiple' - EUtranFreqRelation: - $ref: '#/components/schemas/EUtranFreqRelation-Multiple' - DESManagementFunction: - $ref: '#/components/schemas/DESManagementFunction-Single' - DMROFunction: - $ref: '#/components/schemas/DMROFunction-Single' - CESManagementFunction: - $ref: '#/components/schemas/CESManagementFunction-Single' - DPCIConfigurationFunction: - $ref: '#/components/schemas/DPCIConfigurationFunction-Single' - - NrCellDu-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' - - type: object - properties: - administrativeState: - $ref: 'genericNrm.yaml#/components/schemas/AdministrativeState' - operationalState: - $ref: 'genericNrm.yaml#/components/schemas/OperationalState' - cellLocalId: - type: integer - cellState: - $ref: '#/components/schemas/CellState' - plmnInfoList: - $ref: '#/components/schemas/PlmnInfoList' - npnIdentityList: - $ref: '#/components/schemas/NpnIdentityList' - nrPci: - $ref: '#/components/schemas/NrPci' - nrTac: - $ref: '#/components/schemas/NrTac' - arfcnDL: - type: integer - arfcnUL: - type: integer - arfcnSUL: - type: integer - bSChannelBwDL: - type: integer - bSChannelBwUL: - type: integer - bSChannelBwSUL: - type: integer - ssbFrequency: - type: integer - minimum: 0 - maximum: 3279165 - ssbPeriodicity: - $ref: '#/components/schemas/SsbPeriodicity' - ssbSubCarrierSpacing: - $ref: '#/components/schemas/SsbSubCarrierSpacing' - ssbOffset: - type: integer - minimum: 0 - maximum: 159 - ssbDuration: - $ref: '#/components/schemas/SsbDuration' - nrSectorCarrierRef: - type: array - items: - $ref: 'genericNrm.yaml#/components/schemas/Dn' - bwpRef: - type: array - items: - $ref: 'genericNrm.yaml#/components/schemas/Dn' - rimRSMonitoringStartTime: - type: string - rimRSMonitoringStopTime: - type: string - rimRSMonitoringWindowDuration: - type: integer - rimRSMonitoringWindowStartingOffset: - type: integer - rimRSMonitoringWindowPeriodicity: - type: integer - rimRSMonitoringOccasionInterval: - type: integer - rimRSMonitoringOccasionStartingOffset: - type: integer - nRFrequencyRef: - $ref: 'genericNrm.yaml#/components/schemas/Dn' - victimSetRef: - $ref: 'genericNrm.yaml#/components/schemas/Dn' - aggressorSetRef: - $ref: 'genericNrm.yaml#/components/schemas/Dn' - - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' - - type: object - properties: - RRMPolicyRatio: - $ref: '#/components/schemas/RRMPolicyRatio-Multiple' - CPCIConfigurationFunction: - $ref: '#/components/schemas/CPCIConfigurationFunction-Single' - DRACHOptimizationFunction: - $ref: '#/components/schemas/DRACHOptimizationFunction-Single' - - NRFrequency-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top' - - type: object - properties: - attributes: - type: object - properties: - absoluteFrequencySSB: - type: integer - minimum: 0 - maximum: 3279165 - ssbSubCarrierSpacing: - $ref: '#/components/schemas/SsbSubCarrierSpacing' - multiFrequencyBandListNR: - type: integer - minimum: 1 - maximum: 256 - EUtranFrequency-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top' - - type: object - properties: - attributes: - type: object - properties: - earfcnDL: - type: integer - minimum: 0 - maximum: 262143 - multiBandInfoListEutra: - type: integer - minimum: 1 - maximum: 256 - - NrSectorCarrier-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' - - type: object - properties: - txDirection: - $ref: '#/components/schemas/TxDirection' - configuredMaxTxPower: - type: integer - arfcnDL: - type: integer - arfcnUL: - type: integer - bSChannelBwDL: - type: integer - bSChannelBwUL: - type: integer - sectorEquipmentFunctionRef: - $ref: 'genericNrm.yaml#/components/schemas/Dn' - - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' - - type: object - properties: - CommonBeamformingFunction: - $ref: '#/components/schemas/CommonBeamformingFunction-Single' - Bwp-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' - - type: object - properties: - bwpContext: - $ref: '#/components/schemas/BwpContext' - isInitialBwp: - $ref: '#/components/schemas/IsInitialBwp' - subCarrierSpacing: - type: integer - cyclicPrefix: - $ref: '#/components/schemas/CyclicPrefix' - startRB: - type: integer - numberOfRBs: - type: integer - - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' - CommonBeamformingFunction-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top' - - type: object - properties: - attributes: - allOf: - - type: object - properties: - coverageShape: - $ref: '#/components/schemas/CoverageShape' - digitalAzimuth: - $ref: '#/components/schemas/DigitalAzimuth' - digitalTilt: - $ref: '#/components/schemas/DigitalTilt' - - type: object - properties: - Beam: - $ref: '#/components/schemas/Beam-Multiple' - Beam-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top' - - type: object - properties: - attributes: - allOf: - - type: object - properties: - beamIndex: - type: integer - beamType: - type: string - enum: - - SSB-BEAM - beamAzimuth: - type: integer - minimum: -1800 - maximum: 1800 - beamTilt: - type: integer - minimum: -900 - maximum: 900 - beamHorizWidth: - type: integer - minimum: 0 - maximum: 3599 - beamVertWidth: - type: integer - minimum: 0 - maximum: 1800 - RRMPolicyRatio-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top' - - type: object - properties: - attributes: - allOf: - - $ref: '#/components/schemas/RrmPolicy_-Attr' - - type: object - properties: - rRMPolicyMaxRatio: - type: integer - rRMPolicyMinRatio: - type: integer - rRMPolicyDedicatedRatio: - type: integer - - NRCellRelation-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top' - - type: object - properties: - attributes: - type: object - properties: - nRTCI: - type: integer - cellIndividualOffset: - $ref: '#/components/schemas/CellIndividualOffset' - adjacentNRCellRef: - $ref: 'genericNrm.yaml#/components/schemas/Dn' - nRFrequencyRef: - $ref: 'genericNrm.yaml#/components/schemas/Dn' - isRemoveAllowed: - type: boolean - isHOAllowed: - type: boolean - isESCoveredBy: - $ref: '#/components/schemas/IsESCoveredBy' - isENDCAllowed: - type: boolean - isMLBAllowed: - type: boolean - EUtranCellRelation-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' - - type: object - properties: - adjacentEUtranCellRef: - $ref: 'genericNrm.yaml#/components/schemas/Dn' - - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' - NRFreqRelation-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top' - - type: object - properties: - attributes: - type: object - properties: - offsetMO: - $ref: '#/components/schemas/QOffsetRangeList' - blackListEntry: - type: array - items: - type: integer - minimum: 0 - maximum: 1007 - blackListEntryIdleMode: - type: integer - cellReselectionPriority: - type: integer - cellReselectionSubPriority: - type: number - minimum: 0.2 - maximum: 0.8 - multipleOf: 0.2 - pMax: - type: integer - minimum: -30 - maximum: 33 - qOffsetFreq: - $ref: '#/components/schemas/QOffsetFreq' - qQualMin: - type: number - qRxLevMin: - type: integer - minimum: -140 - maximum: -44 - threshXHighP: - type: integer - minimum: 0 - maximum: 62 - threshXHighQ: - type: integer - minimum: 0 - maximum: 31 - threshXLowP: - type: integer - minimum: 0 - maximum: 62 - threshXLowQ: - type: integer - minimum: 0 - maximum: 31 - tReselectionNr: - type: integer - minimum: 0 - maximum: 7 - tReselectionNRSfHigh: - $ref: '#/components/schemas/TReselectionNRSf' - tReselectionNRSfMedium: - $ref: '#/components/schemas/TReselectionNRSf' - nRFrequencyRef: - $ref: 'genericNrm.yaml#/components/schemas/Dn' - EUtranFreqRelation-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top' - - type: object - properties: - attributes: - type: object - properties: - cellIndividualOffset: - $ref: '#/components/schemas/CellIndividualOffset' - blackListEntry: - type: array - items: - type: integer - minimum: 0 - maximum: 1007 - blackListEntryIdleMode: - type: integer - cellReselectionPriority: - type: integer - cellReselectionSubPriority: - type: number - minimum: 0.2 - maximum: 0.8 - multipleOf: 0.2 - pMax: - type: integer - minimum: -30 - maximum: 33 - qOffsetFreq: - $ref: '#/components/schemas/QOffsetFreq' - qQualMin: - type: number - qRxLevMin: - type: integer - minimum: -140 - maximum: -44 - threshXHighP: - type: integer - minimum: 0 - maximum: 62 - threshXHighQ: - type: integer - minimum: 0 - maximum: 31 - threshXLowP: - type: integer - minimum: 0 - maximum: 62 - threshXLowQ: - type: integer - minimum: 0 - maximum: 31 - tReselectionEutran: - type: integer - minimum: 0 - maximum: 7 - tReselectionNRSfHigh: - $ref: '#/components/schemas/TReselectionNRSf' - tReselectionNRSfMedium: - $ref: '#/components/schemas/TReselectionNRSf' - eUTranFrequencyRef: - $ref: 'genericNrm.yaml#/components/schemas/Dn' - DANRManagementFunction-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top' - - type: object - properties: - attributes: - type: object - properties: - intrasystemANRManagementSwitch: - type: boolean - intersystemANRManagementSwitch: - type: boolean - - DESManagementFunction-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top' - - type: object - properties: - attributes: - type: object - properties: - desSwitch: - type: boolean - intraRatEsActivationOriginalCellLoadParameters: - $ref: "#/components/schemas/IntraRatEsActivationOriginalCellLoadParameters" - intraRatEsActivationCandidateCellsLoadParameters: - $ref: "#/components/schemas/IntraRatEsActivationCandidateCellsLoadParameters" - intraRatEsDeactivationCandidateCellsLoadParameters: - $ref: "#/components/schemas/IntraRatEsDeactivationCandidateCellsLoadParameters" - esNotAllowedTimePeriod: - $ref: "#/components/schemas/EsNotAllowedTimePeriod" - interRatEsActivationOriginalCellParameters: - $ref: "#/components/schemas/IntraRatEsActivationOriginalCellLoadParameters" - interRatEsActivationCandidateCellParameters: - $ref: "#/components/schemas/IntraRatEsActivationOriginalCellLoadParameters" - interRatEsDeactivationCandidateCellParameters: - $ref: "#/components/schemas/IntraRatEsActivationOriginalCellLoadParameters" - isProbingCapable: - type: string - enum: - - yes - - no - energySavingState: - type: string - enum: - - isNotEnergySaving - - isEnergySaving - - DRACHOptimizationFunction-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top' - - type: object - properties: - attributes: - type: object - properties: - drachOptimizationControl: - type: boolean - ueAccProbilityDist: - $ref: "#/components/schemas/UeAccProbilityDist" - ueAccDelayProbilityDist: - $ref: "#/components/schemas/UeAccDelayProbilityDist" - - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' - - DMROFunction-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top' - - type: object - properties: - attributes: - type: object - properties: - dmroControl: - type: boolean - maximumDeviationHoTrigger: - $ref: '#/components/schemas/MaximumDeviationHoTrigger' - minimumTimeBetweenHoTriggerChange: - $ref: '#/components/schemas/MinimumTimeBetweenHoTriggerChange' - tstoreUEcntxt: - $ref: '#/components/schemas/TstoreUEcntxt' - - DPCIConfigurationFunction-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top' - - type: object - properties: - attributes: - type: object - properties: - dPciConfigurationControl: - type: boolean - nRPciList: - $ref: "#/components/schemas/NRPciList" - - CPCIConfigurationFunction-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top' - - type: object - properties: - attributes: - type: object - properties: - cPciConfigurationControl: - type: boolean - cSonPciList: - $ref: "#/components/schemas/CSonPciList" - - CESManagementFunction-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top' - - type: object - properties: - attributes: - type: object - properties: - cesSwitch: - type: boolean - intraRatEsActivationOriginalCellLoadParameters: - $ref: "#/components/schemas/IntraRatEsActivationOriginalCellLoadParameters" - intraRatEsActivationCandidateCellsLoadParameters: - $ref: "#/components/schemas/IntraRatEsActivationCandidateCellsLoadParameters" - intraRatEsDeactivationCandidateCellsLoadParameters: - $ref: "#/components/schemas/IntraRatEsDeactivationCandidateCellsLoadParameters" - esNotAllowedTimePeriod: - $ref: "#/components/schemas/EsNotAllowedTimePeriod" - interRatEsActivationOriginalCellParameters: - $ref: "#/components/schemas/IntraRatEsActivationOriginalCellLoadParameters" - interRatEsActivationCandidateCellParameters: - $ref: "#/components/schemas/IntraRatEsActivationOriginalCellLoadParameters" - interRatEsDeactivationCandidateCellParameters: - $ref: "#/components/schemas/IntraRatEsActivationOriginalCellLoadParameters" - energySavingControl: - type: string - enum: - - toBeEnergySaving - - toBeNotEnergySaving - energySavingState: - type: string - enum: - - isNotEnergySaving - - isEnergySaving - - RimRSGlobal-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top' - - type: object - properties: - attributes: - type: object - properties: - frequencyDomainPara: - $ref: '#/components/schemas/FrequencyDomainPara' - sequenceDomainPara: - $ref: '#/components/schemas/SequenceDomainPara' - timeDomainPara: - $ref: '#/components/schemas/TimeDomainPara' - RimRSSet: - $ref: '#/components/schemas/RimRSSet-Multiple' - - RimRSSet-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top' - - type: object - properties: - attributes: - type: object - properties: - setId: - $ref: '#/components/schemas/RSSetId' - setType: - $ref: '#/components/schemas/RSSetType' - nRCellDURefs: - $ref: 'genericNrm.yaml#/components/schemas/DnList' - - ExternalGnbDuFunction-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' - - type: object - properties: - gnbId: - $ref: '#/components/schemas/GnbId' - gnbIdLength: - $ref: '#/components/schemas/GnbIdLength' - - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' - - type: object - properties: - EP_F1C: - $ref: '#/components/schemas/EP_F1C-Multiple' - EP_F1U: - $ref: '#/components/schemas/EP_F1U-Multiple' - ExternalGnbCuUpFunction-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' - - type: object - properties: - gnbId: - $ref: '#/components/schemas/GnbId' - gnbIdLength: - $ref: '#/components/schemas/GnbIdLength' - - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' - - type: object - properties: - EP_E1: - $ref: '#/components/schemas/EP_E1-Multiple' - EP_F1U: - $ref: '#/components/schemas/EP_F1U-Multiple' - EP_XnU: - $ref: '#/components/schemas/EP_XnU-Multiple' - ExternalGnbCuCpFunction-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top' - - type: object - properties: - attributes: - allOf: - - $ref: >- - genericNrm.yaml#/components/schemas/ManagedFunction-Attr - - type: object - properties: - gnbId: - $ref: '#/components/schemas/GnbId' - gnbIdLength: - $ref: '#/components/schemas/GnbIdLength' - plmnId: - $ref: '#/components/schemas/PlmnId' - - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' - - type: object - properties: - ExternalNrCellCu: - $ref: '#/components/schemas/ExternalNrCellCu-Multiple' - EP_XnC: - $ref: '#/components/schemas/EP_XnC-Multiple' - EP_E1: - $ref: '#/components/schemas/EP_E1-Multiple' - EP_F1C: - $ref: '#/components/schemas/EP_F1C-Multiple' - ExternalNrCellCu-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' - - type: object - properties: - cellLocalId: - type: integer - nrPci: - $ref: '#/components/schemas/NrPci' - plmnIdList: - $ref: '#/components/schemas/PlmnIdList' - nRFrequencyRef: - $ref: 'genericNrm.yaml#/components/schemas/Dn' - - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' - ExternalENBFunction-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' - - type: object - properties: - eNBId: - type: integer - - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' - - type: object - properties: - ExternalEUTranCell: - $ref: '#/components/schemas/ExternalEUTranCell-Multiple' - ExternalEUTranCell-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' - - type: object - properties: - EUtranFrequencyRef: - $ref: 'genericNrm.yaml#/components/schemas/Dn' - - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' - - EP_XnC-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' - - type: object - properties: - localAddress: - $ref: '#/components/schemas/LocalAddress' - remoteAddress: - $ref: '#/components/schemas/RemoteAddress' - EP_E1-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' - - type: object - properties: - localAddress: - $ref: '#/components/schemas/LocalAddress' - remoteAddress: - $ref: '#/components/schemas/RemoteAddress' - EP_F1C-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' - - type: object - properties: - localAddress: - $ref: '#/components/schemas/LocalAddress' - remoteAddress: - $ref: '#/components/schemas/RemoteAddress' - EP_NgC-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' - - type: object - properties: - localAddress: - $ref: '#/components/schemas/LocalAddress' - remoteAddress: - $ref: '#/components/schemas/RemoteAddress' - EP_X2C-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' - - type: object - properties: - localAddress: - $ref: '#/components/schemas/LocalAddress' - remoteAddress: - $ref: '#/components/schemas/RemoteAddress' - EP_XnU-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' - - type: object - properties: - localAddress: - $ref: '#/components/schemas/LocalAddress' - remoteAddress: - $ref: '#/components/schemas/RemoteAddress' - EP_F1U-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' - - type: object - properties: - localAddress: - $ref: '#/components/schemas/LocalAddress' - remoteAddress: - $ref: '#/components/schemas/RemoteAddress' - epTransportRefs: - $ref: 'genericNrm.yaml#/components/schemas/DnList' - - EP_NgU-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' - - type: object - properties: - localAddress: - $ref: '#/components/schemas/LocalAddress' - remoteAddress: - $ref: '#/components/schemas/RemoteAddress' - epTransportRefs: - $ref: 'genericNrm.yaml#/components/schemas/DnList' - - EP_X2U-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' - - type: object - properties: - localAddress: - $ref: '#/components/schemas/LocalAddress' - remoteAddress: - $ref: '#/components/schemas/RemoteAddress' - EP_S1U-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' - - type: object - properties: - localAddress: - $ref: '#/components/schemas/LocalAddress' - remoteAddress: - $ref: '#/components/schemas/RemoteAddress' - -#-------- Definition of JSON arrays for name-contained IOCs ---------------------- - - SubNetwork-Multiple: - type: array - items: - $ref: '#/components/schemas/SubNetwork-Single' - ManagedElement-Multiple: - type: array - items: - $ref: '#/components/schemas/ManagedElement-Single' - GnbDuFunction-Multiple: - type: array - items: - $ref: '#/components/schemas/GnbDuFunction-Single' - GnbCuUpFunction-Multiple: - type: array - items: - $ref: '#/components/schemas/GnbCuUpFunction-Single' - GnbCuCpFunction-Multiple: - type: array - items: - $ref: '#/components/schemas/GnbCuCpFunction-Single' - - NrCellDu-Multiple: - type: array - items: - $ref: '#/components/schemas/NrCellDu-Single' - NrCellCu-Multiple: - type: array - items: - $ref: '#/components/schemas/NrCellCu-Single' - - NRFrequency-Multiple: - type: array - minItems: 1 - items: - $ref: '#/components/schemas/NRFrequency-Single' - EUtranFrequency-Multiple: - type: array - minItems: 1 - items: - $ref: '#/components/schemas/EUtranFrequency-Single' - - NrSectorCarrier-Multiple: - type: array - items: - $ref: '#/components/schemas/NrSectorCarrier-Single' - Bwp-Multiple: - type: array - items: - $ref: '#/components/schemas/Bwp-Single' - Beam-Multiple: - type: array - items: - $ref: '#/components/schemas/Beam-Single' - RRMPolicyRatio-Multiple: - type: array - items: - $ref: '#/components/schemas/RRMPolicyRatio-Single' - - NRCellRelation-Multiple: - type: array - items: - $ref: '#/components/schemas/NRCellRelation-Single' - EUtranCellRelation-Multiple: - type: array - items: - $ref: '#/components/schemas/EUtranCellRelation-Single' - NRFreqRelation-Multiple: - type: array - items: - $ref: '#/components/schemas/NRFreqRelation-Single' - EUtranFreqRelation-Multiple: - type: array - items: - $ref: '#/components/schemas/EUtranFreqRelation-Single' - - RimRSSet-Multiple: - type: array - items: - $ref: '#/components/schemas/RimRSSet-Single' - - ExternalGnbDuFunction-Multiple: - type: array - items: - $ref: '#/components/schemas/ExternalGnbDuFunction-Single' - ExternalGnbCuUpFunction-Multiple: - type: array - items: - $ref: '#/components/schemas/ExternalGnbCuUpFunction-Single' - ExternalGnbCuCpFunction-Multiple: - type: array - items: - $ref: '#/components/schemas/ExternalGnbCuCpFunction-Single' - ExternalNrCellCu-Multiple: - type: array - items: - $ref: '#/components/schemas/ExternalNrCellCu-Single' - - ExternalENBFunction-Multiple: - type: array - items: - $ref: '#/components/schemas/ExternalENBFunction-Single' - ExternalEUTranCell-Multiple: - type: array - items: - $ref: '#/components/schemas/ExternalEUTranCell-Single' - - EP_E1-Multiple: - type: array - items: - $ref: '#/components/schemas/EP_E1-Single' - EP_XnC-Multiple: - type: array - items: - $ref: '#/components/schemas/EP_XnC-Single' - EP_F1C-Multiple: - type: array - items: - $ref: '#/components/schemas/EP_F1C-Single' - EP_NgC-Multiple: - type: array - items: - $ref: '#/components/schemas/EP_NgC-Single' - EP_X2C-Multiple: - type: array - items: - $ref: '#/components/schemas/EP_X2C-Single' - EP_XnU-Multiple: - type: array - items: - $ref: '#/components/schemas/EP_XnU-Single' - EP_F1U-Multiple: - type: array - items: - $ref: '#/components/schemas/EP_F1U-Single' - EP_NgU-Multiple: - type: array - items: - $ref: '#/components/schemas/EP_NgU-Single' - EP_X2U-Multiple: - type: array - items: - $ref: '#/components/schemas/EP_X2U-Single' - EP_S1U-Multiple: - type: array - items: - $ref: '#/components/schemas/EP_S1U-Single' - -#-------- Definitions in TS 28.541 for TS 28.532 --------------------------------- - - resources-nrNrm: - oneOf: - - $ref: '#/components/schemas/SubNetwork-Single' - - $ref: '#/components/schemas/ManagedElement-Single' - - - $ref: '#/components/schemas/GnbDuFunction-Single' - - $ref: '#/components/schemas/GnbCuUpFunction-Single' - - $ref: '#/components/schemas/GnbCuCpFunction-Single' - - - $ref: '#/components/schemas/NrCellCu-Single' - - $ref: '#/components/schemas/NrCellDu-Single' - - - $ref: '#/components/schemas/NRFrequency-Single' - - $ref: '#/components/schemas/EUtranFrequency-Single' - - - $ref: '#/components/schemas/NrSectorCarrier-Single' - - $ref: '#/components/schemas/Bwp-Single' - - $ref: '#/components/schemas/CommonBeamformingFunction-Single' - - $ref: '#/components/schemas/Beam-Single' - - $ref: '#/components/schemas/RRMPolicyRatio-Single' - - - $ref: '#/components/schemas/NRCellRelation-Single' - - $ref: '#/components/schemas/EUtranCellRelation-Single' - - $ref: '#/components/schemas/NRFreqRelation-Single' - - $ref: '#/components/schemas/EUtranFreqRelation-Single' - - - $ref: '#/components/schemas/DANRManagementFunction-Single' - - $ref: '#/components/schemas/DESManagementFunction-Single' - - $ref: '#/components/schemas/DRACHOptimizationFunction-Single' - - $ref: '#/components/schemas/DMROFunction-Single' - - $ref: '#/components/schemas/DPCIConfigurationFunction-Single' - - $ref: '#/components/schemas/CPCIConfigurationFunction-Single' - - $ref: '#/components/schemas/CESManagementFunction-Single' - - - $ref: '#/components/schemas/RimRSGlobal-Single' - - $ref: '#/components/schemas/RimRSSet-Single' - - - $ref: '#/components/schemas/ExternalGnbDuFunction-Single' - - $ref: '#/components/schemas/ExternalGnbCuUpFunction-Single' - - $ref: '#/components/schemas/ExternalGnbCuCpFunction-Single' - - $ref: '#/components/schemas/ExternalNrCellCu-Single' - - $ref: '#/components/schemas/ExternalENBFunction-Single' - - $ref: '#/components/schemas/ExternalEUTranCell-Single' - - - $ref: '#/components/schemas/EP_XnC-Single' - - $ref: '#/components/schemas/EP_E1-Single' - - $ref: '#/components/schemas/EP_F1C-Single' - - $ref: '#/components/schemas/EP_NgC-Single' - - $ref: '#/components/schemas/EP_X2C-Single' - - $ref: '#/components/schemas/EP_XnU-Single' - - $ref: '#/components/schemas/EP_F1U-Single' - - $ref: '#/components/schemas/EP_NgU-Single' - - $ref: '#/components/schemas/EP_X2U-Single' - - $ref: '#/components/schemas/EP_S1U-Single' diff --git a/OpenAPI/provMnS.yaml b/OpenAPI/provMnS.yaml deleted file mode 100644 index b2f84a4d2..000000000 --- a/OpenAPI/provMnS.yaml +++ /dev/null @@ -1,579 +0,0 @@ -openapi: 3.0.1 -info: - title: Provisioning MnS - version: 16.4.0 - description: >- - OAS 3.0.1 definition of the Provisioning MnS - © 2020, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). - All rights reserved. -externalDocs: - description: 3GPP TS 28.532 V16.4.0; Generic management services - url: http://www.3gpp.org/ftp/Specs/archive/28_series/28.532/ -servers: - - url: 'http://{URI-DN-prefix}/{root}/ProvMnS/v1640/{LDN-first-part}' - variables: - URI-DN-prefix: - description: See subclause 4.4 of TS 32.158 - default: example.com - root: - description: See subclause 4.4 of TS 32.158 - default: 3GPPManagement - LDN-first-part: - description: See subclause 4.4 of TS 32.158 - default: '' -paths: - '/{className}={id}': - parameters: - - name: className - in: path - required: true - schema: - $ref: '#/components/schemas/className-PathType' - - name: id - in: path - required: true - schema: - $ref: '#/components/schemas/id-PathType' - put: - summary: Replaces a complete single resource or creates it if it does not exist - description: >- - With HTTP PUT a complete resource is replaced or created if it does not - exist. The target resource is identified by the target URI. - requestBody: - required: true - content: - application/json: - schema: - $ref: '#/components/schemas/resourcePut-RequestType' - responses: - '200': - description: >- - Success case ("200 OK"). - This status code shall be returned when the resource is replaced, and - when the replaced resource representation is not identical to the resource - representation in the request. - This status code may be retourned when the resource is updated and when the - updated resource representation is identical to the resource representation - in the request. - The representation of the updated resource is returned in the response - message body. - content: - application/json: - schema: - $ref: '#/components/schemas/resourceUpdate-ResponseType' - '201': - description: >- - Success case ("201 Created"). - This status code shall be returned when the resource is created. - The representation of the created resource is returned in the response - message body. - content: - application/json: - schema: - $ref: '#/components/schemas/resourceCreation-ResponseType' - '204': - description: >- - Success case ("204 No Content"). - This status code may be returned only when the replaced resource - representation is identical to the representation in the request. - The response has no message body. - default: - description: Error case. - content: - application/json: - schema: - $ref: '#/components/schemas/error-ResponseType' - callbacks: - notifyMOICreation: - '{request.body#/notificationRecipientAddress}': - post: - requestBody: - required: true - content: - application/json: - schema: - $ref: '#/components/schemas/notifyMOICreation-NotifType' - responses: - '204': - description: >- - Success case ("204 No Content"). - The notification is successfully delivered. The response - has no message body. - default: - description: Error case. - content: - application/json: - schema: - $ref: '#/components/schemas/error-ResponseType' - notifyMOIDeletion: - '{request.body#/notificationRecipientAddress}': - post: - requestBody: - required: true - content: - application/json: - schema: - $ref: '#/components/schemas/notifyMOIDeletion-NotifType' - responses: - '204': - description: >- - Success case ("204 No Content"). - The notification is successfully delivered. The response - has no message body. - default: - description: Error case. - content: - application/json: - schema: - $ref: '#/components/schemas/error-ResponseType' - notifyMOIAttributeValueChange: - '{request.body#/notificationRecipientAddress}': - post: - requestBody: - required: true - content: - application/json: - schema: - $ref: '#/components/schemas/notifyMOIAttributeValueChange-NotifType' - responses: - '204': - description: >- - Success case ("204 No Content"). - The notification is successfully delivered. The response - has no message body. - default: - description: Error case. - content: - application/json: - schema: - $ref: '#/components/schemas/error-ResponseType' - notifyMOIChanges: - '{request.body#/notificationRecipientAddress}': - post: - requestBody: - required: true - content: - application/json: - schema: - $ref: '#/components/schemas/notifyMOIChanges-NotifType' - responses: - '204': - description: >- - Success case ("204 No Content"). - The notification is successfully delivered. The response - has no message body. - default: - description: Error case. - content: - application/json: - schema: - $ref: '#/components/schemas/error-ResponseType' - get: - summary: Reads one or multiple resources - description: >- - With HTTP GET resources are read. The resources to be retrieved are - identified with the target URI. The attributes and fields parameter - of the query components allow to select the resource properties to be returned. - parameters: - - name: scope - in: query - description: >- - This parameter extends the set of targeted resources beyond the base - resource identified with the path component of the URI. No scoping - mechanism is specified in the present document. - required: false - schema: - $ref: '#/components/schemas/scope-QueryType' - style: form - explode: true - - name: filter - in: query - description: >- - This parameter reduces the targeted set of resources by applying a - filter to the scoped set of resource representations. Only resource - representations for which the filter construct evaluates to "true" - are targeted. No filter language is specified in the present - document. - required: false - schema: - $ref: '#/components/schemas/filter-QueryType' - - name: attributes - in: query - description: >- - This parameter specifies the attributes of the scoped resources that - are returned. - required: true - schema: - $ref: '#/components/schemas/attributes-QueryType' - style: form - explode: false - - name: fields - in: query - description: >- - This parameter specifies the attribute field of the scoped resources - that are returned. - required: false - schema: - $ref: '#/components/schemas/fields-QueryType' - style: form - explode: false - responses: - '200': - description: >- - Success case ("200 OK"). - The resources identified in the request for retrieval are returned - in the response message body. In case the attributes or fields query - parameters are used, only the selected attributes or sub-attributes are - returned. The response message body is constructed according to the - hierarchical response construction method (TS 32.158 [15]). - content: - application/json: - schema: - $ref: '#/components/schemas/resourceRetrieval-ResponseType' - default: - description: Error case. - content: - application/json: - schema: - $ref: '#/components/schemas/error-ResponseType' - patch: - summary: Patches one or multiple resources - description: >- - With HTTP PATCH resources are created, updated or deleted. The resources - to be modified are identified with the target URI (base resource) and - the patch document included in the request message body. - requestBody: - description: >- - The request body describes changes to be made to the target resources. - The following patch media types are available - - "application/merge-patch+json" (RFC 7396) - - "application/3gpp-merge-patch+json" (TS 32.158) - - "application/json-patch+json" (RFC 6902) - - "application/3gpp-json-patch+json" (TS 32.158) - required: true - content: - application/merge-patch+json: - schema: - $ref: '#/components/schemas/jsonMergePatch-RequestType' - application/3gpp-merge-patch+json: - schema: - $ref: '#/components/schemas/3gppJsonMergePatch-RequestType' - application/json-patch+json: - schema: - $ref: '#/components/schemas/jsonPatch-RequestType' - application/3gpp-json-patch+json: - schema: - $ref: '#/components/schemas/3gppJsonPatch-RequestType' - responses: - '200': - description: >- - Success case ("200 OK"). - This status code is returned when the updated the resource representations - shall be returned for some reason. - The resource representations are returned in the response message body. The - response message body is constructed according to the hierarchical response - construction method (TS 32.158 [15]) - content: - application/json: - schema: - $ref: '#/components/schemas/resourceUpdate-ResponseType' - '204': - description: >- - Success case ("204 No Content"). - This status code is returned when there is no need to return the updated - resource representations. - The response message body is empty. - default: - description: Error case. - content: - application/json: - schema: - $ref: '#/components/schemas/error-ResponseType' - delete: - summary: Deletes one or multiple resources - description: >- - With HTTP DELETE resources are deleted. The resources to be deleted are - identified with the target URI. - parameters: - - name: scope - in: query - description: >- - This parameter extends the set of targeted resources beyond the base - resource identified with the path component of the URI. No scoping - mechanism is specified in the present document. - required: false - schema: - $ref: '#/components/schemas/scope-QueryType' - - name: filter - in: query - description: >- - This parameter reduces the targeted set of resources by applying a - filter to the scoped set of resource representations. Only resources - representations for which the filter construct evaluates to "true" - are returned. No filter language is specified in the present - document. - required: false - schema: - $ref: '#/components/schemas/filter-QueryType' - responses: - '200': - description: >- - Success case ("200 OK"). - This status code shall be returned, when query parameters are present in - the request and one or multiple resources are deleted. - The URIs of the deleted resources are returned in the response message body. - '204': - description: >- - Success case ("204 No Content"). - This status code shall be returned, when no query parameters are present in - the request and only one resource is deleted. - The message body is empty. - content: - application/json: - schema: - $ref: '#/components/schemas/resourceDeletion-ResponseType' - default: - description: Error case. - content: - application/json: - schema: - $ref: '#/components/schemas/error-ResponseType' -components: - schemas: - dateTime-Type: - type: string - format: date-time - long-Type: - type: integer - format: int64 - uri-Type: - type: string - correlatedNotification-Type: - type: object - properties: - source: - $ref: '#/components/schemas/uri-Type' - notificationIds: - type: array - items: - $ref: '#/components/schemas/notificationId-Type' - notificationId-Type: - $ref: '#/components/schemas/long-Type' - notificationType-Type: - type: string - enum: - - notifyMOICreation - - notifyMOIDeletion - - notifyMOIAttributeValueChange - systemDN-Type: - type: string - additionalText-Type: - type: string - sourceIndicator-Type: - type: string - enum: - - resourceOperation - - mangementOperation - - sONOperation - - unknown - header-Type: - type: object - properties: - href: - $ref: '#/components/schemas/uri-Type' - notificationId: - $ref: '#/components/schemas/notificationId-Type' - notificationType: - $ref: '#/components/schemas/notificationType-Type' - eventTime: - $ref: '#/components/schemas/dateTime-Type' - systemDN: - $ref: '#/components/schemas/systemDN-Type' - required: - - href - - notificationId - - notificationType - - eventTime - - systemDN - scopeType-Type: - type: string - enum: - - BASE_ONLY - - BASE_NTH_LEVEL - - BASE_SUBTREE - - BASE_ALL - scopeLevel-Type: - type: integer - className-PathType: - type: string - id-PathType: - type: string - attributes-QueryType: - type: array - items: - type: string - fields-QueryType: - type: array - items: - type: string - filter-QueryType: - type: string - scope-QueryType: - type: object - properties: - scopeType: - $ref: '#/components/schemas/scopeType-Type' - scopeLevel: - $ref: '#/components/schemas/scopeLevel-Type' - - resourcePut-RequestType: - $ref: '#/components/schemas/resourceRepresentation-Type' - jsonMergePatch-RequestType: - $ref: '#/components/schemas/resourceRepresentation-Type' - 3gppJsonMergePatch-RequestType: - $ref: '#/components/schemas/resourceRepresentation-Type' - jsonPatch-RequestType: - type: array - items: - type: object - 3gppJsonPatch-RequestType: - type: array - items: - type: object - - error-ResponseType: - type: object - properties: - error: - type: object - properties: - errorInfo: - type: string - resourceRetrieval-ResponseType: - $ref: '#/components/schemas/resourceRepresentation-Type' - resourceCreation-ResponseType: - $ref: '#/components/schemas/resourceRepresentation-Type' - resourceUpdate-ResponseType: - $ref: '#/components/schemas/resourceRepresentation-Type' - resourceDeletion-ResponseType: - type: array - items: - $ref: '#/components/schemas/uri-Type' - - resourceRepresentation-Type: - oneOf: - - type: object - properties: - id: - type: string - attributes: - type: object - additionalProperties: - type: array - items: - type: object - - anyOf: - - $ref: 'genericNrm.yaml#/components/schemas/resources-genericNrm' - - $ref: 'nrNrm.yaml#/components/schemas/resources-nrNrm' - - $ref: '5gcNrm.yaml#/components/schemas/resources-5gcNrm' - - $ref: 'sliceNrm.yaml#/components/schemas/resources-sliceNrm' - - mOIChange-Type: - type: object - properties: - notificationId: - $ref: '#/components/schemas/notificationId-Type' - correlatedNotifications: - type: array - items: - $ref: '#/components/schemas/correlatedNotification-Type' - additionalText: - $ref: '#/components/schemas/additionalText-Type' - sourceIndicator: - $ref: '#/components/schemas/sourceIndicator-Type' - path: - $ref: '#/components/schemas/uri-Type' - operation: - type: string - enum: - - CREATE - - DELETE - - REPLACE - value: - oneOf: - - type: object - additionalProperties: - nullable: true - - type: array - items: - type: object - minItems: 1 - maxItems: 2 - - notifyMOICreation-NotifType: - allOf: - - $ref: '#/components/schemas/header-Type' - - type: object - properties: - correlatedNotifications: - type: array - items: - $ref: '#/components/schemas/correlatedNotification-Type' - additionalText: - $ref: '#/components/schemas/additionalText-Type' - sourceIndicator: - $ref: '#/components/schemas/sourceIndicator-Type' - attributeList: - type: object - additionalProperties: - nullable: true - notifyMOIDeletion-NotifType: - allOf: - - $ref: '#/components/schemas/header-Type' - - type: object - properties: - correlatedNotifications: - type: array - items: - $ref: '#/components/schemas/correlatedNotification-Type' - additionalText: - $ref: '#/components/schemas/additionalText-Type' - sourceIndicator: - $ref: '#/components/schemas/sourceIndicator-Type' - attributeList: - type: object - additionalProperties: true - notifyMOIAttributeValueChange-NotifType: - allOf: - - $ref: '#/components/schemas/header-Type' - - type: object - properties: - correlatedNotifications: - type: array - items: - $ref: '#/components/schemas/correlatedNotification-Type' - additionalText: - $ref: '#/components/schemas/additionalText-Type' - sourceIndicator: - $ref: '#/components/schemas/sourceIndicator-Type' - attributeValueChange: - type: object - additionalProperties: - type: array - minItems: 1 - maxItems: 2 - items: - nullable: true - required: - - attributeValueChange - notifyMOIChanges-NotifType: - allOf: - - $ref: '#/components/schemas/header-Type' - - type: object - properties: - mOIChanges: - type: array - items: - $ref: '#/components/schemas/mOIChange-Type' - required: - - mOIChanges diff --git a/OpenAPI/sliceNrm.yaml b/OpenAPI/sliceNrm.yaml deleted file mode 100644 index bf6b4d71c..000000000 --- a/OpenAPI/sliceNrm.yaml +++ /dev/null @@ -1,632 +0,0 @@ -openapi: 3.0.1 -info: - title: Slice NRM - version: 17.4.0 - description: >- - OAS 3.0.1 specification of the Slice NRM - @ 2020, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). - All rights reserved. -externalDocs: - description: 3GPP TS 28.541; 5G NRM, Slice NRM - url: http://www.3gpp.org/ftp/Specs/archive/28_series/28.541/ -paths: {} -components: - schemas: - -#------------ Type definitions --------------------------------------------------- - - Float: - type: number - format: float - MobilityLevel: - type: string - enum: - - STATIONARY - - NOMADIC - - RESTRICTED MOBILITY - - FULLY MOBILITY - SynAvailability: - type: string - enum: - - NOT SUPPORTED - - BETWEEN BS AND UE - - BETWEEN BS AND UE & UE AND UE - PositioningAvailability: - type: array - items: - type: string - enum: - - CIDE-CID - - OTDOA - - RF FINGERPRINTING - - AECID - - HYBRID POSITIONING - - NET-RTK - Predictionfrequency: - type: string - enum: - - PERSEC - - PERMIN - - PERHOUR - SharingLevel: - type: string - enum: - - SHARED - - NON-SHARED - - NetworkSliceSharingIndicator: - type: string - enum: - - SHARED - - NON-SHARED - - ServiceType: - type: string - enum: - - eMBB - - RLLC - - MIoT - - V2X - SliceSimultaneousUse: - type: string - enum: - - ZERO - - ONE - - TWO - - THREE - - FOUR - Category: - type: string - enum: - - CHARACTER - - SCALABILITY - Tagging: - type: array - items: - type: string - enum: - - PERFORMANCE - - FUNCTION - - OPERATION - Exposure: - type: string - enum: - - API - - KPI - ServAttrCom: - type: object - properties: - category: - $ref: '#/components/schemas/Category' - tagging: - $ref: '#/components/schemas/Tagging' - exposure: - $ref: '#/components/schemas/Exposure' - Support: - type: string - enum: - - NOT SUPPORTED - - SUPPORTED - DelayTolerance: - type: object - properties: - servAttrCom: - $ref: '#/components/schemas/ServAttrCom' - support: - $ref: '#/components/schemas/Support' - DeterministicComm: - type: object - properties: - servAttrCom: - $ref: '#/components/schemas/ServAttrCom' - availability: - $ref: '#/components/schemas/Support' - periodicityList: - type: string - XLThpt: - type: object - properties: - servAttrCom: - $ref: '#/components/schemas/ServAttrCom' - guaThpt: - $ref: '#/components/schemas/Float' - maxThpt: - $ref: '#/components/schemas/Float' - MaxPktSize: - type: object - properties: - servAttrCom: - $ref: '#/components/schemas/ServAttrCom' - maxsize: - type: integer - MaxNumberofPDUSessions: - type: object - properties: - servAttrCom: - $ref: '#/components/schemas/ServAttrCom' - nOofPDUSessions: - type: integer - KPIMonitoring: - type: object - properties: - servAttrCom: - $ref: '#/components/schemas/ServAttrCom' - kPIList: - type: string - NBIoT: - type: object - properties: - servAttrCom: - $ref: '#/components/schemas/ServAttrCom' - support: - $ref: '#/components/schemas/Support' - RadioSpectrum: - type: object - properties: - servAttrCom: - $ref: '#/components/schemas/ServAttrCom' - nROperatingBands: - type: string - Synchronicity: - type: object - properties: - servAttrCom: - $ref: '#/components/schemas/ServAttrCom' - availability: - $ref: '#/components/schemas/SynAvailability' - accuracy: - $ref: '#/components/schemas/Float' - SynchronicityRANSubnet: - type: object - properties: - availability: - $ref: '#/components/schemas/SynAvailability' - accuracy: - $ref: '#/components/schemas/Float' - Positioning: - type: object - properties: - servAttrCom: - $ref: '#/components/schemas/ServAttrCom' - availability: - $ref: '#/components/schemas/PositioningAvailability' - predictionfrequency: - $ref: '#/components/schemas/Predictionfrequency' - accuracy: - $ref: '#/components/schemas/Float' - PositioningRANSubnet: - type: object - properties: - availability: - $ref: '#/components/schemas/PositioningAvailability' - predictionfrequency: - $ref: '#/components/schemas/Predictionfrequency' - accuracy: - $ref: '#/components/schemas/Float' - UserMgmtOpen: - type: object - properties: - servAttrCom: - $ref: '#/components/schemas/ServAttrCom' - support: - $ref: '#/components/schemas/Support' - V2XCommModels: - type: object - properties: - servAttrCom: - $ref: '#/components/schemas/ServAttrCom' - v2XMode: - $ref: '#/components/schemas/Support' - TermDensity: - type: object - properties: - servAttrCom: - $ref: '#/components/schemas/ServAttrCom' - density: - type: integer - NsInfo: - type: object - properties: - nsInstanceId: - type: string - nsName: - type: string - EmbbEEPerfReq: - type: integer - UrllcEEPerfReq: - type: integer - MIoTEEPerfReq: - type: object - properties: - KpiType: - type: string - enum: - - MAXREGSUBS - - MEANACTIVEUES - Req: - type: integer - EEPerfReq: - oneOf: - - $ref: '#/components/schemas/EmbbEEPerfReq' - - $ref: '#/components/schemas/UrllcEEPerfReq' - - $ref: '#/components/schemas/MIoTEEPerfReq' - EnergyEfficiency: - type: object - properties: - servAttrCom: - $ref: '#/components/schemas/ServAttrCom' - performance: - $ref: '#/components/schemas/EEPerfReq' - CNSliceSubnetProfile: - type: object - properties: - maxNumberofUEs: - type: integer - latency: - type: integer - dLThptPerSliceSubnet: - $ref: '#/components/schemas/XLThpt' - dLThptPerUE: - $ref: '#/components/schemas/XLThpt' - uLThptPerSliceSubnet: - $ref: '#/components/schemas/XLThpt' - uLThptPerUE: - $ref: '#/components/schemas/XLThpt' - maxNumberOfPDUSessions: - type: integer - coverageAreaTAList: - type: integer - resourceSharingLevel: - $ref: '#/components/schemas/SharingLevel' - dLMaxPktSize: - type: integer - uLMaxPktSize: - type: integer - delayTolerance: - $ref: '#/components/schemas/DelayTolerance' - synchronicity: - $ref: '#/components/schemas/SynchronicityRANSubnet' - sliceSimultaneousUse: - $ref: '#/components/schemas/SliceSimultaneousUse' - reliability: - type: string - energyEfficiency: - type: integer - dLDeterministicComm: - $ref: '#/components/schemas/DeterministicComm' - uLDeterministicComm: - $ref: '#/components/schemas/DeterministicComm' - survivalTime: - type: string - RANSliceSubnetProfile: - type: object - properties: - coverageAreaTAList: - type: integer - uEMobilityLevel: - $ref: '#/components/schemas/MobilityLevel' - resourceSharingLevel: - $ref: '#/components/schemas/SharingLevel' - maxNumberofUEs: - type: integer - activityFactor: - type: integer - dLThptPerUE: - $ref: '#/components/schemas/XLThpt' - uLThptPerUE: - $ref: '#/components/schemas/XLThpt' - uESpeed: - type: integer - reliability: - type: string - serviceType: - $ref: '#/components/schemas/ServiceType' - dLMaxPktSize: - type: integer - uLMaxPktSize: - type: integer - nROperatingBands: - type: string - delayTolerance: - $ref: '#/components/schemas/DelayTolerance' - positioning: - $ref: '#/components/schemas/PositioningRANSubnet' - sliceSimultaneousUse: - $ref: '#/components/schemas/SliceSimultaneousUse' - energyEfficiency: - type: integer - termDensity: - $ref: '#/components/schemas/TermDensity' - survivalTime: - type: string - synchronicity: - $ref: '#/components/schemas/SynchronicityRANSubnet' - dLDeterministicComm: - $ref: '#/components/schemas/DeterministicComm' - uLDeterministicComm: - $ref: '#/components/schemas/DeterministicComm' - TopSliceSubnetProfile: - type: object - properties: - latency: - type: integer - maxNumberofUEs: - type: integer - dLThptPerSliceSubnet: - $ref: '#/components/schemas/XLThpt' - dLThptPerUE: - $ref: '#/components/schemas/XLThpt' - uLThptPerSliceSubnet: - $ref: '#/components/schemas/XLThpt' - uLThptPerUE: - $ref: '#/components/schemas/XLThpt' - dLMaxPktSize: - type: integer - uLMaxPktSize: - type: integer - maxNumberOfPDUSessions: - type: integer - nROperatingBands: - type: string - sliceSimultaneousUse: - $ref: '#/components/schemas/SliceSimultaneousUse' - energyEfficiency: - type: integer - synchronicity: - $ref: '#/components/schemas/Synchronicity' - delayTolerance: - $ref: '#/components/schemas/DelayTolerance' - positioning: - $ref: '#/components/schemas/Positioning' - termDensity: - $ref: '#/components/schemas/TermDensity' - activityFactor: - type: integer - coverageAreaTAList: - type: integer - resourceSharingLevel: - $ref: '#/components/schemas/SharingLevel' - uEMobilityLevel: - $ref: '#/components/schemas/MobilityLevel' - uESpeed: - type: integer - reliability: - type: string - serviceType: - $ref: '#/components/schemas/ServiceType' - dLDeterministicComm: - $ref: '#/components/schemas/DeterministicComm' - uLDeterministicComm: - $ref: '#/components/schemas/DeterministicComm' - survivalTime: - type: string - - ServiceProfile: - type: object - properties: - serviceProfileId: - type: string - plmnInfoList: - $ref: 'nrNrm.yaml#/components/schemas/PlmnInfoList' - maxNumberofUEs: - type: number - latency: - type: number - uEMobilityLevel: - $ref: '#/components/schemas/MobilityLevel' - sst: - $ref: 'nrNrm.yaml#/components/schemas/Sst' - networkSliceSharingIndicator: - $ref: '#/components/schemas/NetworkSliceSharingIndicator' - availability: - type: number - delayTolerance: - $ref: '#/components/schemas/DelayTolerance' - dLDeterministicComm: - $ref: '#/components/schemas/DeterministicComm' - uLDeterministicComm: - $ref: '#/components/schemas/DeterministicComm' - dLThptPerSlice: - $ref: '#/components/schemas/XLThpt' - dLThptPerUE: - $ref: '#/components/schemas/XLThpt' - uLThptPerSlice: - $ref: '#/components/schemas/XLThpt' - uLThptPerUE: - $ref: '#/components/schemas/XLThpt' - dLMaxPktSize: - $ref: '#/components/schemas/MaxPktSize' - uLMaxPktSize: - $ref: '#/components/schemas/MaxPktSize' - maxNumberofPDUSessions: - $ref: '#/components/schemas/MaxNumberofPDUSessions' - kPIMonitoring: - $ref: '#/components/schemas/KPIMonitoring' - nBIoT: - $ref: '#/components/schemas/NBIoT' - radioSpectrum: - $ref: '#/components/schemas/RadioSpectrum' - synchronicity: - $ref: '#/components/schemas/Synchronicity' - positioning: - $ref: '#/components/schemas/Positioning' - userMgmtOpen: - $ref: '#/components/schemas/UserMgmtOpen' - v2XModels: - $ref: '#/components/schemas/V2XCommModels' - coverageArea: - type: string - termDensity: - $ref: '#/components/schemas/TermDensity' - activityFactor: - $ref: '#/components/schemas/Float' - uESpeed: - type: integer - jitter: - type: integer - survivalTime: - type: string - reliability: - type: string - maxDLDataVolume: - type: string - maxULDataVolume: - type: string - sliceSimultaneousUse: - $ref: '#/components/schemas/SliceSimultaneousUse' - energyEfficiency: - $ref: '#/components/schemas/EnergyEfficiency' - SliceProfile: - type: object - properties: - serviceProfileId: - type: string - plmnInfoList: - $ref: 'nrNrm.yaml#/components/schemas/PlmnInfoList' - cNSliceSubnetProfile: - $ref: '#/components/schemas/CNSliceSubnetProfile' - rANSliceSubnetProfile: - $ref: '#/components/schemas/RANSliceSubnetProfile' - topSliceSubnetProfile: - $ref: '#/components/schemas/TopSliceSubnetProfile' - - IpAddress: - oneOf: - - $ref: 'genericNrm.yaml#/components/schemas/Ipv4Addr' - - $ref: 'genericNrm.yaml#/components/schemas/Ipv6Addr' - - LogicInterfaceInfo: - type: object - properties: - logicalInterfceType: - type: string - enum: - - VLAN - - MPLS - - Segment - logicalInterfceId: - type: string - - ServiceProfileList: - type: array - items: - $ref: '#/components/schemas/ServiceProfile' - - SliceProfileList: - type: array - items: - $ref: '#/components/schemas/SliceProfile' - -#------------ Definition of concrete IOCs ---------------------------------------- - SubNetwork-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/SubNetwork-Attr' - - $ref: 'genericNrm.yaml#/components/schemas/SubNetwork-ncO' - - type: object - properties: - SubNetwork: - $ref: '#/components/schemas/SubNetwork-Multiple' - NetworkSlice: - $ref: '#/components/schemas/NetworkSlice-Multiple' - NetworkSliceSubnet: - $ref: '#/components/schemas/NetworkSliceSubnet-Multiple' - EP_Transport: - $ref: '#/components/schemas/EP_Transport-Multiple' - - NetworkSlice-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top' - - type: object - properties: - attributes: - allOf: - - type: object - properties: - networkSliceSubnetRef: - $ref: 'genericNrm.yaml#/components/schemas/Dn' - operationalState: - $ref: 'genericNrm.yaml#/components/schemas/OperationalState' - administrativeState: - $ref: 'genericNrm.yaml#/components/schemas/AdministrativeState' - serviceProfileList: - $ref: '#/components/schemas/ServiceProfileList' - - NetworkSliceSubnet-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top' - - type: object - properties: - attributes: - allOf: - - type: object - properties: - managedFunctionRefList: - $ref: 'genericNrm.yaml#/components/schemas/DnList' - networkSliceSubnetRefList: - $ref: 'genericNrm.yaml#/components/schemas/DnList' - operationalState: - $ref: 'genericNrm.yaml#/components/schemas/OperationalState' - administrativeState: - $ref: 'genericNrm.yaml#/components/schemas/AdministrativeState' - nsInfo: - $ref: '#/components/schemas/NsInfo' - sliceProfileList: - $ref: '#/components/schemas/SliceProfileList' - epTransportRefList: - $ref: 'genericNrm.yaml#/components/schemas/DnList' - priorityLabel: - type: integer - - EP_Transport-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top' - - type: object - properties: - attributes: - type: object - properties: - ipAddress: - $ref: '#/components/schemas/IpAddress' - logicInterfaceInfo: - $ref: '#/components/schemas/LogicInterfaceInfo' - nextHopInfo: - type: string - qosProfile: - type: string - epApplicationRefs: - $ref: 'genericNrm.yaml#/components/schemas/DnList' - -#-------- Definition of JSON arrays for name-contained IOCs ---------------------- - SubNetwork-Multiple: - type: array - items: - $ref: '#/components/schemas/SubNetwork-Single' - - NetworkSlice-Multiple: - type: array - items: - $ref: '#/components/schemas/NetworkSlice-Single' - - NetworkSliceSubnet-Multiple: - type: array - items: - $ref: '#/components/schemas/NetworkSliceSubnet-Single' - - EP_Transport-Multiple: - type: array - items: - $ref: '#/components/schemas/EP_Transport-Single' - -#------------ Definitions in TS 28.541 for TS 28.532 ----------------------------- - - resources-sliceNrm: - oneOf: - - $ref: '#/components/schemas/SubNetwork-Single' - - $ref: '#/components/schemas/NetworkSlice-Single' - - $ref: '#/components/schemas/NetworkSliceSubnet-Single' - - $ref: '#/components/schemas/EP_Transport-Single' diff --git a/OpenAPI/streamingDataMnS.yaml b/OpenAPI/streamingDataMnS.yaml deleted file mode 100644 index ab7f71d4a..000000000 --- a/OpenAPI/streamingDataMnS.yaml +++ /dev/null @@ -1,453 +0,0 @@ -openapi: 3.0.1 -info: - title: TS 28.532 Streaming data reporting service - version: 16.4.0 - description: OAS 3.0.1 specification for the Streaming data reporting service (Streaming MnS) -servers: - - url: '{protocol}://{root}/StreamingDataReportingMnS/{version}' - variables: - protocol: - description: Protocol used - enum: - - http - - https - - wss - default: https - root: - description: Indicates the host name and optional port, and an optional sequence of path segments that together represent a prefix path. - default: example.com - version: - description: Indicates the current version of the specification - default: 16.4.0 -paths: - '/connections': - post: - summary: Inform consumer about reporting streams to be carried by the new connection and receive a new connection id. - description: Exchange of meta-data (producer informs consumer about its own identity and the nature of the data to be reported via streaming) phase of the connection establishement by streaming data reporting producer to the streaming data reporting consumer (i.e. streaming target). - requestBody: - required: true - content: - application/json: - schema: - $ref: '#/components/schemas/connectionRequest-Type' - responses: - '201': - description: Success case (201 Created). - headers: - Location: - description: Location of the created connection resource. - schema: - $ref: '#/components/schemas/connectionId-Type' - default: - description: Error case. - content: - application/json: - schema: - $ref: '#/components/schemas/failedConnectionResponse-Type' - get: - summary: Obtain information about connections. - description: Enables the streaming data reporting service producer to obtain information about one or more streaming connections. - parameters: - - name: connectionIdList - in: query - description: The list of connectionId for which the connection information is to be returned. - required: false - schema: - type: array - items: - $ref: '#/components/schemas/connectionId-Type' - responses: - '200': - description: Success case (200 OK). The resources identified in the request for retrieval are returned in the response message body. In case the fields query parameter is used, the selected resources are returned. - content: - application/json: - schema: - type: array - items: - $ref: '#/components/schemas/connectionInfo-Type' - '202': - description: Partial success case (202 Partially retrieved). Subset of the resources identified in the request for retrieval are returned in the response message body. - content: - application/json: - schema: - type: array - items: - $ref: '#/components/schemas/connectionInfo-Type' - default: - description: Error case. - content: - application/json: - schema: - $ref: '#/components/schemas/errorResponse-Type' - '/connections/{connectionId}': - get: - summary: Obtain information about a connection. - description: Enables the streaming data reporting service producer to obtain information about one streaming connection. - parameters: - - name: connectionId - in: path - description: Indicate the ID (URI) of the connection for which the information is being retrieved - required: true - schema: - $ref: '#/components/schemas/connectionId-Type' - - name: Connection - in: header - schema: - $ref: '#/components/schemas/websocketHeaderConnection-Type' - - name: Sec-WebSocket-Extensions - in: header - schema: - $ref: '#/components/schemas/websocketHeader-Sec-WebSocket-Extensions-Type' - - name: Sec-WebSocket-Key - in: header - schema: - $ref: '#/components/schemas/websocketHeader-Sec-WebSocket-Key-Type' - - name: Sec-WebSocket-Protocol - in: header - schema: - $ref: '#/components/schemas/websocketHeader-Sec-WebSocket-Protocol-Type' - - name: Sec-WebSocket-Version - in: header - schema: - $ref: '#/components/schemas/websocketHeader-Sec-WebSocket-Version-Type' - responses: - '101': - description: Success case (101 Switching Protocols). The connection has been successfully switched to WebSocket. The response message body is absent. - headers: - Upgrade: - schema: - $ref: '#/components/schemas/websocketHeaderUpgrade-Type' - Connection: - schema: - $ref: '#/components/schemas/websocketHeaderConnection-Type' - Sec-WebSocket-Accept: - schema: - $ref: '#/components/schemas/websocketHeader-Sec-WebSocket-Accept-Type' - '200': - description: Success case (200 OK). The resource identified in the request for retrieval returned in the response message body. - content: - application/json: - schema: - $ref: '#/components/schemas/connectionInfo-Type' - default: - description: Error case. - content: - application/json: - schema: - $ref: '#/components/schemas/errorResponse-Type' - '/connections/{connectionId}/streams': - post: - summary: Inform consumer about new reporting streams on an existing connection. - description: Allows the producer to add one or more reporting streams to an already established streaming connection. - parameters: - - name: connectionId - in: path - description: Indicate the ID (URI) of the connection for which the reporting stream information is being added. - required: true - schema: - $ref: '#/components/schemas/connectionId-Type' - requestBody: - required: true - content: - application/json: - schema: - type: array - items: - $ref: '#/components/schemas/streamInfo-Type' - responses: - '201': - description: Success case (201 Posted). - content: - application/json: - schema: - type: array - items: - $ref: '#/components/schemas/streamInfo-Type' - '202': - description: Partial success case (202 Posted). - content: - application/json: - schema: - type: array - items: - $ref: '#/components/schemas/streamInfo-Type' - default: - description: Error case. - content: - application/json: - schema: - $ref: '#/components/schemas/errorResponse-Type' - delete: - summary: Remove reporting streams from an existing connection - description: Allows the producer to remove one or more reporting streams from an already established streaming connection. - parameters: - - name: connectionId - in: path - description: Indicate the ID (URI) of the connection for which the reporting stream information is being removed. - required: true - schema: - $ref: '#/components/schemas/connectionId-Type' - - name: streamIds - in: query - description: The list of streamId for the stream(s) to be deleted. - required: true - schema: - type: array - items: - $ref: '#/components/schemas/streamId-Type' - responses: - '204': - description: Success case (204 No Content). The stream information resource has been deleted. The response message body is absent. - default: - description: Error case. - content: - application/json: - schema: - $ref: '#/components/schemas/errorResponse-Type' - get: - summary: Obtain information about streams. - description: Enables the streaming data reporting service producer to obtain information about one or more reporting streams. - parameters: - - name: connectionId - in: path - description: Indicate the ID (URI) of the connection for which the information is being retrieved - required: true - schema: - $ref: '#/components/schemas/connectionId-Type' - - name: streamIds - in: query - description: The list of streamId for which the stream information is to be retrieved. - required: true - schema: - type: array - items: - $ref: '#/components/schemas/streamId-Type' - responses: - '200': - description: Success case (200 OK). - content: - application/json: - schema: - type: array - items: - $ref: '#/components/schemas/streamInfoWithReporters-Type' - '202': - description: Partial success case (202 Partially retrieved). - content: - application/json: - schema: - type: array - items: - $ref: '#/components/schemas/streamInfoWithReporters-Type' - default: - description: Error case. - content: - application/json: - schema: - $ref: '#/components/schemas/errorResponse-Type' - '/connections/{connectionId}/streams/{streamId}': - get: - summary: Obtain information about stream - description: Enables the streaming data reporting service producer to obtain information about a reporting stream. - parameters: - - name: connectionId - in: path - description: Indicate the ID (URI) of the connection for which the information is being retrieved - required: true - schema: - $ref: '#/components/schemas/connectionId-Type' - - name: streamId - in: path - description: Indicate the ID of the reporting stream for which the information is being retrieved - required: true - schema: - $ref: '#/components/schemas/streamId-Type' - responses: - '200': - description: Success case (200 OK). - content: - application/json: - schema: - $ref: '#/components/schemas/streamInfoWithReporters-Type' - default: - description: Error case. - content: - application/json: - schema: - $ref: '#/components/schemas/errorResponse-Type' -components: - schemas: - analyticsInfo-Type: - description: Information specific to analytics reporting. - type: object - properties: - activityDetails: - type: string - connectionId-Type: - $ref: '#/components/schemas/uri-Type' - connectionInfo-Type: - type: object - properties: - connection: - $ref: '#/components/schemas/connectionId-Type' - producer: - $ref: '#/components/schemas/producerId-Type' - streams: - type: array - items: - $ref: '#/components/schemas/streamId-Type' - connectionRequest-Type: - type: object - properties: - producer: - $ref: '#/components/schemas/producerId-Type' - streams: - type: array - items: - $ref: '#/components/schemas/streamInfo-Type' - errorResponse-Type: - type: object - properties: - error: - type: object - properties: - errorInfo: - type: string - failedConnectionResponse-Type: - type: object - properties: - error: - type: array - items: - type: object - properties: - streamId: - $ref: '#/components/schemas/streamId-Type' - errorReason: - type: string - measObjDn-Type: - description: DN of the measured object instance (see 3GPP TS 28.550) - allOf: - - $ref: '#/components/schemas/systemDN-Type' - measTypes-Type: - description: an ordered list of measurement type or KPI whose measurement values or KPI result values are to be reported by the Performance Data Stream Units (see Annex C of TS 28.550) via this stream - type: array - items: - type: string - performanceInfo-Type: - description: Information specific to performance data reporting - type: object - properties: - measObjDn: - $ref: '#/components/schemas/measObjDn-Type' - measTypes: - $ref: '#/components/schemas/measTypes-Type' - measurementReaderId: - $ref: '#/components/schemas/systemDN-Type' - jobId: - type: string - required: - - measObjDn - - measTypes - producerId-Type: - description: DN of the streaming data reporting MnS producer. - allOf: - - $ref: '#/components/schemas/systemDN-Type' - serializationFormat-Type: - type: string - enum: - - GPB - - ASN1 - streamId-Type: - description: globally unique stream identifier - type: string - example: '26F452550021' - streamInfo-Type: - description: Reporting stream meta-data. - type: object - properties: - streamType: - $ref: '#/components/schemas/streamType-Type' - serializationFormat: - $ref: '#/components/schemas/serializationFormat-Type' - streamId: - oneOf: - - $ref: '#/components/schemas/streamId-Type' - - $ref: '#/components/schemas/traceReference-Type' - additionalInfo: - oneOf: - - $ref: '#/components/schemas/traceInfo-Type' - - $ref: '#/components/schemas/performanceInfo-Type' - - $ref: '#/components/schemas/analyticsInfo-Type' - - $ref: '#/components/schemas/vsDataContainer-Type' - required: - - streamType - - serializationFormat - - streamId - streamInfoWithReporters-Type: - description: Reporting stream meta-data with added information about reporters. - type: object - properties: - streamInfo: - $ref: '#/components/schemas/streamInfo-Type' - reporters: - type: array - items: - $ref: '#/components/schemas/producerId-Type' - systemDN-Type: - description: See 3GPP TS 32.300 for details - type: string - example: 'SubNetwork=ABCNetwork,SubNetwork=MUC01,GNBDUFunction=XYZ0100' - streamType-Type: - type: string - enum: - - TRACE - - PERFORMANCE - - ANALYTICS - - PROPRIETARY - traceInfo-Type: - description: Information specific to trace data reporting - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/TraceJob-Attr' - traceReference-Type: - description: Trace Reference (see clause 5.6 of 3GPP TS 32.422) as stream identifier for streaming trace data reporting - type: string - example: '4358070034D7' - uri-Type: - description: Resource URI - type: string - vsDataContainer-Type: - description: container for vendor specific data (see 3GPP TS 28.622) - type: object - properties: - vsDataType: - type: string - vsData: - type: string - vsDataFormatVersion: - type: string - websocketHeaderConnection-Type: - description: Header value for the upgrade request and response. - type: string - enum: - - Upgrade - websocketHeaderUpgrade-Type: - description: Header value for the upgrade to WebSocket request and response. - type: string - enum: - - websocket - websocketHeader-Sec-WebSocket-Accept-Type: - description: Header value for secure WebSocket response. Carries hash. - type: string - websocketHeader-Sec-WebSocket-Extensions-Type: - description: Header value for secure WebSocket request. Carries protocol extensions. - type: string - websocketHeader-Sec-WebSocket-Key-Type: - description: Header value for secure WebSocket request. Provides information to the server which is needed in order to confirm that the client is entitled to request an upgrade to WebSocket. - type: string - websocketHeader-Sec-WebSocket-Protocol-Type: - description: Header value for secure WebSocket request. Carries a comma-separated list of subprotocol names, in the order of preference. - type: string - websocketHeader-Sec-WebSocket-Version-Type: - description: Header value for secure WebSocket request and response. Carries the WebSocket protocol version to be used. - type: string -- GitLab From 224ca3c2e2831351f327a4be0b8c4287387bf231 Mon Sep 17 00:00:00 2001 From: "U-ERICSSON\\ETHBLL" Date: Sun, 2 Jan 2022 18:54:31 +0100 Subject: [PATCH 224/593] del readme from openapi --- OpenAPI/README.md | 73 ----------------------------------------------- 1 file changed, 73 deletions(-) delete mode 100644 OpenAPI/README.md diff --git a/OpenAPI/README.md b/OpenAPI/README.md deleted file mode 100644 index 9de057463..000000000 --- a/OpenAPI/README.md +++ /dev/null @@ -1,73 +0,0 @@ -# 3GPP SA5 models and MnS OpenAPI definitions - -(c) 2020, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). All rights reserved. - -The links below will open the Swagger Editor/UI and auto-load the OpenAPI YAML file of each API: - - -## Network Resource Models (NRM) - -* Generic NRM (TS 28.623) -([Editor](https://forge.3gpp.org/swagger/tools/loader.html?yaml=OpenAPI/genericNrm.yaml)) -([UI](https://forge.3gpp.org/swagger/tools/loader.html?action=ui&yaml=OpenAPI/genericNrm.yaml)) - -* Common NRM definitions (TS 28.623) -([Editor](https://forge.3gpp.org/swagger/tools/loader.html?yaml=OpenAPI/comDefs.yaml)) -([UI](https://forge.3gpp.org/swagger/tools/loader.html?action=ui&yaml=OpenAPI/comDefs.yaml)) - -* NR NRM (TS 28.541) -([Editor](https://forge.3gpp.org/swagger/tools/loader.html?yaml=OpenAPI/nrNrm.yaml)) -([UI](https://forge.3gpp.org/swagger/tools/loader.html?action=ui&yaml=OpenAPI/nrNrm.yaml)) - -* 5GC NRM (TS 28.541) -([Editor](https://forge.3gpp.org/swagger/tools/loader.html?yaml=OpenAPI/5gcNrm.yaml)) -([UI](https://forge.3gpp.org/swagger/tools/loader.html?action=ui&yaml=OpenAPI/5gcNrm.yaml)) - -* Slice NRM (TS 28.541) -([Editor](https://forge.3gpp.org/swagger/tools/loader.html?yaml=OpenAPI/sliceNrm.yaml)) -([UI](https://forge.3gpp.org/swagger/tools/loader.html?action=ui&yaml=OpenAPI/sliceNrm.yaml)) - -* Communication Service Assurance NRM (TS 28.536) -([Editor](https://forge.3gpp.org/swagger/tools/loader.html?yaml=OpenAPI/coslaNrm.yaml)) -([UI](https://forge.3gpp.org/swagger/tools/loader.html?action=ui&yaml=OpenAPI/coslaNrm.yaml)) - -## Management Services (MnS) - -* Provisioning MnS (TS 28.532) -([Editor](https://forge.3gpp.org/swagger/tools/loader.html?yaml=OpenAPI/provMnS.yaml)) -([UI](https://forge.3gpp.org/swagger/tools/loader.html?action=ui&yaml=OpenAPI/provMnS.yaml)) - -* Fault Supervision MnS (TS 28.532) -([Editor](https://forge.3gpp.org/swagger/tools/loader.html?yaml=OpenAPI/faultMnS.yaml)) -([UI](https://forge.3gpp.org/swagger/tools/loader.html?action=ui&yaml=OpenAPI/faultMnS.yaml)) - -* Performance Measurement Job Control MnS (28.550) -([Editor](https://forge.3gpp.org/swagger/tools/loader.html?yaml=OpenAPI/PerMeasJobCtlMnS.yaml)) -([UI](https://forge.3gpp.org/swagger/tools/loader.html?action=ui&yaml=OpenAPI/PerMeasJobCtlMnS.yaml)) - -* Performance Data File Reporting MnS (TS 28.532) -([Editor](https://forge.3gpp.org/swagger/tools/loader.html?yaml=OpenAPI/PerDataFileReportMnS.yaml)) -([UI](https://forge.3gpp.org/swagger/tools/loader.html?action=ui&yaml=OpenAPI/PerDataFileReportMnS.yaml)) - -* Performance Threshold Monitoring MnS (TS 28.532) -([Editor](https://forge.3gpp.org/swagger/tools/loader.html?yaml=OpenAPI/PerThresMonMnS.yaml)) -([UI](https://forge.3gpp.org/swagger/tools/loader.html?action=ui&yaml=OpenAPI/PerThresMonMnS.yaml)) - -* Heartbeat Notifications(TS 28.532) -([Editor](https://forge.3gpp.org/swagger/tools/loader.html?yaml=OpenAPI/heartbeatNtf.yaml)) -([UI](https://forge.3gpp.org/swagger/tools/loader.html?action=ui&yaml=OpenAPI/heartbeatNtf.yaml)) - -* Streaming Data Reporting MnS (TS 28.532) -([Editor](https://forge.3gpp.org/swagger/tools/loader.html?yaml=OpenAPI/streamingDataMnS.yaml)) -([UI](https://forge.3gpp.org/swagger/tools/loader.html?action=ui&yaml=OpenAPI/streamingDataMnS.yaml)) - -## Tools - -* [Frontend](https://forge.3gpp.org/swagger/tools/GitlabOpenAPIFrontend.htm) to invoke the Swagger Editor, Swagger UI, or to parse OpenAPI files with APIDevTools Swagger Parser/Validator, or to search for APIs referencing a data structure -* [API Parser/Linter](https://forge.3gpp.org/swagger/tools/parser.html) to parse OpenAPI files with APIDevTools Swagger Parser/Validator and run a number of [lint](https://en.wikipedia.org/wiki/Lint_\(software\)) rules to improve API quality -* [Data Type Finder](https://forge.3gpp.org/swagger/tools/types.html) to find the impacted APIs due to a change on a given data type -* [API Versions Overview](https://forge.3gpp.org/swagger/tools/versions.html) to show a comprehensive report of the versions of all APIs in the repository - -## Other 3GPP API definitions - -* [CT4](https://forge.3gpp.org/rep/3GPP/5G_APIs) specifications. -- GitLab From 73486562698ca155105a6687c32d6d1d0cad53de Mon Sep 17 00:00:00 2001 From: "U-ERICSSON\\ETHBLL" Date: Sun, 2 Jan 2022 18:57:24 +0100 Subject: [PATCH 225/593] add back OpenApi from Rel17-draft --- OpenAPI/5gcNrm.yaml | 2185 +++++++++++++++++++++++++++++ OpenAPI/PerDataFileReportMnS.yaml | 13 + OpenAPI/PerMeasJobCtlMnS.yaml | 280 ++++ OpenAPI/PerThresMonMnS.yaml | 102 ++ OpenAPI/PerfDataStreamingMnS.yaml | 363 +++++ OpenAPI/README.md | 73 + OpenAPI/comDefs.yaml | 84 ++ OpenAPI/coslaNrm.yaml | 168 +++ OpenAPI/faultMnS.yaml | 1144 +++++++++++++++ OpenAPI/genericNrm.yaml | 1606 +++++++++++++++++++++ OpenAPI/heartbeatNtf.yaml | 23 + OpenAPI/nrNrm.yaml | 1905 +++++++++++++++++++++++++ OpenAPI/provMnS.yaml | 579 ++++++++ OpenAPI/sliceNrm.yaml | 632 +++++++++ OpenAPI/streamingDataMnS.yaml | 453 ++++++ 15 files changed, 9610 insertions(+) create mode 100644 OpenAPI/5gcNrm.yaml create mode 100644 OpenAPI/PerDataFileReportMnS.yaml create mode 100644 OpenAPI/PerMeasJobCtlMnS.yaml create mode 100644 OpenAPI/PerThresMonMnS.yaml create mode 100644 OpenAPI/PerfDataStreamingMnS.yaml create mode 100644 OpenAPI/README.md create mode 100644 OpenAPI/comDefs.yaml create mode 100644 OpenAPI/coslaNrm.yaml create mode 100644 OpenAPI/faultMnS.yaml create mode 100644 OpenAPI/genericNrm.yaml create mode 100644 OpenAPI/heartbeatNtf.yaml create mode 100644 OpenAPI/nrNrm.yaml create mode 100644 OpenAPI/provMnS.yaml create mode 100644 OpenAPI/sliceNrm.yaml create mode 100644 OpenAPI/streamingDataMnS.yaml diff --git a/OpenAPI/5gcNrm.yaml b/OpenAPI/5gcNrm.yaml new file mode 100644 index 000000000..e4c4b2619 --- /dev/null +++ b/OpenAPI/5gcNrm.yaml @@ -0,0 +1,2185 @@ +openapi: 3.0.1 +info: + title: 3GPP 5GC NRM + version: 17.4.0 + description: >- + OAS 3.0.1 specification of the 5GC NRM + © 2020, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). + All rights reserved. +externalDocs: + description: 3GPP TS 28.541; 5G NRM, 5GC NRM + url: http://www.3gpp.org/ftp/Specs/archive/28_series/28.541/ +paths: {} +components: + schemas: + +#-------- Definition of types----------------------------------------------------- + + AmfIdentifier: + type: object + description: 'AmfIdentifier comprise of amfRegionId, amfSetId and amfPointer' + properties: + amfRegionId: + $ref: '#/components/schemas/AmfRegionId' + amfSetId: + $ref: '#/components/schemas/AmfSetId' + amfPointer: + $ref: '#/components/schemas/AmfPointer' + AmfRegionId: + type: integer + description: AmfRegionId is defined in TS 23.003 + maximum: 255 + AmfSetId: + type: string + description: AmfSetId is defined in TS 23.003 + maximum: 1023 + AmfPointer: + type: integer + description: AmfPointer is defined in TS 23.003 + maximum: 63 + IpEndPoint: + type: object + properties: + ipv4Address: + $ref: 'genericNrm.yaml#/components/schemas/Ipv4Addr' + ipv6Address: + $ref: 'genericNrm.yaml#/components/schemas/Ipv6Addr' + ipv6Prefix: + $ref: 'genericNrm.yaml#/components/schemas/Ipv6Prefix' + transport: + $ref: 'genericNrm.yaml#/components/schemas/TransportProtocol' + port: + type: integer + NFProfileList: + type: array + description: List of NF profile + items: + $ref: '#/components/schemas/NFProfile' + NFProfile: + type: object + description: 'NF profile stored in NRF, defined in TS 29.510' + properties: + nFInstanceId: + type: string + description: uuid of NF instance + nFType: + $ref: 'genericNrm.yaml#/components/schemas/NFType' + nFStatus: + $ref: '#/components/schemas/NFStatus' + plmn: + $ref: 'nrNrm.yaml#/components/schemas/PlmnId' + sNssais: + $ref: 'nrNrm.yaml#/components/schemas/Snssai' + fqdn: + $ref: 'genericNrm.yaml#/components/schemas/Fqdn' + interPlmnFqdn: + $ref: 'genericNrm.yaml#/components/schemas/Fqdn' + nfServices: + type: array + items: + $ref: '#/components/schemas/NFService' + NFService: + type: object + description: NF Service is defined in TS 29.510 + properties: + serviceInstanceId: + type: string + serviceName: + type: string + version: + type: string + schema: + type: string + fqdn: + $ref: 'genericNrm.yaml#/components/schemas/Fqdn' + interPlmnFqdn: + $ref: 'genericNrm.yaml#/components/schemas/Fqdn' + ipEndPoints: + type: array + items: + $ref: '#/components/schemas/IpEndPoint' + apiPrfix: + type: string + allowedPlmns: + $ref: 'nrNrm.yaml#/components/schemas/PlmnId' + allowedNfTypes: + type: array + items: + $ref: 'genericNrm.yaml#/components/schemas/NFType' + allowedNssais: + type: array + items: + $ref: 'nrNrm.yaml#/components/schemas/Snssai' + NFStatus: + type: string + description: any of enumrated value + enum: + - REGISTERED + - SUSPENDED + CNSIIdList: + type: array + items: + $ref: '#/components/schemas/CNSIId' + CNSIId: + type: string + description: CNSI Id is defined in TS 29.531, only for Core Network + TACList: + type: array + items: + $ref: 'nrNrm.yaml#/components/schemas/NrTac' + WeightFactor: + type: integer + UdmInfo: + type: object + properties: + nFSrvGroupId: + type: string + AusfInfo: + type: object + properties: + nFSrvGroupId: + type: string + UpfInfo: + type: object + properties: + smfServingAreas: + type: string + AmfInfo: + type: object + properties: + priority: + type: integer + SupportedDataSetId: + type: string + description: any of enumrated value + enum: + - SUBSCRIPTION + - POLICY + - EXPOSURE + - APPLICATION + Udrinfo: + type: object + properties: + supportedDataSetIds: + type: array + items: + $ref: '#/components/schemas/SupportedDataSetId' + nFSrvGroupId: + type: string + NFInfo: + oneOf: + - $ref: '#/components/schemas/UdmInfo' + - $ref: '#/components/schemas/AusfInfo' + - $ref: '#/components/schemas/UpfInfo' + - $ref: '#/components/schemas/AmfInfo' + - $ref: '#/components/schemas/Udrinfo' + ManagedNFProfile: + type: object + properties: + nfInstanceID: + type: string + nfType: + $ref: 'genericNrm.yaml#/components/schemas/NFType' + authzInfo: + type: string + hostAddr: + $ref: 'genericNrm.yaml#/components/schemas/HostAddr' + locality: + type: string + nFInfo: + $ref: '#/components/schemas/NFInfo' + capacity: + type: integer + SEPPType: + type: string + description: any of enumrated value + enum: + - CSEPP + - PSEPP + SupportedFunc: + type: object + properties: + function: + type: string + policy: + type: string + SupportedFuncList: + type: array + items: + $ref: '#/components/schemas/SupportedFunc' + CommModelType: + type: string + description: any of enumrated value + enum: + - DIRECT_COMMUNICATION_WO_NRF + - DIRECT_COMMUNICATION_WITH_NRF + - INDIRECT_COMMUNICATION_WO_DEDICATED_DISCOVERY + - INDIRECT_COMMUNICATION_WITH_DEDICATED_DISCOVERY + CommModel: + type: object + properties: + groupId: + type: integer + commModelType: + $ref: '#/components/schemas/CommModelType' + targetNFServiceList: + $ref: 'genericNrm.yaml#/components/schemas/DnList' + commModelConfiguration: + type: string + CommModelList: + type: array + items: + $ref: '#/components/schemas/CommModel' + CapabilityList: + type: array + items: + type: string + FiveQiDscpMapping: + type: object + properties: + fiveQIValues: + type: array + items: + type: integer + dscp: + type: integer + NetworkSliceInfo: + type: object + properties: + sNSSAI: + $ref: 'nrNrm.yaml#/components/schemas/Snssai' + cNSIId: + $ref: '#/components/schemas/CNSIId' + networkSliceRef: + $ref: 'genericNrm.yaml#/components/schemas/DnList' + NetworkSliceInfoList: + type: array + items: + $ref: '#/components/schemas/NetworkSliceInfo' + + + PacketErrorRate: + type: object + properties: + scalar: + type: integer + exponent: + type: integer + + + + GtpUPathDelayThresholdsType: + type: object + properties: + n3AveragePacketDelayThreshold: + type: integer + n3MinPacketDelayThreshold: + type: integer + n3MaxPacketDelayThreshold: + type: integer + n9AveragePacketDelayThreshold: + type: integer + n9MinPacketDelayThreshold: + type: integer + n9MaxPacketDelayThreshold: + type: integer + QFPacketDelayThresholdsType: + type: object + properties: + thresholdDl: + type: integer + thresholdUl: + type: integer + thresholdRtt: + type: integer + + QosData: + type: object + properties: + qosId: + type: string + fiveQIValue: + type: integer + maxbrUl: + $ref: 'https://forge.3gpp.org/rep/all/5G_APIs/raw/REL-16/TS29571_CommonData.yaml#/components/schemas/BitRateRm' + maxbrDl: + $ref: 'https://forge.3gpp.org/rep/all/5G_APIs/raw/REL-16/TS29571_CommonData.yaml#/components/schemas/BitRateRm' + gbrUl: + $ref: 'https://forge.3gpp.org/rep/all/5G_APIs/raw/REL-16/TS29571_CommonData.yaml#/components/schemas/BitRateRm' + gbrDl: + $ref: 'https://forge.3gpp.org/rep/all/5G_APIs/raw/REL-16/TS29571_CommonData.yaml#/components/schemas/BitRateRm' + arp: + $ref: 'https://forge.3gpp.org/rep/all/5G_APIs/raw/REL-16/TS29571_CommonData.yaml#/components/schemas/Arp' + qosNotificationControl: + type: boolean + reflectiveQos: + type: boolean + sharingKeyDl: + type: string + sharingKeyUl: + type: string + maxPacketLossRateDl: + $ref: 'https://forge.3gpp.org/rep/all/5G_APIs/raw/REL-16/TS29571_CommonData.yaml#/components/schemas/PacketLossRateRm' + maxPacketLossRateUl: + $ref: 'https://forge.3gpp.org/rep/all/5G_APIs/raw/REL-16/TS29571_CommonData.yaml#/components/schemas/PacketLossRateRm' + extMaxDataBurstVol: + $ref: 'https://forge.3gpp.org/rep/all/5G_APIs/raw/REL-16/TS29571_CommonData.yaml#/components/schemas/ExtMaxDataBurstVolRm' + + QosDataList: + type: array + items: + $ref: '#/components/schemas/QosData' + + SteeringMode: + type: object + properties: + steerModeValue: + $ref: 'https://forge.3gpp.org/rep/all/5G_APIs/raw/REL-16/TS29512_Npcf_SMPolicyControl.yaml#/components/schemas/SteerModeValue' + active: + $ref: 'https://forge.3gpp.org/rep/all/5G_APIs/raw/REL-16/TS29571_CommonData.yaml#/components/schemas/AccessType' + standby: + $ref: 'https://forge.3gpp.org/rep/all/5G_APIs/raw/REL-16/TS29571_CommonData.yaml#/components/schemas/AccessTypeRm' + threeGLoad: + $ref: 'https://forge.3gpp.org/rep/all/5G_APIs/raw/REL-16/TS29571_CommonData.yaml#/components/schemas/Uinteger' + prioAcc: + $ref: 'https://forge.3gpp.org/rep/all/5G_APIs/raw/REL-16/TS29571_CommonData.yaml#/components/schemas/AccessType' + + TrafficControlData: + type: object + properties: + tcId: + type: string + flowStatus: + $ref: 'https://forge.3gpp.org/rep/all/5G_APIs/raw/REL-16/TS29514_Npcf_PolicyAuthorization.yaml#/components/schemas/FlowStatus' + redirectInfo: + $ref: 'https://forge.3gpp.org/rep/all/5G_APIs/raw/REL-16/TS29512_Npcf_SMPolicyControl.yaml#/components/schemas/RedirectInformation' + addRedirectInfo: + type: array + items: + $ref: 'https://forge.3gpp.org/rep/all/5G_APIs/raw/REL-16/TS29512_Npcf_SMPolicyControl.yaml#/components/schemas/RedirectInformation' + minItems: 1 + muteNotif: + type: boolean + trafficSteeringPolIdDl: + type: string + nullable: true + trafficSteeringPolIdUl: + type: string + nullable: true + routeToLocs: + type: array + items: + $ref: 'https://forge.3gpp.org/rep/all/5G_APIs/raw/REL-16/TS29571_CommonData.yaml#/components/schemas/RouteToLocation' + traffCorreInd: + type: boolean + upPathChgEvent: + $ref: 'https://forge.3gpp.org/rep/all/5G_APIs/raw/REL-16/TS29512_Npcf_SMPolicyControl.yaml#/components/schemas/UpPathChgEvent' + steerFun: + $ref: 'https://forge.3gpp.org/rep/all/5G_APIs/raw/REL-16/TS29512_Npcf_SMPolicyControl.yaml#/components/schemas/SteeringFunctionality' + steerModeDl: + $ref: '#/components/schemas/SteeringMode' + steerModeUl: + $ref: '#/components/schemas/SteeringMode' + mulAccCtrl: + $ref: 'https://forge.3gpp.org/rep/all/5G_APIs/raw/REL-16/TS29512_Npcf_SMPolicyControl.yaml#/components/schemas/MulticastAccessControl' + + TrafficControlDataList: + type: array + items: + $ref: '#/components/schemas/TrafficControlData' + + PccRule: + type: object + properties: + pccRuleId: + type: string + description: Univocally identifies the PCC rule within a PDU session. + flowInfoList: + type: array + items: + $ref: 'https://forge.3gpp.org/rep/all/5G_APIs/raw/REL-16/TS29512_Npcf_SMPolicyControl.yaml#/components/schemas/FlowInformation' + applicationId: + type: string + appDescriptor: + $ref: 'https://forge.3gpp.org/rep/all/5G_APIs/raw/REL-16/TS29512_Npcf_SMPolicyControl.yaml#/components/schemas/ApplicationDescriptor' + contentVersion: + $ref: 'https://forge.3gpp.org/rep/all/5G_APIs/raw/REL-16/TS29514_Npcf_PolicyAuthorization.yaml#/components/schemas/ContentVersion' + precedence: + $ref: 'https://forge.3gpp.org/rep/all/5G_APIs/raw/REL-16/TS29571_CommonData.yaml#/components/schemas/Uinteger' + afSigProtocol: + $ref: 'https://forge.3gpp.org/rep/all/5G_APIs/raw/REL-16/TS29512_Npcf_SMPolicyControl.yaml#/components/schemas/AfSigProtocol' + isAppRelocatable: + type: boolean + isUeAddrPreserved: + type: boolean + qosData: + type: array + items: + $ref: '#/components/schemas/QosDataList' + altQosParams: + type: array + items: + $ref: '#/components/schemas/QosDataList' + trafficControlData: + type: array + items: + $ref: '#/components/schemas/TrafficControlDataList' + conditionData: + $ref: 'https://forge.3gpp.org/rep/all/5G_APIs/raw/REL-16/TS29512_Npcf_SMPolicyControl.yaml#/components/schemas/ConditionData' + tscaiInputDl: + $ref: 'https://forge.3gpp.org/rep/all/5G_APIs/raw/REL-16/TS29514_Npcf_PolicyAuthorization.yaml#/components/schemas/TscaiInputContainer' + tscaiInputUl: + $ref: 'https://forge.3gpp.org/rep/all/5G_APIs/raw/REL-16/TS29514_Npcf_PolicyAuthorization.yaml#/components/schemas/TscaiInputContainer' + + SnssaiInfo: + type: object + properties: + plmnInfo: + $ref: 'nrNrm.yaml#/components/schemas/PlmnInfo' + administrativeState: + $ref: 'genericNrm.yaml#/components/schemas/AdministrativeState' + + NsacfInfoSnssai: + type: object + properties: + SnssaiInfo: + $ref: '#/components/schemas/SnssaiInfo' + isSubjectToNsac: + type: boolean + maxNumberofUEs: + type: integer + eACMode: + type: string + enum: + - INACTIVE + - ACTIVE + activeEacThreshhold: + type: integer + deactiveEacThreshhold: + type: integer + numberofUEs: + type: integer + uEIdList: + type: array + items: + type: string + + +#-------- Definition of concrete IOCs -------------------------------------------- + + SubNetwork-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/SubNetwork-Attr' + - $ref: 'genericNrm.yaml#/components/schemas/SubNetwork-ncO' + - type: object + properties: + SubNetwork: + $ref: '#/components/schemas/SubNetwork-Multiple' + ManagedElement: + $ref: '#/components/schemas/ManagedElement-Multiple' + ExternalAmfFunction: + $ref: '#/components/schemas/ExternalAmfFunction-Multiple' + ExternalNrfFunction: + $ref: '#/components/schemas/ExternalNrfFunction-Multiple' + ExternalNssfFunction: + $ref: '#/components/schemas/ExternalNssfFunction-Multiple' + AmfSet: + $ref: '#/components/schemas/AmfSet-Multiple' + AmfRegion: + $ref: '#/components/schemas/AmfRegion-Multiple' + Configurable5QISet: + $ref: '#/components/schemas/Configurable5QISet-Multiple' + Dynamic5QISet: + $ref: '#/components/schemas/Dynamic5QISet-Multiple' + + ManagedElement-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/ManagedElement-Attr' + - $ref: 'genericNrm.yaml#/components/schemas/ManagedElement-ncO' + - type: object + properties: + AmfFunction: + $ref: '#/components/schemas/AmfFunction-Multiple' + SmfFunction: + $ref: '#/components/schemas/SmfFunction-Multiple' + UpfFunction: + $ref: '#/components/schemas/UpfFunction-Multiple' + N3iwfFunction: + $ref: '#/components/schemas/N3iwfFunction-Multiple' + PcfFunction: + $ref: '#/components/schemas/PcfFunction-Multiple' + AusfFunction: + $ref: '#/components/schemas/AusfFunction-Multiple' + UdmFunction: + $ref: '#/components/schemas/UdmFunction-Multiple' + UdrFunction: + $ref: '#/components/schemas/UdrFunction-Multiple' + UdsfFunction: + $ref: '#/components/schemas/UdsfFunction-Multiple' + NrfFunction: + $ref: '#/components/schemas/NrfFunction-Multiple' + NssfFunction: + $ref: '#/components/schemas/NssfFunction-Multiple' + SmsfFunction: + $ref: '#/components/schemas/SmsfFunction-Multiple' + LmfFunction: + $ref: '#/components/schemas/LmfFunction-Multiple' + NgeirFunction: + $ref: '#/components/schemas/NgeirFunction-Multiple' + SeppFunction: + $ref: '#/components/schemas/SeppFunction-Multiple' + NwdafFunction: + $ref: '#/components/schemas/NwdafFunction-Multiple' + ScpFunction: + $ref: '#/components/schemas/ScpFunction-Multiple' + NefFunction: + $ref: '#/components/schemas/NefFunction-Multiple' + Configurable5QISet: + $ref: '#/components/schemas/Configurable5QISet-Multiple' + Dynamic5QISet: + $ref: '#/components/schemas/Dynamic5QISet-Multiple' + + AmfFunction-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' + - type: object + properties: + plmnIdList: + $ref: 'nrNrm.yaml#/components/schemas/PlmnIdList' + amfIdentifier: + $ref: '#/components/schemas/AmfIdentifier' + sBIFqdn: + type: string + weightFactor: + $ref: '#/components/schemas/WeightFactor' + snssaiList: + $ref: 'nrNrm.yaml#/components/schemas/SnssaiList' + amfSet: + $ref: 'genericNrm.yaml#/components/schemas/Dn' + managedNFProfile: + $ref: '#/components/schemas/ManagedNFProfile' + commModelList: + $ref: '#/components/schemas/CommModelList' + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' + - type: object + properties: + EP_N2: + $ref: '#/components/schemas/EP_N2-Multiple' + EP_N8: + $ref: '#/components/schemas/EP_N8-Multiple' + EP_N11: + $ref: '#/components/schemas/EP_N11-Multiple' + EP_N12: + $ref: '#/components/schemas/EP_N12-Multiple' + EP_N14: + $ref: '#/components/schemas/EP_N14-Multiple' + EP_N15: + $ref: '#/components/schemas/EP_N15-Multiple' + EP_N17: + $ref: '#/components/schemas/EP_N17-Multiple' + EP_N20: + $ref: '#/components/schemas/EP_N20-Multiple' + EP_N22: + $ref: '#/components/schemas/EP_N22-Multiple' + EP_N26: + $ref: '#/components/schemas/EP_N26-Multiple' + EP_NLS: + $ref: '#/components/schemas/EP_NLS-Multiple' + EP_NLG: + $ref: '#/components/schemas/EP_NLG-Multiple' + AmfSet-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' + - type: object + properties: + plmnIdList: + $ref: 'nrNrm.yaml#/components/schemas/PlmnIdList' + nRTACList: + $ref: '#/components/schemas/TACList' + amfSetId: + $ref: '#/components/schemas/AmfSetId' + snssaiList: + $ref: 'nrNrm.yaml#/components/schemas/SnssaiList' + AmfRegion-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' + - type: object + properties: + plmnIdList: + $ref: 'nrNrm.yaml#/components/schemas/PlmnIdList' + nRTACList: + $ref: '#/components/schemas/TACList' + amfRegionId: + $ref: '#/components/schemas/AmfRegionId' + snssaiList: + $ref: 'nrNrm.yaml#/components/schemas/SnssaiList' + SmfFunction-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' + - type: object + properties: + plmnIdList: + $ref: 'nrNrm.yaml#/components/schemas/PlmnIdList' + nRTACList: + $ref: '#/components/schemas/TACList' + sBIFqdn: + type: string + snssaiList: + $ref: 'nrNrm.yaml#/components/schemas/SnssaiList' + managedNFProfile: + $ref: '#/components/schemas/ManagedNFProfile' + commModelList: + $ref: '#/components/schemas/CommModelList' + configurable5QISetRef: + $ref: 'genericNrm.yaml#/components/schemas/Dn' + dynamic5QISetRef: + $ref: 'genericNrm.yaml#/components/schemas/Dn' + + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' + - type: object + properties: + EP_N4: + $ref: '#/components/schemas/EP_N4-Multiple' + EP_N7: + $ref: '#/components/schemas/EP_N7-Multiple' + EP_N10: + $ref: '#/components/schemas/EP_N10-Multiple' + EP_N11: + $ref: '#/components/schemas/EP_N11-Multiple' + EP_N16: + $ref: '#/components/schemas/EP_N16-Multiple' + EP_S5C: + $ref: '#/components/schemas/EP_S5C-Multiple' + FiveQiDscpMappingSet: + $ref: '#/components/schemas/FiveQiDscpMappingSet-Single' + GtpUPathQoSMonitoringControl: + $ref: '#/components/schemas/GtpUPathQoSMonitoringControl-Single' + QFQoSMonitoringControl: + $ref: '#/components/schemas/QFQoSMonitoringControl-Single' + PredefinedPccRuleSet: + $ref: '#/components/schemas/PredefinedPccRuleSet-Single' + + UpfFunction-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' + - type: object + properties: + plmnIdList: + $ref: 'nrNrm.yaml#/components/schemas/PlmnIdList' + nRTACList: + $ref: '#/components/schemas/TACList' + snssaiList: + $ref: 'nrNrm.yaml#/components/schemas/SnssaiList' + managedNFProfile: + $ref: '#/components/schemas/ManagedNFProfile' + commModelList: + $ref: '#/components/schemas/CommModelList' + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' + - type: object + properties: + EP_N3: + $ref: '#/components/schemas/EP_N3-Multiple' + EP_N4: + $ref: '#/components/schemas/EP_N4-Multiple' + EP_N6: + $ref: '#/components/schemas/EP_N6-Multiple' + EP_N9: + $ref: '#/components/schemas/EP_N9-Multiple' + EP_S5U: + $ref: '#/components/schemas/EP_S5U-Multiple' + N3iwfFunction-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' + - type: object + properties: + plmnIdList: + $ref: 'nrNrm.yaml#/components/schemas/PlmnIdList' + commModelList: + $ref: '#/components/schemas/CommModelList' + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' + - type: object + properties: + EP_N3: + $ref: '#/components/schemas/EP_N3-Multiple' + EP_N4: + $ref: '#/components/schemas/EP_N4-Multiple' + PcfFunction-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' + - type: object + properties: + plmnIdList: + $ref: 'nrNrm.yaml#/components/schemas/PlmnIdList' + sBIFqdn: + type: string + snssaiList: + $ref: 'nrNrm.yaml#/components/schemas/SnssaiList' + managedNFProfile: + $ref: '#/components/schemas/ManagedNFProfile' + commModelList: + $ref: '#/components/schemas/CommModelList' + configurable5QISetRef: + $ref: 'genericNrm.yaml#/components/schemas/Dn' + dynamic5QISetRef: + $ref: 'genericNrm.yaml#/components/schemas/Dn' + + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' + - type: object + properties: + EP_N5: + $ref: '#/components/schemas/EP_N5-Multiple' + EP_N7: + $ref: '#/components/schemas/EP_N7-Multiple' + EP_N15: + $ref: '#/components/schemas/EP_N15-Multiple' + EP_N16: + $ref: '#/components/schemas/EP_N16-Multiple' + EP_Rx: + $ref: '#/components/schemas/EP_Rx-Multiple' + PredefinedPccRuleSet: + $ref: '#/components/schemas/PredefinedPccRuleSet-Single' + + AusfFunction-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' + - type: object + properties: + plmnIdList: + $ref: 'nrNrm.yaml#/components/schemas/PlmnIdList' + sBIFqdn: + type: string + snssaiList: + $ref: 'nrNrm.yaml#/components/schemas/SnssaiList' + managedNFProfile: + $ref: '#/components/schemas/ManagedNFProfile' + commModelList: + $ref: '#/components/schemas/CommModelList' + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' + - type: object + properties: + EP_N12: + $ref: '#/components/schemas/EP_N12-Multiple' + EP_N13: + $ref: '#/components/schemas/EP_N13-Multiple' + UdmFunction-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' + - type: object + properties: + plmnIdList: + $ref: 'nrNrm.yaml#/components/schemas/PlmnIdList' + sBIFqdn: + type: string + snssaiList: + $ref: 'nrNrm.yaml#/components/schemas/SnssaiList' + managedNFProfile: + $ref: '#/components/schemas/ManagedNFProfile' + commModelList: + $ref: '#/components/schemas/CommModelList' + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' + - type: object + properties: + EP_N8: + $ref: '#/components/schemas/EP_N8-Multiple' + EP_N10: + $ref: '#/components/schemas/EP_N10-Multiple' + EP_N13: + $ref: '#/components/schemas/EP_N13-Multiple' + UdrFunction-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' + - type: object + properties: + plmnIdList: + $ref: 'nrNrm.yaml#/components/schemas/PlmnIdList' + sBIFqdn: + type: string + snssaiList: + $ref: 'nrNrm.yaml#/components/schemas/SnssaiList' + managedNFProfile: + $ref: '#/components/schemas/ManagedNFProfile' + UdsfFunction-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' + - type: object + properties: + plmnIdList: + $ref: 'nrNrm.yaml#/components/schemas/PlmnIdList' + sBIFqdn: + type: string + snssaiList: + $ref: 'nrNrm.yaml#/components/schemas/SnssaiList' + managedNFProfile: + $ref: '#/components/schemas/ManagedNFProfile' + NrfFunction-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' + - type: object + properties: + plmnIdList: + $ref: 'nrNrm.yaml#/components/schemas/PlmnIdList' + sBIFqdn: + type: string + cNSIIdList: + $ref: '#/components/schemas/CNSIIdList' + nFProfileList: + $ref: '#/components/schemas/NFProfileList' + snssaiList: + $ref: 'nrNrm.yaml#/components/schemas/SnssaiList' + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' + - type: object + properties: + EP_N27: + $ref: '#/components/schemas/EP_N27-Multiple' + NssfFunction-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' + - type: object + properties: + plmnIdList: + $ref: 'nrNrm.yaml#/components/schemas/PlmnIdList' + sBIFqdn: + type: string + cNSIIdList: + $ref: '#/components/schemas/CNSIIdList' + nFProfileList: + $ref: '#/components/schemas/NFProfileList' + snssaiList: + $ref: 'nrNrm.yaml#/components/schemas/SnssaiList' + commModelList: + $ref: '#/components/schemas/CommModelList' + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' + - type: object + properties: + EP_N22: + $ref: '#/components/schemas/EP_N22-Multiple' + EP_N31: + $ref: '#/components/schemas/EP_N31-Multiple' + SmsfFunction-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' + - type: object + properties: + plmnIdList: + $ref: 'nrNrm.yaml#/components/schemas/PlmnIdList' + sBIFqdn: + type: string + managedNFProfile: + $ref: '#/components/schemas/ManagedNFProfile' + commModelList: + $ref: '#/components/schemas/CommModelList' + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' + - type: object + properties: + EP_N20: + $ref: '#/components/schemas/EP_N20-Multiple' + EP_N21: + $ref: '#/components/schemas/EP_N21-Multiple' + EP_MAP_SMSC: + $ref: '#/components/schemas/EP_MAP_SMSC-Multiple' + LmfFunction-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' + - type: object + properties: + plmnIdList: + $ref: 'nrNrm.yaml#/components/schemas/PlmnIdList' + managedNFProfile: + $ref: '#/components/schemas/ManagedNFProfile' + commModelList: + $ref: '#/components/schemas/CommModelList' + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' + - type: object + properties: + EP_NLS: + $ref: '#/components/schemas/EP_NLS-Multiple' + NgeirFunction-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' + - type: object + properties: + plmnIdList: + $ref: 'nrNrm.yaml#/components/schemas/PlmnIdList' + sBIFqdn: + type: string + snssaiList: + $ref: 'nrNrm.yaml#/components/schemas/SnssaiList' + managedNFProfile: + $ref: '#/components/schemas/ManagedNFProfile' + commModelList: + $ref: '#/components/schemas/CommModelList' + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' + - type: object + properties: + EP_N17: + $ref: '#/components/schemas/EP_N17-Multiple' + SeppFunction-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' + - type: object + properties: + plmnId: + $ref: 'nrNrm.yaml#/components/schemas/PlmnId' + sEPPType: + $ref: '#/components/schemas/SEPPType' + sEPPId: + type: integer + fqdn: + $ref: 'genericNrm.yaml#/components/schemas/Fqdn' + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' + - type: object + properties: + EP_N32: + $ref: '#/components/schemas/EP_N32-Multiple' + NwdafFunction-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' + - type: object + properties: + plmnIdList: + $ref: 'nrNrm.yaml#/components/schemas/PlmnIdList' + sBIFqdn: + type: string + snssaiList: + $ref: 'nrNrm.yaml#/components/schemas/SnssaiList' + managedNFProfile: + $ref: '#/components/schemas/ManagedNFProfile' + commModelList: + $ref: '#/components/schemas/CommModelList' + networkSliceInfoList: + $ref: '#/components/schemas/NetworkSliceInfoList' + + ScpFunction-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' + - type: object + properties: + supportedFuncList: + $ref: '#/components/schemas/SupportedFuncList' + address: + $ref: 'genericNrm.yaml#/components/schemas/HostAddr' + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' + NefFunction-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' + - type: object + properties: + sBIFqdn: + type: string + snssaiList: + $ref: 'nrNrm.yaml#/components/schemas/SnssaiList' + managedNFProfile: + $ref: '#/components/schemas/ManagedNFProfile' + capabilityList: + $ref: '#/components/schemas/CapabilityList' + isCAPIFSup: + type: boolean + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' + - type: object + properties: + EP_N33: + $ref: '#/components/schemas/EP_N33-Multiple' + NsacfFunction-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' + - type: object + properties: + managedNFProfile: + $ref: '#/components/schemas/ManagedNFProfile' + nsacfInfoSnssai: + type: array + items: + $ref: '#/components/schemas/NsacfInfoSnssai' + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' + - type: object + properties: + EP_N60: + $ref: '#/components/schemas/EP_N60-Multiple' + + DDNMFFunction-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' + - type: object + properties: + plmnId: + $ref: 'nrNrm.yaml#/components/schemas/PlmnId' + sBIFqdn: + type: string + managedNFProfile: + $ref: '#/components/schemas/ManagedNFProfile' + commModelList: + $ref: '#/components/schemas/CommModelList' + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' + - type: object + properties: + EP_N64: + $ref: '#/components/schemas/EP_N64-Multiple' + EP_N65: + $ref: '#/components/schemas/EP_N65-Multiple' + EP_N66: + $ref: '#/components/schemas/EP_N66-Multiple' + + ExternalAmfFunction-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' + - type: object + properties: + plmnIdList: + $ref: 'nrNrm.yaml#/components/schemas/PlmnIdList' + amfIdentifier: + $ref: '#/components/schemas/AmfIdentifier' + ExternalNrfFunction-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' + - type: object + properties: + plmnIdList: + $ref: 'nrNrm.yaml#/components/schemas/PlmnIdList' + ExternalNssfFunction-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' + - type: object + properties: + plmnIdList: + $ref: 'nrNrm.yaml#/components/schemas/PlmnIdList' + ExternalSeppFunction-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' + - type: object + properties: + plmnId: + $ref: 'nrNrm.yaml#/components/schemas/PlmnId' + sEPPId: + type: integer + fqdn: + $ref: 'genericNrm.yaml#/components/schemas/Fqdn' + + + EP_N2-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' + - type: object + properties: + localAddress: + $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' + remoteAddress: + $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' + EP_N3-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' + - type: object + properties: + localAddress: + $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' + remoteAddress: + $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' + epTransportRefs: + $ref: 'genericNrm.yaml#/components/schemas/DnList' + EP_N4-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' + - type: object + properties: + localAddress: + $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' + remoteAddress: + $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' + EP_N5-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' + - type: object + properties: + localAddress: + $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' + remoteAddress: + $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' + EP_N6-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' + - type: object + properties: + localAddress: + $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' + remoteAddress: + $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' + EP_N7-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' + - type: object + properties: + localAddress: + $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' + remoteAddress: + $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' + EP_N8-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' + - type: object + properties: + localAddress: + $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' + remoteAddress: + $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' + EP_N9-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' + - type: object + properties: + localAddress: + $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' + remoteAddress: + $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' + EP_N10-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' + - type: object + properties: + localAddress: + $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' + remoteAddress: + $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' + EP_N11-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' + - type: object + properties: + localAddress: + $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' + remoteAddress: + $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' + EP_N12-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' + - type: object + properties: + localAddress: + $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' + remoteAddress: + $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' + EP_N13-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' + - type: object + properties: + localAddress: + $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' + remoteAddress: + $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' + EP_N14-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' + - type: object + properties: + localAddress: + $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' + remoteAddress: + $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' + EP_N15-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' + - type: object + properties: + localAddress: + $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' + remoteAddress: + $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' + EP_N16-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' + - type: object + properties: + localAddress: + $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' + remoteAddress: + $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' + EP_N17-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' + - type: object + properties: + localAddress: + $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' + remoteAddress: + $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' + + EP_N20-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' + - type: object + properties: + localAddress: + $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' + remoteAddress: + $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' + + EP_N21-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' + - type: object + properties: + localAddress: + $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' + remoteAddress: + $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' + EP_N22-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' + - type: object + properties: + localAddress: + $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' + remoteAddress: + $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' + + EP_N26-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' + - type: object + properties: + localAddress: + $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' + remoteAddress: + $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' + EP_N27-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' + - type: object + properties: + localAddress: + $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' + remoteAddress: + $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' + + + EP_N31-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' + - type: object + properties: + localAddress: + $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' + remoteAddress: + $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' + EP_N32-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' + - type: object + properties: + remotePlmnId: + $ref: 'nrNrm.yaml#/components/schemas/PlmnId' + remoteSeppAddress: + $ref: 'genericNrm.yaml#/components/schemas/HostAddr' + remoteSeppId: + type: integer + n32cParas: + type: string + n32fPolicy: + type: string + withIPX: + type: boolean + EP_N33-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' + - type: object + properties: + localAddress: + $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' + remoteAddress: + $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' + EP_S5C-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' + - type: object + properties: + localAddress: + $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' + remoteAddress: + $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' + EP_S5U-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' + - type: object + properties: + localAddress: + $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' + remoteAddress: + $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' + EP_Rx-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' + - type: object + properties: + localAddress: + $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' + remoteAddress: + $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' + EP_MAP_SMSC-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' + - type: object + properties: + localAddress: + $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' + remoteAddress: + $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' + EP_NLS-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' + - type: object + properties: + localAddress: + $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' + remoteAddress: + $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' + EP_NLG-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' + - type: object + properties: + localAddress: + $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' + remoteAddress: + $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' + + EP_N60-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' + - type: object + properties: + localAddress: + $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' + remoteAddress: + $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' + EP_N64-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' + - type: object + properties: + localAddress: + $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' + remoteAddress: + $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' + EP_N65-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' + - type: object + properties: + localAddress: + $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' + remoteAddress: + $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' + EP_N66-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' + - type: object + properties: + localAddress: + $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' + remoteAddress: + $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' + + FiveQiDscpMappingSet-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + allOf: + - type: object + properties: + FiveQiDscpMappingList: + type: array + items: + $ref: '#/components/schemas/FiveQiDscpMapping' + + FiveQICharacteristics-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - type: object + properties: + fiveQIValue: + type: integer + resourceType: + type: string + enum: + - GBR + - NonGBR + priorityLevel: + type: integer + packetDelayBudget: + type: integer + packetErrorRate: + $ref: '#/components/schemas/PacketErrorRate' + averagingWindow: + type: integer + maximumDataBurstVolume: + type: integer + FiveQICharacteristics-Multiple: + type: array + items: + $ref: '#/components/schemas/FiveQICharacteristics-Single' + Configurable5QISet-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + allOf: + - type: object + properties: + configurable5QIs: + type: array + items: + $ref: '#/components/schemas/FiveQICharacteristics-Multiple' + + Dynamic5QISet-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + allOf: + - type: object + properties: + dynamic5QIs: + type: array + items: + $ref: '#/components/schemas/FiveQICharacteristics-Multiple' + + GtpUPathQoSMonitoringControl-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + allOf: + - type: object + properties: + gtpUPathQoSMonitoringState: + type: string + enum: + - ENABLED + - DISABLED + gtpUPathMonitoredSNSSAIs: + type: array + items: + $ref: 'nrNrm.yaml#/components/schemas/Snssai' + monitoredDSCPs: + type: array + items: + type: integer + minimum: 0 + maximum: 255 + isEventTriggeredGtpUPathMonitoringSupported: + type: boolean + isPeriodicGtpUMonitoringSupported: + type: boolean + isImmediateGtpUMonitoringSupported: + type: boolean + gtpUPathDelayThresholds: + $ref: '#/components/schemas/GtpUPathDelayThresholdsType' + gtpUPathMinimumWaitTime: + type: integer + gtpUPathMeasurementPeriod: + type: integer + + QFQoSMonitoringControl-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + allOf: + - type: object + properties: + qFQoSMonitoringState: + type: string + enum: + - ENABLED + - DISABLED + qFMonitoredSNSSAIs: + type: array + items: + $ref: 'nrNrm.yaml#/components/schemas/Snssai' + qFMonitored5QIs: + type: array + items: + type: integer + minimum: 0 + maximum: 255 + isEventTriggeredQFMonitoringSupported: + type: boolean + isPeriodicQFMonitoringSupported: + type: boolean + isSessionReleasedQFMonitoringSupported: + type: boolean + qFPacketDelayThresholds: + $ref: '#/components/schemas/QFPacketDelayThresholdsType' + qFMinimumWaitTime: + type: integer + qFMeasurementPeriod: + type: integer + + PredefinedPccRuleSet-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + allOf: + - type: object + properties: + predefinedPccRules: + type: array + items: + $ref: '#/components/schemas/PccRule' + +#-------- Definition of JSON arrays for name-contained IOCs ---------------------- + + SubNetwork-Multiple: + type: array + items: + $ref: '#/components/schemas/SubNetwork-Single' + ManagedElement-Multiple: + type: array + items: + $ref: '#/components/schemas/ManagedElement-Single' + AmfFunction-Multiple: + type: array + items: + $ref: '#/components/schemas/AmfFunction-Single' + SmfFunction-Multiple: + type: array + items: + $ref: '#/components/schemas/SmfFunction-Single' + UpfFunction-Multiple: + type: array + items: + $ref: '#/components/schemas/UpfFunction-Single' + N3iwfFunction-Multiple: + type: array + items: + $ref: '#/components/schemas/N3iwfFunction-Single' + PcfFunction-Multiple: + type: array + items: + $ref: '#/components/schemas/PcfFunction-Single' + AusfFunction-Multiple: + type: array + items: + $ref: '#/components/schemas/AusfFunction-Single' + UdmFunction-Multiple: + type: array + items: + $ref: '#/components/schemas/UdmFunction-Single' + UdrFunction-Multiple: + type: array + items: + $ref: '#/components/schemas/UdrFunction-Single' + UdsfFunction-Multiple: + type: array + items: + $ref: '#/components/schemas/UdsfFunction-Single' + NrfFunction-Multiple: + type: array + items: + $ref: '#/components/schemas/NrfFunction-Single' + NssfFunction-Multiple: + type: array + items: + $ref: '#/components/schemas/NssfFunction-Single' + SmsfFunction-Multiple: + type: array + items: + $ref: '#/components/schemas/SmsfFunction-Single' + LmfFunction-Multiple: + type: array + items: + $ref: '#/components/schemas/LmfFunction-Single' + NgeirFunction-Multiple: + type: array + items: + $ref: '#/components/schemas/NgeirFunction-Single' + SeppFunction-Multiple: + type: array + items: + $ref: '#/components/schemas/SeppFunction-Single' + NwdafFunction-Multiple: + type: array + items: + $ref: '#/components/schemas/NwdafFunction-Single' + ScpFunction-Multiple: + type: array + items: + $ref: '#/components/schemas/ScpFunction-Single' + NefFunction-Multiple: + type: array + items: + $ref: '#/components/schemas/NefFunction-Single' + + NsacfFunction-Multiple: + type: array + items: + $ref: '#/components/schemas/NsacfFunction-Single' + + ExternalAmfFunction-Multiple: + type: array + items: + $ref: '#/components/schemas/ExternalAmfFunction-Single' + ExternalNrfFunction-Multiple: + type: array + items: + $ref: '#/components/schemas/ExternalNrfFunction-Single' + ExternalNssfFunction-Multiple: + type: array + items: + $ref: '#/components/schemas/ExternalNssfFunction-Single' + ExternalSeppFunction-Nultiple: + type: array + items: + $ref: '#/components/schemas/ExternalSeppFunction-Single' + + AmfSet-Multiple: + type: array + items: + $ref: '#/components/schemas/AmfSet-Single' + AmfRegion-Multiple: + type: array + items: + $ref: '#/components/schemas/AmfRegion-Single' + + EP_N2-Multiple: + type: array + items: + $ref: '#/components/schemas/EP_N2-Single' + EP_N3-Multiple: + type: array + items: + $ref: '#/components/schemas/EP_N3-Single' + EP_N4-Multiple: + type: array + items: + $ref: '#/components/schemas/EP_N4-Single' + EP_N5-Multiple: + type: array + items: + $ref: '#/components/schemas/EP_N5-Single' + EP_N6-Multiple: + type: array + items: + $ref: '#/components/schemas/EP_N6-Single' + EP_N7-Multiple: + type: array + items: + $ref: '#/components/schemas/EP_N7-Single' + EP_N8-Multiple: + type: array + items: + $ref: '#/components/schemas/EP_N8-Single' + EP_N9-Multiple: + type: array + items: + $ref: '#/components/schemas/EP_N9-Single' + EP_N10-Multiple: + type: array + items: + $ref: '#/components/schemas/EP_N10-Single' + EP_N11-Multiple: + type: array + items: + $ref: '#/components/schemas/EP_N11-Single' + EP_N12-Multiple: + type: array + items: + $ref: '#/components/schemas/EP_N12-Single' + EP_N13-Multiple: + type: array + items: + $ref: '#/components/schemas/EP_N13-Single' + EP_N14-Multiple: + type: array + items: + $ref: '#/components/schemas/EP_N14-Single' + EP_N15-Multiple: + type: array + items: + $ref: '#/components/schemas/EP_N15-Single' + EP_N16-Multiple: + type: array + items: + $ref: '#/components/schemas/EP_N16-Single' + EP_N17-Multiple: + type: array + items: + $ref: '#/components/schemas/EP_N17-Single' + + EP_N20-Multiple: + type: array + items: + $ref: '#/components/schemas/EP_N20-Single' + EP_N21-Multiple: + type: array + items: + $ref: '#/components/schemas/EP_N21-Single' + EP_N22-Multiple: + type: array + items: + $ref: '#/components/schemas/EP_N22-Single' + + EP_N26-Multiple: + type: array + items: + $ref: '#/components/schemas/EP_N26-Single' + EP_N27-Multiple: + type: array + items: + $ref: '#/components/schemas/EP_N27-Single' + + EP_N31-Multiple: + type: array + items: + $ref: '#/components/schemas/EP_N31-Single' + EP_N32-Multiple: + type: array + items: + $ref: '#/components/schemas/EP_N32-Single' + EP_N33-Multiple: + type: array + items: + $ref: '#/components/schemas/EP_N33-Single' + EP_S5C-Multiple: + type: array + items: + $ref: '#/components/schemas/EP_S5C-Single' + EP_S5U-Multiple: + type: array + items: + $ref: '#/components/schemas/EP_S5U-Single' + EP_Rx-Multiple: + type: array + items: + $ref: '#/components/schemas/EP_Rx-Single' + EP_MAP_SMSC-Multiple: + type: array + items: + $ref: '#/components/schemas/EP_MAP_SMSC-Single' + EP_NLS-Multiple: + type: array + items: + $ref: '#/components/schemas/EP_NLS-Single' + EP_NLG-Multiple: + type: array + items: + $ref: '#/components/schemas/EP_NLG-Single' + EP_N60-Multiple: + type: array + items: + $ref: '#/components/schemas/EP_N60-Single' + EP_N64-Multiple: + type: array + items: + $ref: '#/components/schemas/EP_N64-Single' + EP_N65-Multiple: + type: array + items: + $ref: '#/components/schemas/EP_N65-Single' + EP_N66-Multiple: + type: array + items: + $ref: '#/components/schemas/EP_N66-Single' + Configurable5QISet-Multiple: + type: array + items: + $ref: '#/components/schemas/Configurable5QISet-Single' + Dynamic5QISet-Multiple: + type: array + items: + $ref: '#/components/schemas/Dynamic5QISet-Single' + + + +#------------ Definitions in TS 28.541 for TS 28.532 ----------------------------- + + resources-5gcNrm: + oneOf: + - $ref: '#/components/schemas/SubNetwork-Single' + - $ref: '#/components/schemas/ManagedElement-Single' + - $ref: '#/components/schemas/AmfFunction-Single' + - $ref: '#/components/schemas/SmfFunction-Single' + - $ref: '#/components/schemas/UpfFunction-Single' + - $ref: '#/components/schemas/N3iwfFunction-Single' + - $ref: '#/components/schemas/PcfFunction-Single' + - $ref: '#/components/schemas/AusfFunction-Single' + - $ref: '#/components/schemas/UdmFunction-Single' + - $ref: '#/components/schemas/UdrFunction-Single' + - $ref: '#/components/schemas/UdsfFunction-Single' + - $ref: '#/components/schemas/NrfFunction-Single' + - $ref: '#/components/schemas/NssfFunction-Single' + - $ref: '#/components/schemas/SmsfFunction-Single' + - $ref: '#/components/schemas/LmfFunction-Single' + - $ref: '#/components/schemas/NgeirFunction-Single' + - $ref: '#/components/schemas/SeppFunction-Single' + - $ref: '#/components/schemas/NwdafFunction-Single' + - $ref: '#/components/schemas/ScpFunction-Single' + - $ref: '#/components/schemas/NefFunction-Single' + - $ref: '#/components/schemas/NsacfFunction-Single' + + - $ref: '#/components/schemas/ExternalAmfFunction-Single' + - $ref: '#/components/schemas/ExternalNrfFunction-Single' + - $ref: '#/components/schemas/ExternalNssfFunction-Single' + - $ref: '#/components/schemas/ExternalSeppFunction-Single' + + - $ref: '#/components/schemas/AmfSet-Single' + - $ref: '#/components/schemas/AmfRegion-Single' + - $ref: '#/components/schemas/QFQoSMonitoringControl-Single' + - $ref: '#/components/schemas/GtpUPathQoSMonitoringControl-Single' + + - $ref: '#/components/schemas/EP_N2-Single' + - $ref: '#/components/schemas/EP_N3-Single' + - $ref: '#/components/schemas/EP_N4-Single' + - $ref: '#/components/schemas/EP_N5-Single' + - $ref: '#/components/schemas/EP_N6-Single' + - $ref: '#/components/schemas/EP_N7-Single' + - $ref: '#/components/schemas/EP_N8-Single' + - $ref: '#/components/schemas/EP_N9-Single' + - $ref: '#/components/schemas/EP_N10-Single' + - $ref: '#/components/schemas/EP_N11-Single' + - $ref: '#/components/schemas/EP_N12-Single' + - $ref: '#/components/schemas/EP_N13-Single' + - $ref: '#/components/schemas/EP_N14-Single' + - $ref: '#/components/schemas/EP_N15-Single' + - $ref: '#/components/schemas/EP_N16-Single' + - $ref: '#/components/schemas/EP_N17-Single' + + - $ref: '#/components/schemas/EP_N20-Single' + - $ref: '#/components/schemas/EP_N21-Single' + - $ref: '#/components/schemas/EP_N22-Single' + + - $ref: '#/components/schemas/EP_N26-Single' + - $ref: '#/components/schemas/EP_N27-Single' + + - $ref: '#/components/schemas/EP_N31-Single' + - $ref: '#/components/schemas/EP_N32-Single' + - $ref: '#/components/schemas/EP_N33-Single' + - $ref: '#/components/schemas/EP_N60-Single' + + - $ref: '#/components/schemas/EP_S5C-Single' + - $ref: '#/components/schemas/EP_S5U-Single' + - $ref: '#/components/schemas/EP_Rx-Single' + - $ref: '#/components/schemas/EP_MAP_SMSC-Single' + - $ref: '#/components/schemas/EP_NLS-Single' + - $ref: '#/components/schemas/EP_NLG-Single' + - $ref: '#/components/schemas/Configurable5QISet-Single' + - $ref: '#/components/schemas/FiveQiDscpMappingSet-Single' + - $ref: '#/components/schemas/PredefinedPccRuleSet-Single' + - $ref: '#/components/schemas/Dynamic5QISet-Single' diff --git a/OpenAPI/PerDataFileReportMnS.yaml b/OpenAPI/PerDataFileReportMnS.yaml new file mode 100644 index 000000000..83fd77acb --- /dev/null +++ b/OpenAPI/PerDataFileReportMnS.yaml @@ -0,0 +1,13 @@ +openapi: 3.0.1 +info: + title: TS 28.532 File data reporting Service + version: 16.6.0 + description: >- + OAS 3.0.1 specification of the File data reporting Management Service © 2020, + 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). All + rights reserved. +externalDocs: + description: 3GPP TS 28.532 V16.5.0; Generic management services + url: 'http://www.3gpp.org/ftp/Specs/archive/28_series/28.532/' +paths: {} + diff --git a/OpenAPI/PerMeasJobCtlMnS.yaml b/OpenAPI/PerMeasJobCtlMnS.yaml new file mode 100644 index 000000000..b6abe58b2 --- /dev/null +++ b/OpenAPI/PerMeasJobCtlMnS.yaml @@ -0,0 +1,280 @@ +openapi: 3.0.1 +info: + title: TS 28.550 Performance Measurement Job Control Service + version: 16.5.0 + description: >- + OAS 3.0.1 specification of the Performance Measurement Job Control Service + @ 2020, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). + All rights reserved. +externalDocs: + description: 3GPP TS 28.550 V16.5.0; Performance assurance + url: http://www.3gpp.org/ftp/Specs/archive/28_series/28.550/ +servers: + - url: 'http://{URI-DN-prefix}/{root}/PerfMeasJobCtrlMnS/v1650/{LDN-first-part}' + variables: + URI-DN-prefix: + description: See subclause 4.4 of TS 32.158 + default: example.com + root: + description: See subclause 4.4 of TS 32.158 + default: 3GPPManagement + LDN-first-part: + description: See subclause 4.4 of TS 32.158 + default: '' +paths: + /measJobs: + post: + summary: Create a measurement job + description: To create a measurement job the representation of the measurement job is POSTed on the /measJobs collection resource. + requestBody: + required: true + content: + application/json: + schema: + $ref: '#/components/schemas/measJobCreation-RequestType' + responses: + '201': + description: Success case ("201 Created"). The representation of the newly created measurement job resource shall be returned. + content: + application/json: + schema: + $ref: '#/components/schemas/measJobCreation-ResponseType' + '202': + description: Partial success case ("202 Partically created"). The representation of the newly created measurement job resource with unsupported list shall be returned. + content: + application/json: + schema: + $ref: '#/components/schemas/measJobCreation-ResponseType' + default: + description: Error case. + content: + application/json: + schema: + $ref: '#/components/schemas/error-ResponseType' + get: + summary: Read resources of measurement jobs + description: 'With HTTP GET, resources of measurement jobs are read. The resources to be read are identified with the path component (base resource) and the query component (jobIdList) of the URI. The fields query component allows to select the resource properties to be returned.' + parameters: + - name: jobIdList + in: query + description: This parameter identifies the list of jobId to select the resources from the collection resources identified with the path component of the URI. + required: true + schema: + type: array + items: + type: string + responses: + '200': + description: 'Success case ("200 OK"). The resources identified in the request for retrieval are returned in the response message body. In case the fields query parameter is used, the selected resources are returned.' + content: + application/json: + schema: + $ref: '#/components/schemas/measJobsRetrieval-ResponseType' + default: + description: Error case. + content: + application/json: + schema: + $ref: '#/components/schemas/error-ResponseType' + '/measJobs/{jobId}': + get: + summary: Read resource of a single measurement job + description: 'With HTTP GET, resource of a measurement job is read. The resource to be read is identified with the path component of the URI.' + parameters: + - name: jobId + in: path + description: Identifies the measurement job to be read. + required: true + schema: + $ref: '#/components/schemas/uri-Type' + responses: + '200': + description: 'Success case ("200 OK"). The resource identified in the path for retrieval is returned in the response message body. ' + content: + application/json: + schema: + $ref: '#/components/schemas/measJobsRetrieval-ResponseType' + default: + description: Error case. + content: + application/json: + schema: + $ref: '#/components/schemas/error-ResponseType' + delete: + summary: Delete a single measurement job + description: The measurement job is deleted by deleting the corresponding measurement job resource. The resource to be deleted is identified with the path component of the URI. + parameters: + - name: jobId + in: path + description: Identifies the measurement job to be deleted. + required: true + schema: + $ref: '#/components/schemas/uri-Type' + responses: + '204': + description: Success case ("204 No Content"). The measurement job resource has been deleted. The response message body is absent. + default: + description: Error case. + content: + application/json: + schema: + $ref: '#/components/schemas/error-ResponseType' +components: + schemas: + dateTime-Type: + type: string + format: date-Time + uri-Type: + type: string + measJobCreation-RequestType: + type: object + properties: + iOCName: + type: string + iOCInstanceList: + type: array + items: + $ref: '#/components/schemas/uri-Type' + measurementCategoryList: + type: array + items: + type: string + reportingMethod: + $ref: '#/components/schemas/reportingMethod-Type' + granularityPeriod: + type: integer + reportingPeriod: + type: integer + startTime: + $ref: '#/components/schemas/dateTime-Type' + stopTime: + $ref: '#/components/schemas/dateTime-Type' + schedule: + $ref: '#/components/schemas/schedule-Type' + streamTarget: + type: string + priority: + $ref: '#/components/schemas/priority-Type' + reliability: + type: string + measJobCreation-ResponseType: + type: object + properties: + unsupportedList: + type: array + items: + $ref: '#/components/schemas/unsupportedMeas-Type' + measJobsRetrieval-ResponseType: + type: object + properties: + jobInfoList: + type: array + items: + $ref: '#/components/schemas/measJobInfo-ResourceType' + error-ResponseType: + type: object + properties: + error: + type: object + properties: + errorInfo: + type: string + measJobInfo-ResourceType: + type: object + properties: + href: + $ref: '#/components/schemas/uri-Type' + iOCName: + type: string + iOCInstanceList: + type: array + items: + $ref: '#/components/schemas/uri-Type' + measurementCategoryList: + type: array + items: + type: string + reportingMethod: + $ref: '#/components/schemas/reportingMethod-Type' + granularityPeriod: + type: integer + reportingPeriod: + type: integer + startTime: + $ref: '#/components/schemas/dateTime-Type' + stopTime: + $ref: '#/components/schemas/dateTime-Type' + schedule: + $ref: '#/components/schemas/schedule-Type' + streamTarget: + type: string + priority: + $ref: '#/components/schemas/priority-Type' + reliability: + type: string + schedule-Type: + type: object + properties: + scheduleOption: + $ref: '#/components/schemas/scheduleOption-Type' + dailySchedule: + type: array + items: + $ref: '#/components/schemas/timeInterval-Type' + weeklySchedule: + type: array + items: + $ref: '#/components/schemas/scheduleOfDay-Type' + timeInterval-Type: + type: object + properties: + intervalStart: + type: string + format: Time + intervalEnd: + type: string + format: Time + scheduleOfDay-Type: + type: object + properties: + dayOfWeek: + $ref: '#/components/schemas/dayOfWeek-Type' + intervalsOfDay: + type: array + items: + $ref: '#/components/schemas/timeInterval-Type' + unsupportedMeas-Type: + type: object + properties: + iOCInstance: + $ref: '#/components/schemas/uri-Type' + measurementTypeName: + type: string + reason: + type: string + reportingMethod-Type: + type: string + enum: + - file + - streaming + priority-Type: + type: string + enum: + - low + - medium + - high + scheduleOption-Type: + type: string + enum: + - daily + - weekly + dayOfWeek-Type: + type: string + enum: + - Monday + - Tuesday + - Wednesday + - Thursday + - Friday + - Saturday + - Sunday diff --git a/OpenAPI/PerThresMonMnS.yaml b/OpenAPI/PerThresMonMnS.yaml new file mode 100644 index 000000000..923640a11 --- /dev/null +++ b/OpenAPI/PerThresMonMnS.yaml @@ -0,0 +1,102 @@ +openapi: 3.0.1 +info: + title: TS 28.532 Performance Threshold Monitoring Service + version: 16.4.0 + description: OAS 3.0.1 specification of the Performance Threshold Monitoring Service +servers: + - url: 'http://{monitoringNotifTarget}' + variables: + monitoringNotifTarget: + description: >- + The open API server of the performance threshold monitoring service is + located in the consumer side, see monitoringNotifTarget attribute of + the IOC ThresholdMonitor defined in 3GPP TS 28.622 [11]. + default: example.com +paths: + /notificationSink: + post: + summary: Send notifications about performance threshold crossing + description: To send a notifyThresholdCrossing notification + requestBody: + required: true + content: + application/json: + schema: + $ref: '#/components/schemas/notifyThresholdCrossing-NotifType' + responses: + '204': + description: >- + Success case ("204 No Content"). The notification is successfully + delivered. The response message body is absent. + default: + description: Error case. + content: + application/json: + schema: + $ref: '#/components/schemas/error-ResponseType' +components: + schemas: + dateTime-Type: + type: string + format: date-Time + uri-Type: + type: string + long-Type: + type: string + format: long + thresholdLevel-Type: + type: integer + measurementTypeName-Type: + type: string + measurementValue-Type: + type: string + additionalText-Type: + type: string + error-ResponseType: + type: object + properties: + error: + type: object + properties: + errorInfo: + type: string + header-Type: + description: Header used in notifications as notification header + type: object + properties: + uri: + $ref: '#/components/schemas/uri-Type' + notificationId: + $ref: '#/components/schemas/notificationId-Type' + notificationType: + $ref: '#/components/schemas/notificationType-Type' + eventTime: + $ref: '#/components/schemas/dateTime-Type' + notificationId-Type: + $ref: '#/components/schemas/long-Type' + notificationType-Type: + type: string + enum: + - notifyThresholdCrossing + notifyThresholdCrossing-NotifType: + type: object + properties: + header: + $ref: '#/components/schemas/header-Type' + body: + type: object + properties: + startOfMonitoringGP: + $ref: '#/components/schemas/dateTime-Type' + endOfMonitoringGP: + $ref: '#/components/schemas/dateTime-Type' + monitoredObjectInstance: + $ref: '#/components/schemas/uri-Type' + thresholdLevel: + $ref: '#/components/schemas/thresholdLevel-Type' + measurementTypeName: + $ref: '#/components/schemas/measurementTypeName-Type' + measurementValue: + $ref: '#/components/schemas/measurementValue-Type' + additionalText: + $ref: '#/components/schemas/additionalText-Type' diff --git a/OpenAPI/PerfDataStreamingMnS.yaml b/OpenAPI/PerfDataStreamingMnS.yaml new file mode 100644 index 000000000..e040e14c8 --- /dev/null +++ b/OpenAPI/PerfDataStreamingMnS.yaml @@ -0,0 +1,363 @@ +openapi: 3.0.1 +info: + title: TS 28.550 Performance Data Streaming Service + version: 16.3.0 + description: OAS 3.0.1 specification of the Performance Data Streaming Service +servers: + - url: 'http://{streamTarget}/PerfDataStreamMnS/v1630' + description: This URL is used for posting the set of information about streams supported on the connection between the producer and the consumer. + variables: + streamTarget: + description: 'The open API server of the performance data streaming service is located in the consumer side,and the “streamTarget” part corresponds to the streamTarget parameter provided in the createMeasurementJob operation (see clause 6.1.1.2) or the streamTarget attribute of the MOI of MeasurementControlor MeasurementReader, see 3GPP TS 28.622 [5]).' + default: example.com + - url: 'wss://{streamTarget}/PerfDataStreamMnS/v1630/streamingConnection' + description: This URL is used for establishing the WebSocket connection for the performance data streaming service. + variables: + streamTarget: + description: 'The open API server of the performance data streaming service is located in the consumer side,and the “streamTarget” part corresponds to the streamTarget parameter provided in the createMeasurementJob operation (see clause 6.1.1.2) or the streamTarget attribute of the MOI of MeasurementControlor MeasurementReader, see 3GPP TS 28.622 [5]).' + default: example.com +paths: + /streamInfoList: + post: + summary: The set of information about the streams sent from the producer to the consumer + description: To send the streamInfoList from the producer to the consumer + requestBody: + required: true + content: + application/json: + schema: + $ref: '#/components/schemas/streamInfoListPost-RequestType' + responses: + '201': + description: Success case ("201 Posted"). The streamInfoList is successfully posted. + content: + application/json: + schema: + $ref: '#/components/schemas/streamInfoListPost-ResponseType' + '202': + description: Partial success case ("202 Partially posted"). The representation of the posted resource on stream information. + content: + application/json: + schema: + $ref: '#/components/schemas/streamInfoListPost-ResponseType' + default: + description: Error case. + content: + application/json: + schema: + $ref: '#/components/schemas/error-ResponseType' + get: + summary: Read resources of stream information from the streaming consumer + description: 'With HTTP GET, resources of stream information are read. The resources to be read are identified with the path component (base resource) and the query component (streamIdList) of the URI. The fields query component allows to select the resource properties to be returned.' + parameters: + - name: streamIdList + in: query + description: This parameter identifies the list of streamId to select from the collection resources identified with the path component of the URI. + required: true + schema: + type: array + items: + type: integer + responses: + '200': + description: 'Success case ("200 OK"). The resources identified in the request for retrieval are returned in the response message body. In case the fields query parameter is used, the selected resources are returned.' + content: + application/json: + schema: + $ref: '#/components/schemas/listOfStreamInfoRetrieval-ResponseType' + '202': + description: Partial success case ("202 Partially retrieved"). The representation of the retrieved resources on stream information. + content: + application/json: + schema: + $ref: '#/components/schemas/listOfStreamInfoRetrieval-ResponseType' + default: + description: Error case. + content: + application/json: + schema: + $ref: '#/components/schemas/error-ResponseType' + patch: + summary: Update resources of stream information to the streaming consumer + description: 'With HTTP PATCH, resources of stream information are to be updated. The resources to be updated are identified with the path component (base resource) and the query component (streamIdList) of the URI. The fields query component allows to select the resource properties to be updated.' + parameters: + - name: streamIdList + in: query + description: This parameter identifies the list of streamId to select from the collection resources identified with the path component of the URI. + required: true + schema: + type: array + items: + type: integer + requestBody: + required: true + content: + application/json: + schema: + $ref: '#/components/schemas/listOfStreamInfoToUpdate-RequestType' + responses: + '200': + description: Success case ("200 OK"). The resources selected by the query parameter are updated and returned in the response message body. + content: + application/json: + schema: + $ref: '#/components/schemas/listOfStreamInfoUpdate-ResponseType' + '202': + description: Partial success case ("202 Partially updated"). The representation of the updated resources on stream information + content: + application/json: + schema: + $ref: '#/components/schemas/listOfStreamInfoUpdate-ResponseType' + default: + description: Error case. + content: + application/json: + schema: + $ref: '#/components/schemas/error-ResponseType' + delete: + summary: The information of streams to be deleted by the producer to the consumer + description: 'With HTTP DELETE, resources of stream information are to be deleted. The resources to be deleted are identified with the path component (base resource) and the query component (streamIdList) of the URI. The fields query component allows to select the resource properties to be deleted.' + parameters: + - name: streamIdList + in: query + description: This parameter identifies the list of streamId to select from the collection resources identified with the path component of the URI. + required: true + schema: + type: array + items: + type: integer + responses: + '204': + description: Success case ("204 No Content"). The stream information resource has been deleted. The response message body is absent. + default: + description: Error case. + content: + application/json: + schema: + $ref: '#/components/schemas/error-ResponseType' + '/streamInfoList/{streamId}': + get: + summary: Read resource of the stream information from the streaming consumer + description: 'With HTTP GET, resource of stream information is read. The resource to be read is identified with the path component the URI.' + parameters: + - name: streamId + in: path + description: Identifies the stream for which the information is to be retrieved. + required: true + schema: + $ref: '#/components/schemas/uri-Type' + responses: + '200': + description: Success case ("200 OK"). The resource identified in the request for retrieval is returned in the response message body. + content: + application/json: + schema: + $ref: '#/components/schemas/listOfStreamInfoRetrieval-ResponseType' + default: + description: Error case. + content: + application/json: + schema: + $ref: '#/components/schemas/error-ResponseType' + patch: + summary: Update the resource of stream information to the streaming consumer + description: 'With HTTP PATCH, resource of stream information is to be updated. The resource to be updated is identified by the path component of the URI. ' + parameters: + - name: streamId + in: path + description: Identifies the stream for which the information is to be updated. + required: true + schema: + $ref: '#/components/schemas/uri-Type' + requestBody: + required: true + content: + application/json: + schema: + $ref: '#/components/schemas/streamInfoToUpdate-RequestType' + responses: + '200': + description: Success case ("200 OK"). The resources identified by the path of the URI is updated and returned in the response message body. + content: + application/json: + schema: + $ref: '#/components/schemas/streamInfoUpdate-ResponseType' + default: + description: Error case. + content: + application/json: + schema: + $ref: '#/components/schemas/error-ResponseType' + delete: + summary: The stream information to be deleted by the producer to the consumer + description: 'With HTTP DELETE, resource of stream information identified by the path component of the URI is to be deleted.' + parameters: + - name: streamId + in: path + description: Identifies the stream for which the information is to be deleted + required: true + schema: + $ref: '#/components/schemas/uri-Type' + responses: + '204': + description: Success case ("204 No Content"). The stream information resource has been deleted. The response message body is absent. + default: + description: Error case. + content: + application/json: + schema: + $ref: '#/components/schemas/error-ResponseType' + /streamConnection: + get: + summary: The connection for streaming from the producer to the consumer + description: To establish the WebSocket connection between the producer and the consumer. The HTTP version of this operation shall not be earlier than HTTP/1.1 + parameters: + - in: header + name: Upgrade + required: true + schema: + $ref: '#/components/schemas/Upgrade-HeaderType' + - in: header + name: Connection + required: true + schema: + $ref: '#/components/schemas/Connection-HeaderType' + - in: header + name: Sec-WebSocket-Key + required: true + schema: + $ref: '#/components/schemas/Sec-WebSocket-Key-HeaderType' + - in: header + name: Sec-WebSocket-Version + required: true + schema: + $ref: '#/components/schemas/Sec-WebSocket-Version-HeaderType' + responses: + '101': + description: Success case ("101 Switching Protocols "). The connection has been successfully switched to WebSocket. The response message body is absent. + headers: + Upgrade: + schema: + $ref: '#/components/schemas/Upgrade-HeaderType' + Connection: + schema: + $ref: '#/components/schemas/Connection-HeaderType' + Sec-WebSocket-Accept-HeaderType: + schema: + $ref: '#/components/schemas/Sec-WebSocket-Accept-HeaderType' + default: + description: Error case. + content: + application/json: + schema: + $ref: '#/components/schemas/error-ResponseType' +components: + schemas: + uri-Type: + type: string + streamInfoIn-Type: + type: object + properties: + streamId: + type: integer + iOCInstance: + $ref: '#/components/schemas/uri-Type' + measTypes: + type: array + items: + type: string + streamInfoOut-Type: + type: object + properties: + streamId: + $ref: '#/components/schemas/uri-Type' + iOCInstance: + $ref: '#/components/schemas/uri-Type' + measTypes: + type: array + items: + type: string + error-ResponseType: + type: object + properties: + error: + type: object + properties: + errorInfo: + type: string + streamInfoListPost-RequestType: + type: object + properties: + streamInfoList: + type: array + items: + $ref: '#/components/schemas/streamInfoIn-Type' + streamInfoListPost-ResponseType: + type: object + properties: + streamInfoListPosted: + type: array + items: + $ref: '#/components/schemas/streamInfoOut-Type' + streamInfoRetrieval-ResponseType: + type: object + properties: + streamInfoOut: + $ref: '#/components/schemas/streamInfoOut-Type' + listOfStreamInfoRetrieval-ResponseType: + type: object + properties: + listOfStreamInfoOut: + type: array + items: + $ref: '#/components/schemas/streamInfoOut-Type' + streamInfoToUpdatePropertyType: + type: object + properties: + iOCInstance: + description: 'The updated measured object instance, empty value means no update.' + allOf: + - $ref: '#/components/schemas/uri-Type' + measTypes: + description: 'The updated list of measurement type, empty value means no update.' + type: array + items: + type: string + streamInfoToUpdate-RequestType: + type: object + properties: + streamInfoToUpdate: + $ref: '#/components/schemas/streamInfoToUpdatePropertyType' + listOfStreamInfoToUpdate-RequestType: + type: object + properties: + listOfStreamInfoToUpdate: + type: array + items: + $ref: '#/components/schemas/streamInfoToUpdatePropertyType' + streamInfoUpdate-ResponseType: + type: object + properties: + streamInfoUpdated: + $ref: '#/components/schemas/streamInfoOut-Type' + listOfStreamInfoUpdate-ResponseType: + type: object + properties: + listOfStreamInfoUpdated: + type: array + items: + $ref: '#/components/schemas/streamInfoOut-Type' + Upgrade-HeaderType: + type: string + enum: + - websocket + Connection-HeaderType: + type: string + enum: + - Upgrade + Sec-WebSocket-Key-HeaderType: + type: string + Sec-WebSocket-Version-HeaderType: + type: string + Sec-WebSocket-Accept-HeaderType: + type: string diff --git a/OpenAPI/README.md b/OpenAPI/README.md new file mode 100644 index 000000000..9de057463 --- /dev/null +++ b/OpenAPI/README.md @@ -0,0 +1,73 @@ +# 3GPP SA5 models and MnS OpenAPI definitions + +(c) 2020, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). All rights reserved. + +The links below will open the Swagger Editor/UI and auto-load the OpenAPI YAML file of each API: + + +## Network Resource Models (NRM) + +* Generic NRM (TS 28.623) +([Editor](https://forge.3gpp.org/swagger/tools/loader.html?yaml=OpenAPI/genericNrm.yaml)) +([UI](https://forge.3gpp.org/swagger/tools/loader.html?action=ui&yaml=OpenAPI/genericNrm.yaml)) + +* Common NRM definitions (TS 28.623) +([Editor](https://forge.3gpp.org/swagger/tools/loader.html?yaml=OpenAPI/comDefs.yaml)) +([UI](https://forge.3gpp.org/swagger/tools/loader.html?action=ui&yaml=OpenAPI/comDefs.yaml)) + +* NR NRM (TS 28.541) +([Editor](https://forge.3gpp.org/swagger/tools/loader.html?yaml=OpenAPI/nrNrm.yaml)) +([UI](https://forge.3gpp.org/swagger/tools/loader.html?action=ui&yaml=OpenAPI/nrNrm.yaml)) + +* 5GC NRM (TS 28.541) +([Editor](https://forge.3gpp.org/swagger/tools/loader.html?yaml=OpenAPI/5gcNrm.yaml)) +([UI](https://forge.3gpp.org/swagger/tools/loader.html?action=ui&yaml=OpenAPI/5gcNrm.yaml)) + +* Slice NRM (TS 28.541) +([Editor](https://forge.3gpp.org/swagger/tools/loader.html?yaml=OpenAPI/sliceNrm.yaml)) +([UI](https://forge.3gpp.org/swagger/tools/loader.html?action=ui&yaml=OpenAPI/sliceNrm.yaml)) + +* Communication Service Assurance NRM (TS 28.536) +([Editor](https://forge.3gpp.org/swagger/tools/loader.html?yaml=OpenAPI/coslaNrm.yaml)) +([UI](https://forge.3gpp.org/swagger/tools/loader.html?action=ui&yaml=OpenAPI/coslaNrm.yaml)) + +## Management Services (MnS) + +* Provisioning MnS (TS 28.532) +([Editor](https://forge.3gpp.org/swagger/tools/loader.html?yaml=OpenAPI/provMnS.yaml)) +([UI](https://forge.3gpp.org/swagger/tools/loader.html?action=ui&yaml=OpenAPI/provMnS.yaml)) + +* Fault Supervision MnS (TS 28.532) +([Editor](https://forge.3gpp.org/swagger/tools/loader.html?yaml=OpenAPI/faultMnS.yaml)) +([UI](https://forge.3gpp.org/swagger/tools/loader.html?action=ui&yaml=OpenAPI/faultMnS.yaml)) + +* Performance Measurement Job Control MnS (28.550) +([Editor](https://forge.3gpp.org/swagger/tools/loader.html?yaml=OpenAPI/PerMeasJobCtlMnS.yaml)) +([UI](https://forge.3gpp.org/swagger/tools/loader.html?action=ui&yaml=OpenAPI/PerMeasJobCtlMnS.yaml)) + +* Performance Data File Reporting MnS (TS 28.532) +([Editor](https://forge.3gpp.org/swagger/tools/loader.html?yaml=OpenAPI/PerDataFileReportMnS.yaml)) +([UI](https://forge.3gpp.org/swagger/tools/loader.html?action=ui&yaml=OpenAPI/PerDataFileReportMnS.yaml)) + +* Performance Threshold Monitoring MnS (TS 28.532) +([Editor](https://forge.3gpp.org/swagger/tools/loader.html?yaml=OpenAPI/PerThresMonMnS.yaml)) +([UI](https://forge.3gpp.org/swagger/tools/loader.html?action=ui&yaml=OpenAPI/PerThresMonMnS.yaml)) + +* Heartbeat Notifications(TS 28.532) +([Editor](https://forge.3gpp.org/swagger/tools/loader.html?yaml=OpenAPI/heartbeatNtf.yaml)) +([UI](https://forge.3gpp.org/swagger/tools/loader.html?action=ui&yaml=OpenAPI/heartbeatNtf.yaml)) + +* Streaming Data Reporting MnS (TS 28.532) +([Editor](https://forge.3gpp.org/swagger/tools/loader.html?yaml=OpenAPI/streamingDataMnS.yaml)) +([UI](https://forge.3gpp.org/swagger/tools/loader.html?action=ui&yaml=OpenAPI/streamingDataMnS.yaml)) + +## Tools + +* [Frontend](https://forge.3gpp.org/swagger/tools/GitlabOpenAPIFrontend.htm) to invoke the Swagger Editor, Swagger UI, or to parse OpenAPI files with APIDevTools Swagger Parser/Validator, or to search for APIs referencing a data structure +* [API Parser/Linter](https://forge.3gpp.org/swagger/tools/parser.html) to parse OpenAPI files with APIDevTools Swagger Parser/Validator and run a number of [lint](https://en.wikipedia.org/wiki/Lint_\(software\)) rules to improve API quality +* [Data Type Finder](https://forge.3gpp.org/swagger/tools/types.html) to find the impacted APIs due to a change on a given data type +* [API Versions Overview](https://forge.3gpp.org/swagger/tools/versions.html) to show a comprehensive report of the versions of all APIs in the repository + +## Other 3GPP API definitions + +* [CT4](https://forge.3gpp.org/rep/3GPP/5G_APIs) specifications. diff --git a/OpenAPI/comDefs.yaml b/OpenAPI/comDefs.yaml new file mode 100644 index 000000000..04ab65161 --- /dev/null +++ b/OpenAPI/comDefs.yaml @@ -0,0 +1,84 @@ +openapi: 3.0.1 +info: + title: Common Type Definitions + version: 16.3.0 + description: >- + OAS 3.0.1 specification of common type definitions in the Generic NRM + © 2020, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). + All rights reserved. +externalDocs: + description: 3GPP TS 28.623 V16.3.0; Generic NRM, Common Type Definitions + url: http://www.3gpp.org/ftp/Specs/archive/28_series/28.623/ +paths: {} +components: + schemas: + Long: + type: string + format: long + Float: + type: string + format: float + DateTime: + type: string + format: date-Time + Dn: + type: string + Uri: + type: string + AttributeNameValuePairSet: + type: object + minProperties: 1 + AttributeValueChangeSet: + description: >- + The key in this map is the attribute name. The value of each key is an array. + When only one item is present in the array, it carries the new attribute + value. If two items are present, then the first item carries the old value + and the second item the new value. The items can be of any type including null. + type: object + additionalProperties: + type: array + minItems: 1 + maxItems: 2 + items: + nullable: true + Filter: + type: string + SystemDN: + type: string + NotificationId: + type: integer + NotificationHeader: + description: >- + Header used for all notifications types + type: object + required: + - uri + - notificationId + - notificationType + - eventTime + - systemDn + properties: + uri: + $ref: '#/components/schemas/Uri' + notificationId: + $ref: '#/components/schemas/NotificationId' + notificationType: + oneOf: + - $ref: 'faultMnS.yaml#/components/schemas/AlarmNotificationTypes' + #- $ref: 'provMnS.yaml#/components/schemas/CmNotificationTypes' + # more to be added + eventTime: + $ref: '#/components/schemas/DateTime' + systemDN: + $ref: '#/components/schemas/SystemDN' + ErrorResponse: + description: >- + Default schema for the response message body in case the request + is not successful. + type: object + properties: + error: + type: object + properties: + errorInfo: + type: string diff --git a/OpenAPI/coslaNrm.yaml b/OpenAPI/coslaNrm.yaml new file mode 100644 index 000000000..e6a0ef13a --- /dev/null +++ b/OpenAPI/coslaNrm.yaml @@ -0,0 +1,168 @@ +openapi: 3.0.2 + +info: + title: coslaNrm + version: 16.4.0 + description: + OAS 3.0.1 specification of the Cosla NRM + © 2020, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). + All rights reserved. + +externalDocs: + description: 3GPP TS 28.536 V16.4.0; Cosla NRM + url: http://www.3gpp.org/ftp/Specs/archive/28_series/28.536/ + +paths: {} + +components: + + schemas: + +#------------ Type definitions --------------------------------------------------- + + ControlLoopLifeCyclePhase: + type: string + enum: + - PREPARATION + - COMMISSIONING + - OPERATION + - DECOMMISSIONING + + ObservationTime: + type: integer + + AssuranceGoalStatusObserved: + type: string + enum: + - FULFILLED + - NOT_FULFILLED + + AssuranceGoalStatusPredicted: + type: string + enum: + - FULFILLED + - NOT_FULFILLED + + AssuranceTargetStatusObserved: + type: string + enum: + - FULFILLED + - NOT_FULFILLED + + AssuranceTargetStatusPredicted: + type: string + enum: + - FULFILLED + - NOT_FULFILLED + + AssuranceTarget: + type: object + properties: + assuranceTargetName: + type: string + assuranceTargetValue: + type: string + assuranceTargetStatusObserved: + $ref: '#/components/schemas/AssuranceTargetStatusObserved' + assuranceTargetStatusPredicted: + $ref: '#/components/schemas/AssuranceTargetStatusPredicted' + + AssuranceTargetList: + type: array + items: + $ref: '#/components/schemas/AssuranceTarget' + + +#-------- Definition of concrete IOCs -------------------------------------------- + + SubNetwork-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/SubNetwork-Attr' + - $ref: 'genericNrm.yaml#/components/schemas/SubNetwork-ncO' + - type: object + properties: + AssuranceClosedControlLoop: + $ref: '#/components/schemas/AssuranceClosedControlLoop-Multiple' + + ManagedElement-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/ManagedElement-Attr' + - $ref: 'genericNrm.yaml#/components/schemas/ManagedElement-ncO' + - type: object + properties: + AssuranceClosedControlLoop: + $ref: '#/components/schemas/AssuranceClosedControlLoop-Multiple' + + AssuranceClosedControlLoop-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + type: object + properties: + operationalState: + $ref: 'genericNrm.yaml#/components/schemas/OperationalState' + administrativeState: + $ref: 'genericNrm.yaml#/components/schemas/AdministrativeState' + controlLoopLifeCyclePhase: + $ref: '#/components/schemas/ControlLoopLifeCyclePhase' + AssuranceGoal: + $ref: '#/components/schemas/AssuranceGoal-Multiple' + + AssuranceGoal-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + allOf: + - type: object + properties: + observationTime: + $ref: '#/components/schemas/ObservationTime' + assuranceTargetList: + $ref: '#/components/schemas/AssuranceTargetList' + assuranceGoalStatusObserved: + $ref: '#/components/schemas/AssuranceGoalStatusObserved' + assuranceGoalStatusPredicted: + $ref: '#/components/schemas/AssuranceGoalStatusPredicted' + serviceProfileId: + type: string + sliceProfileId: + type: string + networkSliceRef: + $ref: 'comDefs.yaml#/components/schemas/Dn' + networkSliceSubnetRef: + $ref: 'comDefs.yaml#/components/schemas/Dn' + +#-------- Definition of JSON arrays for name-contained IOCs ---------------------- + + AssuranceClosedControlLoop-Multiple: + type: array + items: + $ref: '#/components/schemas/AssuranceClosedControlLoop-Single' + + AssuranceGoal-Multiple: + type: array + items: + $ref: '#/components/schemas/AssuranceGoal-Single' + +#------------ Definitions in TS 28.536 for TS 28.623 ----------------------------- + + resources-coslaNrm: + oneOf: + - $ref: '#/components/schemas/AssuranceClosedControlLoop-Single' + - $ref: '#/components/schemas/AssuranceGoal-Single' + - $ref: '#/components/schemas/SubNetwork-Single' + - $ref: '#/components/schemas/ManagedElement-Single' \ No newline at end of file diff --git a/OpenAPI/faultMnS.yaml b/OpenAPI/faultMnS.yaml new file mode 100644 index 000000000..499123b90 --- /dev/null +++ b/OpenAPI/faultMnS.yaml @@ -0,0 +1,1144 @@ +openapi: 3.0.1 +info: + title: Fault Supervision MnS + version: 16.4.0 + description: >- + OAS 3.0.1 definition of the Fault Supervision MnS + © 2020, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). + All rights reserved. +externalDocs: + description: 3GPP TS 28.532 V16.4.0; Generic management services + url: http://www.3gpp.org/ftp/Specs/archive/28_series/28.532/ +servers: + - url: '{MnSRoot}/FaultSupervisionMnS/{version}' + variables: + MnSRoot: + description: See subclause 4.4.3 of TS 32.158 + default: http://example.com/3GPPManagement + version: + description: Versi on number of the OpenAPI definition + default: XXX +paths: + /alarms: + get: + summary: Retrieve multiple alarms + description: >- + Retrieves the alarms identified by alarmAckState, baseObjectInstance + and filter. + parameters: + - name: alarmAckState + in: query + required: false + schema: + $ref: '#/components/schemas/AlarmAckState' + - name: baseObjectInstance + in: query + required: false + schema: + $ref: '#/components/schemas/Dn' + - name: filter + in: query + required: false + schema: + $ref: '#/components/schemas/Filter' + responses: + '200': + description: >- + Success case ("200 OK"). + Returns the alarms identified in the request. The alarmId is the key + of the map. + content: + application/json: + schema: + type: object + additionalProperties: + type: object + allOf: + - type: object + properties: + lastNotificationHeader: + $ref: '#/components/schemas/NotificationHeader' + - $ref: '#/components/schemas/AlarmRecord' + - type: object + properties: + comments: + $ref: '#/components/schemas/Comments' + default: + description: Response in case of error. + content: + application/json: + schema: + $ref: '#/components/schemas/ErrorResponse' + patch: + summary: 'Clear, acknowledge or unacknowledge multiple alarms' + description: >- + Clears, acknowledges or unacknowledges multiple alarms using patch. Depending + on which action is to be performed, different merge patch documents need + to be used. + requestBody: + description: >- + Patch documents for acknowledging and unacknowledging, or clearing multiple + alarms. The keys in the map are the alarmIds to be patched. + content: + application/merge-patch+json: + schema: + oneOf: + - type: object + additionalProperties: + $ref: '#/components/schemas/MergePatchAcknowledgeAlarm' + - type: object + additionalProperties: + $ref: '#/components/schemas/MergePatchClearAlarm' + responses: + '204': + description: >- + Success case ("204 No content"). + The response message body is empty. + default: + description: Response in case of error. + content: + application/json: + schema: + type: array + items: + $ref: '#/components/schemas/FailedAlarm' + /alarms/alarmCount: + get: + summary: Get the alarm count per perceived severity + parameters: + - name: alarmAckState + in: query + required: false + schema: + $ref: '#/components/schemas/AlarmAckState' + - name: filter + in: query + required: false + schema: + type: string + responses: + '200': + description: >- + Success case ("200 OK"). + The alarm count per perceived severity is returned. + content: + application/json: + schema: + $ref: '#/components/schemas/AlarmCount' + default: + description: Response in case of error. The error case needs rework. + content: + application/json: + schema: + $ref: '#/components/schemas/ErrorResponse' + /alarms/{alarmId}: + patch: + summary: 'Clear, acknowledge or unacknowledge a single alarm' + description: >- + Clears, acknowledges or uncknowldeges a single alarm by patching the alarm + information. A conditional acknowledge request based on the perceived + severity is not supported. + parameters: + - name: alarmId + in: path + description: Identifies the alarm to be patched. + required: true + schema: + type: string + requestBody: + required: true + content: + application/merge-patch+json: + schema: + oneOf: + - $ref: '#/components/schemas/MergePatchAcknowledgeAlarm' + - $ref: '#/components/schemas/MergePatchClearAlarm' + responses: + '204': + description: >- + Success case (204 No content). + The response message body is absent. + default: + description: Response in case of error. + content: + application/json: + schema: + $ref: '#/components/schemas/ErrorResponse' + /alarms/{alarmId}/comments: + post: + summary: Add a comment to a single alarm + description: >- + Adds a comment to an alarm identified by alarmId. The id of the new comment + is allocated by the producer. + parameters: + - name: alarmId + in: path + description: Identifies the alarm to which the comment shall be added. + required: true + schema: + type: string + requestBody: + required: true + content: + application/json: + schema: + $ref: '#/components/schemas/Comment' + responses: + '201': + description: >- + Success case (201 Created). + The representation of the newly created comment resource shall be returned. + content: + application/json: + schema: + $ref: '#/components/schemas/Comment' + headers: + Location: + description: URI of the newly created comment resource. + required: true + schema: + type: string + default: + description: Error case. + content: + application/json: + schema: + $ref: '#/components/schemas/ErrorResponse' + + /subscriptions: + post: + summary: Create a subscription + description: >- + To create a subscription the representation of the subscription is + POSTed on the /subscriptions collection resource. + requestBody: + required: true + content: + application/json: + schema: + $ref: '#/components/schemas/Subscription' + responses: + '201': + description: >- + Success case ("201 Created"). + The representation of the newly created subscription resource shall + be returned. + content: + application/json: + schema: + $ref: '#/components/schemas/Subscription' + headers: + Location: + description: URI of the newly created subscription resource + required: true + schema: + type: string + default: + description: Error case. + content: + application/json: + schema: + $ref: '#/components/schemas/ErrorResponse' + callbacks: + notifyNewAlarm: + '{request.body#/consumerReference}': + post: + requestBody: + required: true + content: + application/json: + schema: + oneOf: + - $ref: '#/components/schemas/NotifyNewAlarm' + - $ref: '#/components/schemas/NotifyNewSecAlarm' + responses: + '204': + description: >- + Success case ("204 No Content"). + The notification is successfully delivered. The response message + body is absent. + default: + description: Error case. + content: + application/json: + schema: + $ref: '#/components/schemas/ErrorResponse' + notifyClearedAlarm: + '{request.body#/consumerReference}': + post: + requestBody: + required: true + content: + application/json: + schema: + $ref: '#/components/schemas/NotifyClearedAlarm' + responses: + '204': + description: >- + Success case ("204 No Content"). + The notification is successfully delivered. The response message + body is absent. + default: + description: Error case. + content: + application/json: + schema: + $ref: '#/components/schemas/ErrorResponse' + notifyChangedAlarm: + '{request.body#/consumerReference}': + post: + requestBody: + required: true + content: + application/json: + schema: + $ref: '#/components/schemas/NotifyChangedAlarm' + responses: + '204': + description: >- + Success case ("204 No Content"). + The notification is successfully delivered. The response message + body is absent. + default: + description: Error case. + content: + application/json: + schema: + $ref: '#/components/schemas/ErrorResponse' + notifyChangedAlarmGeneral: + '{request.body#/consumerReference}': + post: + requestBody: + required: true + content: + application/json: + schema: + oneOf: + - $ref: '#/components/schemas/NotifyChangedAlarmGeneral' + - $ref: '#/components/schemas/NotifyChangedSecAlarmGeneral' + responses: + '204': + description: >- + Success case ("204 No Content"). + The notification is successfully delivered. The response message + body is absent. + default: + description: Error case. + content: + application/json: + schema: + $ref: '#/components/schemas/ErrorResponse' + notifyCorrelatedNotificationChanged: + '{request.body#/consumerReference}': + post: + requestBody: + required: true + content: + application/json: + schema: + $ref: '#/components/schemas/NotifyCorrelatedNotificationChanged' + responses: + '204': + description: >- + Success case ("204 No Content"). + The notification is successfully delivered. The response message + body is absent. + default: + description: Error case. + content: + application/json: + schema: + $ref: '#/components/schemas/ErrorResponse' + notifyAckStateChanged: + '{request.body#/consumerReference}': + post: + requestBody: + required: true + content: + application/json: + schema: + $ref: '#/components/schemas/NotifyAckStateChanged' + responses: + '204': + description: >- + Success case ("204 No Content"). + The notification is successfully delivered. The response message + body is absent. + default: + description: Error case. + content: + application/json: + schema: + $ref: '#/components/schemas/ErrorResponse' + notifyComments: + '{request.body#/consumerReference}': + post: + requestBody: + required: true + content: + application/json: + schema: + $ref: '#/components/schemas/NotifyComments' + responses: + '204': + description: >- + Success case ("204 No Content"). + The notification is successfully delivered. The response message + body is absent. + default: + description: Error case. + content: + application/json: + schema: + $ref: '#/components/schemas/ErrorResponse' + notifyPotentialFaultyAlarmList: + '{request.body#/consumerReference}': + post: + requestBody: + required: true + content: + application/json: + schema: + $ref: '#/components/schemas/NotifyPotentialFaultyAlarmList' + responses: + '204': + description: >- + Success case ("204 No Content"). + The notification is successfully delivered. The response message + body is absent. + default: + description: Error case. + content: + application/json: + schema: + $ref: '#/components/schemas/ErrorResponse' + notifyAlarmListRebuilt: + '{request.body#/consumerReference}': + post: + requestBody: + required: true + content: + application/json: + schema: + $ref: '#/components/schemas/NotifyAlarmListRebuilt' + responses: + '204': + description: >- + Success case ("204 No Content"). + The notification is successfully delivered. The response message + body is absent. + default: + description: Error case. + content: + application/json: + schema: + $ref: '#/components/schemas/ErrorResponse' + /subscriptions/{subscriptionId}: + delete: + summary: Delete a subscription + description: >- + The subscription is deleted by deleting the corresponding subscription + resource. The resource to be deleted is identified with the path + component of the URI. + parameters: + - name: subscriptionId + in: path + description: Identifies the subscription to be deleted. + required: true + schema: + type: string + responses: + '204': + description: >- + Success case ("204 No Content"). + The subscription resource has been deleted. The response message body + is absent. + default: + description: Error case. + content: + application/json: + schema: + $ref: '#/components/schemas/ErrorResponse' + +components: + schemas: + + #---- Definitions to be moved to comDefs.yaml --------------------------------------# + + Long: + type: string + format: long + Float: + type: string + format: float + DateTime: + type: string + format: date-Time + + Dn: + type: string + Uri: + type: string + + AttributeNameValuePairSet: + type: object + minProperties: 1 + AttributeValueChangeSet: + description: >- + The key in this map is the attribute name. The value of each key is an array. + When only one item is present in the array, it carries the new attribute + value. If two items are present, then the first item carries the old value + and the second item the new value. The items can be of any type including null. + type: object + additionalProperties: + type: array + minItems: 1 + maxItems: 2 + items: + nullable: true + + Filter: + type: string + SystemDN: + type: string + + NotificationId: + type: integer + NotificationHeader: + description: >- + Header used for all notification types + type: object + required: + - href + - notificationId + - notificationType + - eventTime + - systemDN + properties: + uri: + $ref: '#/components/schemas/Uri' + notificationId: + $ref: '#/components/schemas/NotificationId' + notificationType: + oneOf: + - $ref: '#/components/schemas/AlarmNotificationTypes' + #- $ref: 'faultMnS.yaml#/components/schemas/AlarmNotificationTypes' + #- $ref: 'provMnS.yaml#/components/schemas/CmNotificationTypes' + # more to be added + eventTime: + $ref: '#/components/schemas/DateTime' + systemDN: + $ref: '#/components/schemas/SystemDN' + + ErrorResponse: + description: >- + Default schema for the response message body in case the request is not + successful. + type: object + properties: + error: + type: object + properties: + errorInfo: + type: string + + #---- End of definitions to be moved to comDefs.yaml -------------------------------# + + #---- Definition of AlarmRecord ----------------------------------------------------# + + AlarmId: + type: string + AlarmType: + type: string + enum: + - COMMUNICATIONS_ALARM + - QUALITY_OF_SERVICE_ALARM + - PROCESSING_ERROR_ALARM + - EQUIPMENT_ALARM + - ENVIRONMENTAL_ALARM + - INTEGRITY_VIOLATION + - OPERATIONAL_VIOLATION + - PHYSICAL_VIOLATION + - SECURITY_SERVICE_OR_MECHANISM_VIOLATION + - TIME_DOMAIN_VIOLATION + ProbableCause: + description: >- + The value of the probable cause may be a specific standardized string, or any + vendor provided string. Probable cause strings are not standardized in the + present document. They may be added in a future version. Up to then the + mapping of the generic probable cause strings "PROBABLE_CAUSE_001" to + "PROBABLE_CAUSE_005" is vendor specific. + The value of the probable cause may also be an integer. The mapping of integer + values to probable causes is vendor specific. + oneOf: + - anyOf: + - type: string + enum: + - PROBABLE_CAUSE_001 + - PROBABLE_CAUSE_002 + - PROBABLE_CAUSE_003 + - PROBABLE_CAUSE_004 + - PROBABLE_CAUSE_005 + - type: string + - type: integer + SpecificProblem: + oneOf: + - type: string + - type: integer + PerceivedSeverity: + type: string + enum: + - INDETERMINATE + - CRITICAL + - MAJOR + - MINOR + - WARNING + - CLEARED + TrendIndication: + type: string + enum: + - MORE_SEVERE + - NO_CHANGE + - LESS_SEVERE + ThresholdHysteresis: + type: object + required: + - high + properties: + high: + oneOf: + - type: integer + - $ref: '#/components/schemas/Float' + low: + $ref: '#/components/schemas/Float' + ThresholdLevelInd: + type: object + required: + - up + properties: + up: + $ref: '#/components/schemas/ThresholdHysteresis' + low: + $ref: '#/components/schemas/ThresholdHysteresis' + ThresholdInfo: + type: object + required: + - observedMeasurement + - observedValue + properties: + observedMeasurement: + type: string + observedValue: + oneOf: + - type: integer + - $ref: '#/components/schemas/Float' + thresholdLevelInd: + $ref: '#/components/schemas/ThresholdLevelInd' + armTime: + $ref: '#/components/schemas/DateTime' + CorrelatedNotification: + type: object + required: + - source + - notificationId + properties: + sourceObjectInstance: + $ref: '#/components/schemas/Dn' + notificationIds: + type: array + items: + $ref: '#/components/schemas/NotificationId' + CorrelatedNotifications: + type: array + items: + $ref: '#/components/schemas/CorrelatedNotification' + AckState: + type: string + enum: + - ACKNOWLEDGED + - UNACKNOWLEDGED + + AlarmRecord: + description: >- + The alarmId is not a property of an alarm record. It is used as key + in the map of alarm records instead. + type: object + properties: + # alarmId: + # $ref: '#/components/schemas/AlarmId' + objectInstance: + $ref: '#/components/schemas/Dn' + notificationId: + $ref: '#/components/schemas/NotificationId' + alarmRaisedTime: + $ref: '#/components/schemas/DateTime' + alarmChangedTime: + $ref: '#/components/schemas/DateTime' + alarmClearedTime: + $ref: '#/components/schemas/DateTime' + alarmType: + $ref: '#/components/schemas/AlarmType' + probableCause: + $ref: '#/components/schemas/ProbableCause' + specificProblem: + $ref: '#/components/schemas/SpecificProblem' + perceivedSeverity: + $ref: '#/components/schemas/PerceivedSeverity' + backedUpStatus: + type: boolean + backUpObject: + $ref: '#/components/schemas/Dn' + trendIndication: + $ref: '#/components/schemas/TrendIndication' + thresholdinfo: + $ref: '#/components/schemas/ThresholdInfo' + correlatedNotifications: + $ref: '#/components/schemas/CorrelatedNotifications' + stateChangeDefinition: + $ref: '#/components/schemas/AttributeValueChangeSet' + monitoredAttributes: + $ref: '#/components/schemas/AttributeNameValuePairSet' + proposedRepairActions: + type: string + additionalText: + type: string + additionalInformation: + $ref: '#/components/schemas/AttributeNameValuePairSet' + + rootCauseIndicator: + type: boolean + + ackTime: + $ref: '#/components/schemas/DateTime' + ackUserId: + type: string + ackSystemId: + type: string + ackState: + $ref: '#/components/schemas/AckState' + + clearUserId: + type: string + clearSystemId: + type: string + serviceUser: + type: string + serviceProvider: + type: string + securityAlarmDetector: + type: string + + #---- Definition of alarm notifications --------------------------------------------# + + AlarmNotificationTypes: + type: string + enum: + - notifyNewAlarm + - notifyChangedAlarm + - notifyChangedAlarmGeneral + - notifyAckStateChanged + - notifyCorrelatedNotificationChanged + - notifyComments + - notifyClearedAlarm + - notifyAlarmListRebuiltAlarm + - notifyPotentialFaultyAlarmList + AlarmListAlignmentRequirement: + type: string + enum: + - ALIGNMENT_REQUIRED + - ALIGNMENT_NOT_REQUIRED + + NotifyNewAlarm: + allOf: + - $ref: '#/components/schemas/NotificationHeader' + - type: object + required: + - alarmId + - alarmType + - probableCause + - perceivedSeverity + properties: + alarmId: + $ref: '#/components/schemas/AlarmId' + alarmType: + $ref: '#/components/schemas/AlarmType' + probableCause: + $ref: '#/components/schemas/ProbableCause' + specificProblem: + $ref: '#/components/schemas/SpecificProblem' + perceivedSeverity: + $ref: '#/components/schemas/PerceivedSeverity' + backedUpStatus: + type: boolean + backUpObject: + $ref: '#/components/schemas/Dn' + trendIndication: + $ref: '#/components/schemas/TrendIndication' + thresholdInfo: + $ref: '#/components/schemas/ThresholdInfo' + correlatedNotifications: + $ref: '#/components/schemas/CorrelatedNotifications' + stateChangeDefinition: + $ref: '#/components/schemas/AttributeValueChangeSet' + monitoredAttributes: + $ref: '#/components/schemas/AttributeNameValuePairSet' + proposedRepairActions: + type: string + additionalText: + type: string + additionalInformation: + $ref: '#/components/schemas/AttributeNameValuePairSet' + rootCauseIndicator: + type: boolean + NotifyNewSecAlarm: + allOf: + - $ref: '#/components/schemas/NotificationHeader' + - type: object + required: + - alarmId + - alarmType + - probableCause + - perceivedSeverity + - serviceUser + - serviceProvider + - securityAlarmDetector + properties: + alarmId: + $ref: '#/components/schemas/AlarmId' + alarmType: + $ref: '#/components/schemas/AlarmType' + probableCause: + $ref: '#/components/schemas/ProbableCause' + perceivedSeverity: + $ref: '#/components/schemas/PerceivedSeverity' + correlatedNotifications: + $ref: '#/components/schemas/CorrelatedNotifications' + additionalText: + type: string + additionalInformation: + $ref: '#/components/schemas/AttributeNameValuePairSet' + rootCauseIndicator: + type: boolean + serviceUser: + type: string + serviceProvider: + type: string + securityAlarmDetector: + type: string + NotifyClearedAlarm: + allOf: + - $ref: '#/components/schemas/NotificationHeader' + - type: object + required: + - alarmId + - alarmType + - probableCause + - perceivedSeverity + properties: + alarmId: + $ref: '#/components/schemas/AlarmId' + alarmType: + $ref: '#/components/schemas/AlarmType' + probableCause: + $ref: '#/components/schemas/ProbableCause' + perceivedSeverity: + $ref: '#/components/schemas/PerceivedSeverity' + correlatedNotifications: + $ref: '#/components/schemas/CorrelatedNotifications' + clearUserId: + type: string + clearSystemId: + type: string + NotifyChangedAlarm: + allOf: + - $ref: '#/components/schemas/NotificationHeader' + - type: object + required: + - alarmId + - alarmType + - probableCause + - perceivedSeverity + properties: + alarmId: + $ref: '#/components/schemas/AlarmId' + alarmType: + $ref: '#/components/schemas/AlarmType' + probableCause: + $ref: '#/components/schemas/ProbableCause' + perceivedSeverity: + $ref: '#/components/schemas/PerceivedSeverity' + NotifyChangedAlarmGeneral: + allOf: + - $ref: '#/components/schemas/NotificationHeader' + - type: object + required: + - alarmId + - alarmType + - probableCause + - perceivedSeverity + - changedAlarmAttributes + properties: + alarmId: + $ref: '#/components/schemas/AlarmId' + alarmType: + $ref: '#/components/schemas/AlarmType' + probableCause: + $ref: '#/components/schemas/ProbableCause' + specificProblem: + $ref: '#/components/schemas/SpecificProblem' + perceivedSeverity: + $ref: '#/components/schemas/PerceivedSeverity' + correlatedNotifications: + $ref: '#/components/schemas/CorrelatedNotifications' + backedUpStatus: + type: boolean + backUpObject: + $ref: '#/components/schemas/Dn' + trendIndication: + $ref: '#/components/schemas/TrendIndication' + thresholdInfo: + $ref: '#/components/schemas/ThresholdInfo' + stateChangeDefinition: + $ref: '#/components/schemas/AttributeValueChangeSet' + monitoredAttributes: + $ref: '#/components/schemas/AttributeNameValuePairSet' + proposedRepairActions: + type: string + additionalText: + type: string + additionalInformation: + $ref: '#/components/schemas/AttributeNameValuePairSet' + rootCauseIndicator: + type: boolean + changedAlarmAttributes: + $ref: '#/components/schemas/AttributeNameValuePairSet' + NotifyChangedSecAlarmGeneral: + allOf: + - $ref: '#/components/schemas/NotificationHeader' + - type: object + required: + - alarmId + - alarmType + - probableCause + - perceivedSeverity + - serviceUser + - serviceProvider + - securityAlarmDetector + - changedAlarmAttributes + properties: + alarmId: + $ref: '#/components/schemas/AlarmId' + alarmType: + $ref: '#/components/schemas/AlarmType' + probableCause: + $ref: '#/components/schemas/ProbableCause' + perceivedSeverity: + $ref: '#/components/schemas/PerceivedSeverity' + correlatedNotifications: + $ref: '#/components/schemas/CorrelatedNotifications' + additionalText: + type: string + additionalInformation: + $ref: '#/components/schemas/AttributeNameValuePairSet' + rootCauseIndicator: + type: boolean + serviceUser: + type: string + serviceProvider: + type: string + securityAlarmDetector: + type: string + changedAlarmAttributes: + $ref: '#/components/schemas/AttributeNameValuePairSet' + NotifyCorrelatedNotificationChanged: + allOf: + - $ref: '#/components/schemas/NotificationHeader' + - type: object + required: + - alarmId + - correlatedNotifications + properties: + alarmId: + $ref: '#/components/schemas/AlarmId' + correlatedNotifications: + $ref: '#/components/schemas/CorrelatedNotifications' + rootCauseIndicator: + type: boolean + NotifyAckStateChanged: + allOf: + - $ref: '#/components/schemas/NotificationHeader' + - type: object + required: + - alarmId + - alarmType + - probableCause + - perceivedSeverity + - ackState + - ackUserId + properties: + alarmId: + $ref: '#/components/schemas/AlarmId' + alarmType: + $ref: '#/components/schemas/AlarmType' + probableCause: + $ref: '#/components/schemas/ProbableCause' + perceivedSeverity: + $ref: '#/components/schemas/PerceivedSeverity' + ackState: + $ref: '#/components/schemas/AckState' + ackUserId: + type: string + ackSystemId: + type: string + NotifyComments: + allOf: + - $ref: '#/components/schemas/NotificationHeader' + - type: object + required: + - alarmId + - alarmType + - probableCause + - perceivedSeverity + - comments + properties: + alarmId: + $ref: '#/components/schemas/AlarmId' + alarmType: + $ref: '#/components/schemas/AlarmType' + probableCause: + $ref: '#/components/schemas/ProbableCause' + perceivedSeverity: + $ref: '#/components/schemas/PerceivedSeverity' + comments: + $ref: '#/components/schemas/Comments' + NotifyPotentialFaultyAlarmList: + allOf: + - $ref: '#/components/schemas/NotificationHeader' + - type: object + required: + - reason + properties: + reason: + type: string + NotifyAlarmListRebuilt: + allOf: + - $ref: '#/components/schemas/NotificationHeader' + - type: object + required: + - reason + properties: + reason: + type: string + alarmListAlignmentRequirement: + $ref: '#/components/schemas/AlarmListAlignmentRequirement' + + #---- Definition of query parameters -----------------------------------------------# + + AlarmAckState: + type: string + enum: + - ALL_ALARMS + - ALL_ACTIVE_ALARMS + - ALL_ACTIVE_AND_ACKNOWLEDGED_ALARMS + - ALL_ACTIVE_AND_UNACKNOWLEDGED_ALARMS + - ALL_CLEARED_AND_UNACKNOWLEDGED_ALARMS + - ALL_UNACKNOWLEDGED_ALARMS + + #---- Definition of patch documents ------------------------------------------------# + + MergePatchAcknowledgeAlarm: + description: >- + Patch document acknowledging or unacknowledging a single alarm. For + acknowleding an alarm the value of ackState is ACKNOWLEDGED, for unacknowleding + an alarm the value of ackState is UNACKNOWLEDGED. + type: object + required: + - ackUserId + - ackState + properties: + ackUserId: + type: string + ackSystemId: + type: string + ackState: + $ref: '#/components/schemas/AckState' + MergePatchClearAlarm: + description: Patch document for clearing a single alarm + type: object + required: + - clearUserId + - perceivedSeverity + properties: + clearUserId: + type: string + clearSystemId: + type: string + perceivedSeverity: + type: string + enum: + - CLEARED + + #---- Definition of method responses -----------------------------------------------# + + FailedAlarm: + type: object + required: + - alarmId + - failureReason + properties: + alarmId: + $ref: '#/components/schemas/AlarmId' + failureReason: + type: string + + #---- Definition of resources ------------------------------------------------------# + + AlarmCount: + type: object + required: + - criticalCount + - majorCount + - minorCount + - warningCount + - indeterminateCount + - clearedCount + properties: + criticalCount: + type: integer + majorCount: + type: integer + minorCount: + type: integer + warningCount: + type: integer + indeterminateCount: + type: integer + clearedCount: + type: integer + Comment: + type: object + properties: + commentTime: + $ref: '#/components/schemas/DateTime' + commentUserId: + type: string + commentSystemId: + type: string + commentText: + type: string + Comments: + description: >- + Collection of comments. The comment identifiers are allocated by the + MnS producer and used as key in the map. + type: object + additionalProperties: + $ref: '#/components/schemas/Comment' + Subscription: + type: object + properties: + consumerReference: + $ref: '#/components/schemas/Uri' + timeTick: + $ref: '#/components/schemas/Long' + filter: + $ref: '#/components/schemas/Filter' diff --git a/OpenAPI/genericNrm.yaml b/OpenAPI/genericNrm.yaml new file mode 100644 index 000000000..0911920a2 --- /dev/null +++ b/OpenAPI/genericNrm.yaml @@ -0,0 +1,1606 @@ +openapi: 3.0.1 +info: + title: Generic NRM + version: 16.4.0 + description: >- + OAS 3.0.1 specification of the Generic NRM + © 2020, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). + All rights reserved. +externalDocs: + description: 3GPP TS 28.623 V16.4.0; Generic NRM + url: http://www.3gpp.org/ftp/Specs/archive/28_series/28.623/ +paths: {} +components: + schemas: + +#-------- Definition of types----------------------------------------------------- + + DateTime: + type: string + format: date-time + Dn: + type: string + maxLength: 400 + DnList: + type: array + items: + $ref: '#/components/schemas/Dn' + Mcc: + type: string + pattern: '^[0-9]{3}$' + Mnc: + type: string + pattern: '^[0-9]{2,3}$' + AdministrativeState: + type: string + enum: + - LOCKED + - UNLOCKED + OperationalState: + type: string + enum: + - ENABLED + - DISABLED + UsageState: + type: string + enum: + - IDEL + - ACTIVE + - BUSY + RegistrationState: + type: string + enum: + - REGISTERED + - DEREGISTERED + SetOfMcc: + type: array + items: + $ref: '#/components/schemas/Mcc' + ManagedElementType: + type: string + ManagedElementTypeList: + type: array + items: + $ref: '#/components/schemas/ManagedElementType' + VnfParameter: + type: object + properties: + vnfInstanceId: + type: string + vnfdId: + type: string + flavourId: + type: string + autoScalable: + type: boolean + VnfParametersList: + type: array + items: + $ref: '#/components/schemas/VnfParameter' + SiteLatitude: + type: number + format: float + minimum: -90 + maximum: 90 + SiteLongitude: + type: number + format: float + minimum: -180 + maximum: 180 + PeeParameter: + type: object + properties: + siteIdentification: + type: string + siteDescription: + type: string + siteLatitude: + $ref: '#/components/schemas/SiteLatitude' + siteLongitude: + $ref: '#/components/schemas/SiteLongitude' + equipmentType: + type: string + environmentType: + type: string + powerInterface: + type: string + PeeParametersList: + type: array + items: + $ref: '#/components/schemas/PeeParameter' + MonitoringGPList: + type: array + items: + type: integer + ThresholdInfoList: + type: array + items: + $ref: '#/components/schemas/ThresholdInfo' + ThresholdInfo: + type: object + properties: + measurementType: + type: string + direction: + $ref: '#/components/schemas/Direction' + thresholdPack: + $ref: '#/components/schemas/ThresholdPack' + Direction: + enum: + - Increasing + - Decreasing + ThresholdPack: + type: array + items: + $ref: '#/components/schemas/ThresholdPackElement' + ThresholdPackElement: + type: object + properties: + thresholdLevel: + type: integer + thresholdValue: + type: number + hysteresis: + type: number + Operation: + type: object + properties: + name: + type: string + allowedNFTypes: + $ref: '#/components/schemas/NFType' + operationSemantics: + $ref: '#/components/schemas/OperationSemantics' + OperationList: + type: array + items: + $ref: '#/components/schemas/Operation' + NFType: + type: string + description: ' NF name defined in TS 23.501' + enum: + - NRF + - UDM + - AMF + - SMF + - AUSF + - NEF + - PCF + - SMSF + - NSSF + - UDR + - LMF + - GMLC + - 5G_EIR + - SEPP + - UPF + - N3IWF + - AF + - UDSF + - DN + Fqdn: + type: string + OperationSemantics: + type: string + enum: + - REQUEST_RESPONSE + - SUBSCRIBE_NOTIFY + SAP: + type: object + properties: + host: + $ref: '#/components/schemas/HostAddr' + port: + type: integer + NFServiceType: + type: string + enum: + - Namf_Communication + - Namf_EventExposure + - Namf_MT + - Namf_Location + - Nsmf_PDUSession + - Nsmf_EventExposure + - Others + HostAddr: + oneOf: + - $ref: '#/components/schemas/Ipv4Addr' + - $ref: '#/components/schemas/Ipv6Addr' + - $ref: '#/components/schemas/Fqdn' + Ipv4Addr: + type: string + pattern: '^(([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])\.){3}([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])$' + example: '198.51.100.1' + Ipv4AddrRm: + type: string + pattern: '^(([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])\.){3}([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])$' + example: '198.51.100.1' + nullable: true + Ipv6Addr: + type: string + allOf: + - pattern: '^((:|(0?|([1-9a-f][0-9a-f]{0,3}))):)((0?|([1-9a-f][0-9a-f]{0,3})):){0,6}(:|(0?|([1-9a-f][0-9a-f]{0,3})))$' + - pattern: '^((([^:]+:){7}([^:]+))|((([^:]+:)*[^:]+)?::(([^:]+:)*[^:]+)?))$' + example: '2001:db8:85a3::8a2e:370:7334' + Ipv6AddrRm: + type: string + allOf: + - pattern: '^((:|(0?|([1-9a-f][0-9a-f]{0,3}))):)((0?|([1-9a-f][0-9a-f]{0,3})):){0,6}(:|(0?|([1-9a-f][0-9a-f]{0,3})))$' + - pattern: '^((([^:]+:){7}([^:]+))|((([^:]+:)*[^:]+)?::(([^:]+:)*[^:]+)?))$' + example: '2001:db8:85a3::8a2e:370:7334' + nullable: true + Ipv6Prefix: + type: string + allOf: + - pattern: '^((:|(0?|([1-9a-f][0-9a-f]{0,3}))):)((0?|([1-9a-f][0-9a-f]{0,3})):){0,6}(:|(0?|([1-9a-f][0-9a-f]{0,3})))(\/(([0-9])|([0-9]{2})|(1[0-1][0-9])|(12[0-8])))$' + - pattern: '^((([^:]+:){7}([^:]+))|((([^:]+:)*[^:]+)?::(([^:]+:)*[^:]+)?))(\/.+)$' + example: '2001:db8:abcd:12::0/64' + Uri: + type: string + TransportProtocol: + anyOf: + - type: string + enum: + - TCP + - type: string + SupportedPerfMetricGroup: + type: object + properties: + performanceMetrics: + type: array + items: + type: string + granularityPeriods: + type: array + items: + type: integer + minimum: 1 + reportingMethods: + type: array + items: + type: string + enum: + - FILE_BASED_LOC_SET_BY_PRODUCER + - FILE_BASED_LOC_SET_BY_CONSUMER + - STREAM_BASED + ReportingCtrl: + oneOf: + - type: object + properties: + fileReportingPeriod: + type: integer + - type: object + properties: + fileReportingPeriod: + type: integer + fileLocation: + $ref: '#/components/schemas/Uri' + - type: object + properties: + streamTarget: + $ref: '#/components/schemas/Uri' + Scope: + type: object + properties: + scopeType: + type: string + enum: + - BASE_ONLY + - BASE_ALL + - BASE_NTH_LEVEL + - BASE_SUBTREE + scopeLevel: + type: integer + NotificationType: + type: string + enum: + - notifyMOICreation + - notifyMOIDeletion + - notifyMOIAttributeValueChanges + - notifyEvent + - notifyNewAlarm + - notifyChangedAlarm + - notifyAckStateChanged + - notifyComments + - notifyCorrelatedNotificationChanged + - notifyChangedAlarmGeneral + - notifyAlarmListRebuilt + - notifyPotentialFaultyAlarmList + - notifyFileReady + - notifyFilePreparationError + - notifyThresholdCrossing + NotificationTypes: + type: array + items: + $ref: '#/components/schemas/NotificationType' + +#-------- Definition of types used in Trace control NRM fragment------------------ + + tjJobType-Type: + type: string + description: Specifies whether the TraceJob represents only MDT, Logged MBSFN MDT, Trace or a combined Trace and MDT job. Applicable for Trace, MDT, RCEF and RLF reporting. See 3GPP TS 32.422 clause 5.9a for additional details. + enum: + - IMMEDIATE_MDT_ONLY + - LOGGED_MDT_ONLY + - TRACE_ONLY + - IMMEDIATE_MDT AND TRACE + - RLF_REPORT_ONLY + - RCEF_REPORT_ONLY + - LOGGED_MBSFN_MDT + + tjListOfInterfaces-Type: + description: The interfaces to be recorded in the Network Element. See 3GPP TS 32.422 clause 5.5 for additional details. + type: object + properties: + MSCServerInterfaces: + type: array + items: + type: string + enum: + - A + - Iu-CS + - Mc + - MAP-G + - MAP-B + - MAP-E + - MAP-F + - MAP-D + - MAP-C + - CAP + MGWInterfaces: + type: array + items: + type: string + enum: + - Mc + - Nb-UP + - Iu-UP + RNCInterfaces: + type: array + items: + type: string + enum: + - Iu-CS + - Iu-PS + - Iur + - Iub + - Uu + SGSNInterfaces: + type: array + items: + type: string + enum: + - Gb + - Iu-PS + - Gn + - MAP-Gr + - MAP-Gd + - MAP-Gf + - Ge + - Gs + - S6d + - S4 + - S3 + - S13 + GGSNInterfaces: + type: array + items: + type: string + enum: + - Gn + - Gi + - Gmb + S-CSCFInterfaces: + type: array + items: + type: string + enum: + - Mw + - Mg + - Mr + - Mi + P-CSCFInterfaces: + type: array + items: + type: string + enum: + - Gm + - Mw + I-CSCFInterfaces: + type: array + items: + type: string + enum: + - Cx + - Dx + - Mg + - Mw + MRFCInterfaces: + type: array + items: + type: string + enum: + - Mp + - Mr + MGCFInterfaces: + type: array + items: + type: string + enum: + - Mg + - Mj + - Mn + IBCFInterfaces: + type: array + items: + type: string + enum: + - Ix + - Mx + E-CSCFInterfaces: + type: array + items: + type: string + enum: + - Mw + - Ml + - Mm + - Mi/Mg + BGCFInterfaces: + type: array + items: + type: string + enum: + - Mi + - Mj + - Mk + ASInterfaces: + type: array + items: + type: string + enum: + - Dh + - Sh + - ISC + - Ut + HSSInterfaces: + type: array + items: + type: string + enum: + - MAP-C + - MAP-D + - Gc + - Gr + - Cx + - S6d + - S6a + - Sh + EIRInterfaces: + type: array + items: + type: string + enum: + - MAP-F + - S13 + - MAP-Gf + BM-SCInterfaces: + type: array + items: + type: string + enum: + - Gmb + MMEInterfaces: + type: array + items: + type: string + enum: + - S1-MME + - S3 + - S6a + - S10 + - S11 + - S13 + SGWInterfaces: + type: array + items: + type: string + enum: + - S4 + - S5 + - S8 + - S11 + - Gxc + PDN_GWInterfaces: + type: array + items: + type: string + enum: + - S2a + - S2b + - S2c + - S5 + - S6b + - Gx + - S8 + - SGi + eNBInterfaces: + type: array + items: + type: string + enum: + - S1-MME + - X2 + en-gNBInterfaces: + type: array + items: + type: string + enum: + - S1-MME + - X2 + - Uu + - F1-C + - E1 + AMFInterfaces: + type: array + items: + type: string + enum: + - N1 + - N2 + - N8 + - N11 + - N12 + - N14 + - N15 + - N20 + - N22 + - N26 + AUSFInterfaces: + type: array + items: + type: string + enum: + - N12 + - N13 + NEFInterfaces: + type: array + items: + type: string + enum: + - N29 + - N30 + - N33 + NRFInterfaces: + type: array + items: + type: string + enum: + - N27 + NSSFInterfaces: + type: array + items: + type: string + enum: + - N22 + - N31 + PCFInterfaces: + type: array + items: + type: string + enum: + - N5 + - N7 + - N15 + SMFInterfaces: + type: array + items: + type: string + enum: + - N4 + - N7 + - N10 + - N11 + - S5-C + SMSFInterfaces: + type: array + items: + type: string + enum: + - N20 + - N21 + UDMInterfaces: + type: array + items: + type: string + enum: + - N8 + - N10 + - N13 + - N21 + UPFInterfaces: + type: array + items: + type: string + enum: + - N4 + ng-eNBInterfaces: + type: array + items: + type: string + enum: + - NG-C + - Xn-C + - Uu + gNB-CU-CPInterfaces: + type: array + items: + type: string + enum: + - NG-C + - Xn-C + - Uu + - F1-C + - E1 + - X2-C + gNB-CU-UPInterfaces: + type: array + items: + type: string + enum: + - E1 + gNB-DUInterfaces: + type: array + items: + type: string + enum: + - F1-C + + tjListOfNeTypes-Type: + description: The Network Element types where Trace Session activation is needed. See 3GPP TS 32.422 clause 5.4 for additional details. + type: array + items: + type: string + enum: + - MSC_SERVER + - SGSN + - MGW + - GGSN + - RNC + - BM_SC + - MME + - SGW + - PGW + - ENB + - EN_GNB + - GNB_CU_CP + - GNB_CU_UP + - GNB_DU + + tjPLMNTaget-Type: + type: object + description: The PLMN for which sessions shall be selected in the Trace Session in case of management based activation when several PLMNs are supported in the RAN (this means that shared cells and not shared cells are allowed for the specified PLMN. Note that the PLMN Target might differ from the PLMN specified in the Trace Reference, as that specifies the PLMN that is containing the management system requesting the Trace Session from the NE. See 3GPP TS 32.422 clause 5.9b for additional details. + properties: + mcc: + $ref: '#/components/schemas/Mcc' + mnc: + $ref: '#/components/schemas/Mnc' + required: + - mcc + - mnc + + tjStreamingTraceConsumerURI-Type: + type: string + description: The URI of the Trace Reporting MnS consumer (see 3GPP TS 28.532) to which the Trace records shall be sent. See 3GPP TS 32.422 clause 5.9 for additional details. + format: uri + + tjTraceCollectionEntityAddress-Type: + description: The IP address to which the Trace records shall be transferred. See 3GPP TS 32.422 clause 5.9 for additional details. + oneOf: + - $ref: '#/components/schemas/Ipv4Addr' + - $ref: '#/components/schemas/Ipv6Addr' + + tjTraceDepth-Type: + description: Specifies how detailed information should be recorded in the Network Element. The Trace Depth is a paremeter for Trace Session level, i.e., the Trace Depth is the same for all of the NEs to be traced in the same Trace Session. See 3GPP TS 32.422 clause 5.3 for additional details. + type: string + enum: + - MINIMUM + - MEDIUM + - MAXIMUM + - VENDORMINIMUM + - VENDORMEDIUM + - VENDORMAXIMUM + + tjTraceReference-Type: + type: object + description: The Trace Reference parameter shall be globally unique, therefore the Trace Reference shall compose as follows - MCC+MNC+Trace ID, where the MCC and MNC are coming with the Trace activation request from the management system to identify one PLMN containing the management system, and Trace ID is a 3 byte Octet String. See 3GPP TS 32.422 clause 5.6 for additional details. + properties: + mcc: + $ref: '#/components/schemas/Mcc' + mnc: + $ref: '#/components/schemas/Mnc' + traceId: + type: integer + required: + - mcc + - mnc + - traceId + + tjTraceReportingFormat-Type: + type: string + description: Specifies whether file-based or streaming reporting shall be used for this Trace Session. See 3GPP TS 32.422 clause 5.11 for additional details. + enum: + - FILE-BASED + - STREAMING + + tjTraceTarget-Type: + type: string + description: Type of trace target. For additional details see 3GPP TS 32.422. + enum: + - IMSI + - IMEI + - IMEISV + - PUBLIC_ID + - UTRAN_CELL + - E-UTRAN_CELL + - NG-RAN_CELL + - eNB + - RNC + - gNB + + tjTriggeringEvent-Type: + type: object + description: Specifies when to start a Trace Recording Session and which message shall be recorded first, when to stop a Trace Recording Session and which message shall be recorded last respectively. See 3GPP TS 32.422 clause 5.1 for additional detials. + properties: + NetworkElement: + type: string + enum: + - MSC_SERVER + - SGSN + - MGW + - GGSN + - BM_SC + - MME + - SGW + - PGW + - AMF + - SMF + - PCF + - UPF + EventBitmap: + type: integer + required: + - NetworkElement + - EventBitmap + + tjMDTAnonymizationOfData-Type: + description: Specifies level of MDT anonymization. For additional details see 3GPP TS 32.422 clause 5.10.12. + type: string + enum: + - NO_IDENTITY + - TAC_OF_IMEI + + tjMDTAreaConfigurationForNeighCell-Type: + description: Used for logged NR MDT and defines the area for which UE is requested to perform measurement logging for neighbour cells which have list of frequencies. For additional details see 3GPP TS 32.422 clause 5.10.26. + type: array + items: + type: object + properties: + frequency: + type: string + cell: + type: string + + tjMDTAreaScope-Type: + description: defines the area in terms or Cells or Tracking Area/Routing Area/Location Area where the MDT data collection shall take place. For additional details see 3GPP TS 32.422 clause 5.10.2. + allOf: + - $ref: '#/components/schemas/DnList' + + tjMDTCollectionPeriodRrmLte-Type: + description: See details in 3GPP TS 32.422 clause 5.10.20. + type: string + enum: + - 250ms + - 500ms + - 1000ms + - 2000ms + - 3000ms + - 4000ms + - 6000ms + - 8000ms + - 12000ms + - 16000ms + - 20000ms + - 24000ms + - 28000ms + - 32000ms + - 64000ms + + tjMDTCollectionPeriodRrmUmts-Type: + description: See details in 3GPP TS 32.422 clause 5.10.21. + type: string + enum: + - 1024ms + - 1280ms + - 2048ms + - 2560ms + - 5120ms + - 10240ms + - 1min + + tjMDTEventListForTriggeredMeasurement-Type: + description: See details in 3GPP TS 32.422 clause 5.10.28. + type: string + enum: + - OUT_OF_COVERAGE + - A2_EVENT + + tjMDTEventThreshold-Type: + description: See details in 3GPP TS 32.422 clause 5.10.7, 5.10.7a, 5.10.13 and 5.10.14. + type: object + properties: + EventThresholdRSRP: + type: integer + minimum: 0 + maximum: 97 + EventThresholdRSRQ: + type: integer + minimum: 0 + maximum: 34 + EventThreshold1F: + type: object + properties: + CPICH_RSCP: + type: integer + minimum: -120 + maximum: 25 + CPICH_EcNo: + type: integer + minimum: -24 + maximum: 0 + PathLoss: + type: integer + minimum: 30 + maximum: 165 + EventThreshold1I: + type: integer + minimum: -120 + maximum: 25 + + tjMDTListOfMeasurements-Type: + description: See details in 3GPP TS 32.422 clause 5.10.3 for details. + type: object + properties: + UMTS: + type: array + items: + type: string + enum: + - M1 + - M2 + - M3 + - M4 + - M5 + - M6_DL + - M6_UL + - M7_DL + - M7_UL + LTE: + type: array + items: + type: string + enum: + - M1 + - M2 + - M3 + - M4 + - M5 + - M1_EVENT_TRIGGERED + - M6 + - M7 + - M8 + - M9 + NR: + type: array + items: + type: string + enum: + - M1 + - M2 + - M3 + - M4 + - M5 + - M6 + - M7 + - M8 + - M9 + + tjMDTLoggingDuration-Type: + description: See details in 3GPP TS 32.422 clause 5.10.9. + type: string + enum: + - 600s + - 1200s + - 2400s + - 3600s + - 5400s + - 7200s + + tjMDTLoggingInterval-Type: + description: See details in 3GPP TS 32.422 clause 5.10.8. + type: string + enum: + - 1.28s + - 2.56s + - 5.12s + - 10.24s + - 20.48s + - 30.72s + - 40.96s + - 61.44s + + tjMDTMBSFNAreaList-Type: + description: See details in 3GPP TS 32.422 clause 5.10.25. + type: array + items: + type: object + properties: + mbsfnAreaId: + type: integer + minimum: 1 + earfcn: + type: integer + minimum: 1 + required: + - mbsfnAreaId + - earfcn + + tjMDTMeasurementPeriodLTE-Type: + description: See details in 3GPP TS 32.422 clause 5.10.23. + type: string + enum: + - 1024ms + - 1280ms + - 2048ms + - 2560ms + - 5120ms + - 10240ms + - 1min + + tjMDTMeasurementPeriodUMTS-Type: + description: See details in 3GPP TS 32.422 clause 5.10.22. + type: string + enum: + - 250ms + - 500ms + - 1000ms + - 2000ms + - 3000ms + - 4000ms + - 6000ms + - 8000ms + - 12000ms + - 16000ms + - 20000ms + - 24000ms + - 28000ms + - 32000ms + - 64000ms + + tjMDTMeasurementQuantity-Type: + description: See details in 3GPP TS 32.422 clause 5.10.15. + type: string + enum: + - CPICH_EcNo + - CPICH_RSCP + - PathLoss + + tjMDTPLMList-Type: + description: See details in 3GPP TS 32.422 clause 5.10.24. + type: array + items: + type: object + properties: + mcc: + $ref: '#/components/schemas/Mcc' + mnc: + $ref: '#/components/schemas/Mnc' + required: + - mcc + - mnc + maxItems: 16 + + tjMDTPositioningMethod-Type: + description: See details in 3GPP TS 32.422 clause 5.10.19. + type: string + enum: + - GNSS + - E-CELL_ID + + tjMDTReportAmount-Type: + description: See details in 3GPP TS 32.422 clause 5.10.6. + type: string + enum: + - 1 + - 2 + - 4 + - 8 + - 16 + - 32 + - 64 + - INFINITY + + tjMDTReportingTrigger-Type: + description: See details in 3GPP TS 32.422 clause 5.10.4. + type: array + items: + type: string + enum: + - PERIODICAL + - A2_FOR_LTE + - 1F_FOR_UMTS + - 1I_FOR_UMTS_MCPS_TDD + - A2_TRIGGERED_PERIODIC_FOR_LTE + - ALL_CONFIGURED_RRM_FOR_LTE + - ALL_CONFIGURED_RRM_FOR_UMTS + + tjMDTReportInterval-Type: + description: See details in 3GPP TS 32.422 clause 5.10.5. + type: string + enum: + - 250ms + - 500ms + - 1000ms + - 2000ms + - 3000ms + - 4000ms + - 6000ms + - 8000ms + - 12000ms + - 16000ms + - 20000ms + - 24000ms + - 28000ms + - 32000ms + - 64000ms + - 120ms + - 240ms + - 480ms + - 640ms + - 1024ms + - 2048ms + - 5120ms + - 10240ms + - 60000ms + - 360000ms + - 720000ms + - 1800000ms + - 3600000ms + + tjMDTReportType-Type: + description: Report type for logged NR MDT. See details in 3GPP TS 32.422 clause 5.10.27. + type: string + enum: + - PERIODICAL + - EVENT_TRIGGERED + + tjMDTSensorInformation-Type: + description: See details in 3GPP TS 32.422 clause 5.10.29. + type: array + items: + type: string + enum: + - BAROMETRIC_PRESSURE + - UE_SPEED + - UE_ORIENTATION + + tjMDTTraceCollectionEntityID-Type: + description: See details in 3GPP TS 32.422 clause 5.10.11. Only tceID value may be sent over the air to the UE being configured for Logged MDT. + type: object + properties: + tceID: + type: integer + tcePLMN: + type: object + properties: + mcc: + $ref: '#/components/schemas/Mcc' + mnc: + $ref: '#/components/schemas/Mnc' + required: + - mcc + - mnc + tceAddress: + oneOf: + - $ref: '#/components/schemas/tjTraceCollectionEntityAddress-Type' + - $ref: '#/components/schemas/tjStreamingTraceConsumerURI-Type' + required: + - tceID + - tcePLMN + - tceAddress + + +#-------- end of Definition of types used in Trace control NRM fragment ---------- + + +#-------- Definition of abstract IOC Top ----------------------------------------- + + Top-Attr: + # This definition will be deprecated, when all occurances of Top-Attr + # are replaced by Top. + type: object + properties: + id: + type: string + VsDataContainer: + $ref: '#/components/schemas/VsDataContainer-Multiple' + Top: + type: object + properties: + id: + type: string + VsDataContainer: + $ref: '#/components/schemas/VsDataContainer-Multiple' + +#-------- Definition of IOCs with new name-containments defined in other TS ------ + + SubNetwork-Attr: + type: object + properties: + dnPrefix: + type: string + userLabel: + type: string + userDefinedNetworkType: + type: string + setOfMcc: + $ref: '#/components/schemas/SetOfMcc' + priorityLabel: + type: integer + supportedPerfMetricGroups: + type: array + items: + $ref: '#/components/schemas/SupportedPerfMetricGroup' + ManagedElement-Attr: + type: object + properties: + dnPrefix: + type: string + managedElementTypeList: + $ref: '#/components/schemas/ManagedElementTypeList' + userLabel: + type: string + locationName: + type: string + managedBy: + $ref: '#/components/schemas/DnList' + vendorName: + type: string + userDefinedState: + type: string + swVersion: + type: string + priorityLabel: + type: integer + supportedPerfMetricGroups: + type: array + items: + $ref: '#/components/schemas/SupportedPerfMetricGroup' + + SubNetwork-ncO: + type: object + properties: + ManagementNode: + $ref: '#/components/schemas/ManagementNode-Multiple' + MeContext: + $ref: '#/components/schemas/MeContext-Multiple' + PerfMetricJob: + $ref: '#/components/schemas/PerfMetricJob-Multiple' + ThresholdMonitor: + $ref: '#/components/schemas/ThresholdMonitor-Multiple' + ThresholdMonitoringCapability: + $ref: '#/components/schemas/ThresholdMonitoringCapability-Single' + NtfSubscriptionControl: + $ref: '#/components/schemas/NtfSubscriptionControl-Multiple' + TraceJob: + $ref: '#/components/schemas/TraceJob-Multiple' + AlarmList: + $ref: '#/components/schemas/AlarmList-Single' + MnsRegistry: + type: array + items: + $ref: '#/components/schemas/MnsRegistry' + ManagedElement-ncO: + type: object + properties: + PerfMetricJob: + $ref: '#/components/schemas/PerfMetricJob-Multiple' + ThresholdMonitor: + $ref: '#/components/schemas/ThresholdMonitor-Multiple' + ThresholdMonitoringCapability: + $ref: '#/components/schemas/ThresholdMonitoringCapability-Single' + NtfSubscriptionControl: + $ref: '#/components/schemas/NtfSubscriptionControl-Multiple' + TraceJob: + $ref: '#/components/schemas/TraceJob-Multiple' + AlarmList: + $ref: '#/components/schemas/AlarmList-Single' + +#-------- Definition of abstract IOCs -------------------------------------------- + + ManagedFunction-Attr: + type: object + properties: + userLabel: + type: string + vnfParametersList: + $ref: '#/components/schemas/VnfParametersList' + peeParametersList: + $ref: '#/components/schemas/PeeParametersList' + priorityLabel: + type: integer + supportedPerfMetricGroups: + type: array + items: + $ref: '#/components/schemas/SupportedPerfMetricGroup' + EP_RP-Attr: + type: object + properties: + userLabel: + type: string + farEndEntity: + type: string + supportedPerfMetricGroups: + type: array + items: + $ref: '#/components/schemas/SupportedPerfMetricGroup' + + TraceJob-Attr: + type: object + description: abstract class used as a container of all TraceJob attributes + properties: + tjJobType: + $ref: '#/components/schemas/tjJobType-Type' + tjListOfInterfaces: + $ref: '#/components/schemas/tjListOfInterfaces-Type' + tjListOfNeTypes: + $ref: '#/components/schemas/tjListOfNeTypes-Type' + tjPLMNTarget: + $ref: '#/components/schemas/tjPLMNTaget-Type' + tjTraceConsumer: + oneOf: + - $ref: '#/components/schemas/tjStreamingTraceConsumerURI-Type' + - $ref: '#/components/schemas/tjTraceCollectionEntityAddress-Type' + tjTraceDepth: + $ref: '#/components/schemas/tjTraceDepth-Type' + tjTraceReference: + $ref: '#/components/schemas/tjTraceReference-Type' + tjTraceReportingFormat: + $ref: '#/components/schemas/tjTraceReportingFormat-Type' + tjTraceTarget: + $ref: '#/components/schemas/tjTraceTarget-Type' + tjTriggeringEvent: + $ref: '#/components/schemas/tjTriggeringEvent-Type' + tjMDTAnonymizationOfData: + $ref: '#/components/schemas/tjMDTAnonymizationOfData-Type' + tjMDTAreaConfigurationForNeighCell: + $ref: '#/components/schemas/tjMDTAreaConfigurationForNeighCell-Type' + tjMDTAreaScope: + $ref: '#/components/schemas/tjMDTAreaScope-Type' + tjMDTCollectionPeriodRrmLte: + $ref: '#/components/schemas/tjMDTCollectionPeriodRrmLte-Type' + tjMDTCollectionPeriodRrmUmts: + $ref: '#/components/schemas/tjMDTCollectionPeriodRrmUmts-Type' + tjMDTEventListForTriggeredMeasurement: + $ref: '#/components/schemas/tjMDTEventListForTriggeredMeasurement-Type' + tjMDTEventThreshold: + $ref: '#/components/schemas/tjMDTEventThreshold-Type' + tjMDTListOfMeasurements: + $ref: '#/components/schemas/tjMDTListOfMeasurements-Type' + tjMDTLoggingDuration: + $ref: '#/components/schemas/tjMDTLoggingDuration-Type' + tjMDTLoggingInterval: + $ref: '#/components/schemas/tjMDTLoggingInterval-Type' + tjMDTMBSFNAreaList: + $ref: '#/components/schemas/tjMDTMBSFNAreaList-Type' + tjMDTMeasurementPeriodLTE: + $ref: '#/components/schemas/tjMDTMeasurementPeriodLTE-Type' + tjMDTMeasurementPeriodUMTS: + $ref: '#/components/schemas/tjMDTMeasurementPeriodUMTS-Type' + tjMDTMeasurementQuantity: + $ref: '#/components/schemas/tjMDTMeasurementQuantity-Type' + tjMDTPLMList: + $ref: '#/components/schemas/tjMDTPLMList-Type' + tjMDTPositioningMethod: + $ref: '#/components/schemas/tjMDTPositioningMethod-Type' + tjMDTReportAmount: + $ref: '#/components/schemas/tjMDTReportAmount-Type' + tjMDTReportingTrigger: + $ref: '#/components/schemas/tjMDTReportingTrigger-Type' + tjMDTReportInterval: + $ref: '#/components/schemas/tjMDTReportInterval-Type' + tjMDTReportType: + $ref: '#/components/schemas/tjMDTReportType-Type' + tjMDTSensorInformation: + $ref: '#/components/schemas/tjMDTSensorInformation-Type' + tjMDTTraceCollectionEntityID: + $ref: '#/components/schemas/tjMDTTraceCollectionEntityID-Type' + required: + - tjJobType + - tjTraceReference + - tjTraceConsumer + - tjTraceReportingFormat + - tjTraceTarget + + ManagedFunction-ncO: + type: object + properties: + PerfMetricJob: + $ref: '#/components/schemas/PerfMetricJob-Multiple' + ThresholdMonitor: + $ref: '#/components/schemas/ThresholdMonitor-Multiple' + ThresholdMonitoringCapability: + $ref: '#/components/schemas/ThresholdMonitoringCapability-Single' + ManagedNFService: + $ref: '#/components/schemas/ManagedNFService-Multiple' + TraceJob: + $ref: '#/components/schemas/TraceJob-Multiple' + + MnsRegistry: + type: object + properties: + mnsLabel: + type: string + mnsType: + type: string + mnsVersion: + type: string + mnsAddress: + type: string + +#-------- Definition of concrete IOCs -------------------------------------------- + + VsDataContainer-Single: + type: object + properties: + id: + type: string + attributes: + type: object + properties: + vsDataType: + type: string + vsDataFormatVersion: + type: string + vsData: + nullable: true + VsDataContainer: + $ref: '#/components/schemas/VsDataContainer-Multiple' + ManagedNFService-Single: + allOf: + - $ref: '#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + type: object + properties: + userLabel: + type: string + nFServiceType: + $ref: '#/components/schemas/NFServiceType' + sAP: + $ref: '#/components/schemas/SAP' + operations: + $ref: '#/components/schemas/OperationList' + administrativeState: + $ref: '#/components/schemas/AdministrativeState' + operationalState: + $ref: '#/components/schemas/OperationalState' + usageState: + $ref: '#/components/schemas/UsageState' + registrationState: + $ref: '#/components/schemas/RegistrationState' + ManagementNode-Single: + allOf: + - $ref: '#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + type: object + properties: + userLabel: + type: string + managedElements: + $ref: '#/components/schemas/DnList' + vendorName: + type: string + userDefinedState: + type: string + locationName: + type: string + swVersion: + type: string + MeContext-Single: + allOf: + - $ref: '#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + type: object + properties: + dnPrefix: + type: string + PerfMetricJob-Single: + allOf: + - $ref: '#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + type: object + properties: + administrativeState: + $ref: '#/components/schemas/AdministrativeState' + operationalState: + $ref: '#/components/schemas/OperationalState' + perfMetricJobGroupId: + type: string + performanceMetrics: + type: array + items: + type: string + granularityPeriod: + type: integer + minimum: 1 + objectInstances: + $ref: '#/components/schemas/DnList' + rootObjectInstances: + $ref: '#/components/schemas/DnList' + reportingCtrl: + $ref: '#/components/schemas/ReportingCtrl' + ThresholdMonitoringCapability-Single: + allOf: + - $ref: '#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + type: object + properties: + supportedMonitoringGPs: + $ref: '#/components/schemas/MonitoringGPList' + ThresholdMonitor-Single: + allOf: + - $ref: '#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + type: object + properties: + thresholdInfoList: + $ref: '#/components/schemas/ThresholdInfoList' + monitoringGP: + type: integer + monitoringNotifTarget: + type: string + monitoredIOCName: + type: string + monitoredObjectDNs: + $ref: '#/components/schemas/DnList' + NtfSubscriptionControl-Single: + allOf: + - $ref: '#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + type: object + properties: + notificationRecipientAddress: + $ref: '#/components/schemas/Uri' + notificationTypes: + $ref: '#/components/schemas/NotificationTypes' + scope: + $ref: '#/components/schemas/Scope' + notificationFilter: + type: string + HeartbeatControl: + $ref: '#/components/schemas/HeartbeatControl-Single' + HeartbeatControl-Single: + allOf: + - $ref: '#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + type: object + properties: + heartbeatNtfPeriod: + type: integer + triggerHeartbeatNtf: + type: boolean + TraceJob-Single: + allOf: + - $ref: '#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + $ref: '#/components/schemas/TraceJob-Attr' + + AlarmList-Single: + allOf: + - $ref: '#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + type: object + properties: + administrativeState: + $ref: '#/components/schemas/AdministrativeState' + operationalState: + $ref: '#/components/schemas/OperationalState' + numOfAlarmRecords: + type: integer + lastModification: + $ref: '#/components/schemas/DateTime' + alarmRecords: + description: >- + This resource represents a map of alarm records. + The alarmIds are used as keys in the map. + type: object + additionalProperties: + $ref: 'faultMnS.yaml#/components/schemas/AlarmRecord' + +#-------- Definition of JSON arrays for name-contained IOCs ---------------------- + + VsDataContainer-Multiple: + type: array + items: + $ref: '#/components/schemas/VsDataContainer-Single' + ManagedNFService-Multiple: + type: array + items: + $ref: '#/components/schemas/ManagedNFService-Single' + ManagementNode-Multiple: + type: array + items: + $ref: '#/components/schemas/ManagementNode-Single' + MeContext-Multiple: + type: array + items: + $ref: '#/components/schemas/MeContext-Single' + PerfMetricJob-Multiple: + type: array + items: + $ref: '#/components/schemas/PerfMetricJob-Single' + ThresholdMonitor-Multiple: + type: array + items: + $ref: '#/components/schemas/ThresholdMonitor-Single' + NtfSubscriptionControl-Multiple: + type: array + items: + $ref: '#/components/schemas/NtfSubscriptionControl-Single' + TraceJob-Multiple: + type: array + items: + $ref: '#/components/schemas/TraceJob-Single' + +#-------- Definitions in TS 28.623 for TS 28.532 --------------------------------- + + resources-genericNrm: + oneOf: + + - $ref: '#/components/schemas/VsDataContainer-Single' + + - $ref: '#/components/schemas/ManagementNode-Single' + - $ref: '#/components/schemas/MeContext-Single' + + - $ref: '#/components/schemas/ManagedNFService-Single' + + - $ref: '#/components/schemas/PerfMetricJob-Single' + + - $ref: '#/components/schemas/ThresholdMonitoringCapability-Single' + - $ref: '#/components/schemas/ThresholdMonitor-Single' + + - $ref: '#/components/schemas/NtfSubscriptionControl-Single' + - $ref: '#/components/schemas/HeartbeatControl-Single' + - $ref: '#/components/schemas/TraceJob-Single' + + - $ref: '#/components/schemas/AlarmList-Single' diff --git a/OpenAPI/heartbeatNtf.yaml b/OpenAPI/heartbeatNtf.yaml new file mode 100644 index 000000000..afde5066d --- /dev/null +++ b/OpenAPI/heartbeatNtf.yaml @@ -0,0 +1,23 @@ +openapi: 3.0.1 +info: + title: Heartbeat notification + version: 16.3.0 + description: >- + OAS 3.0.1 specification of the heartbeat notification + © 2020, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). + All rights reserved. +externalDocs: + description: 3GPP TS 28.532 V16.3.0; Heartbeat notification + url: http://www.3gpp.org/ftp/Specs/archive/28_series/28.6532/ +paths: {} +components: + schemas: + hearbeatNtfPeriod-Type: + type: integer + notifyHeartbeat-NotifType: + allOf: + - $ref: 'provMnS.yaml#/components/schemas/header-Type' + - type: object + properties: + heartbeatNtfPeriod: + $ref: '#/components/schemas/hearbeatNtfPeriod-Type' diff --git a/OpenAPI/nrNrm.yaml b/OpenAPI/nrNrm.yaml new file mode 100644 index 000000000..850106631 --- /dev/null +++ b/OpenAPI/nrNrm.yaml @@ -0,0 +1,1905 @@ +openapi: 3.0.1 +info: + title: NR NRM + version: 17.4.0 + description: >- + OAS 3.0.1 specification of the NR NRM + © 2020, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). + All rights reserved. +externalDocs: + description: 3GPP TS 28.541; 5G NRM, NR NRM + url: http://www.3gpp.org/ftp/Specs/archive/28_series/28.541/ +paths: {} +components: + schemas: + +#-------- Definition of types----------------------------------------------------- + + GnbId: + type: string + GnbIdLength: + type: integer + minimum: 22 + maximum: 32 + GnbName: + type: string + maxLength: 150 + GnbDuId: + type: number + minimum: 0 + maximum: 68719476735 + GnbCuUpId: + type: number + minimum: 0 + maximum: 68719476735 + + Sst: + type: integer + maximum: 255 + Snssai: + type: object + properties: + sst: + $ref: '#/components/schemas/Sst' + sd: + type: string + SnssaiList: + type: array + items: + $ref: '#/components/schemas/Snssai' + + Mnc: + type: string + pattern: '[0-9]{3}|[0-9]{2}' + PlmnId: + type: object + properties: + mcc: + $ref: 'genericNrm.yaml#/components/schemas/Mcc' + mnc: + $ref: '#/components/schemas/Mnc' + PlmnIdList: + type: array + items: + $ref: '#/components/schemas/PlmnId' + PlmnInfo: + type: object + properties: + plmnId": + $ref: '#/components/schemas/PlmnId' + snssai: + $ref: '#/components/schemas/Snssai' + PlmnInfoList: + type: array + items: + $ref: '#/components/schemas/PlmnInfo' + cagId: + type: string + nid: + type: string + NpnIdentity: + type: object + properties: + plmnId": + $ref: '#/components/schemas/PlmnId' + cagidList: + $ref: '#/components/schemas/cagId' + nidList: + $ref: '#/components/schemas/nid' + NpnIdentityList: + type: array + items: + $ref: '#/components/schemas/NpnIdentity' + GGnbId: + type: string + pattern: '^[0-9]{3}[0-9]{2,3}-(22|23|24|25|26|27|28|29|30|31|32)-[0-9]{1,10}' + GEnbId: + type: string + pattern: '^[0-9]{3}[0-9]{2,3}-(18|20|21|22)-[0-9]{1,7}' + + GGnbIdList: + type: array + items: + $ref: '#/components/schemas/GGnbId' + + GEnbIdList: + type: array + items: + $ref: '#/components/schemas/GEnbId' + + NrPci: + type: integer + maximum: 503 + NrTac: + type: integer + maximum: 16777215 + Tai: + type: object + properties: + plmnId: + $ref: '#/components/schemas/PlmnId' + nrTac: + $ref: '#/components/schemas/NrTac' + + BackhaulAddress: + type: object + properties: + gnbId: + $ref: '#/components/schemas/GnbId' + tai: + $ref: "#/components/schemas/Tai" + MappingSetIDBackhaulAddress: + type: object + properties: + setID: + type: integer + backhaulAddress: + $ref: '#/components/schemas/BackhaulAddress' + IntraRatEsActivationOriginalCellLoadParameters: + type: object + properties: + loadThreshold: + type: integer + timeDuration: + type: integer + IntraRatEsActivationCandidateCellsLoadParameters: + type: object + properties: + loadThreshold: + type: integer + timeDuration: + type: integer + IntraRatEsDeactivationCandidateCellsLoadParameters: + type: object + properties: + loadThreshold: + type: integer + timeDuration: + type: integer + EsNotAllowedTimePeriod: + type: object + properties: + startTimeandendTime: + type: string + periodOfDay: + type: string + daysOfWeekList: + type: string + listoftimeperiods: + type: string + InterRatEsActivationOriginalCellParameters: + type: object + properties: + loadThreshold: + type: integer + timeDuration: + type: integer + InterRatEsActivationCandidateCellParameters: + type: object + properties: + loadThreshold: + type: integer + timeDuration: + type: integer + InterRatEsDeactivationCandidateCellParameters: + type: object + properties: + loadThreshold: + type: integer + timeDuration: + type: integer + + UeAccProbilityDist: + type: object + properties: + targetProbability: + type: integer + numberofpreamblessent: + type: integer + + UeAccDelayProbilityDist: + type: object + properties: + targetProbability: + type: integer + accessdelay: + type: integer + + NRPciList: + type: object + properties: + NRPci: + type: integer + + CSonPciList: + type: object + properties: + NRPci: + type: integer + + MaximumDeviationHoTrigger: + type: integer + minimum: -20 + maximum: 20 + + MinimumTimeBetweenHoTriggerChange: + type: integer + minimum: 0 + maximum: 604800 + + TstoreUEcntxt: + type: integer + minimum: 0 + maximum: 1023 + + CellState: + type: string + enum: + - IDLE + - INACTIVE + - ACTIVE + CyclicPrefix: + type: string + enum: + - '15' + - '30' + - '60' + - '120' + TxDirection: + type: string + enum: + - DL + - UL + - DL and UL + BwpContext: + type: string + enum: + - DL + - UL + - SUL + IsInitialBwp: + type: string + enum: + - INITIAL + - OTHER + - SUL + QuotaType: + type: string + enum: + - STRICT + - FLOAT + IsESCoveredBy: + type: string + enum: + - NO + - PARTIAL + - FULL + RrmPolicyMember: + type: object + properties: + plmnId: + $ref: '#/components/schemas/PlmnId' + snssai: + $ref: '#/components/schemas/Snssai' + RrmPolicyMemberList: + type: array + items: + $ref: '#/components/schemas/RrmPolicyMember' + AddressWithVlan: + type: object + properties: + ipv4Address: + $ref: 'genericNrm.yaml#/components/schemas/Ipv4Addr' + ipv6Address: + $ref: 'genericNrm.yaml#/components/schemas/Ipv6Addr' + vlanId: + type: integer + minimum: 0 + maximum: 4096 + LocalAddress: + type: object + properties: + addressWithVlan: + $ref: '#/components/schemas/AddressWithVlan' + port: + type: integer + minimum: 0 + maximum: 65535 + RemoteAddress: + type: object + properties: + ipv4Address: + $ref: 'genericNrm.yaml#/components/schemas/Ipv4Addr' + ipv6Address: + $ref: 'genericNrm.yaml#/components/schemas/Ipv6Addr' + + CellIndividualOffset: + type: object + properties: + rsrpOffsetSSB: + type: integer + rsrqOffsetSSB: + type: integer + sinrOffsetSSB: + type: integer + rsrpOffsetCSI-RS: + type: integer + rsrqOffsetCSI-RS: + type: integer + sinrOffsetCSI-RS: + type: integer + QOffsetRange: + type: integer + enum: + - -24 + - -22 + - -20 + - -18 + - -16 + - -14 + - -12 + - -10 + - -8 + - -6 + - -5 + - -4 + - -3 + - -2 + - -1 + - 0 + - 24 + - 22 + - 20 + - 18 + - 16 + - 14 + - 12 + - 10 + - 8 + - 6 + - 5 + - 4 + - 3 + - 2 + - 1 + QOffsetRangeList: + type: object + properties: + rsrpOffsetSSB: + $ref: '#/components/schemas/QOffsetRange' + rsrqOffsetSSB: + $ref: '#/components/schemas/QOffsetRange' + sinrOffsetSSB: + $ref: '#/components/schemas/QOffsetRange' + rsrpOffsetCSI-RS: + $ref: '#/components/schemas/QOffsetRange' + rsrqOffsetCSI-RS: + $ref: '#/components/schemas/QOffsetRange' + sinrOffsetCSI-RS: + $ref: '#/components/schemas/QOffsetRange' + QOffsetFreq: + type: number + TReselectionNRSf: + type: integer + enum: + - 25 + - 50 + - 75 + - 100 + SsbPeriodicity: + type: integer + enum: + - 5 + - 10 + - 20 + - 40 + - 80 + - 160 + SsbDuration: + type: integer + enum: + - 1 + - 2 + - 3 + - 4 + - 5 + SsbSubCarrierSpacing: + type: integer + enum: + - 15 + - 30 + - 120 + - 240 + CoverageShape: + type: integer + maximum: 65535 + DigitalTilt: + type: integer + minimum: -900 + maximum: 900 + DigitalAzimuth: + type: integer + minimum: -1800 + maximum: 1800 + + RSSetId: + type: integer + maximum: 4194303 + + RSSetType: + type: string + enum: + - RS1 + - RS2 + + FrequencyDomainPara: + type: object + properties: + rimRSSubcarrierSpacing: + type: integer + rIMRSBandwidth: + type: integer + nrofGlobalRIMRSFrequencyCandidates: + type: integer + rimRSCommonCarrierReferencePoint: + type: integer + rimRSStartingFrequencyOffsetIdList: + type: array + items: + type: integer + + SequenceDomainPara: + type: object + properties: + nrofRIMRSSequenceCandidatesofRS1: + type: integer + rimRSScrambleIdListofRS1: + type: array + items: + type: integer + nrofRIMRSSequenceCandidatesofRS2: + type: integer + rimRSScrambleIdListofRS2: + type: array + items: + type: integer + enableEnoughNotEnoughIndication: + type: string + enum: + - ENABLE + - DISABLE + RIMRSScrambleTimerMultiplier: + type: integer + RIMRSScrambleTimerOffset: + type: integer + + TimeDomainPara: + type: object + properties: + dlULSwitchingPeriod1: + type: string + enum: + - MS0P5 + - MS0P625 + - MS1 + - MS1P25 + - MS2 + - MS2P5 + - MS3 + - MS4 + - MS5 + - MS10 + - MS20 + symbolOffsetOfReferencePoint1: + type: integer + dlULSwitchingPeriod2: + type: string + enum: + - MS0P5 + - MS0P625 + - MS1 + - MS1P25 + - MS2 + - MS2P5 + - MS3 + - MS4 + - MS5 + - MS10 + - MS20 + symbolOffsetOfReferencePoint2: + type: integer + totalnrofSetIdofRS1: + type: integer + totalnrofSetIdofRS2: + type: integer + nrofConsecutiveRIMRS1: + type: integer + nrofConsecutiveRIMRS2: + type: integer + consecutiveRIMRS1List: + type: array + items: + type: integer + consecutiveRIMRS2List: + type: array + items: + type: integer + enablenearfarIndicationRS1: + type: string + enum: + - ENABLE + - DISABLE + enablenearfarIndicationRS2: + type: string + enum: + - ENABLE + - DISABLE + + RimRSReportInfo: + type: object + properties: + detectedSetID: + type: integer + propagationDelay: + type: integer + functionalityOfRIMRS: + type: string + enum: + - RS1 + - RS2 + - RS1forEnoughMitigation + - RS1forNotEnoughMitigation + + RimRSReportConf: + type: object + properties: + reportIndicator: + type: string + enum: + - ENABLE + - DISABLE + reportInterval: + type: integer + nrofRIMRSReportInfo: + type: integer + maxPropagationDelay: + type: integer + rimRSReportInfoList: + type: array + items: + $ref: '#/components/schemas/RimRSReportInfo' + TceMappingInfo: + type: object + properties: + TceIPAddress: + oneOf: + - $ref: 'genericNrm.yaml#/components/schemas/Ipv4Addr' + - $ref: 'genericNrm.yaml#/components/schemas/Ipv6Addr' + TceID: + type: integer + PlmnTarget: + $ref: '#/components/schemas/PlmnId' + TceMappingInfoList: + type: array + items: + $ref: '#/components/schemas/TceMappingInfo' + + +#-------- Definition of abstract IOCs -------------------------------------------- + + RrmPolicy_-Attr: + type: object + properties: + resourceType: + type: string + rRMPolicyMemberList: + $ref: '#/components/schemas/RrmPolicyMemberList' + + +#-------- Definition of concrete IOCs -------------------------------------------- + + SubNetwork-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + $ref: 'genericNrm.yaml#/components/schemas/SubNetwork-Attr' + - $ref: 'genericNrm.yaml#/components/schemas/SubNetwork-ncO' + - type: object + properties: + SubNetwork: + $ref: '#/components/schemas/SubNetwork-Multiple' + ManagedElement: + $ref: '#/components/schemas/ManagedElement-Multiple' + NRFrequency: + $ref: '#/components/schemas/NRFrequency-Multiple' + ExternalGnbCuCpFunction: + $ref: '#/components/schemas/ExternalGnbCuCpFunction-Multiple' + ExternalENBFunction: + $ref: '#/components/schemas/ExternalENBFunction-Multiple' + EUtranFrequency: + $ref: '#/components/schemas/EUtranFrequency-Multiple' + DESManagementFunction: + $ref: '#/components/schemas/DESManagementFunction-Single' + DRACHOptimizationFunction: + $ref: '#/components/schemas/DRACHOptimizationFunction-Single' + DMROFunction: + $ref: '#/components/schemas/DMROFunction-Single' + DPCIConfigurationFunction: + $ref: '#/components/schemas/DPCIConfigurationFunction-Single' + CPCIConfigurationFunction: + $ref: '#/components/schemas/CPCIConfigurationFunction-Single' + CESManagementFunction: + $ref: '#/components/schemas/CESManagementFunction-Single' + Configurable5QISet: + $ref: '5gcNrm.yaml#/components/schemas/Configurable5QISet-Multiple' + RimRSGlobal: + $ref: '#/components/schemas/RimRSGlobal-Single' + Dynamic5QISet: + $ref: '5gcNrm.yaml#/components/schemas/Dynamic5QISet-Multiple' + + ManagedElement-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + $ref: 'genericNrm.yaml#/components/schemas/ManagedElement-Attr' + - $ref: 'genericNrm.yaml#/components/schemas/ManagedElement-ncO' + - type: object + properties: + GnbDuFunction: + $ref: '#/components/schemas/GnbDuFunction-Multiple' + GnbCuUpFunction: + $ref: '#/components/schemas/GnbCuUpFunction-Multiple' + GnbCuCpFunction: + $ref: '#/components/schemas/GnbCuCpFunction-Multiple' + DESManagementFunction: + $ref: '#/components/schemas/DESManagementFunction-Single' + DRACHOptimizationFunction: + $ref: '#/components/schemas/DRACHOptimizationFunction-Single' + DMROFunction: + $ref: '#/components/schemas/DMROFunction-Single' + DPCIConfigurationFunction: + $ref: '#/components/schemas/DPCIConfigurationFunction-Single' + CPCIConfigurationFunction: + $ref: '#/components/schemas/CPCIConfigurationFunction-Single' + CESManagementFunction: + $ref: '#/components/schemas/CESManagementFunction-Single' + Configurable5QISet: + $ref: '5gcNrm.yaml#/components/schemas/Configurable5QISet-Multiple' + Dynamic5QISet: + $ref: '5gcNrm.yaml#/components/schemas/Dynamic5QISet-Multiple' + + GnbDuFunction-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' + - type: object + properties: + gnbDuId: + $ref: '#/components/schemas/GnbDuId' + gnbDuName: + $ref: '#/components/schemas/GnbName' + gnbId: + $ref: '#/components/schemas/GnbId' + gnbIdLength: + $ref: '#/components/schemas/GnbIdLength' + rimRSReportConf: + $ref: '#/components/schemas/RimRSReportConf' + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' + - type: object + properties: + RRMPolicyRatio: + $ref: '#/components/schemas/RRMPolicyRatio-Multiple' + NrCellDu: + $ref: '#/components/schemas/NrCellDu-Multiple' + Bwp-Multiple: + $ref: '#/components/schemas/Bwp-Multiple' + NrSectorCarrier-Multiple: + $ref: '#/components/schemas/NrSectorCarrier-Multiple' + EP_F1C: + $ref: '#/components/schemas/EP_F1C-Single' + EP_F1U: + $ref: '#/components/schemas/EP_F1U-Multiple' + DRACHOptimizationFunction: + $ref: '#/components/schemas/DRACHOptimizationFunction-Single' + GnbCuUpFunction-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' + - type: object + properties: + gnbId: + $ref: '#/components/schemas/GnbId' + gnbIdLength: + $ref: '#/components/schemas/GnbIdLength' + gnbCuUpId: + $ref: '#/components/schemas/GnbCuUpId' + plmnInfoList: + $ref: '#/components/schemas/PlmnInfoList' + configurable5QISetRef: + $ref: 'genericNrm.yaml#/components/schemas/Dn' + dynamic5QISetRef: + $ref: 'genericNrm.yaml#/components/schemas/Dn' + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' + - type: object + properties: + RRMPolicyRatio: + $ref: '#/components/schemas/RRMPolicyRatio-Multiple' + EP_E1: + $ref: '#/components/schemas/EP_E1-Single' + EP_XnU: + $ref: '#/components/schemas/EP_XnU-Multiple' + EP_F1U: + $ref: '#/components/schemas/EP_F1U-Multiple' + EP_NgU: + $ref: '#/components/schemas/EP_NgU-Multiple' + EP_X2U: + $ref: '#/components/schemas/EP_X2U-Multiple' + EP_S1U: + $ref: '#/components/schemas/EP_S1U-Multiple' + GnbCuCpFunction-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' + - type: object + properties: + gnbId: + $ref: '#/components/schemas/GnbId' + gnbIdLength: + $ref: '#/components/schemas/GnbIdLength' + gnbCuName: + $ref: '#/components/schemas/GnbName' + plmnId: + $ref: '#/components/schemas/PlmnId' + x2BlackList: + $ref: '#/components/schemas/GGnbIdList' + xnBlackList: + $ref: '#/components/schemas/GGnbIdList' + x2WhiteList: + $ref: '#/components/schemas/GGnbIdList' + xnWhiteList: + $ref: '#/components/schemas/GGnbIdList' + x2XnHOBlackList: + $ref: '#/components/schemas/GEnbIdList' + mappingSetIDBackhaulAddress: + $ref: '#/components/schemas/MappingSetIDBackhaulAddress' + tceMappingInfoList: + $ref: '#/components/schemas/TceMappingInfoList' + configurable5QISetRef: + $ref: 'genericNrm.yaml#/components/schemas/Dn' + dynamic5QISetRef: + $ref: 'genericNrm.yaml#/components/schemas/Dn' + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' + - type: object + properties: + RRMPolicyRatio: + $ref: '#/components/schemas/RRMPolicyRatio-Multiple' + NrCellCu: + $ref: '#/components/schemas/NrCellCu-Multiple' + EP_XnC: + $ref: '#/components/schemas/EP_XnC-Multiple' + EP_E1: + $ref: '#/components/schemas/EP_E1-Multiple' + EP_F1C: + $ref: '#/components/schemas/EP_F1C-Multiple' + EP_NgC: + $ref: '#/components/schemas/EP_NgC-Multiple' + EP_X2C: + $ref: '#/components/schemas/EP_X2C-Multiple' + DANRManagementFunction: + $ref: '#/components/schemas/DANRManagementFunction-Single' + DESManagementFunction: + $ref: '#/components/schemas/DESManagementFunction-Single' + DMROFunction: + $ref: '#/components/schemas/DMROFunction-Single' + + NrCellCu-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' + - type: object + properties: + cellLocalId: + type: integer + plmnInfoList: + $ref: '#/components/schemas/PlmnInfoList' + nRFrequencyRef: + $ref: 'genericNrm.yaml#/components/schemas/Dn' + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' + - type: object + properties: + RRMPolicyRatio: + $ref: '#/components/schemas/RRMPolicyRatio-Multiple' + NRCellRelation: + $ref: '#/components/schemas/NRCellRelation-Multiple' + EUtranCellRelation: + $ref: '#/components/schemas/EUtranCellRelation-Multiple' + NRFreqRelation: + $ref: '#/components/schemas/NRFreqRelation-Multiple' + EUtranFreqRelation: + $ref: '#/components/schemas/EUtranFreqRelation-Multiple' + DESManagementFunction: + $ref: '#/components/schemas/DESManagementFunction-Single' + DMROFunction: + $ref: '#/components/schemas/DMROFunction-Single' + CESManagementFunction: + $ref: '#/components/schemas/CESManagementFunction-Single' + DPCIConfigurationFunction: + $ref: '#/components/schemas/DPCIConfigurationFunction-Single' + + NrCellDu-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' + - type: object + properties: + administrativeState: + $ref: 'genericNrm.yaml#/components/schemas/AdministrativeState' + operationalState: + $ref: 'genericNrm.yaml#/components/schemas/OperationalState' + cellLocalId: + type: integer + cellState: + $ref: '#/components/schemas/CellState' + plmnInfoList: + $ref: '#/components/schemas/PlmnInfoList' + npnIdentityList: + $ref: '#/components/schemas/NpnIdentityList' + nrPci: + $ref: '#/components/schemas/NrPci' + nrTac: + $ref: '#/components/schemas/NrTac' + arfcnDL: + type: integer + arfcnUL: + type: integer + arfcnSUL: + type: integer + bSChannelBwDL: + type: integer + bSChannelBwUL: + type: integer + bSChannelBwSUL: + type: integer + ssbFrequency: + type: integer + minimum: 0 + maximum: 3279165 + ssbPeriodicity: + $ref: '#/components/schemas/SsbPeriodicity' + ssbSubCarrierSpacing: + $ref: '#/components/schemas/SsbSubCarrierSpacing' + ssbOffset: + type: integer + minimum: 0 + maximum: 159 + ssbDuration: + $ref: '#/components/schemas/SsbDuration' + nrSectorCarrierRef: + type: array + items: + $ref: 'genericNrm.yaml#/components/schemas/Dn' + bwpRef: + type: array + items: + $ref: 'genericNrm.yaml#/components/schemas/Dn' + rimRSMonitoringStartTime: + type: string + rimRSMonitoringStopTime: + type: string + rimRSMonitoringWindowDuration: + type: integer + rimRSMonitoringWindowStartingOffset: + type: integer + rimRSMonitoringWindowPeriodicity: + type: integer + rimRSMonitoringOccasionInterval: + type: integer + rimRSMonitoringOccasionStartingOffset: + type: integer + nRFrequencyRef: + $ref: 'genericNrm.yaml#/components/schemas/Dn' + victimSetRef: + $ref: 'genericNrm.yaml#/components/schemas/Dn' + aggressorSetRef: + $ref: 'genericNrm.yaml#/components/schemas/Dn' + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' + - type: object + properties: + RRMPolicyRatio: + $ref: '#/components/schemas/RRMPolicyRatio-Multiple' + CPCIConfigurationFunction: + $ref: '#/components/schemas/CPCIConfigurationFunction-Single' + DRACHOptimizationFunction: + $ref: '#/components/schemas/DRACHOptimizationFunction-Single' + + NRFrequency-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + type: object + properties: + absoluteFrequencySSB: + type: integer + minimum: 0 + maximum: 3279165 + ssbSubCarrierSpacing: + $ref: '#/components/schemas/SsbSubCarrierSpacing' + multiFrequencyBandListNR: + type: integer + minimum: 1 + maximum: 256 + EUtranFrequency-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + type: object + properties: + earfcnDL: + type: integer + minimum: 0 + maximum: 262143 + multiBandInfoListEutra: + type: integer + minimum: 1 + maximum: 256 + + NrSectorCarrier-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' + - type: object + properties: + txDirection: + $ref: '#/components/schemas/TxDirection' + configuredMaxTxPower: + type: integer + arfcnDL: + type: integer + arfcnUL: + type: integer + bSChannelBwDL: + type: integer + bSChannelBwUL: + type: integer + sectorEquipmentFunctionRef: + $ref: 'genericNrm.yaml#/components/schemas/Dn' + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' + - type: object + properties: + CommonBeamformingFunction: + $ref: '#/components/schemas/CommonBeamformingFunction-Single' + Bwp-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' + - type: object + properties: + bwpContext: + $ref: '#/components/schemas/BwpContext' + isInitialBwp: + $ref: '#/components/schemas/IsInitialBwp' + subCarrierSpacing: + type: integer + cyclicPrefix: + $ref: '#/components/schemas/CyclicPrefix' + startRB: + type: integer + numberOfRBs: + type: integer + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' + CommonBeamformingFunction-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + allOf: + - type: object + properties: + coverageShape: + $ref: '#/components/schemas/CoverageShape' + digitalAzimuth: + $ref: '#/components/schemas/DigitalAzimuth' + digitalTilt: + $ref: '#/components/schemas/DigitalTilt' + - type: object + properties: + Beam: + $ref: '#/components/schemas/Beam-Multiple' + Beam-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + allOf: + - type: object + properties: + beamIndex: + type: integer + beamType: + type: string + enum: + - SSB-BEAM + beamAzimuth: + type: integer + minimum: -1800 + maximum: 1800 + beamTilt: + type: integer + minimum: -900 + maximum: 900 + beamHorizWidth: + type: integer + minimum: 0 + maximum: 3599 + beamVertWidth: + type: integer + minimum: 0 + maximum: 1800 + RRMPolicyRatio-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + allOf: + - $ref: '#/components/schemas/RrmPolicy_-Attr' + - type: object + properties: + rRMPolicyMaxRatio: + type: integer + rRMPolicyMinRatio: + type: integer + rRMPolicyDedicatedRatio: + type: integer + + NRCellRelation-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + type: object + properties: + nRTCI: + type: integer + cellIndividualOffset: + $ref: '#/components/schemas/CellIndividualOffset' + adjacentNRCellRef: + $ref: 'genericNrm.yaml#/components/schemas/Dn' + nRFrequencyRef: + $ref: 'genericNrm.yaml#/components/schemas/Dn' + isRemoveAllowed: + type: boolean + isHOAllowed: + type: boolean + isESCoveredBy: + $ref: '#/components/schemas/IsESCoveredBy' + isENDCAllowed: + type: boolean + isMLBAllowed: + type: boolean + EUtranCellRelation-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' + - type: object + properties: + adjacentEUtranCellRef: + $ref: 'genericNrm.yaml#/components/schemas/Dn' + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' + NRFreqRelation-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + type: object + properties: + offsetMO: + $ref: '#/components/schemas/QOffsetRangeList' + blackListEntry: + type: array + items: + type: integer + minimum: 0 + maximum: 1007 + blackListEntryIdleMode: + type: integer + cellReselectionPriority: + type: integer + cellReselectionSubPriority: + type: number + minimum: 0.2 + maximum: 0.8 + multipleOf: 0.2 + pMax: + type: integer + minimum: -30 + maximum: 33 + qOffsetFreq: + $ref: '#/components/schemas/QOffsetFreq' + qQualMin: + type: number + qRxLevMin: + type: integer + minimum: -140 + maximum: -44 + threshXHighP: + type: integer + minimum: 0 + maximum: 62 + threshXHighQ: + type: integer + minimum: 0 + maximum: 31 + threshXLowP: + type: integer + minimum: 0 + maximum: 62 + threshXLowQ: + type: integer + minimum: 0 + maximum: 31 + tReselectionNr: + type: integer + minimum: 0 + maximum: 7 + tReselectionNRSfHigh: + $ref: '#/components/schemas/TReselectionNRSf' + tReselectionNRSfMedium: + $ref: '#/components/schemas/TReselectionNRSf' + nRFrequencyRef: + $ref: 'genericNrm.yaml#/components/schemas/Dn' + EUtranFreqRelation-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + type: object + properties: + cellIndividualOffset: + $ref: '#/components/schemas/CellIndividualOffset' + blackListEntry: + type: array + items: + type: integer + minimum: 0 + maximum: 1007 + blackListEntryIdleMode: + type: integer + cellReselectionPriority: + type: integer + cellReselectionSubPriority: + type: number + minimum: 0.2 + maximum: 0.8 + multipleOf: 0.2 + pMax: + type: integer + minimum: -30 + maximum: 33 + qOffsetFreq: + $ref: '#/components/schemas/QOffsetFreq' + qQualMin: + type: number + qRxLevMin: + type: integer + minimum: -140 + maximum: -44 + threshXHighP: + type: integer + minimum: 0 + maximum: 62 + threshXHighQ: + type: integer + minimum: 0 + maximum: 31 + threshXLowP: + type: integer + minimum: 0 + maximum: 62 + threshXLowQ: + type: integer + minimum: 0 + maximum: 31 + tReselectionEutran: + type: integer + minimum: 0 + maximum: 7 + tReselectionNRSfHigh: + $ref: '#/components/schemas/TReselectionNRSf' + tReselectionNRSfMedium: + $ref: '#/components/schemas/TReselectionNRSf' + eUTranFrequencyRef: + $ref: 'genericNrm.yaml#/components/schemas/Dn' + DANRManagementFunction-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + type: object + properties: + intrasystemANRManagementSwitch: + type: boolean + intersystemANRManagementSwitch: + type: boolean + + DESManagementFunction-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + type: object + properties: + desSwitch: + type: boolean + intraRatEsActivationOriginalCellLoadParameters: + $ref: "#/components/schemas/IntraRatEsActivationOriginalCellLoadParameters" + intraRatEsActivationCandidateCellsLoadParameters: + $ref: "#/components/schemas/IntraRatEsActivationCandidateCellsLoadParameters" + intraRatEsDeactivationCandidateCellsLoadParameters: + $ref: "#/components/schemas/IntraRatEsDeactivationCandidateCellsLoadParameters" + esNotAllowedTimePeriod: + $ref: "#/components/schemas/EsNotAllowedTimePeriod" + interRatEsActivationOriginalCellParameters: + $ref: "#/components/schemas/IntraRatEsActivationOriginalCellLoadParameters" + interRatEsActivationCandidateCellParameters: + $ref: "#/components/schemas/IntraRatEsActivationOriginalCellLoadParameters" + interRatEsDeactivationCandidateCellParameters: + $ref: "#/components/schemas/IntraRatEsActivationOriginalCellLoadParameters" + isProbingCapable: + type: string + enum: + - yes + - no + energySavingState: + type: string + enum: + - isNotEnergySaving + - isEnergySaving + + DRACHOptimizationFunction-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + type: object + properties: + drachOptimizationControl: + type: boolean + ueAccProbilityDist: + $ref: "#/components/schemas/UeAccProbilityDist" + ueAccDelayProbilityDist: + $ref: "#/components/schemas/UeAccDelayProbilityDist" + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' + + DMROFunction-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + type: object + properties: + dmroControl: + type: boolean + maximumDeviationHoTrigger: + $ref: '#/components/schemas/MaximumDeviationHoTrigger' + minimumTimeBetweenHoTriggerChange: + $ref: '#/components/schemas/MinimumTimeBetweenHoTriggerChange' + tstoreUEcntxt: + $ref: '#/components/schemas/TstoreUEcntxt' + + DPCIConfigurationFunction-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + type: object + properties: + dPciConfigurationControl: + type: boolean + nRPciList: + $ref: "#/components/schemas/NRPciList" + + CPCIConfigurationFunction-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + type: object + properties: + cPciConfigurationControl: + type: boolean + cSonPciList: + $ref: "#/components/schemas/CSonPciList" + + CESManagementFunction-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + type: object + properties: + cesSwitch: + type: boolean + intraRatEsActivationOriginalCellLoadParameters: + $ref: "#/components/schemas/IntraRatEsActivationOriginalCellLoadParameters" + intraRatEsActivationCandidateCellsLoadParameters: + $ref: "#/components/schemas/IntraRatEsActivationCandidateCellsLoadParameters" + intraRatEsDeactivationCandidateCellsLoadParameters: + $ref: "#/components/schemas/IntraRatEsDeactivationCandidateCellsLoadParameters" + esNotAllowedTimePeriod: + $ref: "#/components/schemas/EsNotAllowedTimePeriod" + interRatEsActivationOriginalCellParameters: + $ref: "#/components/schemas/IntraRatEsActivationOriginalCellLoadParameters" + interRatEsActivationCandidateCellParameters: + $ref: "#/components/schemas/IntraRatEsActivationOriginalCellLoadParameters" + interRatEsDeactivationCandidateCellParameters: + $ref: "#/components/schemas/IntraRatEsActivationOriginalCellLoadParameters" + energySavingControl: + type: string + enum: + - toBeEnergySaving + - toBeNotEnergySaving + energySavingState: + type: string + enum: + - isNotEnergySaving + - isEnergySaving + + RimRSGlobal-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + type: object + properties: + frequencyDomainPara: + $ref: '#/components/schemas/FrequencyDomainPara' + sequenceDomainPara: + $ref: '#/components/schemas/SequenceDomainPara' + timeDomainPara: + $ref: '#/components/schemas/TimeDomainPara' + RimRSSet: + $ref: '#/components/schemas/RimRSSet-Multiple' + + RimRSSet-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + type: object + properties: + setId: + $ref: '#/components/schemas/RSSetId' + setType: + $ref: '#/components/schemas/RSSetType' + nRCellDURefs: + $ref: 'genericNrm.yaml#/components/schemas/DnList' + + ExternalGnbDuFunction-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' + - type: object + properties: + gnbId: + $ref: '#/components/schemas/GnbId' + gnbIdLength: + $ref: '#/components/schemas/GnbIdLength' + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' + - type: object + properties: + EP_F1C: + $ref: '#/components/schemas/EP_F1C-Multiple' + EP_F1U: + $ref: '#/components/schemas/EP_F1U-Multiple' + ExternalGnbCuUpFunction-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' + - type: object + properties: + gnbId: + $ref: '#/components/schemas/GnbId' + gnbIdLength: + $ref: '#/components/schemas/GnbIdLength' + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' + - type: object + properties: + EP_E1: + $ref: '#/components/schemas/EP_E1-Multiple' + EP_F1U: + $ref: '#/components/schemas/EP_F1U-Multiple' + EP_XnU: + $ref: '#/components/schemas/EP_XnU-Multiple' + ExternalGnbCuCpFunction-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + allOf: + - $ref: >- + genericNrm.yaml#/components/schemas/ManagedFunction-Attr + - type: object + properties: + gnbId: + $ref: '#/components/schemas/GnbId' + gnbIdLength: + $ref: '#/components/schemas/GnbIdLength' + plmnId: + $ref: '#/components/schemas/PlmnId' + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' + - type: object + properties: + ExternalNrCellCu: + $ref: '#/components/schemas/ExternalNrCellCu-Multiple' + EP_XnC: + $ref: '#/components/schemas/EP_XnC-Multiple' + EP_E1: + $ref: '#/components/schemas/EP_E1-Multiple' + EP_F1C: + $ref: '#/components/schemas/EP_F1C-Multiple' + ExternalNrCellCu-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' + - type: object + properties: + cellLocalId: + type: integer + nrPci: + $ref: '#/components/schemas/NrPci' + plmnIdList: + $ref: '#/components/schemas/PlmnIdList' + nRFrequencyRef: + $ref: 'genericNrm.yaml#/components/schemas/Dn' + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' + ExternalENBFunction-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' + - type: object + properties: + eNBId: + type: integer + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' + - type: object + properties: + ExternalEUTranCell: + $ref: '#/components/schemas/ExternalEUTranCell-Multiple' + ExternalEUTranCell-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' + - type: object + properties: + EUtranFrequencyRef: + $ref: 'genericNrm.yaml#/components/schemas/Dn' + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' + + EP_XnC-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' + - type: object + properties: + localAddress: + $ref: '#/components/schemas/LocalAddress' + remoteAddress: + $ref: '#/components/schemas/RemoteAddress' + EP_E1-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' + - type: object + properties: + localAddress: + $ref: '#/components/schemas/LocalAddress' + remoteAddress: + $ref: '#/components/schemas/RemoteAddress' + EP_F1C-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' + - type: object + properties: + localAddress: + $ref: '#/components/schemas/LocalAddress' + remoteAddress: + $ref: '#/components/schemas/RemoteAddress' + EP_NgC-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' + - type: object + properties: + localAddress: + $ref: '#/components/schemas/LocalAddress' + remoteAddress: + $ref: '#/components/schemas/RemoteAddress' + EP_X2C-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' + - type: object + properties: + localAddress: + $ref: '#/components/schemas/LocalAddress' + remoteAddress: + $ref: '#/components/schemas/RemoteAddress' + EP_XnU-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' + - type: object + properties: + localAddress: + $ref: '#/components/schemas/LocalAddress' + remoteAddress: + $ref: '#/components/schemas/RemoteAddress' + EP_F1U-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' + - type: object + properties: + localAddress: + $ref: '#/components/schemas/LocalAddress' + remoteAddress: + $ref: '#/components/schemas/RemoteAddress' + epTransportRefs: + $ref: 'genericNrm.yaml#/components/schemas/DnList' + + EP_NgU-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' + - type: object + properties: + localAddress: + $ref: '#/components/schemas/LocalAddress' + remoteAddress: + $ref: '#/components/schemas/RemoteAddress' + epTransportRefs: + $ref: 'genericNrm.yaml#/components/schemas/DnList' + + EP_X2U-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' + - type: object + properties: + localAddress: + $ref: '#/components/schemas/LocalAddress' + remoteAddress: + $ref: '#/components/schemas/RemoteAddress' + EP_S1U-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' + - type: object + properties: + localAddress: + $ref: '#/components/schemas/LocalAddress' + remoteAddress: + $ref: '#/components/schemas/RemoteAddress' + +#-------- Definition of JSON arrays for name-contained IOCs ---------------------- + + SubNetwork-Multiple: + type: array + items: + $ref: '#/components/schemas/SubNetwork-Single' + ManagedElement-Multiple: + type: array + items: + $ref: '#/components/schemas/ManagedElement-Single' + GnbDuFunction-Multiple: + type: array + items: + $ref: '#/components/schemas/GnbDuFunction-Single' + GnbCuUpFunction-Multiple: + type: array + items: + $ref: '#/components/schemas/GnbCuUpFunction-Single' + GnbCuCpFunction-Multiple: + type: array + items: + $ref: '#/components/schemas/GnbCuCpFunction-Single' + + NrCellDu-Multiple: + type: array + items: + $ref: '#/components/schemas/NrCellDu-Single' + NrCellCu-Multiple: + type: array + items: + $ref: '#/components/schemas/NrCellCu-Single' + + NRFrequency-Multiple: + type: array + minItems: 1 + items: + $ref: '#/components/schemas/NRFrequency-Single' + EUtranFrequency-Multiple: + type: array + minItems: 1 + items: + $ref: '#/components/schemas/EUtranFrequency-Single' + + NrSectorCarrier-Multiple: + type: array + items: + $ref: '#/components/schemas/NrSectorCarrier-Single' + Bwp-Multiple: + type: array + items: + $ref: '#/components/schemas/Bwp-Single' + Beam-Multiple: + type: array + items: + $ref: '#/components/schemas/Beam-Single' + RRMPolicyRatio-Multiple: + type: array + items: + $ref: '#/components/schemas/RRMPolicyRatio-Single' + + NRCellRelation-Multiple: + type: array + items: + $ref: '#/components/schemas/NRCellRelation-Single' + EUtranCellRelation-Multiple: + type: array + items: + $ref: '#/components/schemas/EUtranCellRelation-Single' + NRFreqRelation-Multiple: + type: array + items: + $ref: '#/components/schemas/NRFreqRelation-Single' + EUtranFreqRelation-Multiple: + type: array + items: + $ref: '#/components/schemas/EUtranFreqRelation-Single' + + RimRSSet-Multiple: + type: array + items: + $ref: '#/components/schemas/RimRSSet-Single' + + ExternalGnbDuFunction-Multiple: + type: array + items: + $ref: '#/components/schemas/ExternalGnbDuFunction-Single' + ExternalGnbCuUpFunction-Multiple: + type: array + items: + $ref: '#/components/schemas/ExternalGnbCuUpFunction-Single' + ExternalGnbCuCpFunction-Multiple: + type: array + items: + $ref: '#/components/schemas/ExternalGnbCuCpFunction-Single' + ExternalNrCellCu-Multiple: + type: array + items: + $ref: '#/components/schemas/ExternalNrCellCu-Single' + + ExternalENBFunction-Multiple: + type: array + items: + $ref: '#/components/schemas/ExternalENBFunction-Single' + ExternalEUTranCell-Multiple: + type: array + items: + $ref: '#/components/schemas/ExternalEUTranCell-Single' + + EP_E1-Multiple: + type: array + items: + $ref: '#/components/schemas/EP_E1-Single' + EP_XnC-Multiple: + type: array + items: + $ref: '#/components/schemas/EP_XnC-Single' + EP_F1C-Multiple: + type: array + items: + $ref: '#/components/schemas/EP_F1C-Single' + EP_NgC-Multiple: + type: array + items: + $ref: '#/components/schemas/EP_NgC-Single' + EP_X2C-Multiple: + type: array + items: + $ref: '#/components/schemas/EP_X2C-Single' + EP_XnU-Multiple: + type: array + items: + $ref: '#/components/schemas/EP_XnU-Single' + EP_F1U-Multiple: + type: array + items: + $ref: '#/components/schemas/EP_F1U-Single' + EP_NgU-Multiple: + type: array + items: + $ref: '#/components/schemas/EP_NgU-Single' + EP_X2U-Multiple: + type: array + items: + $ref: '#/components/schemas/EP_X2U-Single' + EP_S1U-Multiple: + type: array + items: + $ref: '#/components/schemas/EP_S1U-Single' + +#-------- Definitions in TS 28.541 for TS 28.532 --------------------------------- + + resources-nrNrm: + oneOf: + - $ref: '#/components/schemas/SubNetwork-Single' + - $ref: '#/components/schemas/ManagedElement-Single' + + - $ref: '#/components/schemas/GnbDuFunction-Single' + - $ref: '#/components/schemas/GnbCuUpFunction-Single' + - $ref: '#/components/schemas/GnbCuCpFunction-Single' + + - $ref: '#/components/schemas/NrCellCu-Single' + - $ref: '#/components/schemas/NrCellDu-Single' + + - $ref: '#/components/schemas/NRFrequency-Single' + - $ref: '#/components/schemas/EUtranFrequency-Single' + + - $ref: '#/components/schemas/NrSectorCarrier-Single' + - $ref: '#/components/schemas/Bwp-Single' + - $ref: '#/components/schemas/CommonBeamformingFunction-Single' + - $ref: '#/components/schemas/Beam-Single' + - $ref: '#/components/schemas/RRMPolicyRatio-Single' + + - $ref: '#/components/schemas/NRCellRelation-Single' + - $ref: '#/components/schemas/EUtranCellRelation-Single' + - $ref: '#/components/schemas/NRFreqRelation-Single' + - $ref: '#/components/schemas/EUtranFreqRelation-Single' + + - $ref: '#/components/schemas/DANRManagementFunction-Single' + - $ref: '#/components/schemas/DESManagementFunction-Single' + - $ref: '#/components/schemas/DRACHOptimizationFunction-Single' + - $ref: '#/components/schemas/DMROFunction-Single' + - $ref: '#/components/schemas/DPCIConfigurationFunction-Single' + - $ref: '#/components/schemas/CPCIConfigurationFunction-Single' + - $ref: '#/components/schemas/CESManagementFunction-Single' + + - $ref: '#/components/schemas/RimRSGlobal-Single' + - $ref: '#/components/schemas/RimRSSet-Single' + + - $ref: '#/components/schemas/ExternalGnbDuFunction-Single' + - $ref: '#/components/schemas/ExternalGnbCuUpFunction-Single' + - $ref: '#/components/schemas/ExternalGnbCuCpFunction-Single' + - $ref: '#/components/schemas/ExternalNrCellCu-Single' + - $ref: '#/components/schemas/ExternalENBFunction-Single' + - $ref: '#/components/schemas/ExternalEUTranCell-Single' + + - $ref: '#/components/schemas/EP_XnC-Single' + - $ref: '#/components/schemas/EP_E1-Single' + - $ref: '#/components/schemas/EP_F1C-Single' + - $ref: '#/components/schemas/EP_NgC-Single' + - $ref: '#/components/schemas/EP_X2C-Single' + - $ref: '#/components/schemas/EP_XnU-Single' + - $ref: '#/components/schemas/EP_F1U-Single' + - $ref: '#/components/schemas/EP_NgU-Single' + - $ref: '#/components/schemas/EP_X2U-Single' + - $ref: '#/components/schemas/EP_S1U-Single' diff --git a/OpenAPI/provMnS.yaml b/OpenAPI/provMnS.yaml new file mode 100644 index 000000000..b2f84a4d2 --- /dev/null +++ b/OpenAPI/provMnS.yaml @@ -0,0 +1,579 @@ +openapi: 3.0.1 +info: + title: Provisioning MnS + version: 16.4.0 + description: >- + OAS 3.0.1 definition of the Provisioning MnS + © 2020, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). + All rights reserved. +externalDocs: + description: 3GPP TS 28.532 V16.4.0; Generic management services + url: http://www.3gpp.org/ftp/Specs/archive/28_series/28.532/ +servers: + - url: 'http://{URI-DN-prefix}/{root}/ProvMnS/v1640/{LDN-first-part}' + variables: + URI-DN-prefix: + description: See subclause 4.4 of TS 32.158 + default: example.com + root: + description: See subclause 4.4 of TS 32.158 + default: 3GPPManagement + LDN-first-part: + description: See subclause 4.4 of TS 32.158 + default: '' +paths: + '/{className}={id}': + parameters: + - name: className + in: path + required: true + schema: + $ref: '#/components/schemas/className-PathType' + - name: id + in: path + required: true + schema: + $ref: '#/components/schemas/id-PathType' + put: + summary: Replaces a complete single resource or creates it if it does not exist + description: >- + With HTTP PUT a complete resource is replaced or created if it does not + exist. The target resource is identified by the target URI. + requestBody: + required: true + content: + application/json: + schema: + $ref: '#/components/schemas/resourcePut-RequestType' + responses: + '200': + description: >- + Success case ("200 OK"). + This status code shall be returned when the resource is replaced, and + when the replaced resource representation is not identical to the resource + representation in the request. + This status code may be retourned when the resource is updated and when the + updated resource representation is identical to the resource representation + in the request. + The representation of the updated resource is returned in the response + message body. + content: + application/json: + schema: + $ref: '#/components/schemas/resourceUpdate-ResponseType' + '201': + description: >- + Success case ("201 Created"). + This status code shall be returned when the resource is created. + The representation of the created resource is returned in the response + message body. + content: + application/json: + schema: + $ref: '#/components/schemas/resourceCreation-ResponseType' + '204': + description: >- + Success case ("204 No Content"). + This status code may be returned only when the replaced resource + representation is identical to the representation in the request. + The response has no message body. + default: + description: Error case. + content: + application/json: + schema: + $ref: '#/components/schemas/error-ResponseType' + callbacks: + notifyMOICreation: + '{request.body#/notificationRecipientAddress}': + post: + requestBody: + required: true + content: + application/json: + schema: + $ref: '#/components/schemas/notifyMOICreation-NotifType' + responses: + '204': + description: >- + Success case ("204 No Content"). + The notification is successfully delivered. The response + has no message body. + default: + description: Error case. + content: + application/json: + schema: + $ref: '#/components/schemas/error-ResponseType' + notifyMOIDeletion: + '{request.body#/notificationRecipientAddress}': + post: + requestBody: + required: true + content: + application/json: + schema: + $ref: '#/components/schemas/notifyMOIDeletion-NotifType' + responses: + '204': + description: >- + Success case ("204 No Content"). + The notification is successfully delivered. The response + has no message body. + default: + description: Error case. + content: + application/json: + schema: + $ref: '#/components/schemas/error-ResponseType' + notifyMOIAttributeValueChange: + '{request.body#/notificationRecipientAddress}': + post: + requestBody: + required: true + content: + application/json: + schema: + $ref: '#/components/schemas/notifyMOIAttributeValueChange-NotifType' + responses: + '204': + description: >- + Success case ("204 No Content"). + The notification is successfully delivered. The response + has no message body. + default: + description: Error case. + content: + application/json: + schema: + $ref: '#/components/schemas/error-ResponseType' + notifyMOIChanges: + '{request.body#/notificationRecipientAddress}': + post: + requestBody: + required: true + content: + application/json: + schema: + $ref: '#/components/schemas/notifyMOIChanges-NotifType' + responses: + '204': + description: >- + Success case ("204 No Content"). + The notification is successfully delivered. The response + has no message body. + default: + description: Error case. + content: + application/json: + schema: + $ref: '#/components/schemas/error-ResponseType' + get: + summary: Reads one or multiple resources + description: >- + With HTTP GET resources are read. The resources to be retrieved are + identified with the target URI. The attributes and fields parameter + of the query components allow to select the resource properties to be returned. + parameters: + - name: scope + in: query + description: >- + This parameter extends the set of targeted resources beyond the base + resource identified with the path component of the URI. No scoping + mechanism is specified in the present document. + required: false + schema: + $ref: '#/components/schemas/scope-QueryType' + style: form + explode: true + - name: filter + in: query + description: >- + This parameter reduces the targeted set of resources by applying a + filter to the scoped set of resource representations. Only resource + representations for which the filter construct evaluates to "true" + are targeted. No filter language is specified in the present + document. + required: false + schema: + $ref: '#/components/schemas/filter-QueryType' + - name: attributes + in: query + description: >- + This parameter specifies the attributes of the scoped resources that + are returned. + required: true + schema: + $ref: '#/components/schemas/attributes-QueryType' + style: form + explode: false + - name: fields + in: query + description: >- + This parameter specifies the attribute field of the scoped resources + that are returned. + required: false + schema: + $ref: '#/components/schemas/fields-QueryType' + style: form + explode: false + responses: + '200': + description: >- + Success case ("200 OK"). + The resources identified in the request for retrieval are returned + in the response message body. In case the attributes or fields query + parameters are used, only the selected attributes or sub-attributes are + returned. The response message body is constructed according to the + hierarchical response construction method (TS 32.158 [15]). + content: + application/json: + schema: + $ref: '#/components/schemas/resourceRetrieval-ResponseType' + default: + description: Error case. + content: + application/json: + schema: + $ref: '#/components/schemas/error-ResponseType' + patch: + summary: Patches one or multiple resources + description: >- + With HTTP PATCH resources are created, updated or deleted. The resources + to be modified are identified with the target URI (base resource) and + the patch document included in the request message body. + requestBody: + description: >- + The request body describes changes to be made to the target resources. + The following patch media types are available + - "application/merge-patch+json" (RFC 7396) + - "application/3gpp-merge-patch+json" (TS 32.158) + - "application/json-patch+json" (RFC 6902) + - "application/3gpp-json-patch+json" (TS 32.158) + required: true + content: + application/merge-patch+json: + schema: + $ref: '#/components/schemas/jsonMergePatch-RequestType' + application/3gpp-merge-patch+json: + schema: + $ref: '#/components/schemas/3gppJsonMergePatch-RequestType' + application/json-patch+json: + schema: + $ref: '#/components/schemas/jsonPatch-RequestType' + application/3gpp-json-patch+json: + schema: + $ref: '#/components/schemas/3gppJsonPatch-RequestType' + responses: + '200': + description: >- + Success case ("200 OK"). + This status code is returned when the updated the resource representations + shall be returned for some reason. + The resource representations are returned in the response message body. The + response message body is constructed according to the hierarchical response + construction method (TS 32.158 [15]) + content: + application/json: + schema: + $ref: '#/components/schemas/resourceUpdate-ResponseType' + '204': + description: >- + Success case ("204 No Content"). + This status code is returned when there is no need to return the updated + resource representations. + The response message body is empty. + default: + description: Error case. + content: + application/json: + schema: + $ref: '#/components/schemas/error-ResponseType' + delete: + summary: Deletes one or multiple resources + description: >- + With HTTP DELETE resources are deleted. The resources to be deleted are + identified with the target URI. + parameters: + - name: scope + in: query + description: >- + This parameter extends the set of targeted resources beyond the base + resource identified with the path component of the URI. No scoping + mechanism is specified in the present document. + required: false + schema: + $ref: '#/components/schemas/scope-QueryType' + - name: filter + in: query + description: >- + This parameter reduces the targeted set of resources by applying a + filter to the scoped set of resource representations. Only resources + representations for which the filter construct evaluates to "true" + are returned. No filter language is specified in the present + document. + required: false + schema: + $ref: '#/components/schemas/filter-QueryType' + responses: + '200': + description: >- + Success case ("200 OK"). + This status code shall be returned, when query parameters are present in + the request and one or multiple resources are deleted. + The URIs of the deleted resources are returned in the response message body. + '204': + description: >- + Success case ("204 No Content"). + This status code shall be returned, when no query parameters are present in + the request and only one resource is deleted. + The message body is empty. + content: + application/json: + schema: + $ref: '#/components/schemas/resourceDeletion-ResponseType' + default: + description: Error case. + content: + application/json: + schema: + $ref: '#/components/schemas/error-ResponseType' +components: + schemas: + dateTime-Type: + type: string + format: date-time + long-Type: + type: integer + format: int64 + uri-Type: + type: string + correlatedNotification-Type: + type: object + properties: + source: + $ref: '#/components/schemas/uri-Type' + notificationIds: + type: array + items: + $ref: '#/components/schemas/notificationId-Type' + notificationId-Type: + $ref: '#/components/schemas/long-Type' + notificationType-Type: + type: string + enum: + - notifyMOICreation + - notifyMOIDeletion + - notifyMOIAttributeValueChange + systemDN-Type: + type: string + additionalText-Type: + type: string + sourceIndicator-Type: + type: string + enum: + - resourceOperation + - mangementOperation + - sONOperation + - unknown + header-Type: + type: object + properties: + href: + $ref: '#/components/schemas/uri-Type' + notificationId: + $ref: '#/components/schemas/notificationId-Type' + notificationType: + $ref: '#/components/schemas/notificationType-Type' + eventTime: + $ref: '#/components/schemas/dateTime-Type' + systemDN: + $ref: '#/components/schemas/systemDN-Type' + required: + - href + - notificationId + - notificationType + - eventTime + - systemDN + scopeType-Type: + type: string + enum: + - BASE_ONLY + - BASE_NTH_LEVEL + - BASE_SUBTREE + - BASE_ALL + scopeLevel-Type: + type: integer + className-PathType: + type: string + id-PathType: + type: string + attributes-QueryType: + type: array + items: + type: string + fields-QueryType: + type: array + items: + type: string + filter-QueryType: + type: string + scope-QueryType: + type: object + properties: + scopeType: + $ref: '#/components/schemas/scopeType-Type' + scopeLevel: + $ref: '#/components/schemas/scopeLevel-Type' + + resourcePut-RequestType: + $ref: '#/components/schemas/resourceRepresentation-Type' + jsonMergePatch-RequestType: + $ref: '#/components/schemas/resourceRepresentation-Type' + 3gppJsonMergePatch-RequestType: + $ref: '#/components/schemas/resourceRepresentation-Type' + jsonPatch-RequestType: + type: array + items: + type: object + 3gppJsonPatch-RequestType: + type: array + items: + type: object + + error-ResponseType: + type: object + properties: + error: + type: object + properties: + errorInfo: + type: string + resourceRetrieval-ResponseType: + $ref: '#/components/schemas/resourceRepresentation-Type' + resourceCreation-ResponseType: + $ref: '#/components/schemas/resourceRepresentation-Type' + resourceUpdate-ResponseType: + $ref: '#/components/schemas/resourceRepresentation-Type' + resourceDeletion-ResponseType: + type: array + items: + $ref: '#/components/schemas/uri-Type' + + resourceRepresentation-Type: + oneOf: + - type: object + properties: + id: + type: string + attributes: + type: object + additionalProperties: + type: array + items: + type: object + - anyOf: + - $ref: 'genericNrm.yaml#/components/schemas/resources-genericNrm' + - $ref: 'nrNrm.yaml#/components/schemas/resources-nrNrm' + - $ref: '5gcNrm.yaml#/components/schemas/resources-5gcNrm' + - $ref: 'sliceNrm.yaml#/components/schemas/resources-sliceNrm' + + mOIChange-Type: + type: object + properties: + notificationId: + $ref: '#/components/schemas/notificationId-Type' + correlatedNotifications: + type: array + items: + $ref: '#/components/schemas/correlatedNotification-Type' + additionalText: + $ref: '#/components/schemas/additionalText-Type' + sourceIndicator: + $ref: '#/components/schemas/sourceIndicator-Type' + path: + $ref: '#/components/schemas/uri-Type' + operation: + type: string + enum: + - CREATE + - DELETE + - REPLACE + value: + oneOf: + - type: object + additionalProperties: + nullable: true + - type: array + items: + type: object + minItems: 1 + maxItems: 2 + + notifyMOICreation-NotifType: + allOf: + - $ref: '#/components/schemas/header-Type' + - type: object + properties: + correlatedNotifications: + type: array + items: + $ref: '#/components/schemas/correlatedNotification-Type' + additionalText: + $ref: '#/components/schemas/additionalText-Type' + sourceIndicator: + $ref: '#/components/schemas/sourceIndicator-Type' + attributeList: + type: object + additionalProperties: + nullable: true + notifyMOIDeletion-NotifType: + allOf: + - $ref: '#/components/schemas/header-Type' + - type: object + properties: + correlatedNotifications: + type: array + items: + $ref: '#/components/schemas/correlatedNotification-Type' + additionalText: + $ref: '#/components/schemas/additionalText-Type' + sourceIndicator: + $ref: '#/components/schemas/sourceIndicator-Type' + attributeList: + type: object + additionalProperties: true + notifyMOIAttributeValueChange-NotifType: + allOf: + - $ref: '#/components/schemas/header-Type' + - type: object + properties: + correlatedNotifications: + type: array + items: + $ref: '#/components/schemas/correlatedNotification-Type' + additionalText: + $ref: '#/components/schemas/additionalText-Type' + sourceIndicator: + $ref: '#/components/schemas/sourceIndicator-Type' + attributeValueChange: + type: object + additionalProperties: + type: array + minItems: 1 + maxItems: 2 + items: + nullable: true + required: + - attributeValueChange + notifyMOIChanges-NotifType: + allOf: + - $ref: '#/components/schemas/header-Type' + - type: object + properties: + mOIChanges: + type: array + items: + $ref: '#/components/schemas/mOIChange-Type' + required: + - mOIChanges diff --git a/OpenAPI/sliceNrm.yaml b/OpenAPI/sliceNrm.yaml new file mode 100644 index 000000000..bf6b4d71c --- /dev/null +++ b/OpenAPI/sliceNrm.yaml @@ -0,0 +1,632 @@ +openapi: 3.0.1 +info: + title: Slice NRM + version: 17.4.0 + description: >- + OAS 3.0.1 specification of the Slice NRM + @ 2020, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). + All rights reserved. +externalDocs: + description: 3GPP TS 28.541; 5G NRM, Slice NRM + url: http://www.3gpp.org/ftp/Specs/archive/28_series/28.541/ +paths: {} +components: + schemas: + +#------------ Type definitions --------------------------------------------------- + + Float: + type: number + format: float + MobilityLevel: + type: string + enum: + - STATIONARY + - NOMADIC + - RESTRICTED MOBILITY + - FULLY MOBILITY + SynAvailability: + type: string + enum: + - NOT SUPPORTED + - BETWEEN BS AND UE + - BETWEEN BS AND UE & UE AND UE + PositioningAvailability: + type: array + items: + type: string + enum: + - CIDE-CID + - OTDOA + - RF FINGERPRINTING + - AECID + - HYBRID POSITIONING + - NET-RTK + Predictionfrequency: + type: string + enum: + - PERSEC + - PERMIN + - PERHOUR + SharingLevel: + type: string + enum: + - SHARED + - NON-SHARED + + NetworkSliceSharingIndicator: + type: string + enum: + - SHARED + - NON-SHARED + + ServiceType: + type: string + enum: + - eMBB + - RLLC + - MIoT + - V2X + SliceSimultaneousUse: + type: string + enum: + - ZERO + - ONE + - TWO + - THREE + - FOUR + Category: + type: string + enum: + - CHARACTER + - SCALABILITY + Tagging: + type: array + items: + type: string + enum: + - PERFORMANCE + - FUNCTION + - OPERATION + Exposure: + type: string + enum: + - API + - KPI + ServAttrCom: + type: object + properties: + category: + $ref: '#/components/schemas/Category' + tagging: + $ref: '#/components/schemas/Tagging' + exposure: + $ref: '#/components/schemas/Exposure' + Support: + type: string + enum: + - NOT SUPPORTED + - SUPPORTED + DelayTolerance: + type: object + properties: + servAttrCom: + $ref: '#/components/schemas/ServAttrCom' + support: + $ref: '#/components/schemas/Support' + DeterministicComm: + type: object + properties: + servAttrCom: + $ref: '#/components/schemas/ServAttrCom' + availability: + $ref: '#/components/schemas/Support' + periodicityList: + type: string + XLThpt: + type: object + properties: + servAttrCom: + $ref: '#/components/schemas/ServAttrCom' + guaThpt: + $ref: '#/components/schemas/Float' + maxThpt: + $ref: '#/components/schemas/Float' + MaxPktSize: + type: object + properties: + servAttrCom: + $ref: '#/components/schemas/ServAttrCom' + maxsize: + type: integer + MaxNumberofPDUSessions: + type: object + properties: + servAttrCom: + $ref: '#/components/schemas/ServAttrCom' + nOofPDUSessions: + type: integer + KPIMonitoring: + type: object + properties: + servAttrCom: + $ref: '#/components/schemas/ServAttrCom' + kPIList: + type: string + NBIoT: + type: object + properties: + servAttrCom: + $ref: '#/components/schemas/ServAttrCom' + support: + $ref: '#/components/schemas/Support' + RadioSpectrum: + type: object + properties: + servAttrCom: + $ref: '#/components/schemas/ServAttrCom' + nROperatingBands: + type: string + Synchronicity: + type: object + properties: + servAttrCom: + $ref: '#/components/schemas/ServAttrCom' + availability: + $ref: '#/components/schemas/SynAvailability' + accuracy: + $ref: '#/components/schemas/Float' + SynchronicityRANSubnet: + type: object + properties: + availability: + $ref: '#/components/schemas/SynAvailability' + accuracy: + $ref: '#/components/schemas/Float' + Positioning: + type: object + properties: + servAttrCom: + $ref: '#/components/schemas/ServAttrCom' + availability: + $ref: '#/components/schemas/PositioningAvailability' + predictionfrequency: + $ref: '#/components/schemas/Predictionfrequency' + accuracy: + $ref: '#/components/schemas/Float' + PositioningRANSubnet: + type: object + properties: + availability: + $ref: '#/components/schemas/PositioningAvailability' + predictionfrequency: + $ref: '#/components/schemas/Predictionfrequency' + accuracy: + $ref: '#/components/schemas/Float' + UserMgmtOpen: + type: object + properties: + servAttrCom: + $ref: '#/components/schemas/ServAttrCom' + support: + $ref: '#/components/schemas/Support' + V2XCommModels: + type: object + properties: + servAttrCom: + $ref: '#/components/schemas/ServAttrCom' + v2XMode: + $ref: '#/components/schemas/Support' + TermDensity: + type: object + properties: + servAttrCom: + $ref: '#/components/schemas/ServAttrCom' + density: + type: integer + NsInfo: + type: object + properties: + nsInstanceId: + type: string + nsName: + type: string + EmbbEEPerfReq: + type: integer + UrllcEEPerfReq: + type: integer + MIoTEEPerfReq: + type: object + properties: + KpiType: + type: string + enum: + - MAXREGSUBS + - MEANACTIVEUES + Req: + type: integer + EEPerfReq: + oneOf: + - $ref: '#/components/schemas/EmbbEEPerfReq' + - $ref: '#/components/schemas/UrllcEEPerfReq' + - $ref: '#/components/schemas/MIoTEEPerfReq' + EnergyEfficiency: + type: object + properties: + servAttrCom: + $ref: '#/components/schemas/ServAttrCom' + performance: + $ref: '#/components/schemas/EEPerfReq' + CNSliceSubnetProfile: + type: object + properties: + maxNumberofUEs: + type: integer + latency: + type: integer + dLThptPerSliceSubnet: + $ref: '#/components/schemas/XLThpt' + dLThptPerUE: + $ref: '#/components/schemas/XLThpt' + uLThptPerSliceSubnet: + $ref: '#/components/schemas/XLThpt' + uLThptPerUE: + $ref: '#/components/schemas/XLThpt' + maxNumberOfPDUSessions: + type: integer + coverageAreaTAList: + type: integer + resourceSharingLevel: + $ref: '#/components/schemas/SharingLevel' + dLMaxPktSize: + type: integer + uLMaxPktSize: + type: integer + delayTolerance: + $ref: '#/components/schemas/DelayTolerance' + synchronicity: + $ref: '#/components/schemas/SynchronicityRANSubnet' + sliceSimultaneousUse: + $ref: '#/components/schemas/SliceSimultaneousUse' + reliability: + type: string + energyEfficiency: + type: integer + dLDeterministicComm: + $ref: '#/components/schemas/DeterministicComm' + uLDeterministicComm: + $ref: '#/components/schemas/DeterministicComm' + survivalTime: + type: string + RANSliceSubnetProfile: + type: object + properties: + coverageAreaTAList: + type: integer + uEMobilityLevel: + $ref: '#/components/schemas/MobilityLevel' + resourceSharingLevel: + $ref: '#/components/schemas/SharingLevel' + maxNumberofUEs: + type: integer + activityFactor: + type: integer + dLThptPerUE: + $ref: '#/components/schemas/XLThpt' + uLThptPerUE: + $ref: '#/components/schemas/XLThpt' + uESpeed: + type: integer + reliability: + type: string + serviceType: + $ref: '#/components/schemas/ServiceType' + dLMaxPktSize: + type: integer + uLMaxPktSize: + type: integer + nROperatingBands: + type: string + delayTolerance: + $ref: '#/components/schemas/DelayTolerance' + positioning: + $ref: '#/components/schemas/PositioningRANSubnet' + sliceSimultaneousUse: + $ref: '#/components/schemas/SliceSimultaneousUse' + energyEfficiency: + type: integer + termDensity: + $ref: '#/components/schemas/TermDensity' + survivalTime: + type: string + synchronicity: + $ref: '#/components/schemas/SynchronicityRANSubnet' + dLDeterministicComm: + $ref: '#/components/schemas/DeterministicComm' + uLDeterministicComm: + $ref: '#/components/schemas/DeterministicComm' + TopSliceSubnetProfile: + type: object + properties: + latency: + type: integer + maxNumberofUEs: + type: integer + dLThptPerSliceSubnet: + $ref: '#/components/schemas/XLThpt' + dLThptPerUE: + $ref: '#/components/schemas/XLThpt' + uLThptPerSliceSubnet: + $ref: '#/components/schemas/XLThpt' + uLThptPerUE: + $ref: '#/components/schemas/XLThpt' + dLMaxPktSize: + type: integer + uLMaxPktSize: + type: integer + maxNumberOfPDUSessions: + type: integer + nROperatingBands: + type: string + sliceSimultaneousUse: + $ref: '#/components/schemas/SliceSimultaneousUse' + energyEfficiency: + type: integer + synchronicity: + $ref: '#/components/schemas/Synchronicity' + delayTolerance: + $ref: '#/components/schemas/DelayTolerance' + positioning: + $ref: '#/components/schemas/Positioning' + termDensity: + $ref: '#/components/schemas/TermDensity' + activityFactor: + type: integer + coverageAreaTAList: + type: integer + resourceSharingLevel: + $ref: '#/components/schemas/SharingLevel' + uEMobilityLevel: + $ref: '#/components/schemas/MobilityLevel' + uESpeed: + type: integer + reliability: + type: string + serviceType: + $ref: '#/components/schemas/ServiceType' + dLDeterministicComm: + $ref: '#/components/schemas/DeterministicComm' + uLDeterministicComm: + $ref: '#/components/schemas/DeterministicComm' + survivalTime: + type: string + + ServiceProfile: + type: object + properties: + serviceProfileId: + type: string + plmnInfoList: + $ref: 'nrNrm.yaml#/components/schemas/PlmnInfoList' + maxNumberofUEs: + type: number + latency: + type: number + uEMobilityLevel: + $ref: '#/components/schemas/MobilityLevel' + sst: + $ref: 'nrNrm.yaml#/components/schemas/Sst' + networkSliceSharingIndicator: + $ref: '#/components/schemas/NetworkSliceSharingIndicator' + availability: + type: number + delayTolerance: + $ref: '#/components/schemas/DelayTolerance' + dLDeterministicComm: + $ref: '#/components/schemas/DeterministicComm' + uLDeterministicComm: + $ref: '#/components/schemas/DeterministicComm' + dLThptPerSlice: + $ref: '#/components/schemas/XLThpt' + dLThptPerUE: + $ref: '#/components/schemas/XLThpt' + uLThptPerSlice: + $ref: '#/components/schemas/XLThpt' + uLThptPerUE: + $ref: '#/components/schemas/XLThpt' + dLMaxPktSize: + $ref: '#/components/schemas/MaxPktSize' + uLMaxPktSize: + $ref: '#/components/schemas/MaxPktSize' + maxNumberofPDUSessions: + $ref: '#/components/schemas/MaxNumberofPDUSessions' + kPIMonitoring: + $ref: '#/components/schemas/KPIMonitoring' + nBIoT: + $ref: '#/components/schemas/NBIoT' + radioSpectrum: + $ref: '#/components/schemas/RadioSpectrum' + synchronicity: + $ref: '#/components/schemas/Synchronicity' + positioning: + $ref: '#/components/schemas/Positioning' + userMgmtOpen: + $ref: '#/components/schemas/UserMgmtOpen' + v2XModels: + $ref: '#/components/schemas/V2XCommModels' + coverageArea: + type: string + termDensity: + $ref: '#/components/schemas/TermDensity' + activityFactor: + $ref: '#/components/schemas/Float' + uESpeed: + type: integer + jitter: + type: integer + survivalTime: + type: string + reliability: + type: string + maxDLDataVolume: + type: string + maxULDataVolume: + type: string + sliceSimultaneousUse: + $ref: '#/components/schemas/SliceSimultaneousUse' + energyEfficiency: + $ref: '#/components/schemas/EnergyEfficiency' + SliceProfile: + type: object + properties: + serviceProfileId: + type: string + plmnInfoList: + $ref: 'nrNrm.yaml#/components/schemas/PlmnInfoList' + cNSliceSubnetProfile: + $ref: '#/components/schemas/CNSliceSubnetProfile' + rANSliceSubnetProfile: + $ref: '#/components/schemas/RANSliceSubnetProfile' + topSliceSubnetProfile: + $ref: '#/components/schemas/TopSliceSubnetProfile' + + IpAddress: + oneOf: + - $ref: 'genericNrm.yaml#/components/schemas/Ipv4Addr' + - $ref: 'genericNrm.yaml#/components/schemas/Ipv6Addr' + + LogicInterfaceInfo: + type: object + properties: + logicalInterfceType: + type: string + enum: + - VLAN + - MPLS + - Segment + logicalInterfceId: + type: string + + ServiceProfileList: + type: array + items: + $ref: '#/components/schemas/ServiceProfile' + + SliceProfileList: + type: array + items: + $ref: '#/components/schemas/SliceProfile' + +#------------ Definition of concrete IOCs ---------------------------------------- + SubNetwork-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/SubNetwork-Attr' + - $ref: 'genericNrm.yaml#/components/schemas/SubNetwork-ncO' + - type: object + properties: + SubNetwork: + $ref: '#/components/schemas/SubNetwork-Multiple' + NetworkSlice: + $ref: '#/components/schemas/NetworkSlice-Multiple' + NetworkSliceSubnet: + $ref: '#/components/schemas/NetworkSliceSubnet-Multiple' + EP_Transport: + $ref: '#/components/schemas/EP_Transport-Multiple' + + NetworkSlice-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + allOf: + - type: object + properties: + networkSliceSubnetRef: + $ref: 'genericNrm.yaml#/components/schemas/Dn' + operationalState: + $ref: 'genericNrm.yaml#/components/schemas/OperationalState' + administrativeState: + $ref: 'genericNrm.yaml#/components/schemas/AdministrativeState' + serviceProfileList: + $ref: '#/components/schemas/ServiceProfileList' + + NetworkSliceSubnet-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + allOf: + - type: object + properties: + managedFunctionRefList: + $ref: 'genericNrm.yaml#/components/schemas/DnList' + networkSliceSubnetRefList: + $ref: 'genericNrm.yaml#/components/schemas/DnList' + operationalState: + $ref: 'genericNrm.yaml#/components/schemas/OperationalState' + administrativeState: + $ref: 'genericNrm.yaml#/components/schemas/AdministrativeState' + nsInfo: + $ref: '#/components/schemas/NsInfo' + sliceProfileList: + $ref: '#/components/schemas/SliceProfileList' + epTransportRefList: + $ref: 'genericNrm.yaml#/components/schemas/DnList' + priorityLabel: + type: integer + + EP_Transport-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + type: object + properties: + ipAddress: + $ref: '#/components/schemas/IpAddress' + logicInterfaceInfo: + $ref: '#/components/schemas/LogicInterfaceInfo' + nextHopInfo: + type: string + qosProfile: + type: string + epApplicationRefs: + $ref: 'genericNrm.yaml#/components/schemas/DnList' + +#-------- Definition of JSON arrays for name-contained IOCs ---------------------- + SubNetwork-Multiple: + type: array + items: + $ref: '#/components/schemas/SubNetwork-Single' + + NetworkSlice-Multiple: + type: array + items: + $ref: '#/components/schemas/NetworkSlice-Single' + + NetworkSliceSubnet-Multiple: + type: array + items: + $ref: '#/components/schemas/NetworkSliceSubnet-Single' + + EP_Transport-Multiple: + type: array + items: + $ref: '#/components/schemas/EP_Transport-Single' + +#------------ Definitions in TS 28.541 for TS 28.532 ----------------------------- + + resources-sliceNrm: + oneOf: + - $ref: '#/components/schemas/SubNetwork-Single' + - $ref: '#/components/schemas/NetworkSlice-Single' + - $ref: '#/components/schemas/NetworkSliceSubnet-Single' + - $ref: '#/components/schemas/EP_Transport-Single' diff --git a/OpenAPI/streamingDataMnS.yaml b/OpenAPI/streamingDataMnS.yaml new file mode 100644 index 000000000..ab7f71d4a --- /dev/null +++ b/OpenAPI/streamingDataMnS.yaml @@ -0,0 +1,453 @@ +openapi: 3.0.1 +info: + title: TS 28.532 Streaming data reporting service + version: 16.4.0 + description: OAS 3.0.1 specification for the Streaming data reporting service (Streaming MnS) +servers: + - url: '{protocol}://{root}/StreamingDataReportingMnS/{version}' + variables: + protocol: + description: Protocol used + enum: + - http + - https + - wss + default: https + root: + description: Indicates the host name and optional port, and an optional sequence of path segments that together represent a prefix path. + default: example.com + version: + description: Indicates the current version of the specification + default: 16.4.0 +paths: + '/connections': + post: + summary: Inform consumer about reporting streams to be carried by the new connection and receive a new connection id. + description: Exchange of meta-data (producer informs consumer about its own identity and the nature of the data to be reported via streaming) phase of the connection establishement by streaming data reporting producer to the streaming data reporting consumer (i.e. streaming target). + requestBody: + required: true + content: + application/json: + schema: + $ref: '#/components/schemas/connectionRequest-Type' + responses: + '201': + description: Success case (201 Created). + headers: + Location: + description: Location of the created connection resource. + schema: + $ref: '#/components/schemas/connectionId-Type' + default: + description: Error case. + content: + application/json: + schema: + $ref: '#/components/schemas/failedConnectionResponse-Type' + get: + summary: Obtain information about connections. + description: Enables the streaming data reporting service producer to obtain information about one or more streaming connections. + parameters: + - name: connectionIdList + in: query + description: The list of connectionId for which the connection information is to be returned. + required: false + schema: + type: array + items: + $ref: '#/components/schemas/connectionId-Type' + responses: + '200': + description: Success case (200 OK). The resources identified in the request for retrieval are returned in the response message body. In case the fields query parameter is used, the selected resources are returned. + content: + application/json: + schema: + type: array + items: + $ref: '#/components/schemas/connectionInfo-Type' + '202': + description: Partial success case (202 Partially retrieved). Subset of the resources identified in the request for retrieval are returned in the response message body. + content: + application/json: + schema: + type: array + items: + $ref: '#/components/schemas/connectionInfo-Type' + default: + description: Error case. + content: + application/json: + schema: + $ref: '#/components/schemas/errorResponse-Type' + '/connections/{connectionId}': + get: + summary: Obtain information about a connection. + description: Enables the streaming data reporting service producer to obtain information about one streaming connection. + parameters: + - name: connectionId + in: path + description: Indicate the ID (URI) of the connection for which the information is being retrieved + required: true + schema: + $ref: '#/components/schemas/connectionId-Type' + - name: Connection + in: header + schema: + $ref: '#/components/schemas/websocketHeaderConnection-Type' + - name: Sec-WebSocket-Extensions + in: header + schema: + $ref: '#/components/schemas/websocketHeader-Sec-WebSocket-Extensions-Type' + - name: Sec-WebSocket-Key + in: header + schema: + $ref: '#/components/schemas/websocketHeader-Sec-WebSocket-Key-Type' + - name: Sec-WebSocket-Protocol + in: header + schema: + $ref: '#/components/schemas/websocketHeader-Sec-WebSocket-Protocol-Type' + - name: Sec-WebSocket-Version + in: header + schema: + $ref: '#/components/schemas/websocketHeader-Sec-WebSocket-Version-Type' + responses: + '101': + description: Success case (101 Switching Protocols). The connection has been successfully switched to WebSocket. The response message body is absent. + headers: + Upgrade: + schema: + $ref: '#/components/schemas/websocketHeaderUpgrade-Type' + Connection: + schema: + $ref: '#/components/schemas/websocketHeaderConnection-Type' + Sec-WebSocket-Accept: + schema: + $ref: '#/components/schemas/websocketHeader-Sec-WebSocket-Accept-Type' + '200': + description: Success case (200 OK). The resource identified in the request for retrieval returned in the response message body. + content: + application/json: + schema: + $ref: '#/components/schemas/connectionInfo-Type' + default: + description: Error case. + content: + application/json: + schema: + $ref: '#/components/schemas/errorResponse-Type' + '/connections/{connectionId}/streams': + post: + summary: Inform consumer about new reporting streams on an existing connection. + description: Allows the producer to add one or more reporting streams to an already established streaming connection. + parameters: + - name: connectionId + in: path + description: Indicate the ID (URI) of the connection for which the reporting stream information is being added. + required: true + schema: + $ref: '#/components/schemas/connectionId-Type' + requestBody: + required: true + content: + application/json: + schema: + type: array + items: + $ref: '#/components/schemas/streamInfo-Type' + responses: + '201': + description: Success case (201 Posted). + content: + application/json: + schema: + type: array + items: + $ref: '#/components/schemas/streamInfo-Type' + '202': + description: Partial success case (202 Posted). + content: + application/json: + schema: + type: array + items: + $ref: '#/components/schemas/streamInfo-Type' + default: + description: Error case. + content: + application/json: + schema: + $ref: '#/components/schemas/errorResponse-Type' + delete: + summary: Remove reporting streams from an existing connection + description: Allows the producer to remove one or more reporting streams from an already established streaming connection. + parameters: + - name: connectionId + in: path + description: Indicate the ID (URI) of the connection for which the reporting stream information is being removed. + required: true + schema: + $ref: '#/components/schemas/connectionId-Type' + - name: streamIds + in: query + description: The list of streamId for the stream(s) to be deleted. + required: true + schema: + type: array + items: + $ref: '#/components/schemas/streamId-Type' + responses: + '204': + description: Success case (204 No Content). The stream information resource has been deleted. The response message body is absent. + default: + description: Error case. + content: + application/json: + schema: + $ref: '#/components/schemas/errorResponse-Type' + get: + summary: Obtain information about streams. + description: Enables the streaming data reporting service producer to obtain information about one or more reporting streams. + parameters: + - name: connectionId + in: path + description: Indicate the ID (URI) of the connection for which the information is being retrieved + required: true + schema: + $ref: '#/components/schemas/connectionId-Type' + - name: streamIds + in: query + description: The list of streamId for which the stream information is to be retrieved. + required: true + schema: + type: array + items: + $ref: '#/components/schemas/streamId-Type' + responses: + '200': + description: Success case (200 OK). + content: + application/json: + schema: + type: array + items: + $ref: '#/components/schemas/streamInfoWithReporters-Type' + '202': + description: Partial success case (202 Partially retrieved). + content: + application/json: + schema: + type: array + items: + $ref: '#/components/schemas/streamInfoWithReporters-Type' + default: + description: Error case. + content: + application/json: + schema: + $ref: '#/components/schemas/errorResponse-Type' + '/connections/{connectionId}/streams/{streamId}': + get: + summary: Obtain information about stream + description: Enables the streaming data reporting service producer to obtain information about a reporting stream. + parameters: + - name: connectionId + in: path + description: Indicate the ID (URI) of the connection for which the information is being retrieved + required: true + schema: + $ref: '#/components/schemas/connectionId-Type' + - name: streamId + in: path + description: Indicate the ID of the reporting stream for which the information is being retrieved + required: true + schema: + $ref: '#/components/schemas/streamId-Type' + responses: + '200': + description: Success case (200 OK). + content: + application/json: + schema: + $ref: '#/components/schemas/streamInfoWithReporters-Type' + default: + description: Error case. + content: + application/json: + schema: + $ref: '#/components/schemas/errorResponse-Type' +components: + schemas: + analyticsInfo-Type: + description: Information specific to analytics reporting. + type: object + properties: + activityDetails: + type: string + connectionId-Type: + $ref: '#/components/schemas/uri-Type' + connectionInfo-Type: + type: object + properties: + connection: + $ref: '#/components/schemas/connectionId-Type' + producer: + $ref: '#/components/schemas/producerId-Type' + streams: + type: array + items: + $ref: '#/components/schemas/streamId-Type' + connectionRequest-Type: + type: object + properties: + producer: + $ref: '#/components/schemas/producerId-Type' + streams: + type: array + items: + $ref: '#/components/schemas/streamInfo-Type' + errorResponse-Type: + type: object + properties: + error: + type: object + properties: + errorInfo: + type: string + failedConnectionResponse-Type: + type: object + properties: + error: + type: array + items: + type: object + properties: + streamId: + $ref: '#/components/schemas/streamId-Type' + errorReason: + type: string + measObjDn-Type: + description: DN of the measured object instance (see 3GPP TS 28.550) + allOf: + - $ref: '#/components/schemas/systemDN-Type' + measTypes-Type: + description: an ordered list of measurement type or KPI whose measurement values or KPI result values are to be reported by the Performance Data Stream Units (see Annex C of TS 28.550) via this stream + type: array + items: + type: string + performanceInfo-Type: + description: Information specific to performance data reporting + type: object + properties: + measObjDn: + $ref: '#/components/schemas/measObjDn-Type' + measTypes: + $ref: '#/components/schemas/measTypes-Type' + measurementReaderId: + $ref: '#/components/schemas/systemDN-Type' + jobId: + type: string + required: + - measObjDn + - measTypes + producerId-Type: + description: DN of the streaming data reporting MnS producer. + allOf: + - $ref: '#/components/schemas/systemDN-Type' + serializationFormat-Type: + type: string + enum: + - GPB + - ASN1 + streamId-Type: + description: globally unique stream identifier + type: string + example: '26F452550021' + streamInfo-Type: + description: Reporting stream meta-data. + type: object + properties: + streamType: + $ref: '#/components/schemas/streamType-Type' + serializationFormat: + $ref: '#/components/schemas/serializationFormat-Type' + streamId: + oneOf: + - $ref: '#/components/schemas/streamId-Type' + - $ref: '#/components/schemas/traceReference-Type' + additionalInfo: + oneOf: + - $ref: '#/components/schemas/traceInfo-Type' + - $ref: '#/components/schemas/performanceInfo-Type' + - $ref: '#/components/schemas/analyticsInfo-Type' + - $ref: '#/components/schemas/vsDataContainer-Type' + required: + - streamType + - serializationFormat + - streamId + streamInfoWithReporters-Type: + description: Reporting stream meta-data with added information about reporters. + type: object + properties: + streamInfo: + $ref: '#/components/schemas/streamInfo-Type' + reporters: + type: array + items: + $ref: '#/components/schemas/producerId-Type' + systemDN-Type: + description: See 3GPP TS 32.300 for details + type: string + example: 'SubNetwork=ABCNetwork,SubNetwork=MUC01,GNBDUFunction=XYZ0100' + streamType-Type: + type: string + enum: + - TRACE + - PERFORMANCE + - ANALYTICS + - PROPRIETARY + traceInfo-Type: + description: Information specific to trace data reporting + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/TraceJob-Attr' + traceReference-Type: + description: Trace Reference (see clause 5.6 of 3GPP TS 32.422) as stream identifier for streaming trace data reporting + type: string + example: '4358070034D7' + uri-Type: + description: Resource URI + type: string + vsDataContainer-Type: + description: container for vendor specific data (see 3GPP TS 28.622) + type: object + properties: + vsDataType: + type: string + vsData: + type: string + vsDataFormatVersion: + type: string + websocketHeaderConnection-Type: + description: Header value for the upgrade request and response. + type: string + enum: + - Upgrade + websocketHeaderUpgrade-Type: + description: Header value for the upgrade to WebSocket request and response. + type: string + enum: + - websocket + websocketHeader-Sec-WebSocket-Accept-Type: + description: Header value for secure WebSocket response. Carries hash. + type: string + websocketHeader-Sec-WebSocket-Extensions-Type: + description: Header value for secure WebSocket request. Carries protocol extensions. + type: string + websocketHeader-Sec-WebSocket-Key-Type: + description: Header value for secure WebSocket request. Provides information to the server which is needed in order to confirm that the client is entitled to request an upgrade to WebSocket. + type: string + websocketHeader-Sec-WebSocket-Protocol-Type: + description: Header value for secure WebSocket request. Carries a comma-separated list of subprotocol names, in the order of preference. + type: string + websocketHeader-Sec-WebSocket-Version-Type: + description: Header value for secure WebSocket request and response. Carries the WebSocket protocol version to be used. + type: string -- GitLab From e984aa9984c9c4d02a24ec898dd130ac5f4d9306 Mon Sep 17 00:00:00 2001 From: "U-ERICSSON\\ETHBLL" Date: Sun, 2 Jan 2022 19:29:43 +0100 Subject: [PATCH 226/593] delete all yaml 2 --- OpenAPI/5gcNrm.yaml | 2185 ----------------------------- OpenAPI/PerDataFileReportMnS.yaml | 13 - OpenAPI/PerMeasJobCtlMnS.yaml | 280 ---- OpenAPI/PerThresMonMnS.yaml | 102 -- OpenAPI/PerfDataStreamingMnS.yaml | 363 ----- OpenAPI/comDefs.yaml | 84 -- OpenAPI/coslaNrm.yaml | 168 --- OpenAPI/faultMnS.yaml | 1144 --------------- OpenAPI/genericNrm.yaml | 1606 --------------------- OpenAPI/heartbeatNtf.yaml | 23 - OpenAPI/nrNrm.yaml | 1905 ------------------------- OpenAPI/provMnS.yaml | 579 -------- OpenAPI/sliceNrm.yaml | 632 --------- OpenAPI/streamingDataMnS.yaml | 453 ------ 14 files changed, 9537 deletions(-) delete mode 100644 OpenAPI/5gcNrm.yaml delete mode 100644 OpenAPI/PerDataFileReportMnS.yaml delete mode 100644 OpenAPI/PerMeasJobCtlMnS.yaml delete mode 100644 OpenAPI/PerThresMonMnS.yaml delete mode 100644 OpenAPI/PerfDataStreamingMnS.yaml delete mode 100644 OpenAPI/comDefs.yaml delete mode 100644 OpenAPI/coslaNrm.yaml delete mode 100644 OpenAPI/faultMnS.yaml delete mode 100644 OpenAPI/genericNrm.yaml delete mode 100644 OpenAPI/heartbeatNtf.yaml delete mode 100644 OpenAPI/nrNrm.yaml delete mode 100644 OpenAPI/provMnS.yaml delete mode 100644 OpenAPI/sliceNrm.yaml delete mode 100644 OpenAPI/streamingDataMnS.yaml diff --git a/OpenAPI/5gcNrm.yaml b/OpenAPI/5gcNrm.yaml deleted file mode 100644 index e4c4b2619..000000000 --- a/OpenAPI/5gcNrm.yaml +++ /dev/null @@ -1,2185 +0,0 @@ -openapi: 3.0.1 -info: - title: 3GPP 5GC NRM - version: 17.4.0 - description: >- - OAS 3.0.1 specification of the 5GC NRM - © 2020, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). - All rights reserved. -externalDocs: - description: 3GPP TS 28.541; 5G NRM, 5GC NRM - url: http://www.3gpp.org/ftp/Specs/archive/28_series/28.541/ -paths: {} -components: - schemas: - -#-------- Definition of types----------------------------------------------------- - - AmfIdentifier: - type: object - description: 'AmfIdentifier comprise of amfRegionId, amfSetId and amfPointer' - properties: - amfRegionId: - $ref: '#/components/schemas/AmfRegionId' - amfSetId: - $ref: '#/components/schemas/AmfSetId' - amfPointer: - $ref: '#/components/schemas/AmfPointer' - AmfRegionId: - type: integer - description: AmfRegionId is defined in TS 23.003 - maximum: 255 - AmfSetId: - type: string - description: AmfSetId is defined in TS 23.003 - maximum: 1023 - AmfPointer: - type: integer - description: AmfPointer is defined in TS 23.003 - maximum: 63 - IpEndPoint: - type: object - properties: - ipv4Address: - $ref: 'genericNrm.yaml#/components/schemas/Ipv4Addr' - ipv6Address: - $ref: 'genericNrm.yaml#/components/schemas/Ipv6Addr' - ipv6Prefix: - $ref: 'genericNrm.yaml#/components/schemas/Ipv6Prefix' - transport: - $ref: 'genericNrm.yaml#/components/schemas/TransportProtocol' - port: - type: integer - NFProfileList: - type: array - description: List of NF profile - items: - $ref: '#/components/schemas/NFProfile' - NFProfile: - type: object - description: 'NF profile stored in NRF, defined in TS 29.510' - properties: - nFInstanceId: - type: string - description: uuid of NF instance - nFType: - $ref: 'genericNrm.yaml#/components/schemas/NFType' - nFStatus: - $ref: '#/components/schemas/NFStatus' - plmn: - $ref: 'nrNrm.yaml#/components/schemas/PlmnId' - sNssais: - $ref: 'nrNrm.yaml#/components/schemas/Snssai' - fqdn: - $ref: 'genericNrm.yaml#/components/schemas/Fqdn' - interPlmnFqdn: - $ref: 'genericNrm.yaml#/components/schemas/Fqdn' - nfServices: - type: array - items: - $ref: '#/components/schemas/NFService' - NFService: - type: object - description: NF Service is defined in TS 29.510 - properties: - serviceInstanceId: - type: string - serviceName: - type: string - version: - type: string - schema: - type: string - fqdn: - $ref: 'genericNrm.yaml#/components/schemas/Fqdn' - interPlmnFqdn: - $ref: 'genericNrm.yaml#/components/schemas/Fqdn' - ipEndPoints: - type: array - items: - $ref: '#/components/schemas/IpEndPoint' - apiPrfix: - type: string - allowedPlmns: - $ref: 'nrNrm.yaml#/components/schemas/PlmnId' - allowedNfTypes: - type: array - items: - $ref: 'genericNrm.yaml#/components/schemas/NFType' - allowedNssais: - type: array - items: - $ref: 'nrNrm.yaml#/components/schemas/Snssai' - NFStatus: - type: string - description: any of enumrated value - enum: - - REGISTERED - - SUSPENDED - CNSIIdList: - type: array - items: - $ref: '#/components/schemas/CNSIId' - CNSIId: - type: string - description: CNSI Id is defined in TS 29.531, only for Core Network - TACList: - type: array - items: - $ref: 'nrNrm.yaml#/components/schemas/NrTac' - WeightFactor: - type: integer - UdmInfo: - type: object - properties: - nFSrvGroupId: - type: string - AusfInfo: - type: object - properties: - nFSrvGroupId: - type: string - UpfInfo: - type: object - properties: - smfServingAreas: - type: string - AmfInfo: - type: object - properties: - priority: - type: integer - SupportedDataSetId: - type: string - description: any of enumrated value - enum: - - SUBSCRIPTION - - POLICY - - EXPOSURE - - APPLICATION - Udrinfo: - type: object - properties: - supportedDataSetIds: - type: array - items: - $ref: '#/components/schemas/SupportedDataSetId' - nFSrvGroupId: - type: string - NFInfo: - oneOf: - - $ref: '#/components/schemas/UdmInfo' - - $ref: '#/components/schemas/AusfInfo' - - $ref: '#/components/schemas/UpfInfo' - - $ref: '#/components/schemas/AmfInfo' - - $ref: '#/components/schemas/Udrinfo' - ManagedNFProfile: - type: object - properties: - nfInstanceID: - type: string - nfType: - $ref: 'genericNrm.yaml#/components/schemas/NFType' - authzInfo: - type: string - hostAddr: - $ref: 'genericNrm.yaml#/components/schemas/HostAddr' - locality: - type: string - nFInfo: - $ref: '#/components/schemas/NFInfo' - capacity: - type: integer - SEPPType: - type: string - description: any of enumrated value - enum: - - CSEPP - - PSEPP - SupportedFunc: - type: object - properties: - function: - type: string - policy: - type: string - SupportedFuncList: - type: array - items: - $ref: '#/components/schemas/SupportedFunc' - CommModelType: - type: string - description: any of enumrated value - enum: - - DIRECT_COMMUNICATION_WO_NRF - - DIRECT_COMMUNICATION_WITH_NRF - - INDIRECT_COMMUNICATION_WO_DEDICATED_DISCOVERY - - INDIRECT_COMMUNICATION_WITH_DEDICATED_DISCOVERY - CommModel: - type: object - properties: - groupId: - type: integer - commModelType: - $ref: '#/components/schemas/CommModelType' - targetNFServiceList: - $ref: 'genericNrm.yaml#/components/schemas/DnList' - commModelConfiguration: - type: string - CommModelList: - type: array - items: - $ref: '#/components/schemas/CommModel' - CapabilityList: - type: array - items: - type: string - FiveQiDscpMapping: - type: object - properties: - fiveQIValues: - type: array - items: - type: integer - dscp: - type: integer - NetworkSliceInfo: - type: object - properties: - sNSSAI: - $ref: 'nrNrm.yaml#/components/schemas/Snssai' - cNSIId: - $ref: '#/components/schemas/CNSIId' - networkSliceRef: - $ref: 'genericNrm.yaml#/components/schemas/DnList' - NetworkSliceInfoList: - type: array - items: - $ref: '#/components/schemas/NetworkSliceInfo' - - - PacketErrorRate: - type: object - properties: - scalar: - type: integer - exponent: - type: integer - - - - GtpUPathDelayThresholdsType: - type: object - properties: - n3AveragePacketDelayThreshold: - type: integer - n3MinPacketDelayThreshold: - type: integer - n3MaxPacketDelayThreshold: - type: integer - n9AveragePacketDelayThreshold: - type: integer - n9MinPacketDelayThreshold: - type: integer - n9MaxPacketDelayThreshold: - type: integer - QFPacketDelayThresholdsType: - type: object - properties: - thresholdDl: - type: integer - thresholdUl: - type: integer - thresholdRtt: - type: integer - - QosData: - type: object - properties: - qosId: - type: string - fiveQIValue: - type: integer - maxbrUl: - $ref: 'https://forge.3gpp.org/rep/all/5G_APIs/raw/REL-16/TS29571_CommonData.yaml#/components/schemas/BitRateRm' - maxbrDl: - $ref: 'https://forge.3gpp.org/rep/all/5G_APIs/raw/REL-16/TS29571_CommonData.yaml#/components/schemas/BitRateRm' - gbrUl: - $ref: 'https://forge.3gpp.org/rep/all/5G_APIs/raw/REL-16/TS29571_CommonData.yaml#/components/schemas/BitRateRm' - gbrDl: - $ref: 'https://forge.3gpp.org/rep/all/5G_APIs/raw/REL-16/TS29571_CommonData.yaml#/components/schemas/BitRateRm' - arp: - $ref: 'https://forge.3gpp.org/rep/all/5G_APIs/raw/REL-16/TS29571_CommonData.yaml#/components/schemas/Arp' - qosNotificationControl: - type: boolean - reflectiveQos: - type: boolean - sharingKeyDl: - type: string - sharingKeyUl: - type: string - maxPacketLossRateDl: - $ref: 'https://forge.3gpp.org/rep/all/5G_APIs/raw/REL-16/TS29571_CommonData.yaml#/components/schemas/PacketLossRateRm' - maxPacketLossRateUl: - $ref: 'https://forge.3gpp.org/rep/all/5G_APIs/raw/REL-16/TS29571_CommonData.yaml#/components/schemas/PacketLossRateRm' - extMaxDataBurstVol: - $ref: 'https://forge.3gpp.org/rep/all/5G_APIs/raw/REL-16/TS29571_CommonData.yaml#/components/schemas/ExtMaxDataBurstVolRm' - - QosDataList: - type: array - items: - $ref: '#/components/schemas/QosData' - - SteeringMode: - type: object - properties: - steerModeValue: - $ref: 'https://forge.3gpp.org/rep/all/5G_APIs/raw/REL-16/TS29512_Npcf_SMPolicyControl.yaml#/components/schemas/SteerModeValue' - active: - $ref: 'https://forge.3gpp.org/rep/all/5G_APIs/raw/REL-16/TS29571_CommonData.yaml#/components/schemas/AccessType' - standby: - $ref: 'https://forge.3gpp.org/rep/all/5G_APIs/raw/REL-16/TS29571_CommonData.yaml#/components/schemas/AccessTypeRm' - threeGLoad: - $ref: 'https://forge.3gpp.org/rep/all/5G_APIs/raw/REL-16/TS29571_CommonData.yaml#/components/schemas/Uinteger' - prioAcc: - $ref: 'https://forge.3gpp.org/rep/all/5G_APIs/raw/REL-16/TS29571_CommonData.yaml#/components/schemas/AccessType' - - TrafficControlData: - type: object - properties: - tcId: - type: string - flowStatus: - $ref: 'https://forge.3gpp.org/rep/all/5G_APIs/raw/REL-16/TS29514_Npcf_PolicyAuthorization.yaml#/components/schemas/FlowStatus' - redirectInfo: - $ref: 'https://forge.3gpp.org/rep/all/5G_APIs/raw/REL-16/TS29512_Npcf_SMPolicyControl.yaml#/components/schemas/RedirectInformation' - addRedirectInfo: - type: array - items: - $ref: 'https://forge.3gpp.org/rep/all/5G_APIs/raw/REL-16/TS29512_Npcf_SMPolicyControl.yaml#/components/schemas/RedirectInformation' - minItems: 1 - muteNotif: - type: boolean - trafficSteeringPolIdDl: - type: string - nullable: true - trafficSteeringPolIdUl: - type: string - nullable: true - routeToLocs: - type: array - items: - $ref: 'https://forge.3gpp.org/rep/all/5G_APIs/raw/REL-16/TS29571_CommonData.yaml#/components/schemas/RouteToLocation' - traffCorreInd: - type: boolean - upPathChgEvent: - $ref: 'https://forge.3gpp.org/rep/all/5G_APIs/raw/REL-16/TS29512_Npcf_SMPolicyControl.yaml#/components/schemas/UpPathChgEvent' - steerFun: - $ref: 'https://forge.3gpp.org/rep/all/5G_APIs/raw/REL-16/TS29512_Npcf_SMPolicyControl.yaml#/components/schemas/SteeringFunctionality' - steerModeDl: - $ref: '#/components/schemas/SteeringMode' - steerModeUl: - $ref: '#/components/schemas/SteeringMode' - mulAccCtrl: - $ref: 'https://forge.3gpp.org/rep/all/5G_APIs/raw/REL-16/TS29512_Npcf_SMPolicyControl.yaml#/components/schemas/MulticastAccessControl' - - TrafficControlDataList: - type: array - items: - $ref: '#/components/schemas/TrafficControlData' - - PccRule: - type: object - properties: - pccRuleId: - type: string - description: Univocally identifies the PCC rule within a PDU session. - flowInfoList: - type: array - items: - $ref: 'https://forge.3gpp.org/rep/all/5G_APIs/raw/REL-16/TS29512_Npcf_SMPolicyControl.yaml#/components/schemas/FlowInformation' - applicationId: - type: string - appDescriptor: - $ref: 'https://forge.3gpp.org/rep/all/5G_APIs/raw/REL-16/TS29512_Npcf_SMPolicyControl.yaml#/components/schemas/ApplicationDescriptor' - contentVersion: - $ref: 'https://forge.3gpp.org/rep/all/5G_APIs/raw/REL-16/TS29514_Npcf_PolicyAuthorization.yaml#/components/schemas/ContentVersion' - precedence: - $ref: 'https://forge.3gpp.org/rep/all/5G_APIs/raw/REL-16/TS29571_CommonData.yaml#/components/schemas/Uinteger' - afSigProtocol: - $ref: 'https://forge.3gpp.org/rep/all/5G_APIs/raw/REL-16/TS29512_Npcf_SMPolicyControl.yaml#/components/schemas/AfSigProtocol' - isAppRelocatable: - type: boolean - isUeAddrPreserved: - type: boolean - qosData: - type: array - items: - $ref: '#/components/schemas/QosDataList' - altQosParams: - type: array - items: - $ref: '#/components/schemas/QosDataList' - trafficControlData: - type: array - items: - $ref: '#/components/schemas/TrafficControlDataList' - conditionData: - $ref: 'https://forge.3gpp.org/rep/all/5G_APIs/raw/REL-16/TS29512_Npcf_SMPolicyControl.yaml#/components/schemas/ConditionData' - tscaiInputDl: - $ref: 'https://forge.3gpp.org/rep/all/5G_APIs/raw/REL-16/TS29514_Npcf_PolicyAuthorization.yaml#/components/schemas/TscaiInputContainer' - tscaiInputUl: - $ref: 'https://forge.3gpp.org/rep/all/5G_APIs/raw/REL-16/TS29514_Npcf_PolicyAuthorization.yaml#/components/schemas/TscaiInputContainer' - - SnssaiInfo: - type: object - properties: - plmnInfo: - $ref: 'nrNrm.yaml#/components/schemas/PlmnInfo' - administrativeState: - $ref: 'genericNrm.yaml#/components/schemas/AdministrativeState' - - NsacfInfoSnssai: - type: object - properties: - SnssaiInfo: - $ref: '#/components/schemas/SnssaiInfo' - isSubjectToNsac: - type: boolean - maxNumberofUEs: - type: integer - eACMode: - type: string - enum: - - INACTIVE - - ACTIVE - activeEacThreshhold: - type: integer - deactiveEacThreshhold: - type: integer - numberofUEs: - type: integer - uEIdList: - type: array - items: - type: string - - -#-------- Definition of concrete IOCs -------------------------------------------- - - SubNetwork-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/SubNetwork-Attr' - - $ref: 'genericNrm.yaml#/components/schemas/SubNetwork-ncO' - - type: object - properties: - SubNetwork: - $ref: '#/components/schemas/SubNetwork-Multiple' - ManagedElement: - $ref: '#/components/schemas/ManagedElement-Multiple' - ExternalAmfFunction: - $ref: '#/components/schemas/ExternalAmfFunction-Multiple' - ExternalNrfFunction: - $ref: '#/components/schemas/ExternalNrfFunction-Multiple' - ExternalNssfFunction: - $ref: '#/components/schemas/ExternalNssfFunction-Multiple' - AmfSet: - $ref: '#/components/schemas/AmfSet-Multiple' - AmfRegion: - $ref: '#/components/schemas/AmfRegion-Multiple' - Configurable5QISet: - $ref: '#/components/schemas/Configurable5QISet-Multiple' - Dynamic5QISet: - $ref: '#/components/schemas/Dynamic5QISet-Multiple' - - ManagedElement-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/ManagedElement-Attr' - - $ref: 'genericNrm.yaml#/components/schemas/ManagedElement-ncO' - - type: object - properties: - AmfFunction: - $ref: '#/components/schemas/AmfFunction-Multiple' - SmfFunction: - $ref: '#/components/schemas/SmfFunction-Multiple' - UpfFunction: - $ref: '#/components/schemas/UpfFunction-Multiple' - N3iwfFunction: - $ref: '#/components/schemas/N3iwfFunction-Multiple' - PcfFunction: - $ref: '#/components/schemas/PcfFunction-Multiple' - AusfFunction: - $ref: '#/components/schemas/AusfFunction-Multiple' - UdmFunction: - $ref: '#/components/schemas/UdmFunction-Multiple' - UdrFunction: - $ref: '#/components/schemas/UdrFunction-Multiple' - UdsfFunction: - $ref: '#/components/schemas/UdsfFunction-Multiple' - NrfFunction: - $ref: '#/components/schemas/NrfFunction-Multiple' - NssfFunction: - $ref: '#/components/schemas/NssfFunction-Multiple' - SmsfFunction: - $ref: '#/components/schemas/SmsfFunction-Multiple' - LmfFunction: - $ref: '#/components/schemas/LmfFunction-Multiple' - NgeirFunction: - $ref: '#/components/schemas/NgeirFunction-Multiple' - SeppFunction: - $ref: '#/components/schemas/SeppFunction-Multiple' - NwdafFunction: - $ref: '#/components/schemas/NwdafFunction-Multiple' - ScpFunction: - $ref: '#/components/schemas/ScpFunction-Multiple' - NefFunction: - $ref: '#/components/schemas/NefFunction-Multiple' - Configurable5QISet: - $ref: '#/components/schemas/Configurable5QISet-Multiple' - Dynamic5QISet: - $ref: '#/components/schemas/Dynamic5QISet-Multiple' - - AmfFunction-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' - - type: object - properties: - plmnIdList: - $ref: 'nrNrm.yaml#/components/schemas/PlmnIdList' - amfIdentifier: - $ref: '#/components/schemas/AmfIdentifier' - sBIFqdn: - type: string - weightFactor: - $ref: '#/components/schemas/WeightFactor' - snssaiList: - $ref: 'nrNrm.yaml#/components/schemas/SnssaiList' - amfSet: - $ref: 'genericNrm.yaml#/components/schemas/Dn' - managedNFProfile: - $ref: '#/components/schemas/ManagedNFProfile' - commModelList: - $ref: '#/components/schemas/CommModelList' - - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' - - type: object - properties: - EP_N2: - $ref: '#/components/schemas/EP_N2-Multiple' - EP_N8: - $ref: '#/components/schemas/EP_N8-Multiple' - EP_N11: - $ref: '#/components/schemas/EP_N11-Multiple' - EP_N12: - $ref: '#/components/schemas/EP_N12-Multiple' - EP_N14: - $ref: '#/components/schemas/EP_N14-Multiple' - EP_N15: - $ref: '#/components/schemas/EP_N15-Multiple' - EP_N17: - $ref: '#/components/schemas/EP_N17-Multiple' - EP_N20: - $ref: '#/components/schemas/EP_N20-Multiple' - EP_N22: - $ref: '#/components/schemas/EP_N22-Multiple' - EP_N26: - $ref: '#/components/schemas/EP_N26-Multiple' - EP_NLS: - $ref: '#/components/schemas/EP_NLS-Multiple' - EP_NLG: - $ref: '#/components/schemas/EP_NLG-Multiple' - AmfSet-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' - - type: object - properties: - plmnIdList: - $ref: 'nrNrm.yaml#/components/schemas/PlmnIdList' - nRTACList: - $ref: '#/components/schemas/TACList' - amfSetId: - $ref: '#/components/schemas/AmfSetId' - snssaiList: - $ref: 'nrNrm.yaml#/components/schemas/SnssaiList' - AmfRegion-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' - - type: object - properties: - plmnIdList: - $ref: 'nrNrm.yaml#/components/schemas/PlmnIdList' - nRTACList: - $ref: '#/components/schemas/TACList' - amfRegionId: - $ref: '#/components/schemas/AmfRegionId' - snssaiList: - $ref: 'nrNrm.yaml#/components/schemas/SnssaiList' - SmfFunction-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' - - type: object - properties: - plmnIdList: - $ref: 'nrNrm.yaml#/components/schemas/PlmnIdList' - nRTACList: - $ref: '#/components/schemas/TACList' - sBIFqdn: - type: string - snssaiList: - $ref: 'nrNrm.yaml#/components/schemas/SnssaiList' - managedNFProfile: - $ref: '#/components/schemas/ManagedNFProfile' - commModelList: - $ref: '#/components/schemas/CommModelList' - configurable5QISetRef: - $ref: 'genericNrm.yaml#/components/schemas/Dn' - dynamic5QISetRef: - $ref: 'genericNrm.yaml#/components/schemas/Dn' - - - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' - - type: object - properties: - EP_N4: - $ref: '#/components/schemas/EP_N4-Multiple' - EP_N7: - $ref: '#/components/schemas/EP_N7-Multiple' - EP_N10: - $ref: '#/components/schemas/EP_N10-Multiple' - EP_N11: - $ref: '#/components/schemas/EP_N11-Multiple' - EP_N16: - $ref: '#/components/schemas/EP_N16-Multiple' - EP_S5C: - $ref: '#/components/schemas/EP_S5C-Multiple' - FiveQiDscpMappingSet: - $ref: '#/components/schemas/FiveQiDscpMappingSet-Single' - GtpUPathQoSMonitoringControl: - $ref: '#/components/schemas/GtpUPathQoSMonitoringControl-Single' - QFQoSMonitoringControl: - $ref: '#/components/schemas/QFQoSMonitoringControl-Single' - PredefinedPccRuleSet: - $ref: '#/components/schemas/PredefinedPccRuleSet-Single' - - UpfFunction-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' - - type: object - properties: - plmnIdList: - $ref: 'nrNrm.yaml#/components/schemas/PlmnIdList' - nRTACList: - $ref: '#/components/schemas/TACList' - snssaiList: - $ref: 'nrNrm.yaml#/components/schemas/SnssaiList' - managedNFProfile: - $ref: '#/components/schemas/ManagedNFProfile' - commModelList: - $ref: '#/components/schemas/CommModelList' - - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' - - type: object - properties: - EP_N3: - $ref: '#/components/schemas/EP_N3-Multiple' - EP_N4: - $ref: '#/components/schemas/EP_N4-Multiple' - EP_N6: - $ref: '#/components/schemas/EP_N6-Multiple' - EP_N9: - $ref: '#/components/schemas/EP_N9-Multiple' - EP_S5U: - $ref: '#/components/schemas/EP_S5U-Multiple' - N3iwfFunction-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' - - type: object - properties: - plmnIdList: - $ref: 'nrNrm.yaml#/components/schemas/PlmnIdList' - commModelList: - $ref: '#/components/schemas/CommModelList' - - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' - - type: object - properties: - EP_N3: - $ref: '#/components/schemas/EP_N3-Multiple' - EP_N4: - $ref: '#/components/schemas/EP_N4-Multiple' - PcfFunction-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' - - type: object - properties: - plmnIdList: - $ref: 'nrNrm.yaml#/components/schemas/PlmnIdList' - sBIFqdn: - type: string - snssaiList: - $ref: 'nrNrm.yaml#/components/schemas/SnssaiList' - managedNFProfile: - $ref: '#/components/schemas/ManagedNFProfile' - commModelList: - $ref: '#/components/schemas/CommModelList' - configurable5QISetRef: - $ref: 'genericNrm.yaml#/components/schemas/Dn' - dynamic5QISetRef: - $ref: 'genericNrm.yaml#/components/schemas/Dn' - - - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' - - type: object - properties: - EP_N5: - $ref: '#/components/schemas/EP_N5-Multiple' - EP_N7: - $ref: '#/components/schemas/EP_N7-Multiple' - EP_N15: - $ref: '#/components/schemas/EP_N15-Multiple' - EP_N16: - $ref: '#/components/schemas/EP_N16-Multiple' - EP_Rx: - $ref: '#/components/schemas/EP_Rx-Multiple' - PredefinedPccRuleSet: - $ref: '#/components/schemas/PredefinedPccRuleSet-Single' - - AusfFunction-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' - - type: object - properties: - plmnIdList: - $ref: 'nrNrm.yaml#/components/schemas/PlmnIdList' - sBIFqdn: - type: string - snssaiList: - $ref: 'nrNrm.yaml#/components/schemas/SnssaiList' - managedNFProfile: - $ref: '#/components/schemas/ManagedNFProfile' - commModelList: - $ref: '#/components/schemas/CommModelList' - - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' - - type: object - properties: - EP_N12: - $ref: '#/components/schemas/EP_N12-Multiple' - EP_N13: - $ref: '#/components/schemas/EP_N13-Multiple' - UdmFunction-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' - - type: object - properties: - plmnIdList: - $ref: 'nrNrm.yaml#/components/schemas/PlmnIdList' - sBIFqdn: - type: string - snssaiList: - $ref: 'nrNrm.yaml#/components/schemas/SnssaiList' - managedNFProfile: - $ref: '#/components/schemas/ManagedNFProfile' - commModelList: - $ref: '#/components/schemas/CommModelList' - - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' - - type: object - properties: - EP_N8: - $ref: '#/components/schemas/EP_N8-Multiple' - EP_N10: - $ref: '#/components/schemas/EP_N10-Multiple' - EP_N13: - $ref: '#/components/schemas/EP_N13-Multiple' - UdrFunction-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' - - type: object - properties: - plmnIdList: - $ref: 'nrNrm.yaml#/components/schemas/PlmnIdList' - sBIFqdn: - type: string - snssaiList: - $ref: 'nrNrm.yaml#/components/schemas/SnssaiList' - managedNFProfile: - $ref: '#/components/schemas/ManagedNFProfile' - UdsfFunction-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' - - type: object - properties: - plmnIdList: - $ref: 'nrNrm.yaml#/components/schemas/PlmnIdList' - sBIFqdn: - type: string - snssaiList: - $ref: 'nrNrm.yaml#/components/schemas/SnssaiList' - managedNFProfile: - $ref: '#/components/schemas/ManagedNFProfile' - NrfFunction-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' - - type: object - properties: - plmnIdList: - $ref: 'nrNrm.yaml#/components/schemas/PlmnIdList' - sBIFqdn: - type: string - cNSIIdList: - $ref: '#/components/schemas/CNSIIdList' - nFProfileList: - $ref: '#/components/schemas/NFProfileList' - snssaiList: - $ref: 'nrNrm.yaml#/components/schemas/SnssaiList' - - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' - - type: object - properties: - EP_N27: - $ref: '#/components/schemas/EP_N27-Multiple' - NssfFunction-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' - - type: object - properties: - plmnIdList: - $ref: 'nrNrm.yaml#/components/schemas/PlmnIdList' - sBIFqdn: - type: string - cNSIIdList: - $ref: '#/components/schemas/CNSIIdList' - nFProfileList: - $ref: '#/components/schemas/NFProfileList' - snssaiList: - $ref: 'nrNrm.yaml#/components/schemas/SnssaiList' - commModelList: - $ref: '#/components/schemas/CommModelList' - - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' - - type: object - properties: - EP_N22: - $ref: '#/components/schemas/EP_N22-Multiple' - EP_N31: - $ref: '#/components/schemas/EP_N31-Multiple' - SmsfFunction-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' - - type: object - properties: - plmnIdList: - $ref: 'nrNrm.yaml#/components/schemas/PlmnIdList' - sBIFqdn: - type: string - managedNFProfile: - $ref: '#/components/schemas/ManagedNFProfile' - commModelList: - $ref: '#/components/schemas/CommModelList' - - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' - - type: object - properties: - EP_N20: - $ref: '#/components/schemas/EP_N20-Multiple' - EP_N21: - $ref: '#/components/schemas/EP_N21-Multiple' - EP_MAP_SMSC: - $ref: '#/components/schemas/EP_MAP_SMSC-Multiple' - LmfFunction-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' - - type: object - properties: - plmnIdList: - $ref: 'nrNrm.yaml#/components/schemas/PlmnIdList' - managedNFProfile: - $ref: '#/components/schemas/ManagedNFProfile' - commModelList: - $ref: '#/components/schemas/CommModelList' - - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' - - type: object - properties: - EP_NLS: - $ref: '#/components/schemas/EP_NLS-Multiple' - NgeirFunction-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' - - type: object - properties: - plmnIdList: - $ref: 'nrNrm.yaml#/components/schemas/PlmnIdList' - sBIFqdn: - type: string - snssaiList: - $ref: 'nrNrm.yaml#/components/schemas/SnssaiList' - managedNFProfile: - $ref: '#/components/schemas/ManagedNFProfile' - commModelList: - $ref: '#/components/schemas/CommModelList' - - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' - - type: object - properties: - EP_N17: - $ref: '#/components/schemas/EP_N17-Multiple' - SeppFunction-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' - - type: object - properties: - plmnId: - $ref: 'nrNrm.yaml#/components/schemas/PlmnId' - sEPPType: - $ref: '#/components/schemas/SEPPType' - sEPPId: - type: integer - fqdn: - $ref: 'genericNrm.yaml#/components/schemas/Fqdn' - - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' - - type: object - properties: - EP_N32: - $ref: '#/components/schemas/EP_N32-Multiple' - NwdafFunction-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' - - type: object - properties: - plmnIdList: - $ref: 'nrNrm.yaml#/components/schemas/PlmnIdList' - sBIFqdn: - type: string - snssaiList: - $ref: 'nrNrm.yaml#/components/schemas/SnssaiList' - managedNFProfile: - $ref: '#/components/schemas/ManagedNFProfile' - commModelList: - $ref: '#/components/schemas/CommModelList' - networkSliceInfoList: - $ref: '#/components/schemas/NetworkSliceInfoList' - - ScpFunction-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' - - type: object - properties: - supportedFuncList: - $ref: '#/components/schemas/SupportedFuncList' - address: - $ref: 'genericNrm.yaml#/components/schemas/HostAddr' - - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' - NefFunction-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' - - type: object - properties: - sBIFqdn: - type: string - snssaiList: - $ref: 'nrNrm.yaml#/components/schemas/SnssaiList' - managedNFProfile: - $ref: '#/components/schemas/ManagedNFProfile' - capabilityList: - $ref: '#/components/schemas/CapabilityList' - isCAPIFSup: - type: boolean - - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' - - type: object - properties: - EP_N33: - $ref: '#/components/schemas/EP_N33-Multiple' - NsacfFunction-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' - - type: object - properties: - managedNFProfile: - $ref: '#/components/schemas/ManagedNFProfile' - nsacfInfoSnssai: - type: array - items: - $ref: '#/components/schemas/NsacfInfoSnssai' - - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' - - type: object - properties: - EP_N60: - $ref: '#/components/schemas/EP_N60-Multiple' - - DDNMFFunction-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' - - type: object - properties: - plmnId: - $ref: 'nrNrm.yaml#/components/schemas/PlmnId' - sBIFqdn: - type: string - managedNFProfile: - $ref: '#/components/schemas/ManagedNFProfile' - commModelList: - $ref: '#/components/schemas/CommModelList' - - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' - - type: object - properties: - EP_N64: - $ref: '#/components/schemas/EP_N64-Multiple' - EP_N65: - $ref: '#/components/schemas/EP_N65-Multiple' - EP_N66: - $ref: '#/components/schemas/EP_N66-Multiple' - - ExternalAmfFunction-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' - - type: object - properties: - plmnIdList: - $ref: 'nrNrm.yaml#/components/schemas/PlmnIdList' - amfIdentifier: - $ref: '#/components/schemas/AmfIdentifier' - ExternalNrfFunction-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' - - type: object - properties: - plmnIdList: - $ref: 'nrNrm.yaml#/components/schemas/PlmnIdList' - ExternalNssfFunction-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' - - type: object - properties: - plmnIdList: - $ref: 'nrNrm.yaml#/components/schemas/PlmnIdList' - ExternalSeppFunction-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' - - type: object - properties: - plmnId: - $ref: 'nrNrm.yaml#/components/schemas/PlmnId' - sEPPId: - type: integer - fqdn: - $ref: 'genericNrm.yaml#/components/schemas/Fqdn' - - - EP_N2-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' - - type: object - properties: - localAddress: - $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' - remoteAddress: - $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' - EP_N3-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' - - type: object - properties: - localAddress: - $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' - remoteAddress: - $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' - epTransportRefs: - $ref: 'genericNrm.yaml#/components/schemas/DnList' - EP_N4-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' - - type: object - properties: - localAddress: - $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' - remoteAddress: - $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' - EP_N5-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' - - type: object - properties: - localAddress: - $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' - remoteAddress: - $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' - EP_N6-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' - - type: object - properties: - localAddress: - $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' - remoteAddress: - $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' - EP_N7-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' - - type: object - properties: - localAddress: - $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' - remoteAddress: - $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' - EP_N8-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' - - type: object - properties: - localAddress: - $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' - remoteAddress: - $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' - EP_N9-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' - - type: object - properties: - localAddress: - $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' - remoteAddress: - $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' - EP_N10-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' - - type: object - properties: - localAddress: - $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' - remoteAddress: - $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' - EP_N11-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' - - type: object - properties: - localAddress: - $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' - remoteAddress: - $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' - EP_N12-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' - - type: object - properties: - localAddress: - $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' - remoteAddress: - $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' - EP_N13-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' - - type: object - properties: - localAddress: - $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' - remoteAddress: - $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' - EP_N14-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' - - type: object - properties: - localAddress: - $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' - remoteAddress: - $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' - EP_N15-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' - - type: object - properties: - localAddress: - $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' - remoteAddress: - $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' - EP_N16-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' - - type: object - properties: - localAddress: - $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' - remoteAddress: - $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' - EP_N17-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' - - type: object - properties: - localAddress: - $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' - remoteAddress: - $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' - - EP_N20-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' - - type: object - properties: - localAddress: - $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' - remoteAddress: - $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' - - EP_N21-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' - - type: object - properties: - localAddress: - $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' - remoteAddress: - $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' - EP_N22-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' - - type: object - properties: - localAddress: - $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' - remoteAddress: - $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' - - EP_N26-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' - - type: object - properties: - localAddress: - $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' - remoteAddress: - $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' - EP_N27-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' - - type: object - properties: - localAddress: - $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' - remoteAddress: - $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' - - - EP_N31-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' - - type: object - properties: - localAddress: - $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' - remoteAddress: - $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' - EP_N32-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' - - type: object - properties: - remotePlmnId: - $ref: 'nrNrm.yaml#/components/schemas/PlmnId' - remoteSeppAddress: - $ref: 'genericNrm.yaml#/components/schemas/HostAddr' - remoteSeppId: - type: integer - n32cParas: - type: string - n32fPolicy: - type: string - withIPX: - type: boolean - EP_N33-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' - - type: object - properties: - localAddress: - $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' - remoteAddress: - $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' - EP_S5C-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' - - type: object - properties: - localAddress: - $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' - remoteAddress: - $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' - EP_S5U-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' - - type: object - properties: - localAddress: - $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' - remoteAddress: - $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' - EP_Rx-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' - - type: object - properties: - localAddress: - $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' - remoteAddress: - $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' - EP_MAP_SMSC-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' - - type: object - properties: - localAddress: - $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' - remoteAddress: - $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' - EP_NLS-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' - - type: object - properties: - localAddress: - $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' - remoteAddress: - $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' - EP_NLG-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' - - type: object - properties: - localAddress: - $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' - remoteAddress: - $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' - - EP_N60-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' - - type: object - properties: - localAddress: - $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' - remoteAddress: - $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' - EP_N64-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' - - type: object - properties: - localAddress: - $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' - remoteAddress: - $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' - EP_N65-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' - - type: object - properties: - localAddress: - $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' - remoteAddress: - $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' - EP_N66-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' - - type: object - properties: - localAddress: - $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' - remoteAddress: - $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' - - FiveQiDscpMappingSet-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top' - - type: object - properties: - attributes: - allOf: - - type: object - properties: - FiveQiDscpMappingList: - type: array - items: - $ref: '#/components/schemas/FiveQiDscpMapping' - - FiveQICharacteristics-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' - - type: object - properties: - fiveQIValue: - type: integer - resourceType: - type: string - enum: - - GBR - - NonGBR - priorityLevel: - type: integer - packetDelayBudget: - type: integer - packetErrorRate: - $ref: '#/components/schemas/PacketErrorRate' - averagingWindow: - type: integer - maximumDataBurstVolume: - type: integer - FiveQICharacteristics-Multiple: - type: array - items: - $ref: '#/components/schemas/FiveQICharacteristics-Single' - Configurable5QISet-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top' - - type: object - properties: - attributes: - allOf: - - type: object - properties: - configurable5QIs: - type: array - items: - $ref: '#/components/schemas/FiveQICharacteristics-Multiple' - - Dynamic5QISet-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top' - - type: object - properties: - attributes: - allOf: - - type: object - properties: - dynamic5QIs: - type: array - items: - $ref: '#/components/schemas/FiveQICharacteristics-Multiple' - - GtpUPathQoSMonitoringControl-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top' - - type: object - properties: - attributes: - allOf: - - type: object - properties: - gtpUPathQoSMonitoringState: - type: string - enum: - - ENABLED - - DISABLED - gtpUPathMonitoredSNSSAIs: - type: array - items: - $ref: 'nrNrm.yaml#/components/schemas/Snssai' - monitoredDSCPs: - type: array - items: - type: integer - minimum: 0 - maximum: 255 - isEventTriggeredGtpUPathMonitoringSupported: - type: boolean - isPeriodicGtpUMonitoringSupported: - type: boolean - isImmediateGtpUMonitoringSupported: - type: boolean - gtpUPathDelayThresholds: - $ref: '#/components/schemas/GtpUPathDelayThresholdsType' - gtpUPathMinimumWaitTime: - type: integer - gtpUPathMeasurementPeriod: - type: integer - - QFQoSMonitoringControl-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top' - - type: object - properties: - attributes: - allOf: - - type: object - properties: - qFQoSMonitoringState: - type: string - enum: - - ENABLED - - DISABLED - qFMonitoredSNSSAIs: - type: array - items: - $ref: 'nrNrm.yaml#/components/schemas/Snssai' - qFMonitored5QIs: - type: array - items: - type: integer - minimum: 0 - maximum: 255 - isEventTriggeredQFMonitoringSupported: - type: boolean - isPeriodicQFMonitoringSupported: - type: boolean - isSessionReleasedQFMonitoringSupported: - type: boolean - qFPacketDelayThresholds: - $ref: '#/components/schemas/QFPacketDelayThresholdsType' - qFMinimumWaitTime: - type: integer - qFMeasurementPeriod: - type: integer - - PredefinedPccRuleSet-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top' - - type: object - properties: - attributes: - allOf: - - type: object - properties: - predefinedPccRules: - type: array - items: - $ref: '#/components/schemas/PccRule' - -#-------- Definition of JSON arrays for name-contained IOCs ---------------------- - - SubNetwork-Multiple: - type: array - items: - $ref: '#/components/schemas/SubNetwork-Single' - ManagedElement-Multiple: - type: array - items: - $ref: '#/components/schemas/ManagedElement-Single' - AmfFunction-Multiple: - type: array - items: - $ref: '#/components/schemas/AmfFunction-Single' - SmfFunction-Multiple: - type: array - items: - $ref: '#/components/schemas/SmfFunction-Single' - UpfFunction-Multiple: - type: array - items: - $ref: '#/components/schemas/UpfFunction-Single' - N3iwfFunction-Multiple: - type: array - items: - $ref: '#/components/schemas/N3iwfFunction-Single' - PcfFunction-Multiple: - type: array - items: - $ref: '#/components/schemas/PcfFunction-Single' - AusfFunction-Multiple: - type: array - items: - $ref: '#/components/schemas/AusfFunction-Single' - UdmFunction-Multiple: - type: array - items: - $ref: '#/components/schemas/UdmFunction-Single' - UdrFunction-Multiple: - type: array - items: - $ref: '#/components/schemas/UdrFunction-Single' - UdsfFunction-Multiple: - type: array - items: - $ref: '#/components/schemas/UdsfFunction-Single' - NrfFunction-Multiple: - type: array - items: - $ref: '#/components/schemas/NrfFunction-Single' - NssfFunction-Multiple: - type: array - items: - $ref: '#/components/schemas/NssfFunction-Single' - SmsfFunction-Multiple: - type: array - items: - $ref: '#/components/schemas/SmsfFunction-Single' - LmfFunction-Multiple: - type: array - items: - $ref: '#/components/schemas/LmfFunction-Single' - NgeirFunction-Multiple: - type: array - items: - $ref: '#/components/schemas/NgeirFunction-Single' - SeppFunction-Multiple: - type: array - items: - $ref: '#/components/schemas/SeppFunction-Single' - NwdafFunction-Multiple: - type: array - items: - $ref: '#/components/schemas/NwdafFunction-Single' - ScpFunction-Multiple: - type: array - items: - $ref: '#/components/schemas/ScpFunction-Single' - NefFunction-Multiple: - type: array - items: - $ref: '#/components/schemas/NefFunction-Single' - - NsacfFunction-Multiple: - type: array - items: - $ref: '#/components/schemas/NsacfFunction-Single' - - ExternalAmfFunction-Multiple: - type: array - items: - $ref: '#/components/schemas/ExternalAmfFunction-Single' - ExternalNrfFunction-Multiple: - type: array - items: - $ref: '#/components/schemas/ExternalNrfFunction-Single' - ExternalNssfFunction-Multiple: - type: array - items: - $ref: '#/components/schemas/ExternalNssfFunction-Single' - ExternalSeppFunction-Nultiple: - type: array - items: - $ref: '#/components/schemas/ExternalSeppFunction-Single' - - AmfSet-Multiple: - type: array - items: - $ref: '#/components/schemas/AmfSet-Single' - AmfRegion-Multiple: - type: array - items: - $ref: '#/components/schemas/AmfRegion-Single' - - EP_N2-Multiple: - type: array - items: - $ref: '#/components/schemas/EP_N2-Single' - EP_N3-Multiple: - type: array - items: - $ref: '#/components/schemas/EP_N3-Single' - EP_N4-Multiple: - type: array - items: - $ref: '#/components/schemas/EP_N4-Single' - EP_N5-Multiple: - type: array - items: - $ref: '#/components/schemas/EP_N5-Single' - EP_N6-Multiple: - type: array - items: - $ref: '#/components/schemas/EP_N6-Single' - EP_N7-Multiple: - type: array - items: - $ref: '#/components/schemas/EP_N7-Single' - EP_N8-Multiple: - type: array - items: - $ref: '#/components/schemas/EP_N8-Single' - EP_N9-Multiple: - type: array - items: - $ref: '#/components/schemas/EP_N9-Single' - EP_N10-Multiple: - type: array - items: - $ref: '#/components/schemas/EP_N10-Single' - EP_N11-Multiple: - type: array - items: - $ref: '#/components/schemas/EP_N11-Single' - EP_N12-Multiple: - type: array - items: - $ref: '#/components/schemas/EP_N12-Single' - EP_N13-Multiple: - type: array - items: - $ref: '#/components/schemas/EP_N13-Single' - EP_N14-Multiple: - type: array - items: - $ref: '#/components/schemas/EP_N14-Single' - EP_N15-Multiple: - type: array - items: - $ref: '#/components/schemas/EP_N15-Single' - EP_N16-Multiple: - type: array - items: - $ref: '#/components/schemas/EP_N16-Single' - EP_N17-Multiple: - type: array - items: - $ref: '#/components/schemas/EP_N17-Single' - - EP_N20-Multiple: - type: array - items: - $ref: '#/components/schemas/EP_N20-Single' - EP_N21-Multiple: - type: array - items: - $ref: '#/components/schemas/EP_N21-Single' - EP_N22-Multiple: - type: array - items: - $ref: '#/components/schemas/EP_N22-Single' - - EP_N26-Multiple: - type: array - items: - $ref: '#/components/schemas/EP_N26-Single' - EP_N27-Multiple: - type: array - items: - $ref: '#/components/schemas/EP_N27-Single' - - EP_N31-Multiple: - type: array - items: - $ref: '#/components/schemas/EP_N31-Single' - EP_N32-Multiple: - type: array - items: - $ref: '#/components/schemas/EP_N32-Single' - EP_N33-Multiple: - type: array - items: - $ref: '#/components/schemas/EP_N33-Single' - EP_S5C-Multiple: - type: array - items: - $ref: '#/components/schemas/EP_S5C-Single' - EP_S5U-Multiple: - type: array - items: - $ref: '#/components/schemas/EP_S5U-Single' - EP_Rx-Multiple: - type: array - items: - $ref: '#/components/schemas/EP_Rx-Single' - EP_MAP_SMSC-Multiple: - type: array - items: - $ref: '#/components/schemas/EP_MAP_SMSC-Single' - EP_NLS-Multiple: - type: array - items: - $ref: '#/components/schemas/EP_NLS-Single' - EP_NLG-Multiple: - type: array - items: - $ref: '#/components/schemas/EP_NLG-Single' - EP_N60-Multiple: - type: array - items: - $ref: '#/components/schemas/EP_N60-Single' - EP_N64-Multiple: - type: array - items: - $ref: '#/components/schemas/EP_N64-Single' - EP_N65-Multiple: - type: array - items: - $ref: '#/components/schemas/EP_N65-Single' - EP_N66-Multiple: - type: array - items: - $ref: '#/components/schemas/EP_N66-Single' - Configurable5QISet-Multiple: - type: array - items: - $ref: '#/components/schemas/Configurable5QISet-Single' - Dynamic5QISet-Multiple: - type: array - items: - $ref: '#/components/schemas/Dynamic5QISet-Single' - - - -#------------ Definitions in TS 28.541 for TS 28.532 ----------------------------- - - resources-5gcNrm: - oneOf: - - $ref: '#/components/schemas/SubNetwork-Single' - - $ref: '#/components/schemas/ManagedElement-Single' - - $ref: '#/components/schemas/AmfFunction-Single' - - $ref: '#/components/schemas/SmfFunction-Single' - - $ref: '#/components/schemas/UpfFunction-Single' - - $ref: '#/components/schemas/N3iwfFunction-Single' - - $ref: '#/components/schemas/PcfFunction-Single' - - $ref: '#/components/schemas/AusfFunction-Single' - - $ref: '#/components/schemas/UdmFunction-Single' - - $ref: '#/components/schemas/UdrFunction-Single' - - $ref: '#/components/schemas/UdsfFunction-Single' - - $ref: '#/components/schemas/NrfFunction-Single' - - $ref: '#/components/schemas/NssfFunction-Single' - - $ref: '#/components/schemas/SmsfFunction-Single' - - $ref: '#/components/schemas/LmfFunction-Single' - - $ref: '#/components/schemas/NgeirFunction-Single' - - $ref: '#/components/schemas/SeppFunction-Single' - - $ref: '#/components/schemas/NwdafFunction-Single' - - $ref: '#/components/schemas/ScpFunction-Single' - - $ref: '#/components/schemas/NefFunction-Single' - - $ref: '#/components/schemas/NsacfFunction-Single' - - - $ref: '#/components/schemas/ExternalAmfFunction-Single' - - $ref: '#/components/schemas/ExternalNrfFunction-Single' - - $ref: '#/components/schemas/ExternalNssfFunction-Single' - - $ref: '#/components/schemas/ExternalSeppFunction-Single' - - - $ref: '#/components/schemas/AmfSet-Single' - - $ref: '#/components/schemas/AmfRegion-Single' - - $ref: '#/components/schemas/QFQoSMonitoringControl-Single' - - $ref: '#/components/schemas/GtpUPathQoSMonitoringControl-Single' - - - $ref: '#/components/schemas/EP_N2-Single' - - $ref: '#/components/schemas/EP_N3-Single' - - $ref: '#/components/schemas/EP_N4-Single' - - $ref: '#/components/schemas/EP_N5-Single' - - $ref: '#/components/schemas/EP_N6-Single' - - $ref: '#/components/schemas/EP_N7-Single' - - $ref: '#/components/schemas/EP_N8-Single' - - $ref: '#/components/schemas/EP_N9-Single' - - $ref: '#/components/schemas/EP_N10-Single' - - $ref: '#/components/schemas/EP_N11-Single' - - $ref: '#/components/schemas/EP_N12-Single' - - $ref: '#/components/schemas/EP_N13-Single' - - $ref: '#/components/schemas/EP_N14-Single' - - $ref: '#/components/schemas/EP_N15-Single' - - $ref: '#/components/schemas/EP_N16-Single' - - $ref: '#/components/schemas/EP_N17-Single' - - - $ref: '#/components/schemas/EP_N20-Single' - - $ref: '#/components/schemas/EP_N21-Single' - - $ref: '#/components/schemas/EP_N22-Single' - - - $ref: '#/components/schemas/EP_N26-Single' - - $ref: '#/components/schemas/EP_N27-Single' - - - $ref: '#/components/schemas/EP_N31-Single' - - $ref: '#/components/schemas/EP_N32-Single' - - $ref: '#/components/schemas/EP_N33-Single' - - $ref: '#/components/schemas/EP_N60-Single' - - - $ref: '#/components/schemas/EP_S5C-Single' - - $ref: '#/components/schemas/EP_S5U-Single' - - $ref: '#/components/schemas/EP_Rx-Single' - - $ref: '#/components/schemas/EP_MAP_SMSC-Single' - - $ref: '#/components/schemas/EP_NLS-Single' - - $ref: '#/components/schemas/EP_NLG-Single' - - $ref: '#/components/schemas/Configurable5QISet-Single' - - $ref: '#/components/schemas/FiveQiDscpMappingSet-Single' - - $ref: '#/components/schemas/PredefinedPccRuleSet-Single' - - $ref: '#/components/schemas/Dynamic5QISet-Single' diff --git a/OpenAPI/PerDataFileReportMnS.yaml b/OpenAPI/PerDataFileReportMnS.yaml deleted file mode 100644 index 83fd77acb..000000000 --- a/OpenAPI/PerDataFileReportMnS.yaml +++ /dev/null @@ -1,13 +0,0 @@ -openapi: 3.0.1 -info: - title: TS 28.532 File data reporting Service - version: 16.6.0 - description: >- - OAS 3.0.1 specification of the File data reporting Management Service © 2020, - 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). All - rights reserved. -externalDocs: - description: 3GPP TS 28.532 V16.5.0; Generic management services - url: 'http://www.3gpp.org/ftp/Specs/archive/28_series/28.532/' -paths: {} - diff --git a/OpenAPI/PerMeasJobCtlMnS.yaml b/OpenAPI/PerMeasJobCtlMnS.yaml deleted file mode 100644 index b6abe58b2..000000000 --- a/OpenAPI/PerMeasJobCtlMnS.yaml +++ /dev/null @@ -1,280 +0,0 @@ -openapi: 3.0.1 -info: - title: TS 28.550 Performance Measurement Job Control Service - version: 16.5.0 - description: >- - OAS 3.0.1 specification of the Performance Measurement Job Control Service - @ 2020, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). - All rights reserved. -externalDocs: - description: 3GPP TS 28.550 V16.5.0; Performance assurance - url: http://www.3gpp.org/ftp/Specs/archive/28_series/28.550/ -servers: - - url: 'http://{URI-DN-prefix}/{root}/PerfMeasJobCtrlMnS/v1650/{LDN-first-part}' - variables: - URI-DN-prefix: - description: See subclause 4.4 of TS 32.158 - default: example.com - root: - description: See subclause 4.4 of TS 32.158 - default: 3GPPManagement - LDN-first-part: - description: See subclause 4.4 of TS 32.158 - default: '' -paths: - /measJobs: - post: - summary: Create a measurement job - description: To create a measurement job the representation of the measurement job is POSTed on the /measJobs collection resource. - requestBody: - required: true - content: - application/json: - schema: - $ref: '#/components/schemas/measJobCreation-RequestType' - responses: - '201': - description: Success case ("201 Created"). The representation of the newly created measurement job resource shall be returned. - content: - application/json: - schema: - $ref: '#/components/schemas/measJobCreation-ResponseType' - '202': - description: Partial success case ("202 Partically created"). The representation of the newly created measurement job resource with unsupported list shall be returned. - content: - application/json: - schema: - $ref: '#/components/schemas/measJobCreation-ResponseType' - default: - description: Error case. - content: - application/json: - schema: - $ref: '#/components/schemas/error-ResponseType' - get: - summary: Read resources of measurement jobs - description: 'With HTTP GET, resources of measurement jobs are read. The resources to be read are identified with the path component (base resource) and the query component (jobIdList) of the URI. The fields query component allows to select the resource properties to be returned.' - parameters: - - name: jobIdList - in: query - description: This parameter identifies the list of jobId to select the resources from the collection resources identified with the path component of the URI. - required: true - schema: - type: array - items: - type: string - responses: - '200': - description: 'Success case ("200 OK"). The resources identified in the request for retrieval are returned in the response message body. In case the fields query parameter is used, the selected resources are returned.' - content: - application/json: - schema: - $ref: '#/components/schemas/measJobsRetrieval-ResponseType' - default: - description: Error case. - content: - application/json: - schema: - $ref: '#/components/schemas/error-ResponseType' - '/measJobs/{jobId}': - get: - summary: Read resource of a single measurement job - description: 'With HTTP GET, resource of a measurement job is read. The resource to be read is identified with the path component of the URI.' - parameters: - - name: jobId - in: path - description: Identifies the measurement job to be read. - required: true - schema: - $ref: '#/components/schemas/uri-Type' - responses: - '200': - description: 'Success case ("200 OK"). The resource identified in the path for retrieval is returned in the response message body. ' - content: - application/json: - schema: - $ref: '#/components/schemas/measJobsRetrieval-ResponseType' - default: - description: Error case. - content: - application/json: - schema: - $ref: '#/components/schemas/error-ResponseType' - delete: - summary: Delete a single measurement job - description: The measurement job is deleted by deleting the corresponding measurement job resource. The resource to be deleted is identified with the path component of the URI. - parameters: - - name: jobId - in: path - description: Identifies the measurement job to be deleted. - required: true - schema: - $ref: '#/components/schemas/uri-Type' - responses: - '204': - description: Success case ("204 No Content"). The measurement job resource has been deleted. The response message body is absent. - default: - description: Error case. - content: - application/json: - schema: - $ref: '#/components/schemas/error-ResponseType' -components: - schemas: - dateTime-Type: - type: string - format: date-Time - uri-Type: - type: string - measJobCreation-RequestType: - type: object - properties: - iOCName: - type: string - iOCInstanceList: - type: array - items: - $ref: '#/components/schemas/uri-Type' - measurementCategoryList: - type: array - items: - type: string - reportingMethod: - $ref: '#/components/schemas/reportingMethod-Type' - granularityPeriod: - type: integer - reportingPeriod: - type: integer - startTime: - $ref: '#/components/schemas/dateTime-Type' - stopTime: - $ref: '#/components/schemas/dateTime-Type' - schedule: - $ref: '#/components/schemas/schedule-Type' - streamTarget: - type: string - priority: - $ref: '#/components/schemas/priority-Type' - reliability: - type: string - measJobCreation-ResponseType: - type: object - properties: - unsupportedList: - type: array - items: - $ref: '#/components/schemas/unsupportedMeas-Type' - measJobsRetrieval-ResponseType: - type: object - properties: - jobInfoList: - type: array - items: - $ref: '#/components/schemas/measJobInfo-ResourceType' - error-ResponseType: - type: object - properties: - error: - type: object - properties: - errorInfo: - type: string - measJobInfo-ResourceType: - type: object - properties: - href: - $ref: '#/components/schemas/uri-Type' - iOCName: - type: string - iOCInstanceList: - type: array - items: - $ref: '#/components/schemas/uri-Type' - measurementCategoryList: - type: array - items: - type: string - reportingMethod: - $ref: '#/components/schemas/reportingMethod-Type' - granularityPeriod: - type: integer - reportingPeriod: - type: integer - startTime: - $ref: '#/components/schemas/dateTime-Type' - stopTime: - $ref: '#/components/schemas/dateTime-Type' - schedule: - $ref: '#/components/schemas/schedule-Type' - streamTarget: - type: string - priority: - $ref: '#/components/schemas/priority-Type' - reliability: - type: string - schedule-Type: - type: object - properties: - scheduleOption: - $ref: '#/components/schemas/scheduleOption-Type' - dailySchedule: - type: array - items: - $ref: '#/components/schemas/timeInterval-Type' - weeklySchedule: - type: array - items: - $ref: '#/components/schemas/scheduleOfDay-Type' - timeInterval-Type: - type: object - properties: - intervalStart: - type: string - format: Time - intervalEnd: - type: string - format: Time - scheduleOfDay-Type: - type: object - properties: - dayOfWeek: - $ref: '#/components/schemas/dayOfWeek-Type' - intervalsOfDay: - type: array - items: - $ref: '#/components/schemas/timeInterval-Type' - unsupportedMeas-Type: - type: object - properties: - iOCInstance: - $ref: '#/components/schemas/uri-Type' - measurementTypeName: - type: string - reason: - type: string - reportingMethod-Type: - type: string - enum: - - file - - streaming - priority-Type: - type: string - enum: - - low - - medium - - high - scheduleOption-Type: - type: string - enum: - - daily - - weekly - dayOfWeek-Type: - type: string - enum: - - Monday - - Tuesday - - Wednesday - - Thursday - - Friday - - Saturday - - Sunday diff --git a/OpenAPI/PerThresMonMnS.yaml b/OpenAPI/PerThresMonMnS.yaml deleted file mode 100644 index 923640a11..000000000 --- a/OpenAPI/PerThresMonMnS.yaml +++ /dev/null @@ -1,102 +0,0 @@ -openapi: 3.0.1 -info: - title: TS 28.532 Performance Threshold Monitoring Service - version: 16.4.0 - description: OAS 3.0.1 specification of the Performance Threshold Monitoring Service -servers: - - url: 'http://{monitoringNotifTarget}' - variables: - monitoringNotifTarget: - description: >- - The open API server of the performance threshold monitoring service is - located in the consumer side, see monitoringNotifTarget attribute of - the IOC ThresholdMonitor defined in 3GPP TS 28.622 [11]. - default: example.com -paths: - /notificationSink: - post: - summary: Send notifications about performance threshold crossing - description: To send a notifyThresholdCrossing notification - requestBody: - required: true - content: - application/json: - schema: - $ref: '#/components/schemas/notifyThresholdCrossing-NotifType' - responses: - '204': - description: >- - Success case ("204 No Content"). The notification is successfully - delivered. The response message body is absent. - default: - description: Error case. - content: - application/json: - schema: - $ref: '#/components/schemas/error-ResponseType' -components: - schemas: - dateTime-Type: - type: string - format: date-Time - uri-Type: - type: string - long-Type: - type: string - format: long - thresholdLevel-Type: - type: integer - measurementTypeName-Type: - type: string - measurementValue-Type: - type: string - additionalText-Type: - type: string - error-ResponseType: - type: object - properties: - error: - type: object - properties: - errorInfo: - type: string - header-Type: - description: Header used in notifications as notification header - type: object - properties: - uri: - $ref: '#/components/schemas/uri-Type' - notificationId: - $ref: '#/components/schemas/notificationId-Type' - notificationType: - $ref: '#/components/schemas/notificationType-Type' - eventTime: - $ref: '#/components/schemas/dateTime-Type' - notificationId-Type: - $ref: '#/components/schemas/long-Type' - notificationType-Type: - type: string - enum: - - notifyThresholdCrossing - notifyThresholdCrossing-NotifType: - type: object - properties: - header: - $ref: '#/components/schemas/header-Type' - body: - type: object - properties: - startOfMonitoringGP: - $ref: '#/components/schemas/dateTime-Type' - endOfMonitoringGP: - $ref: '#/components/schemas/dateTime-Type' - monitoredObjectInstance: - $ref: '#/components/schemas/uri-Type' - thresholdLevel: - $ref: '#/components/schemas/thresholdLevel-Type' - measurementTypeName: - $ref: '#/components/schemas/measurementTypeName-Type' - measurementValue: - $ref: '#/components/schemas/measurementValue-Type' - additionalText: - $ref: '#/components/schemas/additionalText-Type' diff --git a/OpenAPI/PerfDataStreamingMnS.yaml b/OpenAPI/PerfDataStreamingMnS.yaml deleted file mode 100644 index e040e14c8..000000000 --- a/OpenAPI/PerfDataStreamingMnS.yaml +++ /dev/null @@ -1,363 +0,0 @@ -openapi: 3.0.1 -info: - title: TS 28.550 Performance Data Streaming Service - version: 16.3.0 - description: OAS 3.0.1 specification of the Performance Data Streaming Service -servers: - - url: 'http://{streamTarget}/PerfDataStreamMnS/v1630' - description: This URL is used for posting the set of information about streams supported on the connection between the producer and the consumer. - variables: - streamTarget: - description: 'The open API server of the performance data streaming service is located in the consumer side,and the “streamTarget” part corresponds to the streamTarget parameter provided in the createMeasurementJob operation (see clause 6.1.1.2) or the streamTarget attribute of the MOI of MeasurementControlor MeasurementReader, see 3GPP TS 28.622 [5]).' - default: example.com - - url: 'wss://{streamTarget}/PerfDataStreamMnS/v1630/streamingConnection' - description: This URL is used for establishing the WebSocket connection for the performance data streaming service. - variables: - streamTarget: - description: 'The open API server of the performance data streaming service is located in the consumer side,and the “streamTarget” part corresponds to the streamTarget parameter provided in the createMeasurementJob operation (see clause 6.1.1.2) or the streamTarget attribute of the MOI of MeasurementControlor MeasurementReader, see 3GPP TS 28.622 [5]).' - default: example.com -paths: - /streamInfoList: - post: - summary: The set of information about the streams sent from the producer to the consumer - description: To send the streamInfoList from the producer to the consumer - requestBody: - required: true - content: - application/json: - schema: - $ref: '#/components/schemas/streamInfoListPost-RequestType' - responses: - '201': - description: Success case ("201 Posted"). The streamInfoList is successfully posted. - content: - application/json: - schema: - $ref: '#/components/schemas/streamInfoListPost-ResponseType' - '202': - description: Partial success case ("202 Partially posted"). The representation of the posted resource on stream information. - content: - application/json: - schema: - $ref: '#/components/schemas/streamInfoListPost-ResponseType' - default: - description: Error case. - content: - application/json: - schema: - $ref: '#/components/schemas/error-ResponseType' - get: - summary: Read resources of stream information from the streaming consumer - description: 'With HTTP GET, resources of stream information are read. The resources to be read are identified with the path component (base resource) and the query component (streamIdList) of the URI. The fields query component allows to select the resource properties to be returned.' - parameters: - - name: streamIdList - in: query - description: This parameter identifies the list of streamId to select from the collection resources identified with the path component of the URI. - required: true - schema: - type: array - items: - type: integer - responses: - '200': - description: 'Success case ("200 OK"). The resources identified in the request for retrieval are returned in the response message body. In case the fields query parameter is used, the selected resources are returned.' - content: - application/json: - schema: - $ref: '#/components/schemas/listOfStreamInfoRetrieval-ResponseType' - '202': - description: Partial success case ("202 Partially retrieved"). The representation of the retrieved resources on stream information. - content: - application/json: - schema: - $ref: '#/components/schemas/listOfStreamInfoRetrieval-ResponseType' - default: - description: Error case. - content: - application/json: - schema: - $ref: '#/components/schemas/error-ResponseType' - patch: - summary: Update resources of stream information to the streaming consumer - description: 'With HTTP PATCH, resources of stream information are to be updated. The resources to be updated are identified with the path component (base resource) and the query component (streamIdList) of the URI. The fields query component allows to select the resource properties to be updated.' - parameters: - - name: streamIdList - in: query - description: This parameter identifies the list of streamId to select from the collection resources identified with the path component of the URI. - required: true - schema: - type: array - items: - type: integer - requestBody: - required: true - content: - application/json: - schema: - $ref: '#/components/schemas/listOfStreamInfoToUpdate-RequestType' - responses: - '200': - description: Success case ("200 OK"). The resources selected by the query parameter are updated and returned in the response message body. - content: - application/json: - schema: - $ref: '#/components/schemas/listOfStreamInfoUpdate-ResponseType' - '202': - description: Partial success case ("202 Partially updated"). The representation of the updated resources on stream information - content: - application/json: - schema: - $ref: '#/components/schemas/listOfStreamInfoUpdate-ResponseType' - default: - description: Error case. - content: - application/json: - schema: - $ref: '#/components/schemas/error-ResponseType' - delete: - summary: The information of streams to be deleted by the producer to the consumer - description: 'With HTTP DELETE, resources of stream information are to be deleted. The resources to be deleted are identified with the path component (base resource) and the query component (streamIdList) of the URI. The fields query component allows to select the resource properties to be deleted.' - parameters: - - name: streamIdList - in: query - description: This parameter identifies the list of streamId to select from the collection resources identified with the path component of the URI. - required: true - schema: - type: array - items: - type: integer - responses: - '204': - description: Success case ("204 No Content"). The stream information resource has been deleted. The response message body is absent. - default: - description: Error case. - content: - application/json: - schema: - $ref: '#/components/schemas/error-ResponseType' - '/streamInfoList/{streamId}': - get: - summary: Read resource of the stream information from the streaming consumer - description: 'With HTTP GET, resource of stream information is read. The resource to be read is identified with the path component the URI.' - parameters: - - name: streamId - in: path - description: Identifies the stream for which the information is to be retrieved. - required: true - schema: - $ref: '#/components/schemas/uri-Type' - responses: - '200': - description: Success case ("200 OK"). The resource identified in the request for retrieval is returned in the response message body. - content: - application/json: - schema: - $ref: '#/components/schemas/listOfStreamInfoRetrieval-ResponseType' - default: - description: Error case. - content: - application/json: - schema: - $ref: '#/components/schemas/error-ResponseType' - patch: - summary: Update the resource of stream information to the streaming consumer - description: 'With HTTP PATCH, resource of stream information is to be updated. The resource to be updated is identified by the path component of the URI. ' - parameters: - - name: streamId - in: path - description: Identifies the stream for which the information is to be updated. - required: true - schema: - $ref: '#/components/schemas/uri-Type' - requestBody: - required: true - content: - application/json: - schema: - $ref: '#/components/schemas/streamInfoToUpdate-RequestType' - responses: - '200': - description: Success case ("200 OK"). The resources identified by the path of the URI is updated and returned in the response message body. - content: - application/json: - schema: - $ref: '#/components/schemas/streamInfoUpdate-ResponseType' - default: - description: Error case. - content: - application/json: - schema: - $ref: '#/components/schemas/error-ResponseType' - delete: - summary: The stream information to be deleted by the producer to the consumer - description: 'With HTTP DELETE, resource of stream information identified by the path component of the URI is to be deleted.' - parameters: - - name: streamId - in: path - description: Identifies the stream for which the information is to be deleted - required: true - schema: - $ref: '#/components/schemas/uri-Type' - responses: - '204': - description: Success case ("204 No Content"). The stream information resource has been deleted. The response message body is absent. - default: - description: Error case. - content: - application/json: - schema: - $ref: '#/components/schemas/error-ResponseType' - /streamConnection: - get: - summary: The connection for streaming from the producer to the consumer - description: To establish the WebSocket connection between the producer and the consumer. The HTTP version of this operation shall not be earlier than HTTP/1.1 - parameters: - - in: header - name: Upgrade - required: true - schema: - $ref: '#/components/schemas/Upgrade-HeaderType' - - in: header - name: Connection - required: true - schema: - $ref: '#/components/schemas/Connection-HeaderType' - - in: header - name: Sec-WebSocket-Key - required: true - schema: - $ref: '#/components/schemas/Sec-WebSocket-Key-HeaderType' - - in: header - name: Sec-WebSocket-Version - required: true - schema: - $ref: '#/components/schemas/Sec-WebSocket-Version-HeaderType' - responses: - '101': - description: Success case ("101 Switching Protocols "). The connection has been successfully switched to WebSocket. The response message body is absent. - headers: - Upgrade: - schema: - $ref: '#/components/schemas/Upgrade-HeaderType' - Connection: - schema: - $ref: '#/components/schemas/Connection-HeaderType' - Sec-WebSocket-Accept-HeaderType: - schema: - $ref: '#/components/schemas/Sec-WebSocket-Accept-HeaderType' - default: - description: Error case. - content: - application/json: - schema: - $ref: '#/components/schemas/error-ResponseType' -components: - schemas: - uri-Type: - type: string - streamInfoIn-Type: - type: object - properties: - streamId: - type: integer - iOCInstance: - $ref: '#/components/schemas/uri-Type' - measTypes: - type: array - items: - type: string - streamInfoOut-Type: - type: object - properties: - streamId: - $ref: '#/components/schemas/uri-Type' - iOCInstance: - $ref: '#/components/schemas/uri-Type' - measTypes: - type: array - items: - type: string - error-ResponseType: - type: object - properties: - error: - type: object - properties: - errorInfo: - type: string - streamInfoListPost-RequestType: - type: object - properties: - streamInfoList: - type: array - items: - $ref: '#/components/schemas/streamInfoIn-Type' - streamInfoListPost-ResponseType: - type: object - properties: - streamInfoListPosted: - type: array - items: - $ref: '#/components/schemas/streamInfoOut-Type' - streamInfoRetrieval-ResponseType: - type: object - properties: - streamInfoOut: - $ref: '#/components/schemas/streamInfoOut-Type' - listOfStreamInfoRetrieval-ResponseType: - type: object - properties: - listOfStreamInfoOut: - type: array - items: - $ref: '#/components/schemas/streamInfoOut-Type' - streamInfoToUpdatePropertyType: - type: object - properties: - iOCInstance: - description: 'The updated measured object instance, empty value means no update.' - allOf: - - $ref: '#/components/schemas/uri-Type' - measTypes: - description: 'The updated list of measurement type, empty value means no update.' - type: array - items: - type: string - streamInfoToUpdate-RequestType: - type: object - properties: - streamInfoToUpdate: - $ref: '#/components/schemas/streamInfoToUpdatePropertyType' - listOfStreamInfoToUpdate-RequestType: - type: object - properties: - listOfStreamInfoToUpdate: - type: array - items: - $ref: '#/components/schemas/streamInfoToUpdatePropertyType' - streamInfoUpdate-ResponseType: - type: object - properties: - streamInfoUpdated: - $ref: '#/components/schemas/streamInfoOut-Type' - listOfStreamInfoUpdate-ResponseType: - type: object - properties: - listOfStreamInfoUpdated: - type: array - items: - $ref: '#/components/schemas/streamInfoOut-Type' - Upgrade-HeaderType: - type: string - enum: - - websocket - Connection-HeaderType: - type: string - enum: - - Upgrade - Sec-WebSocket-Key-HeaderType: - type: string - Sec-WebSocket-Version-HeaderType: - type: string - Sec-WebSocket-Accept-HeaderType: - type: string diff --git a/OpenAPI/comDefs.yaml b/OpenAPI/comDefs.yaml deleted file mode 100644 index 04ab65161..000000000 --- a/OpenAPI/comDefs.yaml +++ /dev/null @@ -1,84 +0,0 @@ -openapi: 3.0.1 -info: - title: Common Type Definitions - version: 16.3.0 - description: >- - OAS 3.0.1 specification of common type definitions in the Generic NRM - © 2020, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). - All rights reserved. -externalDocs: - description: 3GPP TS 28.623 V16.3.0; Generic NRM, Common Type Definitions - url: http://www.3gpp.org/ftp/Specs/archive/28_series/28.623/ -paths: {} -components: - schemas: - Long: - type: string - format: long - Float: - type: string - format: float - DateTime: - type: string - format: date-Time - Dn: - type: string - Uri: - type: string - AttributeNameValuePairSet: - type: object - minProperties: 1 - AttributeValueChangeSet: - description: >- - The key in this map is the attribute name. The value of each key is an array. - When only one item is present in the array, it carries the new attribute - value. If two items are present, then the first item carries the old value - and the second item the new value. The items can be of any type including null. - type: object - additionalProperties: - type: array - minItems: 1 - maxItems: 2 - items: - nullable: true - Filter: - type: string - SystemDN: - type: string - NotificationId: - type: integer - NotificationHeader: - description: >- - Header used for all notifications types - type: object - required: - - uri - - notificationId - - notificationType - - eventTime - - systemDn - properties: - uri: - $ref: '#/components/schemas/Uri' - notificationId: - $ref: '#/components/schemas/NotificationId' - notificationType: - oneOf: - - $ref: 'faultMnS.yaml#/components/schemas/AlarmNotificationTypes' - #- $ref: 'provMnS.yaml#/components/schemas/CmNotificationTypes' - # more to be added - eventTime: - $ref: '#/components/schemas/DateTime' - systemDN: - $ref: '#/components/schemas/SystemDN' - ErrorResponse: - description: >- - Default schema for the response message body in case the request - is not successful. - type: object - properties: - error: - type: object - properties: - errorInfo: - type: string diff --git a/OpenAPI/coslaNrm.yaml b/OpenAPI/coslaNrm.yaml deleted file mode 100644 index e6a0ef13a..000000000 --- a/OpenAPI/coslaNrm.yaml +++ /dev/null @@ -1,168 +0,0 @@ -openapi: 3.0.2 - -info: - title: coslaNrm - version: 16.4.0 - description: - OAS 3.0.1 specification of the Cosla NRM - © 2020, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). - All rights reserved. - -externalDocs: - description: 3GPP TS 28.536 V16.4.0; Cosla NRM - url: http://www.3gpp.org/ftp/Specs/archive/28_series/28.536/ - -paths: {} - -components: - - schemas: - -#------------ Type definitions --------------------------------------------------- - - ControlLoopLifeCyclePhase: - type: string - enum: - - PREPARATION - - COMMISSIONING - - OPERATION - - DECOMMISSIONING - - ObservationTime: - type: integer - - AssuranceGoalStatusObserved: - type: string - enum: - - FULFILLED - - NOT_FULFILLED - - AssuranceGoalStatusPredicted: - type: string - enum: - - FULFILLED - - NOT_FULFILLED - - AssuranceTargetStatusObserved: - type: string - enum: - - FULFILLED - - NOT_FULFILLED - - AssuranceTargetStatusPredicted: - type: string - enum: - - FULFILLED - - NOT_FULFILLED - - AssuranceTarget: - type: object - properties: - assuranceTargetName: - type: string - assuranceTargetValue: - type: string - assuranceTargetStatusObserved: - $ref: '#/components/schemas/AssuranceTargetStatusObserved' - assuranceTargetStatusPredicted: - $ref: '#/components/schemas/AssuranceTargetStatusPredicted' - - AssuranceTargetList: - type: array - items: - $ref: '#/components/schemas/AssuranceTarget' - - -#-------- Definition of concrete IOCs -------------------------------------------- - - SubNetwork-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/SubNetwork-Attr' - - $ref: 'genericNrm.yaml#/components/schemas/SubNetwork-ncO' - - type: object - properties: - AssuranceClosedControlLoop: - $ref: '#/components/schemas/AssuranceClosedControlLoop-Multiple' - - ManagedElement-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/ManagedElement-Attr' - - $ref: 'genericNrm.yaml#/components/schemas/ManagedElement-ncO' - - type: object - properties: - AssuranceClosedControlLoop: - $ref: '#/components/schemas/AssuranceClosedControlLoop-Multiple' - - AssuranceClosedControlLoop-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top' - - type: object - properties: - attributes: - type: object - properties: - operationalState: - $ref: 'genericNrm.yaml#/components/schemas/OperationalState' - administrativeState: - $ref: 'genericNrm.yaml#/components/schemas/AdministrativeState' - controlLoopLifeCyclePhase: - $ref: '#/components/schemas/ControlLoopLifeCyclePhase' - AssuranceGoal: - $ref: '#/components/schemas/AssuranceGoal-Multiple' - - AssuranceGoal-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top' - - type: object - properties: - attributes: - allOf: - - type: object - properties: - observationTime: - $ref: '#/components/schemas/ObservationTime' - assuranceTargetList: - $ref: '#/components/schemas/AssuranceTargetList' - assuranceGoalStatusObserved: - $ref: '#/components/schemas/AssuranceGoalStatusObserved' - assuranceGoalStatusPredicted: - $ref: '#/components/schemas/AssuranceGoalStatusPredicted' - serviceProfileId: - type: string - sliceProfileId: - type: string - networkSliceRef: - $ref: 'comDefs.yaml#/components/schemas/Dn' - networkSliceSubnetRef: - $ref: 'comDefs.yaml#/components/schemas/Dn' - -#-------- Definition of JSON arrays for name-contained IOCs ---------------------- - - AssuranceClosedControlLoop-Multiple: - type: array - items: - $ref: '#/components/schemas/AssuranceClosedControlLoop-Single' - - AssuranceGoal-Multiple: - type: array - items: - $ref: '#/components/schemas/AssuranceGoal-Single' - -#------------ Definitions in TS 28.536 for TS 28.623 ----------------------------- - - resources-coslaNrm: - oneOf: - - $ref: '#/components/schemas/AssuranceClosedControlLoop-Single' - - $ref: '#/components/schemas/AssuranceGoal-Single' - - $ref: '#/components/schemas/SubNetwork-Single' - - $ref: '#/components/schemas/ManagedElement-Single' \ No newline at end of file diff --git a/OpenAPI/faultMnS.yaml b/OpenAPI/faultMnS.yaml deleted file mode 100644 index 499123b90..000000000 --- a/OpenAPI/faultMnS.yaml +++ /dev/null @@ -1,1144 +0,0 @@ -openapi: 3.0.1 -info: - title: Fault Supervision MnS - version: 16.4.0 - description: >- - OAS 3.0.1 definition of the Fault Supervision MnS - © 2020, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). - All rights reserved. -externalDocs: - description: 3GPP TS 28.532 V16.4.0; Generic management services - url: http://www.3gpp.org/ftp/Specs/archive/28_series/28.532/ -servers: - - url: '{MnSRoot}/FaultSupervisionMnS/{version}' - variables: - MnSRoot: - description: See subclause 4.4.3 of TS 32.158 - default: http://example.com/3GPPManagement - version: - description: Versi on number of the OpenAPI definition - default: XXX -paths: - /alarms: - get: - summary: Retrieve multiple alarms - description: >- - Retrieves the alarms identified by alarmAckState, baseObjectInstance - and filter. - parameters: - - name: alarmAckState - in: query - required: false - schema: - $ref: '#/components/schemas/AlarmAckState' - - name: baseObjectInstance - in: query - required: false - schema: - $ref: '#/components/schemas/Dn' - - name: filter - in: query - required: false - schema: - $ref: '#/components/schemas/Filter' - responses: - '200': - description: >- - Success case ("200 OK"). - Returns the alarms identified in the request. The alarmId is the key - of the map. - content: - application/json: - schema: - type: object - additionalProperties: - type: object - allOf: - - type: object - properties: - lastNotificationHeader: - $ref: '#/components/schemas/NotificationHeader' - - $ref: '#/components/schemas/AlarmRecord' - - type: object - properties: - comments: - $ref: '#/components/schemas/Comments' - default: - description: Response in case of error. - content: - application/json: - schema: - $ref: '#/components/schemas/ErrorResponse' - patch: - summary: 'Clear, acknowledge or unacknowledge multiple alarms' - description: >- - Clears, acknowledges or unacknowledges multiple alarms using patch. Depending - on which action is to be performed, different merge patch documents need - to be used. - requestBody: - description: >- - Patch documents for acknowledging and unacknowledging, or clearing multiple - alarms. The keys in the map are the alarmIds to be patched. - content: - application/merge-patch+json: - schema: - oneOf: - - type: object - additionalProperties: - $ref: '#/components/schemas/MergePatchAcknowledgeAlarm' - - type: object - additionalProperties: - $ref: '#/components/schemas/MergePatchClearAlarm' - responses: - '204': - description: >- - Success case ("204 No content"). - The response message body is empty. - default: - description: Response in case of error. - content: - application/json: - schema: - type: array - items: - $ref: '#/components/schemas/FailedAlarm' - /alarms/alarmCount: - get: - summary: Get the alarm count per perceived severity - parameters: - - name: alarmAckState - in: query - required: false - schema: - $ref: '#/components/schemas/AlarmAckState' - - name: filter - in: query - required: false - schema: - type: string - responses: - '200': - description: >- - Success case ("200 OK"). - The alarm count per perceived severity is returned. - content: - application/json: - schema: - $ref: '#/components/schemas/AlarmCount' - default: - description: Response in case of error. The error case needs rework. - content: - application/json: - schema: - $ref: '#/components/schemas/ErrorResponse' - /alarms/{alarmId}: - patch: - summary: 'Clear, acknowledge or unacknowledge a single alarm' - description: >- - Clears, acknowledges or uncknowldeges a single alarm by patching the alarm - information. A conditional acknowledge request based on the perceived - severity is not supported. - parameters: - - name: alarmId - in: path - description: Identifies the alarm to be patched. - required: true - schema: - type: string - requestBody: - required: true - content: - application/merge-patch+json: - schema: - oneOf: - - $ref: '#/components/schemas/MergePatchAcknowledgeAlarm' - - $ref: '#/components/schemas/MergePatchClearAlarm' - responses: - '204': - description: >- - Success case (204 No content). - The response message body is absent. - default: - description: Response in case of error. - content: - application/json: - schema: - $ref: '#/components/schemas/ErrorResponse' - /alarms/{alarmId}/comments: - post: - summary: Add a comment to a single alarm - description: >- - Adds a comment to an alarm identified by alarmId. The id of the new comment - is allocated by the producer. - parameters: - - name: alarmId - in: path - description: Identifies the alarm to which the comment shall be added. - required: true - schema: - type: string - requestBody: - required: true - content: - application/json: - schema: - $ref: '#/components/schemas/Comment' - responses: - '201': - description: >- - Success case (201 Created). - The representation of the newly created comment resource shall be returned. - content: - application/json: - schema: - $ref: '#/components/schemas/Comment' - headers: - Location: - description: URI of the newly created comment resource. - required: true - schema: - type: string - default: - description: Error case. - content: - application/json: - schema: - $ref: '#/components/schemas/ErrorResponse' - - /subscriptions: - post: - summary: Create a subscription - description: >- - To create a subscription the representation of the subscription is - POSTed on the /subscriptions collection resource. - requestBody: - required: true - content: - application/json: - schema: - $ref: '#/components/schemas/Subscription' - responses: - '201': - description: >- - Success case ("201 Created"). - The representation of the newly created subscription resource shall - be returned. - content: - application/json: - schema: - $ref: '#/components/schemas/Subscription' - headers: - Location: - description: URI of the newly created subscription resource - required: true - schema: - type: string - default: - description: Error case. - content: - application/json: - schema: - $ref: '#/components/schemas/ErrorResponse' - callbacks: - notifyNewAlarm: - '{request.body#/consumerReference}': - post: - requestBody: - required: true - content: - application/json: - schema: - oneOf: - - $ref: '#/components/schemas/NotifyNewAlarm' - - $ref: '#/components/schemas/NotifyNewSecAlarm' - responses: - '204': - description: >- - Success case ("204 No Content"). - The notification is successfully delivered. The response message - body is absent. - default: - description: Error case. - content: - application/json: - schema: - $ref: '#/components/schemas/ErrorResponse' - notifyClearedAlarm: - '{request.body#/consumerReference}': - post: - requestBody: - required: true - content: - application/json: - schema: - $ref: '#/components/schemas/NotifyClearedAlarm' - responses: - '204': - description: >- - Success case ("204 No Content"). - The notification is successfully delivered. The response message - body is absent. - default: - description: Error case. - content: - application/json: - schema: - $ref: '#/components/schemas/ErrorResponse' - notifyChangedAlarm: - '{request.body#/consumerReference}': - post: - requestBody: - required: true - content: - application/json: - schema: - $ref: '#/components/schemas/NotifyChangedAlarm' - responses: - '204': - description: >- - Success case ("204 No Content"). - The notification is successfully delivered. The response message - body is absent. - default: - description: Error case. - content: - application/json: - schema: - $ref: '#/components/schemas/ErrorResponse' - notifyChangedAlarmGeneral: - '{request.body#/consumerReference}': - post: - requestBody: - required: true - content: - application/json: - schema: - oneOf: - - $ref: '#/components/schemas/NotifyChangedAlarmGeneral' - - $ref: '#/components/schemas/NotifyChangedSecAlarmGeneral' - responses: - '204': - description: >- - Success case ("204 No Content"). - The notification is successfully delivered. The response message - body is absent. - default: - description: Error case. - content: - application/json: - schema: - $ref: '#/components/schemas/ErrorResponse' - notifyCorrelatedNotificationChanged: - '{request.body#/consumerReference}': - post: - requestBody: - required: true - content: - application/json: - schema: - $ref: '#/components/schemas/NotifyCorrelatedNotificationChanged' - responses: - '204': - description: >- - Success case ("204 No Content"). - The notification is successfully delivered. The response message - body is absent. - default: - description: Error case. - content: - application/json: - schema: - $ref: '#/components/schemas/ErrorResponse' - notifyAckStateChanged: - '{request.body#/consumerReference}': - post: - requestBody: - required: true - content: - application/json: - schema: - $ref: '#/components/schemas/NotifyAckStateChanged' - responses: - '204': - description: >- - Success case ("204 No Content"). - The notification is successfully delivered. The response message - body is absent. - default: - description: Error case. - content: - application/json: - schema: - $ref: '#/components/schemas/ErrorResponse' - notifyComments: - '{request.body#/consumerReference}': - post: - requestBody: - required: true - content: - application/json: - schema: - $ref: '#/components/schemas/NotifyComments' - responses: - '204': - description: >- - Success case ("204 No Content"). - The notification is successfully delivered. The response message - body is absent. - default: - description: Error case. - content: - application/json: - schema: - $ref: '#/components/schemas/ErrorResponse' - notifyPotentialFaultyAlarmList: - '{request.body#/consumerReference}': - post: - requestBody: - required: true - content: - application/json: - schema: - $ref: '#/components/schemas/NotifyPotentialFaultyAlarmList' - responses: - '204': - description: >- - Success case ("204 No Content"). - The notification is successfully delivered. The response message - body is absent. - default: - description: Error case. - content: - application/json: - schema: - $ref: '#/components/schemas/ErrorResponse' - notifyAlarmListRebuilt: - '{request.body#/consumerReference}': - post: - requestBody: - required: true - content: - application/json: - schema: - $ref: '#/components/schemas/NotifyAlarmListRebuilt' - responses: - '204': - description: >- - Success case ("204 No Content"). - The notification is successfully delivered. The response message - body is absent. - default: - description: Error case. - content: - application/json: - schema: - $ref: '#/components/schemas/ErrorResponse' - /subscriptions/{subscriptionId}: - delete: - summary: Delete a subscription - description: >- - The subscription is deleted by deleting the corresponding subscription - resource. The resource to be deleted is identified with the path - component of the URI. - parameters: - - name: subscriptionId - in: path - description: Identifies the subscription to be deleted. - required: true - schema: - type: string - responses: - '204': - description: >- - Success case ("204 No Content"). - The subscription resource has been deleted. The response message body - is absent. - default: - description: Error case. - content: - application/json: - schema: - $ref: '#/components/schemas/ErrorResponse' - -components: - schemas: - - #---- Definitions to be moved to comDefs.yaml --------------------------------------# - - Long: - type: string - format: long - Float: - type: string - format: float - DateTime: - type: string - format: date-Time - - Dn: - type: string - Uri: - type: string - - AttributeNameValuePairSet: - type: object - minProperties: 1 - AttributeValueChangeSet: - description: >- - The key in this map is the attribute name. The value of each key is an array. - When only one item is present in the array, it carries the new attribute - value. If two items are present, then the first item carries the old value - and the second item the new value. The items can be of any type including null. - type: object - additionalProperties: - type: array - minItems: 1 - maxItems: 2 - items: - nullable: true - - Filter: - type: string - SystemDN: - type: string - - NotificationId: - type: integer - NotificationHeader: - description: >- - Header used for all notification types - type: object - required: - - href - - notificationId - - notificationType - - eventTime - - systemDN - properties: - uri: - $ref: '#/components/schemas/Uri' - notificationId: - $ref: '#/components/schemas/NotificationId' - notificationType: - oneOf: - - $ref: '#/components/schemas/AlarmNotificationTypes' - #- $ref: 'faultMnS.yaml#/components/schemas/AlarmNotificationTypes' - #- $ref: 'provMnS.yaml#/components/schemas/CmNotificationTypes' - # more to be added - eventTime: - $ref: '#/components/schemas/DateTime' - systemDN: - $ref: '#/components/schemas/SystemDN' - - ErrorResponse: - description: >- - Default schema for the response message body in case the request is not - successful. - type: object - properties: - error: - type: object - properties: - errorInfo: - type: string - - #---- End of definitions to be moved to comDefs.yaml -------------------------------# - - #---- Definition of AlarmRecord ----------------------------------------------------# - - AlarmId: - type: string - AlarmType: - type: string - enum: - - COMMUNICATIONS_ALARM - - QUALITY_OF_SERVICE_ALARM - - PROCESSING_ERROR_ALARM - - EQUIPMENT_ALARM - - ENVIRONMENTAL_ALARM - - INTEGRITY_VIOLATION - - OPERATIONAL_VIOLATION - - PHYSICAL_VIOLATION - - SECURITY_SERVICE_OR_MECHANISM_VIOLATION - - TIME_DOMAIN_VIOLATION - ProbableCause: - description: >- - The value of the probable cause may be a specific standardized string, or any - vendor provided string. Probable cause strings are not standardized in the - present document. They may be added in a future version. Up to then the - mapping of the generic probable cause strings "PROBABLE_CAUSE_001" to - "PROBABLE_CAUSE_005" is vendor specific. - The value of the probable cause may also be an integer. The mapping of integer - values to probable causes is vendor specific. - oneOf: - - anyOf: - - type: string - enum: - - PROBABLE_CAUSE_001 - - PROBABLE_CAUSE_002 - - PROBABLE_CAUSE_003 - - PROBABLE_CAUSE_004 - - PROBABLE_CAUSE_005 - - type: string - - type: integer - SpecificProblem: - oneOf: - - type: string - - type: integer - PerceivedSeverity: - type: string - enum: - - INDETERMINATE - - CRITICAL - - MAJOR - - MINOR - - WARNING - - CLEARED - TrendIndication: - type: string - enum: - - MORE_SEVERE - - NO_CHANGE - - LESS_SEVERE - ThresholdHysteresis: - type: object - required: - - high - properties: - high: - oneOf: - - type: integer - - $ref: '#/components/schemas/Float' - low: - $ref: '#/components/schemas/Float' - ThresholdLevelInd: - type: object - required: - - up - properties: - up: - $ref: '#/components/schemas/ThresholdHysteresis' - low: - $ref: '#/components/schemas/ThresholdHysteresis' - ThresholdInfo: - type: object - required: - - observedMeasurement - - observedValue - properties: - observedMeasurement: - type: string - observedValue: - oneOf: - - type: integer - - $ref: '#/components/schemas/Float' - thresholdLevelInd: - $ref: '#/components/schemas/ThresholdLevelInd' - armTime: - $ref: '#/components/schemas/DateTime' - CorrelatedNotification: - type: object - required: - - source - - notificationId - properties: - sourceObjectInstance: - $ref: '#/components/schemas/Dn' - notificationIds: - type: array - items: - $ref: '#/components/schemas/NotificationId' - CorrelatedNotifications: - type: array - items: - $ref: '#/components/schemas/CorrelatedNotification' - AckState: - type: string - enum: - - ACKNOWLEDGED - - UNACKNOWLEDGED - - AlarmRecord: - description: >- - The alarmId is not a property of an alarm record. It is used as key - in the map of alarm records instead. - type: object - properties: - # alarmId: - # $ref: '#/components/schemas/AlarmId' - objectInstance: - $ref: '#/components/schemas/Dn' - notificationId: - $ref: '#/components/schemas/NotificationId' - alarmRaisedTime: - $ref: '#/components/schemas/DateTime' - alarmChangedTime: - $ref: '#/components/schemas/DateTime' - alarmClearedTime: - $ref: '#/components/schemas/DateTime' - alarmType: - $ref: '#/components/schemas/AlarmType' - probableCause: - $ref: '#/components/schemas/ProbableCause' - specificProblem: - $ref: '#/components/schemas/SpecificProblem' - perceivedSeverity: - $ref: '#/components/schemas/PerceivedSeverity' - backedUpStatus: - type: boolean - backUpObject: - $ref: '#/components/schemas/Dn' - trendIndication: - $ref: '#/components/schemas/TrendIndication' - thresholdinfo: - $ref: '#/components/schemas/ThresholdInfo' - correlatedNotifications: - $ref: '#/components/schemas/CorrelatedNotifications' - stateChangeDefinition: - $ref: '#/components/schemas/AttributeValueChangeSet' - monitoredAttributes: - $ref: '#/components/schemas/AttributeNameValuePairSet' - proposedRepairActions: - type: string - additionalText: - type: string - additionalInformation: - $ref: '#/components/schemas/AttributeNameValuePairSet' - - rootCauseIndicator: - type: boolean - - ackTime: - $ref: '#/components/schemas/DateTime' - ackUserId: - type: string - ackSystemId: - type: string - ackState: - $ref: '#/components/schemas/AckState' - - clearUserId: - type: string - clearSystemId: - type: string - serviceUser: - type: string - serviceProvider: - type: string - securityAlarmDetector: - type: string - - #---- Definition of alarm notifications --------------------------------------------# - - AlarmNotificationTypes: - type: string - enum: - - notifyNewAlarm - - notifyChangedAlarm - - notifyChangedAlarmGeneral - - notifyAckStateChanged - - notifyCorrelatedNotificationChanged - - notifyComments - - notifyClearedAlarm - - notifyAlarmListRebuiltAlarm - - notifyPotentialFaultyAlarmList - AlarmListAlignmentRequirement: - type: string - enum: - - ALIGNMENT_REQUIRED - - ALIGNMENT_NOT_REQUIRED - - NotifyNewAlarm: - allOf: - - $ref: '#/components/schemas/NotificationHeader' - - type: object - required: - - alarmId - - alarmType - - probableCause - - perceivedSeverity - properties: - alarmId: - $ref: '#/components/schemas/AlarmId' - alarmType: - $ref: '#/components/schemas/AlarmType' - probableCause: - $ref: '#/components/schemas/ProbableCause' - specificProblem: - $ref: '#/components/schemas/SpecificProblem' - perceivedSeverity: - $ref: '#/components/schemas/PerceivedSeverity' - backedUpStatus: - type: boolean - backUpObject: - $ref: '#/components/schemas/Dn' - trendIndication: - $ref: '#/components/schemas/TrendIndication' - thresholdInfo: - $ref: '#/components/schemas/ThresholdInfo' - correlatedNotifications: - $ref: '#/components/schemas/CorrelatedNotifications' - stateChangeDefinition: - $ref: '#/components/schemas/AttributeValueChangeSet' - monitoredAttributes: - $ref: '#/components/schemas/AttributeNameValuePairSet' - proposedRepairActions: - type: string - additionalText: - type: string - additionalInformation: - $ref: '#/components/schemas/AttributeNameValuePairSet' - rootCauseIndicator: - type: boolean - NotifyNewSecAlarm: - allOf: - - $ref: '#/components/schemas/NotificationHeader' - - type: object - required: - - alarmId - - alarmType - - probableCause - - perceivedSeverity - - serviceUser - - serviceProvider - - securityAlarmDetector - properties: - alarmId: - $ref: '#/components/schemas/AlarmId' - alarmType: - $ref: '#/components/schemas/AlarmType' - probableCause: - $ref: '#/components/schemas/ProbableCause' - perceivedSeverity: - $ref: '#/components/schemas/PerceivedSeverity' - correlatedNotifications: - $ref: '#/components/schemas/CorrelatedNotifications' - additionalText: - type: string - additionalInformation: - $ref: '#/components/schemas/AttributeNameValuePairSet' - rootCauseIndicator: - type: boolean - serviceUser: - type: string - serviceProvider: - type: string - securityAlarmDetector: - type: string - NotifyClearedAlarm: - allOf: - - $ref: '#/components/schemas/NotificationHeader' - - type: object - required: - - alarmId - - alarmType - - probableCause - - perceivedSeverity - properties: - alarmId: - $ref: '#/components/schemas/AlarmId' - alarmType: - $ref: '#/components/schemas/AlarmType' - probableCause: - $ref: '#/components/schemas/ProbableCause' - perceivedSeverity: - $ref: '#/components/schemas/PerceivedSeverity' - correlatedNotifications: - $ref: '#/components/schemas/CorrelatedNotifications' - clearUserId: - type: string - clearSystemId: - type: string - NotifyChangedAlarm: - allOf: - - $ref: '#/components/schemas/NotificationHeader' - - type: object - required: - - alarmId - - alarmType - - probableCause - - perceivedSeverity - properties: - alarmId: - $ref: '#/components/schemas/AlarmId' - alarmType: - $ref: '#/components/schemas/AlarmType' - probableCause: - $ref: '#/components/schemas/ProbableCause' - perceivedSeverity: - $ref: '#/components/schemas/PerceivedSeverity' - NotifyChangedAlarmGeneral: - allOf: - - $ref: '#/components/schemas/NotificationHeader' - - type: object - required: - - alarmId - - alarmType - - probableCause - - perceivedSeverity - - changedAlarmAttributes - properties: - alarmId: - $ref: '#/components/schemas/AlarmId' - alarmType: - $ref: '#/components/schemas/AlarmType' - probableCause: - $ref: '#/components/schemas/ProbableCause' - specificProblem: - $ref: '#/components/schemas/SpecificProblem' - perceivedSeverity: - $ref: '#/components/schemas/PerceivedSeverity' - correlatedNotifications: - $ref: '#/components/schemas/CorrelatedNotifications' - backedUpStatus: - type: boolean - backUpObject: - $ref: '#/components/schemas/Dn' - trendIndication: - $ref: '#/components/schemas/TrendIndication' - thresholdInfo: - $ref: '#/components/schemas/ThresholdInfo' - stateChangeDefinition: - $ref: '#/components/schemas/AttributeValueChangeSet' - monitoredAttributes: - $ref: '#/components/schemas/AttributeNameValuePairSet' - proposedRepairActions: - type: string - additionalText: - type: string - additionalInformation: - $ref: '#/components/schemas/AttributeNameValuePairSet' - rootCauseIndicator: - type: boolean - changedAlarmAttributes: - $ref: '#/components/schemas/AttributeNameValuePairSet' - NotifyChangedSecAlarmGeneral: - allOf: - - $ref: '#/components/schemas/NotificationHeader' - - type: object - required: - - alarmId - - alarmType - - probableCause - - perceivedSeverity - - serviceUser - - serviceProvider - - securityAlarmDetector - - changedAlarmAttributes - properties: - alarmId: - $ref: '#/components/schemas/AlarmId' - alarmType: - $ref: '#/components/schemas/AlarmType' - probableCause: - $ref: '#/components/schemas/ProbableCause' - perceivedSeverity: - $ref: '#/components/schemas/PerceivedSeverity' - correlatedNotifications: - $ref: '#/components/schemas/CorrelatedNotifications' - additionalText: - type: string - additionalInformation: - $ref: '#/components/schemas/AttributeNameValuePairSet' - rootCauseIndicator: - type: boolean - serviceUser: - type: string - serviceProvider: - type: string - securityAlarmDetector: - type: string - changedAlarmAttributes: - $ref: '#/components/schemas/AttributeNameValuePairSet' - NotifyCorrelatedNotificationChanged: - allOf: - - $ref: '#/components/schemas/NotificationHeader' - - type: object - required: - - alarmId - - correlatedNotifications - properties: - alarmId: - $ref: '#/components/schemas/AlarmId' - correlatedNotifications: - $ref: '#/components/schemas/CorrelatedNotifications' - rootCauseIndicator: - type: boolean - NotifyAckStateChanged: - allOf: - - $ref: '#/components/schemas/NotificationHeader' - - type: object - required: - - alarmId - - alarmType - - probableCause - - perceivedSeverity - - ackState - - ackUserId - properties: - alarmId: - $ref: '#/components/schemas/AlarmId' - alarmType: - $ref: '#/components/schemas/AlarmType' - probableCause: - $ref: '#/components/schemas/ProbableCause' - perceivedSeverity: - $ref: '#/components/schemas/PerceivedSeverity' - ackState: - $ref: '#/components/schemas/AckState' - ackUserId: - type: string - ackSystemId: - type: string - NotifyComments: - allOf: - - $ref: '#/components/schemas/NotificationHeader' - - type: object - required: - - alarmId - - alarmType - - probableCause - - perceivedSeverity - - comments - properties: - alarmId: - $ref: '#/components/schemas/AlarmId' - alarmType: - $ref: '#/components/schemas/AlarmType' - probableCause: - $ref: '#/components/schemas/ProbableCause' - perceivedSeverity: - $ref: '#/components/schemas/PerceivedSeverity' - comments: - $ref: '#/components/schemas/Comments' - NotifyPotentialFaultyAlarmList: - allOf: - - $ref: '#/components/schemas/NotificationHeader' - - type: object - required: - - reason - properties: - reason: - type: string - NotifyAlarmListRebuilt: - allOf: - - $ref: '#/components/schemas/NotificationHeader' - - type: object - required: - - reason - properties: - reason: - type: string - alarmListAlignmentRequirement: - $ref: '#/components/schemas/AlarmListAlignmentRequirement' - - #---- Definition of query parameters -----------------------------------------------# - - AlarmAckState: - type: string - enum: - - ALL_ALARMS - - ALL_ACTIVE_ALARMS - - ALL_ACTIVE_AND_ACKNOWLEDGED_ALARMS - - ALL_ACTIVE_AND_UNACKNOWLEDGED_ALARMS - - ALL_CLEARED_AND_UNACKNOWLEDGED_ALARMS - - ALL_UNACKNOWLEDGED_ALARMS - - #---- Definition of patch documents ------------------------------------------------# - - MergePatchAcknowledgeAlarm: - description: >- - Patch document acknowledging or unacknowledging a single alarm. For - acknowleding an alarm the value of ackState is ACKNOWLEDGED, for unacknowleding - an alarm the value of ackState is UNACKNOWLEDGED. - type: object - required: - - ackUserId - - ackState - properties: - ackUserId: - type: string - ackSystemId: - type: string - ackState: - $ref: '#/components/schemas/AckState' - MergePatchClearAlarm: - description: Patch document for clearing a single alarm - type: object - required: - - clearUserId - - perceivedSeverity - properties: - clearUserId: - type: string - clearSystemId: - type: string - perceivedSeverity: - type: string - enum: - - CLEARED - - #---- Definition of method responses -----------------------------------------------# - - FailedAlarm: - type: object - required: - - alarmId - - failureReason - properties: - alarmId: - $ref: '#/components/schemas/AlarmId' - failureReason: - type: string - - #---- Definition of resources ------------------------------------------------------# - - AlarmCount: - type: object - required: - - criticalCount - - majorCount - - minorCount - - warningCount - - indeterminateCount - - clearedCount - properties: - criticalCount: - type: integer - majorCount: - type: integer - minorCount: - type: integer - warningCount: - type: integer - indeterminateCount: - type: integer - clearedCount: - type: integer - Comment: - type: object - properties: - commentTime: - $ref: '#/components/schemas/DateTime' - commentUserId: - type: string - commentSystemId: - type: string - commentText: - type: string - Comments: - description: >- - Collection of comments. The comment identifiers are allocated by the - MnS producer and used as key in the map. - type: object - additionalProperties: - $ref: '#/components/schemas/Comment' - Subscription: - type: object - properties: - consumerReference: - $ref: '#/components/schemas/Uri' - timeTick: - $ref: '#/components/schemas/Long' - filter: - $ref: '#/components/schemas/Filter' diff --git a/OpenAPI/genericNrm.yaml b/OpenAPI/genericNrm.yaml deleted file mode 100644 index 0911920a2..000000000 --- a/OpenAPI/genericNrm.yaml +++ /dev/null @@ -1,1606 +0,0 @@ -openapi: 3.0.1 -info: - title: Generic NRM - version: 16.4.0 - description: >- - OAS 3.0.1 specification of the Generic NRM - © 2020, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). - All rights reserved. -externalDocs: - description: 3GPP TS 28.623 V16.4.0; Generic NRM - url: http://www.3gpp.org/ftp/Specs/archive/28_series/28.623/ -paths: {} -components: - schemas: - -#-------- Definition of types----------------------------------------------------- - - DateTime: - type: string - format: date-time - Dn: - type: string - maxLength: 400 - DnList: - type: array - items: - $ref: '#/components/schemas/Dn' - Mcc: - type: string - pattern: '^[0-9]{3}$' - Mnc: - type: string - pattern: '^[0-9]{2,3}$' - AdministrativeState: - type: string - enum: - - LOCKED - - UNLOCKED - OperationalState: - type: string - enum: - - ENABLED - - DISABLED - UsageState: - type: string - enum: - - IDEL - - ACTIVE - - BUSY - RegistrationState: - type: string - enum: - - REGISTERED - - DEREGISTERED - SetOfMcc: - type: array - items: - $ref: '#/components/schemas/Mcc' - ManagedElementType: - type: string - ManagedElementTypeList: - type: array - items: - $ref: '#/components/schemas/ManagedElementType' - VnfParameter: - type: object - properties: - vnfInstanceId: - type: string - vnfdId: - type: string - flavourId: - type: string - autoScalable: - type: boolean - VnfParametersList: - type: array - items: - $ref: '#/components/schemas/VnfParameter' - SiteLatitude: - type: number - format: float - minimum: -90 - maximum: 90 - SiteLongitude: - type: number - format: float - minimum: -180 - maximum: 180 - PeeParameter: - type: object - properties: - siteIdentification: - type: string - siteDescription: - type: string - siteLatitude: - $ref: '#/components/schemas/SiteLatitude' - siteLongitude: - $ref: '#/components/schemas/SiteLongitude' - equipmentType: - type: string - environmentType: - type: string - powerInterface: - type: string - PeeParametersList: - type: array - items: - $ref: '#/components/schemas/PeeParameter' - MonitoringGPList: - type: array - items: - type: integer - ThresholdInfoList: - type: array - items: - $ref: '#/components/schemas/ThresholdInfo' - ThresholdInfo: - type: object - properties: - measurementType: - type: string - direction: - $ref: '#/components/schemas/Direction' - thresholdPack: - $ref: '#/components/schemas/ThresholdPack' - Direction: - enum: - - Increasing - - Decreasing - ThresholdPack: - type: array - items: - $ref: '#/components/schemas/ThresholdPackElement' - ThresholdPackElement: - type: object - properties: - thresholdLevel: - type: integer - thresholdValue: - type: number - hysteresis: - type: number - Operation: - type: object - properties: - name: - type: string - allowedNFTypes: - $ref: '#/components/schemas/NFType' - operationSemantics: - $ref: '#/components/schemas/OperationSemantics' - OperationList: - type: array - items: - $ref: '#/components/schemas/Operation' - NFType: - type: string - description: ' NF name defined in TS 23.501' - enum: - - NRF - - UDM - - AMF - - SMF - - AUSF - - NEF - - PCF - - SMSF - - NSSF - - UDR - - LMF - - GMLC - - 5G_EIR - - SEPP - - UPF - - N3IWF - - AF - - UDSF - - DN - Fqdn: - type: string - OperationSemantics: - type: string - enum: - - REQUEST_RESPONSE - - SUBSCRIBE_NOTIFY - SAP: - type: object - properties: - host: - $ref: '#/components/schemas/HostAddr' - port: - type: integer - NFServiceType: - type: string - enum: - - Namf_Communication - - Namf_EventExposure - - Namf_MT - - Namf_Location - - Nsmf_PDUSession - - Nsmf_EventExposure - - Others - HostAddr: - oneOf: - - $ref: '#/components/schemas/Ipv4Addr' - - $ref: '#/components/schemas/Ipv6Addr' - - $ref: '#/components/schemas/Fqdn' - Ipv4Addr: - type: string - pattern: '^(([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])\.){3}([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])$' - example: '198.51.100.1' - Ipv4AddrRm: - type: string - pattern: '^(([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])\.){3}([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])$' - example: '198.51.100.1' - nullable: true - Ipv6Addr: - type: string - allOf: - - pattern: '^((:|(0?|([1-9a-f][0-9a-f]{0,3}))):)((0?|([1-9a-f][0-9a-f]{0,3})):){0,6}(:|(0?|([1-9a-f][0-9a-f]{0,3})))$' - - pattern: '^((([^:]+:){7}([^:]+))|((([^:]+:)*[^:]+)?::(([^:]+:)*[^:]+)?))$' - example: '2001:db8:85a3::8a2e:370:7334' - Ipv6AddrRm: - type: string - allOf: - - pattern: '^((:|(0?|([1-9a-f][0-9a-f]{0,3}))):)((0?|([1-9a-f][0-9a-f]{0,3})):){0,6}(:|(0?|([1-9a-f][0-9a-f]{0,3})))$' - - pattern: '^((([^:]+:){7}([^:]+))|((([^:]+:)*[^:]+)?::(([^:]+:)*[^:]+)?))$' - example: '2001:db8:85a3::8a2e:370:7334' - nullable: true - Ipv6Prefix: - type: string - allOf: - - pattern: '^((:|(0?|([1-9a-f][0-9a-f]{0,3}))):)((0?|([1-9a-f][0-9a-f]{0,3})):){0,6}(:|(0?|([1-9a-f][0-9a-f]{0,3})))(\/(([0-9])|([0-9]{2})|(1[0-1][0-9])|(12[0-8])))$' - - pattern: '^((([^:]+:){7}([^:]+))|((([^:]+:)*[^:]+)?::(([^:]+:)*[^:]+)?))(\/.+)$' - example: '2001:db8:abcd:12::0/64' - Uri: - type: string - TransportProtocol: - anyOf: - - type: string - enum: - - TCP - - type: string - SupportedPerfMetricGroup: - type: object - properties: - performanceMetrics: - type: array - items: - type: string - granularityPeriods: - type: array - items: - type: integer - minimum: 1 - reportingMethods: - type: array - items: - type: string - enum: - - FILE_BASED_LOC_SET_BY_PRODUCER - - FILE_BASED_LOC_SET_BY_CONSUMER - - STREAM_BASED - ReportingCtrl: - oneOf: - - type: object - properties: - fileReportingPeriod: - type: integer - - type: object - properties: - fileReportingPeriod: - type: integer - fileLocation: - $ref: '#/components/schemas/Uri' - - type: object - properties: - streamTarget: - $ref: '#/components/schemas/Uri' - Scope: - type: object - properties: - scopeType: - type: string - enum: - - BASE_ONLY - - BASE_ALL - - BASE_NTH_LEVEL - - BASE_SUBTREE - scopeLevel: - type: integer - NotificationType: - type: string - enum: - - notifyMOICreation - - notifyMOIDeletion - - notifyMOIAttributeValueChanges - - notifyEvent - - notifyNewAlarm - - notifyChangedAlarm - - notifyAckStateChanged - - notifyComments - - notifyCorrelatedNotificationChanged - - notifyChangedAlarmGeneral - - notifyAlarmListRebuilt - - notifyPotentialFaultyAlarmList - - notifyFileReady - - notifyFilePreparationError - - notifyThresholdCrossing - NotificationTypes: - type: array - items: - $ref: '#/components/schemas/NotificationType' - -#-------- Definition of types used in Trace control NRM fragment------------------ - - tjJobType-Type: - type: string - description: Specifies whether the TraceJob represents only MDT, Logged MBSFN MDT, Trace or a combined Trace and MDT job. Applicable for Trace, MDT, RCEF and RLF reporting. See 3GPP TS 32.422 clause 5.9a for additional details. - enum: - - IMMEDIATE_MDT_ONLY - - LOGGED_MDT_ONLY - - TRACE_ONLY - - IMMEDIATE_MDT AND TRACE - - RLF_REPORT_ONLY - - RCEF_REPORT_ONLY - - LOGGED_MBSFN_MDT - - tjListOfInterfaces-Type: - description: The interfaces to be recorded in the Network Element. See 3GPP TS 32.422 clause 5.5 for additional details. - type: object - properties: - MSCServerInterfaces: - type: array - items: - type: string - enum: - - A - - Iu-CS - - Mc - - MAP-G - - MAP-B - - MAP-E - - MAP-F - - MAP-D - - MAP-C - - CAP - MGWInterfaces: - type: array - items: - type: string - enum: - - Mc - - Nb-UP - - Iu-UP - RNCInterfaces: - type: array - items: - type: string - enum: - - Iu-CS - - Iu-PS - - Iur - - Iub - - Uu - SGSNInterfaces: - type: array - items: - type: string - enum: - - Gb - - Iu-PS - - Gn - - MAP-Gr - - MAP-Gd - - MAP-Gf - - Ge - - Gs - - S6d - - S4 - - S3 - - S13 - GGSNInterfaces: - type: array - items: - type: string - enum: - - Gn - - Gi - - Gmb - S-CSCFInterfaces: - type: array - items: - type: string - enum: - - Mw - - Mg - - Mr - - Mi - P-CSCFInterfaces: - type: array - items: - type: string - enum: - - Gm - - Mw - I-CSCFInterfaces: - type: array - items: - type: string - enum: - - Cx - - Dx - - Mg - - Mw - MRFCInterfaces: - type: array - items: - type: string - enum: - - Mp - - Mr - MGCFInterfaces: - type: array - items: - type: string - enum: - - Mg - - Mj - - Mn - IBCFInterfaces: - type: array - items: - type: string - enum: - - Ix - - Mx - E-CSCFInterfaces: - type: array - items: - type: string - enum: - - Mw - - Ml - - Mm - - Mi/Mg - BGCFInterfaces: - type: array - items: - type: string - enum: - - Mi - - Mj - - Mk - ASInterfaces: - type: array - items: - type: string - enum: - - Dh - - Sh - - ISC - - Ut - HSSInterfaces: - type: array - items: - type: string - enum: - - MAP-C - - MAP-D - - Gc - - Gr - - Cx - - S6d - - S6a - - Sh - EIRInterfaces: - type: array - items: - type: string - enum: - - MAP-F - - S13 - - MAP-Gf - BM-SCInterfaces: - type: array - items: - type: string - enum: - - Gmb - MMEInterfaces: - type: array - items: - type: string - enum: - - S1-MME - - S3 - - S6a - - S10 - - S11 - - S13 - SGWInterfaces: - type: array - items: - type: string - enum: - - S4 - - S5 - - S8 - - S11 - - Gxc - PDN_GWInterfaces: - type: array - items: - type: string - enum: - - S2a - - S2b - - S2c - - S5 - - S6b - - Gx - - S8 - - SGi - eNBInterfaces: - type: array - items: - type: string - enum: - - S1-MME - - X2 - en-gNBInterfaces: - type: array - items: - type: string - enum: - - S1-MME - - X2 - - Uu - - F1-C - - E1 - AMFInterfaces: - type: array - items: - type: string - enum: - - N1 - - N2 - - N8 - - N11 - - N12 - - N14 - - N15 - - N20 - - N22 - - N26 - AUSFInterfaces: - type: array - items: - type: string - enum: - - N12 - - N13 - NEFInterfaces: - type: array - items: - type: string - enum: - - N29 - - N30 - - N33 - NRFInterfaces: - type: array - items: - type: string - enum: - - N27 - NSSFInterfaces: - type: array - items: - type: string - enum: - - N22 - - N31 - PCFInterfaces: - type: array - items: - type: string - enum: - - N5 - - N7 - - N15 - SMFInterfaces: - type: array - items: - type: string - enum: - - N4 - - N7 - - N10 - - N11 - - S5-C - SMSFInterfaces: - type: array - items: - type: string - enum: - - N20 - - N21 - UDMInterfaces: - type: array - items: - type: string - enum: - - N8 - - N10 - - N13 - - N21 - UPFInterfaces: - type: array - items: - type: string - enum: - - N4 - ng-eNBInterfaces: - type: array - items: - type: string - enum: - - NG-C - - Xn-C - - Uu - gNB-CU-CPInterfaces: - type: array - items: - type: string - enum: - - NG-C - - Xn-C - - Uu - - F1-C - - E1 - - X2-C - gNB-CU-UPInterfaces: - type: array - items: - type: string - enum: - - E1 - gNB-DUInterfaces: - type: array - items: - type: string - enum: - - F1-C - - tjListOfNeTypes-Type: - description: The Network Element types where Trace Session activation is needed. See 3GPP TS 32.422 clause 5.4 for additional details. - type: array - items: - type: string - enum: - - MSC_SERVER - - SGSN - - MGW - - GGSN - - RNC - - BM_SC - - MME - - SGW - - PGW - - ENB - - EN_GNB - - GNB_CU_CP - - GNB_CU_UP - - GNB_DU - - tjPLMNTaget-Type: - type: object - description: The PLMN for which sessions shall be selected in the Trace Session in case of management based activation when several PLMNs are supported in the RAN (this means that shared cells and not shared cells are allowed for the specified PLMN. Note that the PLMN Target might differ from the PLMN specified in the Trace Reference, as that specifies the PLMN that is containing the management system requesting the Trace Session from the NE. See 3GPP TS 32.422 clause 5.9b for additional details. - properties: - mcc: - $ref: '#/components/schemas/Mcc' - mnc: - $ref: '#/components/schemas/Mnc' - required: - - mcc - - mnc - - tjStreamingTraceConsumerURI-Type: - type: string - description: The URI of the Trace Reporting MnS consumer (see 3GPP TS 28.532) to which the Trace records shall be sent. See 3GPP TS 32.422 clause 5.9 for additional details. - format: uri - - tjTraceCollectionEntityAddress-Type: - description: The IP address to which the Trace records shall be transferred. See 3GPP TS 32.422 clause 5.9 for additional details. - oneOf: - - $ref: '#/components/schemas/Ipv4Addr' - - $ref: '#/components/schemas/Ipv6Addr' - - tjTraceDepth-Type: - description: Specifies how detailed information should be recorded in the Network Element. The Trace Depth is a paremeter for Trace Session level, i.e., the Trace Depth is the same for all of the NEs to be traced in the same Trace Session. See 3GPP TS 32.422 clause 5.3 for additional details. - type: string - enum: - - MINIMUM - - MEDIUM - - MAXIMUM - - VENDORMINIMUM - - VENDORMEDIUM - - VENDORMAXIMUM - - tjTraceReference-Type: - type: object - description: The Trace Reference parameter shall be globally unique, therefore the Trace Reference shall compose as follows - MCC+MNC+Trace ID, where the MCC and MNC are coming with the Trace activation request from the management system to identify one PLMN containing the management system, and Trace ID is a 3 byte Octet String. See 3GPP TS 32.422 clause 5.6 for additional details. - properties: - mcc: - $ref: '#/components/schemas/Mcc' - mnc: - $ref: '#/components/schemas/Mnc' - traceId: - type: integer - required: - - mcc - - mnc - - traceId - - tjTraceReportingFormat-Type: - type: string - description: Specifies whether file-based or streaming reporting shall be used for this Trace Session. See 3GPP TS 32.422 clause 5.11 for additional details. - enum: - - FILE-BASED - - STREAMING - - tjTraceTarget-Type: - type: string - description: Type of trace target. For additional details see 3GPP TS 32.422. - enum: - - IMSI - - IMEI - - IMEISV - - PUBLIC_ID - - UTRAN_CELL - - E-UTRAN_CELL - - NG-RAN_CELL - - eNB - - RNC - - gNB - - tjTriggeringEvent-Type: - type: object - description: Specifies when to start a Trace Recording Session and which message shall be recorded first, when to stop a Trace Recording Session and which message shall be recorded last respectively. See 3GPP TS 32.422 clause 5.1 for additional detials. - properties: - NetworkElement: - type: string - enum: - - MSC_SERVER - - SGSN - - MGW - - GGSN - - BM_SC - - MME - - SGW - - PGW - - AMF - - SMF - - PCF - - UPF - EventBitmap: - type: integer - required: - - NetworkElement - - EventBitmap - - tjMDTAnonymizationOfData-Type: - description: Specifies level of MDT anonymization. For additional details see 3GPP TS 32.422 clause 5.10.12. - type: string - enum: - - NO_IDENTITY - - TAC_OF_IMEI - - tjMDTAreaConfigurationForNeighCell-Type: - description: Used for logged NR MDT and defines the area for which UE is requested to perform measurement logging for neighbour cells which have list of frequencies. For additional details see 3GPP TS 32.422 clause 5.10.26. - type: array - items: - type: object - properties: - frequency: - type: string - cell: - type: string - - tjMDTAreaScope-Type: - description: defines the area in terms or Cells or Tracking Area/Routing Area/Location Area where the MDT data collection shall take place. For additional details see 3GPP TS 32.422 clause 5.10.2. - allOf: - - $ref: '#/components/schemas/DnList' - - tjMDTCollectionPeriodRrmLte-Type: - description: See details in 3GPP TS 32.422 clause 5.10.20. - type: string - enum: - - 250ms - - 500ms - - 1000ms - - 2000ms - - 3000ms - - 4000ms - - 6000ms - - 8000ms - - 12000ms - - 16000ms - - 20000ms - - 24000ms - - 28000ms - - 32000ms - - 64000ms - - tjMDTCollectionPeriodRrmUmts-Type: - description: See details in 3GPP TS 32.422 clause 5.10.21. - type: string - enum: - - 1024ms - - 1280ms - - 2048ms - - 2560ms - - 5120ms - - 10240ms - - 1min - - tjMDTEventListForTriggeredMeasurement-Type: - description: See details in 3GPP TS 32.422 clause 5.10.28. - type: string - enum: - - OUT_OF_COVERAGE - - A2_EVENT - - tjMDTEventThreshold-Type: - description: See details in 3GPP TS 32.422 clause 5.10.7, 5.10.7a, 5.10.13 and 5.10.14. - type: object - properties: - EventThresholdRSRP: - type: integer - minimum: 0 - maximum: 97 - EventThresholdRSRQ: - type: integer - minimum: 0 - maximum: 34 - EventThreshold1F: - type: object - properties: - CPICH_RSCP: - type: integer - minimum: -120 - maximum: 25 - CPICH_EcNo: - type: integer - minimum: -24 - maximum: 0 - PathLoss: - type: integer - minimum: 30 - maximum: 165 - EventThreshold1I: - type: integer - minimum: -120 - maximum: 25 - - tjMDTListOfMeasurements-Type: - description: See details in 3GPP TS 32.422 clause 5.10.3 for details. - type: object - properties: - UMTS: - type: array - items: - type: string - enum: - - M1 - - M2 - - M3 - - M4 - - M5 - - M6_DL - - M6_UL - - M7_DL - - M7_UL - LTE: - type: array - items: - type: string - enum: - - M1 - - M2 - - M3 - - M4 - - M5 - - M1_EVENT_TRIGGERED - - M6 - - M7 - - M8 - - M9 - NR: - type: array - items: - type: string - enum: - - M1 - - M2 - - M3 - - M4 - - M5 - - M6 - - M7 - - M8 - - M9 - - tjMDTLoggingDuration-Type: - description: See details in 3GPP TS 32.422 clause 5.10.9. - type: string - enum: - - 600s - - 1200s - - 2400s - - 3600s - - 5400s - - 7200s - - tjMDTLoggingInterval-Type: - description: See details in 3GPP TS 32.422 clause 5.10.8. - type: string - enum: - - 1.28s - - 2.56s - - 5.12s - - 10.24s - - 20.48s - - 30.72s - - 40.96s - - 61.44s - - tjMDTMBSFNAreaList-Type: - description: See details in 3GPP TS 32.422 clause 5.10.25. - type: array - items: - type: object - properties: - mbsfnAreaId: - type: integer - minimum: 1 - earfcn: - type: integer - minimum: 1 - required: - - mbsfnAreaId - - earfcn - - tjMDTMeasurementPeriodLTE-Type: - description: See details in 3GPP TS 32.422 clause 5.10.23. - type: string - enum: - - 1024ms - - 1280ms - - 2048ms - - 2560ms - - 5120ms - - 10240ms - - 1min - - tjMDTMeasurementPeriodUMTS-Type: - description: See details in 3GPP TS 32.422 clause 5.10.22. - type: string - enum: - - 250ms - - 500ms - - 1000ms - - 2000ms - - 3000ms - - 4000ms - - 6000ms - - 8000ms - - 12000ms - - 16000ms - - 20000ms - - 24000ms - - 28000ms - - 32000ms - - 64000ms - - tjMDTMeasurementQuantity-Type: - description: See details in 3GPP TS 32.422 clause 5.10.15. - type: string - enum: - - CPICH_EcNo - - CPICH_RSCP - - PathLoss - - tjMDTPLMList-Type: - description: See details in 3GPP TS 32.422 clause 5.10.24. - type: array - items: - type: object - properties: - mcc: - $ref: '#/components/schemas/Mcc' - mnc: - $ref: '#/components/schemas/Mnc' - required: - - mcc - - mnc - maxItems: 16 - - tjMDTPositioningMethod-Type: - description: See details in 3GPP TS 32.422 clause 5.10.19. - type: string - enum: - - GNSS - - E-CELL_ID - - tjMDTReportAmount-Type: - description: See details in 3GPP TS 32.422 clause 5.10.6. - type: string - enum: - - 1 - - 2 - - 4 - - 8 - - 16 - - 32 - - 64 - - INFINITY - - tjMDTReportingTrigger-Type: - description: See details in 3GPP TS 32.422 clause 5.10.4. - type: array - items: - type: string - enum: - - PERIODICAL - - A2_FOR_LTE - - 1F_FOR_UMTS - - 1I_FOR_UMTS_MCPS_TDD - - A2_TRIGGERED_PERIODIC_FOR_LTE - - ALL_CONFIGURED_RRM_FOR_LTE - - ALL_CONFIGURED_RRM_FOR_UMTS - - tjMDTReportInterval-Type: - description: See details in 3GPP TS 32.422 clause 5.10.5. - type: string - enum: - - 250ms - - 500ms - - 1000ms - - 2000ms - - 3000ms - - 4000ms - - 6000ms - - 8000ms - - 12000ms - - 16000ms - - 20000ms - - 24000ms - - 28000ms - - 32000ms - - 64000ms - - 120ms - - 240ms - - 480ms - - 640ms - - 1024ms - - 2048ms - - 5120ms - - 10240ms - - 60000ms - - 360000ms - - 720000ms - - 1800000ms - - 3600000ms - - tjMDTReportType-Type: - description: Report type for logged NR MDT. See details in 3GPP TS 32.422 clause 5.10.27. - type: string - enum: - - PERIODICAL - - EVENT_TRIGGERED - - tjMDTSensorInformation-Type: - description: See details in 3GPP TS 32.422 clause 5.10.29. - type: array - items: - type: string - enum: - - BAROMETRIC_PRESSURE - - UE_SPEED - - UE_ORIENTATION - - tjMDTTraceCollectionEntityID-Type: - description: See details in 3GPP TS 32.422 clause 5.10.11. Only tceID value may be sent over the air to the UE being configured for Logged MDT. - type: object - properties: - tceID: - type: integer - tcePLMN: - type: object - properties: - mcc: - $ref: '#/components/schemas/Mcc' - mnc: - $ref: '#/components/schemas/Mnc' - required: - - mcc - - mnc - tceAddress: - oneOf: - - $ref: '#/components/schemas/tjTraceCollectionEntityAddress-Type' - - $ref: '#/components/schemas/tjStreamingTraceConsumerURI-Type' - required: - - tceID - - tcePLMN - - tceAddress - - -#-------- end of Definition of types used in Trace control NRM fragment ---------- - - -#-------- Definition of abstract IOC Top ----------------------------------------- - - Top-Attr: - # This definition will be deprecated, when all occurances of Top-Attr - # are replaced by Top. - type: object - properties: - id: - type: string - VsDataContainer: - $ref: '#/components/schemas/VsDataContainer-Multiple' - Top: - type: object - properties: - id: - type: string - VsDataContainer: - $ref: '#/components/schemas/VsDataContainer-Multiple' - -#-------- Definition of IOCs with new name-containments defined in other TS ------ - - SubNetwork-Attr: - type: object - properties: - dnPrefix: - type: string - userLabel: - type: string - userDefinedNetworkType: - type: string - setOfMcc: - $ref: '#/components/schemas/SetOfMcc' - priorityLabel: - type: integer - supportedPerfMetricGroups: - type: array - items: - $ref: '#/components/schemas/SupportedPerfMetricGroup' - ManagedElement-Attr: - type: object - properties: - dnPrefix: - type: string - managedElementTypeList: - $ref: '#/components/schemas/ManagedElementTypeList' - userLabel: - type: string - locationName: - type: string - managedBy: - $ref: '#/components/schemas/DnList' - vendorName: - type: string - userDefinedState: - type: string - swVersion: - type: string - priorityLabel: - type: integer - supportedPerfMetricGroups: - type: array - items: - $ref: '#/components/schemas/SupportedPerfMetricGroup' - - SubNetwork-ncO: - type: object - properties: - ManagementNode: - $ref: '#/components/schemas/ManagementNode-Multiple' - MeContext: - $ref: '#/components/schemas/MeContext-Multiple' - PerfMetricJob: - $ref: '#/components/schemas/PerfMetricJob-Multiple' - ThresholdMonitor: - $ref: '#/components/schemas/ThresholdMonitor-Multiple' - ThresholdMonitoringCapability: - $ref: '#/components/schemas/ThresholdMonitoringCapability-Single' - NtfSubscriptionControl: - $ref: '#/components/schemas/NtfSubscriptionControl-Multiple' - TraceJob: - $ref: '#/components/schemas/TraceJob-Multiple' - AlarmList: - $ref: '#/components/schemas/AlarmList-Single' - MnsRegistry: - type: array - items: - $ref: '#/components/schemas/MnsRegistry' - ManagedElement-ncO: - type: object - properties: - PerfMetricJob: - $ref: '#/components/schemas/PerfMetricJob-Multiple' - ThresholdMonitor: - $ref: '#/components/schemas/ThresholdMonitor-Multiple' - ThresholdMonitoringCapability: - $ref: '#/components/schemas/ThresholdMonitoringCapability-Single' - NtfSubscriptionControl: - $ref: '#/components/schemas/NtfSubscriptionControl-Multiple' - TraceJob: - $ref: '#/components/schemas/TraceJob-Multiple' - AlarmList: - $ref: '#/components/schemas/AlarmList-Single' - -#-------- Definition of abstract IOCs -------------------------------------------- - - ManagedFunction-Attr: - type: object - properties: - userLabel: - type: string - vnfParametersList: - $ref: '#/components/schemas/VnfParametersList' - peeParametersList: - $ref: '#/components/schemas/PeeParametersList' - priorityLabel: - type: integer - supportedPerfMetricGroups: - type: array - items: - $ref: '#/components/schemas/SupportedPerfMetricGroup' - EP_RP-Attr: - type: object - properties: - userLabel: - type: string - farEndEntity: - type: string - supportedPerfMetricGroups: - type: array - items: - $ref: '#/components/schemas/SupportedPerfMetricGroup' - - TraceJob-Attr: - type: object - description: abstract class used as a container of all TraceJob attributes - properties: - tjJobType: - $ref: '#/components/schemas/tjJobType-Type' - tjListOfInterfaces: - $ref: '#/components/schemas/tjListOfInterfaces-Type' - tjListOfNeTypes: - $ref: '#/components/schemas/tjListOfNeTypes-Type' - tjPLMNTarget: - $ref: '#/components/schemas/tjPLMNTaget-Type' - tjTraceConsumer: - oneOf: - - $ref: '#/components/schemas/tjStreamingTraceConsumerURI-Type' - - $ref: '#/components/schemas/tjTraceCollectionEntityAddress-Type' - tjTraceDepth: - $ref: '#/components/schemas/tjTraceDepth-Type' - tjTraceReference: - $ref: '#/components/schemas/tjTraceReference-Type' - tjTraceReportingFormat: - $ref: '#/components/schemas/tjTraceReportingFormat-Type' - tjTraceTarget: - $ref: '#/components/schemas/tjTraceTarget-Type' - tjTriggeringEvent: - $ref: '#/components/schemas/tjTriggeringEvent-Type' - tjMDTAnonymizationOfData: - $ref: '#/components/schemas/tjMDTAnonymizationOfData-Type' - tjMDTAreaConfigurationForNeighCell: - $ref: '#/components/schemas/tjMDTAreaConfigurationForNeighCell-Type' - tjMDTAreaScope: - $ref: '#/components/schemas/tjMDTAreaScope-Type' - tjMDTCollectionPeriodRrmLte: - $ref: '#/components/schemas/tjMDTCollectionPeriodRrmLte-Type' - tjMDTCollectionPeriodRrmUmts: - $ref: '#/components/schemas/tjMDTCollectionPeriodRrmUmts-Type' - tjMDTEventListForTriggeredMeasurement: - $ref: '#/components/schemas/tjMDTEventListForTriggeredMeasurement-Type' - tjMDTEventThreshold: - $ref: '#/components/schemas/tjMDTEventThreshold-Type' - tjMDTListOfMeasurements: - $ref: '#/components/schemas/tjMDTListOfMeasurements-Type' - tjMDTLoggingDuration: - $ref: '#/components/schemas/tjMDTLoggingDuration-Type' - tjMDTLoggingInterval: - $ref: '#/components/schemas/tjMDTLoggingInterval-Type' - tjMDTMBSFNAreaList: - $ref: '#/components/schemas/tjMDTMBSFNAreaList-Type' - tjMDTMeasurementPeriodLTE: - $ref: '#/components/schemas/tjMDTMeasurementPeriodLTE-Type' - tjMDTMeasurementPeriodUMTS: - $ref: '#/components/schemas/tjMDTMeasurementPeriodUMTS-Type' - tjMDTMeasurementQuantity: - $ref: '#/components/schemas/tjMDTMeasurementQuantity-Type' - tjMDTPLMList: - $ref: '#/components/schemas/tjMDTPLMList-Type' - tjMDTPositioningMethod: - $ref: '#/components/schemas/tjMDTPositioningMethod-Type' - tjMDTReportAmount: - $ref: '#/components/schemas/tjMDTReportAmount-Type' - tjMDTReportingTrigger: - $ref: '#/components/schemas/tjMDTReportingTrigger-Type' - tjMDTReportInterval: - $ref: '#/components/schemas/tjMDTReportInterval-Type' - tjMDTReportType: - $ref: '#/components/schemas/tjMDTReportType-Type' - tjMDTSensorInformation: - $ref: '#/components/schemas/tjMDTSensorInformation-Type' - tjMDTTraceCollectionEntityID: - $ref: '#/components/schemas/tjMDTTraceCollectionEntityID-Type' - required: - - tjJobType - - tjTraceReference - - tjTraceConsumer - - tjTraceReportingFormat - - tjTraceTarget - - ManagedFunction-ncO: - type: object - properties: - PerfMetricJob: - $ref: '#/components/schemas/PerfMetricJob-Multiple' - ThresholdMonitor: - $ref: '#/components/schemas/ThresholdMonitor-Multiple' - ThresholdMonitoringCapability: - $ref: '#/components/schemas/ThresholdMonitoringCapability-Single' - ManagedNFService: - $ref: '#/components/schemas/ManagedNFService-Multiple' - TraceJob: - $ref: '#/components/schemas/TraceJob-Multiple' - - MnsRegistry: - type: object - properties: - mnsLabel: - type: string - mnsType: - type: string - mnsVersion: - type: string - mnsAddress: - type: string - -#-------- Definition of concrete IOCs -------------------------------------------- - - VsDataContainer-Single: - type: object - properties: - id: - type: string - attributes: - type: object - properties: - vsDataType: - type: string - vsDataFormatVersion: - type: string - vsData: - nullable: true - VsDataContainer: - $ref: '#/components/schemas/VsDataContainer-Multiple' - ManagedNFService-Single: - allOf: - - $ref: '#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - type: object - properties: - userLabel: - type: string - nFServiceType: - $ref: '#/components/schemas/NFServiceType' - sAP: - $ref: '#/components/schemas/SAP' - operations: - $ref: '#/components/schemas/OperationList' - administrativeState: - $ref: '#/components/schemas/AdministrativeState' - operationalState: - $ref: '#/components/schemas/OperationalState' - usageState: - $ref: '#/components/schemas/UsageState' - registrationState: - $ref: '#/components/schemas/RegistrationState' - ManagementNode-Single: - allOf: - - $ref: '#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - type: object - properties: - userLabel: - type: string - managedElements: - $ref: '#/components/schemas/DnList' - vendorName: - type: string - userDefinedState: - type: string - locationName: - type: string - swVersion: - type: string - MeContext-Single: - allOf: - - $ref: '#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - type: object - properties: - dnPrefix: - type: string - PerfMetricJob-Single: - allOf: - - $ref: '#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - type: object - properties: - administrativeState: - $ref: '#/components/schemas/AdministrativeState' - operationalState: - $ref: '#/components/schemas/OperationalState' - perfMetricJobGroupId: - type: string - performanceMetrics: - type: array - items: - type: string - granularityPeriod: - type: integer - minimum: 1 - objectInstances: - $ref: '#/components/schemas/DnList' - rootObjectInstances: - $ref: '#/components/schemas/DnList' - reportingCtrl: - $ref: '#/components/schemas/ReportingCtrl' - ThresholdMonitoringCapability-Single: - allOf: - - $ref: '#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - type: object - properties: - supportedMonitoringGPs: - $ref: '#/components/schemas/MonitoringGPList' - ThresholdMonitor-Single: - allOf: - - $ref: '#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - type: object - properties: - thresholdInfoList: - $ref: '#/components/schemas/ThresholdInfoList' - monitoringGP: - type: integer - monitoringNotifTarget: - type: string - monitoredIOCName: - type: string - monitoredObjectDNs: - $ref: '#/components/schemas/DnList' - NtfSubscriptionControl-Single: - allOf: - - $ref: '#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - type: object - properties: - notificationRecipientAddress: - $ref: '#/components/schemas/Uri' - notificationTypes: - $ref: '#/components/schemas/NotificationTypes' - scope: - $ref: '#/components/schemas/Scope' - notificationFilter: - type: string - HeartbeatControl: - $ref: '#/components/schemas/HeartbeatControl-Single' - HeartbeatControl-Single: - allOf: - - $ref: '#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - type: object - properties: - heartbeatNtfPeriod: - type: integer - triggerHeartbeatNtf: - type: boolean - TraceJob-Single: - allOf: - - $ref: '#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - $ref: '#/components/schemas/TraceJob-Attr' - - AlarmList-Single: - allOf: - - $ref: '#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - type: object - properties: - administrativeState: - $ref: '#/components/schemas/AdministrativeState' - operationalState: - $ref: '#/components/schemas/OperationalState' - numOfAlarmRecords: - type: integer - lastModification: - $ref: '#/components/schemas/DateTime' - alarmRecords: - description: >- - This resource represents a map of alarm records. - The alarmIds are used as keys in the map. - type: object - additionalProperties: - $ref: 'faultMnS.yaml#/components/schemas/AlarmRecord' - -#-------- Definition of JSON arrays for name-contained IOCs ---------------------- - - VsDataContainer-Multiple: - type: array - items: - $ref: '#/components/schemas/VsDataContainer-Single' - ManagedNFService-Multiple: - type: array - items: - $ref: '#/components/schemas/ManagedNFService-Single' - ManagementNode-Multiple: - type: array - items: - $ref: '#/components/schemas/ManagementNode-Single' - MeContext-Multiple: - type: array - items: - $ref: '#/components/schemas/MeContext-Single' - PerfMetricJob-Multiple: - type: array - items: - $ref: '#/components/schemas/PerfMetricJob-Single' - ThresholdMonitor-Multiple: - type: array - items: - $ref: '#/components/schemas/ThresholdMonitor-Single' - NtfSubscriptionControl-Multiple: - type: array - items: - $ref: '#/components/schemas/NtfSubscriptionControl-Single' - TraceJob-Multiple: - type: array - items: - $ref: '#/components/schemas/TraceJob-Single' - -#-------- Definitions in TS 28.623 for TS 28.532 --------------------------------- - - resources-genericNrm: - oneOf: - - - $ref: '#/components/schemas/VsDataContainer-Single' - - - $ref: '#/components/schemas/ManagementNode-Single' - - $ref: '#/components/schemas/MeContext-Single' - - - $ref: '#/components/schemas/ManagedNFService-Single' - - - $ref: '#/components/schemas/PerfMetricJob-Single' - - - $ref: '#/components/schemas/ThresholdMonitoringCapability-Single' - - $ref: '#/components/schemas/ThresholdMonitor-Single' - - - $ref: '#/components/schemas/NtfSubscriptionControl-Single' - - $ref: '#/components/schemas/HeartbeatControl-Single' - - $ref: '#/components/schemas/TraceJob-Single' - - - $ref: '#/components/schemas/AlarmList-Single' diff --git a/OpenAPI/heartbeatNtf.yaml b/OpenAPI/heartbeatNtf.yaml deleted file mode 100644 index afde5066d..000000000 --- a/OpenAPI/heartbeatNtf.yaml +++ /dev/null @@ -1,23 +0,0 @@ -openapi: 3.0.1 -info: - title: Heartbeat notification - version: 16.3.0 - description: >- - OAS 3.0.1 specification of the heartbeat notification - © 2020, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). - All rights reserved. -externalDocs: - description: 3GPP TS 28.532 V16.3.0; Heartbeat notification - url: http://www.3gpp.org/ftp/Specs/archive/28_series/28.6532/ -paths: {} -components: - schemas: - hearbeatNtfPeriod-Type: - type: integer - notifyHeartbeat-NotifType: - allOf: - - $ref: 'provMnS.yaml#/components/schemas/header-Type' - - type: object - properties: - heartbeatNtfPeriod: - $ref: '#/components/schemas/hearbeatNtfPeriod-Type' diff --git a/OpenAPI/nrNrm.yaml b/OpenAPI/nrNrm.yaml deleted file mode 100644 index 850106631..000000000 --- a/OpenAPI/nrNrm.yaml +++ /dev/null @@ -1,1905 +0,0 @@ -openapi: 3.0.1 -info: - title: NR NRM - version: 17.4.0 - description: >- - OAS 3.0.1 specification of the NR NRM - © 2020, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). - All rights reserved. -externalDocs: - description: 3GPP TS 28.541; 5G NRM, NR NRM - url: http://www.3gpp.org/ftp/Specs/archive/28_series/28.541/ -paths: {} -components: - schemas: - -#-------- Definition of types----------------------------------------------------- - - GnbId: - type: string - GnbIdLength: - type: integer - minimum: 22 - maximum: 32 - GnbName: - type: string - maxLength: 150 - GnbDuId: - type: number - minimum: 0 - maximum: 68719476735 - GnbCuUpId: - type: number - minimum: 0 - maximum: 68719476735 - - Sst: - type: integer - maximum: 255 - Snssai: - type: object - properties: - sst: - $ref: '#/components/schemas/Sst' - sd: - type: string - SnssaiList: - type: array - items: - $ref: '#/components/schemas/Snssai' - - Mnc: - type: string - pattern: '[0-9]{3}|[0-9]{2}' - PlmnId: - type: object - properties: - mcc: - $ref: 'genericNrm.yaml#/components/schemas/Mcc' - mnc: - $ref: '#/components/schemas/Mnc' - PlmnIdList: - type: array - items: - $ref: '#/components/schemas/PlmnId' - PlmnInfo: - type: object - properties: - plmnId": - $ref: '#/components/schemas/PlmnId' - snssai: - $ref: '#/components/schemas/Snssai' - PlmnInfoList: - type: array - items: - $ref: '#/components/schemas/PlmnInfo' - cagId: - type: string - nid: - type: string - NpnIdentity: - type: object - properties: - plmnId": - $ref: '#/components/schemas/PlmnId' - cagidList: - $ref: '#/components/schemas/cagId' - nidList: - $ref: '#/components/schemas/nid' - NpnIdentityList: - type: array - items: - $ref: '#/components/schemas/NpnIdentity' - GGnbId: - type: string - pattern: '^[0-9]{3}[0-9]{2,3}-(22|23|24|25|26|27|28|29|30|31|32)-[0-9]{1,10}' - GEnbId: - type: string - pattern: '^[0-9]{3}[0-9]{2,3}-(18|20|21|22)-[0-9]{1,7}' - - GGnbIdList: - type: array - items: - $ref: '#/components/schemas/GGnbId' - - GEnbIdList: - type: array - items: - $ref: '#/components/schemas/GEnbId' - - NrPci: - type: integer - maximum: 503 - NrTac: - type: integer - maximum: 16777215 - Tai: - type: object - properties: - plmnId: - $ref: '#/components/schemas/PlmnId' - nrTac: - $ref: '#/components/schemas/NrTac' - - BackhaulAddress: - type: object - properties: - gnbId: - $ref: '#/components/schemas/GnbId' - tai: - $ref: "#/components/schemas/Tai" - MappingSetIDBackhaulAddress: - type: object - properties: - setID: - type: integer - backhaulAddress: - $ref: '#/components/schemas/BackhaulAddress' - IntraRatEsActivationOriginalCellLoadParameters: - type: object - properties: - loadThreshold: - type: integer - timeDuration: - type: integer - IntraRatEsActivationCandidateCellsLoadParameters: - type: object - properties: - loadThreshold: - type: integer - timeDuration: - type: integer - IntraRatEsDeactivationCandidateCellsLoadParameters: - type: object - properties: - loadThreshold: - type: integer - timeDuration: - type: integer - EsNotAllowedTimePeriod: - type: object - properties: - startTimeandendTime: - type: string - periodOfDay: - type: string - daysOfWeekList: - type: string - listoftimeperiods: - type: string - InterRatEsActivationOriginalCellParameters: - type: object - properties: - loadThreshold: - type: integer - timeDuration: - type: integer - InterRatEsActivationCandidateCellParameters: - type: object - properties: - loadThreshold: - type: integer - timeDuration: - type: integer - InterRatEsDeactivationCandidateCellParameters: - type: object - properties: - loadThreshold: - type: integer - timeDuration: - type: integer - - UeAccProbilityDist: - type: object - properties: - targetProbability: - type: integer - numberofpreamblessent: - type: integer - - UeAccDelayProbilityDist: - type: object - properties: - targetProbability: - type: integer - accessdelay: - type: integer - - NRPciList: - type: object - properties: - NRPci: - type: integer - - CSonPciList: - type: object - properties: - NRPci: - type: integer - - MaximumDeviationHoTrigger: - type: integer - minimum: -20 - maximum: 20 - - MinimumTimeBetweenHoTriggerChange: - type: integer - minimum: 0 - maximum: 604800 - - TstoreUEcntxt: - type: integer - minimum: 0 - maximum: 1023 - - CellState: - type: string - enum: - - IDLE - - INACTIVE - - ACTIVE - CyclicPrefix: - type: string - enum: - - '15' - - '30' - - '60' - - '120' - TxDirection: - type: string - enum: - - DL - - UL - - DL and UL - BwpContext: - type: string - enum: - - DL - - UL - - SUL - IsInitialBwp: - type: string - enum: - - INITIAL - - OTHER - - SUL - QuotaType: - type: string - enum: - - STRICT - - FLOAT - IsESCoveredBy: - type: string - enum: - - NO - - PARTIAL - - FULL - RrmPolicyMember: - type: object - properties: - plmnId: - $ref: '#/components/schemas/PlmnId' - snssai: - $ref: '#/components/schemas/Snssai' - RrmPolicyMemberList: - type: array - items: - $ref: '#/components/schemas/RrmPolicyMember' - AddressWithVlan: - type: object - properties: - ipv4Address: - $ref: 'genericNrm.yaml#/components/schemas/Ipv4Addr' - ipv6Address: - $ref: 'genericNrm.yaml#/components/schemas/Ipv6Addr' - vlanId: - type: integer - minimum: 0 - maximum: 4096 - LocalAddress: - type: object - properties: - addressWithVlan: - $ref: '#/components/schemas/AddressWithVlan' - port: - type: integer - minimum: 0 - maximum: 65535 - RemoteAddress: - type: object - properties: - ipv4Address: - $ref: 'genericNrm.yaml#/components/schemas/Ipv4Addr' - ipv6Address: - $ref: 'genericNrm.yaml#/components/schemas/Ipv6Addr' - - CellIndividualOffset: - type: object - properties: - rsrpOffsetSSB: - type: integer - rsrqOffsetSSB: - type: integer - sinrOffsetSSB: - type: integer - rsrpOffsetCSI-RS: - type: integer - rsrqOffsetCSI-RS: - type: integer - sinrOffsetCSI-RS: - type: integer - QOffsetRange: - type: integer - enum: - - -24 - - -22 - - -20 - - -18 - - -16 - - -14 - - -12 - - -10 - - -8 - - -6 - - -5 - - -4 - - -3 - - -2 - - -1 - - 0 - - 24 - - 22 - - 20 - - 18 - - 16 - - 14 - - 12 - - 10 - - 8 - - 6 - - 5 - - 4 - - 3 - - 2 - - 1 - QOffsetRangeList: - type: object - properties: - rsrpOffsetSSB: - $ref: '#/components/schemas/QOffsetRange' - rsrqOffsetSSB: - $ref: '#/components/schemas/QOffsetRange' - sinrOffsetSSB: - $ref: '#/components/schemas/QOffsetRange' - rsrpOffsetCSI-RS: - $ref: '#/components/schemas/QOffsetRange' - rsrqOffsetCSI-RS: - $ref: '#/components/schemas/QOffsetRange' - sinrOffsetCSI-RS: - $ref: '#/components/schemas/QOffsetRange' - QOffsetFreq: - type: number - TReselectionNRSf: - type: integer - enum: - - 25 - - 50 - - 75 - - 100 - SsbPeriodicity: - type: integer - enum: - - 5 - - 10 - - 20 - - 40 - - 80 - - 160 - SsbDuration: - type: integer - enum: - - 1 - - 2 - - 3 - - 4 - - 5 - SsbSubCarrierSpacing: - type: integer - enum: - - 15 - - 30 - - 120 - - 240 - CoverageShape: - type: integer - maximum: 65535 - DigitalTilt: - type: integer - minimum: -900 - maximum: 900 - DigitalAzimuth: - type: integer - minimum: -1800 - maximum: 1800 - - RSSetId: - type: integer - maximum: 4194303 - - RSSetType: - type: string - enum: - - RS1 - - RS2 - - FrequencyDomainPara: - type: object - properties: - rimRSSubcarrierSpacing: - type: integer - rIMRSBandwidth: - type: integer - nrofGlobalRIMRSFrequencyCandidates: - type: integer - rimRSCommonCarrierReferencePoint: - type: integer - rimRSStartingFrequencyOffsetIdList: - type: array - items: - type: integer - - SequenceDomainPara: - type: object - properties: - nrofRIMRSSequenceCandidatesofRS1: - type: integer - rimRSScrambleIdListofRS1: - type: array - items: - type: integer - nrofRIMRSSequenceCandidatesofRS2: - type: integer - rimRSScrambleIdListofRS2: - type: array - items: - type: integer - enableEnoughNotEnoughIndication: - type: string - enum: - - ENABLE - - DISABLE - RIMRSScrambleTimerMultiplier: - type: integer - RIMRSScrambleTimerOffset: - type: integer - - TimeDomainPara: - type: object - properties: - dlULSwitchingPeriod1: - type: string - enum: - - MS0P5 - - MS0P625 - - MS1 - - MS1P25 - - MS2 - - MS2P5 - - MS3 - - MS4 - - MS5 - - MS10 - - MS20 - symbolOffsetOfReferencePoint1: - type: integer - dlULSwitchingPeriod2: - type: string - enum: - - MS0P5 - - MS0P625 - - MS1 - - MS1P25 - - MS2 - - MS2P5 - - MS3 - - MS4 - - MS5 - - MS10 - - MS20 - symbolOffsetOfReferencePoint2: - type: integer - totalnrofSetIdofRS1: - type: integer - totalnrofSetIdofRS2: - type: integer - nrofConsecutiveRIMRS1: - type: integer - nrofConsecutiveRIMRS2: - type: integer - consecutiveRIMRS1List: - type: array - items: - type: integer - consecutiveRIMRS2List: - type: array - items: - type: integer - enablenearfarIndicationRS1: - type: string - enum: - - ENABLE - - DISABLE - enablenearfarIndicationRS2: - type: string - enum: - - ENABLE - - DISABLE - - RimRSReportInfo: - type: object - properties: - detectedSetID: - type: integer - propagationDelay: - type: integer - functionalityOfRIMRS: - type: string - enum: - - RS1 - - RS2 - - RS1forEnoughMitigation - - RS1forNotEnoughMitigation - - RimRSReportConf: - type: object - properties: - reportIndicator: - type: string - enum: - - ENABLE - - DISABLE - reportInterval: - type: integer - nrofRIMRSReportInfo: - type: integer - maxPropagationDelay: - type: integer - rimRSReportInfoList: - type: array - items: - $ref: '#/components/schemas/RimRSReportInfo' - TceMappingInfo: - type: object - properties: - TceIPAddress: - oneOf: - - $ref: 'genericNrm.yaml#/components/schemas/Ipv4Addr' - - $ref: 'genericNrm.yaml#/components/schemas/Ipv6Addr' - TceID: - type: integer - PlmnTarget: - $ref: '#/components/schemas/PlmnId' - TceMappingInfoList: - type: array - items: - $ref: '#/components/schemas/TceMappingInfo' - - -#-------- Definition of abstract IOCs -------------------------------------------- - - RrmPolicy_-Attr: - type: object - properties: - resourceType: - type: string - rRMPolicyMemberList: - $ref: '#/components/schemas/RrmPolicyMemberList' - - -#-------- Definition of concrete IOCs -------------------------------------------- - - SubNetwork-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top' - - type: object - properties: - attributes: - $ref: 'genericNrm.yaml#/components/schemas/SubNetwork-Attr' - - $ref: 'genericNrm.yaml#/components/schemas/SubNetwork-ncO' - - type: object - properties: - SubNetwork: - $ref: '#/components/schemas/SubNetwork-Multiple' - ManagedElement: - $ref: '#/components/schemas/ManagedElement-Multiple' - NRFrequency: - $ref: '#/components/schemas/NRFrequency-Multiple' - ExternalGnbCuCpFunction: - $ref: '#/components/schemas/ExternalGnbCuCpFunction-Multiple' - ExternalENBFunction: - $ref: '#/components/schemas/ExternalENBFunction-Multiple' - EUtranFrequency: - $ref: '#/components/schemas/EUtranFrequency-Multiple' - DESManagementFunction: - $ref: '#/components/schemas/DESManagementFunction-Single' - DRACHOptimizationFunction: - $ref: '#/components/schemas/DRACHOptimizationFunction-Single' - DMROFunction: - $ref: '#/components/schemas/DMROFunction-Single' - DPCIConfigurationFunction: - $ref: '#/components/schemas/DPCIConfigurationFunction-Single' - CPCIConfigurationFunction: - $ref: '#/components/schemas/CPCIConfigurationFunction-Single' - CESManagementFunction: - $ref: '#/components/schemas/CESManagementFunction-Single' - Configurable5QISet: - $ref: '5gcNrm.yaml#/components/schemas/Configurable5QISet-Multiple' - RimRSGlobal: - $ref: '#/components/schemas/RimRSGlobal-Single' - Dynamic5QISet: - $ref: '5gcNrm.yaml#/components/schemas/Dynamic5QISet-Multiple' - - ManagedElement-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top' - - type: object - properties: - attributes: - $ref: 'genericNrm.yaml#/components/schemas/ManagedElement-Attr' - - $ref: 'genericNrm.yaml#/components/schemas/ManagedElement-ncO' - - type: object - properties: - GnbDuFunction: - $ref: '#/components/schemas/GnbDuFunction-Multiple' - GnbCuUpFunction: - $ref: '#/components/schemas/GnbCuUpFunction-Multiple' - GnbCuCpFunction: - $ref: '#/components/schemas/GnbCuCpFunction-Multiple' - DESManagementFunction: - $ref: '#/components/schemas/DESManagementFunction-Single' - DRACHOptimizationFunction: - $ref: '#/components/schemas/DRACHOptimizationFunction-Single' - DMROFunction: - $ref: '#/components/schemas/DMROFunction-Single' - DPCIConfigurationFunction: - $ref: '#/components/schemas/DPCIConfigurationFunction-Single' - CPCIConfigurationFunction: - $ref: '#/components/schemas/CPCIConfigurationFunction-Single' - CESManagementFunction: - $ref: '#/components/schemas/CESManagementFunction-Single' - Configurable5QISet: - $ref: '5gcNrm.yaml#/components/schemas/Configurable5QISet-Multiple' - Dynamic5QISet: - $ref: '5gcNrm.yaml#/components/schemas/Dynamic5QISet-Multiple' - - GnbDuFunction-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' - - type: object - properties: - gnbDuId: - $ref: '#/components/schemas/GnbDuId' - gnbDuName: - $ref: '#/components/schemas/GnbName' - gnbId: - $ref: '#/components/schemas/GnbId' - gnbIdLength: - $ref: '#/components/schemas/GnbIdLength' - rimRSReportConf: - $ref: '#/components/schemas/RimRSReportConf' - - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' - - type: object - properties: - RRMPolicyRatio: - $ref: '#/components/schemas/RRMPolicyRatio-Multiple' - NrCellDu: - $ref: '#/components/schemas/NrCellDu-Multiple' - Bwp-Multiple: - $ref: '#/components/schemas/Bwp-Multiple' - NrSectorCarrier-Multiple: - $ref: '#/components/schemas/NrSectorCarrier-Multiple' - EP_F1C: - $ref: '#/components/schemas/EP_F1C-Single' - EP_F1U: - $ref: '#/components/schemas/EP_F1U-Multiple' - DRACHOptimizationFunction: - $ref: '#/components/schemas/DRACHOptimizationFunction-Single' - GnbCuUpFunction-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' - - type: object - properties: - gnbId: - $ref: '#/components/schemas/GnbId' - gnbIdLength: - $ref: '#/components/schemas/GnbIdLength' - gnbCuUpId: - $ref: '#/components/schemas/GnbCuUpId' - plmnInfoList: - $ref: '#/components/schemas/PlmnInfoList' - configurable5QISetRef: - $ref: 'genericNrm.yaml#/components/schemas/Dn' - dynamic5QISetRef: - $ref: 'genericNrm.yaml#/components/schemas/Dn' - - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' - - type: object - properties: - RRMPolicyRatio: - $ref: '#/components/schemas/RRMPolicyRatio-Multiple' - EP_E1: - $ref: '#/components/schemas/EP_E1-Single' - EP_XnU: - $ref: '#/components/schemas/EP_XnU-Multiple' - EP_F1U: - $ref: '#/components/schemas/EP_F1U-Multiple' - EP_NgU: - $ref: '#/components/schemas/EP_NgU-Multiple' - EP_X2U: - $ref: '#/components/schemas/EP_X2U-Multiple' - EP_S1U: - $ref: '#/components/schemas/EP_S1U-Multiple' - GnbCuCpFunction-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' - - type: object - properties: - gnbId: - $ref: '#/components/schemas/GnbId' - gnbIdLength: - $ref: '#/components/schemas/GnbIdLength' - gnbCuName: - $ref: '#/components/schemas/GnbName' - plmnId: - $ref: '#/components/schemas/PlmnId' - x2BlackList: - $ref: '#/components/schemas/GGnbIdList' - xnBlackList: - $ref: '#/components/schemas/GGnbIdList' - x2WhiteList: - $ref: '#/components/schemas/GGnbIdList' - xnWhiteList: - $ref: '#/components/schemas/GGnbIdList' - x2XnHOBlackList: - $ref: '#/components/schemas/GEnbIdList' - mappingSetIDBackhaulAddress: - $ref: '#/components/schemas/MappingSetIDBackhaulAddress' - tceMappingInfoList: - $ref: '#/components/schemas/TceMappingInfoList' - configurable5QISetRef: - $ref: 'genericNrm.yaml#/components/schemas/Dn' - dynamic5QISetRef: - $ref: 'genericNrm.yaml#/components/schemas/Dn' - - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' - - type: object - properties: - RRMPolicyRatio: - $ref: '#/components/schemas/RRMPolicyRatio-Multiple' - NrCellCu: - $ref: '#/components/schemas/NrCellCu-Multiple' - EP_XnC: - $ref: '#/components/schemas/EP_XnC-Multiple' - EP_E1: - $ref: '#/components/schemas/EP_E1-Multiple' - EP_F1C: - $ref: '#/components/schemas/EP_F1C-Multiple' - EP_NgC: - $ref: '#/components/schemas/EP_NgC-Multiple' - EP_X2C: - $ref: '#/components/schemas/EP_X2C-Multiple' - DANRManagementFunction: - $ref: '#/components/schemas/DANRManagementFunction-Single' - DESManagementFunction: - $ref: '#/components/schemas/DESManagementFunction-Single' - DMROFunction: - $ref: '#/components/schemas/DMROFunction-Single' - - NrCellCu-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' - - type: object - properties: - cellLocalId: - type: integer - plmnInfoList: - $ref: '#/components/schemas/PlmnInfoList' - nRFrequencyRef: - $ref: 'genericNrm.yaml#/components/schemas/Dn' - - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' - - type: object - properties: - RRMPolicyRatio: - $ref: '#/components/schemas/RRMPolicyRatio-Multiple' - NRCellRelation: - $ref: '#/components/schemas/NRCellRelation-Multiple' - EUtranCellRelation: - $ref: '#/components/schemas/EUtranCellRelation-Multiple' - NRFreqRelation: - $ref: '#/components/schemas/NRFreqRelation-Multiple' - EUtranFreqRelation: - $ref: '#/components/schemas/EUtranFreqRelation-Multiple' - DESManagementFunction: - $ref: '#/components/schemas/DESManagementFunction-Single' - DMROFunction: - $ref: '#/components/schemas/DMROFunction-Single' - CESManagementFunction: - $ref: '#/components/schemas/CESManagementFunction-Single' - DPCIConfigurationFunction: - $ref: '#/components/schemas/DPCIConfigurationFunction-Single' - - NrCellDu-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' - - type: object - properties: - administrativeState: - $ref: 'genericNrm.yaml#/components/schemas/AdministrativeState' - operationalState: - $ref: 'genericNrm.yaml#/components/schemas/OperationalState' - cellLocalId: - type: integer - cellState: - $ref: '#/components/schemas/CellState' - plmnInfoList: - $ref: '#/components/schemas/PlmnInfoList' - npnIdentityList: - $ref: '#/components/schemas/NpnIdentityList' - nrPci: - $ref: '#/components/schemas/NrPci' - nrTac: - $ref: '#/components/schemas/NrTac' - arfcnDL: - type: integer - arfcnUL: - type: integer - arfcnSUL: - type: integer - bSChannelBwDL: - type: integer - bSChannelBwUL: - type: integer - bSChannelBwSUL: - type: integer - ssbFrequency: - type: integer - minimum: 0 - maximum: 3279165 - ssbPeriodicity: - $ref: '#/components/schemas/SsbPeriodicity' - ssbSubCarrierSpacing: - $ref: '#/components/schemas/SsbSubCarrierSpacing' - ssbOffset: - type: integer - minimum: 0 - maximum: 159 - ssbDuration: - $ref: '#/components/schemas/SsbDuration' - nrSectorCarrierRef: - type: array - items: - $ref: 'genericNrm.yaml#/components/schemas/Dn' - bwpRef: - type: array - items: - $ref: 'genericNrm.yaml#/components/schemas/Dn' - rimRSMonitoringStartTime: - type: string - rimRSMonitoringStopTime: - type: string - rimRSMonitoringWindowDuration: - type: integer - rimRSMonitoringWindowStartingOffset: - type: integer - rimRSMonitoringWindowPeriodicity: - type: integer - rimRSMonitoringOccasionInterval: - type: integer - rimRSMonitoringOccasionStartingOffset: - type: integer - nRFrequencyRef: - $ref: 'genericNrm.yaml#/components/schemas/Dn' - victimSetRef: - $ref: 'genericNrm.yaml#/components/schemas/Dn' - aggressorSetRef: - $ref: 'genericNrm.yaml#/components/schemas/Dn' - - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' - - type: object - properties: - RRMPolicyRatio: - $ref: '#/components/schemas/RRMPolicyRatio-Multiple' - CPCIConfigurationFunction: - $ref: '#/components/schemas/CPCIConfigurationFunction-Single' - DRACHOptimizationFunction: - $ref: '#/components/schemas/DRACHOptimizationFunction-Single' - - NRFrequency-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top' - - type: object - properties: - attributes: - type: object - properties: - absoluteFrequencySSB: - type: integer - minimum: 0 - maximum: 3279165 - ssbSubCarrierSpacing: - $ref: '#/components/schemas/SsbSubCarrierSpacing' - multiFrequencyBandListNR: - type: integer - minimum: 1 - maximum: 256 - EUtranFrequency-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top' - - type: object - properties: - attributes: - type: object - properties: - earfcnDL: - type: integer - minimum: 0 - maximum: 262143 - multiBandInfoListEutra: - type: integer - minimum: 1 - maximum: 256 - - NrSectorCarrier-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' - - type: object - properties: - txDirection: - $ref: '#/components/schemas/TxDirection' - configuredMaxTxPower: - type: integer - arfcnDL: - type: integer - arfcnUL: - type: integer - bSChannelBwDL: - type: integer - bSChannelBwUL: - type: integer - sectorEquipmentFunctionRef: - $ref: 'genericNrm.yaml#/components/schemas/Dn' - - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' - - type: object - properties: - CommonBeamformingFunction: - $ref: '#/components/schemas/CommonBeamformingFunction-Single' - Bwp-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' - - type: object - properties: - bwpContext: - $ref: '#/components/schemas/BwpContext' - isInitialBwp: - $ref: '#/components/schemas/IsInitialBwp' - subCarrierSpacing: - type: integer - cyclicPrefix: - $ref: '#/components/schemas/CyclicPrefix' - startRB: - type: integer - numberOfRBs: - type: integer - - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' - CommonBeamformingFunction-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top' - - type: object - properties: - attributes: - allOf: - - type: object - properties: - coverageShape: - $ref: '#/components/schemas/CoverageShape' - digitalAzimuth: - $ref: '#/components/schemas/DigitalAzimuth' - digitalTilt: - $ref: '#/components/schemas/DigitalTilt' - - type: object - properties: - Beam: - $ref: '#/components/schemas/Beam-Multiple' - Beam-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top' - - type: object - properties: - attributes: - allOf: - - type: object - properties: - beamIndex: - type: integer - beamType: - type: string - enum: - - SSB-BEAM - beamAzimuth: - type: integer - minimum: -1800 - maximum: 1800 - beamTilt: - type: integer - minimum: -900 - maximum: 900 - beamHorizWidth: - type: integer - minimum: 0 - maximum: 3599 - beamVertWidth: - type: integer - minimum: 0 - maximum: 1800 - RRMPolicyRatio-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top' - - type: object - properties: - attributes: - allOf: - - $ref: '#/components/schemas/RrmPolicy_-Attr' - - type: object - properties: - rRMPolicyMaxRatio: - type: integer - rRMPolicyMinRatio: - type: integer - rRMPolicyDedicatedRatio: - type: integer - - NRCellRelation-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top' - - type: object - properties: - attributes: - type: object - properties: - nRTCI: - type: integer - cellIndividualOffset: - $ref: '#/components/schemas/CellIndividualOffset' - adjacentNRCellRef: - $ref: 'genericNrm.yaml#/components/schemas/Dn' - nRFrequencyRef: - $ref: 'genericNrm.yaml#/components/schemas/Dn' - isRemoveAllowed: - type: boolean - isHOAllowed: - type: boolean - isESCoveredBy: - $ref: '#/components/schemas/IsESCoveredBy' - isENDCAllowed: - type: boolean - isMLBAllowed: - type: boolean - EUtranCellRelation-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' - - type: object - properties: - adjacentEUtranCellRef: - $ref: 'genericNrm.yaml#/components/schemas/Dn' - - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' - NRFreqRelation-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top' - - type: object - properties: - attributes: - type: object - properties: - offsetMO: - $ref: '#/components/schemas/QOffsetRangeList' - blackListEntry: - type: array - items: - type: integer - minimum: 0 - maximum: 1007 - blackListEntryIdleMode: - type: integer - cellReselectionPriority: - type: integer - cellReselectionSubPriority: - type: number - minimum: 0.2 - maximum: 0.8 - multipleOf: 0.2 - pMax: - type: integer - minimum: -30 - maximum: 33 - qOffsetFreq: - $ref: '#/components/schemas/QOffsetFreq' - qQualMin: - type: number - qRxLevMin: - type: integer - minimum: -140 - maximum: -44 - threshXHighP: - type: integer - minimum: 0 - maximum: 62 - threshXHighQ: - type: integer - minimum: 0 - maximum: 31 - threshXLowP: - type: integer - minimum: 0 - maximum: 62 - threshXLowQ: - type: integer - minimum: 0 - maximum: 31 - tReselectionNr: - type: integer - minimum: 0 - maximum: 7 - tReselectionNRSfHigh: - $ref: '#/components/schemas/TReselectionNRSf' - tReselectionNRSfMedium: - $ref: '#/components/schemas/TReselectionNRSf' - nRFrequencyRef: - $ref: 'genericNrm.yaml#/components/schemas/Dn' - EUtranFreqRelation-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top' - - type: object - properties: - attributes: - type: object - properties: - cellIndividualOffset: - $ref: '#/components/schemas/CellIndividualOffset' - blackListEntry: - type: array - items: - type: integer - minimum: 0 - maximum: 1007 - blackListEntryIdleMode: - type: integer - cellReselectionPriority: - type: integer - cellReselectionSubPriority: - type: number - minimum: 0.2 - maximum: 0.8 - multipleOf: 0.2 - pMax: - type: integer - minimum: -30 - maximum: 33 - qOffsetFreq: - $ref: '#/components/schemas/QOffsetFreq' - qQualMin: - type: number - qRxLevMin: - type: integer - minimum: -140 - maximum: -44 - threshXHighP: - type: integer - minimum: 0 - maximum: 62 - threshXHighQ: - type: integer - minimum: 0 - maximum: 31 - threshXLowP: - type: integer - minimum: 0 - maximum: 62 - threshXLowQ: - type: integer - minimum: 0 - maximum: 31 - tReselectionEutran: - type: integer - minimum: 0 - maximum: 7 - tReselectionNRSfHigh: - $ref: '#/components/schemas/TReselectionNRSf' - tReselectionNRSfMedium: - $ref: '#/components/schemas/TReselectionNRSf' - eUTranFrequencyRef: - $ref: 'genericNrm.yaml#/components/schemas/Dn' - DANRManagementFunction-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top' - - type: object - properties: - attributes: - type: object - properties: - intrasystemANRManagementSwitch: - type: boolean - intersystemANRManagementSwitch: - type: boolean - - DESManagementFunction-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top' - - type: object - properties: - attributes: - type: object - properties: - desSwitch: - type: boolean - intraRatEsActivationOriginalCellLoadParameters: - $ref: "#/components/schemas/IntraRatEsActivationOriginalCellLoadParameters" - intraRatEsActivationCandidateCellsLoadParameters: - $ref: "#/components/schemas/IntraRatEsActivationCandidateCellsLoadParameters" - intraRatEsDeactivationCandidateCellsLoadParameters: - $ref: "#/components/schemas/IntraRatEsDeactivationCandidateCellsLoadParameters" - esNotAllowedTimePeriod: - $ref: "#/components/schemas/EsNotAllowedTimePeriod" - interRatEsActivationOriginalCellParameters: - $ref: "#/components/schemas/IntraRatEsActivationOriginalCellLoadParameters" - interRatEsActivationCandidateCellParameters: - $ref: "#/components/schemas/IntraRatEsActivationOriginalCellLoadParameters" - interRatEsDeactivationCandidateCellParameters: - $ref: "#/components/schemas/IntraRatEsActivationOriginalCellLoadParameters" - isProbingCapable: - type: string - enum: - - yes - - no - energySavingState: - type: string - enum: - - isNotEnergySaving - - isEnergySaving - - DRACHOptimizationFunction-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top' - - type: object - properties: - attributes: - type: object - properties: - drachOptimizationControl: - type: boolean - ueAccProbilityDist: - $ref: "#/components/schemas/UeAccProbilityDist" - ueAccDelayProbilityDist: - $ref: "#/components/schemas/UeAccDelayProbilityDist" - - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' - - DMROFunction-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top' - - type: object - properties: - attributes: - type: object - properties: - dmroControl: - type: boolean - maximumDeviationHoTrigger: - $ref: '#/components/schemas/MaximumDeviationHoTrigger' - minimumTimeBetweenHoTriggerChange: - $ref: '#/components/schemas/MinimumTimeBetweenHoTriggerChange' - tstoreUEcntxt: - $ref: '#/components/schemas/TstoreUEcntxt' - - DPCIConfigurationFunction-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top' - - type: object - properties: - attributes: - type: object - properties: - dPciConfigurationControl: - type: boolean - nRPciList: - $ref: "#/components/schemas/NRPciList" - - CPCIConfigurationFunction-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top' - - type: object - properties: - attributes: - type: object - properties: - cPciConfigurationControl: - type: boolean - cSonPciList: - $ref: "#/components/schemas/CSonPciList" - - CESManagementFunction-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top' - - type: object - properties: - attributes: - type: object - properties: - cesSwitch: - type: boolean - intraRatEsActivationOriginalCellLoadParameters: - $ref: "#/components/schemas/IntraRatEsActivationOriginalCellLoadParameters" - intraRatEsActivationCandidateCellsLoadParameters: - $ref: "#/components/schemas/IntraRatEsActivationCandidateCellsLoadParameters" - intraRatEsDeactivationCandidateCellsLoadParameters: - $ref: "#/components/schemas/IntraRatEsDeactivationCandidateCellsLoadParameters" - esNotAllowedTimePeriod: - $ref: "#/components/schemas/EsNotAllowedTimePeriod" - interRatEsActivationOriginalCellParameters: - $ref: "#/components/schemas/IntraRatEsActivationOriginalCellLoadParameters" - interRatEsActivationCandidateCellParameters: - $ref: "#/components/schemas/IntraRatEsActivationOriginalCellLoadParameters" - interRatEsDeactivationCandidateCellParameters: - $ref: "#/components/schemas/IntraRatEsActivationOriginalCellLoadParameters" - energySavingControl: - type: string - enum: - - toBeEnergySaving - - toBeNotEnergySaving - energySavingState: - type: string - enum: - - isNotEnergySaving - - isEnergySaving - - RimRSGlobal-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top' - - type: object - properties: - attributes: - type: object - properties: - frequencyDomainPara: - $ref: '#/components/schemas/FrequencyDomainPara' - sequenceDomainPara: - $ref: '#/components/schemas/SequenceDomainPara' - timeDomainPara: - $ref: '#/components/schemas/TimeDomainPara' - RimRSSet: - $ref: '#/components/schemas/RimRSSet-Multiple' - - RimRSSet-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top' - - type: object - properties: - attributes: - type: object - properties: - setId: - $ref: '#/components/schemas/RSSetId' - setType: - $ref: '#/components/schemas/RSSetType' - nRCellDURefs: - $ref: 'genericNrm.yaml#/components/schemas/DnList' - - ExternalGnbDuFunction-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' - - type: object - properties: - gnbId: - $ref: '#/components/schemas/GnbId' - gnbIdLength: - $ref: '#/components/schemas/GnbIdLength' - - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' - - type: object - properties: - EP_F1C: - $ref: '#/components/schemas/EP_F1C-Multiple' - EP_F1U: - $ref: '#/components/schemas/EP_F1U-Multiple' - ExternalGnbCuUpFunction-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' - - type: object - properties: - gnbId: - $ref: '#/components/schemas/GnbId' - gnbIdLength: - $ref: '#/components/schemas/GnbIdLength' - - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' - - type: object - properties: - EP_E1: - $ref: '#/components/schemas/EP_E1-Multiple' - EP_F1U: - $ref: '#/components/schemas/EP_F1U-Multiple' - EP_XnU: - $ref: '#/components/schemas/EP_XnU-Multiple' - ExternalGnbCuCpFunction-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top' - - type: object - properties: - attributes: - allOf: - - $ref: >- - genericNrm.yaml#/components/schemas/ManagedFunction-Attr - - type: object - properties: - gnbId: - $ref: '#/components/schemas/GnbId' - gnbIdLength: - $ref: '#/components/schemas/GnbIdLength' - plmnId: - $ref: '#/components/schemas/PlmnId' - - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' - - type: object - properties: - ExternalNrCellCu: - $ref: '#/components/schemas/ExternalNrCellCu-Multiple' - EP_XnC: - $ref: '#/components/schemas/EP_XnC-Multiple' - EP_E1: - $ref: '#/components/schemas/EP_E1-Multiple' - EP_F1C: - $ref: '#/components/schemas/EP_F1C-Multiple' - ExternalNrCellCu-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' - - type: object - properties: - cellLocalId: - type: integer - nrPci: - $ref: '#/components/schemas/NrPci' - plmnIdList: - $ref: '#/components/schemas/PlmnIdList' - nRFrequencyRef: - $ref: 'genericNrm.yaml#/components/schemas/Dn' - - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' - ExternalENBFunction-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' - - type: object - properties: - eNBId: - type: integer - - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' - - type: object - properties: - ExternalEUTranCell: - $ref: '#/components/schemas/ExternalEUTranCell-Multiple' - ExternalEUTranCell-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' - - type: object - properties: - EUtranFrequencyRef: - $ref: 'genericNrm.yaml#/components/schemas/Dn' - - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' - - EP_XnC-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' - - type: object - properties: - localAddress: - $ref: '#/components/schemas/LocalAddress' - remoteAddress: - $ref: '#/components/schemas/RemoteAddress' - EP_E1-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' - - type: object - properties: - localAddress: - $ref: '#/components/schemas/LocalAddress' - remoteAddress: - $ref: '#/components/schemas/RemoteAddress' - EP_F1C-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' - - type: object - properties: - localAddress: - $ref: '#/components/schemas/LocalAddress' - remoteAddress: - $ref: '#/components/schemas/RemoteAddress' - EP_NgC-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' - - type: object - properties: - localAddress: - $ref: '#/components/schemas/LocalAddress' - remoteAddress: - $ref: '#/components/schemas/RemoteAddress' - EP_X2C-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' - - type: object - properties: - localAddress: - $ref: '#/components/schemas/LocalAddress' - remoteAddress: - $ref: '#/components/schemas/RemoteAddress' - EP_XnU-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' - - type: object - properties: - localAddress: - $ref: '#/components/schemas/LocalAddress' - remoteAddress: - $ref: '#/components/schemas/RemoteAddress' - EP_F1U-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' - - type: object - properties: - localAddress: - $ref: '#/components/schemas/LocalAddress' - remoteAddress: - $ref: '#/components/schemas/RemoteAddress' - epTransportRefs: - $ref: 'genericNrm.yaml#/components/schemas/DnList' - - EP_NgU-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' - - type: object - properties: - localAddress: - $ref: '#/components/schemas/LocalAddress' - remoteAddress: - $ref: '#/components/schemas/RemoteAddress' - epTransportRefs: - $ref: 'genericNrm.yaml#/components/schemas/DnList' - - EP_X2U-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' - - type: object - properties: - localAddress: - $ref: '#/components/schemas/LocalAddress' - remoteAddress: - $ref: '#/components/schemas/RemoteAddress' - EP_S1U-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' - - type: object - properties: - localAddress: - $ref: '#/components/schemas/LocalAddress' - remoteAddress: - $ref: '#/components/schemas/RemoteAddress' - -#-------- Definition of JSON arrays for name-contained IOCs ---------------------- - - SubNetwork-Multiple: - type: array - items: - $ref: '#/components/schemas/SubNetwork-Single' - ManagedElement-Multiple: - type: array - items: - $ref: '#/components/schemas/ManagedElement-Single' - GnbDuFunction-Multiple: - type: array - items: - $ref: '#/components/schemas/GnbDuFunction-Single' - GnbCuUpFunction-Multiple: - type: array - items: - $ref: '#/components/schemas/GnbCuUpFunction-Single' - GnbCuCpFunction-Multiple: - type: array - items: - $ref: '#/components/schemas/GnbCuCpFunction-Single' - - NrCellDu-Multiple: - type: array - items: - $ref: '#/components/schemas/NrCellDu-Single' - NrCellCu-Multiple: - type: array - items: - $ref: '#/components/schemas/NrCellCu-Single' - - NRFrequency-Multiple: - type: array - minItems: 1 - items: - $ref: '#/components/schemas/NRFrequency-Single' - EUtranFrequency-Multiple: - type: array - minItems: 1 - items: - $ref: '#/components/schemas/EUtranFrequency-Single' - - NrSectorCarrier-Multiple: - type: array - items: - $ref: '#/components/schemas/NrSectorCarrier-Single' - Bwp-Multiple: - type: array - items: - $ref: '#/components/schemas/Bwp-Single' - Beam-Multiple: - type: array - items: - $ref: '#/components/schemas/Beam-Single' - RRMPolicyRatio-Multiple: - type: array - items: - $ref: '#/components/schemas/RRMPolicyRatio-Single' - - NRCellRelation-Multiple: - type: array - items: - $ref: '#/components/schemas/NRCellRelation-Single' - EUtranCellRelation-Multiple: - type: array - items: - $ref: '#/components/schemas/EUtranCellRelation-Single' - NRFreqRelation-Multiple: - type: array - items: - $ref: '#/components/schemas/NRFreqRelation-Single' - EUtranFreqRelation-Multiple: - type: array - items: - $ref: '#/components/schemas/EUtranFreqRelation-Single' - - RimRSSet-Multiple: - type: array - items: - $ref: '#/components/schemas/RimRSSet-Single' - - ExternalGnbDuFunction-Multiple: - type: array - items: - $ref: '#/components/schemas/ExternalGnbDuFunction-Single' - ExternalGnbCuUpFunction-Multiple: - type: array - items: - $ref: '#/components/schemas/ExternalGnbCuUpFunction-Single' - ExternalGnbCuCpFunction-Multiple: - type: array - items: - $ref: '#/components/schemas/ExternalGnbCuCpFunction-Single' - ExternalNrCellCu-Multiple: - type: array - items: - $ref: '#/components/schemas/ExternalNrCellCu-Single' - - ExternalENBFunction-Multiple: - type: array - items: - $ref: '#/components/schemas/ExternalENBFunction-Single' - ExternalEUTranCell-Multiple: - type: array - items: - $ref: '#/components/schemas/ExternalEUTranCell-Single' - - EP_E1-Multiple: - type: array - items: - $ref: '#/components/schemas/EP_E1-Single' - EP_XnC-Multiple: - type: array - items: - $ref: '#/components/schemas/EP_XnC-Single' - EP_F1C-Multiple: - type: array - items: - $ref: '#/components/schemas/EP_F1C-Single' - EP_NgC-Multiple: - type: array - items: - $ref: '#/components/schemas/EP_NgC-Single' - EP_X2C-Multiple: - type: array - items: - $ref: '#/components/schemas/EP_X2C-Single' - EP_XnU-Multiple: - type: array - items: - $ref: '#/components/schemas/EP_XnU-Single' - EP_F1U-Multiple: - type: array - items: - $ref: '#/components/schemas/EP_F1U-Single' - EP_NgU-Multiple: - type: array - items: - $ref: '#/components/schemas/EP_NgU-Single' - EP_X2U-Multiple: - type: array - items: - $ref: '#/components/schemas/EP_X2U-Single' - EP_S1U-Multiple: - type: array - items: - $ref: '#/components/schemas/EP_S1U-Single' - -#-------- Definitions in TS 28.541 for TS 28.532 --------------------------------- - - resources-nrNrm: - oneOf: - - $ref: '#/components/schemas/SubNetwork-Single' - - $ref: '#/components/schemas/ManagedElement-Single' - - - $ref: '#/components/schemas/GnbDuFunction-Single' - - $ref: '#/components/schemas/GnbCuUpFunction-Single' - - $ref: '#/components/schemas/GnbCuCpFunction-Single' - - - $ref: '#/components/schemas/NrCellCu-Single' - - $ref: '#/components/schemas/NrCellDu-Single' - - - $ref: '#/components/schemas/NRFrequency-Single' - - $ref: '#/components/schemas/EUtranFrequency-Single' - - - $ref: '#/components/schemas/NrSectorCarrier-Single' - - $ref: '#/components/schemas/Bwp-Single' - - $ref: '#/components/schemas/CommonBeamformingFunction-Single' - - $ref: '#/components/schemas/Beam-Single' - - $ref: '#/components/schemas/RRMPolicyRatio-Single' - - - $ref: '#/components/schemas/NRCellRelation-Single' - - $ref: '#/components/schemas/EUtranCellRelation-Single' - - $ref: '#/components/schemas/NRFreqRelation-Single' - - $ref: '#/components/schemas/EUtranFreqRelation-Single' - - - $ref: '#/components/schemas/DANRManagementFunction-Single' - - $ref: '#/components/schemas/DESManagementFunction-Single' - - $ref: '#/components/schemas/DRACHOptimizationFunction-Single' - - $ref: '#/components/schemas/DMROFunction-Single' - - $ref: '#/components/schemas/DPCIConfigurationFunction-Single' - - $ref: '#/components/schemas/CPCIConfigurationFunction-Single' - - $ref: '#/components/schemas/CESManagementFunction-Single' - - - $ref: '#/components/schemas/RimRSGlobal-Single' - - $ref: '#/components/schemas/RimRSSet-Single' - - - $ref: '#/components/schemas/ExternalGnbDuFunction-Single' - - $ref: '#/components/schemas/ExternalGnbCuUpFunction-Single' - - $ref: '#/components/schemas/ExternalGnbCuCpFunction-Single' - - $ref: '#/components/schemas/ExternalNrCellCu-Single' - - $ref: '#/components/schemas/ExternalENBFunction-Single' - - $ref: '#/components/schemas/ExternalEUTranCell-Single' - - - $ref: '#/components/schemas/EP_XnC-Single' - - $ref: '#/components/schemas/EP_E1-Single' - - $ref: '#/components/schemas/EP_F1C-Single' - - $ref: '#/components/schemas/EP_NgC-Single' - - $ref: '#/components/schemas/EP_X2C-Single' - - $ref: '#/components/schemas/EP_XnU-Single' - - $ref: '#/components/schemas/EP_F1U-Single' - - $ref: '#/components/schemas/EP_NgU-Single' - - $ref: '#/components/schemas/EP_X2U-Single' - - $ref: '#/components/schemas/EP_S1U-Single' diff --git a/OpenAPI/provMnS.yaml b/OpenAPI/provMnS.yaml deleted file mode 100644 index b2f84a4d2..000000000 --- a/OpenAPI/provMnS.yaml +++ /dev/null @@ -1,579 +0,0 @@ -openapi: 3.0.1 -info: - title: Provisioning MnS - version: 16.4.0 - description: >- - OAS 3.0.1 definition of the Provisioning MnS - © 2020, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). - All rights reserved. -externalDocs: - description: 3GPP TS 28.532 V16.4.0; Generic management services - url: http://www.3gpp.org/ftp/Specs/archive/28_series/28.532/ -servers: - - url: 'http://{URI-DN-prefix}/{root}/ProvMnS/v1640/{LDN-first-part}' - variables: - URI-DN-prefix: - description: See subclause 4.4 of TS 32.158 - default: example.com - root: - description: See subclause 4.4 of TS 32.158 - default: 3GPPManagement - LDN-first-part: - description: See subclause 4.4 of TS 32.158 - default: '' -paths: - '/{className}={id}': - parameters: - - name: className - in: path - required: true - schema: - $ref: '#/components/schemas/className-PathType' - - name: id - in: path - required: true - schema: - $ref: '#/components/schemas/id-PathType' - put: - summary: Replaces a complete single resource or creates it if it does not exist - description: >- - With HTTP PUT a complete resource is replaced or created if it does not - exist. The target resource is identified by the target URI. - requestBody: - required: true - content: - application/json: - schema: - $ref: '#/components/schemas/resourcePut-RequestType' - responses: - '200': - description: >- - Success case ("200 OK"). - This status code shall be returned when the resource is replaced, and - when the replaced resource representation is not identical to the resource - representation in the request. - This status code may be retourned when the resource is updated and when the - updated resource representation is identical to the resource representation - in the request. - The representation of the updated resource is returned in the response - message body. - content: - application/json: - schema: - $ref: '#/components/schemas/resourceUpdate-ResponseType' - '201': - description: >- - Success case ("201 Created"). - This status code shall be returned when the resource is created. - The representation of the created resource is returned in the response - message body. - content: - application/json: - schema: - $ref: '#/components/schemas/resourceCreation-ResponseType' - '204': - description: >- - Success case ("204 No Content"). - This status code may be returned only when the replaced resource - representation is identical to the representation in the request. - The response has no message body. - default: - description: Error case. - content: - application/json: - schema: - $ref: '#/components/schemas/error-ResponseType' - callbacks: - notifyMOICreation: - '{request.body#/notificationRecipientAddress}': - post: - requestBody: - required: true - content: - application/json: - schema: - $ref: '#/components/schemas/notifyMOICreation-NotifType' - responses: - '204': - description: >- - Success case ("204 No Content"). - The notification is successfully delivered. The response - has no message body. - default: - description: Error case. - content: - application/json: - schema: - $ref: '#/components/schemas/error-ResponseType' - notifyMOIDeletion: - '{request.body#/notificationRecipientAddress}': - post: - requestBody: - required: true - content: - application/json: - schema: - $ref: '#/components/schemas/notifyMOIDeletion-NotifType' - responses: - '204': - description: >- - Success case ("204 No Content"). - The notification is successfully delivered. The response - has no message body. - default: - description: Error case. - content: - application/json: - schema: - $ref: '#/components/schemas/error-ResponseType' - notifyMOIAttributeValueChange: - '{request.body#/notificationRecipientAddress}': - post: - requestBody: - required: true - content: - application/json: - schema: - $ref: '#/components/schemas/notifyMOIAttributeValueChange-NotifType' - responses: - '204': - description: >- - Success case ("204 No Content"). - The notification is successfully delivered. The response - has no message body. - default: - description: Error case. - content: - application/json: - schema: - $ref: '#/components/schemas/error-ResponseType' - notifyMOIChanges: - '{request.body#/notificationRecipientAddress}': - post: - requestBody: - required: true - content: - application/json: - schema: - $ref: '#/components/schemas/notifyMOIChanges-NotifType' - responses: - '204': - description: >- - Success case ("204 No Content"). - The notification is successfully delivered. The response - has no message body. - default: - description: Error case. - content: - application/json: - schema: - $ref: '#/components/schemas/error-ResponseType' - get: - summary: Reads one or multiple resources - description: >- - With HTTP GET resources are read. The resources to be retrieved are - identified with the target URI. The attributes and fields parameter - of the query components allow to select the resource properties to be returned. - parameters: - - name: scope - in: query - description: >- - This parameter extends the set of targeted resources beyond the base - resource identified with the path component of the URI. No scoping - mechanism is specified in the present document. - required: false - schema: - $ref: '#/components/schemas/scope-QueryType' - style: form - explode: true - - name: filter - in: query - description: >- - This parameter reduces the targeted set of resources by applying a - filter to the scoped set of resource representations. Only resource - representations for which the filter construct evaluates to "true" - are targeted. No filter language is specified in the present - document. - required: false - schema: - $ref: '#/components/schemas/filter-QueryType' - - name: attributes - in: query - description: >- - This parameter specifies the attributes of the scoped resources that - are returned. - required: true - schema: - $ref: '#/components/schemas/attributes-QueryType' - style: form - explode: false - - name: fields - in: query - description: >- - This parameter specifies the attribute field of the scoped resources - that are returned. - required: false - schema: - $ref: '#/components/schemas/fields-QueryType' - style: form - explode: false - responses: - '200': - description: >- - Success case ("200 OK"). - The resources identified in the request for retrieval are returned - in the response message body. In case the attributes or fields query - parameters are used, only the selected attributes or sub-attributes are - returned. The response message body is constructed according to the - hierarchical response construction method (TS 32.158 [15]). - content: - application/json: - schema: - $ref: '#/components/schemas/resourceRetrieval-ResponseType' - default: - description: Error case. - content: - application/json: - schema: - $ref: '#/components/schemas/error-ResponseType' - patch: - summary: Patches one or multiple resources - description: >- - With HTTP PATCH resources are created, updated or deleted. The resources - to be modified are identified with the target URI (base resource) and - the patch document included in the request message body. - requestBody: - description: >- - The request body describes changes to be made to the target resources. - The following patch media types are available - - "application/merge-patch+json" (RFC 7396) - - "application/3gpp-merge-patch+json" (TS 32.158) - - "application/json-patch+json" (RFC 6902) - - "application/3gpp-json-patch+json" (TS 32.158) - required: true - content: - application/merge-patch+json: - schema: - $ref: '#/components/schemas/jsonMergePatch-RequestType' - application/3gpp-merge-patch+json: - schema: - $ref: '#/components/schemas/3gppJsonMergePatch-RequestType' - application/json-patch+json: - schema: - $ref: '#/components/schemas/jsonPatch-RequestType' - application/3gpp-json-patch+json: - schema: - $ref: '#/components/schemas/3gppJsonPatch-RequestType' - responses: - '200': - description: >- - Success case ("200 OK"). - This status code is returned when the updated the resource representations - shall be returned for some reason. - The resource representations are returned in the response message body. The - response message body is constructed according to the hierarchical response - construction method (TS 32.158 [15]) - content: - application/json: - schema: - $ref: '#/components/schemas/resourceUpdate-ResponseType' - '204': - description: >- - Success case ("204 No Content"). - This status code is returned when there is no need to return the updated - resource representations. - The response message body is empty. - default: - description: Error case. - content: - application/json: - schema: - $ref: '#/components/schemas/error-ResponseType' - delete: - summary: Deletes one or multiple resources - description: >- - With HTTP DELETE resources are deleted. The resources to be deleted are - identified with the target URI. - parameters: - - name: scope - in: query - description: >- - This parameter extends the set of targeted resources beyond the base - resource identified with the path component of the URI. No scoping - mechanism is specified in the present document. - required: false - schema: - $ref: '#/components/schemas/scope-QueryType' - - name: filter - in: query - description: >- - This parameter reduces the targeted set of resources by applying a - filter to the scoped set of resource representations. Only resources - representations for which the filter construct evaluates to "true" - are returned. No filter language is specified in the present - document. - required: false - schema: - $ref: '#/components/schemas/filter-QueryType' - responses: - '200': - description: >- - Success case ("200 OK"). - This status code shall be returned, when query parameters are present in - the request and one or multiple resources are deleted. - The URIs of the deleted resources are returned in the response message body. - '204': - description: >- - Success case ("204 No Content"). - This status code shall be returned, when no query parameters are present in - the request and only one resource is deleted. - The message body is empty. - content: - application/json: - schema: - $ref: '#/components/schemas/resourceDeletion-ResponseType' - default: - description: Error case. - content: - application/json: - schema: - $ref: '#/components/schemas/error-ResponseType' -components: - schemas: - dateTime-Type: - type: string - format: date-time - long-Type: - type: integer - format: int64 - uri-Type: - type: string - correlatedNotification-Type: - type: object - properties: - source: - $ref: '#/components/schemas/uri-Type' - notificationIds: - type: array - items: - $ref: '#/components/schemas/notificationId-Type' - notificationId-Type: - $ref: '#/components/schemas/long-Type' - notificationType-Type: - type: string - enum: - - notifyMOICreation - - notifyMOIDeletion - - notifyMOIAttributeValueChange - systemDN-Type: - type: string - additionalText-Type: - type: string - sourceIndicator-Type: - type: string - enum: - - resourceOperation - - mangementOperation - - sONOperation - - unknown - header-Type: - type: object - properties: - href: - $ref: '#/components/schemas/uri-Type' - notificationId: - $ref: '#/components/schemas/notificationId-Type' - notificationType: - $ref: '#/components/schemas/notificationType-Type' - eventTime: - $ref: '#/components/schemas/dateTime-Type' - systemDN: - $ref: '#/components/schemas/systemDN-Type' - required: - - href - - notificationId - - notificationType - - eventTime - - systemDN - scopeType-Type: - type: string - enum: - - BASE_ONLY - - BASE_NTH_LEVEL - - BASE_SUBTREE - - BASE_ALL - scopeLevel-Type: - type: integer - className-PathType: - type: string - id-PathType: - type: string - attributes-QueryType: - type: array - items: - type: string - fields-QueryType: - type: array - items: - type: string - filter-QueryType: - type: string - scope-QueryType: - type: object - properties: - scopeType: - $ref: '#/components/schemas/scopeType-Type' - scopeLevel: - $ref: '#/components/schemas/scopeLevel-Type' - - resourcePut-RequestType: - $ref: '#/components/schemas/resourceRepresentation-Type' - jsonMergePatch-RequestType: - $ref: '#/components/schemas/resourceRepresentation-Type' - 3gppJsonMergePatch-RequestType: - $ref: '#/components/schemas/resourceRepresentation-Type' - jsonPatch-RequestType: - type: array - items: - type: object - 3gppJsonPatch-RequestType: - type: array - items: - type: object - - error-ResponseType: - type: object - properties: - error: - type: object - properties: - errorInfo: - type: string - resourceRetrieval-ResponseType: - $ref: '#/components/schemas/resourceRepresentation-Type' - resourceCreation-ResponseType: - $ref: '#/components/schemas/resourceRepresentation-Type' - resourceUpdate-ResponseType: - $ref: '#/components/schemas/resourceRepresentation-Type' - resourceDeletion-ResponseType: - type: array - items: - $ref: '#/components/schemas/uri-Type' - - resourceRepresentation-Type: - oneOf: - - type: object - properties: - id: - type: string - attributes: - type: object - additionalProperties: - type: array - items: - type: object - - anyOf: - - $ref: 'genericNrm.yaml#/components/schemas/resources-genericNrm' - - $ref: 'nrNrm.yaml#/components/schemas/resources-nrNrm' - - $ref: '5gcNrm.yaml#/components/schemas/resources-5gcNrm' - - $ref: 'sliceNrm.yaml#/components/schemas/resources-sliceNrm' - - mOIChange-Type: - type: object - properties: - notificationId: - $ref: '#/components/schemas/notificationId-Type' - correlatedNotifications: - type: array - items: - $ref: '#/components/schemas/correlatedNotification-Type' - additionalText: - $ref: '#/components/schemas/additionalText-Type' - sourceIndicator: - $ref: '#/components/schemas/sourceIndicator-Type' - path: - $ref: '#/components/schemas/uri-Type' - operation: - type: string - enum: - - CREATE - - DELETE - - REPLACE - value: - oneOf: - - type: object - additionalProperties: - nullable: true - - type: array - items: - type: object - minItems: 1 - maxItems: 2 - - notifyMOICreation-NotifType: - allOf: - - $ref: '#/components/schemas/header-Type' - - type: object - properties: - correlatedNotifications: - type: array - items: - $ref: '#/components/schemas/correlatedNotification-Type' - additionalText: - $ref: '#/components/schemas/additionalText-Type' - sourceIndicator: - $ref: '#/components/schemas/sourceIndicator-Type' - attributeList: - type: object - additionalProperties: - nullable: true - notifyMOIDeletion-NotifType: - allOf: - - $ref: '#/components/schemas/header-Type' - - type: object - properties: - correlatedNotifications: - type: array - items: - $ref: '#/components/schemas/correlatedNotification-Type' - additionalText: - $ref: '#/components/schemas/additionalText-Type' - sourceIndicator: - $ref: '#/components/schemas/sourceIndicator-Type' - attributeList: - type: object - additionalProperties: true - notifyMOIAttributeValueChange-NotifType: - allOf: - - $ref: '#/components/schemas/header-Type' - - type: object - properties: - correlatedNotifications: - type: array - items: - $ref: '#/components/schemas/correlatedNotification-Type' - additionalText: - $ref: '#/components/schemas/additionalText-Type' - sourceIndicator: - $ref: '#/components/schemas/sourceIndicator-Type' - attributeValueChange: - type: object - additionalProperties: - type: array - minItems: 1 - maxItems: 2 - items: - nullable: true - required: - - attributeValueChange - notifyMOIChanges-NotifType: - allOf: - - $ref: '#/components/schemas/header-Type' - - type: object - properties: - mOIChanges: - type: array - items: - $ref: '#/components/schemas/mOIChange-Type' - required: - - mOIChanges diff --git a/OpenAPI/sliceNrm.yaml b/OpenAPI/sliceNrm.yaml deleted file mode 100644 index bf6b4d71c..000000000 --- a/OpenAPI/sliceNrm.yaml +++ /dev/null @@ -1,632 +0,0 @@ -openapi: 3.0.1 -info: - title: Slice NRM - version: 17.4.0 - description: >- - OAS 3.0.1 specification of the Slice NRM - @ 2020, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). - All rights reserved. -externalDocs: - description: 3GPP TS 28.541; 5G NRM, Slice NRM - url: http://www.3gpp.org/ftp/Specs/archive/28_series/28.541/ -paths: {} -components: - schemas: - -#------------ Type definitions --------------------------------------------------- - - Float: - type: number - format: float - MobilityLevel: - type: string - enum: - - STATIONARY - - NOMADIC - - RESTRICTED MOBILITY - - FULLY MOBILITY - SynAvailability: - type: string - enum: - - NOT SUPPORTED - - BETWEEN BS AND UE - - BETWEEN BS AND UE & UE AND UE - PositioningAvailability: - type: array - items: - type: string - enum: - - CIDE-CID - - OTDOA - - RF FINGERPRINTING - - AECID - - HYBRID POSITIONING - - NET-RTK - Predictionfrequency: - type: string - enum: - - PERSEC - - PERMIN - - PERHOUR - SharingLevel: - type: string - enum: - - SHARED - - NON-SHARED - - NetworkSliceSharingIndicator: - type: string - enum: - - SHARED - - NON-SHARED - - ServiceType: - type: string - enum: - - eMBB - - RLLC - - MIoT - - V2X - SliceSimultaneousUse: - type: string - enum: - - ZERO - - ONE - - TWO - - THREE - - FOUR - Category: - type: string - enum: - - CHARACTER - - SCALABILITY - Tagging: - type: array - items: - type: string - enum: - - PERFORMANCE - - FUNCTION - - OPERATION - Exposure: - type: string - enum: - - API - - KPI - ServAttrCom: - type: object - properties: - category: - $ref: '#/components/schemas/Category' - tagging: - $ref: '#/components/schemas/Tagging' - exposure: - $ref: '#/components/schemas/Exposure' - Support: - type: string - enum: - - NOT SUPPORTED - - SUPPORTED - DelayTolerance: - type: object - properties: - servAttrCom: - $ref: '#/components/schemas/ServAttrCom' - support: - $ref: '#/components/schemas/Support' - DeterministicComm: - type: object - properties: - servAttrCom: - $ref: '#/components/schemas/ServAttrCom' - availability: - $ref: '#/components/schemas/Support' - periodicityList: - type: string - XLThpt: - type: object - properties: - servAttrCom: - $ref: '#/components/schemas/ServAttrCom' - guaThpt: - $ref: '#/components/schemas/Float' - maxThpt: - $ref: '#/components/schemas/Float' - MaxPktSize: - type: object - properties: - servAttrCom: - $ref: '#/components/schemas/ServAttrCom' - maxsize: - type: integer - MaxNumberofPDUSessions: - type: object - properties: - servAttrCom: - $ref: '#/components/schemas/ServAttrCom' - nOofPDUSessions: - type: integer - KPIMonitoring: - type: object - properties: - servAttrCom: - $ref: '#/components/schemas/ServAttrCom' - kPIList: - type: string - NBIoT: - type: object - properties: - servAttrCom: - $ref: '#/components/schemas/ServAttrCom' - support: - $ref: '#/components/schemas/Support' - RadioSpectrum: - type: object - properties: - servAttrCom: - $ref: '#/components/schemas/ServAttrCom' - nROperatingBands: - type: string - Synchronicity: - type: object - properties: - servAttrCom: - $ref: '#/components/schemas/ServAttrCom' - availability: - $ref: '#/components/schemas/SynAvailability' - accuracy: - $ref: '#/components/schemas/Float' - SynchronicityRANSubnet: - type: object - properties: - availability: - $ref: '#/components/schemas/SynAvailability' - accuracy: - $ref: '#/components/schemas/Float' - Positioning: - type: object - properties: - servAttrCom: - $ref: '#/components/schemas/ServAttrCom' - availability: - $ref: '#/components/schemas/PositioningAvailability' - predictionfrequency: - $ref: '#/components/schemas/Predictionfrequency' - accuracy: - $ref: '#/components/schemas/Float' - PositioningRANSubnet: - type: object - properties: - availability: - $ref: '#/components/schemas/PositioningAvailability' - predictionfrequency: - $ref: '#/components/schemas/Predictionfrequency' - accuracy: - $ref: '#/components/schemas/Float' - UserMgmtOpen: - type: object - properties: - servAttrCom: - $ref: '#/components/schemas/ServAttrCom' - support: - $ref: '#/components/schemas/Support' - V2XCommModels: - type: object - properties: - servAttrCom: - $ref: '#/components/schemas/ServAttrCom' - v2XMode: - $ref: '#/components/schemas/Support' - TermDensity: - type: object - properties: - servAttrCom: - $ref: '#/components/schemas/ServAttrCom' - density: - type: integer - NsInfo: - type: object - properties: - nsInstanceId: - type: string - nsName: - type: string - EmbbEEPerfReq: - type: integer - UrllcEEPerfReq: - type: integer - MIoTEEPerfReq: - type: object - properties: - KpiType: - type: string - enum: - - MAXREGSUBS - - MEANACTIVEUES - Req: - type: integer - EEPerfReq: - oneOf: - - $ref: '#/components/schemas/EmbbEEPerfReq' - - $ref: '#/components/schemas/UrllcEEPerfReq' - - $ref: '#/components/schemas/MIoTEEPerfReq' - EnergyEfficiency: - type: object - properties: - servAttrCom: - $ref: '#/components/schemas/ServAttrCom' - performance: - $ref: '#/components/schemas/EEPerfReq' - CNSliceSubnetProfile: - type: object - properties: - maxNumberofUEs: - type: integer - latency: - type: integer - dLThptPerSliceSubnet: - $ref: '#/components/schemas/XLThpt' - dLThptPerUE: - $ref: '#/components/schemas/XLThpt' - uLThptPerSliceSubnet: - $ref: '#/components/schemas/XLThpt' - uLThptPerUE: - $ref: '#/components/schemas/XLThpt' - maxNumberOfPDUSessions: - type: integer - coverageAreaTAList: - type: integer - resourceSharingLevel: - $ref: '#/components/schemas/SharingLevel' - dLMaxPktSize: - type: integer - uLMaxPktSize: - type: integer - delayTolerance: - $ref: '#/components/schemas/DelayTolerance' - synchronicity: - $ref: '#/components/schemas/SynchronicityRANSubnet' - sliceSimultaneousUse: - $ref: '#/components/schemas/SliceSimultaneousUse' - reliability: - type: string - energyEfficiency: - type: integer - dLDeterministicComm: - $ref: '#/components/schemas/DeterministicComm' - uLDeterministicComm: - $ref: '#/components/schemas/DeterministicComm' - survivalTime: - type: string - RANSliceSubnetProfile: - type: object - properties: - coverageAreaTAList: - type: integer - uEMobilityLevel: - $ref: '#/components/schemas/MobilityLevel' - resourceSharingLevel: - $ref: '#/components/schemas/SharingLevel' - maxNumberofUEs: - type: integer - activityFactor: - type: integer - dLThptPerUE: - $ref: '#/components/schemas/XLThpt' - uLThptPerUE: - $ref: '#/components/schemas/XLThpt' - uESpeed: - type: integer - reliability: - type: string - serviceType: - $ref: '#/components/schemas/ServiceType' - dLMaxPktSize: - type: integer - uLMaxPktSize: - type: integer - nROperatingBands: - type: string - delayTolerance: - $ref: '#/components/schemas/DelayTolerance' - positioning: - $ref: '#/components/schemas/PositioningRANSubnet' - sliceSimultaneousUse: - $ref: '#/components/schemas/SliceSimultaneousUse' - energyEfficiency: - type: integer - termDensity: - $ref: '#/components/schemas/TermDensity' - survivalTime: - type: string - synchronicity: - $ref: '#/components/schemas/SynchronicityRANSubnet' - dLDeterministicComm: - $ref: '#/components/schemas/DeterministicComm' - uLDeterministicComm: - $ref: '#/components/schemas/DeterministicComm' - TopSliceSubnetProfile: - type: object - properties: - latency: - type: integer - maxNumberofUEs: - type: integer - dLThptPerSliceSubnet: - $ref: '#/components/schemas/XLThpt' - dLThptPerUE: - $ref: '#/components/schemas/XLThpt' - uLThptPerSliceSubnet: - $ref: '#/components/schemas/XLThpt' - uLThptPerUE: - $ref: '#/components/schemas/XLThpt' - dLMaxPktSize: - type: integer - uLMaxPktSize: - type: integer - maxNumberOfPDUSessions: - type: integer - nROperatingBands: - type: string - sliceSimultaneousUse: - $ref: '#/components/schemas/SliceSimultaneousUse' - energyEfficiency: - type: integer - synchronicity: - $ref: '#/components/schemas/Synchronicity' - delayTolerance: - $ref: '#/components/schemas/DelayTolerance' - positioning: - $ref: '#/components/schemas/Positioning' - termDensity: - $ref: '#/components/schemas/TermDensity' - activityFactor: - type: integer - coverageAreaTAList: - type: integer - resourceSharingLevel: - $ref: '#/components/schemas/SharingLevel' - uEMobilityLevel: - $ref: '#/components/schemas/MobilityLevel' - uESpeed: - type: integer - reliability: - type: string - serviceType: - $ref: '#/components/schemas/ServiceType' - dLDeterministicComm: - $ref: '#/components/schemas/DeterministicComm' - uLDeterministicComm: - $ref: '#/components/schemas/DeterministicComm' - survivalTime: - type: string - - ServiceProfile: - type: object - properties: - serviceProfileId: - type: string - plmnInfoList: - $ref: 'nrNrm.yaml#/components/schemas/PlmnInfoList' - maxNumberofUEs: - type: number - latency: - type: number - uEMobilityLevel: - $ref: '#/components/schemas/MobilityLevel' - sst: - $ref: 'nrNrm.yaml#/components/schemas/Sst' - networkSliceSharingIndicator: - $ref: '#/components/schemas/NetworkSliceSharingIndicator' - availability: - type: number - delayTolerance: - $ref: '#/components/schemas/DelayTolerance' - dLDeterministicComm: - $ref: '#/components/schemas/DeterministicComm' - uLDeterministicComm: - $ref: '#/components/schemas/DeterministicComm' - dLThptPerSlice: - $ref: '#/components/schemas/XLThpt' - dLThptPerUE: - $ref: '#/components/schemas/XLThpt' - uLThptPerSlice: - $ref: '#/components/schemas/XLThpt' - uLThptPerUE: - $ref: '#/components/schemas/XLThpt' - dLMaxPktSize: - $ref: '#/components/schemas/MaxPktSize' - uLMaxPktSize: - $ref: '#/components/schemas/MaxPktSize' - maxNumberofPDUSessions: - $ref: '#/components/schemas/MaxNumberofPDUSessions' - kPIMonitoring: - $ref: '#/components/schemas/KPIMonitoring' - nBIoT: - $ref: '#/components/schemas/NBIoT' - radioSpectrum: - $ref: '#/components/schemas/RadioSpectrum' - synchronicity: - $ref: '#/components/schemas/Synchronicity' - positioning: - $ref: '#/components/schemas/Positioning' - userMgmtOpen: - $ref: '#/components/schemas/UserMgmtOpen' - v2XModels: - $ref: '#/components/schemas/V2XCommModels' - coverageArea: - type: string - termDensity: - $ref: '#/components/schemas/TermDensity' - activityFactor: - $ref: '#/components/schemas/Float' - uESpeed: - type: integer - jitter: - type: integer - survivalTime: - type: string - reliability: - type: string - maxDLDataVolume: - type: string - maxULDataVolume: - type: string - sliceSimultaneousUse: - $ref: '#/components/schemas/SliceSimultaneousUse' - energyEfficiency: - $ref: '#/components/schemas/EnergyEfficiency' - SliceProfile: - type: object - properties: - serviceProfileId: - type: string - plmnInfoList: - $ref: 'nrNrm.yaml#/components/schemas/PlmnInfoList' - cNSliceSubnetProfile: - $ref: '#/components/schemas/CNSliceSubnetProfile' - rANSliceSubnetProfile: - $ref: '#/components/schemas/RANSliceSubnetProfile' - topSliceSubnetProfile: - $ref: '#/components/schemas/TopSliceSubnetProfile' - - IpAddress: - oneOf: - - $ref: 'genericNrm.yaml#/components/schemas/Ipv4Addr' - - $ref: 'genericNrm.yaml#/components/schemas/Ipv6Addr' - - LogicInterfaceInfo: - type: object - properties: - logicalInterfceType: - type: string - enum: - - VLAN - - MPLS - - Segment - logicalInterfceId: - type: string - - ServiceProfileList: - type: array - items: - $ref: '#/components/schemas/ServiceProfile' - - SliceProfileList: - type: array - items: - $ref: '#/components/schemas/SliceProfile' - -#------------ Definition of concrete IOCs ---------------------------------------- - SubNetwork-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top' - - type: object - properties: - attributes: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/SubNetwork-Attr' - - $ref: 'genericNrm.yaml#/components/schemas/SubNetwork-ncO' - - type: object - properties: - SubNetwork: - $ref: '#/components/schemas/SubNetwork-Multiple' - NetworkSlice: - $ref: '#/components/schemas/NetworkSlice-Multiple' - NetworkSliceSubnet: - $ref: '#/components/schemas/NetworkSliceSubnet-Multiple' - EP_Transport: - $ref: '#/components/schemas/EP_Transport-Multiple' - - NetworkSlice-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top' - - type: object - properties: - attributes: - allOf: - - type: object - properties: - networkSliceSubnetRef: - $ref: 'genericNrm.yaml#/components/schemas/Dn' - operationalState: - $ref: 'genericNrm.yaml#/components/schemas/OperationalState' - administrativeState: - $ref: 'genericNrm.yaml#/components/schemas/AdministrativeState' - serviceProfileList: - $ref: '#/components/schemas/ServiceProfileList' - - NetworkSliceSubnet-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top' - - type: object - properties: - attributes: - allOf: - - type: object - properties: - managedFunctionRefList: - $ref: 'genericNrm.yaml#/components/schemas/DnList' - networkSliceSubnetRefList: - $ref: 'genericNrm.yaml#/components/schemas/DnList' - operationalState: - $ref: 'genericNrm.yaml#/components/schemas/OperationalState' - administrativeState: - $ref: 'genericNrm.yaml#/components/schemas/AdministrativeState' - nsInfo: - $ref: '#/components/schemas/NsInfo' - sliceProfileList: - $ref: '#/components/schemas/SliceProfileList' - epTransportRefList: - $ref: 'genericNrm.yaml#/components/schemas/DnList' - priorityLabel: - type: integer - - EP_Transport-Single: - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/Top' - - type: object - properties: - attributes: - type: object - properties: - ipAddress: - $ref: '#/components/schemas/IpAddress' - logicInterfaceInfo: - $ref: '#/components/schemas/LogicInterfaceInfo' - nextHopInfo: - type: string - qosProfile: - type: string - epApplicationRefs: - $ref: 'genericNrm.yaml#/components/schemas/DnList' - -#-------- Definition of JSON arrays for name-contained IOCs ---------------------- - SubNetwork-Multiple: - type: array - items: - $ref: '#/components/schemas/SubNetwork-Single' - - NetworkSlice-Multiple: - type: array - items: - $ref: '#/components/schemas/NetworkSlice-Single' - - NetworkSliceSubnet-Multiple: - type: array - items: - $ref: '#/components/schemas/NetworkSliceSubnet-Single' - - EP_Transport-Multiple: - type: array - items: - $ref: '#/components/schemas/EP_Transport-Single' - -#------------ Definitions in TS 28.541 for TS 28.532 ----------------------------- - - resources-sliceNrm: - oneOf: - - $ref: '#/components/schemas/SubNetwork-Single' - - $ref: '#/components/schemas/NetworkSlice-Single' - - $ref: '#/components/schemas/NetworkSliceSubnet-Single' - - $ref: '#/components/schemas/EP_Transport-Single' diff --git a/OpenAPI/streamingDataMnS.yaml b/OpenAPI/streamingDataMnS.yaml deleted file mode 100644 index ab7f71d4a..000000000 --- a/OpenAPI/streamingDataMnS.yaml +++ /dev/null @@ -1,453 +0,0 @@ -openapi: 3.0.1 -info: - title: TS 28.532 Streaming data reporting service - version: 16.4.0 - description: OAS 3.0.1 specification for the Streaming data reporting service (Streaming MnS) -servers: - - url: '{protocol}://{root}/StreamingDataReportingMnS/{version}' - variables: - protocol: - description: Protocol used - enum: - - http - - https - - wss - default: https - root: - description: Indicates the host name and optional port, and an optional sequence of path segments that together represent a prefix path. - default: example.com - version: - description: Indicates the current version of the specification - default: 16.4.0 -paths: - '/connections': - post: - summary: Inform consumer about reporting streams to be carried by the new connection and receive a new connection id. - description: Exchange of meta-data (producer informs consumer about its own identity and the nature of the data to be reported via streaming) phase of the connection establishement by streaming data reporting producer to the streaming data reporting consumer (i.e. streaming target). - requestBody: - required: true - content: - application/json: - schema: - $ref: '#/components/schemas/connectionRequest-Type' - responses: - '201': - description: Success case (201 Created). - headers: - Location: - description: Location of the created connection resource. - schema: - $ref: '#/components/schemas/connectionId-Type' - default: - description: Error case. - content: - application/json: - schema: - $ref: '#/components/schemas/failedConnectionResponse-Type' - get: - summary: Obtain information about connections. - description: Enables the streaming data reporting service producer to obtain information about one or more streaming connections. - parameters: - - name: connectionIdList - in: query - description: The list of connectionId for which the connection information is to be returned. - required: false - schema: - type: array - items: - $ref: '#/components/schemas/connectionId-Type' - responses: - '200': - description: Success case (200 OK). The resources identified in the request for retrieval are returned in the response message body. In case the fields query parameter is used, the selected resources are returned. - content: - application/json: - schema: - type: array - items: - $ref: '#/components/schemas/connectionInfo-Type' - '202': - description: Partial success case (202 Partially retrieved). Subset of the resources identified in the request for retrieval are returned in the response message body. - content: - application/json: - schema: - type: array - items: - $ref: '#/components/schemas/connectionInfo-Type' - default: - description: Error case. - content: - application/json: - schema: - $ref: '#/components/schemas/errorResponse-Type' - '/connections/{connectionId}': - get: - summary: Obtain information about a connection. - description: Enables the streaming data reporting service producer to obtain information about one streaming connection. - parameters: - - name: connectionId - in: path - description: Indicate the ID (URI) of the connection for which the information is being retrieved - required: true - schema: - $ref: '#/components/schemas/connectionId-Type' - - name: Connection - in: header - schema: - $ref: '#/components/schemas/websocketHeaderConnection-Type' - - name: Sec-WebSocket-Extensions - in: header - schema: - $ref: '#/components/schemas/websocketHeader-Sec-WebSocket-Extensions-Type' - - name: Sec-WebSocket-Key - in: header - schema: - $ref: '#/components/schemas/websocketHeader-Sec-WebSocket-Key-Type' - - name: Sec-WebSocket-Protocol - in: header - schema: - $ref: '#/components/schemas/websocketHeader-Sec-WebSocket-Protocol-Type' - - name: Sec-WebSocket-Version - in: header - schema: - $ref: '#/components/schemas/websocketHeader-Sec-WebSocket-Version-Type' - responses: - '101': - description: Success case (101 Switching Protocols). The connection has been successfully switched to WebSocket. The response message body is absent. - headers: - Upgrade: - schema: - $ref: '#/components/schemas/websocketHeaderUpgrade-Type' - Connection: - schema: - $ref: '#/components/schemas/websocketHeaderConnection-Type' - Sec-WebSocket-Accept: - schema: - $ref: '#/components/schemas/websocketHeader-Sec-WebSocket-Accept-Type' - '200': - description: Success case (200 OK). The resource identified in the request for retrieval returned in the response message body. - content: - application/json: - schema: - $ref: '#/components/schemas/connectionInfo-Type' - default: - description: Error case. - content: - application/json: - schema: - $ref: '#/components/schemas/errorResponse-Type' - '/connections/{connectionId}/streams': - post: - summary: Inform consumer about new reporting streams on an existing connection. - description: Allows the producer to add one or more reporting streams to an already established streaming connection. - parameters: - - name: connectionId - in: path - description: Indicate the ID (URI) of the connection for which the reporting stream information is being added. - required: true - schema: - $ref: '#/components/schemas/connectionId-Type' - requestBody: - required: true - content: - application/json: - schema: - type: array - items: - $ref: '#/components/schemas/streamInfo-Type' - responses: - '201': - description: Success case (201 Posted). - content: - application/json: - schema: - type: array - items: - $ref: '#/components/schemas/streamInfo-Type' - '202': - description: Partial success case (202 Posted). - content: - application/json: - schema: - type: array - items: - $ref: '#/components/schemas/streamInfo-Type' - default: - description: Error case. - content: - application/json: - schema: - $ref: '#/components/schemas/errorResponse-Type' - delete: - summary: Remove reporting streams from an existing connection - description: Allows the producer to remove one or more reporting streams from an already established streaming connection. - parameters: - - name: connectionId - in: path - description: Indicate the ID (URI) of the connection for which the reporting stream information is being removed. - required: true - schema: - $ref: '#/components/schemas/connectionId-Type' - - name: streamIds - in: query - description: The list of streamId for the stream(s) to be deleted. - required: true - schema: - type: array - items: - $ref: '#/components/schemas/streamId-Type' - responses: - '204': - description: Success case (204 No Content). The stream information resource has been deleted. The response message body is absent. - default: - description: Error case. - content: - application/json: - schema: - $ref: '#/components/schemas/errorResponse-Type' - get: - summary: Obtain information about streams. - description: Enables the streaming data reporting service producer to obtain information about one or more reporting streams. - parameters: - - name: connectionId - in: path - description: Indicate the ID (URI) of the connection for which the information is being retrieved - required: true - schema: - $ref: '#/components/schemas/connectionId-Type' - - name: streamIds - in: query - description: The list of streamId for which the stream information is to be retrieved. - required: true - schema: - type: array - items: - $ref: '#/components/schemas/streamId-Type' - responses: - '200': - description: Success case (200 OK). - content: - application/json: - schema: - type: array - items: - $ref: '#/components/schemas/streamInfoWithReporters-Type' - '202': - description: Partial success case (202 Partially retrieved). - content: - application/json: - schema: - type: array - items: - $ref: '#/components/schemas/streamInfoWithReporters-Type' - default: - description: Error case. - content: - application/json: - schema: - $ref: '#/components/schemas/errorResponse-Type' - '/connections/{connectionId}/streams/{streamId}': - get: - summary: Obtain information about stream - description: Enables the streaming data reporting service producer to obtain information about a reporting stream. - parameters: - - name: connectionId - in: path - description: Indicate the ID (URI) of the connection for which the information is being retrieved - required: true - schema: - $ref: '#/components/schemas/connectionId-Type' - - name: streamId - in: path - description: Indicate the ID of the reporting stream for which the information is being retrieved - required: true - schema: - $ref: '#/components/schemas/streamId-Type' - responses: - '200': - description: Success case (200 OK). - content: - application/json: - schema: - $ref: '#/components/schemas/streamInfoWithReporters-Type' - default: - description: Error case. - content: - application/json: - schema: - $ref: '#/components/schemas/errorResponse-Type' -components: - schemas: - analyticsInfo-Type: - description: Information specific to analytics reporting. - type: object - properties: - activityDetails: - type: string - connectionId-Type: - $ref: '#/components/schemas/uri-Type' - connectionInfo-Type: - type: object - properties: - connection: - $ref: '#/components/schemas/connectionId-Type' - producer: - $ref: '#/components/schemas/producerId-Type' - streams: - type: array - items: - $ref: '#/components/schemas/streamId-Type' - connectionRequest-Type: - type: object - properties: - producer: - $ref: '#/components/schemas/producerId-Type' - streams: - type: array - items: - $ref: '#/components/schemas/streamInfo-Type' - errorResponse-Type: - type: object - properties: - error: - type: object - properties: - errorInfo: - type: string - failedConnectionResponse-Type: - type: object - properties: - error: - type: array - items: - type: object - properties: - streamId: - $ref: '#/components/schemas/streamId-Type' - errorReason: - type: string - measObjDn-Type: - description: DN of the measured object instance (see 3GPP TS 28.550) - allOf: - - $ref: '#/components/schemas/systemDN-Type' - measTypes-Type: - description: an ordered list of measurement type or KPI whose measurement values or KPI result values are to be reported by the Performance Data Stream Units (see Annex C of TS 28.550) via this stream - type: array - items: - type: string - performanceInfo-Type: - description: Information specific to performance data reporting - type: object - properties: - measObjDn: - $ref: '#/components/schemas/measObjDn-Type' - measTypes: - $ref: '#/components/schemas/measTypes-Type' - measurementReaderId: - $ref: '#/components/schemas/systemDN-Type' - jobId: - type: string - required: - - measObjDn - - measTypes - producerId-Type: - description: DN of the streaming data reporting MnS producer. - allOf: - - $ref: '#/components/schemas/systemDN-Type' - serializationFormat-Type: - type: string - enum: - - GPB - - ASN1 - streamId-Type: - description: globally unique stream identifier - type: string - example: '26F452550021' - streamInfo-Type: - description: Reporting stream meta-data. - type: object - properties: - streamType: - $ref: '#/components/schemas/streamType-Type' - serializationFormat: - $ref: '#/components/schemas/serializationFormat-Type' - streamId: - oneOf: - - $ref: '#/components/schemas/streamId-Type' - - $ref: '#/components/schemas/traceReference-Type' - additionalInfo: - oneOf: - - $ref: '#/components/schemas/traceInfo-Type' - - $ref: '#/components/schemas/performanceInfo-Type' - - $ref: '#/components/schemas/analyticsInfo-Type' - - $ref: '#/components/schemas/vsDataContainer-Type' - required: - - streamType - - serializationFormat - - streamId - streamInfoWithReporters-Type: - description: Reporting stream meta-data with added information about reporters. - type: object - properties: - streamInfo: - $ref: '#/components/schemas/streamInfo-Type' - reporters: - type: array - items: - $ref: '#/components/schemas/producerId-Type' - systemDN-Type: - description: See 3GPP TS 32.300 for details - type: string - example: 'SubNetwork=ABCNetwork,SubNetwork=MUC01,GNBDUFunction=XYZ0100' - streamType-Type: - type: string - enum: - - TRACE - - PERFORMANCE - - ANALYTICS - - PROPRIETARY - traceInfo-Type: - description: Information specific to trace data reporting - allOf: - - $ref: 'genericNrm.yaml#/components/schemas/TraceJob-Attr' - traceReference-Type: - description: Trace Reference (see clause 5.6 of 3GPP TS 32.422) as stream identifier for streaming trace data reporting - type: string - example: '4358070034D7' - uri-Type: - description: Resource URI - type: string - vsDataContainer-Type: - description: container for vendor specific data (see 3GPP TS 28.622) - type: object - properties: - vsDataType: - type: string - vsData: - type: string - vsDataFormatVersion: - type: string - websocketHeaderConnection-Type: - description: Header value for the upgrade request and response. - type: string - enum: - - Upgrade - websocketHeaderUpgrade-Type: - description: Header value for the upgrade to WebSocket request and response. - type: string - enum: - - websocket - websocketHeader-Sec-WebSocket-Accept-Type: - description: Header value for secure WebSocket response. Carries hash. - type: string - websocketHeader-Sec-WebSocket-Extensions-Type: - description: Header value for secure WebSocket request. Carries protocol extensions. - type: string - websocketHeader-Sec-WebSocket-Key-Type: - description: Header value for secure WebSocket request. Provides information to the server which is needed in order to confirm that the client is entitled to request an upgrade to WebSocket. - type: string - websocketHeader-Sec-WebSocket-Protocol-Type: - description: Header value for secure WebSocket request. Carries a comma-separated list of subprotocol names, in the order of preference. - type: string - websocketHeader-Sec-WebSocket-Version-Type: - description: Header value for secure WebSocket request and response. Carries the WebSocket protocol version to be used. - type: string -- GitLab From b8e3135836dd7b641c9116794152b43bb9cb6f82 Mon Sep 17 00:00:00 2001 From: "U-ERICSSON\\ETHBLL" Date: Sun, 2 Jan 2022 19:34:54 +0100 Subject: [PATCH 227/593] add back yaml 2 --- OpenAPI/5gcNrm.yaml | 2185 +++++++++++++++++++++++++++++ OpenAPI/PerDataFileReportMnS.yaml | 13 + OpenAPI/PerMeasJobCtlMnS.yaml | 280 ++++ OpenAPI/PerThresMonMnS.yaml | 102 ++ OpenAPI/PerfDataStreamingMnS.yaml | 363 +++++ OpenAPI/comDefs.yaml | 84 ++ OpenAPI/coslaNrm.yaml | 168 +++ OpenAPI/faultMnS.yaml | 1144 +++++++++++++++ OpenAPI/genericNrm.yaml | 1606 +++++++++++++++++++++ OpenAPI/heartbeatNtf.yaml | 23 + OpenAPI/nrNrm.yaml | 1905 +++++++++++++++++++++++++ OpenAPI/provMnS.yaml | 579 ++++++++ OpenAPI/sliceNrm.yaml | 632 +++++++++ OpenAPI/streamingDataMnS.yaml | 453 ++++++ 14 files changed, 9537 insertions(+) create mode 100644 OpenAPI/5gcNrm.yaml create mode 100644 OpenAPI/PerDataFileReportMnS.yaml create mode 100644 OpenAPI/PerMeasJobCtlMnS.yaml create mode 100644 OpenAPI/PerThresMonMnS.yaml create mode 100644 OpenAPI/PerfDataStreamingMnS.yaml create mode 100644 OpenAPI/comDefs.yaml create mode 100644 OpenAPI/coslaNrm.yaml create mode 100644 OpenAPI/faultMnS.yaml create mode 100644 OpenAPI/genericNrm.yaml create mode 100644 OpenAPI/heartbeatNtf.yaml create mode 100644 OpenAPI/nrNrm.yaml create mode 100644 OpenAPI/provMnS.yaml create mode 100644 OpenAPI/sliceNrm.yaml create mode 100644 OpenAPI/streamingDataMnS.yaml diff --git a/OpenAPI/5gcNrm.yaml b/OpenAPI/5gcNrm.yaml new file mode 100644 index 000000000..e4c4b2619 --- /dev/null +++ b/OpenAPI/5gcNrm.yaml @@ -0,0 +1,2185 @@ +openapi: 3.0.1 +info: + title: 3GPP 5GC NRM + version: 17.4.0 + description: >- + OAS 3.0.1 specification of the 5GC NRM + © 2020, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). + All rights reserved. +externalDocs: + description: 3GPP TS 28.541; 5G NRM, 5GC NRM + url: http://www.3gpp.org/ftp/Specs/archive/28_series/28.541/ +paths: {} +components: + schemas: + +#-------- Definition of types----------------------------------------------------- + + AmfIdentifier: + type: object + description: 'AmfIdentifier comprise of amfRegionId, amfSetId and amfPointer' + properties: + amfRegionId: + $ref: '#/components/schemas/AmfRegionId' + amfSetId: + $ref: '#/components/schemas/AmfSetId' + amfPointer: + $ref: '#/components/schemas/AmfPointer' + AmfRegionId: + type: integer + description: AmfRegionId is defined in TS 23.003 + maximum: 255 + AmfSetId: + type: string + description: AmfSetId is defined in TS 23.003 + maximum: 1023 + AmfPointer: + type: integer + description: AmfPointer is defined in TS 23.003 + maximum: 63 + IpEndPoint: + type: object + properties: + ipv4Address: + $ref: 'genericNrm.yaml#/components/schemas/Ipv4Addr' + ipv6Address: + $ref: 'genericNrm.yaml#/components/schemas/Ipv6Addr' + ipv6Prefix: + $ref: 'genericNrm.yaml#/components/schemas/Ipv6Prefix' + transport: + $ref: 'genericNrm.yaml#/components/schemas/TransportProtocol' + port: + type: integer + NFProfileList: + type: array + description: List of NF profile + items: + $ref: '#/components/schemas/NFProfile' + NFProfile: + type: object + description: 'NF profile stored in NRF, defined in TS 29.510' + properties: + nFInstanceId: + type: string + description: uuid of NF instance + nFType: + $ref: 'genericNrm.yaml#/components/schemas/NFType' + nFStatus: + $ref: '#/components/schemas/NFStatus' + plmn: + $ref: 'nrNrm.yaml#/components/schemas/PlmnId' + sNssais: + $ref: 'nrNrm.yaml#/components/schemas/Snssai' + fqdn: + $ref: 'genericNrm.yaml#/components/schemas/Fqdn' + interPlmnFqdn: + $ref: 'genericNrm.yaml#/components/schemas/Fqdn' + nfServices: + type: array + items: + $ref: '#/components/schemas/NFService' + NFService: + type: object + description: NF Service is defined in TS 29.510 + properties: + serviceInstanceId: + type: string + serviceName: + type: string + version: + type: string + schema: + type: string + fqdn: + $ref: 'genericNrm.yaml#/components/schemas/Fqdn' + interPlmnFqdn: + $ref: 'genericNrm.yaml#/components/schemas/Fqdn' + ipEndPoints: + type: array + items: + $ref: '#/components/schemas/IpEndPoint' + apiPrfix: + type: string + allowedPlmns: + $ref: 'nrNrm.yaml#/components/schemas/PlmnId' + allowedNfTypes: + type: array + items: + $ref: 'genericNrm.yaml#/components/schemas/NFType' + allowedNssais: + type: array + items: + $ref: 'nrNrm.yaml#/components/schemas/Snssai' + NFStatus: + type: string + description: any of enumrated value + enum: + - REGISTERED + - SUSPENDED + CNSIIdList: + type: array + items: + $ref: '#/components/schemas/CNSIId' + CNSIId: + type: string + description: CNSI Id is defined in TS 29.531, only for Core Network + TACList: + type: array + items: + $ref: 'nrNrm.yaml#/components/schemas/NrTac' + WeightFactor: + type: integer + UdmInfo: + type: object + properties: + nFSrvGroupId: + type: string + AusfInfo: + type: object + properties: + nFSrvGroupId: + type: string + UpfInfo: + type: object + properties: + smfServingAreas: + type: string + AmfInfo: + type: object + properties: + priority: + type: integer + SupportedDataSetId: + type: string + description: any of enumrated value + enum: + - SUBSCRIPTION + - POLICY + - EXPOSURE + - APPLICATION + Udrinfo: + type: object + properties: + supportedDataSetIds: + type: array + items: + $ref: '#/components/schemas/SupportedDataSetId' + nFSrvGroupId: + type: string + NFInfo: + oneOf: + - $ref: '#/components/schemas/UdmInfo' + - $ref: '#/components/schemas/AusfInfo' + - $ref: '#/components/schemas/UpfInfo' + - $ref: '#/components/schemas/AmfInfo' + - $ref: '#/components/schemas/Udrinfo' + ManagedNFProfile: + type: object + properties: + nfInstanceID: + type: string + nfType: + $ref: 'genericNrm.yaml#/components/schemas/NFType' + authzInfo: + type: string + hostAddr: + $ref: 'genericNrm.yaml#/components/schemas/HostAddr' + locality: + type: string + nFInfo: + $ref: '#/components/schemas/NFInfo' + capacity: + type: integer + SEPPType: + type: string + description: any of enumrated value + enum: + - CSEPP + - PSEPP + SupportedFunc: + type: object + properties: + function: + type: string + policy: + type: string + SupportedFuncList: + type: array + items: + $ref: '#/components/schemas/SupportedFunc' + CommModelType: + type: string + description: any of enumrated value + enum: + - DIRECT_COMMUNICATION_WO_NRF + - DIRECT_COMMUNICATION_WITH_NRF + - INDIRECT_COMMUNICATION_WO_DEDICATED_DISCOVERY + - INDIRECT_COMMUNICATION_WITH_DEDICATED_DISCOVERY + CommModel: + type: object + properties: + groupId: + type: integer + commModelType: + $ref: '#/components/schemas/CommModelType' + targetNFServiceList: + $ref: 'genericNrm.yaml#/components/schemas/DnList' + commModelConfiguration: + type: string + CommModelList: + type: array + items: + $ref: '#/components/schemas/CommModel' + CapabilityList: + type: array + items: + type: string + FiveQiDscpMapping: + type: object + properties: + fiveQIValues: + type: array + items: + type: integer + dscp: + type: integer + NetworkSliceInfo: + type: object + properties: + sNSSAI: + $ref: 'nrNrm.yaml#/components/schemas/Snssai' + cNSIId: + $ref: '#/components/schemas/CNSIId' + networkSliceRef: + $ref: 'genericNrm.yaml#/components/schemas/DnList' + NetworkSliceInfoList: + type: array + items: + $ref: '#/components/schemas/NetworkSliceInfo' + + + PacketErrorRate: + type: object + properties: + scalar: + type: integer + exponent: + type: integer + + + + GtpUPathDelayThresholdsType: + type: object + properties: + n3AveragePacketDelayThreshold: + type: integer + n3MinPacketDelayThreshold: + type: integer + n3MaxPacketDelayThreshold: + type: integer + n9AveragePacketDelayThreshold: + type: integer + n9MinPacketDelayThreshold: + type: integer + n9MaxPacketDelayThreshold: + type: integer + QFPacketDelayThresholdsType: + type: object + properties: + thresholdDl: + type: integer + thresholdUl: + type: integer + thresholdRtt: + type: integer + + QosData: + type: object + properties: + qosId: + type: string + fiveQIValue: + type: integer + maxbrUl: + $ref: 'https://forge.3gpp.org/rep/all/5G_APIs/raw/REL-16/TS29571_CommonData.yaml#/components/schemas/BitRateRm' + maxbrDl: + $ref: 'https://forge.3gpp.org/rep/all/5G_APIs/raw/REL-16/TS29571_CommonData.yaml#/components/schemas/BitRateRm' + gbrUl: + $ref: 'https://forge.3gpp.org/rep/all/5G_APIs/raw/REL-16/TS29571_CommonData.yaml#/components/schemas/BitRateRm' + gbrDl: + $ref: 'https://forge.3gpp.org/rep/all/5G_APIs/raw/REL-16/TS29571_CommonData.yaml#/components/schemas/BitRateRm' + arp: + $ref: 'https://forge.3gpp.org/rep/all/5G_APIs/raw/REL-16/TS29571_CommonData.yaml#/components/schemas/Arp' + qosNotificationControl: + type: boolean + reflectiveQos: + type: boolean + sharingKeyDl: + type: string + sharingKeyUl: + type: string + maxPacketLossRateDl: + $ref: 'https://forge.3gpp.org/rep/all/5G_APIs/raw/REL-16/TS29571_CommonData.yaml#/components/schemas/PacketLossRateRm' + maxPacketLossRateUl: + $ref: 'https://forge.3gpp.org/rep/all/5G_APIs/raw/REL-16/TS29571_CommonData.yaml#/components/schemas/PacketLossRateRm' + extMaxDataBurstVol: + $ref: 'https://forge.3gpp.org/rep/all/5G_APIs/raw/REL-16/TS29571_CommonData.yaml#/components/schemas/ExtMaxDataBurstVolRm' + + QosDataList: + type: array + items: + $ref: '#/components/schemas/QosData' + + SteeringMode: + type: object + properties: + steerModeValue: + $ref: 'https://forge.3gpp.org/rep/all/5G_APIs/raw/REL-16/TS29512_Npcf_SMPolicyControl.yaml#/components/schemas/SteerModeValue' + active: + $ref: 'https://forge.3gpp.org/rep/all/5G_APIs/raw/REL-16/TS29571_CommonData.yaml#/components/schemas/AccessType' + standby: + $ref: 'https://forge.3gpp.org/rep/all/5G_APIs/raw/REL-16/TS29571_CommonData.yaml#/components/schemas/AccessTypeRm' + threeGLoad: + $ref: 'https://forge.3gpp.org/rep/all/5G_APIs/raw/REL-16/TS29571_CommonData.yaml#/components/schemas/Uinteger' + prioAcc: + $ref: 'https://forge.3gpp.org/rep/all/5G_APIs/raw/REL-16/TS29571_CommonData.yaml#/components/schemas/AccessType' + + TrafficControlData: + type: object + properties: + tcId: + type: string + flowStatus: + $ref: 'https://forge.3gpp.org/rep/all/5G_APIs/raw/REL-16/TS29514_Npcf_PolicyAuthorization.yaml#/components/schemas/FlowStatus' + redirectInfo: + $ref: 'https://forge.3gpp.org/rep/all/5G_APIs/raw/REL-16/TS29512_Npcf_SMPolicyControl.yaml#/components/schemas/RedirectInformation' + addRedirectInfo: + type: array + items: + $ref: 'https://forge.3gpp.org/rep/all/5G_APIs/raw/REL-16/TS29512_Npcf_SMPolicyControl.yaml#/components/schemas/RedirectInformation' + minItems: 1 + muteNotif: + type: boolean + trafficSteeringPolIdDl: + type: string + nullable: true + trafficSteeringPolIdUl: + type: string + nullable: true + routeToLocs: + type: array + items: + $ref: 'https://forge.3gpp.org/rep/all/5G_APIs/raw/REL-16/TS29571_CommonData.yaml#/components/schemas/RouteToLocation' + traffCorreInd: + type: boolean + upPathChgEvent: + $ref: 'https://forge.3gpp.org/rep/all/5G_APIs/raw/REL-16/TS29512_Npcf_SMPolicyControl.yaml#/components/schemas/UpPathChgEvent' + steerFun: + $ref: 'https://forge.3gpp.org/rep/all/5G_APIs/raw/REL-16/TS29512_Npcf_SMPolicyControl.yaml#/components/schemas/SteeringFunctionality' + steerModeDl: + $ref: '#/components/schemas/SteeringMode' + steerModeUl: + $ref: '#/components/schemas/SteeringMode' + mulAccCtrl: + $ref: 'https://forge.3gpp.org/rep/all/5G_APIs/raw/REL-16/TS29512_Npcf_SMPolicyControl.yaml#/components/schemas/MulticastAccessControl' + + TrafficControlDataList: + type: array + items: + $ref: '#/components/schemas/TrafficControlData' + + PccRule: + type: object + properties: + pccRuleId: + type: string + description: Univocally identifies the PCC rule within a PDU session. + flowInfoList: + type: array + items: + $ref: 'https://forge.3gpp.org/rep/all/5G_APIs/raw/REL-16/TS29512_Npcf_SMPolicyControl.yaml#/components/schemas/FlowInformation' + applicationId: + type: string + appDescriptor: + $ref: 'https://forge.3gpp.org/rep/all/5G_APIs/raw/REL-16/TS29512_Npcf_SMPolicyControl.yaml#/components/schemas/ApplicationDescriptor' + contentVersion: + $ref: 'https://forge.3gpp.org/rep/all/5G_APIs/raw/REL-16/TS29514_Npcf_PolicyAuthorization.yaml#/components/schemas/ContentVersion' + precedence: + $ref: 'https://forge.3gpp.org/rep/all/5G_APIs/raw/REL-16/TS29571_CommonData.yaml#/components/schemas/Uinteger' + afSigProtocol: + $ref: 'https://forge.3gpp.org/rep/all/5G_APIs/raw/REL-16/TS29512_Npcf_SMPolicyControl.yaml#/components/schemas/AfSigProtocol' + isAppRelocatable: + type: boolean + isUeAddrPreserved: + type: boolean + qosData: + type: array + items: + $ref: '#/components/schemas/QosDataList' + altQosParams: + type: array + items: + $ref: '#/components/schemas/QosDataList' + trafficControlData: + type: array + items: + $ref: '#/components/schemas/TrafficControlDataList' + conditionData: + $ref: 'https://forge.3gpp.org/rep/all/5G_APIs/raw/REL-16/TS29512_Npcf_SMPolicyControl.yaml#/components/schemas/ConditionData' + tscaiInputDl: + $ref: 'https://forge.3gpp.org/rep/all/5G_APIs/raw/REL-16/TS29514_Npcf_PolicyAuthorization.yaml#/components/schemas/TscaiInputContainer' + tscaiInputUl: + $ref: 'https://forge.3gpp.org/rep/all/5G_APIs/raw/REL-16/TS29514_Npcf_PolicyAuthorization.yaml#/components/schemas/TscaiInputContainer' + + SnssaiInfo: + type: object + properties: + plmnInfo: + $ref: 'nrNrm.yaml#/components/schemas/PlmnInfo' + administrativeState: + $ref: 'genericNrm.yaml#/components/schemas/AdministrativeState' + + NsacfInfoSnssai: + type: object + properties: + SnssaiInfo: + $ref: '#/components/schemas/SnssaiInfo' + isSubjectToNsac: + type: boolean + maxNumberofUEs: + type: integer + eACMode: + type: string + enum: + - INACTIVE + - ACTIVE + activeEacThreshhold: + type: integer + deactiveEacThreshhold: + type: integer + numberofUEs: + type: integer + uEIdList: + type: array + items: + type: string + + +#-------- Definition of concrete IOCs -------------------------------------------- + + SubNetwork-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/SubNetwork-Attr' + - $ref: 'genericNrm.yaml#/components/schemas/SubNetwork-ncO' + - type: object + properties: + SubNetwork: + $ref: '#/components/schemas/SubNetwork-Multiple' + ManagedElement: + $ref: '#/components/schemas/ManagedElement-Multiple' + ExternalAmfFunction: + $ref: '#/components/schemas/ExternalAmfFunction-Multiple' + ExternalNrfFunction: + $ref: '#/components/schemas/ExternalNrfFunction-Multiple' + ExternalNssfFunction: + $ref: '#/components/schemas/ExternalNssfFunction-Multiple' + AmfSet: + $ref: '#/components/schemas/AmfSet-Multiple' + AmfRegion: + $ref: '#/components/schemas/AmfRegion-Multiple' + Configurable5QISet: + $ref: '#/components/schemas/Configurable5QISet-Multiple' + Dynamic5QISet: + $ref: '#/components/schemas/Dynamic5QISet-Multiple' + + ManagedElement-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/ManagedElement-Attr' + - $ref: 'genericNrm.yaml#/components/schemas/ManagedElement-ncO' + - type: object + properties: + AmfFunction: + $ref: '#/components/schemas/AmfFunction-Multiple' + SmfFunction: + $ref: '#/components/schemas/SmfFunction-Multiple' + UpfFunction: + $ref: '#/components/schemas/UpfFunction-Multiple' + N3iwfFunction: + $ref: '#/components/schemas/N3iwfFunction-Multiple' + PcfFunction: + $ref: '#/components/schemas/PcfFunction-Multiple' + AusfFunction: + $ref: '#/components/schemas/AusfFunction-Multiple' + UdmFunction: + $ref: '#/components/schemas/UdmFunction-Multiple' + UdrFunction: + $ref: '#/components/schemas/UdrFunction-Multiple' + UdsfFunction: + $ref: '#/components/schemas/UdsfFunction-Multiple' + NrfFunction: + $ref: '#/components/schemas/NrfFunction-Multiple' + NssfFunction: + $ref: '#/components/schemas/NssfFunction-Multiple' + SmsfFunction: + $ref: '#/components/schemas/SmsfFunction-Multiple' + LmfFunction: + $ref: '#/components/schemas/LmfFunction-Multiple' + NgeirFunction: + $ref: '#/components/schemas/NgeirFunction-Multiple' + SeppFunction: + $ref: '#/components/schemas/SeppFunction-Multiple' + NwdafFunction: + $ref: '#/components/schemas/NwdafFunction-Multiple' + ScpFunction: + $ref: '#/components/schemas/ScpFunction-Multiple' + NefFunction: + $ref: '#/components/schemas/NefFunction-Multiple' + Configurable5QISet: + $ref: '#/components/schemas/Configurable5QISet-Multiple' + Dynamic5QISet: + $ref: '#/components/schemas/Dynamic5QISet-Multiple' + + AmfFunction-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' + - type: object + properties: + plmnIdList: + $ref: 'nrNrm.yaml#/components/schemas/PlmnIdList' + amfIdentifier: + $ref: '#/components/schemas/AmfIdentifier' + sBIFqdn: + type: string + weightFactor: + $ref: '#/components/schemas/WeightFactor' + snssaiList: + $ref: 'nrNrm.yaml#/components/schemas/SnssaiList' + amfSet: + $ref: 'genericNrm.yaml#/components/schemas/Dn' + managedNFProfile: + $ref: '#/components/schemas/ManagedNFProfile' + commModelList: + $ref: '#/components/schemas/CommModelList' + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' + - type: object + properties: + EP_N2: + $ref: '#/components/schemas/EP_N2-Multiple' + EP_N8: + $ref: '#/components/schemas/EP_N8-Multiple' + EP_N11: + $ref: '#/components/schemas/EP_N11-Multiple' + EP_N12: + $ref: '#/components/schemas/EP_N12-Multiple' + EP_N14: + $ref: '#/components/schemas/EP_N14-Multiple' + EP_N15: + $ref: '#/components/schemas/EP_N15-Multiple' + EP_N17: + $ref: '#/components/schemas/EP_N17-Multiple' + EP_N20: + $ref: '#/components/schemas/EP_N20-Multiple' + EP_N22: + $ref: '#/components/schemas/EP_N22-Multiple' + EP_N26: + $ref: '#/components/schemas/EP_N26-Multiple' + EP_NLS: + $ref: '#/components/schemas/EP_NLS-Multiple' + EP_NLG: + $ref: '#/components/schemas/EP_NLG-Multiple' + AmfSet-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' + - type: object + properties: + plmnIdList: + $ref: 'nrNrm.yaml#/components/schemas/PlmnIdList' + nRTACList: + $ref: '#/components/schemas/TACList' + amfSetId: + $ref: '#/components/schemas/AmfSetId' + snssaiList: + $ref: 'nrNrm.yaml#/components/schemas/SnssaiList' + AmfRegion-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' + - type: object + properties: + plmnIdList: + $ref: 'nrNrm.yaml#/components/schemas/PlmnIdList' + nRTACList: + $ref: '#/components/schemas/TACList' + amfRegionId: + $ref: '#/components/schemas/AmfRegionId' + snssaiList: + $ref: 'nrNrm.yaml#/components/schemas/SnssaiList' + SmfFunction-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' + - type: object + properties: + plmnIdList: + $ref: 'nrNrm.yaml#/components/schemas/PlmnIdList' + nRTACList: + $ref: '#/components/schemas/TACList' + sBIFqdn: + type: string + snssaiList: + $ref: 'nrNrm.yaml#/components/schemas/SnssaiList' + managedNFProfile: + $ref: '#/components/schemas/ManagedNFProfile' + commModelList: + $ref: '#/components/schemas/CommModelList' + configurable5QISetRef: + $ref: 'genericNrm.yaml#/components/schemas/Dn' + dynamic5QISetRef: + $ref: 'genericNrm.yaml#/components/schemas/Dn' + + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' + - type: object + properties: + EP_N4: + $ref: '#/components/schemas/EP_N4-Multiple' + EP_N7: + $ref: '#/components/schemas/EP_N7-Multiple' + EP_N10: + $ref: '#/components/schemas/EP_N10-Multiple' + EP_N11: + $ref: '#/components/schemas/EP_N11-Multiple' + EP_N16: + $ref: '#/components/schemas/EP_N16-Multiple' + EP_S5C: + $ref: '#/components/schemas/EP_S5C-Multiple' + FiveQiDscpMappingSet: + $ref: '#/components/schemas/FiveQiDscpMappingSet-Single' + GtpUPathQoSMonitoringControl: + $ref: '#/components/schemas/GtpUPathQoSMonitoringControl-Single' + QFQoSMonitoringControl: + $ref: '#/components/schemas/QFQoSMonitoringControl-Single' + PredefinedPccRuleSet: + $ref: '#/components/schemas/PredefinedPccRuleSet-Single' + + UpfFunction-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' + - type: object + properties: + plmnIdList: + $ref: 'nrNrm.yaml#/components/schemas/PlmnIdList' + nRTACList: + $ref: '#/components/schemas/TACList' + snssaiList: + $ref: 'nrNrm.yaml#/components/schemas/SnssaiList' + managedNFProfile: + $ref: '#/components/schemas/ManagedNFProfile' + commModelList: + $ref: '#/components/schemas/CommModelList' + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' + - type: object + properties: + EP_N3: + $ref: '#/components/schemas/EP_N3-Multiple' + EP_N4: + $ref: '#/components/schemas/EP_N4-Multiple' + EP_N6: + $ref: '#/components/schemas/EP_N6-Multiple' + EP_N9: + $ref: '#/components/schemas/EP_N9-Multiple' + EP_S5U: + $ref: '#/components/schemas/EP_S5U-Multiple' + N3iwfFunction-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' + - type: object + properties: + plmnIdList: + $ref: 'nrNrm.yaml#/components/schemas/PlmnIdList' + commModelList: + $ref: '#/components/schemas/CommModelList' + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' + - type: object + properties: + EP_N3: + $ref: '#/components/schemas/EP_N3-Multiple' + EP_N4: + $ref: '#/components/schemas/EP_N4-Multiple' + PcfFunction-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' + - type: object + properties: + plmnIdList: + $ref: 'nrNrm.yaml#/components/schemas/PlmnIdList' + sBIFqdn: + type: string + snssaiList: + $ref: 'nrNrm.yaml#/components/schemas/SnssaiList' + managedNFProfile: + $ref: '#/components/schemas/ManagedNFProfile' + commModelList: + $ref: '#/components/schemas/CommModelList' + configurable5QISetRef: + $ref: 'genericNrm.yaml#/components/schemas/Dn' + dynamic5QISetRef: + $ref: 'genericNrm.yaml#/components/schemas/Dn' + + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' + - type: object + properties: + EP_N5: + $ref: '#/components/schemas/EP_N5-Multiple' + EP_N7: + $ref: '#/components/schemas/EP_N7-Multiple' + EP_N15: + $ref: '#/components/schemas/EP_N15-Multiple' + EP_N16: + $ref: '#/components/schemas/EP_N16-Multiple' + EP_Rx: + $ref: '#/components/schemas/EP_Rx-Multiple' + PredefinedPccRuleSet: + $ref: '#/components/schemas/PredefinedPccRuleSet-Single' + + AusfFunction-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' + - type: object + properties: + plmnIdList: + $ref: 'nrNrm.yaml#/components/schemas/PlmnIdList' + sBIFqdn: + type: string + snssaiList: + $ref: 'nrNrm.yaml#/components/schemas/SnssaiList' + managedNFProfile: + $ref: '#/components/schemas/ManagedNFProfile' + commModelList: + $ref: '#/components/schemas/CommModelList' + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' + - type: object + properties: + EP_N12: + $ref: '#/components/schemas/EP_N12-Multiple' + EP_N13: + $ref: '#/components/schemas/EP_N13-Multiple' + UdmFunction-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' + - type: object + properties: + plmnIdList: + $ref: 'nrNrm.yaml#/components/schemas/PlmnIdList' + sBIFqdn: + type: string + snssaiList: + $ref: 'nrNrm.yaml#/components/schemas/SnssaiList' + managedNFProfile: + $ref: '#/components/schemas/ManagedNFProfile' + commModelList: + $ref: '#/components/schemas/CommModelList' + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' + - type: object + properties: + EP_N8: + $ref: '#/components/schemas/EP_N8-Multiple' + EP_N10: + $ref: '#/components/schemas/EP_N10-Multiple' + EP_N13: + $ref: '#/components/schemas/EP_N13-Multiple' + UdrFunction-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' + - type: object + properties: + plmnIdList: + $ref: 'nrNrm.yaml#/components/schemas/PlmnIdList' + sBIFqdn: + type: string + snssaiList: + $ref: 'nrNrm.yaml#/components/schemas/SnssaiList' + managedNFProfile: + $ref: '#/components/schemas/ManagedNFProfile' + UdsfFunction-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' + - type: object + properties: + plmnIdList: + $ref: 'nrNrm.yaml#/components/schemas/PlmnIdList' + sBIFqdn: + type: string + snssaiList: + $ref: 'nrNrm.yaml#/components/schemas/SnssaiList' + managedNFProfile: + $ref: '#/components/schemas/ManagedNFProfile' + NrfFunction-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' + - type: object + properties: + plmnIdList: + $ref: 'nrNrm.yaml#/components/schemas/PlmnIdList' + sBIFqdn: + type: string + cNSIIdList: + $ref: '#/components/schemas/CNSIIdList' + nFProfileList: + $ref: '#/components/schemas/NFProfileList' + snssaiList: + $ref: 'nrNrm.yaml#/components/schemas/SnssaiList' + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' + - type: object + properties: + EP_N27: + $ref: '#/components/schemas/EP_N27-Multiple' + NssfFunction-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' + - type: object + properties: + plmnIdList: + $ref: 'nrNrm.yaml#/components/schemas/PlmnIdList' + sBIFqdn: + type: string + cNSIIdList: + $ref: '#/components/schemas/CNSIIdList' + nFProfileList: + $ref: '#/components/schemas/NFProfileList' + snssaiList: + $ref: 'nrNrm.yaml#/components/schemas/SnssaiList' + commModelList: + $ref: '#/components/schemas/CommModelList' + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' + - type: object + properties: + EP_N22: + $ref: '#/components/schemas/EP_N22-Multiple' + EP_N31: + $ref: '#/components/schemas/EP_N31-Multiple' + SmsfFunction-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' + - type: object + properties: + plmnIdList: + $ref: 'nrNrm.yaml#/components/schemas/PlmnIdList' + sBIFqdn: + type: string + managedNFProfile: + $ref: '#/components/schemas/ManagedNFProfile' + commModelList: + $ref: '#/components/schemas/CommModelList' + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' + - type: object + properties: + EP_N20: + $ref: '#/components/schemas/EP_N20-Multiple' + EP_N21: + $ref: '#/components/schemas/EP_N21-Multiple' + EP_MAP_SMSC: + $ref: '#/components/schemas/EP_MAP_SMSC-Multiple' + LmfFunction-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' + - type: object + properties: + plmnIdList: + $ref: 'nrNrm.yaml#/components/schemas/PlmnIdList' + managedNFProfile: + $ref: '#/components/schemas/ManagedNFProfile' + commModelList: + $ref: '#/components/schemas/CommModelList' + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' + - type: object + properties: + EP_NLS: + $ref: '#/components/schemas/EP_NLS-Multiple' + NgeirFunction-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' + - type: object + properties: + plmnIdList: + $ref: 'nrNrm.yaml#/components/schemas/PlmnIdList' + sBIFqdn: + type: string + snssaiList: + $ref: 'nrNrm.yaml#/components/schemas/SnssaiList' + managedNFProfile: + $ref: '#/components/schemas/ManagedNFProfile' + commModelList: + $ref: '#/components/schemas/CommModelList' + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' + - type: object + properties: + EP_N17: + $ref: '#/components/schemas/EP_N17-Multiple' + SeppFunction-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' + - type: object + properties: + plmnId: + $ref: 'nrNrm.yaml#/components/schemas/PlmnId' + sEPPType: + $ref: '#/components/schemas/SEPPType' + sEPPId: + type: integer + fqdn: + $ref: 'genericNrm.yaml#/components/schemas/Fqdn' + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' + - type: object + properties: + EP_N32: + $ref: '#/components/schemas/EP_N32-Multiple' + NwdafFunction-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' + - type: object + properties: + plmnIdList: + $ref: 'nrNrm.yaml#/components/schemas/PlmnIdList' + sBIFqdn: + type: string + snssaiList: + $ref: 'nrNrm.yaml#/components/schemas/SnssaiList' + managedNFProfile: + $ref: '#/components/schemas/ManagedNFProfile' + commModelList: + $ref: '#/components/schemas/CommModelList' + networkSliceInfoList: + $ref: '#/components/schemas/NetworkSliceInfoList' + + ScpFunction-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' + - type: object + properties: + supportedFuncList: + $ref: '#/components/schemas/SupportedFuncList' + address: + $ref: 'genericNrm.yaml#/components/schemas/HostAddr' + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' + NefFunction-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' + - type: object + properties: + sBIFqdn: + type: string + snssaiList: + $ref: 'nrNrm.yaml#/components/schemas/SnssaiList' + managedNFProfile: + $ref: '#/components/schemas/ManagedNFProfile' + capabilityList: + $ref: '#/components/schemas/CapabilityList' + isCAPIFSup: + type: boolean + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' + - type: object + properties: + EP_N33: + $ref: '#/components/schemas/EP_N33-Multiple' + NsacfFunction-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' + - type: object + properties: + managedNFProfile: + $ref: '#/components/schemas/ManagedNFProfile' + nsacfInfoSnssai: + type: array + items: + $ref: '#/components/schemas/NsacfInfoSnssai' + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' + - type: object + properties: + EP_N60: + $ref: '#/components/schemas/EP_N60-Multiple' + + DDNMFFunction-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' + - type: object + properties: + plmnId: + $ref: 'nrNrm.yaml#/components/schemas/PlmnId' + sBIFqdn: + type: string + managedNFProfile: + $ref: '#/components/schemas/ManagedNFProfile' + commModelList: + $ref: '#/components/schemas/CommModelList' + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' + - type: object + properties: + EP_N64: + $ref: '#/components/schemas/EP_N64-Multiple' + EP_N65: + $ref: '#/components/schemas/EP_N65-Multiple' + EP_N66: + $ref: '#/components/schemas/EP_N66-Multiple' + + ExternalAmfFunction-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' + - type: object + properties: + plmnIdList: + $ref: 'nrNrm.yaml#/components/schemas/PlmnIdList' + amfIdentifier: + $ref: '#/components/schemas/AmfIdentifier' + ExternalNrfFunction-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' + - type: object + properties: + plmnIdList: + $ref: 'nrNrm.yaml#/components/schemas/PlmnIdList' + ExternalNssfFunction-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' + - type: object + properties: + plmnIdList: + $ref: 'nrNrm.yaml#/components/schemas/PlmnIdList' + ExternalSeppFunction-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' + - type: object + properties: + plmnId: + $ref: 'nrNrm.yaml#/components/schemas/PlmnId' + sEPPId: + type: integer + fqdn: + $ref: 'genericNrm.yaml#/components/schemas/Fqdn' + + + EP_N2-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' + - type: object + properties: + localAddress: + $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' + remoteAddress: + $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' + EP_N3-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' + - type: object + properties: + localAddress: + $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' + remoteAddress: + $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' + epTransportRefs: + $ref: 'genericNrm.yaml#/components/schemas/DnList' + EP_N4-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' + - type: object + properties: + localAddress: + $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' + remoteAddress: + $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' + EP_N5-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' + - type: object + properties: + localAddress: + $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' + remoteAddress: + $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' + EP_N6-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' + - type: object + properties: + localAddress: + $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' + remoteAddress: + $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' + EP_N7-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' + - type: object + properties: + localAddress: + $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' + remoteAddress: + $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' + EP_N8-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' + - type: object + properties: + localAddress: + $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' + remoteAddress: + $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' + EP_N9-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' + - type: object + properties: + localAddress: + $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' + remoteAddress: + $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' + EP_N10-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' + - type: object + properties: + localAddress: + $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' + remoteAddress: + $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' + EP_N11-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' + - type: object + properties: + localAddress: + $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' + remoteAddress: + $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' + EP_N12-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' + - type: object + properties: + localAddress: + $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' + remoteAddress: + $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' + EP_N13-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' + - type: object + properties: + localAddress: + $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' + remoteAddress: + $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' + EP_N14-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' + - type: object + properties: + localAddress: + $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' + remoteAddress: + $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' + EP_N15-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' + - type: object + properties: + localAddress: + $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' + remoteAddress: + $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' + EP_N16-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' + - type: object + properties: + localAddress: + $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' + remoteAddress: + $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' + EP_N17-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' + - type: object + properties: + localAddress: + $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' + remoteAddress: + $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' + + EP_N20-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' + - type: object + properties: + localAddress: + $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' + remoteAddress: + $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' + + EP_N21-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' + - type: object + properties: + localAddress: + $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' + remoteAddress: + $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' + EP_N22-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' + - type: object + properties: + localAddress: + $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' + remoteAddress: + $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' + + EP_N26-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' + - type: object + properties: + localAddress: + $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' + remoteAddress: + $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' + EP_N27-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' + - type: object + properties: + localAddress: + $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' + remoteAddress: + $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' + + + EP_N31-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' + - type: object + properties: + localAddress: + $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' + remoteAddress: + $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' + EP_N32-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' + - type: object + properties: + remotePlmnId: + $ref: 'nrNrm.yaml#/components/schemas/PlmnId' + remoteSeppAddress: + $ref: 'genericNrm.yaml#/components/schemas/HostAddr' + remoteSeppId: + type: integer + n32cParas: + type: string + n32fPolicy: + type: string + withIPX: + type: boolean + EP_N33-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' + - type: object + properties: + localAddress: + $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' + remoteAddress: + $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' + EP_S5C-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' + - type: object + properties: + localAddress: + $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' + remoteAddress: + $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' + EP_S5U-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' + - type: object + properties: + localAddress: + $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' + remoteAddress: + $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' + EP_Rx-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' + - type: object + properties: + localAddress: + $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' + remoteAddress: + $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' + EP_MAP_SMSC-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' + - type: object + properties: + localAddress: + $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' + remoteAddress: + $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' + EP_NLS-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' + - type: object + properties: + localAddress: + $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' + remoteAddress: + $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' + EP_NLG-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' + - type: object + properties: + localAddress: + $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' + remoteAddress: + $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' + + EP_N60-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' + - type: object + properties: + localAddress: + $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' + remoteAddress: + $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' + EP_N64-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' + - type: object + properties: + localAddress: + $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' + remoteAddress: + $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' + EP_N65-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' + - type: object + properties: + localAddress: + $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' + remoteAddress: + $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' + EP_N66-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' + - type: object + properties: + localAddress: + $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' + remoteAddress: + $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' + + FiveQiDscpMappingSet-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + allOf: + - type: object + properties: + FiveQiDscpMappingList: + type: array + items: + $ref: '#/components/schemas/FiveQiDscpMapping' + + FiveQICharacteristics-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - type: object + properties: + fiveQIValue: + type: integer + resourceType: + type: string + enum: + - GBR + - NonGBR + priorityLevel: + type: integer + packetDelayBudget: + type: integer + packetErrorRate: + $ref: '#/components/schemas/PacketErrorRate' + averagingWindow: + type: integer + maximumDataBurstVolume: + type: integer + FiveQICharacteristics-Multiple: + type: array + items: + $ref: '#/components/schemas/FiveQICharacteristics-Single' + Configurable5QISet-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + allOf: + - type: object + properties: + configurable5QIs: + type: array + items: + $ref: '#/components/schemas/FiveQICharacteristics-Multiple' + + Dynamic5QISet-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + allOf: + - type: object + properties: + dynamic5QIs: + type: array + items: + $ref: '#/components/schemas/FiveQICharacteristics-Multiple' + + GtpUPathQoSMonitoringControl-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + allOf: + - type: object + properties: + gtpUPathQoSMonitoringState: + type: string + enum: + - ENABLED + - DISABLED + gtpUPathMonitoredSNSSAIs: + type: array + items: + $ref: 'nrNrm.yaml#/components/schemas/Snssai' + monitoredDSCPs: + type: array + items: + type: integer + minimum: 0 + maximum: 255 + isEventTriggeredGtpUPathMonitoringSupported: + type: boolean + isPeriodicGtpUMonitoringSupported: + type: boolean + isImmediateGtpUMonitoringSupported: + type: boolean + gtpUPathDelayThresholds: + $ref: '#/components/schemas/GtpUPathDelayThresholdsType' + gtpUPathMinimumWaitTime: + type: integer + gtpUPathMeasurementPeriod: + type: integer + + QFQoSMonitoringControl-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + allOf: + - type: object + properties: + qFQoSMonitoringState: + type: string + enum: + - ENABLED + - DISABLED + qFMonitoredSNSSAIs: + type: array + items: + $ref: 'nrNrm.yaml#/components/schemas/Snssai' + qFMonitored5QIs: + type: array + items: + type: integer + minimum: 0 + maximum: 255 + isEventTriggeredQFMonitoringSupported: + type: boolean + isPeriodicQFMonitoringSupported: + type: boolean + isSessionReleasedQFMonitoringSupported: + type: boolean + qFPacketDelayThresholds: + $ref: '#/components/schemas/QFPacketDelayThresholdsType' + qFMinimumWaitTime: + type: integer + qFMeasurementPeriod: + type: integer + + PredefinedPccRuleSet-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + allOf: + - type: object + properties: + predefinedPccRules: + type: array + items: + $ref: '#/components/schemas/PccRule' + +#-------- Definition of JSON arrays for name-contained IOCs ---------------------- + + SubNetwork-Multiple: + type: array + items: + $ref: '#/components/schemas/SubNetwork-Single' + ManagedElement-Multiple: + type: array + items: + $ref: '#/components/schemas/ManagedElement-Single' + AmfFunction-Multiple: + type: array + items: + $ref: '#/components/schemas/AmfFunction-Single' + SmfFunction-Multiple: + type: array + items: + $ref: '#/components/schemas/SmfFunction-Single' + UpfFunction-Multiple: + type: array + items: + $ref: '#/components/schemas/UpfFunction-Single' + N3iwfFunction-Multiple: + type: array + items: + $ref: '#/components/schemas/N3iwfFunction-Single' + PcfFunction-Multiple: + type: array + items: + $ref: '#/components/schemas/PcfFunction-Single' + AusfFunction-Multiple: + type: array + items: + $ref: '#/components/schemas/AusfFunction-Single' + UdmFunction-Multiple: + type: array + items: + $ref: '#/components/schemas/UdmFunction-Single' + UdrFunction-Multiple: + type: array + items: + $ref: '#/components/schemas/UdrFunction-Single' + UdsfFunction-Multiple: + type: array + items: + $ref: '#/components/schemas/UdsfFunction-Single' + NrfFunction-Multiple: + type: array + items: + $ref: '#/components/schemas/NrfFunction-Single' + NssfFunction-Multiple: + type: array + items: + $ref: '#/components/schemas/NssfFunction-Single' + SmsfFunction-Multiple: + type: array + items: + $ref: '#/components/schemas/SmsfFunction-Single' + LmfFunction-Multiple: + type: array + items: + $ref: '#/components/schemas/LmfFunction-Single' + NgeirFunction-Multiple: + type: array + items: + $ref: '#/components/schemas/NgeirFunction-Single' + SeppFunction-Multiple: + type: array + items: + $ref: '#/components/schemas/SeppFunction-Single' + NwdafFunction-Multiple: + type: array + items: + $ref: '#/components/schemas/NwdafFunction-Single' + ScpFunction-Multiple: + type: array + items: + $ref: '#/components/schemas/ScpFunction-Single' + NefFunction-Multiple: + type: array + items: + $ref: '#/components/schemas/NefFunction-Single' + + NsacfFunction-Multiple: + type: array + items: + $ref: '#/components/schemas/NsacfFunction-Single' + + ExternalAmfFunction-Multiple: + type: array + items: + $ref: '#/components/schemas/ExternalAmfFunction-Single' + ExternalNrfFunction-Multiple: + type: array + items: + $ref: '#/components/schemas/ExternalNrfFunction-Single' + ExternalNssfFunction-Multiple: + type: array + items: + $ref: '#/components/schemas/ExternalNssfFunction-Single' + ExternalSeppFunction-Nultiple: + type: array + items: + $ref: '#/components/schemas/ExternalSeppFunction-Single' + + AmfSet-Multiple: + type: array + items: + $ref: '#/components/schemas/AmfSet-Single' + AmfRegion-Multiple: + type: array + items: + $ref: '#/components/schemas/AmfRegion-Single' + + EP_N2-Multiple: + type: array + items: + $ref: '#/components/schemas/EP_N2-Single' + EP_N3-Multiple: + type: array + items: + $ref: '#/components/schemas/EP_N3-Single' + EP_N4-Multiple: + type: array + items: + $ref: '#/components/schemas/EP_N4-Single' + EP_N5-Multiple: + type: array + items: + $ref: '#/components/schemas/EP_N5-Single' + EP_N6-Multiple: + type: array + items: + $ref: '#/components/schemas/EP_N6-Single' + EP_N7-Multiple: + type: array + items: + $ref: '#/components/schemas/EP_N7-Single' + EP_N8-Multiple: + type: array + items: + $ref: '#/components/schemas/EP_N8-Single' + EP_N9-Multiple: + type: array + items: + $ref: '#/components/schemas/EP_N9-Single' + EP_N10-Multiple: + type: array + items: + $ref: '#/components/schemas/EP_N10-Single' + EP_N11-Multiple: + type: array + items: + $ref: '#/components/schemas/EP_N11-Single' + EP_N12-Multiple: + type: array + items: + $ref: '#/components/schemas/EP_N12-Single' + EP_N13-Multiple: + type: array + items: + $ref: '#/components/schemas/EP_N13-Single' + EP_N14-Multiple: + type: array + items: + $ref: '#/components/schemas/EP_N14-Single' + EP_N15-Multiple: + type: array + items: + $ref: '#/components/schemas/EP_N15-Single' + EP_N16-Multiple: + type: array + items: + $ref: '#/components/schemas/EP_N16-Single' + EP_N17-Multiple: + type: array + items: + $ref: '#/components/schemas/EP_N17-Single' + + EP_N20-Multiple: + type: array + items: + $ref: '#/components/schemas/EP_N20-Single' + EP_N21-Multiple: + type: array + items: + $ref: '#/components/schemas/EP_N21-Single' + EP_N22-Multiple: + type: array + items: + $ref: '#/components/schemas/EP_N22-Single' + + EP_N26-Multiple: + type: array + items: + $ref: '#/components/schemas/EP_N26-Single' + EP_N27-Multiple: + type: array + items: + $ref: '#/components/schemas/EP_N27-Single' + + EP_N31-Multiple: + type: array + items: + $ref: '#/components/schemas/EP_N31-Single' + EP_N32-Multiple: + type: array + items: + $ref: '#/components/schemas/EP_N32-Single' + EP_N33-Multiple: + type: array + items: + $ref: '#/components/schemas/EP_N33-Single' + EP_S5C-Multiple: + type: array + items: + $ref: '#/components/schemas/EP_S5C-Single' + EP_S5U-Multiple: + type: array + items: + $ref: '#/components/schemas/EP_S5U-Single' + EP_Rx-Multiple: + type: array + items: + $ref: '#/components/schemas/EP_Rx-Single' + EP_MAP_SMSC-Multiple: + type: array + items: + $ref: '#/components/schemas/EP_MAP_SMSC-Single' + EP_NLS-Multiple: + type: array + items: + $ref: '#/components/schemas/EP_NLS-Single' + EP_NLG-Multiple: + type: array + items: + $ref: '#/components/schemas/EP_NLG-Single' + EP_N60-Multiple: + type: array + items: + $ref: '#/components/schemas/EP_N60-Single' + EP_N64-Multiple: + type: array + items: + $ref: '#/components/schemas/EP_N64-Single' + EP_N65-Multiple: + type: array + items: + $ref: '#/components/schemas/EP_N65-Single' + EP_N66-Multiple: + type: array + items: + $ref: '#/components/schemas/EP_N66-Single' + Configurable5QISet-Multiple: + type: array + items: + $ref: '#/components/schemas/Configurable5QISet-Single' + Dynamic5QISet-Multiple: + type: array + items: + $ref: '#/components/schemas/Dynamic5QISet-Single' + + + +#------------ Definitions in TS 28.541 for TS 28.532 ----------------------------- + + resources-5gcNrm: + oneOf: + - $ref: '#/components/schemas/SubNetwork-Single' + - $ref: '#/components/schemas/ManagedElement-Single' + - $ref: '#/components/schemas/AmfFunction-Single' + - $ref: '#/components/schemas/SmfFunction-Single' + - $ref: '#/components/schemas/UpfFunction-Single' + - $ref: '#/components/schemas/N3iwfFunction-Single' + - $ref: '#/components/schemas/PcfFunction-Single' + - $ref: '#/components/schemas/AusfFunction-Single' + - $ref: '#/components/schemas/UdmFunction-Single' + - $ref: '#/components/schemas/UdrFunction-Single' + - $ref: '#/components/schemas/UdsfFunction-Single' + - $ref: '#/components/schemas/NrfFunction-Single' + - $ref: '#/components/schemas/NssfFunction-Single' + - $ref: '#/components/schemas/SmsfFunction-Single' + - $ref: '#/components/schemas/LmfFunction-Single' + - $ref: '#/components/schemas/NgeirFunction-Single' + - $ref: '#/components/schemas/SeppFunction-Single' + - $ref: '#/components/schemas/NwdafFunction-Single' + - $ref: '#/components/schemas/ScpFunction-Single' + - $ref: '#/components/schemas/NefFunction-Single' + - $ref: '#/components/schemas/NsacfFunction-Single' + + - $ref: '#/components/schemas/ExternalAmfFunction-Single' + - $ref: '#/components/schemas/ExternalNrfFunction-Single' + - $ref: '#/components/schemas/ExternalNssfFunction-Single' + - $ref: '#/components/schemas/ExternalSeppFunction-Single' + + - $ref: '#/components/schemas/AmfSet-Single' + - $ref: '#/components/schemas/AmfRegion-Single' + - $ref: '#/components/schemas/QFQoSMonitoringControl-Single' + - $ref: '#/components/schemas/GtpUPathQoSMonitoringControl-Single' + + - $ref: '#/components/schemas/EP_N2-Single' + - $ref: '#/components/schemas/EP_N3-Single' + - $ref: '#/components/schemas/EP_N4-Single' + - $ref: '#/components/schemas/EP_N5-Single' + - $ref: '#/components/schemas/EP_N6-Single' + - $ref: '#/components/schemas/EP_N7-Single' + - $ref: '#/components/schemas/EP_N8-Single' + - $ref: '#/components/schemas/EP_N9-Single' + - $ref: '#/components/schemas/EP_N10-Single' + - $ref: '#/components/schemas/EP_N11-Single' + - $ref: '#/components/schemas/EP_N12-Single' + - $ref: '#/components/schemas/EP_N13-Single' + - $ref: '#/components/schemas/EP_N14-Single' + - $ref: '#/components/schemas/EP_N15-Single' + - $ref: '#/components/schemas/EP_N16-Single' + - $ref: '#/components/schemas/EP_N17-Single' + + - $ref: '#/components/schemas/EP_N20-Single' + - $ref: '#/components/schemas/EP_N21-Single' + - $ref: '#/components/schemas/EP_N22-Single' + + - $ref: '#/components/schemas/EP_N26-Single' + - $ref: '#/components/schemas/EP_N27-Single' + + - $ref: '#/components/schemas/EP_N31-Single' + - $ref: '#/components/schemas/EP_N32-Single' + - $ref: '#/components/schemas/EP_N33-Single' + - $ref: '#/components/schemas/EP_N60-Single' + + - $ref: '#/components/schemas/EP_S5C-Single' + - $ref: '#/components/schemas/EP_S5U-Single' + - $ref: '#/components/schemas/EP_Rx-Single' + - $ref: '#/components/schemas/EP_MAP_SMSC-Single' + - $ref: '#/components/schemas/EP_NLS-Single' + - $ref: '#/components/schemas/EP_NLG-Single' + - $ref: '#/components/schemas/Configurable5QISet-Single' + - $ref: '#/components/schemas/FiveQiDscpMappingSet-Single' + - $ref: '#/components/schemas/PredefinedPccRuleSet-Single' + - $ref: '#/components/schemas/Dynamic5QISet-Single' diff --git a/OpenAPI/PerDataFileReportMnS.yaml b/OpenAPI/PerDataFileReportMnS.yaml new file mode 100644 index 000000000..83fd77acb --- /dev/null +++ b/OpenAPI/PerDataFileReportMnS.yaml @@ -0,0 +1,13 @@ +openapi: 3.0.1 +info: + title: TS 28.532 File data reporting Service + version: 16.6.0 + description: >- + OAS 3.0.1 specification of the File data reporting Management Service © 2020, + 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). All + rights reserved. +externalDocs: + description: 3GPP TS 28.532 V16.5.0; Generic management services + url: 'http://www.3gpp.org/ftp/Specs/archive/28_series/28.532/' +paths: {} + diff --git a/OpenAPI/PerMeasJobCtlMnS.yaml b/OpenAPI/PerMeasJobCtlMnS.yaml new file mode 100644 index 000000000..b6abe58b2 --- /dev/null +++ b/OpenAPI/PerMeasJobCtlMnS.yaml @@ -0,0 +1,280 @@ +openapi: 3.0.1 +info: + title: TS 28.550 Performance Measurement Job Control Service + version: 16.5.0 + description: >- + OAS 3.0.1 specification of the Performance Measurement Job Control Service + @ 2020, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). + All rights reserved. +externalDocs: + description: 3GPP TS 28.550 V16.5.0; Performance assurance + url: http://www.3gpp.org/ftp/Specs/archive/28_series/28.550/ +servers: + - url: 'http://{URI-DN-prefix}/{root}/PerfMeasJobCtrlMnS/v1650/{LDN-first-part}' + variables: + URI-DN-prefix: + description: See subclause 4.4 of TS 32.158 + default: example.com + root: + description: See subclause 4.4 of TS 32.158 + default: 3GPPManagement + LDN-first-part: + description: See subclause 4.4 of TS 32.158 + default: '' +paths: + /measJobs: + post: + summary: Create a measurement job + description: To create a measurement job the representation of the measurement job is POSTed on the /measJobs collection resource. + requestBody: + required: true + content: + application/json: + schema: + $ref: '#/components/schemas/measJobCreation-RequestType' + responses: + '201': + description: Success case ("201 Created"). The representation of the newly created measurement job resource shall be returned. + content: + application/json: + schema: + $ref: '#/components/schemas/measJobCreation-ResponseType' + '202': + description: Partial success case ("202 Partically created"). The representation of the newly created measurement job resource with unsupported list shall be returned. + content: + application/json: + schema: + $ref: '#/components/schemas/measJobCreation-ResponseType' + default: + description: Error case. + content: + application/json: + schema: + $ref: '#/components/schemas/error-ResponseType' + get: + summary: Read resources of measurement jobs + description: 'With HTTP GET, resources of measurement jobs are read. The resources to be read are identified with the path component (base resource) and the query component (jobIdList) of the URI. The fields query component allows to select the resource properties to be returned.' + parameters: + - name: jobIdList + in: query + description: This parameter identifies the list of jobId to select the resources from the collection resources identified with the path component of the URI. + required: true + schema: + type: array + items: + type: string + responses: + '200': + description: 'Success case ("200 OK"). The resources identified in the request for retrieval are returned in the response message body. In case the fields query parameter is used, the selected resources are returned.' + content: + application/json: + schema: + $ref: '#/components/schemas/measJobsRetrieval-ResponseType' + default: + description: Error case. + content: + application/json: + schema: + $ref: '#/components/schemas/error-ResponseType' + '/measJobs/{jobId}': + get: + summary: Read resource of a single measurement job + description: 'With HTTP GET, resource of a measurement job is read. The resource to be read is identified with the path component of the URI.' + parameters: + - name: jobId + in: path + description: Identifies the measurement job to be read. + required: true + schema: + $ref: '#/components/schemas/uri-Type' + responses: + '200': + description: 'Success case ("200 OK"). The resource identified in the path for retrieval is returned in the response message body. ' + content: + application/json: + schema: + $ref: '#/components/schemas/measJobsRetrieval-ResponseType' + default: + description: Error case. + content: + application/json: + schema: + $ref: '#/components/schemas/error-ResponseType' + delete: + summary: Delete a single measurement job + description: The measurement job is deleted by deleting the corresponding measurement job resource. The resource to be deleted is identified with the path component of the URI. + parameters: + - name: jobId + in: path + description: Identifies the measurement job to be deleted. + required: true + schema: + $ref: '#/components/schemas/uri-Type' + responses: + '204': + description: Success case ("204 No Content"). The measurement job resource has been deleted. The response message body is absent. + default: + description: Error case. + content: + application/json: + schema: + $ref: '#/components/schemas/error-ResponseType' +components: + schemas: + dateTime-Type: + type: string + format: date-Time + uri-Type: + type: string + measJobCreation-RequestType: + type: object + properties: + iOCName: + type: string + iOCInstanceList: + type: array + items: + $ref: '#/components/schemas/uri-Type' + measurementCategoryList: + type: array + items: + type: string + reportingMethod: + $ref: '#/components/schemas/reportingMethod-Type' + granularityPeriod: + type: integer + reportingPeriod: + type: integer + startTime: + $ref: '#/components/schemas/dateTime-Type' + stopTime: + $ref: '#/components/schemas/dateTime-Type' + schedule: + $ref: '#/components/schemas/schedule-Type' + streamTarget: + type: string + priority: + $ref: '#/components/schemas/priority-Type' + reliability: + type: string + measJobCreation-ResponseType: + type: object + properties: + unsupportedList: + type: array + items: + $ref: '#/components/schemas/unsupportedMeas-Type' + measJobsRetrieval-ResponseType: + type: object + properties: + jobInfoList: + type: array + items: + $ref: '#/components/schemas/measJobInfo-ResourceType' + error-ResponseType: + type: object + properties: + error: + type: object + properties: + errorInfo: + type: string + measJobInfo-ResourceType: + type: object + properties: + href: + $ref: '#/components/schemas/uri-Type' + iOCName: + type: string + iOCInstanceList: + type: array + items: + $ref: '#/components/schemas/uri-Type' + measurementCategoryList: + type: array + items: + type: string + reportingMethod: + $ref: '#/components/schemas/reportingMethod-Type' + granularityPeriod: + type: integer + reportingPeriod: + type: integer + startTime: + $ref: '#/components/schemas/dateTime-Type' + stopTime: + $ref: '#/components/schemas/dateTime-Type' + schedule: + $ref: '#/components/schemas/schedule-Type' + streamTarget: + type: string + priority: + $ref: '#/components/schemas/priority-Type' + reliability: + type: string + schedule-Type: + type: object + properties: + scheduleOption: + $ref: '#/components/schemas/scheduleOption-Type' + dailySchedule: + type: array + items: + $ref: '#/components/schemas/timeInterval-Type' + weeklySchedule: + type: array + items: + $ref: '#/components/schemas/scheduleOfDay-Type' + timeInterval-Type: + type: object + properties: + intervalStart: + type: string + format: Time + intervalEnd: + type: string + format: Time + scheduleOfDay-Type: + type: object + properties: + dayOfWeek: + $ref: '#/components/schemas/dayOfWeek-Type' + intervalsOfDay: + type: array + items: + $ref: '#/components/schemas/timeInterval-Type' + unsupportedMeas-Type: + type: object + properties: + iOCInstance: + $ref: '#/components/schemas/uri-Type' + measurementTypeName: + type: string + reason: + type: string + reportingMethod-Type: + type: string + enum: + - file + - streaming + priority-Type: + type: string + enum: + - low + - medium + - high + scheduleOption-Type: + type: string + enum: + - daily + - weekly + dayOfWeek-Type: + type: string + enum: + - Monday + - Tuesday + - Wednesday + - Thursday + - Friday + - Saturday + - Sunday diff --git a/OpenAPI/PerThresMonMnS.yaml b/OpenAPI/PerThresMonMnS.yaml new file mode 100644 index 000000000..923640a11 --- /dev/null +++ b/OpenAPI/PerThresMonMnS.yaml @@ -0,0 +1,102 @@ +openapi: 3.0.1 +info: + title: TS 28.532 Performance Threshold Monitoring Service + version: 16.4.0 + description: OAS 3.0.1 specification of the Performance Threshold Monitoring Service +servers: + - url: 'http://{monitoringNotifTarget}' + variables: + monitoringNotifTarget: + description: >- + The open API server of the performance threshold monitoring service is + located in the consumer side, see monitoringNotifTarget attribute of + the IOC ThresholdMonitor defined in 3GPP TS 28.622 [11]. + default: example.com +paths: + /notificationSink: + post: + summary: Send notifications about performance threshold crossing + description: To send a notifyThresholdCrossing notification + requestBody: + required: true + content: + application/json: + schema: + $ref: '#/components/schemas/notifyThresholdCrossing-NotifType' + responses: + '204': + description: >- + Success case ("204 No Content"). The notification is successfully + delivered. The response message body is absent. + default: + description: Error case. + content: + application/json: + schema: + $ref: '#/components/schemas/error-ResponseType' +components: + schemas: + dateTime-Type: + type: string + format: date-Time + uri-Type: + type: string + long-Type: + type: string + format: long + thresholdLevel-Type: + type: integer + measurementTypeName-Type: + type: string + measurementValue-Type: + type: string + additionalText-Type: + type: string + error-ResponseType: + type: object + properties: + error: + type: object + properties: + errorInfo: + type: string + header-Type: + description: Header used in notifications as notification header + type: object + properties: + uri: + $ref: '#/components/schemas/uri-Type' + notificationId: + $ref: '#/components/schemas/notificationId-Type' + notificationType: + $ref: '#/components/schemas/notificationType-Type' + eventTime: + $ref: '#/components/schemas/dateTime-Type' + notificationId-Type: + $ref: '#/components/schemas/long-Type' + notificationType-Type: + type: string + enum: + - notifyThresholdCrossing + notifyThresholdCrossing-NotifType: + type: object + properties: + header: + $ref: '#/components/schemas/header-Type' + body: + type: object + properties: + startOfMonitoringGP: + $ref: '#/components/schemas/dateTime-Type' + endOfMonitoringGP: + $ref: '#/components/schemas/dateTime-Type' + monitoredObjectInstance: + $ref: '#/components/schemas/uri-Type' + thresholdLevel: + $ref: '#/components/schemas/thresholdLevel-Type' + measurementTypeName: + $ref: '#/components/schemas/measurementTypeName-Type' + measurementValue: + $ref: '#/components/schemas/measurementValue-Type' + additionalText: + $ref: '#/components/schemas/additionalText-Type' diff --git a/OpenAPI/PerfDataStreamingMnS.yaml b/OpenAPI/PerfDataStreamingMnS.yaml new file mode 100644 index 000000000..e040e14c8 --- /dev/null +++ b/OpenAPI/PerfDataStreamingMnS.yaml @@ -0,0 +1,363 @@ +openapi: 3.0.1 +info: + title: TS 28.550 Performance Data Streaming Service + version: 16.3.0 + description: OAS 3.0.1 specification of the Performance Data Streaming Service +servers: + - url: 'http://{streamTarget}/PerfDataStreamMnS/v1630' + description: This URL is used for posting the set of information about streams supported on the connection between the producer and the consumer. + variables: + streamTarget: + description: 'The open API server of the performance data streaming service is located in the consumer side,and the “streamTarget” part corresponds to the streamTarget parameter provided in the createMeasurementJob operation (see clause 6.1.1.2) or the streamTarget attribute of the MOI of MeasurementControlor MeasurementReader, see 3GPP TS 28.622 [5]).' + default: example.com + - url: 'wss://{streamTarget}/PerfDataStreamMnS/v1630/streamingConnection' + description: This URL is used for establishing the WebSocket connection for the performance data streaming service. + variables: + streamTarget: + description: 'The open API server of the performance data streaming service is located in the consumer side,and the “streamTarget” part corresponds to the streamTarget parameter provided in the createMeasurementJob operation (see clause 6.1.1.2) or the streamTarget attribute of the MOI of MeasurementControlor MeasurementReader, see 3GPP TS 28.622 [5]).' + default: example.com +paths: + /streamInfoList: + post: + summary: The set of information about the streams sent from the producer to the consumer + description: To send the streamInfoList from the producer to the consumer + requestBody: + required: true + content: + application/json: + schema: + $ref: '#/components/schemas/streamInfoListPost-RequestType' + responses: + '201': + description: Success case ("201 Posted"). The streamInfoList is successfully posted. + content: + application/json: + schema: + $ref: '#/components/schemas/streamInfoListPost-ResponseType' + '202': + description: Partial success case ("202 Partially posted"). The representation of the posted resource on stream information. + content: + application/json: + schema: + $ref: '#/components/schemas/streamInfoListPost-ResponseType' + default: + description: Error case. + content: + application/json: + schema: + $ref: '#/components/schemas/error-ResponseType' + get: + summary: Read resources of stream information from the streaming consumer + description: 'With HTTP GET, resources of stream information are read. The resources to be read are identified with the path component (base resource) and the query component (streamIdList) of the URI. The fields query component allows to select the resource properties to be returned.' + parameters: + - name: streamIdList + in: query + description: This parameter identifies the list of streamId to select from the collection resources identified with the path component of the URI. + required: true + schema: + type: array + items: + type: integer + responses: + '200': + description: 'Success case ("200 OK"). The resources identified in the request for retrieval are returned in the response message body. In case the fields query parameter is used, the selected resources are returned.' + content: + application/json: + schema: + $ref: '#/components/schemas/listOfStreamInfoRetrieval-ResponseType' + '202': + description: Partial success case ("202 Partially retrieved"). The representation of the retrieved resources on stream information. + content: + application/json: + schema: + $ref: '#/components/schemas/listOfStreamInfoRetrieval-ResponseType' + default: + description: Error case. + content: + application/json: + schema: + $ref: '#/components/schemas/error-ResponseType' + patch: + summary: Update resources of stream information to the streaming consumer + description: 'With HTTP PATCH, resources of stream information are to be updated. The resources to be updated are identified with the path component (base resource) and the query component (streamIdList) of the URI. The fields query component allows to select the resource properties to be updated.' + parameters: + - name: streamIdList + in: query + description: This parameter identifies the list of streamId to select from the collection resources identified with the path component of the URI. + required: true + schema: + type: array + items: + type: integer + requestBody: + required: true + content: + application/json: + schema: + $ref: '#/components/schemas/listOfStreamInfoToUpdate-RequestType' + responses: + '200': + description: Success case ("200 OK"). The resources selected by the query parameter are updated and returned in the response message body. + content: + application/json: + schema: + $ref: '#/components/schemas/listOfStreamInfoUpdate-ResponseType' + '202': + description: Partial success case ("202 Partially updated"). The representation of the updated resources on stream information + content: + application/json: + schema: + $ref: '#/components/schemas/listOfStreamInfoUpdate-ResponseType' + default: + description: Error case. + content: + application/json: + schema: + $ref: '#/components/schemas/error-ResponseType' + delete: + summary: The information of streams to be deleted by the producer to the consumer + description: 'With HTTP DELETE, resources of stream information are to be deleted. The resources to be deleted are identified with the path component (base resource) and the query component (streamIdList) of the URI. The fields query component allows to select the resource properties to be deleted.' + parameters: + - name: streamIdList + in: query + description: This parameter identifies the list of streamId to select from the collection resources identified with the path component of the URI. + required: true + schema: + type: array + items: + type: integer + responses: + '204': + description: Success case ("204 No Content"). The stream information resource has been deleted. The response message body is absent. + default: + description: Error case. + content: + application/json: + schema: + $ref: '#/components/schemas/error-ResponseType' + '/streamInfoList/{streamId}': + get: + summary: Read resource of the stream information from the streaming consumer + description: 'With HTTP GET, resource of stream information is read. The resource to be read is identified with the path component the URI.' + parameters: + - name: streamId + in: path + description: Identifies the stream for which the information is to be retrieved. + required: true + schema: + $ref: '#/components/schemas/uri-Type' + responses: + '200': + description: Success case ("200 OK"). The resource identified in the request for retrieval is returned in the response message body. + content: + application/json: + schema: + $ref: '#/components/schemas/listOfStreamInfoRetrieval-ResponseType' + default: + description: Error case. + content: + application/json: + schema: + $ref: '#/components/schemas/error-ResponseType' + patch: + summary: Update the resource of stream information to the streaming consumer + description: 'With HTTP PATCH, resource of stream information is to be updated. The resource to be updated is identified by the path component of the URI. ' + parameters: + - name: streamId + in: path + description: Identifies the stream for which the information is to be updated. + required: true + schema: + $ref: '#/components/schemas/uri-Type' + requestBody: + required: true + content: + application/json: + schema: + $ref: '#/components/schemas/streamInfoToUpdate-RequestType' + responses: + '200': + description: Success case ("200 OK"). The resources identified by the path of the URI is updated and returned in the response message body. + content: + application/json: + schema: + $ref: '#/components/schemas/streamInfoUpdate-ResponseType' + default: + description: Error case. + content: + application/json: + schema: + $ref: '#/components/schemas/error-ResponseType' + delete: + summary: The stream information to be deleted by the producer to the consumer + description: 'With HTTP DELETE, resource of stream information identified by the path component of the URI is to be deleted.' + parameters: + - name: streamId + in: path + description: Identifies the stream for which the information is to be deleted + required: true + schema: + $ref: '#/components/schemas/uri-Type' + responses: + '204': + description: Success case ("204 No Content"). The stream information resource has been deleted. The response message body is absent. + default: + description: Error case. + content: + application/json: + schema: + $ref: '#/components/schemas/error-ResponseType' + /streamConnection: + get: + summary: The connection for streaming from the producer to the consumer + description: To establish the WebSocket connection between the producer and the consumer. The HTTP version of this operation shall not be earlier than HTTP/1.1 + parameters: + - in: header + name: Upgrade + required: true + schema: + $ref: '#/components/schemas/Upgrade-HeaderType' + - in: header + name: Connection + required: true + schema: + $ref: '#/components/schemas/Connection-HeaderType' + - in: header + name: Sec-WebSocket-Key + required: true + schema: + $ref: '#/components/schemas/Sec-WebSocket-Key-HeaderType' + - in: header + name: Sec-WebSocket-Version + required: true + schema: + $ref: '#/components/schemas/Sec-WebSocket-Version-HeaderType' + responses: + '101': + description: Success case ("101 Switching Protocols "). The connection has been successfully switched to WebSocket. The response message body is absent. + headers: + Upgrade: + schema: + $ref: '#/components/schemas/Upgrade-HeaderType' + Connection: + schema: + $ref: '#/components/schemas/Connection-HeaderType' + Sec-WebSocket-Accept-HeaderType: + schema: + $ref: '#/components/schemas/Sec-WebSocket-Accept-HeaderType' + default: + description: Error case. + content: + application/json: + schema: + $ref: '#/components/schemas/error-ResponseType' +components: + schemas: + uri-Type: + type: string + streamInfoIn-Type: + type: object + properties: + streamId: + type: integer + iOCInstance: + $ref: '#/components/schemas/uri-Type' + measTypes: + type: array + items: + type: string + streamInfoOut-Type: + type: object + properties: + streamId: + $ref: '#/components/schemas/uri-Type' + iOCInstance: + $ref: '#/components/schemas/uri-Type' + measTypes: + type: array + items: + type: string + error-ResponseType: + type: object + properties: + error: + type: object + properties: + errorInfo: + type: string + streamInfoListPost-RequestType: + type: object + properties: + streamInfoList: + type: array + items: + $ref: '#/components/schemas/streamInfoIn-Type' + streamInfoListPost-ResponseType: + type: object + properties: + streamInfoListPosted: + type: array + items: + $ref: '#/components/schemas/streamInfoOut-Type' + streamInfoRetrieval-ResponseType: + type: object + properties: + streamInfoOut: + $ref: '#/components/schemas/streamInfoOut-Type' + listOfStreamInfoRetrieval-ResponseType: + type: object + properties: + listOfStreamInfoOut: + type: array + items: + $ref: '#/components/schemas/streamInfoOut-Type' + streamInfoToUpdatePropertyType: + type: object + properties: + iOCInstance: + description: 'The updated measured object instance, empty value means no update.' + allOf: + - $ref: '#/components/schemas/uri-Type' + measTypes: + description: 'The updated list of measurement type, empty value means no update.' + type: array + items: + type: string + streamInfoToUpdate-RequestType: + type: object + properties: + streamInfoToUpdate: + $ref: '#/components/schemas/streamInfoToUpdatePropertyType' + listOfStreamInfoToUpdate-RequestType: + type: object + properties: + listOfStreamInfoToUpdate: + type: array + items: + $ref: '#/components/schemas/streamInfoToUpdatePropertyType' + streamInfoUpdate-ResponseType: + type: object + properties: + streamInfoUpdated: + $ref: '#/components/schemas/streamInfoOut-Type' + listOfStreamInfoUpdate-ResponseType: + type: object + properties: + listOfStreamInfoUpdated: + type: array + items: + $ref: '#/components/schemas/streamInfoOut-Type' + Upgrade-HeaderType: + type: string + enum: + - websocket + Connection-HeaderType: + type: string + enum: + - Upgrade + Sec-WebSocket-Key-HeaderType: + type: string + Sec-WebSocket-Version-HeaderType: + type: string + Sec-WebSocket-Accept-HeaderType: + type: string diff --git a/OpenAPI/comDefs.yaml b/OpenAPI/comDefs.yaml new file mode 100644 index 000000000..04ab65161 --- /dev/null +++ b/OpenAPI/comDefs.yaml @@ -0,0 +1,84 @@ +openapi: 3.0.1 +info: + title: Common Type Definitions + version: 16.3.0 + description: >- + OAS 3.0.1 specification of common type definitions in the Generic NRM + © 2020, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). + All rights reserved. +externalDocs: + description: 3GPP TS 28.623 V16.3.0; Generic NRM, Common Type Definitions + url: http://www.3gpp.org/ftp/Specs/archive/28_series/28.623/ +paths: {} +components: + schemas: + Long: + type: string + format: long + Float: + type: string + format: float + DateTime: + type: string + format: date-Time + Dn: + type: string + Uri: + type: string + AttributeNameValuePairSet: + type: object + minProperties: 1 + AttributeValueChangeSet: + description: >- + The key in this map is the attribute name. The value of each key is an array. + When only one item is present in the array, it carries the new attribute + value. If two items are present, then the first item carries the old value + and the second item the new value. The items can be of any type including null. + type: object + additionalProperties: + type: array + minItems: 1 + maxItems: 2 + items: + nullable: true + Filter: + type: string + SystemDN: + type: string + NotificationId: + type: integer + NotificationHeader: + description: >- + Header used for all notifications types + type: object + required: + - uri + - notificationId + - notificationType + - eventTime + - systemDn + properties: + uri: + $ref: '#/components/schemas/Uri' + notificationId: + $ref: '#/components/schemas/NotificationId' + notificationType: + oneOf: + - $ref: 'faultMnS.yaml#/components/schemas/AlarmNotificationTypes' + #- $ref: 'provMnS.yaml#/components/schemas/CmNotificationTypes' + # more to be added + eventTime: + $ref: '#/components/schemas/DateTime' + systemDN: + $ref: '#/components/schemas/SystemDN' + ErrorResponse: + description: >- + Default schema for the response message body in case the request + is not successful. + type: object + properties: + error: + type: object + properties: + errorInfo: + type: string diff --git a/OpenAPI/coslaNrm.yaml b/OpenAPI/coslaNrm.yaml new file mode 100644 index 000000000..e6a0ef13a --- /dev/null +++ b/OpenAPI/coslaNrm.yaml @@ -0,0 +1,168 @@ +openapi: 3.0.2 + +info: + title: coslaNrm + version: 16.4.0 + description: + OAS 3.0.1 specification of the Cosla NRM + © 2020, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). + All rights reserved. + +externalDocs: + description: 3GPP TS 28.536 V16.4.0; Cosla NRM + url: http://www.3gpp.org/ftp/Specs/archive/28_series/28.536/ + +paths: {} + +components: + + schemas: + +#------------ Type definitions --------------------------------------------------- + + ControlLoopLifeCyclePhase: + type: string + enum: + - PREPARATION + - COMMISSIONING + - OPERATION + - DECOMMISSIONING + + ObservationTime: + type: integer + + AssuranceGoalStatusObserved: + type: string + enum: + - FULFILLED + - NOT_FULFILLED + + AssuranceGoalStatusPredicted: + type: string + enum: + - FULFILLED + - NOT_FULFILLED + + AssuranceTargetStatusObserved: + type: string + enum: + - FULFILLED + - NOT_FULFILLED + + AssuranceTargetStatusPredicted: + type: string + enum: + - FULFILLED + - NOT_FULFILLED + + AssuranceTarget: + type: object + properties: + assuranceTargetName: + type: string + assuranceTargetValue: + type: string + assuranceTargetStatusObserved: + $ref: '#/components/schemas/AssuranceTargetStatusObserved' + assuranceTargetStatusPredicted: + $ref: '#/components/schemas/AssuranceTargetStatusPredicted' + + AssuranceTargetList: + type: array + items: + $ref: '#/components/schemas/AssuranceTarget' + + +#-------- Definition of concrete IOCs -------------------------------------------- + + SubNetwork-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/SubNetwork-Attr' + - $ref: 'genericNrm.yaml#/components/schemas/SubNetwork-ncO' + - type: object + properties: + AssuranceClosedControlLoop: + $ref: '#/components/schemas/AssuranceClosedControlLoop-Multiple' + + ManagedElement-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/ManagedElement-Attr' + - $ref: 'genericNrm.yaml#/components/schemas/ManagedElement-ncO' + - type: object + properties: + AssuranceClosedControlLoop: + $ref: '#/components/schemas/AssuranceClosedControlLoop-Multiple' + + AssuranceClosedControlLoop-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + type: object + properties: + operationalState: + $ref: 'genericNrm.yaml#/components/schemas/OperationalState' + administrativeState: + $ref: 'genericNrm.yaml#/components/schemas/AdministrativeState' + controlLoopLifeCyclePhase: + $ref: '#/components/schemas/ControlLoopLifeCyclePhase' + AssuranceGoal: + $ref: '#/components/schemas/AssuranceGoal-Multiple' + + AssuranceGoal-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + allOf: + - type: object + properties: + observationTime: + $ref: '#/components/schemas/ObservationTime' + assuranceTargetList: + $ref: '#/components/schemas/AssuranceTargetList' + assuranceGoalStatusObserved: + $ref: '#/components/schemas/AssuranceGoalStatusObserved' + assuranceGoalStatusPredicted: + $ref: '#/components/schemas/AssuranceGoalStatusPredicted' + serviceProfileId: + type: string + sliceProfileId: + type: string + networkSliceRef: + $ref: 'comDefs.yaml#/components/schemas/Dn' + networkSliceSubnetRef: + $ref: 'comDefs.yaml#/components/schemas/Dn' + +#-------- Definition of JSON arrays for name-contained IOCs ---------------------- + + AssuranceClosedControlLoop-Multiple: + type: array + items: + $ref: '#/components/schemas/AssuranceClosedControlLoop-Single' + + AssuranceGoal-Multiple: + type: array + items: + $ref: '#/components/schemas/AssuranceGoal-Single' + +#------------ Definitions in TS 28.536 for TS 28.623 ----------------------------- + + resources-coslaNrm: + oneOf: + - $ref: '#/components/schemas/AssuranceClosedControlLoop-Single' + - $ref: '#/components/schemas/AssuranceGoal-Single' + - $ref: '#/components/schemas/SubNetwork-Single' + - $ref: '#/components/schemas/ManagedElement-Single' \ No newline at end of file diff --git a/OpenAPI/faultMnS.yaml b/OpenAPI/faultMnS.yaml new file mode 100644 index 000000000..499123b90 --- /dev/null +++ b/OpenAPI/faultMnS.yaml @@ -0,0 +1,1144 @@ +openapi: 3.0.1 +info: + title: Fault Supervision MnS + version: 16.4.0 + description: >- + OAS 3.0.1 definition of the Fault Supervision MnS + © 2020, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). + All rights reserved. +externalDocs: + description: 3GPP TS 28.532 V16.4.0; Generic management services + url: http://www.3gpp.org/ftp/Specs/archive/28_series/28.532/ +servers: + - url: '{MnSRoot}/FaultSupervisionMnS/{version}' + variables: + MnSRoot: + description: See subclause 4.4.3 of TS 32.158 + default: http://example.com/3GPPManagement + version: + description: Versi on number of the OpenAPI definition + default: XXX +paths: + /alarms: + get: + summary: Retrieve multiple alarms + description: >- + Retrieves the alarms identified by alarmAckState, baseObjectInstance + and filter. + parameters: + - name: alarmAckState + in: query + required: false + schema: + $ref: '#/components/schemas/AlarmAckState' + - name: baseObjectInstance + in: query + required: false + schema: + $ref: '#/components/schemas/Dn' + - name: filter + in: query + required: false + schema: + $ref: '#/components/schemas/Filter' + responses: + '200': + description: >- + Success case ("200 OK"). + Returns the alarms identified in the request. The alarmId is the key + of the map. + content: + application/json: + schema: + type: object + additionalProperties: + type: object + allOf: + - type: object + properties: + lastNotificationHeader: + $ref: '#/components/schemas/NotificationHeader' + - $ref: '#/components/schemas/AlarmRecord' + - type: object + properties: + comments: + $ref: '#/components/schemas/Comments' + default: + description: Response in case of error. + content: + application/json: + schema: + $ref: '#/components/schemas/ErrorResponse' + patch: + summary: 'Clear, acknowledge or unacknowledge multiple alarms' + description: >- + Clears, acknowledges or unacknowledges multiple alarms using patch. Depending + on which action is to be performed, different merge patch documents need + to be used. + requestBody: + description: >- + Patch documents for acknowledging and unacknowledging, or clearing multiple + alarms. The keys in the map are the alarmIds to be patched. + content: + application/merge-patch+json: + schema: + oneOf: + - type: object + additionalProperties: + $ref: '#/components/schemas/MergePatchAcknowledgeAlarm' + - type: object + additionalProperties: + $ref: '#/components/schemas/MergePatchClearAlarm' + responses: + '204': + description: >- + Success case ("204 No content"). + The response message body is empty. + default: + description: Response in case of error. + content: + application/json: + schema: + type: array + items: + $ref: '#/components/schemas/FailedAlarm' + /alarms/alarmCount: + get: + summary: Get the alarm count per perceived severity + parameters: + - name: alarmAckState + in: query + required: false + schema: + $ref: '#/components/schemas/AlarmAckState' + - name: filter + in: query + required: false + schema: + type: string + responses: + '200': + description: >- + Success case ("200 OK"). + The alarm count per perceived severity is returned. + content: + application/json: + schema: + $ref: '#/components/schemas/AlarmCount' + default: + description: Response in case of error. The error case needs rework. + content: + application/json: + schema: + $ref: '#/components/schemas/ErrorResponse' + /alarms/{alarmId}: + patch: + summary: 'Clear, acknowledge or unacknowledge a single alarm' + description: >- + Clears, acknowledges or uncknowldeges a single alarm by patching the alarm + information. A conditional acknowledge request based on the perceived + severity is not supported. + parameters: + - name: alarmId + in: path + description: Identifies the alarm to be patched. + required: true + schema: + type: string + requestBody: + required: true + content: + application/merge-patch+json: + schema: + oneOf: + - $ref: '#/components/schemas/MergePatchAcknowledgeAlarm' + - $ref: '#/components/schemas/MergePatchClearAlarm' + responses: + '204': + description: >- + Success case (204 No content). + The response message body is absent. + default: + description: Response in case of error. + content: + application/json: + schema: + $ref: '#/components/schemas/ErrorResponse' + /alarms/{alarmId}/comments: + post: + summary: Add a comment to a single alarm + description: >- + Adds a comment to an alarm identified by alarmId. The id of the new comment + is allocated by the producer. + parameters: + - name: alarmId + in: path + description: Identifies the alarm to which the comment shall be added. + required: true + schema: + type: string + requestBody: + required: true + content: + application/json: + schema: + $ref: '#/components/schemas/Comment' + responses: + '201': + description: >- + Success case (201 Created). + The representation of the newly created comment resource shall be returned. + content: + application/json: + schema: + $ref: '#/components/schemas/Comment' + headers: + Location: + description: URI of the newly created comment resource. + required: true + schema: + type: string + default: + description: Error case. + content: + application/json: + schema: + $ref: '#/components/schemas/ErrorResponse' + + /subscriptions: + post: + summary: Create a subscription + description: >- + To create a subscription the representation of the subscription is + POSTed on the /subscriptions collection resource. + requestBody: + required: true + content: + application/json: + schema: + $ref: '#/components/schemas/Subscription' + responses: + '201': + description: >- + Success case ("201 Created"). + The representation of the newly created subscription resource shall + be returned. + content: + application/json: + schema: + $ref: '#/components/schemas/Subscription' + headers: + Location: + description: URI of the newly created subscription resource + required: true + schema: + type: string + default: + description: Error case. + content: + application/json: + schema: + $ref: '#/components/schemas/ErrorResponse' + callbacks: + notifyNewAlarm: + '{request.body#/consumerReference}': + post: + requestBody: + required: true + content: + application/json: + schema: + oneOf: + - $ref: '#/components/schemas/NotifyNewAlarm' + - $ref: '#/components/schemas/NotifyNewSecAlarm' + responses: + '204': + description: >- + Success case ("204 No Content"). + The notification is successfully delivered. The response message + body is absent. + default: + description: Error case. + content: + application/json: + schema: + $ref: '#/components/schemas/ErrorResponse' + notifyClearedAlarm: + '{request.body#/consumerReference}': + post: + requestBody: + required: true + content: + application/json: + schema: + $ref: '#/components/schemas/NotifyClearedAlarm' + responses: + '204': + description: >- + Success case ("204 No Content"). + The notification is successfully delivered. The response message + body is absent. + default: + description: Error case. + content: + application/json: + schema: + $ref: '#/components/schemas/ErrorResponse' + notifyChangedAlarm: + '{request.body#/consumerReference}': + post: + requestBody: + required: true + content: + application/json: + schema: + $ref: '#/components/schemas/NotifyChangedAlarm' + responses: + '204': + description: >- + Success case ("204 No Content"). + The notification is successfully delivered. The response message + body is absent. + default: + description: Error case. + content: + application/json: + schema: + $ref: '#/components/schemas/ErrorResponse' + notifyChangedAlarmGeneral: + '{request.body#/consumerReference}': + post: + requestBody: + required: true + content: + application/json: + schema: + oneOf: + - $ref: '#/components/schemas/NotifyChangedAlarmGeneral' + - $ref: '#/components/schemas/NotifyChangedSecAlarmGeneral' + responses: + '204': + description: >- + Success case ("204 No Content"). + The notification is successfully delivered. The response message + body is absent. + default: + description: Error case. + content: + application/json: + schema: + $ref: '#/components/schemas/ErrorResponse' + notifyCorrelatedNotificationChanged: + '{request.body#/consumerReference}': + post: + requestBody: + required: true + content: + application/json: + schema: + $ref: '#/components/schemas/NotifyCorrelatedNotificationChanged' + responses: + '204': + description: >- + Success case ("204 No Content"). + The notification is successfully delivered. The response message + body is absent. + default: + description: Error case. + content: + application/json: + schema: + $ref: '#/components/schemas/ErrorResponse' + notifyAckStateChanged: + '{request.body#/consumerReference}': + post: + requestBody: + required: true + content: + application/json: + schema: + $ref: '#/components/schemas/NotifyAckStateChanged' + responses: + '204': + description: >- + Success case ("204 No Content"). + The notification is successfully delivered. The response message + body is absent. + default: + description: Error case. + content: + application/json: + schema: + $ref: '#/components/schemas/ErrorResponse' + notifyComments: + '{request.body#/consumerReference}': + post: + requestBody: + required: true + content: + application/json: + schema: + $ref: '#/components/schemas/NotifyComments' + responses: + '204': + description: >- + Success case ("204 No Content"). + The notification is successfully delivered. The response message + body is absent. + default: + description: Error case. + content: + application/json: + schema: + $ref: '#/components/schemas/ErrorResponse' + notifyPotentialFaultyAlarmList: + '{request.body#/consumerReference}': + post: + requestBody: + required: true + content: + application/json: + schema: + $ref: '#/components/schemas/NotifyPotentialFaultyAlarmList' + responses: + '204': + description: >- + Success case ("204 No Content"). + The notification is successfully delivered. The response message + body is absent. + default: + description: Error case. + content: + application/json: + schema: + $ref: '#/components/schemas/ErrorResponse' + notifyAlarmListRebuilt: + '{request.body#/consumerReference}': + post: + requestBody: + required: true + content: + application/json: + schema: + $ref: '#/components/schemas/NotifyAlarmListRebuilt' + responses: + '204': + description: >- + Success case ("204 No Content"). + The notification is successfully delivered. The response message + body is absent. + default: + description: Error case. + content: + application/json: + schema: + $ref: '#/components/schemas/ErrorResponse' + /subscriptions/{subscriptionId}: + delete: + summary: Delete a subscription + description: >- + The subscription is deleted by deleting the corresponding subscription + resource. The resource to be deleted is identified with the path + component of the URI. + parameters: + - name: subscriptionId + in: path + description: Identifies the subscription to be deleted. + required: true + schema: + type: string + responses: + '204': + description: >- + Success case ("204 No Content"). + The subscription resource has been deleted. The response message body + is absent. + default: + description: Error case. + content: + application/json: + schema: + $ref: '#/components/schemas/ErrorResponse' + +components: + schemas: + + #---- Definitions to be moved to comDefs.yaml --------------------------------------# + + Long: + type: string + format: long + Float: + type: string + format: float + DateTime: + type: string + format: date-Time + + Dn: + type: string + Uri: + type: string + + AttributeNameValuePairSet: + type: object + minProperties: 1 + AttributeValueChangeSet: + description: >- + The key in this map is the attribute name. The value of each key is an array. + When only one item is present in the array, it carries the new attribute + value. If two items are present, then the first item carries the old value + and the second item the new value. The items can be of any type including null. + type: object + additionalProperties: + type: array + minItems: 1 + maxItems: 2 + items: + nullable: true + + Filter: + type: string + SystemDN: + type: string + + NotificationId: + type: integer + NotificationHeader: + description: >- + Header used for all notification types + type: object + required: + - href + - notificationId + - notificationType + - eventTime + - systemDN + properties: + uri: + $ref: '#/components/schemas/Uri' + notificationId: + $ref: '#/components/schemas/NotificationId' + notificationType: + oneOf: + - $ref: '#/components/schemas/AlarmNotificationTypes' + #- $ref: 'faultMnS.yaml#/components/schemas/AlarmNotificationTypes' + #- $ref: 'provMnS.yaml#/components/schemas/CmNotificationTypes' + # more to be added + eventTime: + $ref: '#/components/schemas/DateTime' + systemDN: + $ref: '#/components/schemas/SystemDN' + + ErrorResponse: + description: >- + Default schema for the response message body in case the request is not + successful. + type: object + properties: + error: + type: object + properties: + errorInfo: + type: string + + #---- End of definitions to be moved to comDefs.yaml -------------------------------# + + #---- Definition of AlarmRecord ----------------------------------------------------# + + AlarmId: + type: string + AlarmType: + type: string + enum: + - COMMUNICATIONS_ALARM + - QUALITY_OF_SERVICE_ALARM + - PROCESSING_ERROR_ALARM + - EQUIPMENT_ALARM + - ENVIRONMENTAL_ALARM + - INTEGRITY_VIOLATION + - OPERATIONAL_VIOLATION + - PHYSICAL_VIOLATION + - SECURITY_SERVICE_OR_MECHANISM_VIOLATION + - TIME_DOMAIN_VIOLATION + ProbableCause: + description: >- + The value of the probable cause may be a specific standardized string, or any + vendor provided string. Probable cause strings are not standardized in the + present document. They may be added in a future version. Up to then the + mapping of the generic probable cause strings "PROBABLE_CAUSE_001" to + "PROBABLE_CAUSE_005" is vendor specific. + The value of the probable cause may also be an integer. The mapping of integer + values to probable causes is vendor specific. + oneOf: + - anyOf: + - type: string + enum: + - PROBABLE_CAUSE_001 + - PROBABLE_CAUSE_002 + - PROBABLE_CAUSE_003 + - PROBABLE_CAUSE_004 + - PROBABLE_CAUSE_005 + - type: string + - type: integer + SpecificProblem: + oneOf: + - type: string + - type: integer + PerceivedSeverity: + type: string + enum: + - INDETERMINATE + - CRITICAL + - MAJOR + - MINOR + - WARNING + - CLEARED + TrendIndication: + type: string + enum: + - MORE_SEVERE + - NO_CHANGE + - LESS_SEVERE + ThresholdHysteresis: + type: object + required: + - high + properties: + high: + oneOf: + - type: integer + - $ref: '#/components/schemas/Float' + low: + $ref: '#/components/schemas/Float' + ThresholdLevelInd: + type: object + required: + - up + properties: + up: + $ref: '#/components/schemas/ThresholdHysteresis' + low: + $ref: '#/components/schemas/ThresholdHysteresis' + ThresholdInfo: + type: object + required: + - observedMeasurement + - observedValue + properties: + observedMeasurement: + type: string + observedValue: + oneOf: + - type: integer + - $ref: '#/components/schemas/Float' + thresholdLevelInd: + $ref: '#/components/schemas/ThresholdLevelInd' + armTime: + $ref: '#/components/schemas/DateTime' + CorrelatedNotification: + type: object + required: + - source + - notificationId + properties: + sourceObjectInstance: + $ref: '#/components/schemas/Dn' + notificationIds: + type: array + items: + $ref: '#/components/schemas/NotificationId' + CorrelatedNotifications: + type: array + items: + $ref: '#/components/schemas/CorrelatedNotification' + AckState: + type: string + enum: + - ACKNOWLEDGED + - UNACKNOWLEDGED + + AlarmRecord: + description: >- + The alarmId is not a property of an alarm record. It is used as key + in the map of alarm records instead. + type: object + properties: + # alarmId: + # $ref: '#/components/schemas/AlarmId' + objectInstance: + $ref: '#/components/schemas/Dn' + notificationId: + $ref: '#/components/schemas/NotificationId' + alarmRaisedTime: + $ref: '#/components/schemas/DateTime' + alarmChangedTime: + $ref: '#/components/schemas/DateTime' + alarmClearedTime: + $ref: '#/components/schemas/DateTime' + alarmType: + $ref: '#/components/schemas/AlarmType' + probableCause: + $ref: '#/components/schemas/ProbableCause' + specificProblem: + $ref: '#/components/schemas/SpecificProblem' + perceivedSeverity: + $ref: '#/components/schemas/PerceivedSeverity' + backedUpStatus: + type: boolean + backUpObject: + $ref: '#/components/schemas/Dn' + trendIndication: + $ref: '#/components/schemas/TrendIndication' + thresholdinfo: + $ref: '#/components/schemas/ThresholdInfo' + correlatedNotifications: + $ref: '#/components/schemas/CorrelatedNotifications' + stateChangeDefinition: + $ref: '#/components/schemas/AttributeValueChangeSet' + monitoredAttributes: + $ref: '#/components/schemas/AttributeNameValuePairSet' + proposedRepairActions: + type: string + additionalText: + type: string + additionalInformation: + $ref: '#/components/schemas/AttributeNameValuePairSet' + + rootCauseIndicator: + type: boolean + + ackTime: + $ref: '#/components/schemas/DateTime' + ackUserId: + type: string + ackSystemId: + type: string + ackState: + $ref: '#/components/schemas/AckState' + + clearUserId: + type: string + clearSystemId: + type: string + serviceUser: + type: string + serviceProvider: + type: string + securityAlarmDetector: + type: string + + #---- Definition of alarm notifications --------------------------------------------# + + AlarmNotificationTypes: + type: string + enum: + - notifyNewAlarm + - notifyChangedAlarm + - notifyChangedAlarmGeneral + - notifyAckStateChanged + - notifyCorrelatedNotificationChanged + - notifyComments + - notifyClearedAlarm + - notifyAlarmListRebuiltAlarm + - notifyPotentialFaultyAlarmList + AlarmListAlignmentRequirement: + type: string + enum: + - ALIGNMENT_REQUIRED + - ALIGNMENT_NOT_REQUIRED + + NotifyNewAlarm: + allOf: + - $ref: '#/components/schemas/NotificationHeader' + - type: object + required: + - alarmId + - alarmType + - probableCause + - perceivedSeverity + properties: + alarmId: + $ref: '#/components/schemas/AlarmId' + alarmType: + $ref: '#/components/schemas/AlarmType' + probableCause: + $ref: '#/components/schemas/ProbableCause' + specificProblem: + $ref: '#/components/schemas/SpecificProblem' + perceivedSeverity: + $ref: '#/components/schemas/PerceivedSeverity' + backedUpStatus: + type: boolean + backUpObject: + $ref: '#/components/schemas/Dn' + trendIndication: + $ref: '#/components/schemas/TrendIndication' + thresholdInfo: + $ref: '#/components/schemas/ThresholdInfo' + correlatedNotifications: + $ref: '#/components/schemas/CorrelatedNotifications' + stateChangeDefinition: + $ref: '#/components/schemas/AttributeValueChangeSet' + monitoredAttributes: + $ref: '#/components/schemas/AttributeNameValuePairSet' + proposedRepairActions: + type: string + additionalText: + type: string + additionalInformation: + $ref: '#/components/schemas/AttributeNameValuePairSet' + rootCauseIndicator: + type: boolean + NotifyNewSecAlarm: + allOf: + - $ref: '#/components/schemas/NotificationHeader' + - type: object + required: + - alarmId + - alarmType + - probableCause + - perceivedSeverity + - serviceUser + - serviceProvider + - securityAlarmDetector + properties: + alarmId: + $ref: '#/components/schemas/AlarmId' + alarmType: + $ref: '#/components/schemas/AlarmType' + probableCause: + $ref: '#/components/schemas/ProbableCause' + perceivedSeverity: + $ref: '#/components/schemas/PerceivedSeverity' + correlatedNotifications: + $ref: '#/components/schemas/CorrelatedNotifications' + additionalText: + type: string + additionalInformation: + $ref: '#/components/schemas/AttributeNameValuePairSet' + rootCauseIndicator: + type: boolean + serviceUser: + type: string + serviceProvider: + type: string + securityAlarmDetector: + type: string + NotifyClearedAlarm: + allOf: + - $ref: '#/components/schemas/NotificationHeader' + - type: object + required: + - alarmId + - alarmType + - probableCause + - perceivedSeverity + properties: + alarmId: + $ref: '#/components/schemas/AlarmId' + alarmType: + $ref: '#/components/schemas/AlarmType' + probableCause: + $ref: '#/components/schemas/ProbableCause' + perceivedSeverity: + $ref: '#/components/schemas/PerceivedSeverity' + correlatedNotifications: + $ref: '#/components/schemas/CorrelatedNotifications' + clearUserId: + type: string + clearSystemId: + type: string + NotifyChangedAlarm: + allOf: + - $ref: '#/components/schemas/NotificationHeader' + - type: object + required: + - alarmId + - alarmType + - probableCause + - perceivedSeverity + properties: + alarmId: + $ref: '#/components/schemas/AlarmId' + alarmType: + $ref: '#/components/schemas/AlarmType' + probableCause: + $ref: '#/components/schemas/ProbableCause' + perceivedSeverity: + $ref: '#/components/schemas/PerceivedSeverity' + NotifyChangedAlarmGeneral: + allOf: + - $ref: '#/components/schemas/NotificationHeader' + - type: object + required: + - alarmId + - alarmType + - probableCause + - perceivedSeverity + - changedAlarmAttributes + properties: + alarmId: + $ref: '#/components/schemas/AlarmId' + alarmType: + $ref: '#/components/schemas/AlarmType' + probableCause: + $ref: '#/components/schemas/ProbableCause' + specificProblem: + $ref: '#/components/schemas/SpecificProblem' + perceivedSeverity: + $ref: '#/components/schemas/PerceivedSeverity' + correlatedNotifications: + $ref: '#/components/schemas/CorrelatedNotifications' + backedUpStatus: + type: boolean + backUpObject: + $ref: '#/components/schemas/Dn' + trendIndication: + $ref: '#/components/schemas/TrendIndication' + thresholdInfo: + $ref: '#/components/schemas/ThresholdInfo' + stateChangeDefinition: + $ref: '#/components/schemas/AttributeValueChangeSet' + monitoredAttributes: + $ref: '#/components/schemas/AttributeNameValuePairSet' + proposedRepairActions: + type: string + additionalText: + type: string + additionalInformation: + $ref: '#/components/schemas/AttributeNameValuePairSet' + rootCauseIndicator: + type: boolean + changedAlarmAttributes: + $ref: '#/components/schemas/AttributeNameValuePairSet' + NotifyChangedSecAlarmGeneral: + allOf: + - $ref: '#/components/schemas/NotificationHeader' + - type: object + required: + - alarmId + - alarmType + - probableCause + - perceivedSeverity + - serviceUser + - serviceProvider + - securityAlarmDetector + - changedAlarmAttributes + properties: + alarmId: + $ref: '#/components/schemas/AlarmId' + alarmType: + $ref: '#/components/schemas/AlarmType' + probableCause: + $ref: '#/components/schemas/ProbableCause' + perceivedSeverity: + $ref: '#/components/schemas/PerceivedSeverity' + correlatedNotifications: + $ref: '#/components/schemas/CorrelatedNotifications' + additionalText: + type: string + additionalInformation: + $ref: '#/components/schemas/AttributeNameValuePairSet' + rootCauseIndicator: + type: boolean + serviceUser: + type: string + serviceProvider: + type: string + securityAlarmDetector: + type: string + changedAlarmAttributes: + $ref: '#/components/schemas/AttributeNameValuePairSet' + NotifyCorrelatedNotificationChanged: + allOf: + - $ref: '#/components/schemas/NotificationHeader' + - type: object + required: + - alarmId + - correlatedNotifications + properties: + alarmId: + $ref: '#/components/schemas/AlarmId' + correlatedNotifications: + $ref: '#/components/schemas/CorrelatedNotifications' + rootCauseIndicator: + type: boolean + NotifyAckStateChanged: + allOf: + - $ref: '#/components/schemas/NotificationHeader' + - type: object + required: + - alarmId + - alarmType + - probableCause + - perceivedSeverity + - ackState + - ackUserId + properties: + alarmId: + $ref: '#/components/schemas/AlarmId' + alarmType: + $ref: '#/components/schemas/AlarmType' + probableCause: + $ref: '#/components/schemas/ProbableCause' + perceivedSeverity: + $ref: '#/components/schemas/PerceivedSeverity' + ackState: + $ref: '#/components/schemas/AckState' + ackUserId: + type: string + ackSystemId: + type: string + NotifyComments: + allOf: + - $ref: '#/components/schemas/NotificationHeader' + - type: object + required: + - alarmId + - alarmType + - probableCause + - perceivedSeverity + - comments + properties: + alarmId: + $ref: '#/components/schemas/AlarmId' + alarmType: + $ref: '#/components/schemas/AlarmType' + probableCause: + $ref: '#/components/schemas/ProbableCause' + perceivedSeverity: + $ref: '#/components/schemas/PerceivedSeverity' + comments: + $ref: '#/components/schemas/Comments' + NotifyPotentialFaultyAlarmList: + allOf: + - $ref: '#/components/schemas/NotificationHeader' + - type: object + required: + - reason + properties: + reason: + type: string + NotifyAlarmListRebuilt: + allOf: + - $ref: '#/components/schemas/NotificationHeader' + - type: object + required: + - reason + properties: + reason: + type: string + alarmListAlignmentRequirement: + $ref: '#/components/schemas/AlarmListAlignmentRequirement' + + #---- Definition of query parameters -----------------------------------------------# + + AlarmAckState: + type: string + enum: + - ALL_ALARMS + - ALL_ACTIVE_ALARMS + - ALL_ACTIVE_AND_ACKNOWLEDGED_ALARMS + - ALL_ACTIVE_AND_UNACKNOWLEDGED_ALARMS + - ALL_CLEARED_AND_UNACKNOWLEDGED_ALARMS + - ALL_UNACKNOWLEDGED_ALARMS + + #---- Definition of patch documents ------------------------------------------------# + + MergePatchAcknowledgeAlarm: + description: >- + Patch document acknowledging or unacknowledging a single alarm. For + acknowleding an alarm the value of ackState is ACKNOWLEDGED, for unacknowleding + an alarm the value of ackState is UNACKNOWLEDGED. + type: object + required: + - ackUserId + - ackState + properties: + ackUserId: + type: string + ackSystemId: + type: string + ackState: + $ref: '#/components/schemas/AckState' + MergePatchClearAlarm: + description: Patch document for clearing a single alarm + type: object + required: + - clearUserId + - perceivedSeverity + properties: + clearUserId: + type: string + clearSystemId: + type: string + perceivedSeverity: + type: string + enum: + - CLEARED + + #---- Definition of method responses -----------------------------------------------# + + FailedAlarm: + type: object + required: + - alarmId + - failureReason + properties: + alarmId: + $ref: '#/components/schemas/AlarmId' + failureReason: + type: string + + #---- Definition of resources ------------------------------------------------------# + + AlarmCount: + type: object + required: + - criticalCount + - majorCount + - minorCount + - warningCount + - indeterminateCount + - clearedCount + properties: + criticalCount: + type: integer + majorCount: + type: integer + minorCount: + type: integer + warningCount: + type: integer + indeterminateCount: + type: integer + clearedCount: + type: integer + Comment: + type: object + properties: + commentTime: + $ref: '#/components/schemas/DateTime' + commentUserId: + type: string + commentSystemId: + type: string + commentText: + type: string + Comments: + description: >- + Collection of comments. The comment identifiers are allocated by the + MnS producer and used as key in the map. + type: object + additionalProperties: + $ref: '#/components/schemas/Comment' + Subscription: + type: object + properties: + consumerReference: + $ref: '#/components/schemas/Uri' + timeTick: + $ref: '#/components/schemas/Long' + filter: + $ref: '#/components/schemas/Filter' diff --git a/OpenAPI/genericNrm.yaml b/OpenAPI/genericNrm.yaml new file mode 100644 index 000000000..0911920a2 --- /dev/null +++ b/OpenAPI/genericNrm.yaml @@ -0,0 +1,1606 @@ +openapi: 3.0.1 +info: + title: Generic NRM + version: 16.4.0 + description: >- + OAS 3.0.1 specification of the Generic NRM + © 2020, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). + All rights reserved. +externalDocs: + description: 3GPP TS 28.623 V16.4.0; Generic NRM + url: http://www.3gpp.org/ftp/Specs/archive/28_series/28.623/ +paths: {} +components: + schemas: + +#-------- Definition of types----------------------------------------------------- + + DateTime: + type: string + format: date-time + Dn: + type: string + maxLength: 400 + DnList: + type: array + items: + $ref: '#/components/schemas/Dn' + Mcc: + type: string + pattern: '^[0-9]{3}$' + Mnc: + type: string + pattern: '^[0-9]{2,3}$' + AdministrativeState: + type: string + enum: + - LOCKED + - UNLOCKED + OperationalState: + type: string + enum: + - ENABLED + - DISABLED + UsageState: + type: string + enum: + - IDEL + - ACTIVE + - BUSY + RegistrationState: + type: string + enum: + - REGISTERED + - DEREGISTERED + SetOfMcc: + type: array + items: + $ref: '#/components/schemas/Mcc' + ManagedElementType: + type: string + ManagedElementTypeList: + type: array + items: + $ref: '#/components/schemas/ManagedElementType' + VnfParameter: + type: object + properties: + vnfInstanceId: + type: string + vnfdId: + type: string + flavourId: + type: string + autoScalable: + type: boolean + VnfParametersList: + type: array + items: + $ref: '#/components/schemas/VnfParameter' + SiteLatitude: + type: number + format: float + minimum: -90 + maximum: 90 + SiteLongitude: + type: number + format: float + minimum: -180 + maximum: 180 + PeeParameter: + type: object + properties: + siteIdentification: + type: string + siteDescription: + type: string + siteLatitude: + $ref: '#/components/schemas/SiteLatitude' + siteLongitude: + $ref: '#/components/schemas/SiteLongitude' + equipmentType: + type: string + environmentType: + type: string + powerInterface: + type: string + PeeParametersList: + type: array + items: + $ref: '#/components/schemas/PeeParameter' + MonitoringGPList: + type: array + items: + type: integer + ThresholdInfoList: + type: array + items: + $ref: '#/components/schemas/ThresholdInfo' + ThresholdInfo: + type: object + properties: + measurementType: + type: string + direction: + $ref: '#/components/schemas/Direction' + thresholdPack: + $ref: '#/components/schemas/ThresholdPack' + Direction: + enum: + - Increasing + - Decreasing + ThresholdPack: + type: array + items: + $ref: '#/components/schemas/ThresholdPackElement' + ThresholdPackElement: + type: object + properties: + thresholdLevel: + type: integer + thresholdValue: + type: number + hysteresis: + type: number + Operation: + type: object + properties: + name: + type: string + allowedNFTypes: + $ref: '#/components/schemas/NFType' + operationSemantics: + $ref: '#/components/schemas/OperationSemantics' + OperationList: + type: array + items: + $ref: '#/components/schemas/Operation' + NFType: + type: string + description: ' NF name defined in TS 23.501' + enum: + - NRF + - UDM + - AMF + - SMF + - AUSF + - NEF + - PCF + - SMSF + - NSSF + - UDR + - LMF + - GMLC + - 5G_EIR + - SEPP + - UPF + - N3IWF + - AF + - UDSF + - DN + Fqdn: + type: string + OperationSemantics: + type: string + enum: + - REQUEST_RESPONSE + - SUBSCRIBE_NOTIFY + SAP: + type: object + properties: + host: + $ref: '#/components/schemas/HostAddr' + port: + type: integer + NFServiceType: + type: string + enum: + - Namf_Communication + - Namf_EventExposure + - Namf_MT + - Namf_Location + - Nsmf_PDUSession + - Nsmf_EventExposure + - Others + HostAddr: + oneOf: + - $ref: '#/components/schemas/Ipv4Addr' + - $ref: '#/components/schemas/Ipv6Addr' + - $ref: '#/components/schemas/Fqdn' + Ipv4Addr: + type: string + pattern: '^(([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])\.){3}([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])$' + example: '198.51.100.1' + Ipv4AddrRm: + type: string + pattern: '^(([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])\.){3}([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])$' + example: '198.51.100.1' + nullable: true + Ipv6Addr: + type: string + allOf: + - pattern: '^((:|(0?|([1-9a-f][0-9a-f]{0,3}))):)((0?|([1-9a-f][0-9a-f]{0,3})):){0,6}(:|(0?|([1-9a-f][0-9a-f]{0,3})))$' + - pattern: '^((([^:]+:){7}([^:]+))|((([^:]+:)*[^:]+)?::(([^:]+:)*[^:]+)?))$' + example: '2001:db8:85a3::8a2e:370:7334' + Ipv6AddrRm: + type: string + allOf: + - pattern: '^((:|(0?|([1-9a-f][0-9a-f]{0,3}))):)((0?|([1-9a-f][0-9a-f]{0,3})):){0,6}(:|(0?|([1-9a-f][0-9a-f]{0,3})))$' + - pattern: '^((([^:]+:){7}([^:]+))|((([^:]+:)*[^:]+)?::(([^:]+:)*[^:]+)?))$' + example: '2001:db8:85a3::8a2e:370:7334' + nullable: true + Ipv6Prefix: + type: string + allOf: + - pattern: '^((:|(0?|([1-9a-f][0-9a-f]{0,3}))):)((0?|([1-9a-f][0-9a-f]{0,3})):){0,6}(:|(0?|([1-9a-f][0-9a-f]{0,3})))(\/(([0-9])|([0-9]{2})|(1[0-1][0-9])|(12[0-8])))$' + - pattern: '^((([^:]+:){7}([^:]+))|((([^:]+:)*[^:]+)?::(([^:]+:)*[^:]+)?))(\/.+)$' + example: '2001:db8:abcd:12::0/64' + Uri: + type: string + TransportProtocol: + anyOf: + - type: string + enum: + - TCP + - type: string + SupportedPerfMetricGroup: + type: object + properties: + performanceMetrics: + type: array + items: + type: string + granularityPeriods: + type: array + items: + type: integer + minimum: 1 + reportingMethods: + type: array + items: + type: string + enum: + - FILE_BASED_LOC_SET_BY_PRODUCER + - FILE_BASED_LOC_SET_BY_CONSUMER + - STREAM_BASED + ReportingCtrl: + oneOf: + - type: object + properties: + fileReportingPeriod: + type: integer + - type: object + properties: + fileReportingPeriod: + type: integer + fileLocation: + $ref: '#/components/schemas/Uri' + - type: object + properties: + streamTarget: + $ref: '#/components/schemas/Uri' + Scope: + type: object + properties: + scopeType: + type: string + enum: + - BASE_ONLY + - BASE_ALL + - BASE_NTH_LEVEL + - BASE_SUBTREE + scopeLevel: + type: integer + NotificationType: + type: string + enum: + - notifyMOICreation + - notifyMOIDeletion + - notifyMOIAttributeValueChanges + - notifyEvent + - notifyNewAlarm + - notifyChangedAlarm + - notifyAckStateChanged + - notifyComments + - notifyCorrelatedNotificationChanged + - notifyChangedAlarmGeneral + - notifyAlarmListRebuilt + - notifyPotentialFaultyAlarmList + - notifyFileReady + - notifyFilePreparationError + - notifyThresholdCrossing + NotificationTypes: + type: array + items: + $ref: '#/components/schemas/NotificationType' + +#-------- Definition of types used in Trace control NRM fragment------------------ + + tjJobType-Type: + type: string + description: Specifies whether the TraceJob represents only MDT, Logged MBSFN MDT, Trace or a combined Trace and MDT job. Applicable for Trace, MDT, RCEF and RLF reporting. See 3GPP TS 32.422 clause 5.9a for additional details. + enum: + - IMMEDIATE_MDT_ONLY + - LOGGED_MDT_ONLY + - TRACE_ONLY + - IMMEDIATE_MDT AND TRACE + - RLF_REPORT_ONLY + - RCEF_REPORT_ONLY + - LOGGED_MBSFN_MDT + + tjListOfInterfaces-Type: + description: The interfaces to be recorded in the Network Element. See 3GPP TS 32.422 clause 5.5 for additional details. + type: object + properties: + MSCServerInterfaces: + type: array + items: + type: string + enum: + - A + - Iu-CS + - Mc + - MAP-G + - MAP-B + - MAP-E + - MAP-F + - MAP-D + - MAP-C + - CAP + MGWInterfaces: + type: array + items: + type: string + enum: + - Mc + - Nb-UP + - Iu-UP + RNCInterfaces: + type: array + items: + type: string + enum: + - Iu-CS + - Iu-PS + - Iur + - Iub + - Uu + SGSNInterfaces: + type: array + items: + type: string + enum: + - Gb + - Iu-PS + - Gn + - MAP-Gr + - MAP-Gd + - MAP-Gf + - Ge + - Gs + - S6d + - S4 + - S3 + - S13 + GGSNInterfaces: + type: array + items: + type: string + enum: + - Gn + - Gi + - Gmb + S-CSCFInterfaces: + type: array + items: + type: string + enum: + - Mw + - Mg + - Mr + - Mi + P-CSCFInterfaces: + type: array + items: + type: string + enum: + - Gm + - Mw + I-CSCFInterfaces: + type: array + items: + type: string + enum: + - Cx + - Dx + - Mg + - Mw + MRFCInterfaces: + type: array + items: + type: string + enum: + - Mp + - Mr + MGCFInterfaces: + type: array + items: + type: string + enum: + - Mg + - Mj + - Mn + IBCFInterfaces: + type: array + items: + type: string + enum: + - Ix + - Mx + E-CSCFInterfaces: + type: array + items: + type: string + enum: + - Mw + - Ml + - Mm + - Mi/Mg + BGCFInterfaces: + type: array + items: + type: string + enum: + - Mi + - Mj + - Mk + ASInterfaces: + type: array + items: + type: string + enum: + - Dh + - Sh + - ISC + - Ut + HSSInterfaces: + type: array + items: + type: string + enum: + - MAP-C + - MAP-D + - Gc + - Gr + - Cx + - S6d + - S6a + - Sh + EIRInterfaces: + type: array + items: + type: string + enum: + - MAP-F + - S13 + - MAP-Gf + BM-SCInterfaces: + type: array + items: + type: string + enum: + - Gmb + MMEInterfaces: + type: array + items: + type: string + enum: + - S1-MME + - S3 + - S6a + - S10 + - S11 + - S13 + SGWInterfaces: + type: array + items: + type: string + enum: + - S4 + - S5 + - S8 + - S11 + - Gxc + PDN_GWInterfaces: + type: array + items: + type: string + enum: + - S2a + - S2b + - S2c + - S5 + - S6b + - Gx + - S8 + - SGi + eNBInterfaces: + type: array + items: + type: string + enum: + - S1-MME + - X2 + en-gNBInterfaces: + type: array + items: + type: string + enum: + - S1-MME + - X2 + - Uu + - F1-C + - E1 + AMFInterfaces: + type: array + items: + type: string + enum: + - N1 + - N2 + - N8 + - N11 + - N12 + - N14 + - N15 + - N20 + - N22 + - N26 + AUSFInterfaces: + type: array + items: + type: string + enum: + - N12 + - N13 + NEFInterfaces: + type: array + items: + type: string + enum: + - N29 + - N30 + - N33 + NRFInterfaces: + type: array + items: + type: string + enum: + - N27 + NSSFInterfaces: + type: array + items: + type: string + enum: + - N22 + - N31 + PCFInterfaces: + type: array + items: + type: string + enum: + - N5 + - N7 + - N15 + SMFInterfaces: + type: array + items: + type: string + enum: + - N4 + - N7 + - N10 + - N11 + - S5-C + SMSFInterfaces: + type: array + items: + type: string + enum: + - N20 + - N21 + UDMInterfaces: + type: array + items: + type: string + enum: + - N8 + - N10 + - N13 + - N21 + UPFInterfaces: + type: array + items: + type: string + enum: + - N4 + ng-eNBInterfaces: + type: array + items: + type: string + enum: + - NG-C + - Xn-C + - Uu + gNB-CU-CPInterfaces: + type: array + items: + type: string + enum: + - NG-C + - Xn-C + - Uu + - F1-C + - E1 + - X2-C + gNB-CU-UPInterfaces: + type: array + items: + type: string + enum: + - E1 + gNB-DUInterfaces: + type: array + items: + type: string + enum: + - F1-C + + tjListOfNeTypes-Type: + description: The Network Element types where Trace Session activation is needed. See 3GPP TS 32.422 clause 5.4 for additional details. + type: array + items: + type: string + enum: + - MSC_SERVER + - SGSN + - MGW + - GGSN + - RNC + - BM_SC + - MME + - SGW + - PGW + - ENB + - EN_GNB + - GNB_CU_CP + - GNB_CU_UP + - GNB_DU + + tjPLMNTaget-Type: + type: object + description: The PLMN for which sessions shall be selected in the Trace Session in case of management based activation when several PLMNs are supported in the RAN (this means that shared cells and not shared cells are allowed for the specified PLMN. Note that the PLMN Target might differ from the PLMN specified in the Trace Reference, as that specifies the PLMN that is containing the management system requesting the Trace Session from the NE. See 3GPP TS 32.422 clause 5.9b for additional details. + properties: + mcc: + $ref: '#/components/schemas/Mcc' + mnc: + $ref: '#/components/schemas/Mnc' + required: + - mcc + - mnc + + tjStreamingTraceConsumerURI-Type: + type: string + description: The URI of the Trace Reporting MnS consumer (see 3GPP TS 28.532) to which the Trace records shall be sent. See 3GPP TS 32.422 clause 5.9 for additional details. + format: uri + + tjTraceCollectionEntityAddress-Type: + description: The IP address to which the Trace records shall be transferred. See 3GPP TS 32.422 clause 5.9 for additional details. + oneOf: + - $ref: '#/components/schemas/Ipv4Addr' + - $ref: '#/components/schemas/Ipv6Addr' + + tjTraceDepth-Type: + description: Specifies how detailed information should be recorded in the Network Element. The Trace Depth is a paremeter for Trace Session level, i.e., the Trace Depth is the same for all of the NEs to be traced in the same Trace Session. See 3GPP TS 32.422 clause 5.3 for additional details. + type: string + enum: + - MINIMUM + - MEDIUM + - MAXIMUM + - VENDORMINIMUM + - VENDORMEDIUM + - VENDORMAXIMUM + + tjTraceReference-Type: + type: object + description: The Trace Reference parameter shall be globally unique, therefore the Trace Reference shall compose as follows - MCC+MNC+Trace ID, where the MCC and MNC are coming with the Trace activation request from the management system to identify one PLMN containing the management system, and Trace ID is a 3 byte Octet String. See 3GPP TS 32.422 clause 5.6 for additional details. + properties: + mcc: + $ref: '#/components/schemas/Mcc' + mnc: + $ref: '#/components/schemas/Mnc' + traceId: + type: integer + required: + - mcc + - mnc + - traceId + + tjTraceReportingFormat-Type: + type: string + description: Specifies whether file-based or streaming reporting shall be used for this Trace Session. See 3GPP TS 32.422 clause 5.11 for additional details. + enum: + - FILE-BASED + - STREAMING + + tjTraceTarget-Type: + type: string + description: Type of trace target. For additional details see 3GPP TS 32.422. + enum: + - IMSI + - IMEI + - IMEISV + - PUBLIC_ID + - UTRAN_CELL + - E-UTRAN_CELL + - NG-RAN_CELL + - eNB + - RNC + - gNB + + tjTriggeringEvent-Type: + type: object + description: Specifies when to start a Trace Recording Session and which message shall be recorded first, when to stop a Trace Recording Session and which message shall be recorded last respectively. See 3GPP TS 32.422 clause 5.1 for additional detials. + properties: + NetworkElement: + type: string + enum: + - MSC_SERVER + - SGSN + - MGW + - GGSN + - BM_SC + - MME + - SGW + - PGW + - AMF + - SMF + - PCF + - UPF + EventBitmap: + type: integer + required: + - NetworkElement + - EventBitmap + + tjMDTAnonymizationOfData-Type: + description: Specifies level of MDT anonymization. For additional details see 3GPP TS 32.422 clause 5.10.12. + type: string + enum: + - NO_IDENTITY + - TAC_OF_IMEI + + tjMDTAreaConfigurationForNeighCell-Type: + description: Used for logged NR MDT and defines the area for which UE is requested to perform measurement logging for neighbour cells which have list of frequencies. For additional details see 3GPP TS 32.422 clause 5.10.26. + type: array + items: + type: object + properties: + frequency: + type: string + cell: + type: string + + tjMDTAreaScope-Type: + description: defines the area in terms or Cells or Tracking Area/Routing Area/Location Area where the MDT data collection shall take place. For additional details see 3GPP TS 32.422 clause 5.10.2. + allOf: + - $ref: '#/components/schemas/DnList' + + tjMDTCollectionPeriodRrmLte-Type: + description: See details in 3GPP TS 32.422 clause 5.10.20. + type: string + enum: + - 250ms + - 500ms + - 1000ms + - 2000ms + - 3000ms + - 4000ms + - 6000ms + - 8000ms + - 12000ms + - 16000ms + - 20000ms + - 24000ms + - 28000ms + - 32000ms + - 64000ms + + tjMDTCollectionPeriodRrmUmts-Type: + description: See details in 3GPP TS 32.422 clause 5.10.21. + type: string + enum: + - 1024ms + - 1280ms + - 2048ms + - 2560ms + - 5120ms + - 10240ms + - 1min + + tjMDTEventListForTriggeredMeasurement-Type: + description: See details in 3GPP TS 32.422 clause 5.10.28. + type: string + enum: + - OUT_OF_COVERAGE + - A2_EVENT + + tjMDTEventThreshold-Type: + description: See details in 3GPP TS 32.422 clause 5.10.7, 5.10.7a, 5.10.13 and 5.10.14. + type: object + properties: + EventThresholdRSRP: + type: integer + minimum: 0 + maximum: 97 + EventThresholdRSRQ: + type: integer + minimum: 0 + maximum: 34 + EventThreshold1F: + type: object + properties: + CPICH_RSCP: + type: integer + minimum: -120 + maximum: 25 + CPICH_EcNo: + type: integer + minimum: -24 + maximum: 0 + PathLoss: + type: integer + minimum: 30 + maximum: 165 + EventThreshold1I: + type: integer + minimum: -120 + maximum: 25 + + tjMDTListOfMeasurements-Type: + description: See details in 3GPP TS 32.422 clause 5.10.3 for details. + type: object + properties: + UMTS: + type: array + items: + type: string + enum: + - M1 + - M2 + - M3 + - M4 + - M5 + - M6_DL + - M6_UL + - M7_DL + - M7_UL + LTE: + type: array + items: + type: string + enum: + - M1 + - M2 + - M3 + - M4 + - M5 + - M1_EVENT_TRIGGERED + - M6 + - M7 + - M8 + - M9 + NR: + type: array + items: + type: string + enum: + - M1 + - M2 + - M3 + - M4 + - M5 + - M6 + - M7 + - M8 + - M9 + + tjMDTLoggingDuration-Type: + description: See details in 3GPP TS 32.422 clause 5.10.9. + type: string + enum: + - 600s + - 1200s + - 2400s + - 3600s + - 5400s + - 7200s + + tjMDTLoggingInterval-Type: + description: See details in 3GPP TS 32.422 clause 5.10.8. + type: string + enum: + - 1.28s + - 2.56s + - 5.12s + - 10.24s + - 20.48s + - 30.72s + - 40.96s + - 61.44s + + tjMDTMBSFNAreaList-Type: + description: See details in 3GPP TS 32.422 clause 5.10.25. + type: array + items: + type: object + properties: + mbsfnAreaId: + type: integer + minimum: 1 + earfcn: + type: integer + minimum: 1 + required: + - mbsfnAreaId + - earfcn + + tjMDTMeasurementPeriodLTE-Type: + description: See details in 3GPP TS 32.422 clause 5.10.23. + type: string + enum: + - 1024ms + - 1280ms + - 2048ms + - 2560ms + - 5120ms + - 10240ms + - 1min + + tjMDTMeasurementPeriodUMTS-Type: + description: See details in 3GPP TS 32.422 clause 5.10.22. + type: string + enum: + - 250ms + - 500ms + - 1000ms + - 2000ms + - 3000ms + - 4000ms + - 6000ms + - 8000ms + - 12000ms + - 16000ms + - 20000ms + - 24000ms + - 28000ms + - 32000ms + - 64000ms + + tjMDTMeasurementQuantity-Type: + description: See details in 3GPP TS 32.422 clause 5.10.15. + type: string + enum: + - CPICH_EcNo + - CPICH_RSCP + - PathLoss + + tjMDTPLMList-Type: + description: See details in 3GPP TS 32.422 clause 5.10.24. + type: array + items: + type: object + properties: + mcc: + $ref: '#/components/schemas/Mcc' + mnc: + $ref: '#/components/schemas/Mnc' + required: + - mcc + - mnc + maxItems: 16 + + tjMDTPositioningMethod-Type: + description: See details in 3GPP TS 32.422 clause 5.10.19. + type: string + enum: + - GNSS + - E-CELL_ID + + tjMDTReportAmount-Type: + description: See details in 3GPP TS 32.422 clause 5.10.6. + type: string + enum: + - 1 + - 2 + - 4 + - 8 + - 16 + - 32 + - 64 + - INFINITY + + tjMDTReportingTrigger-Type: + description: See details in 3GPP TS 32.422 clause 5.10.4. + type: array + items: + type: string + enum: + - PERIODICAL + - A2_FOR_LTE + - 1F_FOR_UMTS + - 1I_FOR_UMTS_MCPS_TDD + - A2_TRIGGERED_PERIODIC_FOR_LTE + - ALL_CONFIGURED_RRM_FOR_LTE + - ALL_CONFIGURED_RRM_FOR_UMTS + + tjMDTReportInterval-Type: + description: See details in 3GPP TS 32.422 clause 5.10.5. + type: string + enum: + - 250ms + - 500ms + - 1000ms + - 2000ms + - 3000ms + - 4000ms + - 6000ms + - 8000ms + - 12000ms + - 16000ms + - 20000ms + - 24000ms + - 28000ms + - 32000ms + - 64000ms + - 120ms + - 240ms + - 480ms + - 640ms + - 1024ms + - 2048ms + - 5120ms + - 10240ms + - 60000ms + - 360000ms + - 720000ms + - 1800000ms + - 3600000ms + + tjMDTReportType-Type: + description: Report type for logged NR MDT. See details in 3GPP TS 32.422 clause 5.10.27. + type: string + enum: + - PERIODICAL + - EVENT_TRIGGERED + + tjMDTSensorInformation-Type: + description: See details in 3GPP TS 32.422 clause 5.10.29. + type: array + items: + type: string + enum: + - BAROMETRIC_PRESSURE + - UE_SPEED + - UE_ORIENTATION + + tjMDTTraceCollectionEntityID-Type: + description: See details in 3GPP TS 32.422 clause 5.10.11. Only tceID value may be sent over the air to the UE being configured for Logged MDT. + type: object + properties: + tceID: + type: integer + tcePLMN: + type: object + properties: + mcc: + $ref: '#/components/schemas/Mcc' + mnc: + $ref: '#/components/schemas/Mnc' + required: + - mcc + - mnc + tceAddress: + oneOf: + - $ref: '#/components/schemas/tjTraceCollectionEntityAddress-Type' + - $ref: '#/components/schemas/tjStreamingTraceConsumerURI-Type' + required: + - tceID + - tcePLMN + - tceAddress + + +#-------- end of Definition of types used in Trace control NRM fragment ---------- + + +#-------- Definition of abstract IOC Top ----------------------------------------- + + Top-Attr: + # This definition will be deprecated, when all occurances of Top-Attr + # are replaced by Top. + type: object + properties: + id: + type: string + VsDataContainer: + $ref: '#/components/schemas/VsDataContainer-Multiple' + Top: + type: object + properties: + id: + type: string + VsDataContainer: + $ref: '#/components/schemas/VsDataContainer-Multiple' + +#-------- Definition of IOCs with new name-containments defined in other TS ------ + + SubNetwork-Attr: + type: object + properties: + dnPrefix: + type: string + userLabel: + type: string + userDefinedNetworkType: + type: string + setOfMcc: + $ref: '#/components/schemas/SetOfMcc' + priorityLabel: + type: integer + supportedPerfMetricGroups: + type: array + items: + $ref: '#/components/schemas/SupportedPerfMetricGroup' + ManagedElement-Attr: + type: object + properties: + dnPrefix: + type: string + managedElementTypeList: + $ref: '#/components/schemas/ManagedElementTypeList' + userLabel: + type: string + locationName: + type: string + managedBy: + $ref: '#/components/schemas/DnList' + vendorName: + type: string + userDefinedState: + type: string + swVersion: + type: string + priorityLabel: + type: integer + supportedPerfMetricGroups: + type: array + items: + $ref: '#/components/schemas/SupportedPerfMetricGroup' + + SubNetwork-ncO: + type: object + properties: + ManagementNode: + $ref: '#/components/schemas/ManagementNode-Multiple' + MeContext: + $ref: '#/components/schemas/MeContext-Multiple' + PerfMetricJob: + $ref: '#/components/schemas/PerfMetricJob-Multiple' + ThresholdMonitor: + $ref: '#/components/schemas/ThresholdMonitor-Multiple' + ThresholdMonitoringCapability: + $ref: '#/components/schemas/ThresholdMonitoringCapability-Single' + NtfSubscriptionControl: + $ref: '#/components/schemas/NtfSubscriptionControl-Multiple' + TraceJob: + $ref: '#/components/schemas/TraceJob-Multiple' + AlarmList: + $ref: '#/components/schemas/AlarmList-Single' + MnsRegistry: + type: array + items: + $ref: '#/components/schemas/MnsRegistry' + ManagedElement-ncO: + type: object + properties: + PerfMetricJob: + $ref: '#/components/schemas/PerfMetricJob-Multiple' + ThresholdMonitor: + $ref: '#/components/schemas/ThresholdMonitor-Multiple' + ThresholdMonitoringCapability: + $ref: '#/components/schemas/ThresholdMonitoringCapability-Single' + NtfSubscriptionControl: + $ref: '#/components/schemas/NtfSubscriptionControl-Multiple' + TraceJob: + $ref: '#/components/schemas/TraceJob-Multiple' + AlarmList: + $ref: '#/components/schemas/AlarmList-Single' + +#-------- Definition of abstract IOCs -------------------------------------------- + + ManagedFunction-Attr: + type: object + properties: + userLabel: + type: string + vnfParametersList: + $ref: '#/components/schemas/VnfParametersList' + peeParametersList: + $ref: '#/components/schemas/PeeParametersList' + priorityLabel: + type: integer + supportedPerfMetricGroups: + type: array + items: + $ref: '#/components/schemas/SupportedPerfMetricGroup' + EP_RP-Attr: + type: object + properties: + userLabel: + type: string + farEndEntity: + type: string + supportedPerfMetricGroups: + type: array + items: + $ref: '#/components/schemas/SupportedPerfMetricGroup' + + TraceJob-Attr: + type: object + description: abstract class used as a container of all TraceJob attributes + properties: + tjJobType: + $ref: '#/components/schemas/tjJobType-Type' + tjListOfInterfaces: + $ref: '#/components/schemas/tjListOfInterfaces-Type' + tjListOfNeTypes: + $ref: '#/components/schemas/tjListOfNeTypes-Type' + tjPLMNTarget: + $ref: '#/components/schemas/tjPLMNTaget-Type' + tjTraceConsumer: + oneOf: + - $ref: '#/components/schemas/tjStreamingTraceConsumerURI-Type' + - $ref: '#/components/schemas/tjTraceCollectionEntityAddress-Type' + tjTraceDepth: + $ref: '#/components/schemas/tjTraceDepth-Type' + tjTraceReference: + $ref: '#/components/schemas/tjTraceReference-Type' + tjTraceReportingFormat: + $ref: '#/components/schemas/tjTraceReportingFormat-Type' + tjTraceTarget: + $ref: '#/components/schemas/tjTraceTarget-Type' + tjTriggeringEvent: + $ref: '#/components/schemas/tjTriggeringEvent-Type' + tjMDTAnonymizationOfData: + $ref: '#/components/schemas/tjMDTAnonymizationOfData-Type' + tjMDTAreaConfigurationForNeighCell: + $ref: '#/components/schemas/tjMDTAreaConfigurationForNeighCell-Type' + tjMDTAreaScope: + $ref: '#/components/schemas/tjMDTAreaScope-Type' + tjMDTCollectionPeriodRrmLte: + $ref: '#/components/schemas/tjMDTCollectionPeriodRrmLte-Type' + tjMDTCollectionPeriodRrmUmts: + $ref: '#/components/schemas/tjMDTCollectionPeriodRrmUmts-Type' + tjMDTEventListForTriggeredMeasurement: + $ref: '#/components/schemas/tjMDTEventListForTriggeredMeasurement-Type' + tjMDTEventThreshold: + $ref: '#/components/schemas/tjMDTEventThreshold-Type' + tjMDTListOfMeasurements: + $ref: '#/components/schemas/tjMDTListOfMeasurements-Type' + tjMDTLoggingDuration: + $ref: '#/components/schemas/tjMDTLoggingDuration-Type' + tjMDTLoggingInterval: + $ref: '#/components/schemas/tjMDTLoggingInterval-Type' + tjMDTMBSFNAreaList: + $ref: '#/components/schemas/tjMDTMBSFNAreaList-Type' + tjMDTMeasurementPeriodLTE: + $ref: '#/components/schemas/tjMDTMeasurementPeriodLTE-Type' + tjMDTMeasurementPeriodUMTS: + $ref: '#/components/schemas/tjMDTMeasurementPeriodUMTS-Type' + tjMDTMeasurementQuantity: + $ref: '#/components/schemas/tjMDTMeasurementQuantity-Type' + tjMDTPLMList: + $ref: '#/components/schemas/tjMDTPLMList-Type' + tjMDTPositioningMethod: + $ref: '#/components/schemas/tjMDTPositioningMethod-Type' + tjMDTReportAmount: + $ref: '#/components/schemas/tjMDTReportAmount-Type' + tjMDTReportingTrigger: + $ref: '#/components/schemas/tjMDTReportingTrigger-Type' + tjMDTReportInterval: + $ref: '#/components/schemas/tjMDTReportInterval-Type' + tjMDTReportType: + $ref: '#/components/schemas/tjMDTReportType-Type' + tjMDTSensorInformation: + $ref: '#/components/schemas/tjMDTSensorInformation-Type' + tjMDTTraceCollectionEntityID: + $ref: '#/components/schemas/tjMDTTraceCollectionEntityID-Type' + required: + - tjJobType + - tjTraceReference + - tjTraceConsumer + - tjTraceReportingFormat + - tjTraceTarget + + ManagedFunction-ncO: + type: object + properties: + PerfMetricJob: + $ref: '#/components/schemas/PerfMetricJob-Multiple' + ThresholdMonitor: + $ref: '#/components/schemas/ThresholdMonitor-Multiple' + ThresholdMonitoringCapability: + $ref: '#/components/schemas/ThresholdMonitoringCapability-Single' + ManagedNFService: + $ref: '#/components/schemas/ManagedNFService-Multiple' + TraceJob: + $ref: '#/components/schemas/TraceJob-Multiple' + + MnsRegistry: + type: object + properties: + mnsLabel: + type: string + mnsType: + type: string + mnsVersion: + type: string + mnsAddress: + type: string + +#-------- Definition of concrete IOCs -------------------------------------------- + + VsDataContainer-Single: + type: object + properties: + id: + type: string + attributes: + type: object + properties: + vsDataType: + type: string + vsDataFormatVersion: + type: string + vsData: + nullable: true + VsDataContainer: + $ref: '#/components/schemas/VsDataContainer-Multiple' + ManagedNFService-Single: + allOf: + - $ref: '#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + type: object + properties: + userLabel: + type: string + nFServiceType: + $ref: '#/components/schemas/NFServiceType' + sAP: + $ref: '#/components/schemas/SAP' + operations: + $ref: '#/components/schemas/OperationList' + administrativeState: + $ref: '#/components/schemas/AdministrativeState' + operationalState: + $ref: '#/components/schemas/OperationalState' + usageState: + $ref: '#/components/schemas/UsageState' + registrationState: + $ref: '#/components/schemas/RegistrationState' + ManagementNode-Single: + allOf: + - $ref: '#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + type: object + properties: + userLabel: + type: string + managedElements: + $ref: '#/components/schemas/DnList' + vendorName: + type: string + userDefinedState: + type: string + locationName: + type: string + swVersion: + type: string + MeContext-Single: + allOf: + - $ref: '#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + type: object + properties: + dnPrefix: + type: string + PerfMetricJob-Single: + allOf: + - $ref: '#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + type: object + properties: + administrativeState: + $ref: '#/components/schemas/AdministrativeState' + operationalState: + $ref: '#/components/schemas/OperationalState' + perfMetricJobGroupId: + type: string + performanceMetrics: + type: array + items: + type: string + granularityPeriod: + type: integer + minimum: 1 + objectInstances: + $ref: '#/components/schemas/DnList' + rootObjectInstances: + $ref: '#/components/schemas/DnList' + reportingCtrl: + $ref: '#/components/schemas/ReportingCtrl' + ThresholdMonitoringCapability-Single: + allOf: + - $ref: '#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + type: object + properties: + supportedMonitoringGPs: + $ref: '#/components/schemas/MonitoringGPList' + ThresholdMonitor-Single: + allOf: + - $ref: '#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + type: object + properties: + thresholdInfoList: + $ref: '#/components/schemas/ThresholdInfoList' + monitoringGP: + type: integer + monitoringNotifTarget: + type: string + monitoredIOCName: + type: string + monitoredObjectDNs: + $ref: '#/components/schemas/DnList' + NtfSubscriptionControl-Single: + allOf: + - $ref: '#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + type: object + properties: + notificationRecipientAddress: + $ref: '#/components/schemas/Uri' + notificationTypes: + $ref: '#/components/schemas/NotificationTypes' + scope: + $ref: '#/components/schemas/Scope' + notificationFilter: + type: string + HeartbeatControl: + $ref: '#/components/schemas/HeartbeatControl-Single' + HeartbeatControl-Single: + allOf: + - $ref: '#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + type: object + properties: + heartbeatNtfPeriod: + type: integer + triggerHeartbeatNtf: + type: boolean + TraceJob-Single: + allOf: + - $ref: '#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + $ref: '#/components/schemas/TraceJob-Attr' + + AlarmList-Single: + allOf: + - $ref: '#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + type: object + properties: + administrativeState: + $ref: '#/components/schemas/AdministrativeState' + operationalState: + $ref: '#/components/schemas/OperationalState' + numOfAlarmRecords: + type: integer + lastModification: + $ref: '#/components/schemas/DateTime' + alarmRecords: + description: >- + This resource represents a map of alarm records. + The alarmIds are used as keys in the map. + type: object + additionalProperties: + $ref: 'faultMnS.yaml#/components/schemas/AlarmRecord' + +#-------- Definition of JSON arrays for name-contained IOCs ---------------------- + + VsDataContainer-Multiple: + type: array + items: + $ref: '#/components/schemas/VsDataContainer-Single' + ManagedNFService-Multiple: + type: array + items: + $ref: '#/components/schemas/ManagedNFService-Single' + ManagementNode-Multiple: + type: array + items: + $ref: '#/components/schemas/ManagementNode-Single' + MeContext-Multiple: + type: array + items: + $ref: '#/components/schemas/MeContext-Single' + PerfMetricJob-Multiple: + type: array + items: + $ref: '#/components/schemas/PerfMetricJob-Single' + ThresholdMonitor-Multiple: + type: array + items: + $ref: '#/components/schemas/ThresholdMonitor-Single' + NtfSubscriptionControl-Multiple: + type: array + items: + $ref: '#/components/schemas/NtfSubscriptionControl-Single' + TraceJob-Multiple: + type: array + items: + $ref: '#/components/schemas/TraceJob-Single' + +#-------- Definitions in TS 28.623 for TS 28.532 --------------------------------- + + resources-genericNrm: + oneOf: + + - $ref: '#/components/schemas/VsDataContainer-Single' + + - $ref: '#/components/schemas/ManagementNode-Single' + - $ref: '#/components/schemas/MeContext-Single' + + - $ref: '#/components/schemas/ManagedNFService-Single' + + - $ref: '#/components/schemas/PerfMetricJob-Single' + + - $ref: '#/components/schemas/ThresholdMonitoringCapability-Single' + - $ref: '#/components/schemas/ThresholdMonitor-Single' + + - $ref: '#/components/schemas/NtfSubscriptionControl-Single' + - $ref: '#/components/schemas/HeartbeatControl-Single' + - $ref: '#/components/schemas/TraceJob-Single' + + - $ref: '#/components/schemas/AlarmList-Single' diff --git a/OpenAPI/heartbeatNtf.yaml b/OpenAPI/heartbeatNtf.yaml new file mode 100644 index 000000000..afde5066d --- /dev/null +++ b/OpenAPI/heartbeatNtf.yaml @@ -0,0 +1,23 @@ +openapi: 3.0.1 +info: + title: Heartbeat notification + version: 16.3.0 + description: >- + OAS 3.0.1 specification of the heartbeat notification + © 2020, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). + All rights reserved. +externalDocs: + description: 3GPP TS 28.532 V16.3.0; Heartbeat notification + url: http://www.3gpp.org/ftp/Specs/archive/28_series/28.6532/ +paths: {} +components: + schemas: + hearbeatNtfPeriod-Type: + type: integer + notifyHeartbeat-NotifType: + allOf: + - $ref: 'provMnS.yaml#/components/schemas/header-Type' + - type: object + properties: + heartbeatNtfPeriod: + $ref: '#/components/schemas/hearbeatNtfPeriod-Type' diff --git a/OpenAPI/nrNrm.yaml b/OpenAPI/nrNrm.yaml new file mode 100644 index 000000000..850106631 --- /dev/null +++ b/OpenAPI/nrNrm.yaml @@ -0,0 +1,1905 @@ +openapi: 3.0.1 +info: + title: NR NRM + version: 17.4.0 + description: >- + OAS 3.0.1 specification of the NR NRM + © 2020, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). + All rights reserved. +externalDocs: + description: 3GPP TS 28.541; 5G NRM, NR NRM + url: http://www.3gpp.org/ftp/Specs/archive/28_series/28.541/ +paths: {} +components: + schemas: + +#-------- Definition of types----------------------------------------------------- + + GnbId: + type: string + GnbIdLength: + type: integer + minimum: 22 + maximum: 32 + GnbName: + type: string + maxLength: 150 + GnbDuId: + type: number + minimum: 0 + maximum: 68719476735 + GnbCuUpId: + type: number + minimum: 0 + maximum: 68719476735 + + Sst: + type: integer + maximum: 255 + Snssai: + type: object + properties: + sst: + $ref: '#/components/schemas/Sst' + sd: + type: string + SnssaiList: + type: array + items: + $ref: '#/components/schemas/Snssai' + + Mnc: + type: string + pattern: '[0-9]{3}|[0-9]{2}' + PlmnId: + type: object + properties: + mcc: + $ref: 'genericNrm.yaml#/components/schemas/Mcc' + mnc: + $ref: '#/components/schemas/Mnc' + PlmnIdList: + type: array + items: + $ref: '#/components/schemas/PlmnId' + PlmnInfo: + type: object + properties: + plmnId": + $ref: '#/components/schemas/PlmnId' + snssai: + $ref: '#/components/schemas/Snssai' + PlmnInfoList: + type: array + items: + $ref: '#/components/schemas/PlmnInfo' + cagId: + type: string + nid: + type: string + NpnIdentity: + type: object + properties: + plmnId": + $ref: '#/components/schemas/PlmnId' + cagidList: + $ref: '#/components/schemas/cagId' + nidList: + $ref: '#/components/schemas/nid' + NpnIdentityList: + type: array + items: + $ref: '#/components/schemas/NpnIdentity' + GGnbId: + type: string + pattern: '^[0-9]{3}[0-9]{2,3}-(22|23|24|25|26|27|28|29|30|31|32)-[0-9]{1,10}' + GEnbId: + type: string + pattern: '^[0-9]{3}[0-9]{2,3}-(18|20|21|22)-[0-9]{1,7}' + + GGnbIdList: + type: array + items: + $ref: '#/components/schemas/GGnbId' + + GEnbIdList: + type: array + items: + $ref: '#/components/schemas/GEnbId' + + NrPci: + type: integer + maximum: 503 + NrTac: + type: integer + maximum: 16777215 + Tai: + type: object + properties: + plmnId: + $ref: '#/components/schemas/PlmnId' + nrTac: + $ref: '#/components/schemas/NrTac' + + BackhaulAddress: + type: object + properties: + gnbId: + $ref: '#/components/schemas/GnbId' + tai: + $ref: "#/components/schemas/Tai" + MappingSetIDBackhaulAddress: + type: object + properties: + setID: + type: integer + backhaulAddress: + $ref: '#/components/schemas/BackhaulAddress' + IntraRatEsActivationOriginalCellLoadParameters: + type: object + properties: + loadThreshold: + type: integer + timeDuration: + type: integer + IntraRatEsActivationCandidateCellsLoadParameters: + type: object + properties: + loadThreshold: + type: integer + timeDuration: + type: integer + IntraRatEsDeactivationCandidateCellsLoadParameters: + type: object + properties: + loadThreshold: + type: integer + timeDuration: + type: integer + EsNotAllowedTimePeriod: + type: object + properties: + startTimeandendTime: + type: string + periodOfDay: + type: string + daysOfWeekList: + type: string + listoftimeperiods: + type: string + InterRatEsActivationOriginalCellParameters: + type: object + properties: + loadThreshold: + type: integer + timeDuration: + type: integer + InterRatEsActivationCandidateCellParameters: + type: object + properties: + loadThreshold: + type: integer + timeDuration: + type: integer + InterRatEsDeactivationCandidateCellParameters: + type: object + properties: + loadThreshold: + type: integer + timeDuration: + type: integer + + UeAccProbilityDist: + type: object + properties: + targetProbability: + type: integer + numberofpreamblessent: + type: integer + + UeAccDelayProbilityDist: + type: object + properties: + targetProbability: + type: integer + accessdelay: + type: integer + + NRPciList: + type: object + properties: + NRPci: + type: integer + + CSonPciList: + type: object + properties: + NRPci: + type: integer + + MaximumDeviationHoTrigger: + type: integer + minimum: -20 + maximum: 20 + + MinimumTimeBetweenHoTriggerChange: + type: integer + minimum: 0 + maximum: 604800 + + TstoreUEcntxt: + type: integer + minimum: 0 + maximum: 1023 + + CellState: + type: string + enum: + - IDLE + - INACTIVE + - ACTIVE + CyclicPrefix: + type: string + enum: + - '15' + - '30' + - '60' + - '120' + TxDirection: + type: string + enum: + - DL + - UL + - DL and UL + BwpContext: + type: string + enum: + - DL + - UL + - SUL + IsInitialBwp: + type: string + enum: + - INITIAL + - OTHER + - SUL + QuotaType: + type: string + enum: + - STRICT + - FLOAT + IsESCoveredBy: + type: string + enum: + - NO + - PARTIAL + - FULL + RrmPolicyMember: + type: object + properties: + plmnId: + $ref: '#/components/schemas/PlmnId' + snssai: + $ref: '#/components/schemas/Snssai' + RrmPolicyMemberList: + type: array + items: + $ref: '#/components/schemas/RrmPolicyMember' + AddressWithVlan: + type: object + properties: + ipv4Address: + $ref: 'genericNrm.yaml#/components/schemas/Ipv4Addr' + ipv6Address: + $ref: 'genericNrm.yaml#/components/schemas/Ipv6Addr' + vlanId: + type: integer + minimum: 0 + maximum: 4096 + LocalAddress: + type: object + properties: + addressWithVlan: + $ref: '#/components/schemas/AddressWithVlan' + port: + type: integer + minimum: 0 + maximum: 65535 + RemoteAddress: + type: object + properties: + ipv4Address: + $ref: 'genericNrm.yaml#/components/schemas/Ipv4Addr' + ipv6Address: + $ref: 'genericNrm.yaml#/components/schemas/Ipv6Addr' + + CellIndividualOffset: + type: object + properties: + rsrpOffsetSSB: + type: integer + rsrqOffsetSSB: + type: integer + sinrOffsetSSB: + type: integer + rsrpOffsetCSI-RS: + type: integer + rsrqOffsetCSI-RS: + type: integer + sinrOffsetCSI-RS: + type: integer + QOffsetRange: + type: integer + enum: + - -24 + - -22 + - -20 + - -18 + - -16 + - -14 + - -12 + - -10 + - -8 + - -6 + - -5 + - -4 + - -3 + - -2 + - -1 + - 0 + - 24 + - 22 + - 20 + - 18 + - 16 + - 14 + - 12 + - 10 + - 8 + - 6 + - 5 + - 4 + - 3 + - 2 + - 1 + QOffsetRangeList: + type: object + properties: + rsrpOffsetSSB: + $ref: '#/components/schemas/QOffsetRange' + rsrqOffsetSSB: + $ref: '#/components/schemas/QOffsetRange' + sinrOffsetSSB: + $ref: '#/components/schemas/QOffsetRange' + rsrpOffsetCSI-RS: + $ref: '#/components/schemas/QOffsetRange' + rsrqOffsetCSI-RS: + $ref: '#/components/schemas/QOffsetRange' + sinrOffsetCSI-RS: + $ref: '#/components/schemas/QOffsetRange' + QOffsetFreq: + type: number + TReselectionNRSf: + type: integer + enum: + - 25 + - 50 + - 75 + - 100 + SsbPeriodicity: + type: integer + enum: + - 5 + - 10 + - 20 + - 40 + - 80 + - 160 + SsbDuration: + type: integer + enum: + - 1 + - 2 + - 3 + - 4 + - 5 + SsbSubCarrierSpacing: + type: integer + enum: + - 15 + - 30 + - 120 + - 240 + CoverageShape: + type: integer + maximum: 65535 + DigitalTilt: + type: integer + minimum: -900 + maximum: 900 + DigitalAzimuth: + type: integer + minimum: -1800 + maximum: 1800 + + RSSetId: + type: integer + maximum: 4194303 + + RSSetType: + type: string + enum: + - RS1 + - RS2 + + FrequencyDomainPara: + type: object + properties: + rimRSSubcarrierSpacing: + type: integer + rIMRSBandwidth: + type: integer + nrofGlobalRIMRSFrequencyCandidates: + type: integer + rimRSCommonCarrierReferencePoint: + type: integer + rimRSStartingFrequencyOffsetIdList: + type: array + items: + type: integer + + SequenceDomainPara: + type: object + properties: + nrofRIMRSSequenceCandidatesofRS1: + type: integer + rimRSScrambleIdListofRS1: + type: array + items: + type: integer + nrofRIMRSSequenceCandidatesofRS2: + type: integer + rimRSScrambleIdListofRS2: + type: array + items: + type: integer + enableEnoughNotEnoughIndication: + type: string + enum: + - ENABLE + - DISABLE + RIMRSScrambleTimerMultiplier: + type: integer + RIMRSScrambleTimerOffset: + type: integer + + TimeDomainPara: + type: object + properties: + dlULSwitchingPeriod1: + type: string + enum: + - MS0P5 + - MS0P625 + - MS1 + - MS1P25 + - MS2 + - MS2P5 + - MS3 + - MS4 + - MS5 + - MS10 + - MS20 + symbolOffsetOfReferencePoint1: + type: integer + dlULSwitchingPeriod2: + type: string + enum: + - MS0P5 + - MS0P625 + - MS1 + - MS1P25 + - MS2 + - MS2P5 + - MS3 + - MS4 + - MS5 + - MS10 + - MS20 + symbolOffsetOfReferencePoint2: + type: integer + totalnrofSetIdofRS1: + type: integer + totalnrofSetIdofRS2: + type: integer + nrofConsecutiveRIMRS1: + type: integer + nrofConsecutiveRIMRS2: + type: integer + consecutiveRIMRS1List: + type: array + items: + type: integer + consecutiveRIMRS2List: + type: array + items: + type: integer + enablenearfarIndicationRS1: + type: string + enum: + - ENABLE + - DISABLE + enablenearfarIndicationRS2: + type: string + enum: + - ENABLE + - DISABLE + + RimRSReportInfo: + type: object + properties: + detectedSetID: + type: integer + propagationDelay: + type: integer + functionalityOfRIMRS: + type: string + enum: + - RS1 + - RS2 + - RS1forEnoughMitigation + - RS1forNotEnoughMitigation + + RimRSReportConf: + type: object + properties: + reportIndicator: + type: string + enum: + - ENABLE + - DISABLE + reportInterval: + type: integer + nrofRIMRSReportInfo: + type: integer + maxPropagationDelay: + type: integer + rimRSReportInfoList: + type: array + items: + $ref: '#/components/schemas/RimRSReportInfo' + TceMappingInfo: + type: object + properties: + TceIPAddress: + oneOf: + - $ref: 'genericNrm.yaml#/components/schemas/Ipv4Addr' + - $ref: 'genericNrm.yaml#/components/schemas/Ipv6Addr' + TceID: + type: integer + PlmnTarget: + $ref: '#/components/schemas/PlmnId' + TceMappingInfoList: + type: array + items: + $ref: '#/components/schemas/TceMappingInfo' + + +#-------- Definition of abstract IOCs -------------------------------------------- + + RrmPolicy_-Attr: + type: object + properties: + resourceType: + type: string + rRMPolicyMemberList: + $ref: '#/components/schemas/RrmPolicyMemberList' + + +#-------- Definition of concrete IOCs -------------------------------------------- + + SubNetwork-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + $ref: 'genericNrm.yaml#/components/schemas/SubNetwork-Attr' + - $ref: 'genericNrm.yaml#/components/schemas/SubNetwork-ncO' + - type: object + properties: + SubNetwork: + $ref: '#/components/schemas/SubNetwork-Multiple' + ManagedElement: + $ref: '#/components/schemas/ManagedElement-Multiple' + NRFrequency: + $ref: '#/components/schemas/NRFrequency-Multiple' + ExternalGnbCuCpFunction: + $ref: '#/components/schemas/ExternalGnbCuCpFunction-Multiple' + ExternalENBFunction: + $ref: '#/components/schemas/ExternalENBFunction-Multiple' + EUtranFrequency: + $ref: '#/components/schemas/EUtranFrequency-Multiple' + DESManagementFunction: + $ref: '#/components/schemas/DESManagementFunction-Single' + DRACHOptimizationFunction: + $ref: '#/components/schemas/DRACHOptimizationFunction-Single' + DMROFunction: + $ref: '#/components/schemas/DMROFunction-Single' + DPCIConfigurationFunction: + $ref: '#/components/schemas/DPCIConfigurationFunction-Single' + CPCIConfigurationFunction: + $ref: '#/components/schemas/CPCIConfigurationFunction-Single' + CESManagementFunction: + $ref: '#/components/schemas/CESManagementFunction-Single' + Configurable5QISet: + $ref: '5gcNrm.yaml#/components/schemas/Configurable5QISet-Multiple' + RimRSGlobal: + $ref: '#/components/schemas/RimRSGlobal-Single' + Dynamic5QISet: + $ref: '5gcNrm.yaml#/components/schemas/Dynamic5QISet-Multiple' + + ManagedElement-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + $ref: 'genericNrm.yaml#/components/schemas/ManagedElement-Attr' + - $ref: 'genericNrm.yaml#/components/schemas/ManagedElement-ncO' + - type: object + properties: + GnbDuFunction: + $ref: '#/components/schemas/GnbDuFunction-Multiple' + GnbCuUpFunction: + $ref: '#/components/schemas/GnbCuUpFunction-Multiple' + GnbCuCpFunction: + $ref: '#/components/schemas/GnbCuCpFunction-Multiple' + DESManagementFunction: + $ref: '#/components/schemas/DESManagementFunction-Single' + DRACHOptimizationFunction: + $ref: '#/components/schemas/DRACHOptimizationFunction-Single' + DMROFunction: + $ref: '#/components/schemas/DMROFunction-Single' + DPCIConfigurationFunction: + $ref: '#/components/schemas/DPCIConfigurationFunction-Single' + CPCIConfigurationFunction: + $ref: '#/components/schemas/CPCIConfigurationFunction-Single' + CESManagementFunction: + $ref: '#/components/schemas/CESManagementFunction-Single' + Configurable5QISet: + $ref: '5gcNrm.yaml#/components/schemas/Configurable5QISet-Multiple' + Dynamic5QISet: + $ref: '5gcNrm.yaml#/components/schemas/Dynamic5QISet-Multiple' + + GnbDuFunction-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' + - type: object + properties: + gnbDuId: + $ref: '#/components/schemas/GnbDuId' + gnbDuName: + $ref: '#/components/schemas/GnbName' + gnbId: + $ref: '#/components/schemas/GnbId' + gnbIdLength: + $ref: '#/components/schemas/GnbIdLength' + rimRSReportConf: + $ref: '#/components/schemas/RimRSReportConf' + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' + - type: object + properties: + RRMPolicyRatio: + $ref: '#/components/schemas/RRMPolicyRatio-Multiple' + NrCellDu: + $ref: '#/components/schemas/NrCellDu-Multiple' + Bwp-Multiple: + $ref: '#/components/schemas/Bwp-Multiple' + NrSectorCarrier-Multiple: + $ref: '#/components/schemas/NrSectorCarrier-Multiple' + EP_F1C: + $ref: '#/components/schemas/EP_F1C-Single' + EP_F1U: + $ref: '#/components/schemas/EP_F1U-Multiple' + DRACHOptimizationFunction: + $ref: '#/components/schemas/DRACHOptimizationFunction-Single' + GnbCuUpFunction-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' + - type: object + properties: + gnbId: + $ref: '#/components/schemas/GnbId' + gnbIdLength: + $ref: '#/components/schemas/GnbIdLength' + gnbCuUpId: + $ref: '#/components/schemas/GnbCuUpId' + plmnInfoList: + $ref: '#/components/schemas/PlmnInfoList' + configurable5QISetRef: + $ref: 'genericNrm.yaml#/components/schemas/Dn' + dynamic5QISetRef: + $ref: 'genericNrm.yaml#/components/schemas/Dn' + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' + - type: object + properties: + RRMPolicyRatio: + $ref: '#/components/schemas/RRMPolicyRatio-Multiple' + EP_E1: + $ref: '#/components/schemas/EP_E1-Single' + EP_XnU: + $ref: '#/components/schemas/EP_XnU-Multiple' + EP_F1U: + $ref: '#/components/schemas/EP_F1U-Multiple' + EP_NgU: + $ref: '#/components/schemas/EP_NgU-Multiple' + EP_X2U: + $ref: '#/components/schemas/EP_X2U-Multiple' + EP_S1U: + $ref: '#/components/schemas/EP_S1U-Multiple' + GnbCuCpFunction-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' + - type: object + properties: + gnbId: + $ref: '#/components/schemas/GnbId' + gnbIdLength: + $ref: '#/components/schemas/GnbIdLength' + gnbCuName: + $ref: '#/components/schemas/GnbName' + plmnId: + $ref: '#/components/schemas/PlmnId' + x2BlackList: + $ref: '#/components/schemas/GGnbIdList' + xnBlackList: + $ref: '#/components/schemas/GGnbIdList' + x2WhiteList: + $ref: '#/components/schemas/GGnbIdList' + xnWhiteList: + $ref: '#/components/schemas/GGnbIdList' + x2XnHOBlackList: + $ref: '#/components/schemas/GEnbIdList' + mappingSetIDBackhaulAddress: + $ref: '#/components/schemas/MappingSetIDBackhaulAddress' + tceMappingInfoList: + $ref: '#/components/schemas/TceMappingInfoList' + configurable5QISetRef: + $ref: 'genericNrm.yaml#/components/schemas/Dn' + dynamic5QISetRef: + $ref: 'genericNrm.yaml#/components/schemas/Dn' + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' + - type: object + properties: + RRMPolicyRatio: + $ref: '#/components/schemas/RRMPolicyRatio-Multiple' + NrCellCu: + $ref: '#/components/schemas/NrCellCu-Multiple' + EP_XnC: + $ref: '#/components/schemas/EP_XnC-Multiple' + EP_E1: + $ref: '#/components/schemas/EP_E1-Multiple' + EP_F1C: + $ref: '#/components/schemas/EP_F1C-Multiple' + EP_NgC: + $ref: '#/components/schemas/EP_NgC-Multiple' + EP_X2C: + $ref: '#/components/schemas/EP_X2C-Multiple' + DANRManagementFunction: + $ref: '#/components/schemas/DANRManagementFunction-Single' + DESManagementFunction: + $ref: '#/components/schemas/DESManagementFunction-Single' + DMROFunction: + $ref: '#/components/schemas/DMROFunction-Single' + + NrCellCu-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' + - type: object + properties: + cellLocalId: + type: integer + plmnInfoList: + $ref: '#/components/schemas/PlmnInfoList' + nRFrequencyRef: + $ref: 'genericNrm.yaml#/components/schemas/Dn' + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' + - type: object + properties: + RRMPolicyRatio: + $ref: '#/components/schemas/RRMPolicyRatio-Multiple' + NRCellRelation: + $ref: '#/components/schemas/NRCellRelation-Multiple' + EUtranCellRelation: + $ref: '#/components/schemas/EUtranCellRelation-Multiple' + NRFreqRelation: + $ref: '#/components/schemas/NRFreqRelation-Multiple' + EUtranFreqRelation: + $ref: '#/components/schemas/EUtranFreqRelation-Multiple' + DESManagementFunction: + $ref: '#/components/schemas/DESManagementFunction-Single' + DMROFunction: + $ref: '#/components/schemas/DMROFunction-Single' + CESManagementFunction: + $ref: '#/components/schemas/CESManagementFunction-Single' + DPCIConfigurationFunction: + $ref: '#/components/schemas/DPCIConfigurationFunction-Single' + + NrCellDu-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' + - type: object + properties: + administrativeState: + $ref: 'genericNrm.yaml#/components/schemas/AdministrativeState' + operationalState: + $ref: 'genericNrm.yaml#/components/schemas/OperationalState' + cellLocalId: + type: integer + cellState: + $ref: '#/components/schemas/CellState' + plmnInfoList: + $ref: '#/components/schemas/PlmnInfoList' + npnIdentityList: + $ref: '#/components/schemas/NpnIdentityList' + nrPci: + $ref: '#/components/schemas/NrPci' + nrTac: + $ref: '#/components/schemas/NrTac' + arfcnDL: + type: integer + arfcnUL: + type: integer + arfcnSUL: + type: integer + bSChannelBwDL: + type: integer + bSChannelBwUL: + type: integer + bSChannelBwSUL: + type: integer + ssbFrequency: + type: integer + minimum: 0 + maximum: 3279165 + ssbPeriodicity: + $ref: '#/components/schemas/SsbPeriodicity' + ssbSubCarrierSpacing: + $ref: '#/components/schemas/SsbSubCarrierSpacing' + ssbOffset: + type: integer + minimum: 0 + maximum: 159 + ssbDuration: + $ref: '#/components/schemas/SsbDuration' + nrSectorCarrierRef: + type: array + items: + $ref: 'genericNrm.yaml#/components/schemas/Dn' + bwpRef: + type: array + items: + $ref: 'genericNrm.yaml#/components/schemas/Dn' + rimRSMonitoringStartTime: + type: string + rimRSMonitoringStopTime: + type: string + rimRSMonitoringWindowDuration: + type: integer + rimRSMonitoringWindowStartingOffset: + type: integer + rimRSMonitoringWindowPeriodicity: + type: integer + rimRSMonitoringOccasionInterval: + type: integer + rimRSMonitoringOccasionStartingOffset: + type: integer + nRFrequencyRef: + $ref: 'genericNrm.yaml#/components/schemas/Dn' + victimSetRef: + $ref: 'genericNrm.yaml#/components/schemas/Dn' + aggressorSetRef: + $ref: 'genericNrm.yaml#/components/schemas/Dn' + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' + - type: object + properties: + RRMPolicyRatio: + $ref: '#/components/schemas/RRMPolicyRatio-Multiple' + CPCIConfigurationFunction: + $ref: '#/components/schemas/CPCIConfigurationFunction-Single' + DRACHOptimizationFunction: + $ref: '#/components/schemas/DRACHOptimizationFunction-Single' + + NRFrequency-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + type: object + properties: + absoluteFrequencySSB: + type: integer + minimum: 0 + maximum: 3279165 + ssbSubCarrierSpacing: + $ref: '#/components/schemas/SsbSubCarrierSpacing' + multiFrequencyBandListNR: + type: integer + minimum: 1 + maximum: 256 + EUtranFrequency-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + type: object + properties: + earfcnDL: + type: integer + minimum: 0 + maximum: 262143 + multiBandInfoListEutra: + type: integer + minimum: 1 + maximum: 256 + + NrSectorCarrier-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' + - type: object + properties: + txDirection: + $ref: '#/components/schemas/TxDirection' + configuredMaxTxPower: + type: integer + arfcnDL: + type: integer + arfcnUL: + type: integer + bSChannelBwDL: + type: integer + bSChannelBwUL: + type: integer + sectorEquipmentFunctionRef: + $ref: 'genericNrm.yaml#/components/schemas/Dn' + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' + - type: object + properties: + CommonBeamformingFunction: + $ref: '#/components/schemas/CommonBeamformingFunction-Single' + Bwp-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' + - type: object + properties: + bwpContext: + $ref: '#/components/schemas/BwpContext' + isInitialBwp: + $ref: '#/components/schemas/IsInitialBwp' + subCarrierSpacing: + type: integer + cyclicPrefix: + $ref: '#/components/schemas/CyclicPrefix' + startRB: + type: integer + numberOfRBs: + type: integer + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' + CommonBeamformingFunction-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + allOf: + - type: object + properties: + coverageShape: + $ref: '#/components/schemas/CoverageShape' + digitalAzimuth: + $ref: '#/components/schemas/DigitalAzimuth' + digitalTilt: + $ref: '#/components/schemas/DigitalTilt' + - type: object + properties: + Beam: + $ref: '#/components/schemas/Beam-Multiple' + Beam-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + allOf: + - type: object + properties: + beamIndex: + type: integer + beamType: + type: string + enum: + - SSB-BEAM + beamAzimuth: + type: integer + minimum: -1800 + maximum: 1800 + beamTilt: + type: integer + minimum: -900 + maximum: 900 + beamHorizWidth: + type: integer + minimum: 0 + maximum: 3599 + beamVertWidth: + type: integer + minimum: 0 + maximum: 1800 + RRMPolicyRatio-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + allOf: + - $ref: '#/components/schemas/RrmPolicy_-Attr' + - type: object + properties: + rRMPolicyMaxRatio: + type: integer + rRMPolicyMinRatio: + type: integer + rRMPolicyDedicatedRatio: + type: integer + + NRCellRelation-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + type: object + properties: + nRTCI: + type: integer + cellIndividualOffset: + $ref: '#/components/schemas/CellIndividualOffset' + adjacentNRCellRef: + $ref: 'genericNrm.yaml#/components/schemas/Dn' + nRFrequencyRef: + $ref: 'genericNrm.yaml#/components/schemas/Dn' + isRemoveAllowed: + type: boolean + isHOAllowed: + type: boolean + isESCoveredBy: + $ref: '#/components/schemas/IsESCoveredBy' + isENDCAllowed: + type: boolean + isMLBAllowed: + type: boolean + EUtranCellRelation-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' + - type: object + properties: + adjacentEUtranCellRef: + $ref: 'genericNrm.yaml#/components/schemas/Dn' + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' + NRFreqRelation-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + type: object + properties: + offsetMO: + $ref: '#/components/schemas/QOffsetRangeList' + blackListEntry: + type: array + items: + type: integer + minimum: 0 + maximum: 1007 + blackListEntryIdleMode: + type: integer + cellReselectionPriority: + type: integer + cellReselectionSubPriority: + type: number + minimum: 0.2 + maximum: 0.8 + multipleOf: 0.2 + pMax: + type: integer + minimum: -30 + maximum: 33 + qOffsetFreq: + $ref: '#/components/schemas/QOffsetFreq' + qQualMin: + type: number + qRxLevMin: + type: integer + minimum: -140 + maximum: -44 + threshXHighP: + type: integer + minimum: 0 + maximum: 62 + threshXHighQ: + type: integer + minimum: 0 + maximum: 31 + threshXLowP: + type: integer + minimum: 0 + maximum: 62 + threshXLowQ: + type: integer + minimum: 0 + maximum: 31 + tReselectionNr: + type: integer + minimum: 0 + maximum: 7 + tReselectionNRSfHigh: + $ref: '#/components/schemas/TReselectionNRSf' + tReselectionNRSfMedium: + $ref: '#/components/schemas/TReselectionNRSf' + nRFrequencyRef: + $ref: 'genericNrm.yaml#/components/schemas/Dn' + EUtranFreqRelation-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + type: object + properties: + cellIndividualOffset: + $ref: '#/components/schemas/CellIndividualOffset' + blackListEntry: + type: array + items: + type: integer + minimum: 0 + maximum: 1007 + blackListEntryIdleMode: + type: integer + cellReselectionPriority: + type: integer + cellReselectionSubPriority: + type: number + minimum: 0.2 + maximum: 0.8 + multipleOf: 0.2 + pMax: + type: integer + minimum: -30 + maximum: 33 + qOffsetFreq: + $ref: '#/components/schemas/QOffsetFreq' + qQualMin: + type: number + qRxLevMin: + type: integer + minimum: -140 + maximum: -44 + threshXHighP: + type: integer + minimum: 0 + maximum: 62 + threshXHighQ: + type: integer + minimum: 0 + maximum: 31 + threshXLowP: + type: integer + minimum: 0 + maximum: 62 + threshXLowQ: + type: integer + minimum: 0 + maximum: 31 + tReselectionEutran: + type: integer + minimum: 0 + maximum: 7 + tReselectionNRSfHigh: + $ref: '#/components/schemas/TReselectionNRSf' + tReselectionNRSfMedium: + $ref: '#/components/schemas/TReselectionNRSf' + eUTranFrequencyRef: + $ref: 'genericNrm.yaml#/components/schemas/Dn' + DANRManagementFunction-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + type: object + properties: + intrasystemANRManagementSwitch: + type: boolean + intersystemANRManagementSwitch: + type: boolean + + DESManagementFunction-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + type: object + properties: + desSwitch: + type: boolean + intraRatEsActivationOriginalCellLoadParameters: + $ref: "#/components/schemas/IntraRatEsActivationOriginalCellLoadParameters" + intraRatEsActivationCandidateCellsLoadParameters: + $ref: "#/components/schemas/IntraRatEsActivationCandidateCellsLoadParameters" + intraRatEsDeactivationCandidateCellsLoadParameters: + $ref: "#/components/schemas/IntraRatEsDeactivationCandidateCellsLoadParameters" + esNotAllowedTimePeriod: + $ref: "#/components/schemas/EsNotAllowedTimePeriod" + interRatEsActivationOriginalCellParameters: + $ref: "#/components/schemas/IntraRatEsActivationOriginalCellLoadParameters" + interRatEsActivationCandidateCellParameters: + $ref: "#/components/schemas/IntraRatEsActivationOriginalCellLoadParameters" + interRatEsDeactivationCandidateCellParameters: + $ref: "#/components/schemas/IntraRatEsActivationOriginalCellLoadParameters" + isProbingCapable: + type: string + enum: + - yes + - no + energySavingState: + type: string + enum: + - isNotEnergySaving + - isEnergySaving + + DRACHOptimizationFunction-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + type: object + properties: + drachOptimizationControl: + type: boolean + ueAccProbilityDist: + $ref: "#/components/schemas/UeAccProbilityDist" + ueAccDelayProbilityDist: + $ref: "#/components/schemas/UeAccDelayProbilityDist" + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' + + DMROFunction-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + type: object + properties: + dmroControl: + type: boolean + maximumDeviationHoTrigger: + $ref: '#/components/schemas/MaximumDeviationHoTrigger' + minimumTimeBetweenHoTriggerChange: + $ref: '#/components/schemas/MinimumTimeBetweenHoTriggerChange' + tstoreUEcntxt: + $ref: '#/components/schemas/TstoreUEcntxt' + + DPCIConfigurationFunction-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + type: object + properties: + dPciConfigurationControl: + type: boolean + nRPciList: + $ref: "#/components/schemas/NRPciList" + + CPCIConfigurationFunction-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + type: object + properties: + cPciConfigurationControl: + type: boolean + cSonPciList: + $ref: "#/components/schemas/CSonPciList" + + CESManagementFunction-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + type: object + properties: + cesSwitch: + type: boolean + intraRatEsActivationOriginalCellLoadParameters: + $ref: "#/components/schemas/IntraRatEsActivationOriginalCellLoadParameters" + intraRatEsActivationCandidateCellsLoadParameters: + $ref: "#/components/schemas/IntraRatEsActivationCandidateCellsLoadParameters" + intraRatEsDeactivationCandidateCellsLoadParameters: + $ref: "#/components/schemas/IntraRatEsDeactivationCandidateCellsLoadParameters" + esNotAllowedTimePeriod: + $ref: "#/components/schemas/EsNotAllowedTimePeriod" + interRatEsActivationOriginalCellParameters: + $ref: "#/components/schemas/IntraRatEsActivationOriginalCellLoadParameters" + interRatEsActivationCandidateCellParameters: + $ref: "#/components/schemas/IntraRatEsActivationOriginalCellLoadParameters" + interRatEsDeactivationCandidateCellParameters: + $ref: "#/components/schemas/IntraRatEsActivationOriginalCellLoadParameters" + energySavingControl: + type: string + enum: + - toBeEnergySaving + - toBeNotEnergySaving + energySavingState: + type: string + enum: + - isNotEnergySaving + - isEnergySaving + + RimRSGlobal-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + type: object + properties: + frequencyDomainPara: + $ref: '#/components/schemas/FrequencyDomainPara' + sequenceDomainPara: + $ref: '#/components/schemas/SequenceDomainPara' + timeDomainPara: + $ref: '#/components/schemas/TimeDomainPara' + RimRSSet: + $ref: '#/components/schemas/RimRSSet-Multiple' + + RimRSSet-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + type: object + properties: + setId: + $ref: '#/components/schemas/RSSetId' + setType: + $ref: '#/components/schemas/RSSetType' + nRCellDURefs: + $ref: 'genericNrm.yaml#/components/schemas/DnList' + + ExternalGnbDuFunction-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' + - type: object + properties: + gnbId: + $ref: '#/components/schemas/GnbId' + gnbIdLength: + $ref: '#/components/schemas/GnbIdLength' + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' + - type: object + properties: + EP_F1C: + $ref: '#/components/schemas/EP_F1C-Multiple' + EP_F1U: + $ref: '#/components/schemas/EP_F1U-Multiple' + ExternalGnbCuUpFunction-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' + - type: object + properties: + gnbId: + $ref: '#/components/schemas/GnbId' + gnbIdLength: + $ref: '#/components/schemas/GnbIdLength' + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' + - type: object + properties: + EP_E1: + $ref: '#/components/schemas/EP_E1-Multiple' + EP_F1U: + $ref: '#/components/schemas/EP_F1U-Multiple' + EP_XnU: + $ref: '#/components/schemas/EP_XnU-Multiple' + ExternalGnbCuCpFunction-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + allOf: + - $ref: >- + genericNrm.yaml#/components/schemas/ManagedFunction-Attr + - type: object + properties: + gnbId: + $ref: '#/components/schemas/GnbId' + gnbIdLength: + $ref: '#/components/schemas/GnbIdLength' + plmnId: + $ref: '#/components/schemas/PlmnId' + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' + - type: object + properties: + ExternalNrCellCu: + $ref: '#/components/schemas/ExternalNrCellCu-Multiple' + EP_XnC: + $ref: '#/components/schemas/EP_XnC-Multiple' + EP_E1: + $ref: '#/components/schemas/EP_E1-Multiple' + EP_F1C: + $ref: '#/components/schemas/EP_F1C-Multiple' + ExternalNrCellCu-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' + - type: object + properties: + cellLocalId: + type: integer + nrPci: + $ref: '#/components/schemas/NrPci' + plmnIdList: + $ref: '#/components/schemas/PlmnIdList' + nRFrequencyRef: + $ref: 'genericNrm.yaml#/components/schemas/Dn' + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' + ExternalENBFunction-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' + - type: object + properties: + eNBId: + type: integer + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' + - type: object + properties: + ExternalEUTranCell: + $ref: '#/components/schemas/ExternalEUTranCell-Multiple' + ExternalEUTranCell-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr' + - type: object + properties: + EUtranFrequencyRef: + $ref: 'genericNrm.yaml#/components/schemas/Dn' + - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' + + EP_XnC-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' + - type: object + properties: + localAddress: + $ref: '#/components/schemas/LocalAddress' + remoteAddress: + $ref: '#/components/schemas/RemoteAddress' + EP_E1-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' + - type: object + properties: + localAddress: + $ref: '#/components/schemas/LocalAddress' + remoteAddress: + $ref: '#/components/schemas/RemoteAddress' + EP_F1C-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' + - type: object + properties: + localAddress: + $ref: '#/components/schemas/LocalAddress' + remoteAddress: + $ref: '#/components/schemas/RemoteAddress' + EP_NgC-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' + - type: object + properties: + localAddress: + $ref: '#/components/schemas/LocalAddress' + remoteAddress: + $ref: '#/components/schemas/RemoteAddress' + EP_X2C-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' + - type: object + properties: + localAddress: + $ref: '#/components/schemas/LocalAddress' + remoteAddress: + $ref: '#/components/schemas/RemoteAddress' + EP_XnU-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' + - type: object + properties: + localAddress: + $ref: '#/components/schemas/LocalAddress' + remoteAddress: + $ref: '#/components/schemas/RemoteAddress' + EP_F1U-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' + - type: object + properties: + localAddress: + $ref: '#/components/schemas/LocalAddress' + remoteAddress: + $ref: '#/components/schemas/RemoteAddress' + epTransportRefs: + $ref: 'genericNrm.yaml#/components/schemas/DnList' + + EP_NgU-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' + - type: object + properties: + localAddress: + $ref: '#/components/schemas/LocalAddress' + remoteAddress: + $ref: '#/components/schemas/RemoteAddress' + epTransportRefs: + $ref: 'genericNrm.yaml#/components/schemas/DnList' + + EP_X2U-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' + - type: object + properties: + localAddress: + $ref: '#/components/schemas/LocalAddress' + remoteAddress: + $ref: '#/components/schemas/RemoteAddress' + EP_S1U-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/EP_RP-Attr' + - type: object + properties: + localAddress: + $ref: '#/components/schemas/LocalAddress' + remoteAddress: + $ref: '#/components/schemas/RemoteAddress' + +#-------- Definition of JSON arrays for name-contained IOCs ---------------------- + + SubNetwork-Multiple: + type: array + items: + $ref: '#/components/schemas/SubNetwork-Single' + ManagedElement-Multiple: + type: array + items: + $ref: '#/components/schemas/ManagedElement-Single' + GnbDuFunction-Multiple: + type: array + items: + $ref: '#/components/schemas/GnbDuFunction-Single' + GnbCuUpFunction-Multiple: + type: array + items: + $ref: '#/components/schemas/GnbCuUpFunction-Single' + GnbCuCpFunction-Multiple: + type: array + items: + $ref: '#/components/schemas/GnbCuCpFunction-Single' + + NrCellDu-Multiple: + type: array + items: + $ref: '#/components/schemas/NrCellDu-Single' + NrCellCu-Multiple: + type: array + items: + $ref: '#/components/schemas/NrCellCu-Single' + + NRFrequency-Multiple: + type: array + minItems: 1 + items: + $ref: '#/components/schemas/NRFrequency-Single' + EUtranFrequency-Multiple: + type: array + minItems: 1 + items: + $ref: '#/components/schemas/EUtranFrequency-Single' + + NrSectorCarrier-Multiple: + type: array + items: + $ref: '#/components/schemas/NrSectorCarrier-Single' + Bwp-Multiple: + type: array + items: + $ref: '#/components/schemas/Bwp-Single' + Beam-Multiple: + type: array + items: + $ref: '#/components/schemas/Beam-Single' + RRMPolicyRatio-Multiple: + type: array + items: + $ref: '#/components/schemas/RRMPolicyRatio-Single' + + NRCellRelation-Multiple: + type: array + items: + $ref: '#/components/schemas/NRCellRelation-Single' + EUtranCellRelation-Multiple: + type: array + items: + $ref: '#/components/schemas/EUtranCellRelation-Single' + NRFreqRelation-Multiple: + type: array + items: + $ref: '#/components/schemas/NRFreqRelation-Single' + EUtranFreqRelation-Multiple: + type: array + items: + $ref: '#/components/schemas/EUtranFreqRelation-Single' + + RimRSSet-Multiple: + type: array + items: + $ref: '#/components/schemas/RimRSSet-Single' + + ExternalGnbDuFunction-Multiple: + type: array + items: + $ref: '#/components/schemas/ExternalGnbDuFunction-Single' + ExternalGnbCuUpFunction-Multiple: + type: array + items: + $ref: '#/components/schemas/ExternalGnbCuUpFunction-Single' + ExternalGnbCuCpFunction-Multiple: + type: array + items: + $ref: '#/components/schemas/ExternalGnbCuCpFunction-Single' + ExternalNrCellCu-Multiple: + type: array + items: + $ref: '#/components/schemas/ExternalNrCellCu-Single' + + ExternalENBFunction-Multiple: + type: array + items: + $ref: '#/components/schemas/ExternalENBFunction-Single' + ExternalEUTranCell-Multiple: + type: array + items: + $ref: '#/components/schemas/ExternalEUTranCell-Single' + + EP_E1-Multiple: + type: array + items: + $ref: '#/components/schemas/EP_E1-Single' + EP_XnC-Multiple: + type: array + items: + $ref: '#/components/schemas/EP_XnC-Single' + EP_F1C-Multiple: + type: array + items: + $ref: '#/components/schemas/EP_F1C-Single' + EP_NgC-Multiple: + type: array + items: + $ref: '#/components/schemas/EP_NgC-Single' + EP_X2C-Multiple: + type: array + items: + $ref: '#/components/schemas/EP_X2C-Single' + EP_XnU-Multiple: + type: array + items: + $ref: '#/components/schemas/EP_XnU-Single' + EP_F1U-Multiple: + type: array + items: + $ref: '#/components/schemas/EP_F1U-Single' + EP_NgU-Multiple: + type: array + items: + $ref: '#/components/schemas/EP_NgU-Single' + EP_X2U-Multiple: + type: array + items: + $ref: '#/components/schemas/EP_X2U-Single' + EP_S1U-Multiple: + type: array + items: + $ref: '#/components/schemas/EP_S1U-Single' + +#-------- Definitions in TS 28.541 for TS 28.532 --------------------------------- + + resources-nrNrm: + oneOf: + - $ref: '#/components/schemas/SubNetwork-Single' + - $ref: '#/components/schemas/ManagedElement-Single' + + - $ref: '#/components/schemas/GnbDuFunction-Single' + - $ref: '#/components/schemas/GnbCuUpFunction-Single' + - $ref: '#/components/schemas/GnbCuCpFunction-Single' + + - $ref: '#/components/schemas/NrCellCu-Single' + - $ref: '#/components/schemas/NrCellDu-Single' + + - $ref: '#/components/schemas/NRFrequency-Single' + - $ref: '#/components/schemas/EUtranFrequency-Single' + + - $ref: '#/components/schemas/NrSectorCarrier-Single' + - $ref: '#/components/schemas/Bwp-Single' + - $ref: '#/components/schemas/CommonBeamformingFunction-Single' + - $ref: '#/components/schemas/Beam-Single' + - $ref: '#/components/schemas/RRMPolicyRatio-Single' + + - $ref: '#/components/schemas/NRCellRelation-Single' + - $ref: '#/components/schemas/EUtranCellRelation-Single' + - $ref: '#/components/schemas/NRFreqRelation-Single' + - $ref: '#/components/schemas/EUtranFreqRelation-Single' + + - $ref: '#/components/schemas/DANRManagementFunction-Single' + - $ref: '#/components/schemas/DESManagementFunction-Single' + - $ref: '#/components/schemas/DRACHOptimizationFunction-Single' + - $ref: '#/components/schemas/DMROFunction-Single' + - $ref: '#/components/schemas/DPCIConfigurationFunction-Single' + - $ref: '#/components/schemas/CPCIConfigurationFunction-Single' + - $ref: '#/components/schemas/CESManagementFunction-Single' + + - $ref: '#/components/schemas/RimRSGlobal-Single' + - $ref: '#/components/schemas/RimRSSet-Single' + + - $ref: '#/components/schemas/ExternalGnbDuFunction-Single' + - $ref: '#/components/schemas/ExternalGnbCuUpFunction-Single' + - $ref: '#/components/schemas/ExternalGnbCuCpFunction-Single' + - $ref: '#/components/schemas/ExternalNrCellCu-Single' + - $ref: '#/components/schemas/ExternalENBFunction-Single' + - $ref: '#/components/schemas/ExternalEUTranCell-Single' + + - $ref: '#/components/schemas/EP_XnC-Single' + - $ref: '#/components/schemas/EP_E1-Single' + - $ref: '#/components/schemas/EP_F1C-Single' + - $ref: '#/components/schemas/EP_NgC-Single' + - $ref: '#/components/schemas/EP_X2C-Single' + - $ref: '#/components/schemas/EP_XnU-Single' + - $ref: '#/components/schemas/EP_F1U-Single' + - $ref: '#/components/schemas/EP_NgU-Single' + - $ref: '#/components/schemas/EP_X2U-Single' + - $ref: '#/components/schemas/EP_S1U-Single' diff --git a/OpenAPI/provMnS.yaml b/OpenAPI/provMnS.yaml new file mode 100644 index 000000000..b2f84a4d2 --- /dev/null +++ b/OpenAPI/provMnS.yaml @@ -0,0 +1,579 @@ +openapi: 3.0.1 +info: + title: Provisioning MnS + version: 16.4.0 + description: >- + OAS 3.0.1 definition of the Provisioning MnS + © 2020, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). + All rights reserved. +externalDocs: + description: 3GPP TS 28.532 V16.4.0; Generic management services + url: http://www.3gpp.org/ftp/Specs/archive/28_series/28.532/ +servers: + - url: 'http://{URI-DN-prefix}/{root}/ProvMnS/v1640/{LDN-first-part}' + variables: + URI-DN-prefix: + description: See subclause 4.4 of TS 32.158 + default: example.com + root: + description: See subclause 4.4 of TS 32.158 + default: 3GPPManagement + LDN-first-part: + description: See subclause 4.4 of TS 32.158 + default: '' +paths: + '/{className}={id}': + parameters: + - name: className + in: path + required: true + schema: + $ref: '#/components/schemas/className-PathType' + - name: id + in: path + required: true + schema: + $ref: '#/components/schemas/id-PathType' + put: + summary: Replaces a complete single resource or creates it if it does not exist + description: >- + With HTTP PUT a complete resource is replaced or created if it does not + exist. The target resource is identified by the target URI. + requestBody: + required: true + content: + application/json: + schema: + $ref: '#/components/schemas/resourcePut-RequestType' + responses: + '200': + description: >- + Success case ("200 OK"). + This status code shall be returned when the resource is replaced, and + when the replaced resource representation is not identical to the resource + representation in the request. + This status code may be retourned when the resource is updated and when the + updated resource representation is identical to the resource representation + in the request. + The representation of the updated resource is returned in the response + message body. + content: + application/json: + schema: + $ref: '#/components/schemas/resourceUpdate-ResponseType' + '201': + description: >- + Success case ("201 Created"). + This status code shall be returned when the resource is created. + The representation of the created resource is returned in the response + message body. + content: + application/json: + schema: + $ref: '#/components/schemas/resourceCreation-ResponseType' + '204': + description: >- + Success case ("204 No Content"). + This status code may be returned only when the replaced resource + representation is identical to the representation in the request. + The response has no message body. + default: + description: Error case. + content: + application/json: + schema: + $ref: '#/components/schemas/error-ResponseType' + callbacks: + notifyMOICreation: + '{request.body#/notificationRecipientAddress}': + post: + requestBody: + required: true + content: + application/json: + schema: + $ref: '#/components/schemas/notifyMOICreation-NotifType' + responses: + '204': + description: >- + Success case ("204 No Content"). + The notification is successfully delivered. The response + has no message body. + default: + description: Error case. + content: + application/json: + schema: + $ref: '#/components/schemas/error-ResponseType' + notifyMOIDeletion: + '{request.body#/notificationRecipientAddress}': + post: + requestBody: + required: true + content: + application/json: + schema: + $ref: '#/components/schemas/notifyMOIDeletion-NotifType' + responses: + '204': + description: >- + Success case ("204 No Content"). + The notification is successfully delivered. The response + has no message body. + default: + description: Error case. + content: + application/json: + schema: + $ref: '#/components/schemas/error-ResponseType' + notifyMOIAttributeValueChange: + '{request.body#/notificationRecipientAddress}': + post: + requestBody: + required: true + content: + application/json: + schema: + $ref: '#/components/schemas/notifyMOIAttributeValueChange-NotifType' + responses: + '204': + description: >- + Success case ("204 No Content"). + The notification is successfully delivered. The response + has no message body. + default: + description: Error case. + content: + application/json: + schema: + $ref: '#/components/schemas/error-ResponseType' + notifyMOIChanges: + '{request.body#/notificationRecipientAddress}': + post: + requestBody: + required: true + content: + application/json: + schema: + $ref: '#/components/schemas/notifyMOIChanges-NotifType' + responses: + '204': + description: >- + Success case ("204 No Content"). + The notification is successfully delivered. The response + has no message body. + default: + description: Error case. + content: + application/json: + schema: + $ref: '#/components/schemas/error-ResponseType' + get: + summary: Reads one or multiple resources + description: >- + With HTTP GET resources are read. The resources to be retrieved are + identified with the target URI. The attributes and fields parameter + of the query components allow to select the resource properties to be returned. + parameters: + - name: scope + in: query + description: >- + This parameter extends the set of targeted resources beyond the base + resource identified with the path component of the URI. No scoping + mechanism is specified in the present document. + required: false + schema: + $ref: '#/components/schemas/scope-QueryType' + style: form + explode: true + - name: filter + in: query + description: >- + This parameter reduces the targeted set of resources by applying a + filter to the scoped set of resource representations. Only resource + representations for which the filter construct evaluates to "true" + are targeted. No filter language is specified in the present + document. + required: false + schema: + $ref: '#/components/schemas/filter-QueryType' + - name: attributes + in: query + description: >- + This parameter specifies the attributes of the scoped resources that + are returned. + required: true + schema: + $ref: '#/components/schemas/attributes-QueryType' + style: form + explode: false + - name: fields + in: query + description: >- + This parameter specifies the attribute field of the scoped resources + that are returned. + required: false + schema: + $ref: '#/components/schemas/fields-QueryType' + style: form + explode: false + responses: + '200': + description: >- + Success case ("200 OK"). + The resources identified in the request for retrieval are returned + in the response message body. In case the attributes or fields query + parameters are used, only the selected attributes or sub-attributes are + returned. The response message body is constructed according to the + hierarchical response construction method (TS 32.158 [15]). + content: + application/json: + schema: + $ref: '#/components/schemas/resourceRetrieval-ResponseType' + default: + description: Error case. + content: + application/json: + schema: + $ref: '#/components/schemas/error-ResponseType' + patch: + summary: Patches one or multiple resources + description: >- + With HTTP PATCH resources are created, updated or deleted. The resources + to be modified are identified with the target URI (base resource) and + the patch document included in the request message body. + requestBody: + description: >- + The request body describes changes to be made to the target resources. + The following patch media types are available + - "application/merge-patch+json" (RFC 7396) + - "application/3gpp-merge-patch+json" (TS 32.158) + - "application/json-patch+json" (RFC 6902) + - "application/3gpp-json-patch+json" (TS 32.158) + required: true + content: + application/merge-patch+json: + schema: + $ref: '#/components/schemas/jsonMergePatch-RequestType' + application/3gpp-merge-patch+json: + schema: + $ref: '#/components/schemas/3gppJsonMergePatch-RequestType' + application/json-patch+json: + schema: + $ref: '#/components/schemas/jsonPatch-RequestType' + application/3gpp-json-patch+json: + schema: + $ref: '#/components/schemas/3gppJsonPatch-RequestType' + responses: + '200': + description: >- + Success case ("200 OK"). + This status code is returned when the updated the resource representations + shall be returned for some reason. + The resource representations are returned in the response message body. The + response message body is constructed according to the hierarchical response + construction method (TS 32.158 [15]) + content: + application/json: + schema: + $ref: '#/components/schemas/resourceUpdate-ResponseType' + '204': + description: >- + Success case ("204 No Content"). + This status code is returned when there is no need to return the updated + resource representations. + The response message body is empty. + default: + description: Error case. + content: + application/json: + schema: + $ref: '#/components/schemas/error-ResponseType' + delete: + summary: Deletes one or multiple resources + description: >- + With HTTP DELETE resources are deleted. The resources to be deleted are + identified with the target URI. + parameters: + - name: scope + in: query + description: >- + This parameter extends the set of targeted resources beyond the base + resource identified with the path component of the URI. No scoping + mechanism is specified in the present document. + required: false + schema: + $ref: '#/components/schemas/scope-QueryType' + - name: filter + in: query + description: >- + This parameter reduces the targeted set of resources by applying a + filter to the scoped set of resource representations. Only resources + representations for which the filter construct evaluates to "true" + are returned. No filter language is specified in the present + document. + required: false + schema: + $ref: '#/components/schemas/filter-QueryType' + responses: + '200': + description: >- + Success case ("200 OK"). + This status code shall be returned, when query parameters are present in + the request and one or multiple resources are deleted. + The URIs of the deleted resources are returned in the response message body. + '204': + description: >- + Success case ("204 No Content"). + This status code shall be returned, when no query parameters are present in + the request and only one resource is deleted. + The message body is empty. + content: + application/json: + schema: + $ref: '#/components/schemas/resourceDeletion-ResponseType' + default: + description: Error case. + content: + application/json: + schema: + $ref: '#/components/schemas/error-ResponseType' +components: + schemas: + dateTime-Type: + type: string + format: date-time + long-Type: + type: integer + format: int64 + uri-Type: + type: string + correlatedNotification-Type: + type: object + properties: + source: + $ref: '#/components/schemas/uri-Type' + notificationIds: + type: array + items: + $ref: '#/components/schemas/notificationId-Type' + notificationId-Type: + $ref: '#/components/schemas/long-Type' + notificationType-Type: + type: string + enum: + - notifyMOICreation + - notifyMOIDeletion + - notifyMOIAttributeValueChange + systemDN-Type: + type: string + additionalText-Type: + type: string + sourceIndicator-Type: + type: string + enum: + - resourceOperation + - mangementOperation + - sONOperation + - unknown + header-Type: + type: object + properties: + href: + $ref: '#/components/schemas/uri-Type' + notificationId: + $ref: '#/components/schemas/notificationId-Type' + notificationType: + $ref: '#/components/schemas/notificationType-Type' + eventTime: + $ref: '#/components/schemas/dateTime-Type' + systemDN: + $ref: '#/components/schemas/systemDN-Type' + required: + - href + - notificationId + - notificationType + - eventTime + - systemDN + scopeType-Type: + type: string + enum: + - BASE_ONLY + - BASE_NTH_LEVEL + - BASE_SUBTREE + - BASE_ALL + scopeLevel-Type: + type: integer + className-PathType: + type: string + id-PathType: + type: string + attributes-QueryType: + type: array + items: + type: string + fields-QueryType: + type: array + items: + type: string + filter-QueryType: + type: string + scope-QueryType: + type: object + properties: + scopeType: + $ref: '#/components/schemas/scopeType-Type' + scopeLevel: + $ref: '#/components/schemas/scopeLevel-Type' + + resourcePut-RequestType: + $ref: '#/components/schemas/resourceRepresentation-Type' + jsonMergePatch-RequestType: + $ref: '#/components/schemas/resourceRepresentation-Type' + 3gppJsonMergePatch-RequestType: + $ref: '#/components/schemas/resourceRepresentation-Type' + jsonPatch-RequestType: + type: array + items: + type: object + 3gppJsonPatch-RequestType: + type: array + items: + type: object + + error-ResponseType: + type: object + properties: + error: + type: object + properties: + errorInfo: + type: string + resourceRetrieval-ResponseType: + $ref: '#/components/schemas/resourceRepresentation-Type' + resourceCreation-ResponseType: + $ref: '#/components/schemas/resourceRepresentation-Type' + resourceUpdate-ResponseType: + $ref: '#/components/schemas/resourceRepresentation-Type' + resourceDeletion-ResponseType: + type: array + items: + $ref: '#/components/schemas/uri-Type' + + resourceRepresentation-Type: + oneOf: + - type: object + properties: + id: + type: string + attributes: + type: object + additionalProperties: + type: array + items: + type: object + - anyOf: + - $ref: 'genericNrm.yaml#/components/schemas/resources-genericNrm' + - $ref: 'nrNrm.yaml#/components/schemas/resources-nrNrm' + - $ref: '5gcNrm.yaml#/components/schemas/resources-5gcNrm' + - $ref: 'sliceNrm.yaml#/components/schemas/resources-sliceNrm' + + mOIChange-Type: + type: object + properties: + notificationId: + $ref: '#/components/schemas/notificationId-Type' + correlatedNotifications: + type: array + items: + $ref: '#/components/schemas/correlatedNotification-Type' + additionalText: + $ref: '#/components/schemas/additionalText-Type' + sourceIndicator: + $ref: '#/components/schemas/sourceIndicator-Type' + path: + $ref: '#/components/schemas/uri-Type' + operation: + type: string + enum: + - CREATE + - DELETE + - REPLACE + value: + oneOf: + - type: object + additionalProperties: + nullable: true + - type: array + items: + type: object + minItems: 1 + maxItems: 2 + + notifyMOICreation-NotifType: + allOf: + - $ref: '#/components/schemas/header-Type' + - type: object + properties: + correlatedNotifications: + type: array + items: + $ref: '#/components/schemas/correlatedNotification-Type' + additionalText: + $ref: '#/components/schemas/additionalText-Type' + sourceIndicator: + $ref: '#/components/schemas/sourceIndicator-Type' + attributeList: + type: object + additionalProperties: + nullable: true + notifyMOIDeletion-NotifType: + allOf: + - $ref: '#/components/schemas/header-Type' + - type: object + properties: + correlatedNotifications: + type: array + items: + $ref: '#/components/schemas/correlatedNotification-Type' + additionalText: + $ref: '#/components/schemas/additionalText-Type' + sourceIndicator: + $ref: '#/components/schemas/sourceIndicator-Type' + attributeList: + type: object + additionalProperties: true + notifyMOIAttributeValueChange-NotifType: + allOf: + - $ref: '#/components/schemas/header-Type' + - type: object + properties: + correlatedNotifications: + type: array + items: + $ref: '#/components/schemas/correlatedNotification-Type' + additionalText: + $ref: '#/components/schemas/additionalText-Type' + sourceIndicator: + $ref: '#/components/schemas/sourceIndicator-Type' + attributeValueChange: + type: object + additionalProperties: + type: array + minItems: 1 + maxItems: 2 + items: + nullable: true + required: + - attributeValueChange + notifyMOIChanges-NotifType: + allOf: + - $ref: '#/components/schemas/header-Type' + - type: object + properties: + mOIChanges: + type: array + items: + $ref: '#/components/schemas/mOIChange-Type' + required: + - mOIChanges diff --git a/OpenAPI/sliceNrm.yaml b/OpenAPI/sliceNrm.yaml new file mode 100644 index 000000000..bf6b4d71c --- /dev/null +++ b/OpenAPI/sliceNrm.yaml @@ -0,0 +1,632 @@ +openapi: 3.0.1 +info: + title: Slice NRM + version: 17.4.0 + description: >- + OAS 3.0.1 specification of the Slice NRM + @ 2020, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). + All rights reserved. +externalDocs: + description: 3GPP TS 28.541; 5G NRM, Slice NRM + url: http://www.3gpp.org/ftp/Specs/archive/28_series/28.541/ +paths: {} +components: + schemas: + +#------------ Type definitions --------------------------------------------------- + + Float: + type: number + format: float + MobilityLevel: + type: string + enum: + - STATIONARY + - NOMADIC + - RESTRICTED MOBILITY + - FULLY MOBILITY + SynAvailability: + type: string + enum: + - NOT SUPPORTED + - BETWEEN BS AND UE + - BETWEEN BS AND UE & UE AND UE + PositioningAvailability: + type: array + items: + type: string + enum: + - CIDE-CID + - OTDOA + - RF FINGERPRINTING + - AECID + - HYBRID POSITIONING + - NET-RTK + Predictionfrequency: + type: string + enum: + - PERSEC + - PERMIN + - PERHOUR + SharingLevel: + type: string + enum: + - SHARED + - NON-SHARED + + NetworkSliceSharingIndicator: + type: string + enum: + - SHARED + - NON-SHARED + + ServiceType: + type: string + enum: + - eMBB + - RLLC + - MIoT + - V2X + SliceSimultaneousUse: + type: string + enum: + - ZERO + - ONE + - TWO + - THREE + - FOUR + Category: + type: string + enum: + - CHARACTER + - SCALABILITY + Tagging: + type: array + items: + type: string + enum: + - PERFORMANCE + - FUNCTION + - OPERATION + Exposure: + type: string + enum: + - API + - KPI + ServAttrCom: + type: object + properties: + category: + $ref: '#/components/schemas/Category' + tagging: + $ref: '#/components/schemas/Tagging' + exposure: + $ref: '#/components/schemas/Exposure' + Support: + type: string + enum: + - NOT SUPPORTED + - SUPPORTED + DelayTolerance: + type: object + properties: + servAttrCom: + $ref: '#/components/schemas/ServAttrCom' + support: + $ref: '#/components/schemas/Support' + DeterministicComm: + type: object + properties: + servAttrCom: + $ref: '#/components/schemas/ServAttrCom' + availability: + $ref: '#/components/schemas/Support' + periodicityList: + type: string + XLThpt: + type: object + properties: + servAttrCom: + $ref: '#/components/schemas/ServAttrCom' + guaThpt: + $ref: '#/components/schemas/Float' + maxThpt: + $ref: '#/components/schemas/Float' + MaxPktSize: + type: object + properties: + servAttrCom: + $ref: '#/components/schemas/ServAttrCom' + maxsize: + type: integer + MaxNumberofPDUSessions: + type: object + properties: + servAttrCom: + $ref: '#/components/schemas/ServAttrCom' + nOofPDUSessions: + type: integer + KPIMonitoring: + type: object + properties: + servAttrCom: + $ref: '#/components/schemas/ServAttrCom' + kPIList: + type: string + NBIoT: + type: object + properties: + servAttrCom: + $ref: '#/components/schemas/ServAttrCom' + support: + $ref: '#/components/schemas/Support' + RadioSpectrum: + type: object + properties: + servAttrCom: + $ref: '#/components/schemas/ServAttrCom' + nROperatingBands: + type: string + Synchronicity: + type: object + properties: + servAttrCom: + $ref: '#/components/schemas/ServAttrCom' + availability: + $ref: '#/components/schemas/SynAvailability' + accuracy: + $ref: '#/components/schemas/Float' + SynchronicityRANSubnet: + type: object + properties: + availability: + $ref: '#/components/schemas/SynAvailability' + accuracy: + $ref: '#/components/schemas/Float' + Positioning: + type: object + properties: + servAttrCom: + $ref: '#/components/schemas/ServAttrCom' + availability: + $ref: '#/components/schemas/PositioningAvailability' + predictionfrequency: + $ref: '#/components/schemas/Predictionfrequency' + accuracy: + $ref: '#/components/schemas/Float' + PositioningRANSubnet: + type: object + properties: + availability: + $ref: '#/components/schemas/PositioningAvailability' + predictionfrequency: + $ref: '#/components/schemas/Predictionfrequency' + accuracy: + $ref: '#/components/schemas/Float' + UserMgmtOpen: + type: object + properties: + servAttrCom: + $ref: '#/components/schemas/ServAttrCom' + support: + $ref: '#/components/schemas/Support' + V2XCommModels: + type: object + properties: + servAttrCom: + $ref: '#/components/schemas/ServAttrCom' + v2XMode: + $ref: '#/components/schemas/Support' + TermDensity: + type: object + properties: + servAttrCom: + $ref: '#/components/schemas/ServAttrCom' + density: + type: integer + NsInfo: + type: object + properties: + nsInstanceId: + type: string + nsName: + type: string + EmbbEEPerfReq: + type: integer + UrllcEEPerfReq: + type: integer + MIoTEEPerfReq: + type: object + properties: + KpiType: + type: string + enum: + - MAXREGSUBS + - MEANACTIVEUES + Req: + type: integer + EEPerfReq: + oneOf: + - $ref: '#/components/schemas/EmbbEEPerfReq' + - $ref: '#/components/schemas/UrllcEEPerfReq' + - $ref: '#/components/schemas/MIoTEEPerfReq' + EnergyEfficiency: + type: object + properties: + servAttrCom: + $ref: '#/components/schemas/ServAttrCom' + performance: + $ref: '#/components/schemas/EEPerfReq' + CNSliceSubnetProfile: + type: object + properties: + maxNumberofUEs: + type: integer + latency: + type: integer + dLThptPerSliceSubnet: + $ref: '#/components/schemas/XLThpt' + dLThptPerUE: + $ref: '#/components/schemas/XLThpt' + uLThptPerSliceSubnet: + $ref: '#/components/schemas/XLThpt' + uLThptPerUE: + $ref: '#/components/schemas/XLThpt' + maxNumberOfPDUSessions: + type: integer + coverageAreaTAList: + type: integer + resourceSharingLevel: + $ref: '#/components/schemas/SharingLevel' + dLMaxPktSize: + type: integer + uLMaxPktSize: + type: integer + delayTolerance: + $ref: '#/components/schemas/DelayTolerance' + synchronicity: + $ref: '#/components/schemas/SynchronicityRANSubnet' + sliceSimultaneousUse: + $ref: '#/components/schemas/SliceSimultaneousUse' + reliability: + type: string + energyEfficiency: + type: integer + dLDeterministicComm: + $ref: '#/components/schemas/DeterministicComm' + uLDeterministicComm: + $ref: '#/components/schemas/DeterministicComm' + survivalTime: + type: string + RANSliceSubnetProfile: + type: object + properties: + coverageAreaTAList: + type: integer + uEMobilityLevel: + $ref: '#/components/schemas/MobilityLevel' + resourceSharingLevel: + $ref: '#/components/schemas/SharingLevel' + maxNumberofUEs: + type: integer + activityFactor: + type: integer + dLThptPerUE: + $ref: '#/components/schemas/XLThpt' + uLThptPerUE: + $ref: '#/components/schemas/XLThpt' + uESpeed: + type: integer + reliability: + type: string + serviceType: + $ref: '#/components/schemas/ServiceType' + dLMaxPktSize: + type: integer + uLMaxPktSize: + type: integer + nROperatingBands: + type: string + delayTolerance: + $ref: '#/components/schemas/DelayTolerance' + positioning: + $ref: '#/components/schemas/PositioningRANSubnet' + sliceSimultaneousUse: + $ref: '#/components/schemas/SliceSimultaneousUse' + energyEfficiency: + type: integer + termDensity: + $ref: '#/components/schemas/TermDensity' + survivalTime: + type: string + synchronicity: + $ref: '#/components/schemas/SynchronicityRANSubnet' + dLDeterministicComm: + $ref: '#/components/schemas/DeterministicComm' + uLDeterministicComm: + $ref: '#/components/schemas/DeterministicComm' + TopSliceSubnetProfile: + type: object + properties: + latency: + type: integer + maxNumberofUEs: + type: integer + dLThptPerSliceSubnet: + $ref: '#/components/schemas/XLThpt' + dLThptPerUE: + $ref: '#/components/schemas/XLThpt' + uLThptPerSliceSubnet: + $ref: '#/components/schemas/XLThpt' + uLThptPerUE: + $ref: '#/components/schemas/XLThpt' + dLMaxPktSize: + type: integer + uLMaxPktSize: + type: integer + maxNumberOfPDUSessions: + type: integer + nROperatingBands: + type: string + sliceSimultaneousUse: + $ref: '#/components/schemas/SliceSimultaneousUse' + energyEfficiency: + type: integer + synchronicity: + $ref: '#/components/schemas/Synchronicity' + delayTolerance: + $ref: '#/components/schemas/DelayTolerance' + positioning: + $ref: '#/components/schemas/Positioning' + termDensity: + $ref: '#/components/schemas/TermDensity' + activityFactor: + type: integer + coverageAreaTAList: + type: integer + resourceSharingLevel: + $ref: '#/components/schemas/SharingLevel' + uEMobilityLevel: + $ref: '#/components/schemas/MobilityLevel' + uESpeed: + type: integer + reliability: + type: string + serviceType: + $ref: '#/components/schemas/ServiceType' + dLDeterministicComm: + $ref: '#/components/schemas/DeterministicComm' + uLDeterministicComm: + $ref: '#/components/schemas/DeterministicComm' + survivalTime: + type: string + + ServiceProfile: + type: object + properties: + serviceProfileId: + type: string + plmnInfoList: + $ref: 'nrNrm.yaml#/components/schemas/PlmnInfoList' + maxNumberofUEs: + type: number + latency: + type: number + uEMobilityLevel: + $ref: '#/components/schemas/MobilityLevel' + sst: + $ref: 'nrNrm.yaml#/components/schemas/Sst' + networkSliceSharingIndicator: + $ref: '#/components/schemas/NetworkSliceSharingIndicator' + availability: + type: number + delayTolerance: + $ref: '#/components/schemas/DelayTolerance' + dLDeterministicComm: + $ref: '#/components/schemas/DeterministicComm' + uLDeterministicComm: + $ref: '#/components/schemas/DeterministicComm' + dLThptPerSlice: + $ref: '#/components/schemas/XLThpt' + dLThptPerUE: + $ref: '#/components/schemas/XLThpt' + uLThptPerSlice: + $ref: '#/components/schemas/XLThpt' + uLThptPerUE: + $ref: '#/components/schemas/XLThpt' + dLMaxPktSize: + $ref: '#/components/schemas/MaxPktSize' + uLMaxPktSize: + $ref: '#/components/schemas/MaxPktSize' + maxNumberofPDUSessions: + $ref: '#/components/schemas/MaxNumberofPDUSessions' + kPIMonitoring: + $ref: '#/components/schemas/KPIMonitoring' + nBIoT: + $ref: '#/components/schemas/NBIoT' + radioSpectrum: + $ref: '#/components/schemas/RadioSpectrum' + synchronicity: + $ref: '#/components/schemas/Synchronicity' + positioning: + $ref: '#/components/schemas/Positioning' + userMgmtOpen: + $ref: '#/components/schemas/UserMgmtOpen' + v2XModels: + $ref: '#/components/schemas/V2XCommModels' + coverageArea: + type: string + termDensity: + $ref: '#/components/schemas/TermDensity' + activityFactor: + $ref: '#/components/schemas/Float' + uESpeed: + type: integer + jitter: + type: integer + survivalTime: + type: string + reliability: + type: string + maxDLDataVolume: + type: string + maxULDataVolume: + type: string + sliceSimultaneousUse: + $ref: '#/components/schemas/SliceSimultaneousUse' + energyEfficiency: + $ref: '#/components/schemas/EnergyEfficiency' + SliceProfile: + type: object + properties: + serviceProfileId: + type: string + plmnInfoList: + $ref: 'nrNrm.yaml#/components/schemas/PlmnInfoList' + cNSliceSubnetProfile: + $ref: '#/components/schemas/CNSliceSubnetProfile' + rANSliceSubnetProfile: + $ref: '#/components/schemas/RANSliceSubnetProfile' + topSliceSubnetProfile: + $ref: '#/components/schemas/TopSliceSubnetProfile' + + IpAddress: + oneOf: + - $ref: 'genericNrm.yaml#/components/schemas/Ipv4Addr' + - $ref: 'genericNrm.yaml#/components/schemas/Ipv6Addr' + + LogicInterfaceInfo: + type: object + properties: + logicalInterfceType: + type: string + enum: + - VLAN + - MPLS + - Segment + logicalInterfceId: + type: string + + ServiceProfileList: + type: array + items: + $ref: '#/components/schemas/ServiceProfile' + + SliceProfileList: + type: array + items: + $ref: '#/components/schemas/SliceProfile' + +#------------ Definition of concrete IOCs ---------------------------------------- + SubNetwork-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/SubNetwork-Attr' + - $ref: 'genericNrm.yaml#/components/schemas/SubNetwork-ncO' + - type: object + properties: + SubNetwork: + $ref: '#/components/schemas/SubNetwork-Multiple' + NetworkSlice: + $ref: '#/components/schemas/NetworkSlice-Multiple' + NetworkSliceSubnet: + $ref: '#/components/schemas/NetworkSliceSubnet-Multiple' + EP_Transport: + $ref: '#/components/schemas/EP_Transport-Multiple' + + NetworkSlice-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + allOf: + - type: object + properties: + networkSliceSubnetRef: + $ref: 'genericNrm.yaml#/components/schemas/Dn' + operationalState: + $ref: 'genericNrm.yaml#/components/schemas/OperationalState' + administrativeState: + $ref: 'genericNrm.yaml#/components/schemas/AdministrativeState' + serviceProfileList: + $ref: '#/components/schemas/ServiceProfileList' + + NetworkSliceSubnet-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + allOf: + - type: object + properties: + managedFunctionRefList: + $ref: 'genericNrm.yaml#/components/schemas/DnList' + networkSliceSubnetRefList: + $ref: 'genericNrm.yaml#/components/schemas/DnList' + operationalState: + $ref: 'genericNrm.yaml#/components/schemas/OperationalState' + administrativeState: + $ref: 'genericNrm.yaml#/components/schemas/AdministrativeState' + nsInfo: + $ref: '#/components/schemas/NsInfo' + sliceProfileList: + $ref: '#/components/schemas/SliceProfileList' + epTransportRefList: + $ref: 'genericNrm.yaml#/components/schemas/DnList' + priorityLabel: + type: integer + + EP_Transport-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + type: object + properties: + ipAddress: + $ref: '#/components/schemas/IpAddress' + logicInterfaceInfo: + $ref: '#/components/schemas/LogicInterfaceInfo' + nextHopInfo: + type: string + qosProfile: + type: string + epApplicationRefs: + $ref: 'genericNrm.yaml#/components/schemas/DnList' + +#-------- Definition of JSON arrays for name-contained IOCs ---------------------- + SubNetwork-Multiple: + type: array + items: + $ref: '#/components/schemas/SubNetwork-Single' + + NetworkSlice-Multiple: + type: array + items: + $ref: '#/components/schemas/NetworkSlice-Single' + + NetworkSliceSubnet-Multiple: + type: array + items: + $ref: '#/components/schemas/NetworkSliceSubnet-Single' + + EP_Transport-Multiple: + type: array + items: + $ref: '#/components/schemas/EP_Transport-Single' + +#------------ Definitions in TS 28.541 for TS 28.532 ----------------------------- + + resources-sliceNrm: + oneOf: + - $ref: '#/components/schemas/SubNetwork-Single' + - $ref: '#/components/schemas/NetworkSlice-Single' + - $ref: '#/components/schemas/NetworkSliceSubnet-Single' + - $ref: '#/components/schemas/EP_Transport-Single' diff --git a/OpenAPI/streamingDataMnS.yaml b/OpenAPI/streamingDataMnS.yaml new file mode 100644 index 000000000..ab7f71d4a --- /dev/null +++ b/OpenAPI/streamingDataMnS.yaml @@ -0,0 +1,453 @@ +openapi: 3.0.1 +info: + title: TS 28.532 Streaming data reporting service + version: 16.4.0 + description: OAS 3.0.1 specification for the Streaming data reporting service (Streaming MnS) +servers: + - url: '{protocol}://{root}/StreamingDataReportingMnS/{version}' + variables: + protocol: + description: Protocol used + enum: + - http + - https + - wss + default: https + root: + description: Indicates the host name and optional port, and an optional sequence of path segments that together represent a prefix path. + default: example.com + version: + description: Indicates the current version of the specification + default: 16.4.0 +paths: + '/connections': + post: + summary: Inform consumer about reporting streams to be carried by the new connection and receive a new connection id. + description: Exchange of meta-data (producer informs consumer about its own identity and the nature of the data to be reported via streaming) phase of the connection establishement by streaming data reporting producer to the streaming data reporting consumer (i.e. streaming target). + requestBody: + required: true + content: + application/json: + schema: + $ref: '#/components/schemas/connectionRequest-Type' + responses: + '201': + description: Success case (201 Created). + headers: + Location: + description: Location of the created connection resource. + schema: + $ref: '#/components/schemas/connectionId-Type' + default: + description: Error case. + content: + application/json: + schema: + $ref: '#/components/schemas/failedConnectionResponse-Type' + get: + summary: Obtain information about connections. + description: Enables the streaming data reporting service producer to obtain information about one or more streaming connections. + parameters: + - name: connectionIdList + in: query + description: The list of connectionId for which the connection information is to be returned. + required: false + schema: + type: array + items: + $ref: '#/components/schemas/connectionId-Type' + responses: + '200': + description: Success case (200 OK). The resources identified in the request for retrieval are returned in the response message body. In case the fields query parameter is used, the selected resources are returned. + content: + application/json: + schema: + type: array + items: + $ref: '#/components/schemas/connectionInfo-Type' + '202': + description: Partial success case (202 Partially retrieved). Subset of the resources identified in the request for retrieval are returned in the response message body. + content: + application/json: + schema: + type: array + items: + $ref: '#/components/schemas/connectionInfo-Type' + default: + description: Error case. + content: + application/json: + schema: + $ref: '#/components/schemas/errorResponse-Type' + '/connections/{connectionId}': + get: + summary: Obtain information about a connection. + description: Enables the streaming data reporting service producer to obtain information about one streaming connection. + parameters: + - name: connectionId + in: path + description: Indicate the ID (URI) of the connection for which the information is being retrieved + required: true + schema: + $ref: '#/components/schemas/connectionId-Type' + - name: Connection + in: header + schema: + $ref: '#/components/schemas/websocketHeaderConnection-Type' + - name: Sec-WebSocket-Extensions + in: header + schema: + $ref: '#/components/schemas/websocketHeader-Sec-WebSocket-Extensions-Type' + - name: Sec-WebSocket-Key + in: header + schema: + $ref: '#/components/schemas/websocketHeader-Sec-WebSocket-Key-Type' + - name: Sec-WebSocket-Protocol + in: header + schema: + $ref: '#/components/schemas/websocketHeader-Sec-WebSocket-Protocol-Type' + - name: Sec-WebSocket-Version + in: header + schema: + $ref: '#/components/schemas/websocketHeader-Sec-WebSocket-Version-Type' + responses: + '101': + description: Success case (101 Switching Protocols). The connection has been successfully switched to WebSocket. The response message body is absent. + headers: + Upgrade: + schema: + $ref: '#/components/schemas/websocketHeaderUpgrade-Type' + Connection: + schema: + $ref: '#/components/schemas/websocketHeaderConnection-Type' + Sec-WebSocket-Accept: + schema: + $ref: '#/components/schemas/websocketHeader-Sec-WebSocket-Accept-Type' + '200': + description: Success case (200 OK). The resource identified in the request for retrieval returned in the response message body. + content: + application/json: + schema: + $ref: '#/components/schemas/connectionInfo-Type' + default: + description: Error case. + content: + application/json: + schema: + $ref: '#/components/schemas/errorResponse-Type' + '/connections/{connectionId}/streams': + post: + summary: Inform consumer about new reporting streams on an existing connection. + description: Allows the producer to add one or more reporting streams to an already established streaming connection. + parameters: + - name: connectionId + in: path + description: Indicate the ID (URI) of the connection for which the reporting stream information is being added. + required: true + schema: + $ref: '#/components/schemas/connectionId-Type' + requestBody: + required: true + content: + application/json: + schema: + type: array + items: + $ref: '#/components/schemas/streamInfo-Type' + responses: + '201': + description: Success case (201 Posted). + content: + application/json: + schema: + type: array + items: + $ref: '#/components/schemas/streamInfo-Type' + '202': + description: Partial success case (202 Posted). + content: + application/json: + schema: + type: array + items: + $ref: '#/components/schemas/streamInfo-Type' + default: + description: Error case. + content: + application/json: + schema: + $ref: '#/components/schemas/errorResponse-Type' + delete: + summary: Remove reporting streams from an existing connection + description: Allows the producer to remove one or more reporting streams from an already established streaming connection. + parameters: + - name: connectionId + in: path + description: Indicate the ID (URI) of the connection for which the reporting stream information is being removed. + required: true + schema: + $ref: '#/components/schemas/connectionId-Type' + - name: streamIds + in: query + description: The list of streamId for the stream(s) to be deleted. + required: true + schema: + type: array + items: + $ref: '#/components/schemas/streamId-Type' + responses: + '204': + description: Success case (204 No Content). The stream information resource has been deleted. The response message body is absent. + default: + description: Error case. + content: + application/json: + schema: + $ref: '#/components/schemas/errorResponse-Type' + get: + summary: Obtain information about streams. + description: Enables the streaming data reporting service producer to obtain information about one or more reporting streams. + parameters: + - name: connectionId + in: path + description: Indicate the ID (URI) of the connection for which the information is being retrieved + required: true + schema: + $ref: '#/components/schemas/connectionId-Type' + - name: streamIds + in: query + description: The list of streamId for which the stream information is to be retrieved. + required: true + schema: + type: array + items: + $ref: '#/components/schemas/streamId-Type' + responses: + '200': + description: Success case (200 OK). + content: + application/json: + schema: + type: array + items: + $ref: '#/components/schemas/streamInfoWithReporters-Type' + '202': + description: Partial success case (202 Partially retrieved). + content: + application/json: + schema: + type: array + items: + $ref: '#/components/schemas/streamInfoWithReporters-Type' + default: + description: Error case. + content: + application/json: + schema: + $ref: '#/components/schemas/errorResponse-Type' + '/connections/{connectionId}/streams/{streamId}': + get: + summary: Obtain information about stream + description: Enables the streaming data reporting service producer to obtain information about a reporting stream. + parameters: + - name: connectionId + in: path + description: Indicate the ID (URI) of the connection for which the information is being retrieved + required: true + schema: + $ref: '#/components/schemas/connectionId-Type' + - name: streamId + in: path + description: Indicate the ID of the reporting stream for which the information is being retrieved + required: true + schema: + $ref: '#/components/schemas/streamId-Type' + responses: + '200': + description: Success case (200 OK). + content: + application/json: + schema: + $ref: '#/components/schemas/streamInfoWithReporters-Type' + default: + description: Error case. + content: + application/json: + schema: + $ref: '#/components/schemas/errorResponse-Type' +components: + schemas: + analyticsInfo-Type: + description: Information specific to analytics reporting. + type: object + properties: + activityDetails: + type: string + connectionId-Type: + $ref: '#/components/schemas/uri-Type' + connectionInfo-Type: + type: object + properties: + connection: + $ref: '#/components/schemas/connectionId-Type' + producer: + $ref: '#/components/schemas/producerId-Type' + streams: + type: array + items: + $ref: '#/components/schemas/streamId-Type' + connectionRequest-Type: + type: object + properties: + producer: + $ref: '#/components/schemas/producerId-Type' + streams: + type: array + items: + $ref: '#/components/schemas/streamInfo-Type' + errorResponse-Type: + type: object + properties: + error: + type: object + properties: + errorInfo: + type: string + failedConnectionResponse-Type: + type: object + properties: + error: + type: array + items: + type: object + properties: + streamId: + $ref: '#/components/schemas/streamId-Type' + errorReason: + type: string + measObjDn-Type: + description: DN of the measured object instance (see 3GPP TS 28.550) + allOf: + - $ref: '#/components/schemas/systemDN-Type' + measTypes-Type: + description: an ordered list of measurement type or KPI whose measurement values or KPI result values are to be reported by the Performance Data Stream Units (see Annex C of TS 28.550) via this stream + type: array + items: + type: string + performanceInfo-Type: + description: Information specific to performance data reporting + type: object + properties: + measObjDn: + $ref: '#/components/schemas/measObjDn-Type' + measTypes: + $ref: '#/components/schemas/measTypes-Type' + measurementReaderId: + $ref: '#/components/schemas/systemDN-Type' + jobId: + type: string + required: + - measObjDn + - measTypes + producerId-Type: + description: DN of the streaming data reporting MnS producer. + allOf: + - $ref: '#/components/schemas/systemDN-Type' + serializationFormat-Type: + type: string + enum: + - GPB + - ASN1 + streamId-Type: + description: globally unique stream identifier + type: string + example: '26F452550021' + streamInfo-Type: + description: Reporting stream meta-data. + type: object + properties: + streamType: + $ref: '#/components/schemas/streamType-Type' + serializationFormat: + $ref: '#/components/schemas/serializationFormat-Type' + streamId: + oneOf: + - $ref: '#/components/schemas/streamId-Type' + - $ref: '#/components/schemas/traceReference-Type' + additionalInfo: + oneOf: + - $ref: '#/components/schemas/traceInfo-Type' + - $ref: '#/components/schemas/performanceInfo-Type' + - $ref: '#/components/schemas/analyticsInfo-Type' + - $ref: '#/components/schemas/vsDataContainer-Type' + required: + - streamType + - serializationFormat + - streamId + streamInfoWithReporters-Type: + description: Reporting stream meta-data with added information about reporters. + type: object + properties: + streamInfo: + $ref: '#/components/schemas/streamInfo-Type' + reporters: + type: array + items: + $ref: '#/components/schemas/producerId-Type' + systemDN-Type: + description: See 3GPP TS 32.300 for details + type: string + example: 'SubNetwork=ABCNetwork,SubNetwork=MUC01,GNBDUFunction=XYZ0100' + streamType-Type: + type: string + enum: + - TRACE + - PERFORMANCE + - ANALYTICS + - PROPRIETARY + traceInfo-Type: + description: Information specific to trace data reporting + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/TraceJob-Attr' + traceReference-Type: + description: Trace Reference (see clause 5.6 of 3GPP TS 32.422) as stream identifier for streaming trace data reporting + type: string + example: '4358070034D7' + uri-Type: + description: Resource URI + type: string + vsDataContainer-Type: + description: container for vendor specific data (see 3GPP TS 28.622) + type: object + properties: + vsDataType: + type: string + vsData: + type: string + vsDataFormatVersion: + type: string + websocketHeaderConnection-Type: + description: Header value for the upgrade request and response. + type: string + enum: + - Upgrade + websocketHeaderUpgrade-Type: + description: Header value for the upgrade to WebSocket request and response. + type: string + enum: + - websocket + websocketHeader-Sec-WebSocket-Accept-Type: + description: Header value for secure WebSocket response. Carries hash. + type: string + websocketHeader-Sec-WebSocket-Extensions-Type: + description: Header value for secure WebSocket request. Carries protocol extensions. + type: string + websocketHeader-Sec-WebSocket-Key-Type: + description: Header value for secure WebSocket request. Provides information to the server which is needed in order to confirm that the client is entitled to request an upgrade to WebSocket. + type: string + websocketHeader-Sec-WebSocket-Protocol-Type: + description: Header value for secure WebSocket request. Carries a comma-separated list of subprotocol names, in the order of preference. + type: string + websocketHeader-Sec-WebSocket-Version-Type: + description: Header value for secure WebSocket request and response. Carries the WebSocket protocol version to be used. + type: string -- GitLab From 21691d3b813af39b0d4a6358ccfdbf98c804550f Mon Sep 17 00:00:00 2001 From: "U-ERICSSON\\ETHBLL" Date: Sun, 2 Jan 2022 19:57:51 +0100 Subject: [PATCH 228/593] S5-216039 CR-0607 --- yang-models/_3gpp-common-yang-types.yang | 8 + yang-models/_3gpp-nr-nrm-gnbdufunction.yang | 136 +++++- yang-models/_3gpp-nr-nrm-nrcelldu.yang | 239 +++++++++- yang-models/_3gpp-nr-nrm-rimrsset.yang | 497 ++++++++++++++++++++ 4 files changed, 846 insertions(+), 34 deletions(-) create mode 100755 yang-models/_3gpp-nr-nrm-rimrsset.yang diff --git a/yang-models/_3gpp-common-yang-types.yang b/yang-models/_3gpp-common-yang-types.yang index d5371e347..9100fd619 100755 --- a/yang-models/_3gpp-common-yang-types.yang +++ b/yang-models/_3gpp-common-yang-types.yang @@ -13,6 +13,7 @@ module _3gpp-common-yang-types { network slicing."; reference "3GPP TS 28.541"; + revision 2021-11-01 { reference "CR-0141"; } revision 2021-09-30 { description "Added Longitude, Latitude, TenthOfDegrees, OnOff."; reference "CR-0138"; @@ -42,6 +43,13 @@ module _3gpp-common-yang-types { reference "Initial version."; } + typedef EnabledDisabled { + type enumeration { + enum DISABLED ; + enum ENABLED ; + } + } + typedef TenthOfDegrees { type uint16 { range 0..3600; diff --git a/yang-models/_3gpp-nr-nrm-gnbdufunction.yang b/yang-models/_3gpp-nr-nrm-gnbdufunction.yang index f69c62299..c52250c6d 100755 --- a/yang-models/_3gpp-nr-nrm-gnbdufunction.yang +++ b/yang-models/_3gpp-nr-nrm-gnbdufunction.yang @@ -7,30 +7,131 @@ module _3gpp-nr-nrm-gnbdufunction { import _3gpp-common-managed-element { prefix me3gpp; } import _3gpp-common-top { prefix top3gpp; } import _3gpp-nr-nrm-rrmpolicy { prefix nrrrmpolicy3gpp; } + import _3gpp-common-yang-types { prefix types3gpp; } organization "3GPP SA5"; + contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; description "Defines the YANG mapping of the GNBDUFunction Information Object Class (IOC) that is part of the NR Network Resource Model (NRM)."; reference "3GPP TS 28.541 5G Network Resource Model (NRM)"; + revision 2021-10-28 { reference CR-0607 ; } revision 2021-04-30 { reference CR-0490 ; } revision 2020-10-02 { reference CR-0384 ; } revision 2020-03-12 { reference "SP-200233 S5-201547" ; } revision 2020-02-14 { reference S5-20XXXX ; } revision 2019-10-28 { reference S5-193518 ; } - revision 2019-08-21 { - description "Initial revision."; - } + revision 2019-08-21 {reference "Initial revision."; } feature DRACHOptimizationFunction { - description "Classs representing D-SON function of RACH optimization -feature"; + description "Class representing D-SON function of RACH optimization + feature"; + } + + grouping RimRSReportInfoGrp { + description "This data type defines necessary reporting information + derived from the detected RIM-RS, including + 1) The detected set ID; + 2) Propagation delay in number of OFDM symbols + 3) Functionality of the RS (RS-1 or RS-2, Enough or Not enough + mitigation for RS-1). + + RS-1 is equivalent to RIM-RS type 1 (see 38.211, subclause 7.4.1.6). + RS-2 is equivalent to RIM-RS type 2 (see 38.211, subclause 7.4.1.6). + Enough mitigation for RS-1 means 'Enough' / 'Not enough' indication + functionality is enabled for RIM RS-1 and RIM-RS type 1 is used to + indicate 'enough mitigation' functionality. + Not enough mitigation for RS-1 means 'Enough' / 'Not enough' indication + functionality is enabled for RIM RS-1 and RIM-RS type 1 is used to + indicate 'Not enough mitigation' functionality."; + + leaf detectedSetID { + type uint32 ; + description "Set ID of the detected RIM-RS + allowedValues: 0,1...max{totalnrofSetIdofRS1, totalnrofSetIdofRS2}"; + } + + leaf propagationDelay { + type uint32 ; + must '. <= ../../maxPropagationDelay' { + error-message "allowedValues: 0, 1.. maxPropagationDelay"; + } + description "This attribute indicates the propagation delay of the + detected RIM-RS, in number of OFDM symbol."; + } + + leaf functionalityOfRIMRS { + type enumeration { + enum RS1; + enum RS2; + enum RS1_FOR_ENOUGH_MITIGATION; + enum RS1_FOR_NOT_ENOUGH_MITIGATION; + } + mandatory true; + description "Indicates the functionality of the detected RIM-RS. + If the indication of enableEnoughNotEnoughIndication is 'enabled', + valid values are {RS2, RS1forEnoughMitigation, + RS1forNotEnoughMitigation}; + If the indication of enableEnoughNotEnoughIndication is 'disabled', + valid values are {RS1, RS2}. + + RS1forEnoughMitigation means RIM-RS type 1 is used to indicate + 'enough mitigation' functionality. + RS1forNotEnoughMitigation means RIM-RS type 1 is used to indicate + 'Not enough mitigation' functionality."; + } + } + + grouping RimRSReportConfGrp { + description "Defines RIM-RS reporting configuration"; + + leaf reportIndicator { + type types3gpp:EnabledDisabled; + default DISABLED; + description "Used to enable or disable the RS report on a gNB. + If the indication is 'enable', the gNB starts to periodically report + necessary information derived from the detected RIM-RS to OAM. + If the indication is 'disable', the gNB stops reporting."; + } + + leaf reportInterval { + type uint32; + mandatory true; + units ms; + description "Used to define reporting interval of a gNB in ms."; + } + + leaf nrofRIMRSReportInfo { + type uint32; + mandatory true; + description "Used to define the maximum number of RIMRSReportInfo in + a single report."; + } + + leaf maxPropagationDelay { + type uint32 { + range "0..327679"; + } + mandatory true; + description "Used to define the maximum reported OFDM symbol number for + the propagation delay of the detected RIM-RS in each RIMRSReportInfo. + + allowedValues: 0, 1..20**2*maxNrofSymbols-1, where maxNrofSymbols=14."; + } + + list RimRSReportInfoList { + key detectedSetID; + description "Represents a list (the length of the list is + nrofRIMRSReportInfo) of necessary information derived from the + detected RIM-RS."; + uses RimRSReportInfoGrp; + } } grouping GNBDUFunctionGrp { description "Represents the GNBDUFunction IOC."; reference "3GPP TS 28.541"; - uses mf3gpp:ManagedFunctionGrp; + uses mf3gpp:ManagedFunctionGrp; uses nrrrmpolicy3gpp:RRMPolicy_Grp; leaf gNBId { @@ -54,26 +155,21 @@ feature"; description "Uniquely identifies the DU at least within a gNB."; reference "3GPP TS 38.473"; } - + leaf gNBDUName { type string { length "1..150"; } description "Identifies the Distributed Unit of an NR node"; reference "3GPP TS 38.473"; - } - - leaf aggressorSetID { - type uint32 { range "0..4194304"; } - config false; - description "Indicates the associated aggressor gNB Set ID of the cell - Valid when Remote Interference Management function is supported."; - reference "3GPP TS 38.211 subclause 7.4.1.6"; } - leaf victimSetID { - type uint32 { range "0..4194304"; } + + list rimRSReportConf { + key reportInterval; config false; - description "Indicates the associated victim gNB Set ID of the cell - Valid when Remote Interference Management function is supported."; - reference "3GPP TS 38.211 subclause 7.4.1.6"; + min-elements 1; + max-elements 1; + description "Used to configure gNBs to report the all necessary + information derived from the detected RIM-RS to OAM."; + uses RimRSReportConfGrp; } } diff --git a/yang-models/_3gpp-nr-nrm-nrcelldu.yang b/yang-models/_3gpp-nr-nrm-nrcelldu.yang index 7869934b1..0cb6dce0c 100755 --- a/yang-models/_3gpp-nr-nrm-nrcelldu.yang +++ b/yang-models/_3gpp-nr-nrm-nrcelldu.yang @@ -10,6 +10,7 @@ module _3gpp-nr-nrm-nrcelldu { import _3gpp-nr-nrm-gnbdufunction { prefix gnbdu3gpp; } import _3gpp-nr-nrm-rrmpolicy { prefix nrrrmpolicy3gpp; } import _3gpp-5g-common-yang-types { prefix types5g3gpp; } + import ietf-yang-types { prefix yang; } organization "3GPP SA5"; @@ -18,6 +19,7 @@ module _3gpp-nr-nrm-nrcelldu { Class (IOC) that is part of the NR Network Resource Model (NRM)."; reference "3GPP TS 28.541 5G Network Resource Model (NRM)"; + revision 2021-10-28 { reference CR-0607 ; } revision 2021-01-25 { reference CR-0454 ; } revision 2020-11-25 { reference CR-0386 ; } revision 2020-11-05 { reference CR-0412 ; } @@ -37,6 +39,45 @@ module _3gpp-nr-nrm-nrcelldu { PCI configuration feature"; } + grouping NPNIdentityGrp { + description "Represents the NPN supported by the <> using this + <> as one of its attributes in case of the cell is a + NPN-only cell."; + + list plmnid { + key "mcc mnc"; + min-elements 1; + description "PLMNId"; + uses types3gpp:PLMNId; + } + + leaf cAGIdList { + type string; + mandatory true; + description "It identifies a CAG list containing up to 12 CAG-identifiers + per PLMN Identity, see TS 38.331. + + CAG is used for the PNI-NPNs to prevent UE(s), which are not allowed + to access the NPN via the associated cell(s), from automatically + selecting and accessing the associated CAG cell(s). + + CAG ID is used to combine with PLMN ID to identify a PNI-NPN. + + Exist if the cell is a NPN-only cell see TS 38.331"; + } + + leaf nIDList { + type string; + mandatory true; + description "It identifies a list of NIDs containing up to 12 NIDs per + PLMN Identity, see TS 38.331. + + NID is used to combine with PLMN ID to identify an SNPN. + + Exist if the cell is a NPN-only cell see TS 38.331"; + } + } + grouping NRCellDUGrp { description "Represents the NRCellDU IOC."; reference "3GPP TS 28.541"; @@ -90,6 +131,18 @@ module _3gpp-nr-nrm-nrcelldu { uses types5g3gpp:PLMNInfo; } + list nPNIdentityList { + key idx ; + min-elements 1; + ordered-by user; + description "It defines which NPNs that can be served by the NR cell, + and which CAG IDs or NIDs can be supported by the NR cell for + corresponding PNI-NPN or SNPN in case of the cell is NPN-only cell."; + reference "3GPP TS 38.331"; + leaf idx { type uint32 ; } + uses NPNIdentityGrp; + } + leaf nRPCI { description "The Physical Cell Identity (PCI) of the NR cell."; reference "3GPP TS 36.211"; @@ -132,19 +185,122 @@ module _3gpp-nr-nrm-nrcelldu { units MHz; } - leaf bSChannelBwUL { - description "Base station channel bandwidth for uplink."; - reference "3GPP TS 38.104"; - type int32; - units MHz; - } + leaf rimRSMonitoringStartTime { + type yang:date-and-time ; + mandatory true; + description "Configures the UTC time when the gNB attempts to start + RIM-RS monitoring."; + } + + leaf rimRSMonitoringStopTime { + type yang:date-and-time ; + mandatory true; + description "Configures the UTC time when the gNB stops RIM-RS + monitoring."; + } + + leaf rimRSMonitoringWindowDuration { + type uint32 { + range 1..16384 ; + } + mandatory true; + description "Configures a duration of the monitoring window in which + gNB monitors the RIM-RS, in unit of P_t, where P_t is the RIM-RS + transmission periodicity in units of uplink-downlink switching period ( + see 38.211 subclause 7.4.1.6). - leaf bSChannelBwSUL { - description "Base station channel bandwidth for supplementary uplink."; - reference "3GPP TS 38.104"; - type int32; - units MHz; - } + This field is configured together with rimRSMonitoringInterval, + rimRSMonitoringWindowStartingOffset, rimRSMonitoringOccasionInterval + and rimRSMonitoringOccasionStartingOffset. + The duration of the monitoring window is expected to be larger than + or equal to M*P_t, where M is the interval between adjacent monitoring + occasions within the monitoring window + (configured by rimRSMonitoringInterval). + The absolute duration of the monitoring window is not expected to be + larger than the periodicity of the monitoring window (configured by + rimRSMonitoringWindowPeriodicity). + + See 3GPP TS 28.541 attribute descrition rimRSMonitoringWindowDuration + for the exact math formulas. + + Only the earliest N_T consecutive detection durations in each RIM-RS + transmission periodicity (P_t) in the monitoring window are taken as + valid time for monitoring potential interference, and they are + consecutively monitored in the monitoring window, while the residual + part of each RIM-RS transmission periodicity is not used for + discovering potential interference, where, a consecutive detection + duration spans P1*R1 (if only P1 is configured) or ((P1+P2))/2*R1 ( + if both P1 and P2 are configured), where, + R1 is the number of consecutive uplink-downlinkswitching periods + for RS-1 (configured by nrofConsecutiveRIMRS1), + P1 is the first uplink-downlinkswitching period (configured by + dlULSwitchingPeriod1), + P2 is the second uplink-downlink switching period (configured by + dlULSwitchingPeriod2), and + N_T= + ((N_setID # RIM,1)/(N_f # RI N_s # RIM,1) + if enableEnoughNotEnoughIndication is 'disable' + + (2N_setID # RIM,1)/(N_f # RIM N_s # RIM,1) + if enableEnoughNotEnoughIndication is 'enable' + + N_setID # 'RIM,1' is the total number of set IDs for RIM RS-1 + (configured by totalnrofSetIdofRS1), + N_f # RIM is the number of candidate frequency resources in the whole + network (configured by nrofGlobalRIMRSFrequencyCandidates), and + N_s # 'RIM,1' is the number of candidate sequences assigned for + RIM RS-1 (configured by nrofRIMRSSequenceCandidatesofRS1)."; + } + + leaf rimRSMonitoringWindowStartingOffset { + type uint8 { + range 0..23 ; + } + mandatory true; + units hours; + description "Configures the start offset of the first monitoring window + within one day, in unit of hours."; + } + + leaf rimRSMonitoringWindowPeriodicity { + type uint8 { + range 1|2|3|4|6|8|12|24 ; + } + units hours; + mandatory true; + description "Configures the periodicity of the monitoring window, in + unit of hours"; + } + + leaf rimRSMonitoringOccasionInterval { + type uint32 { + range 1..max ; + } + mandatory true; + description "Configures the interval between adjacent monitoring + occasions (M) within the monitoring window, in unit of consecutive + detection duration. + M is expected to be prime to N_T, where N_T is given in above + attribute rimRSMonitoringWindowDuration. + allowedValues: 1,2..N_T-1"; + } + + leaf rimRSMonitoringOccasionStartingOffset { + type uint32 ; + mandatory true; + description "Configures the start offset of the first monitoring occasions + within the monitoring window (S_M), in unit of consecutive detection + duration. + gNB starts monitoring potential interference from the S_M-th consecutive + detection duration in the first complete RIM-RS transmission + periodicity (P_t) within the monitoring window. + + allowedValues: 0,1,2..M-1 + + where M is the the interval between adjacent monitoring occasions + within the monitoring window + (configured by rimRSMonitoringOccasionInterval)"; + } leaf ssbFrequency { description "Indicates cell defining SSB frequency domain position. @@ -193,6 +349,20 @@ module _3gpp-nr-nrm-nrcelldu { units "subframes (ms)"; } + leaf bSChannelBwUL { + description "Base station channel bandwidth for uplink."; + reference "3GPP TS 38.104"; + type int32; + units MHz; + } + + leaf bSChannelBwSUL { + description "Base station channel bandwidth for supplementary uplink."; + reference "3GPP TS 38.104"; + type int32; + units MHz; + } + leaf-list nRSectorCarrierRef { description "Reference to corresponding NRSectorCarrier instance."; min-elements 1; @@ -208,13 +378,54 @@ module _3gpp-nr-nrm-nrcelldu { description "Reference to corresponding NRFrequency instance."; type types3gpp:DistinguishedName; } + + leaf victimSetRef { + type types3gpp:DistinguishedName; + mandatory true; + description "DN of a victim Set (RimRSSet) + Implemented if RIM feature is supported"; + } + + leaf aggressorSetRef { + type types3gpp:DistinguishedName; + mandatory true; + description "DN of an aggressor Set (RimRSSet)"; + } } augment "/me3gpp:ManagedElement/gnbdu3gpp:GNBDUFunction" { list NRCellDU { - description "Represents the information of a cell known by DU."; - reference "3GPP TS 28.541"; + description "This IOC represents the part of NR cell information that + describes s the specific resources instances. + + An NR cell transmits SS/PBCH block and always requires downlink + transmission at a certain carrier frequency with a certain channel + bandwidth. Transmission may be performed from multiple sector-carriers + using different transmission points, and these may be configured with + different carrier frequencies and channel bandwidths, as long as they + are aligned to the cell's downlink resource grids as defined in + subclause 4.4 in TS 38.211. The values of arfcnDL and bSChannelBwDL + attributes define the resource grids which each sector-carrier needs to + be aligned to. See subclauses 5.3 and 5.4.2 of TS 38.104 for definitions + of BS channel bandwidth and NR-ARFCN, respectively. + + An NR cell requires an uplink in order to provide initial access. In + case of TDD, the values of arfcnUL and bSChannelBwUL have to always be + set to the same values as for the corresponding DL attributes. For both + FDD and TDD, the arfcnUL and bSChannelBwUL define uplink resource grids + to which each sector-carrier needs to align to. + + An NR cell can in addition be configured with a supplementary uplink, + which has its own arfcnSUL and bSChannelBwSUL, which define resource + grids for supplementary uplink sector-carriers. + + Each of downlink, uplink and supplementary uplink (if configured) need + an initial bandwidth part (BWP), which defines resources to be used by + UEs during and immediately after initial access. Additional BWPs can be + either configured or calculated by gNB internally and be applied to UEs + dynamically by gNB based on e.g. UE capability and bandwidth need of + each UE."; key id; uses top3gpp:Top_Grp; container attributes { diff --git a/yang-models/_3gpp-nr-nrm-rimrsset.yang b/yang-models/_3gpp-nr-nrm-rimrsset.yang new file mode 100755 index 000000000..9f285a623 --- /dev/null +++ b/yang-models/_3gpp-nr-nrm-rimrsset.yang @@ -0,0 +1,497 @@ +module _3gpp-nr-nrm-rimrsset { + yang-version 1.1; + namespace "urn:3gpp:sa5:_3gpp-nr-nrm-rimrsset"; + prefix "rrsset3gpp"; + + import _3gpp-common-subnetwork { prefix subnet3gpp; } + import _3gpp-common-top { prefix top3gpp; } + import _3gpp-common-yang-types { prefix types3gpp; } + + organization "3GPP SA5"; + contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; + description "Defines the YANG mapping of the RimRSSet Information Object + Class (IOC) that is part of the NR Network Resource Model (NRM)."; + reference "3GPP TS 28.541 5G Network Resource Model (NRM)"; + + revision 2021-10-28 { reference CR-0607 ; } + + grouping FrequencyDomainParaGrp { + description "Configuration parameters of frequency domain resource to + support RIM RS. "; + + leaf rimRSSubcarrierSpacing { + type uint8 { + range 0|1 ; + } + mandatory true; + description + "It is the subcarrier spacing configuration (u) for the RIM-RS. + Subcarrier spacing delta-f=2^u*15 kHz. (see 38.211 subclause 5.3.3)."; + } + + leaf rIMRSBandwidth { + type uint8 { + range 1..96 ; + } + mandatory true; + description "It is the bandwidth of the RIM-RS in resource blocks + (see 38.211 subclause 5.3.3). + For carrier bandwidth larger than 20MHz, this attribute should be + 96 if subcarrier spacing is15kHz + 48 or 96 if subcarrier spacing is 30kHz + For carrier bandwidth smaller than or equal to 20MHz, this attribute + should be + Minimum of {96 , bandwidth of downlink carrier in number of PRBs} if + subcarrier spacing is15kHz + Minimum of {48, bandwidth of downlink carrier in number of PRBs } if + subcarrier spacing is 30kHz"; + } + + leaf nrofGlobalRIMRSFrequencyCandidates { + type uint8 { + range 1|2|4 ; + } + mandatory true; + description "The number of candidate frequency resources in the whole + network (N_f^RIM ) (see 38.211 subclause 7.4.1.6)."; + } + + leaf-list rimRSCommonCarrierReferencePoint { + type int32 ; + } + + leaf rimRSStartingFrequencyOffsetIdList { + type uint32 { + range 0..550; + } + must 'count(.) = ../nrofGlobalRIMRSFrequencyCandidates' { + error-message + "The multiplicity must be equal to nrofGlobalRIMRSFrequencyCandidates"; + } + description "List of configured frequency offsets in units of resource + blocks, where each element is the frequency offset relative to a + configured reference point for RIM-RS. The size of the list is + nrofGlobalRIMRSFrequencyCandidates and the resulting frequency resource + blocks of RIM-RS corresponding to different configured frequency offset + have no overlapping bandwidth. (see 38.211 subclause 7.4.1.6). + + allowedValues: 0..maxNrofPhysicalResourceBlocks-1 where + maxNrofPhysicalResourceBlocks = 550"; + } + } + + grouping SequenceDomainParaGrp { + description "Configuration parameters of sequence domain resource to + support RIM RS. "; + + leaf nrofRIMRSSequenceCandidatesofRS1 { + type uint8 { + range 1..8 ; + } + mandatory true; + description "The number of candidate sequences assigned for RIM RS-1 + (N_s^RIM,1) (see 38.211 [subclause 7.4.1.6). It should be even when + enableEnoughNotEnoughIndication for RS-1 is ON"; + } + + leaf-list rimRSScrambleIdListofRS1 { + type uint32 { + range 0..1023 ; + } + must 'count(.) = ../nrofRIMRSSequenceCandidatesofRS1' { + error-message + "The multiplicity must be equal to nrofRIMRSSequenceCandidatesofRS1"; + } + description "List of configured scrambling identities for RIM RS-1 ( + see 38.211 [subclause 7.4.1.6). The size of the list is + nrofRIMRSSequenceCandidatesofRS1."; + } + + leaf nrofRIMRSSequenceCandidatesofRS2 { + type uint8 { + range 1..8 ; + } + mandatory true; + description "The number of candidate sequences assigned for RIM RS-2 + (N_s^RIM,2) (see 38.211 subclause 7.4.1.6)."; + } + + leaf rimRSScrambleIdListofRS2 { + type uint32 { + range 0..1023 ; + } + must 'count(.) = ../nrofRIMRSSequenceCandidatesofRS2' { + error-message + "The multiplicity must be equal to nrofRIMRSSequenceCandidatesofRS2"; + } + description "List of configured scrambling identities for RIM RS-2 ( + see 38.211 subclause 7.4.1.6). + The size of the list is nrofRIMRSSequenceCandidatesofRS2."; + } + + leaf enableEnoughNotEnoughIndication { + type types3gpp:EnabledDisabled; + default DISABLED; + description "It is indication of whether 'Enough'/'Not enough' indication + functionality is enabled for RIM RS-1 (see 38.211 subclause 7.4.1.6). + + If the indication is 'ENABLED', the first half of + nrofRIMRSSequenceCandidatesofRS1 sequences indicates 'Not enough + mitigation', and the second half indicates 'Enough mitigation', where, + 'Enough mitigation' indicates that IoT going back to certain level at + victim side and/or no further interference mitigation actions are + needed at aggressor side + 'Not enough mitigation' indicates that IoT exceeding certain level at + victim side and/or further interference mitigation actions are needed + at aggressor side + + enableEnoughNotEnoughIndication is equivalent to EnoughIndication + (see 38.211 subclause 7.4.1.6)"; + } + + leaf RIMRSScrambleTimerMultiplier { + type uint32 { + range 0..2147483647; + } + mandatory true; + description "It is parameter multiplier factor gamma for initialization + seed of the pseudo-random sequence c~(i) + (see 38.211 subclause 7.4.1.6.2). + allowedValues: 0,1...2^31-1"; + } + + leaf RIMRSScrambleTimerOffset { + type uint32 { + range 0..2147483647; + } + mandatory true; + description "It is parameter offset delta for initialization seed of + the pseudo-random sequence c~(i) (see 38.211 subclause 7.4.1.6.2). + allowedValues: 0,1...2^31-1"; + } + } + + grouping TimeDomainParaGrp { + description "Configuration parameters of time domain resource to + support RIM RS. "; + + leaf dlULSwitchingPeriod1 { + type enumeration { + enum MS0P5; + enum MS0P625; + enum MS1; + enum MS1P25; + enum MS2; + enum MS2P5; + enum MS3; + enum MS4; + enum MS5; + enum MS10; + enum MS20; + } + mandatory true; + description "This attribute is used to configure the first uplink-downlink + switching period (P1) for RIM RS transmission in the network, where one + RIM RS is configured in one uplink-downlink switching period. + (see 38.211 subclause 7.4.1.6). + + When only one TDD-UL-DL-Pattern is configured, only + dl-UL-SwitchingPeriod1 is configured, where P1 equals to the + transmission periodicity of the TDD-UL-DL-Pattern. + When two concatenated TDD-UL-DL-Patterns are configured, and RIM-RS + resources is configured only in one of the TDD patterns, only + dl-UL-SwitchingPeriod1 is configured, where P1 equals to the addition + of the concatenated transmission periodicity of the two + TDD-UL-DL-Patterns. + When two concatenated TDD-UL-DL-Patterns are configured, and RIM-RS + resources are configured in both TDD patterns, both + dl-UL-SwitchingPeriod1 and dl-UL-SwitchingPeriod2 are configured, + where P1 equals to the transmission periodicity of the first + TDD-UL-DL-Pattern. + + P1 is equivalent to T_(per,1)^RIM (see 38.211, subclause 7.4.1.6). + + allowedValues: + MS0P5, MS0P625, MS1, MS1P25, MS2, MS2P5, MS4, MS5, MS10, MS20, + if a single uplink-downlink period is configured for RIM-RS purposes; + MS0P5, MS0P625, MS1, MS1P25, MS2, MS2P5, MS3, MS4, MS5, MS10, MS20, + if two uplink-downlink periods are configured for RIM-RS purposes."; + } + + leaf symbolOffsetOfReferencePoint1 { + type uint32 { + range 2..327679 ; + } + mandatory true; + description "This attribute is used to configure the reference point in + the first uplink-downlink switching period, which is the symbols offset + of the reference point after the starting boundary of the first + uplink-downlink switching period. It's Configured together with + dl-UL-SwitchingPeriod1 (see 38.211 subclause 7.4.1.6). + + When only one TDD-UL-DL-Pattern is configured, the reference point + configured for the first uplink-downlink switching period is the DL + transmission boundary of the TDD-UL-DL-Pattern. + When two concatenated TDD-UL-DL-Patterns are configured, and RIM-RS + resources is configured only in one of the TDD patterns, the reference + point configured for the first uplink-downlink switching period is the + DL transmission boundary of the TDD-UL-DL-Pattern where the RIM-RS + resource is configured. + When two concatenated TDD-UL-DL-Patterns are configured, and RIM-RS + resources are configured in both TDD patterns, the reference points + configured for first uplink-downlink switching period is the DL + transmission boundary of the first TDD-UL-DL-Pattern. + + allowedValues: 2, 3..20*2*maxNrofSymbols-1, where maxNrofSymbols=14"; + } + + leaf dlULSwitchingPeriod2 { + type enumeration { + enum MS0P5; + enum MS0P625; + enum MS1; + enum MS1P25; + enum MS2; + enum MS2P5; + enum MS3; + enum MS4; + enum MS5; + enum MS10; + } + mandatory true; + description "Used to configure the second uplink-downlink switching + period (P2) for RIM RS transmission in the network, where one RIM RS is + configured in one uplink-downlink switching period + (see 38.211 subclause 7.4.1.6). + + When two concatenated TDD-UL-DL-Patterns are configured, and RIM-RS + resources are configured in both TDD patterns, both + dl-UL-SwitchingPeriod1 and dl-UL-SwitchingPeriod2 are configured, + where P2 equals to the transmission periodicity of the second + TDD-UL-DL-Pattern, and where (P1 + P2) divides 20 ms. + + allowedValues: MS0P5, MS0P625, MS1, MS1P25, MS2, MS2P5, MS3, MS4, MS5, + MS10 + + P2 is equivalent to T_(per,2)^RIM (see 38.211 subclause 7.4.1.6)"; + } + + leaf symbolOffsetOfReferencePoint2 { + type uint32 { + range 2..327679 ; + } + mandatory true; + description "This attribute is used to configure the reference point in + the second uplink-downlink switching period, which is the symbol offset + of the reference point after starting boundary of the second + uplink-downlink switching period. Configured together with + dl-UL-SwitchingPeriod2 (see 38.211 subclause 7.4.1.6). + When two concatenated TDD-UL-DL-Patterns are configured, and RIM-RS + resources are configured in both TDD patterns, the reference points + configured for second uplink-downlink switching period is the + DL transmission boundary of the second TDD-UL-DL-Pattern. + + allowedValues: 2, 3..20*2*maxNrofSymbols-1, where maxNrofSymbols=14"; + } + + leaf totalnrofSetIdofRS1 { + type uint32 { + range 0..4194303 ; + } + mandatory true; + description "It is the total number of set IDs for RIM RS-1 + (N_setID ^RIM,1) (see 38.211 subclause 7.4.1.6). + + allowedValues: 0,1...2^22-1"; + } + + leaf totalnrofSetIdofRS2 { + type uint32 { + range 0..4194304 ; + } + mandatory true; + description "It is the total number of set IDs for RIM RS-2 + (N_setID^RIM,2) (see 38.211 subclause 7.4.1.6). + + allowedValues: 0,1...2^22"; + } + + leaf nrofConsecutiveRIMRS1 { + type uint8 { + range 1|2|4|8 ; + } + mandatory true; + description "It is the number of consecutive uplink-downlink switching + periods for RS-1 (R1) for repetition/near-far indication:. + (see 38.211 subclause 7.4.1.6). + + allowedValues: 1,2,4,8"; + } + + leaf nrofConsecutiveRIMRS2 { + type uint8 { + range 1|2|4|8 ; + } + mandatory true; + description "It is the number of consecutive uplink-downlink switching + periods for RS-2 (R2) for repetition/near-far indication. + (see 38.211 subclause 7.4.1.6). + + allowedValues: 1,2,4,8"; + } + + leaf-list consecutiveRIMRS1List { + type uint32 { + range 2..327679 ; + } + description "It is used to configure the OFDM symbol position(s) of RIM + RS-1 within the uplink-downlink switching period. It is a list of symbol + offset of RIM RS-1 (N_symb,ref^(RIM,1)) before the reference point. + The size of the list is nrofConsecutiveRIMRS1 + (see 38.211 subclause 7.4.1.6). + The resulting RIM RS-1 symbols and its reference point shall belong to + the same 10ms frame. + + allowedValues: 2,3..20*2**maxNrofSymbols-1, where maxNrofSymbols=14"; + } + + leaf-list consecutiveRIMRS2List { + type uint32 { + range 2..327679 ; + } + description "It is used to configure the OFDM symbol position(s) of + RIM RS-2 within the uplink-downlink switching period. It is a list of + symbol offset of RIM RS-2 (N_symb,ref^(RIM,2)) before the reference + point. The size of the list is nrofConsecutiveRIMRS2 + (see 38.211 subclause 7.4.1.6). + The resulting RIM RS-2 symbols and its reference point shall belong to + the same 10ms frame. + + allowedValues: 2,3..20*2**maxNrofSymbols-1, where maxNrofSymbols=14"; + } + + leaf enablenearfarIndicationRS1 { + type types3gpp:EnabledDisabled; + default DISABLED; + description "It is indication of whether near-far functionality is enabled + for RIM RS1. + + If the indication is 'ENABLED', + the first half of nrofConsecutiveRIMRS1 (R1) consecutive uplink-downlink + switching period is for 'Near' indication with R1/2 repetitions, + the second half of R1 consecutive uplink-downlink switching period is + for 'Far' indication with R1/2 repetitions."; + } + + leaf enablenearfarIndicationRS2 { + type types3gpp:EnabledDisabled; + default DISABLED; + description "It is indication of whether near-far functionality is enabled + for RIM RS2. + + If the indication is 'enable', + the first half of nrofConsecutiveRIMRS2 (R2) consecutive uplink-downlink + switching period is for 'Near' indication with R2/2 repetitions, + the second half of R2 consecutive uplink-downlink switching period is + for 'Far' indication with R2/2 repetitions."; + } + } + + grouping RimRSGlobalGrp { + description "Represents the RimRSGlobal IOC."; + + list frequencyDomainPara { + key rimRSSubcarrierSpacing; + min-elements 1; + max-elements 1; + description "Configuration parameters of frequency domain resource to + support RIM RS. "; + uses FrequencyDomainParaGrp; + } + + list sequenceDomainPara { + key nrofRIMRSSequenceCandidatesofRS1; + min-elements 1; + max-elements 1; + description "Configuration parameters of sequence domain resource to + support RIM RS. "; + uses SequenceDomainParaGrp; + } + + list timeDomainPara { + key dlULSwitchingPeriod1; + min-elements 1; + max-elements 1; + description "Configuration parameters of time domain resource to + support RIM RS. "; + uses TimeDomainParaGrp; + } + } + + grouping RimRSSetGrp { + description "Represents the RimRSSet IOC."; + + leaf setId { + type uint32 { + range 0..4194303 ; + } + mandatory true; + description "This specifies the set ID of a victim Set (RIM-RS1 Set) or + aggressor Set (RIM-RS2 set). (See subclause 7.4.1.6 in TS 38.211). + + allowedValues: The bit length of the set ID is maximum 22bit."; + } + + leaf setType { + type enumeration { + enum RS1; + enum RS2; + } + mandatory true; + description "The attribute specifies type of a RIM-RS Set . + RIM RS1 is generated and transmitted by victim to indicate its suffering + remote interference, and RIM RS2 is generated and transmitted by + aggressor to measure if Remote Interference still exist + + If the attribute value is 'RS1', the RIM-RS Set is victim set. + If the attribute value is 'RS2', the RIM-RS Set is aggressor set."; + } + + leaf-list nRCellDURef { + type types3gpp:DistinguishedName; + config false; + description "This attribute contains the DN of a NR Cell (NRCellDU)"; + } + } + + augment "/subnet3gpp:SubNetwork" { + list RimRSGlobal { + description "Represents global/common Remote Interference Management (RIM) + Reference Signal (RS) resource allocated for the whole network. + Resource for RIM-RS transmission is defined by Sequence domain resource, + Time domain resource and Frequency resource. The configure parameters + of the RIM RS resource are applied to all Sets of RIM RS Resource + across gNBs/cells in the network."; + key id; + max-elements 1; + uses top3gpp:Top_Grp; + container attributes { + uses RimRSGlobalGrp; + } + + list RimRSSet { + description "Represents aggressor or victim Set organized by OAM. + The RIM RS Resource is assigned to each Set, which is identified by + triple indices set of +