diff --git a/OpenAPI/README.md b/OpenAPI/README.md index d1b602dc18bfbcf2ce6987b0f7339e34371d0671..5a86008c5d7c149b834a6ac7a8e1f679c95a6840 100644 --- a/OpenAPI/README.md +++ b/OpenAPI/README.md @@ -1,6 +1,6 @@ # 3GPP SA5 models and MnS OpenAPI definitions -(c) 2020, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). All rights reserved. +(c) 2023, 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: diff --git a/OpenAPI/TS28104_MdaNrm.yaml b/OpenAPI/TS28104_MdaNrm.yaml index b74804c5e46cb48357410b41d6c2c9612b4ecbae..2626a5bfe6ba9fe73e6825b633772222ec8e5d9c 100644 --- a/OpenAPI/TS28104_MdaNrm.yaml +++ b/OpenAPI/TS28104_MdaNrm.yaml @@ -1,10 +1,10 @@ openapi: 3.0.1 info: title: MDA NRM - version: 17.0.0 + version: 17.4.0 description: >- OAS 3.0.1 specification of the MDA NRM - © 2020, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). + © 2023, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). All rights reserved. externalDocs: description: 3GPP TS 28.104; MDA @@ -43,11 +43,9 @@ components: filterValue: type: string threshold: - $ref: 'TS28623_GenericNrm.yaml#/components/schemas/ThresholdInfo' + $ref: '#/components/schemas/ThresholdInfo' analyticsPeriod: - type: array - items: - $ref: 'TS28623_ComDefs.yaml#/components/schemas/DateTime' + $ref: '#/components/schemas/AnalyticsSchedule' timeOut: $ref: 'TS28623_ComDefs.yaml#/components/schemas/DateTime' @@ -61,7 +59,7 @@ components: ReportingTarget: $ref: 'TS28623_ComDefs.yaml#/components/schemas/Uri' - AnalyticsScope: + AnalyticsScopeType: oneOf: - type: object properties: @@ -70,32 +68,43 @@ components: - type: object properties: areaScope: - $ref: '#/components/schemas/GeoAreaList' - - GeoAreaList: - type: array - items: - $ref: '#/components/schemas/GeoArea' + $ref: 'TS28623_ComDefs.yaml#/components/schemas/GeoArea' - GeoArea: - type: object - properties: - coordinates: - type: array - items: - $ref: '#/components/schemas/Coordinate' - altitude: - type: number - format: float + AnalyticsSchedule: + oneOf: + - type: object + properties: + timeDurations: + type: array + items: + $ref: 'TS28104_MdaReport.yaml#/components/schemas/TimeWindow' + - type: object + properties: + granularityPeriod: + type: integer - Coordinate: + ThresholdInfo: type: object properties: - latitude: - $ref: 'TS28623_ComDefs.yaml#/components/schemas/Latitude' - longitude: - $ref: 'TS28623_ComDefs.yaml#/components/schemas/Longitude' - + monitoredMDAOutputIE: + type: string + thresholdDirection: + type: string + enum: + - UP + - DOWN + - UP_AND_DOWN + thresholdValue: + oneOf: + - type: integer + - $ref: 'TS28623_ComDefs.yaml#/components/schemas/Float' + hysteresis: + oneOf: + - type: integer + minimum: 0 + - type: number + format: float + minimum: 0 #-------- Definition of abstract IOCs -------------------------------------------- @@ -170,7 +179,7 @@ components: reportingTarget: $ref: '#/components/schemas/ReportingTarget' analyticsScope: - $ref: '#/components/schemas/AnalyticsScope' + $ref: '#/components/schemas/AnalyticsScopeType' startTime: $ref: 'TS28623_ComDefs.yaml#/components/schemas/DateTime' stopTime: diff --git a/OpenAPI/TS28104_MdaReport.yaml b/OpenAPI/TS28104_MdaReport.yaml index 3f8dcf23709d25f1601bf93a9c3335d48d8ebf04..12c378fb9255778965acd555172ea1700d75bfd6 100644 --- a/OpenAPI/TS28104_MdaReport.yaml +++ b/OpenAPI/TS28104_MdaReport.yaml @@ -1,10 +1,10 @@ openapi: 3.0.1 info: title: MDA Report - version: 17.0.0 + version: 17.4.0 description: >- OAS 3.0.1 specification of the MDA Report - © 2020, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). + © 2023, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). All rights reserved. externalDocs: description: 3GPP TS 28.104; MDA Report @@ -26,6 +26,11 @@ components: $ref: '#/components/schemas/MDAOutputEntry' mDARequestRef: $ref: 'TS28623_ComDefs.yaml#/components/schemas/Dn' + analyticsWindow: + $ref: '#/components/schemas/TimeWindow' + confidenceDegree: + type: number + format: float MDAOutputEntry: type: object @@ -33,19 +38,14 @@ components: mDAOutputIEName: type: string mdaOutputIEValue: {} - analyticsWindow: - $ref: '#/components/schemas/TimeWindow' - confidenceDegree: - type: number - format: float TimeWindow: type: object properties: - startTime: + mDAOutputStartTime: $ref: 'TS28623_ComDefs.yaml#/components/schemas/DateTime' - endTime: + mDAOutputEndTime: $ref: 'TS28623_ComDefs.yaml#/components/schemas/DateTime' diff --git a/OpenAPI/TS28105_AiMlNrm.yaml b/OpenAPI/TS28105_AiMlNrm.yaml index a4afbb61980a9559233a8694183f95ddd92ff75f..2ceebaf6162f646eda67146763c7d56cb2c1cba8 100644 --- a/OpenAPI/TS28105_AiMlNrm.yaml +++ b/OpenAPI/TS28105_AiMlNrm.yaml @@ -1,10 +1,10 @@ openapi: 3.0.1 info: title: AI/ML NRM - version: 17.0.0 + version: 17.4.0 description: >- OAS 3.0.1 specification of the AI/ML NRM - © 2020, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). + © 2023, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). All rights reserved. externalDocs: description: 3GPP TS 28.105; AI/ML Management @@ -15,26 +15,34 @@ components: #-------- Definition of types----------------------------------------------------- - AIMLEntityList: + MLEntityList: type: array items: - $ref: '#/components/schemas/AIMLEntity' + $ref: '#/components/schemas/MLEntity' - AIMLEntity: + MLEntity: type: object properties: - aIMLEntityId: + mLEntityId: type: string inferenceType: type: string - aIMLEntityVersion: + mLEntityVersion: type: string expectedRunTimeContext: - type: string + $ref: '#/components/schemas/MLContext' trainingContext: - type: string + $ref: '#/components/schemas/MLContext' runTimeContext: - type: string + $ref: '#/components/schemas/MLContext' + + MLContext: + type: object + properties: + inferenceEntityRef: + $ref: 'TS28623_ComDefs.yaml#/components/schemas/DnList' + dataProviderRef: + $ref: 'TS28623_ComDefs.yaml#/components/schemas/DnList' RequestStatus: type: string @@ -66,10 +74,10 @@ components: TrainingProcessMonitor: description: >- - This data type is the "ProcessMonitor" data type defined in “genericNrm.yaml” with specialisations for usage in the "AIMLTrainingProcess". + This data type is the "ProcessMonitor" data type defined in “genericNrm.yaml” with specialisations for usage in the "MLTrainingProcess". type: object properties: - aIMLTrainingProcessId: + mLTrainingProcessId: type: string status: type: string @@ -112,8 +120,8 @@ components: $ref: '#/components/schemas/SubNetwork-Multiple' ManagedElement: $ref: '#/components/schemas/ManagedElement-Multiple' - AIMLTrainingFunction: - $ref: '#/components/schemas/AIMLTrainingFunction-Multiple' + MLTrainingFunction: + $ref: '#/components/schemas/MLTrainingFunction-Multiple' ManagedElement-Single: allOf: @@ -125,10 +133,10 @@ components: - $ref: 'TS28623_GenericNrm.yaml#/components/schemas/ManagedElement-ncO' - type: object properties: - AIMLTrainingFunction: - $ref: '#/components/schemas/AIMLTrainingFunction-Multiple' + MLTrainingFunction: + $ref: '#/components/schemas/MLTrainingFunction-Multiple' - AIMLTrainingFunction-Single: + MLTrainingFunction-Single: allOf: - $ref: 'TS28623_GenericNrm.yaml#/components/schemas/Top' - type: object @@ -138,19 +146,19 @@ components: - $ref: 'TS28623_GenericNrm.yaml#/components/schemas/ManagedFunction-Attr' - type: object properties: - aIMLEntityList: - $ref: '#/components/schemas/AIMLEntityList' + mLEntityList: + $ref: '#/components/schemas/MLEntityList' - $ref: 'TS28623_GenericNrm.yaml#/components/schemas/ManagedFunction-ncO' - type: object properties: - AIMLTrainingRequest: - $ref: '#/components/schemas/AIMLTrainingRequest-Multiple' - AIMLTrainingProcess: - $ref: '#/components/schemas/AIMLTrainingProcess-Multiple' - AIMLTrainingReport: - $ref: '#/components/schemas/AIMLTrainingReport-Multiple' + MLTrainingRequest: + $ref: '#/components/schemas/MLTrainingRequest-Multiple' + MLTrainingProcess: + $ref: '#/components/schemas/MLTrainingProcess-Multiple' + MLTrainingReport: + $ref: '#/components/schemas/MLTrainingReport-Multiple' - AIMLTrainingRequest-Single: + MLTrainingRequest-Single: allOf: - $ref: 'TS28623_GenericNrm.yaml#/components/schemas/Top' - type: object @@ -159,21 +167,21 @@ components: allOf: - type: object properties: - aIMLEntityId: + mLEntityId: type: string - candidateTraingDataSource: + candidateTrainingDataSource: type: array items: type: string - traingDataQualityScore: + trainingDataQualityScore: type: number format: float trainingRequestSource: - type: string + $ref: 'TS28623_ComDefs.yaml#/components/schemas/Dn' requestStatus: $ref: '#/components/schemas/RequestStatus' expectedRuntimeContext: - $ref: 'TS28623_ComDefs.yaml#/components/schemas/DateTime' + $ref: '#/components/schemas/MLContext' performanceRequirements: $ref: '#/components/schemas/PerformanceRequirements' cancelRequest: @@ -181,7 +189,7 @@ components: suspendRequest: type: boolean - AIMLTrainingProcess-Single: + MLTrainingProcess-Single: allOf: - $ref: 'TS28623_GenericNrm.yaml#/components/schemas/Top' - type: object @@ -190,7 +198,7 @@ components: allOf: - type: object properties: - aIMLTrainingProcessId: + mLTrainingProcessId: type: string priority: type: integer @@ -208,7 +216,7 @@ components: $ref: 'TS28623_ComDefs.yaml#/components/schemas/Dn' - AIMLTrainingReport-Single: + MLTrainingReport-Single: allOf: - $ref: 'TS28623_GenericNrm.yaml#/components/schemas/Top' - type: object @@ -217,7 +225,7 @@ components: allOf: - type: object properties: - aIMLEntityId: + mLEntityId: type: string areConsumerTrainingDataUsed: type: boolean @@ -233,7 +241,14 @@ components: $ref: '#/components/schemas/ModelPerformance' areNewTrainingDataUsed: type: boolean - + trainingRequestRef: + $ref: 'TS28623_ComDefs.yaml#/components/schemas/DnList' + trainingProcessRef: + $ref: 'TS28623_ComDefs.yaml#/components/schemas/Dn' + trainingReportRef: + $ref: 'TS28623_ComDefs.yaml#/components/schemas/Dn' + lastTrainingRef: + $ref: 'TS28623_ComDefs.yaml#/components/schemas/Dn' #-------- Definition of JSON arrays for name-contained IOCs ---------------------- @@ -245,22 +260,22 @@ components: type: array items: $ref: '#/components/schemas/ManagedElement-Single' - AIMLTrainingFunction-Multiple: + MLTrainingFunction-Multiple: type: array items: - $ref: '#/components/schemas/AIMLTrainingFunction-Single' - AIMLTrainingRequest-Multiple: + $ref: '#/components/schemas/MLTrainingFunction-Single' + MLTrainingRequest-Multiple: type: array items: - $ref: '#/components/schemas/AIMLTrainingRequest-Single' - AIMLTrainingProcess-Multiple: + $ref: '#/components/schemas/MLTrainingRequest-Single' + MLTrainingProcess-Multiple: type: array items: - $ref: '#/components/schemas/AIMLTrainingProcess-Single' - AIMLTrainingReport-Multiple: + $ref: '#/components/schemas/MLTrainingProcess-Single' + MLTrainingReport-Multiple: type: array items: - $ref: '#/components/schemas/AIMLTrainingReport-Single' + $ref: '#/components/schemas/MLTrainingReport-Single' #-------- Definitions in TS 28.104 for TS 28.532 --------------------------------- @@ -270,7 +285,7 @@ components: - $ref: '#/components/schemas/SubNetwork-Single' - $ref: '#/components/schemas/ManagedElement-Single' - - $ref: '#/components/schemas/AIMLTrainingFunction-Single' - - $ref: '#/components/schemas/AIMLTrainingRequest-Single' - - $ref: '#/components/schemas/AIMLTrainingProcess-Single' - - $ref: '#/components/schemas/AIMLTrainingReport-Single' + - $ref: '#/components/schemas/MLTrainingFunction-Single' + - $ref: '#/components/schemas/MLTrainingRequest-Single' + - $ref: '#/components/schemas/MLTrainingProcess-Single' + - $ref: '#/components/schemas/MLTrainingReport-Single' diff --git a/OpenAPI/TS28312_IntentExpectations.yaml b/OpenAPI/TS28312_IntentExpectations.yaml new file mode 100644 index 0000000000000000000000000000000000000000..f641734f3ff2ecf2c4e40da15d24da66f88f247d --- /dev/null +++ b/OpenAPI/TS28312_IntentExpectations.yaml @@ -0,0 +1,641 @@ +openapi: 3.0.1 +info: + title: Scenario specific Intent Expectations + version: 17.5.0 + description: >- + OAS 3.0.1 definition of scenario specific Intent Expectations + © 2023, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). + All rights reserved. +externalDocs: + description: 3GPP TS 28.312; Intent driven management services for mobile networks + url: http://www.3gpp.org/ftp/Specs/archive/28_series/28.312/ +paths: {} +components: + schemas: + + #-------Definition of the Scenario specific IntentExpectation dataType ----------# + RadioNetworkExpectation: + description: >- + This data type is the "IntentExpectation" data type with specialisations to represent MnS consumer's expectations for radio network delivering and performance assurance + type: object + properties: + expectationId: + type: string + expectationVerb: + $ref: "TS28312_IntentNrm.yaml#/components/schemas/ExpectationVerb" + expectationObject: + $ref: "#/components/schemas/RadioNetworkExpectationObject" + expectationTargets: + type: array + items: + type: object + oneOf: + - $ref: "#/components/schemas/WeakRSRPRatioTarget" + - $ref: "#/components/schemas/LowSINRRatioTarget" + - $ref: "#/components/schemas/AveULRANUEThptTarget" + - $ref: "#/components/schemas/AveDLRANUEThptTarget" + - $ref: "#/components/schemas/LowULRANUEThptRatioTarget" + - $ref: "#/components/schemas/LowDLRANUEThptRatioTarget" + - $ref: "TS28312_IntentNrm.yaml#/components/schemas/ExpectationTarget" + expectationContexts: + type: array + items: + $ref: "TS28312_IntentNrm.yaml#/components/schemas/ExpectationContext" + expectationfulfilmentInfo: + $ref: "TS28312_IntentNrm.yaml#/components/schemas/FulfilmentInfo" + required: + - expectationId + EdgeServiceSupportExpectation: + description: >- + This data type is the "IntentExpectation" data type with specialisations to represent MnS consumer's expectations for service deployment + type: object + properties: + expectationId: + type: string + expectationVerb: + $ref: "TS28312_IntentNrm.yaml#/components/schemas/ExpectationVerb" + expectationObject: + $ref: "#/components/schemas/EdgeServiceSupportExpectationObject" + expectationTargets: + type: array + items: + type: object + oneOf: + - $ref: "#/components/schemas/DLThptPerUETarget" + - $ref: "#/components/schemas/ULThptPerUETarget" + - $ref: "#/components/schemas/DLLatencyTarget" + - $ref: "#/components/schemas/ULLatencyTarget" + - $ref: "#/components/schemas/MaxNumberofUEsTarget" + - $ref: "#/components/schemas/ActivityFactorTarget" + - $ref: "#/components/schemas/UESpeedTarget" + - $ref: "TS28312_IntentNrm.yaml#/components/schemas/ExpectationTarget" + expectationContexts: + type: array + items: + type: object + oneOf: + - $ref: "#/components/schemas/ServiceStartTimeContext" + - $ref: "#/components/schemas/ServiceEndTimeContext" + - $ref: "#/components/schemas/UEMobilityLevelContext" + - $ref: "#/components/schemas/ResourceSharingLevelContext" + - $ref: "TS28312_IntentNrm.yaml#/components/schemas/ExpectationContext" + expectationfulfilmentInfo: + $ref: "TS28312_IntentNrm.yaml#/components/schemas/FulfilmentInfo" + required: + - expectationId + #-------Definition of the IntentExpectation dataType ----------# + + #-------Definition of the scenario specific ExpectationObject dataType ----------# + RadioNetworkExpectationObject: + description: >- + This data type is the "ExpectationObject" data type with specialisations for RadioNetworkExpectation + type: object + properties: + objectType: + type: string + enum: + - RAN_SubNetwork + objectInstance: + $ref: "TS28623_ComDefs.yaml#/components/schemas/Dn" + objectContexts: + type: array + items: + type: object + oneOf: + - $ref: "#/components/schemas/CoverageAreaPolygonContext" + - $ref: "#/components/schemas/CoverageTACContext" + - $ref: "#/components/schemas/PLMNContext" + - $ref: "#/components/schemas/NRFqBandContext" + - $ref: "#/components/schemas/RATContext" + - $ref: "TS28312_IntentNrm.yaml#/components/schemas/ObjectContext" + EdgeServiceSupportExpectationObject: + description: >- + This data type is the "ExpectationObject" data type with specialisations for EdgeServiceSupportExpectation + type: object + properties: + objectType: + type: string + enum: + - Service_Support + objectInstance: + $ref: "TS28623_ComDefs.yaml#/components/schemas/Dn" + objectContexts: + type: array + items: + type: object + oneOf: + - $ref: "#/components/schemas/EdgeIdentificationIdContext" + - $ref: "#/components/schemas/EdgeIdentificationLocContext" + - $ref: "#/components/schemas/CoverageAreaTAContext" + - $ref: "TS28312_IntentNrm.yaml#/components/schemas/ObjectContext" + #-------Definition of the ExpectationObject dataType ----------# + + + #-------Definition of the Scenario specific ExpectationTarget dataType----------# + WeakRSRPRatioTarget: + description: >- + This data type is the "ExpectationTarget" data type with specialisations for WeakRSRPRatioTarget + type: object + properties: + targetName: + type: string + enum: + - WeakRSRPRatio + targetCondition: + type: string + enum: + - IS_LESS_THAN + targetValueRange: + type: integer + minimum: 0 + maximum: 100 + targetContexts: + $ref: "#/components/schemas/WeakRSRPContext" + targetFulfilmentInfo: + $ref: "TS28312_IntentNrm.yaml#/components/schemas/FulfilmentInfo" + WeakRSRPContext: + description: >- + This data type is the "TargetContext" data type with specialisations for WeakRSRPContext + type: object + properties: + contextAttribute: + type: string + enum: + - WeakRSRPThreshold + contextCondition: + type: string + enum: + - IS_LESS_THAN + contextValueRange: + type: number + LowSINRRatioTarget: + description: >- + This data type is the "ExpectationTarget" data type with specialisations for LowSINRatioTarget + type: object + properties: + targetName: + type: string + enum: + - LowSINRRatio + targetCondition: + type: string + enum: + - IS_LESS_THAN + targetValueRange: + type: integer + minimum: 0 + maximum: 100 + targetContexts: + $ref: "#/components/schemas/LowSINRContext" + targetFulfilmentInfo: + $ref: "TS28312_IntentNrm.yaml#/components/schemas/FulfilmentInfo" + LowSINRContext: + description: >- + This data type is the "TargetContext" data type with specialisations for LowSINRContext + type: object + properties: + contextAttribute: + type: string + enum: + - LowSINRThreshold + contextCondition: + type: string + enum: + - IS_LESS_THAN + contextValueRange: + type: integer + AveULRANUEThptTarget: + description: >- + This data type is the "ExpectationTarget" data type with specialisations for AveULRANUEThptTarget + type: object + properties: + targetName: + type: string + enum: + - AveULRANUEThpt + targetCondition: + type: string + enum: + - IS_GREATER_THAN + targetValueRange: + type: integer + targetFulfilmentInfo: + $ref: "TS28312_IntentNrm.yaml#/components/schemas/FulfilmentInfo" + AveDLRANUEThptTarget: + description: >- + This data type is the "ExpectationTarget" data type with specialisations for AveDLRANUEThptTarget + type: object + properties: + targetName: + type: string + enum: + - AveDLRANUEThpt + targetCondition: + type: string + enum: + - IS_GREATER_THAN + targetValueRange: + type: integer + targetFulfilmentInfo: + $ref: "TS28312_IntentNrm.yaml#/components/schemas/FulfilmentInfo" + LowULRANUEThptRatioTarget: + description: >- + This data type is the "ExpectationTarget" data type with specialisations for LowULRANUEThptRatioTarget + type: object + properties: + targetName: + type: string + enum: + - LowULRANUEThptRatio + targetCondition: + type: string + enum: + - IS_LESS_THAN + targetValueRange: + type: integer + minimum: 0 + maximum: 100 + targetContexts: + $ref: "#/components/schemas/LowULRANUEThptContext" + targetFulfilmentInfo: + $ref: "TS28312_IntentNrm.yaml#/components/schemas/FulfilmentInfo" + LowULRANUEThptContext: + description: >- + This data type is the "TargetContext" data type with specialisations for LowULRANUEThptContext + type: object + properties: + contextAttribute: + type: string + enum: + - LowULRANUEThptThreshold + contextCondition: + type: string + enum: + - Is_less_than + contextValueRange: + type: number + LowDLRANUEThptRatioTarget: + description: >- + This data type is the "ExpectationTarget" data type with specialisations for LowDLRANUEThptRatioTarget + type: object + properties: + targetName: + type: string + enum: + - LowDLRANUEThptRatio + targetCondition: + type: string + enum: + - IS_LESS_THAN + targetValueRange: + type: integer + minimum: 0 + maximum: 100 + targetContexts: + $ref: "#/components/schemas/LowDLRANUEThptContext" + targetFulfilmentInfo: + $ref: "TS28312_IntentNrm.yaml#/components/schemas/FulfilmentInfo" + LowDLRANUEThptContext: + description: >- + This data type is the "TargetContext" data type with specialisations for LowDLRANUEThptContext + type: object + properties: + contextAttribute: + type: string + enum: + - LowDLRANUEThptThreshold + contextCondition: + type: string + enum: + - IS_LESS_THAN + contextValueRange: + type: number + DLThptPerUETarget: + description: >- + This data type is the "ExpectationTarget" data type with specialisations for DLThptPerUETarget + type: object + properties: + targetName: + type: string + enum: + - DlThptPerUE + targetCondition: + type: string + enum: + - IS_GREATER_THAN + targetValueRange: + $ref: "TS28541_SliceNrm.yaml#/components/schemas/XLThpt" + ULThptPerUETarget: + description: >- + This data type is the "ExpectationTarget" data type with specialisations for ULThptPerUETarget + type: object + properties: + targetName: + type: string + enum: + - UlThptPerUE + targetCondition: + type: string + enum: + - IS_GREATER_THAN + targetValueRange: + $ref: "TS28541_SliceNrm.yaml#/components/schemas/XLThpt" + DLLatencyTarget: + description: >- + This data type is the "ExpectationTarget" data type with specialisations for DLLatencyTarget + type: object + properties: + targetName: + type: string + enum: + - DlLatency + targetCondition: + type: string + enum: + - IS_LESS_THAN + targetValueRange: + type: integer + ULLatencyTarget: + description: >- + This data type is the "ExpectationTarget" data type with specialisations for ULLatencyTarget + type: object + properties: + targetName: + type: string + enum: + - UlLatency + targetCondition: + type: string + enum: + - IS_LESS_THAN + targetValueRange: + type: integer + MaxNumberofUEsTarget: + description: >- + This data type is the "ExpectationTarget" data type with specialisations for MaxNumberofUEsTarget + type: object + properties: + targetName: + type: string + enum: + - maxNumberofUEs + targetCondition: + type: string + enum: + - IS_LESS_THAN + targetValueRange: + type: integer + ActivityFactorTarget: + description: >- + This data type is the "ExpectationTarget" data type with specialisations for ActivityFactorTarget + type: object + properties: + targetName: + type: string + enum: + - activityFactor + targetCondition: + type: string + enum: + - IS_EQUAL_TO + targetValueRange: + type: integer + UESpeedTarget: + description: >- + This data type is the "ExpectationTarget" data type with specialisations for UESpeedTarget + type: object + properties: + targetName: + type: string + enum: + - uESpeed + targetCondition: + type: string + enum: + - IS_LESS_THAN + targetValueRange: + type: integer + #-------Definition of the concrete ExpectationTarget dataType----------# + + #-------Definition of the concrete ObjectTarget dataType----------------# + ObjectContext: + description: >- + This data type is the "ObjectContext" data type without specialisations + type: object + properties: + contextAttribute: + type: string + contextCondition: + $ref: "TS28312_IntentNrm.yaml#/components/schemas/Condition" + contextValueRange: + type: array + items: + type: number + CoverageAreaPolygonContext: + description: >- + This data type is the "ObjectContext" data type with specialisations for CoverageAreaPolygonContext + type: object + properties: + contextAttribute: + type: string + enum: + - CoverageAreaPolygon + contextCondition: + type: string + enum: + - IS_ALL_OF + contextValueRange: + type: array + items: + $ref: "#/components/schemas/CoverageArea" + CoverageArea: + type: string + CoverageTACContext: + description: >- + This data type is the "ObjectContext" data type with specialisations for CoverageTACContext + type: object + properties: + contextAttribute: + type: string + enum: + - CoverageAreaTac + contextCondition: + type: string + enum: + - IS_ALL_OF + contextValueRange: + type: array + items: + $ref: "TS28541_NrNrm.yaml#/components/schemas/NrTac" + PLMNContext: + description: >- + This data type is the "ObjectContext" data type with specialisations for PLMNContext + type: object + properties: + contextAttribute: + type: string + enum: + - PLMN + contextCondition: + type: string + enum: + - IS_ALL_OF + contextValueRange: + type: array + items: + $ref: "TS28623_ComDefs.yaml#/components/schemas/PlmnId" + NRFqBandContext: + description: >- + This data type is the "ObjectContext" data type with specialisations for NRFqBandContext + type: object + properties: + contextAttribute: + type: string + enum: + - NRFqBand + contextCondition: + type: string + enum: + - IS_ALL_OF + contextValueRange: + type: array + items: + type: string + RATContext: + description: >- + This data type is the "ObjectContext" data type with specialisations for RATContext + type: object + properties: + contextAttribute: + type: string + enum: + - RAT + contextCondition: + type: string + enum: + - IS_ALL_OF + contextValueRange: + type: array + items: + type: string + enum: + - UTRAN + - EUTRAN + - NR + EdgeIdentificationIdContext: + description: >- + This data type is the "ObjectContext" data type with specialisations for EdgeIdentificationIdContext + type: object + properties: + contextAttribute: + type: string + enum: + - edgeIdentificationId + contextCondition: + type: string + enum: + - IS_EQUAL_TO + contextValueRange: + type: array + items: + type: string + EdgeIdentificationLocContext: + description: >- + This data type is the "ObjectContext" data type with specialisations for EdgeIdentificationLocContext + type: object + properties: + contextAttribute: + type: string + enum: + - edgeIdentificationTarget + contextCondition: + type: string + enum: + - IS_EQUAL_TO + contextValueRange: + type: array + items: + type: string + CoverageAreaTAContext: + description: >- + This data type is the "ObjectContext" data type with specialisations for CoverageAreaTAContext + type: object + properties: + contextAttribute: + type: string + enum: + - coverageAreaTA + contextCondition: + type: string + enum: + - IS_ALL_OF + contextValueRange: + type: array + items: + $ref: "#/components/schemas/CoverageAreaTAList" + CoverageAreaTAList: + type: integer + #-------Definition of the scenario specific ObjectTarget dataType----------------# + + #-------Definition of the concrete ExpectationContext dataType----------------# + ServiceStartTimeContext: + description: >- + This data type is the "ExpectationContext" data type with specialisations for ServiceStartTimeContext + type: object + properties: + contextAttribute: + type: string + enum: + - ServiceStartTime + contextCondition: + type: string + enum: + - IS_EQUAL_TO + contextValueRange: + $ref: 'TS28623_ComDefs.yaml#/components/schemas/DateTime' + ServiceEndTimeContext: + description: >- + This data type is the "ExpectationContext" data type with specialisations for ServiceEndTimeContext + type: object + properties: + contextAttribute: + type: string + enum: + - ServiceEndTime + contextCondition: + type: string + enum: + - IS_EQUAL_TO + contextValueRange: + $ref: 'TS28623_ComDefs.yaml#/components/schemas/DateTime' + UEMobilityLevelContext: + description: >- + This data type is the "ExpectationContext" data type with specialisations for UEMobilityLevelContext + type: object + properties: + contextAttribute: + type: string + enum: + - UEMobilityLevel + contextCondition: + type: string + enum: + - IS_EQUAL_TO + contextValueRange: + $ref: "TS28541_SliceNrm.yaml#/components/schemas/MobilityLevel" + ResourceSharingLevelContext: + description: >- + This data type is the "ExpectationContext" data type with specialisations for ResourceSharingLevelContext + type: object + properties: + contextAttribute: + type: string + enum: + - ResourceSharingLevel + contextCondition: + type: string + enum: + - IS_EQUAL_TO + contextValueRange: + $ref: "TS28541_SliceNrm.yaml#/components/schemas/SharingLevel" + #-------Definition of the concrete ExpectionContext dataType----------------# diff --git a/OpenAPI/TS28312_IntentNrm.yaml b/OpenAPI/TS28312_IntentNrm.yaml index 54a5bc02897db7b099b1c00c21218af54a66fe62..1ad10359a37007e1abd61284cce0630fc63d53c1 100644 --- a/OpenAPI/TS28312_IntentNrm.yaml +++ b/OpenAPI/TS28312_IntentNrm.yaml @@ -1,10 +1,10 @@ openapi: 3.0.1 info: title: Intent NRM - version: 17.0.0 + version: 17.5.0 description: >- OAS 3.0.1 definition of the Intent NRM - © 2022, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). + © 2023, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). All rights reserved. externalDocs: description: 3GPP TS 28.312; Intent driven management services for mobile networks @@ -12,6 +12,23 @@ externalDocs: paths: {} components: schemas: + + #-------Definition of generic IOCs ----------# + + SubNetwork-Single: + allOf: + - $ref: 'TS28623_GenericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + $ref: 'TS28623_GenericNrm.yaml#/components/schemas/SubNetwork-Attr' + - $ref: 'TS28623_GenericNrm.yaml#/components/schemas/SubNetwork-ncO' + - type: object + properties: + SubNetwork: + $ref: '#/components/schemas/SubNetwork-Multiple' + Intent: + $ref: '#/components/schemas/Intent-Multiple' Intent-Single: allOf: @@ -23,24 +40,31 @@ components: intentExpectations: type: array items: - $ref: "#/components/schemas/IntentExpectation" + type: object + oneOf: + - $ref: "#/components/schemas/IntentExpectation" + - $ref: "TS28312_IntentExpectations.yaml#/components/schemas/RadioNetworkExpectation" + - $ref: "TS28312_IntentExpectations.yaml#/components/schemas/EdgeServiceSupportExpectation" intentContexts: type: array items: $ref: "#/components/schemas/IntentContext" intentFulfilmentInfo: $ref: "#/components/schemas/FulfilmentInfo" + #-------Definition of generic IOCs ----------# + + #-------Definition of the generic IntentExpectation dataType ----------# IntentExpectation: + description: >- + This data type is the "IntentExpectation" data type without specialisations type: object properties: expectationId: type: string expectationVerb: $ref: "#/components/schemas/ExpectationVerb" - expectationObjects: - type: array - items: - $ref: "#/components/schemas/ExpectationObject" + expectationObject: + $ref: "#/components/schemas/ExpectationObject" expectationTargets: type: array items: @@ -50,102 +74,54 @@ components: items: $ref: "#/components/schemas/ExpectationContext" expectationfulfilmentInfo: - $ref: "#/components/schemas/FulfilmentInfo" - + $ref: "#/components/schemas/FulfilmentInfo" + required: + - expectationId + #-------Definition of the generic IntentExpectation dataType ----------# + + #-------Definition of the generic ExpectationObject dataType ----------# ExpectationObject: + description: >- + This data type is the "ExpectationObject" data type without specialisations type: object properties: objectType: type: string enum: - - RAN_SubNetwrok #value for Radio Network Expectation--# - - Service_Support #value for Service Support Expectation--# - - TBD #-This will be added based on defined scenario specfic intent expectation-# + - RAN_SubNetwork #value for Radio Network Expectation--# + - EdgeService_Support #value for Service Support Expectation--# objectInstance: $ref: "TS28623_ComDefs.yaml#/components/schemas/Dn" objectContexts: type: array items: - $ref: "#/components/schemas/ObjectContext" - - ExpectationTarget: - oneOf: - #--ExpectationTargets defind for Radio Network Expectation (ObjectType is RAN_SubNetwork)- # - - $ref: "#/components/schemas/WeakRSRPRatioTarget" - - $ref: "#/components/schemas/LowSINRRatioTarget" - - $ref: "#/components/schemas/AveULRANUEThptTarget" - - $ref: "#/components/schemas/AveDLRANUEThptTarget" - - $ref: "#/components/schemas/LowULRANUEThptRatioTarget" - - $ref: "#/components/schemas/LowDLRANUEThptRatioTarget" - #--ExpectationTargets defind for Radio Network Expectation (ObjectType is RAN_SubNetwork)- # - #--ExpectationTargets defind for Service Support Expectation (ObjectType is ServiceSupport)- # - - $ref: "#/components/schemas/DLThptPerUETarget" - - $ref: "#/components/schemas/ULThptPerUETarget" - - $ref: "#/components/schemas/DLLatencyTarget" - - $ref: "#/components/schemas/ULLatencyTarget" - - $ref: "#/components/schemas/MaxNumberofUEsTarget" - - $ref: "#/components/schemas/ActivityFactorTarget" - - $ref: "#/components/schemas/UESpeedTarget" - #--ExpectationTargets defind for Service Support Expectation (ObjectType is ServiceSupport)- # - #--ExpectationTargets defind for other Scenario specific Expectation-----TBD---------------# - #--ExpectationTargets defind for other Scenario specific Expectation-----TBD---------------# - - - ObjectContext: - oneOf: - #--ObjectContext defind for Radio Network Expectation (ObjectType is RAN_SubNetwork)-------# - - $ref: "#/components/schemas/CoverageAreaPolygonContext" - - $ref: "#/components/schemas/CoverageTACContext" - - $ref: "#/components/schemas/PLMNContext" - - $ref: "#/components/schemas/NRFqBandContext" - - $ref: "#/components/schemas/RATContext" - #--ObjectContext defind for Radio Network Expectation (ObjectType is RAN_SubNetwork)-------# - #--ObjectContext defind for Service Support Expectation (ObjectType is ServiceSupport)-------# - - $ref: "#/components/schemas/EdgeIdenfiticationIdContext" - - $ref: "#/components/schemas/EdgeIdenfiticationLocContext" - - $ref: "#/components/schemas/CoverageAreaTAContext" - #--ObjectContext defind for Service Support Expectation (ObjectType is ServiceSupport)-------# - - #--ObjectContext defind for other Scenario specific Expectation -----------TBD------------# - #--ObjectContext defind for other Scenario specific Expectation -----------TBD------------# + $ref: "#/components/schemas/ObjectContext" - - ExpectationContext: - oneOf: - #--ExpectationContext defind for Service Support Expectation (ObjectType is Service_Support)- # - - $ref: "#/components/schemas/ServiceStartTimeContext" - - $ref: "#/components/schemas/ServiceEndTimeContext" - - $ref: "#/components/schemas/UEMobilityLevelContext" - - $ref: "#/components/schemas/ResourceSharingLevelContext" - #--ExpectationContext defind for Service Support Expectation (ObjectType is Service_Support)- # + #-------Definition of the generic ExpectationObject dataType ----------# - IntentContext: - type: object - properties: - contextAttribute: - type: string - contextCondition: - $ref: "#/components/schemas/Condition" - contextValueRange: - type: array - items: - type: number + #-------Definition of the generic dataType --------------# Condition: type: string enum: - - Is_equal_to - - Is_less_than - - Is_greater_than - - Is_within_the_range - + - IS_EQUAL_TO + - IS_LESS_THAN + - IS_GREATER_THAN + - IS_WITHIN_RANGE + - IS_OUTSIDE_RANGE + - IS_ONE_OF + - IS_NOT_ONE_OF + - IS_EQUAL_TO_OR_LESS_THAN + - IS_EQUAL_TO_OR_GREATER_THAN + - IS_ALL_OF FulfilStatus: type: string + readOnly: true enum: - FULFILLED - NOT_FULFILLED - NotFulfilledState: type: string + readOnly: true enum: - ACKNOWLEDGED - COMPLIANT @@ -153,7 +129,6 @@ components: - SUSPENDED - TERMINATED - FULFILMENTFAILED - FulfilmentInfo: type: object properties: @@ -167,470 +142,97 @@ components: description: -> An attribute which is used when FulfilmentInfo is implemented for IntentFulfilmentInfo type: string - + readOnly: true ExpectationVerb: type: string enum: - DELIVER - ENSURE + #-------Definition of the generic dataType --------------# - #-------Definition of the concrete ExpectationTarget dataType----------# - WeakRSRPRatioTarget: - type: object - properties: - targetName: - type: string - enum: - - WeakRSRPRatio - targetCondition: - type: string - enum: - - Is_less_than - targetValueRange: - type: integer - minimum: 0 - maximum: 100 - targetContexts: - $ref: "#/components/schemas/WeakRSRPContext" - targetFulfilmentInfo: - $ref: "#/components/schemas/FulfilmentInfo" - - WeakRSRPContext: - type: object - properties: - contextAttribute: - type: string - enum: - - WeakRSRPThreshold - contextCondition: - type: string - enum: - - Is_less_than - contextValueRange: - type: number - - LowSINRRatioTarget: - type: object - properties: - targetName: - type: string - enum: - - LowSINRRatio - targetCondition: - type: string - enum: - - Is_less_than - targetValueRange: - type: integer - minimum: 0 - maximum: 100 - targetContexts: - $ref: "#/components/schemas/LowSINRContext" - targetFulfilmentInfo: - $ref: "#/components/schemas/FulfilmentInfo" - - LowSINRContext: + #-------Definition of the generic IntentContext dataType --------------# + IntentContext: + description: >- + This data type is the "IntentContext" data type without specialisations type: object properties: contextAttribute: type: string - enum: - - LowSINRThreshold contextCondition: - type: string - enum: - - Is_less_than + $ref: "#/components/schemas/Condition" contextValueRange: - type: integer - - AveULRANUEThptTarget: - type: object - properties: - targetName: - type: string - enum: - - AveULRANUEThpt - targetCondition: - type: string - enum: - - Is_greater_than - targetValueRange: - type: integer - targetFulfilmentInfo: - $ref: "#/components/schemas/FulfilmentInfo" - - AveDLRANUEThptTarget: - type: object - properties: - targetName: - type: string - enum: - - AveDLRANUEThpt - targetCondition: - type: string - enum: - - Is_greater_than - targetValueRange: - type: integer - targetFulfilmentInfo: - $ref: "#/components/schemas/FulfilmentInfo" - - LowULRANUEThptRatioTarget: + type: array + items: + type: number + #-------Definition of the generic IntentContext dataType --------------# + + #-------Definition of the generic ExpectationTarget dataType----------# + ExpectationTarget: + description: >- + This data type is the "ExpectationTarget" data type without specialisations type: object properties: targetName: type: string - enum: - - LowULRANUEThptRatio targetCondition: - type: string - enum: - - Is_less_than + $ref: "#/components/schemas/Condition" targetValueRange: - type: integer - minimum: 0 - maximum: 100 - targetContexts: - $ref: "#/components/schemas/LowULRANUEThptContext" - targetFulfilmentInfo: - $ref: "#/components/schemas/FulfilmentInfo" - - LowULRANUEThptContext: - type: object - properties: - contextAttribute: - type: string - enum: - - LowULRANUEThptThreshold - contextCondition: - type: string - enum: - - Is_less_than - contextValueRange: type: number - - LowDLRANUEThptRatioTarget: - type: object - properties: - targetName: - type: string - enum: - - LowDLRANUEThptRatio - targetCondition: - type: string - enum: - - Is_less_than - targetValueRange: - type: integer - minimum: 0 - maximum: 100 targetContexts: - $ref: "#/components/schemas/LowDLRANUEThptContext" - targetFulfilmentInfo: - $ref: "#/components/schemas/FulfilmentInfo" - - LowDLRANUEThptContext: - type: object - properties: - contextAttribute: - type: string - enum: - - LowDLRANUEThptThreshold - contextCondition: - type: string - enum: - - Is_less_than - contextValueRange: - type: number - DLThptPerUETarget: - type: object - properties: - targetName: - type: string - enum: - - DlThptPerUE - targetCondition: - type: string - enum: - - Is_greater_than - targetValueRange: - $ref: "TS28541_SliceNrm.yaml#/components/schemas/XLThpt" - ULThptPerUETarget: - type: object - properties: - targetName: - type: string - enum: - - UlThptPerUE - targetCondition: - type: string - enum: - - Is_greater_than - targetValueRange: - $ref: "TS28541_SliceNrm.yaml#/components/schemas/XLThpt" - DLLatencyTarget: - type: object - properties: - targetName: - type: string - enum: - - DlLatency - targetCondition: - type: string - enum: - - Is_less_than - targetValueRange: - type: integer - ULLatencyTarget: - type: object - properties: - targetName: - type: string - enum: - - UlLatency - targetCondition: - type: string - enum: - - Is_less_than - targetValueRange: - type: integer - MaxNumberofUEsTarget: - type: object - properties: - targetAttribute: - type: string - enum: - - maxNumberofUEs - targetCondition: - type: string - enum: - - Is_less _than - targetValueRange: - type: integer - ActivityFactorTarget: - type: object - properties: - targetAttribute: - type: string - enum: - - activityFactor - targetCondition: - type: string - enum: - - Is_equal _than - targetValueRange: - type: integer - UESpeedTarget: - type: object - properties: - targetAttribute: - type: string - enum: - - uESpeed - targetCondition: - type: string - enum: - - Is_less _than - targetValueRange: - type: integer - - #-------Definition of the concrete ExpectationTarget dataType----------# - - #-------Definition of the concrete ObjectTarget dataType----------------# - CoverageAreaPolygonContext: - type: object - properties: - contextAttribute: - type: string - enum: - - CoverageAreaPolygon - contextCondition: - type: string - enum: - - Is_within_the_range - contextValueRange: - type: array - items: - $ref: "#/components/schemas/CoverageArea" - CoverageArea: - type: string - CoverageTACContext: - type: object - properties: - contextAttribute: - type: string - enum: - - CoverageAreaTac - contextCondition: - type: string - enum: - - Is_within_the_range - contextValueRange: - type: array - items: - $ref: "TS28541_NrNrm.yaml#/components/schemas/NrTac" - - PLMNContext: - type: object - properties: - contextAttribute: - type: string - enum: - - PLMN - contextCondition: - type: string - enum: - - Is_within_the_range - contextValueRange: - type: array - items: - $ref: "TS28541_NrNrm.yaml#/components/schemas/PlmnId" - - NRFqBandContext: - type: object - properties: - contextAttribute: - type: string - enum: - - NRFqBand - contextCondition: - type: string - enum: - - Is_within_the_range - contextValueRange: - type: array - items: - type: string - - RATContext: - type: object - properties: - contextAttribute: - type: string - enum: - - RAT - contextCondition: - type: string - enum: - - Is_within_the_range - contextValueRange: - type: array - items: - type: string - enum: - - UTRAN - - EUTRAN - - NR - EdgeIdenfiticationIdContext: - type: object - properties: - contextAttribute: - type: string - enum: - - edgeIdentificationId - contextCondition: - type: string - enum: - - Is_equal_than - contextValueRange: type: array items: - type: string - EdgeIdenfiticationLocContext: + $ref: "#/components/schemas/TargetContext" + TargetContext: + description: >- + This data type is the "TargetContext" data type without specialisations type: object properties: contextAttribute: type: string - enum: - - edgeIdentificationTarget contextCondition: - type: string - enum: - - Is_equal_than + $ref: "#/components/schemas/Condition" contextValueRange: - type: array - items: - type: string - CoverageAreaTAContext: + type: number + #-------Definition of the generic ExpectationTarget dataType----------# + + #-------Definition of the generic ObjectContext dataType----------------# + ObjectContext: + description: >- + This data type is the "ObjectContext" data type without specialisations type: object properties: contextAttribute: type: string - enum: - - coverageAreaTA contextCondition: - type: string - enum: - - Is_within_the_range + $ref: "#/components/schemas/Condition" contextValueRange: type: array items: - $ref: "#/components/schemas/CoverageAreaTAList" - CoverageAreaTAList: - type: integer + type: number + #-------Definition of the generic ObjectContext dataType----------------# - #-------Definition of the concrete ObjectTarget dataType----------------# - #-------Definition of the concrete ExpectionContext dataType----------------# - ServiceStartTimeContext: - type: object - properties: - contextAttribute: - type: string - enum: - - ServiceStartTime - contextCondition: - type: string - enum: - - Is_equal_than - contextValueRange: - type: string - ServiceEndTimeContext: - type: object - properties: - contextAttribute: - type: string - enum: - - ServiceEndTime - contextCondition: - type: string - enum: - - Is_equal_than - contextValueRange: - type: string - UEMobilityLevelContext: - type: object - properties: - contextAttribute: - type: string - enum: - - UEMobilityLevel - contextCondition: - type: string - enum: - - Is_within_the_range - contextValueRange: - type: array - items: - $ref: "TS28541_SliceNrm.yaml#/components/schemas/MobilityLevel" - ResourceSharingLevelContext: + #-------Definition of the generic ExpectionContext dataType----------------# + ExpectationContext: + description: >- + This data type is the "ExpectationContext" data type without specialisations type: object properties: contextAttribute: type: string - enum: - - ResourceSharingLevel contextCondition: - type: string - enum: - - Is_within_the_range + $ref: "#/components/schemas/Condition" contextValueRange: type: array items: - $ref: "TS28541_SliceNrm.yaml#/components/schemas/SharingLevel" - #-------Definition of the concrete ExpectionContext dataType----------------# - + type: number + #-------Definition of the concrete ExpectationContext dataType----------------# #------Definition of JSON arrays for name-contained IOCs ---------------# + + SubNetwork-Multiple: + type: array + items: + $ref: '#/components/schemas/SubNetwork-Single' Intent-Multiple: type: array @@ -641,5 +243,6 @@ components: #----- Definitions in TS 28.312 for TS 28.532 --------------------------# resources-intentNrm: oneOf: + - $ref: '#/components/schemas/SubNetwork-Single' - $ref: '#/components/schemas/Intent-Single' #----- Definitions in TS 28.312 for TS 28.532 --------------------------# diff --git a/OpenAPI/TS28532_FaultMnS.yaml b/OpenAPI/TS28532_FaultMnS.yaml index ff66bf0043095d1d57465068342558bba5b52b88..2891cb22181abf7097022dea2f68f0af7887c5be 100755 --- a/OpenAPI/TS28532_FaultMnS.yaml +++ b/OpenAPI/TS28532_FaultMnS.yaml @@ -1,10 +1,10 @@ openapi: 3.0.1 info: title: Fault Supervision MnS - version: 17.1.0 + version: 17.3.0 description: >- OAS 3.0.1 definition of the Fault Supervision MnS - © 2021, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). + © 2023, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). All rights reserved. externalDocs: description: 3GPP TS 28.532; Generic management services @@ -135,7 +135,7 @@ paths: patch: summary: 'Clear, acknowledge or unacknowledge a single alarm' description: >- - Clears, acknowledges or uncknowldeges a single alarm by patching the alarm + Clears, acknowledges or unacknowldeges a single alarm by patching the alarm information. A conditional acknowledge request based on the perceived severity is not supported. parameters: @@ -546,9 +546,7 @@ components: observedMeasurement: type: string observedValue: - oneOf: - - type: integer - - $ref: 'TS28623_ComDefs.yaml#/components/schemas/Float' + type: number thresholdLevel: $ref: '#/components/schemas/ThresholdLevelInd' armTime: @@ -794,6 +792,7 @@ components: required: - alarmId - alarmType + - probableCause properties: alarmId: $ref: '#/components/schemas/AlarmId' @@ -836,6 +835,7 @@ components: required: - alarmId - alarmType + - probableCause - serviceUser - serviceProvider - securityAlarmDetector @@ -963,7 +963,7 @@ components: MergePatchAcknowledgeAlarm: description: >- Patch document acknowledging or unacknowledging a single alarm. For - acknowleding an alarm the value of ackState is ACKNOWLEDGED, for unacknowleding + acknowledging an alarm the value of ackState is ACKNOWLEDGED, for unacknowledging an alarm the value of ackState is UNACKNOWLEDGED. type: object required: diff --git a/OpenAPI/TS28532_FileDataReportingMnS.yaml b/OpenAPI/TS28532_FileDataReportingMnS.yaml index 7bf7ba0c8fc6c63fca864e8068ab201ccb8ef8e2..27c5a23b06c4ef4e453fedc83fb888aec23477d7 100644 --- a/OpenAPI/TS28532_FileDataReportingMnS.yaml +++ b/OpenAPI/TS28532_FileDataReportingMnS.yaml @@ -1,10 +1,10 @@ openapi: 3.0.1 info: title: File Data Reporting MnS - version: 17.1.0 + version: 17.3.0 description: >- OAS 3.0.1 definition of the File Data Reporting MnS - © 2021, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). + © 2023, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). All rights reserved. externalDocs: description: 3GPP TS 28.532; Generic management services @@ -179,7 +179,7 @@ components: enum: - Performance - Trace - - Anatytics + - Analytics - Proprietary FileNotificationTypes: type: string diff --git a/OpenAPI/TS28532_HeartbeatNtf.yaml b/OpenAPI/TS28532_HeartbeatNtf.yaml index 4fb1f6d29f4edc6988b2485fc04895dfeebcd6bd..4d10cac8a24f9d4acf7cdd3d259d712db6037bd8 100755 --- a/OpenAPI/TS28532_HeartbeatNtf.yaml +++ b/OpenAPI/TS28532_HeartbeatNtf.yaml @@ -4,7 +4,7 @@ info: version: 17.1.0 description: >- OAS 3.0.1 definition of the heartbeat notification - © 2020, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). + © 2023, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). All rights reserved. externalDocs: description: 3GPP TS 28.532; Generic management services diff --git a/OpenAPI/TS28532_PerfMnS.yaml b/OpenAPI/TS28532_PerfMnS.yaml index d75bcdc22ecd2ea00b1f39f3995e05af6a17c316..c2eabb541c760d2965edd6871d0c2cbac1c92329 100644 --- a/OpenAPI/TS28532_PerfMnS.yaml +++ b/OpenAPI/TS28532_PerfMnS.yaml @@ -4,7 +4,7 @@ info: version: 17.1.0 description: >- OAS 3.0.1 definition of the Performance Threshold Monitoring MnS - © 2020, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). + © 2023, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). All rights reserved. externalDocs: description: 3GPP TS 28.532; Generic management services diff --git a/OpenAPI/TS28532_ProvMnS.yaml b/OpenAPI/TS28532_ProvMnS.yaml index fbe3805380da9e9edab64088d822f2ef87b1d197..2bac3706e8bb5c65593ce1474623824b41040fde 100755 --- a/OpenAPI/TS28532_ProvMnS.yaml +++ b/OpenAPI/TS28532_ProvMnS.yaml @@ -1,10 +1,10 @@ openapi: 3.0.1 info: title: Provisioning MnS - version: 17.1.0 + version: 17.5.0 description: >- OAS 3.0.1 definition of the Provisioning MnS - © 2020, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). + © 2023, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). All rights reserved. externalDocs: description: 3GPP TS 28.532; Generic management services @@ -52,7 +52,7 @@ paths: 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 + This status code may be returned 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 @@ -205,7 +205,7 @@ paths: description: >- This parameter specifies the attributes of the scoped resources that are returned. - required: true + required: false schema: type: array items: @@ -237,6 +237,14 @@ paths: application/json: schema: $ref: '#/components/schemas/Resource' + application/vnd.3gpp.object-tree-hierarchical+json: + schema: + $ref: '#/components/schemas/Resource' + application/vnd.3gpp.object-tree-flat+json: + schema: + type: array + items: + $ref: '#/components/schemas/Resource' default: description: Error case. content: @@ -269,12 +277,12 @@ paths: schema: type: array items: - type: object + $ref: '#/components/schemas/PatchItem' application/3gpp-json-patch+json: schema: type: array items: - type: object + $ref: '#/components/schemas/PatchItem' responses: '200': description: >- @@ -301,52 +309,16 @@ paths: schema: $ref: 'TS28623_ComDefs.yaml#/components/schemas/ErrorResponse' delete: - summary: Deletes one or multiple resources + summary: Deletes one resource description: >- - With HTTP DELETE resources are deleted. The resources to be deleted are + With HTTP DELETE one resource is deleted. The resources to be deleted is 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' - 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 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: 'TS28623_ComDefs.yaml#/components/schemas/Filter' 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: - type: array - items: - $ref: 'TS28623_ComDefs.yaml#/components/schemas/Uri' + This status code is returned, when the resource has been successfully deleted. + The response body is empty. default: description: Error case. content: @@ -355,18 +327,6 @@ paths: $ref: 'TS28623_ComDefs.yaml#/components/schemas/ErrorResponse' components: schemas: - CorrelatedNotification: - type: object - properties: - source: - $ref: 'TS28623_ComDefs.yaml#/components/schemas/Dn' - notificationIds: - type: array - items: - $ref: 'TS28623_ComDefs.yaml#/components/schemas/NotificationId' - required: - - source - - notificationIds CmNotificationTypes: type: string enum: @@ -381,27 +341,33 @@ components: - MANAGEMENT_OPERATION - SON_OPERATION - UNKNOWN + ScopeType: + type: string + enum: + - BASE_ONLY + - BASE_NTH_LEVEL + - BASE_SUBTREE + - BASE_ALL Operation: type: string enum: - add - remove - replace - ScopeType: + Insert: type: string enum: - - BASE_ONLY - - BASE_NTH_LEVEL - - BASE_SUBTREE - - BASE_ALL - Scope: - type: object - properties: - scopeType: - $ref: '#/components/schemas/ScopeType' - scopeLevel: - type: integer - + - before + - after + PatchOperation: + type: string + enum: + - add + - replace + - remove + - copy + - move + - test Resource: oneOf: @@ -426,8 +392,30 @@ components: - $ref: 'TS28541_NrNrm.yaml#/components/schemas/resources-nrNrm' - $ref: 'TS28541_5GcNrm.yaml#/components/schemas/resources-5gcNrm' - $ref: 'TS28541_SliceNrm.yaml#/components/schemas/resources-sliceNrm' - - $ref: 'TS28312_IntentNrm.yaml#/components/schemas/resources-intentNrm' - + - $ref: 'TS28536_CoslaNrm.yaml#/components/schemas/resources-coslaNrm' + - $ref: 'TS28312_IntentNrm.yaml#/components/schemas/resources-intentNrm' + - $ref: 'TS28104_MdaNrm.yaml#/components/schemas/resources-mdaNrm' + - $ref: 'TS28105_AiMlNrm.yaml#/components/schemas/resources-AiMlNrm' + - $ref: 'TS28538_EdgeNrm.yaml#/components/schemas/resources-edgeNrm' + Scope: + type: object + properties: + scopeType: + $ref: '#/components/schemas/ScopeType' + scopeLevel: + type: integer + CorrelatedNotification: + type: object + properties: + source: + $ref: 'TS28623_ComDefs.yaml#/components/schemas/Dn' + notificationIds: + type: array + items: + $ref: 'TS28623_ComDefs.yaml#/components/schemas/NotificationId' + required: + - source + - notificationIds MoiChange: type: object properties: @@ -445,13 +433,14 @@ components: $ref: '#/components/schemas/Operation' path: $ref: 'TS28623_ComDefs.yaml#/components/schemas/Uri' + insert: + $ref: '#/components/schemas/Insert' value: {} oldValue: {} required: - notificationId - op - path - NotifyMoiCreation: allOf: - $ref: 'TS28623_ComDefs.yaml#/components/schemas/NotificationHeader' @@ -510,3 +499,17 @@ components: $ref: '#/components/schemas/MoiChange' required: - moiChanges + PatchItem: + type: object + properties: + op: + $ref: '#/components/schemas/PatchOperation' + from: + type: string + path: + type: string + value: + nullable: true + required: + - op + - path diff --git a/OpenAPI/TS28532_StreamingDataMnS.yaml b/OpenAPI/TS28532_StreamingDataMnS.yaml index 3d1e82ef2baab8d5ba71713c50f9c0a9873601c8..ef587dac1330f300b2088274aee085c5bea06c97 100755 --- a/OpenAPI/TS28532_StreamingDataMnS.yaml +++ b/OpenAPI/TS28532_StreamingDataMnS.yaml @@ -4,7 +4,7 @@ info: version: 17.1.0 description: >- OAS 3.0.1 specification for the Streaming data reporting service (Streaming MnS) - © 2022, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). + © 2023, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). All rights reserved. servers: - url: '{MnSRoot}/StreamingDataReportingMnS/{MnSVersion}' diff --git a/OpenAPI/TS28536_CoslaNrm.yaml b/OpenAPI/TS28536_CoslaNrm.yaml index a73832385db23f1a785b57dccae29bd1f686afe1..366a2fde853b090391382501e197739b8e1f7bb2 100755 --- a/OpenAPI/TS28536_CoslaNrm.yaml +++ b/OpenAPI/TS28536_CoslaNrm.yaml @@ -5,7 +5,7 @@ info: version: 17.3.0 description: >- OAS 3.0.1 specification of the Cosla NRM - © 2020, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). + © 2023, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). All rights reserved. externalDocs: diff --git a/OpenAPI/TS28538_EdgeNrm.yaml b/OpenAPI/TS28538_EdgeNrm.yaml index 62753ce70484acb535ea2f6fb4c73bcfb41749bd..b8c7d05e4356393d5b8714cf26d4cb346d2dd642 100644 --- a/OpenAPI/TS28538_EdgeNrm.yaml +++ b/OpenAPI/TS28538_EdgeNrm.yaml @@ -1,10 +1,10 @@ openapi: 3.0.1 info: title: 3GPP Edge NRM - version: 17.1.0 + version: 17.3.0 description: >- OAS 3.0.1 specification of the Edge NRM - © 2020, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). + © 2023, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). All rights reserved. externalDocs: description: 3GPP TS 28.538; Edge NRM @@ -31,7 +31,7 @@ components: trackingAreaIdList: $ref: 'TS28541_NrNrm.yaml#/components/schemas/TaiList' servingPLMN: - $ref: 'TS28541_NrNrm.yaml#/components/schemas/PlmnId' + $ref: 'TS28623_ComDefs.yaml#/components/schemas/PlmnId' GeoLoc: type: object properties: @@ -86,15 +86,6 @@ components: type: string swImageRef: type: string - RegistrationInfo: - type: object - properties: - registrationExpiry: - type: string - registrationID: - type: string - secCredential: - type: string #-------- Definition of concrete IOCs -------------------------------------------- MnS: @@ -156,14 +147,10 @@ components: type: string eASRequirementsRef: $ref: 'TS28623_ComDefs.yaml#/components/schemas/Dn' - eESFunctionRef: - $ref: 'TS28623_ComDefs.yaml#/components/schemas/DnList' eASAddress: type: array items: type: string - registrationInfo: - $ref: '#/components/schemas/RegistrationInfo' - $ref: 'TS28623_GenericNrm.yaml#/components/schemas/ManagedFunction-ncO' EESFunction-Single: allOf: @@ -189,10 +176,8 @@ components: $ref: '#/components/schemas/SoftwareImageInfo' serviceContinuitySupport: type: boolean - eASFunctionRef: + eASFunctonRef: $ref: 'TS28623_ComDefs.yaml#/components/schemas/DnList' - registrationInfo: - $ref: '#/components/schemas/RegistrationInfo' - $ref: 'TS28623_GenericNrm.yaml#/components/schemas/ManagedFunction-ncO' ECSFunction-Single: diff --git a/OpenAPI/TS28541_5GcNrm.yaml b/OpenAPI/TS28541_5GcNrm.yaml index b62b132c7e921824f551691254d5ed434d693281..343062cfc1c0809ba05874aaecad28e751e45bc1 100755 --- a/OpenAPI/TS28541_5GcNrm.yaml +++ b/OpenAPI/TS28541_5GcNrm.yaml @@ -1,10 +1,10 @@ openapi: 3.0.1 info: title: 3GPP 5GC NRM - version: 17.7.0 + version: 17.11.0 description: >- OAS 3.0.1 specification of the 5GC NRM - © 2020, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). + © 2023, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). All rights reserved. externalDocs: description: 3GPP TS 28.541; 5G NRM, 5GC NRM @@ -67,7 +67,7 @@ components: nFStatus: $ref: '#/components/schemas/NFStatus' plmn: - $ref: 'TS28541_NrNrm.yaml#/components/schemas/PlmnId' + $ref: 'TS28623_ComDefs.yaml#/components/schemas/PlmnId' sNssais: $ref: 'TS28541_NrNrm.yaml#/components/schemas/Snssai' fqdn: @@ -101,7 +101,7 @@ components: apiPrfix: type: string allowedPlmns: - $ref: 'TS28541_NrNrm.yaml#/components/schemas/PlmnId' + $ref: 'TS28623_ComDefs.yaml#/components/schemas/PlmnId' allowedNfTypes: type: array items: @@ -112,7 +112,7 @@ components: $ref: 'TS28541_NrNrm.yaml#/components/schemas/Snssai' NFStatus: type: string - description: any of enumrated value + description: any of enumerated value enum: - REGISTERED - SUSPENDED @@ -126,7 +126,7 @@ components: TACList: type: array items: - $ref: 'TS28541_NrNrm.yaml#/components/schemas/NrTac' + $ref: 'TS28623_GenericNrm.yaml#/components/schemas/Tac' WeightFactor: type: integer UdmInfo: @@ -146,7 +146,7 @@ components: type: string SupportedDataSetId: type: string - description: any of enumrated value + description: any of enumerated value enum: - SUBSCRIPTION - POLICY @@ -187,7 +187,7 @@ components: type: string n1MessageClass: type: boolean - n2InfroamtionClass: + n2InformationClass: type: boolean versions: type: string @@ -209,7 +209,7 @@ components: allowedPLMNs: type: array items: - $ref: 'TS28541_NrNrm.yaml#/components/schemas/PlmnId' + $ref: 'TS28623_ComDefs.yaml#/components/schemas/PlmnId' allowedSNPNs: type: array items: @@ -248,11 +248,27 @@ components: type: array items: type: string + recoveryTime: + $ref: 'TS28623_ComDefs.yaml#/components/schemas/DateTime' + nfServicePersistence: + type: boolean + nfProfileChangesSupportInd: + type: boolean + defaultNotificationSubscriptions: + type: array + items: + $ref: '#/components/schemas/DefaultNotificationSubscription' + minItems: 1 + serviceSetRecoveryTimeList: + type: array + items: + $ref: 'TS28623_ComDefs.yaml#/components/schemas/DateTime' + minItems: 1 vendorId: type: string SEPPType: type: string - description: any of enumrated value + description: any of enumerated value enum: - CSEPP - PSEPP @@ -269,7 +285,7 @@ components: $ref: '#/components/schemas/SupportedFunc' CommModelType: type: string - description: any of enumrated value + description: any of enumerated value enum: - DIRECT_COMMUNICATION_WO_NRF - DIRECT_COMMUNICATION_WITH_NRF @@ -512,9 +528,9 @@ components: enum: - INACTIVE - ACTIVE - activeEacThreshhold: + activeEacThreshold: type: integer - deactiveEacThreshhold: + deactiveEacThreshold: type: integer numberofUEs: type: integer @@ -539,7 +555,7 @@ components: type: object properties: plmnId: - $ref: 'TS28541_NrNrm.yaml#/components/schemas/PlmnId' + $ref: 'TS28623_ComDefs.yaml#/components/schemas/PlmnId' nRTACRangelist: type: array items: @@ -549,7 +565,7 @@ components: type: object properties: pLMNId: - $ref: 'TS28541_NrNrm.yaml#/components/schemas/PlmnId' + $ref: 'TS28623_ComDefs.yaml#/components/schemas/PlmnId' aMFIdentifier: type: integer @@ -582,16 +598,6 @@ components: type: array items: $ref: '#/components/schemas/DnnSmfInfoItem' - - IpAddr: - type: object - properties: - ipv4Addr: - type: string - ipv6Addr: - type: string - ipv6Prefix: - type: string 5GCNfConnEcmInfoList: type: array @@ -642,7 +648,7 @@ components: TaiList: type: array items: - $ref: 'TS28541_NrNrm.yaml#/components/schemas/Tai' + $ref: 'TS28623_GenericNrm.yaml#/components/schemas/Tai' #-------- Definition of concrete IOCs -------------------------------------------- ProvMnS: @@ -741,6 +747,8 @@ components: $ref: '#/components/schemas/Dynamic5QISet-Multiple' EcmConnectionInfo: $ref: '#/components/schemas/EcmConnectionInfo-Multiple' + EASDFFunction: + $ref: '#/components/schemas/EASDFFunction-Multiple' AmfFunction-Single: allOf: @@ -752,8 +760,8 @@ components: - $ref: 'TS28623_GenericNrm.yaml#/components/schemas/ManagedFunction-Attr' - type: object properties: - plmnIdList: - $ref: 'TS28541_NrNrm.yaml#/components/schemas/PlmnIdList' + pLMNInfoList: + $ref: 'TS28541_NrNrm.yaml#/components/schemas/PlmnInfoList' amfIdentifier: $ref: '#/components/schemas/AmfIdentifier' sBIFqdn: @@ -768,8 +776,6 @@ components: $ref: '#/components/schemas/TaiRange' weightFactor: $ref: '#/components/schemas/WeightFactor' - snssaiList: - $ref: '#/components/schemas/SnssaiList' cNSIIdList: $ref: '#/components/schemas/CNSIIdList' gUAMIdList: @@ -880,9 +886,7 @@ components: items: $ref: '#/components/schemas/SNssaiSmfInfoItem' taiList: - type: array - items: - $ref: 'TS28541_NrNrm.yaml#/components/schemas/Tai' + $ref: '#/components/schemas/TaiList' taiRangeList: type: array items: @@ -892,7 +896,7 @@ components: pgwAddrList: type: array items: - $ref: '#/components/schemas/IpAddr' + $ref: 'TS28623_ComDefs.yaml#/components/schemas/IpAddr' accessType: $ref: 'TS29571_CommonData.yaml#/components/schemas/AccessType' priority: @@ -1267,7 +1271,7 @@ components: - type: object properties: plmnId: - $ref: 'TS28541_NrNrm.yaml#/components/schemas/PlmnId' + $ref: 'TS28623_ComDefs.yaml#/components/schemas/PlmnId' sEPPType: $ref: '#/components/schemas/SEPPType' sEPPId: @@ -1338,8 +1342,7 @@ components: isCAPIFSup: type: boolean taiList: - items: - $ref: '#/components/schemas/TaiList' + $ref: '#/components/schemas/TaiList' taiRangeList: type: array items: @@ -1369,8 +1372,7 @@ components: items: $ref: '#/components/schemas/NsacfInfoSnssai' taiList: - items: - $ref: '#/components/schemas/TaiList' + $ref: '#/components/schemas/TaiList' - $ref: 'TS28623_GenericNrm.yaml#/components/schemas/ManagedFunction-ncO' - type: object properties: @@ -1388,7 +1390,7 @@ components: - type: object properties: plmnId: - $ref: 'TS28541_NrNrm.yaml#/components/schemas/PlmnId' + $ref: 'TS28623_ComDefs.yaml#/components/schemas/PlmnId' sBIFqdn: type: string managedNFProfile: @@ -1418,7 +1420,7 @@ components: - type: object properties: plmnId: - $ref: 'TS28541_NrNrm.yaml#/components/schemas/PlmnId' + $ref: 'TS28623_ComDefs.yaml#/components/schemas/PlmnId' sBIFqdn: type: string managedNFProfile: @@ -1428,8 +1430,8 @@ components: - $ref: 'TS28623_GenericNrm.yaml#/components/schemas/ManagedFunction-ncO' - type: object properties: - EP_Nxx: - $ref: '#/components/schemas/EP_Nxx-Multiple' + EP_N88: + $ref: '#/components/schemas/EP_N88-Multiple' EcmConnectionInfo-Single: allOf: @@ -1515,7 +1517,7 @@ components: - type: object properties: plmnId: - $ref: 'TS28541_NrNrm.yaml#/components/schemas/PlmnId' + $ref: 'TS28623_ComDefs.yaml#/components/schemas/PlmnId' sEPPId: type: integer fqdn: @@ -1848,7 +1850,7 @@ components: - type: object properties: remotePlmnId: - $ref: 'TS28541_NrNrm.yaml#/components/schemas/PlmnId' + $ref: 'TS28623_ComDefs.yaml#/components/schemas/PlmnId' remoteSeppAddress: $ref: 'TS28623_ComDefs.yaml#/components/schemas/HostAddr' remoteSeppId: @@ -2029,7 +2031,7 @@ components: remoteAddress: $ref: 'TS28541_NrNrm.yaml#/components/schemas/RemoteAddress' - EP_Nxx-Single: + EP_N88-Single: allOf: - $ref: 'TS28623_GenericNrm.yaml#/components/schemas/Top' - type: object @@ -2094,9 +2096,7 @@ components: - type: object properties: configurable5QIs: - type: array - items: - $ref: '#/components/schemas/FiveQICharacteristics-Multiple' + $ref: '#/components/schemas/FiveQICharacteristics-Multiple' Dynamic5QISet-Single: allOf: @@ -2108,9 +2108,7 @@ components: - type: object properties: dynamic5QIs: - type: array - items: - $ref: '#/components/schemas/FiveQICharacteristics-Multiple' + $ref: '#/components/schemas/FiveQICharacteristics-Multiple' GtpUPathQoSMonitoringControl-Single: allOf: @@ -2313,7 +2311,12 @@ components: type: array items: $ref: '#/components/schemas/AmfRegion-Single' - + + EASDFFunction-Multiple: + type: array + items: + $ref: '#/components/schemas/EASDFFunction-Single' + EP_N2-Multiple: type: array items: @@ -2457,10 +2460,10 @@ components: type: array items: $ref: '#/components/schemas/EP_Npc8-Single' - EP_Nxx-Multiple: + EP_N88-Multiple: type: array items: - $ref: '#/components/schemas/EP_Nxx-Single' + $ref: '#/components/schemas/EP_N88-Single' Configurable5QISet-Multiple: type: array items: @@ -2543,7 +2546,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_N88-Single' - $ref: '#/components/schemas/EP_Npc4-Single' - $ref: '#/components/schemas/EP_Npc6-Single' diff --git a/OpenAPI/TS28541_NrNrm.yaml b/OpenAPI/TS28541_NrNrm.yaml index 81e0ffdb88d5cf4da1b083b21eb4f53320f4feae..8c7a4a8a89a491bb64fc60cc62ec9c9bc1bc9470 100755 --- a/OpenAPI/TS28541_NrNrm.yaml +++ b/OpenAPI/TS28541_NrNrm.yaml @@ -1,10 +1,10 @@ openapi: 3.0.1 info: title: NR NRM - version: 17.7.0 + version: 17.12.0 description: >- OAS 3.0.1 specification of the NR NRM - © 2020, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). + © 2023, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). All rights reserved. externalDocs: description: 3GPP TS 28.541; 5G NRM, NR NRM @@ -44,25 +44,15 @@ components: sd: type: string - Mnc: - type: string - pattern: '[0-9]{3}|[0-9]{2}' - PlmnId: - type: object - properties: - mcc: - $ref: 'TS28623_ComDefs.yaml#/components/schemas/Mcc' - mnc: - $ref: '#/components/schemas/Mnc' PlmnIdList: type: array items: - $ref: '#/components/schemas/PlmnId' + $ref: 'TS28623_ComDefs.yaml#/components/schemas/PlmnId' PlmnInfo: type: object properties: plmnId: - $ref: '#/components/schemas/PlmnId' + $ref: 'TS28623_ComDefs.yaml#/components/schemas/PlmnId' snssai: $ref: '#/components/schemas/Snssai' PlmnInfoList: @@ -77,7 +67,7 @@ components: type: object properties: plmnId: - $ref: '#/components/schemas/PlmnId' + $ref: 'TS28623_ComDefs.yaml#/components/schemas/PlmnId' cagidList: $ref: '#/components/schemas/cagId' nidList: @@ -107,26 +97,22 @@ components: type: integer maximum: 503 NrTac: - type: integer - maximum: 16777215 - Tai: - type: object - properties: - plmnId: - $ref: '#/components/schemas/PlmnId' - nrTac: - $ref: '#/components/schemas/NrTac' + $ref: 'TS28623_GenericNrm.yaml#/components/schemas/Tac' + NrTacList: + type: array + items: + $ref: 'TS28623_GenericNrm.yaml#/components/schemas/Tac' TaiList: type: array items: - $ref: '#/components/schemas/Tai' + $ref: 'TS28623_GenericNrm.yaml#/components/schemas/Tai' BackhaulAddress: type: object properties: gnbId: $ref: '#/components/schemas/GnbId' tai: - $ref: "#/components/schemas/Tai" + $ref: 'TS28623_GenericNrm.yaml#/components/schemas/Tai' MappingSetIDBackhaulAddress: type: object properties: @@ -188,7 +174,7 @@ components: timeDuration: type: integer - UeAccProbilityDist: + UeAccProbabilityDist: type: object properties: targetProbability: @@ -196,7 +182,7 @@ components: numberofpreamblessent: type: integer - UeAccDelayProbilityDist: + UeAccDelayProbabilityDist: type: object properties: targetProbability: @@ -205,16 +191,18 @@ components: type: integer NRPciList: - type: object - properties: - NRPci: - type: integer + type: array + items: + $ref: '#/components/schemas/NrPci' + minItems: 0 + maxItems: 1007 CSonPciList: - type: object - properties: - NRPci: - type: integer + type: array + items: + $ref: '#/components/schemas/NrPci' + minItems: 1 + maxItems: 100 MaximumDeviationHoTrigger: type: integer @@ -283,7 +271,7 @@ components: type: object properties: plmnId: - $ref: '#/components/schemas/PlmnId' + $ref: 'TS28623_ComDefs.yaml#/components/schemas/PlmnId' snssai: $ref: '#/components/schemas/Snssai' RrmPolicyMemberList: @@ -583,7 +571,7 @@ components: TceID: type: integer PlmnTarget: - $ref: '#/components/schemas/PlmnId' + $ref: 'TS28623_ComDefs.yaml#/components/schemas/PlmnId' TceMappingInfoList: type: array items: @@ -818,17 +806,19 @@ components: gnbCuName: $ref: '#/components/schemas/GnbName' plmnId: - $ref: '#/components/schemas/PlmnId' - x2BlackList: + $ref: 'TS28623_ComDefs.yaml#/components/schemas/PlmnId' + x2BlockList: $ref: '#/components/schemas/GGnbIdList' - xnBlackList: + xnBlockList: $ref: '#/components/schemas/GGnbIdList' - x2WhiteList: + x2AllowList: $ref: '#/components/schemas/GGnbIdList' - xnWhiteList: + xnAllowList: $ref: '#/components/schemas/GGnbIdList' - x2XnHOBlackList: + x2HOBlackList: $ref: '#/components/schemas/GEnbIdList' + xnHOBlackList: + $ref: '#/components/schemas/GGnbIdList' mappingSetIDBackhaulAddress: $ref: '#/components/schemas/MappingSetIDBackhaulAddress' tceMappingInfoList: @@ -932,7 +922,7 @@ components: nrPci: $ref: '#/components/schemas/NrPci' nrTac: - $ref: '#/components/schemas/NrTac' + $ref: 'TS28623_GenericNrm.yaml#/components/schemas/Tac' arfcnDL: type: integer arfcnUL: @@ -1011,7 +1001,7 @@ components: plmnInfoList: $ref: '#/components/schemas/PlmnInfoList' nrTac: - $ref: '#/components/schemas/NrTac' + $ref: 'TS28623_GenericNrm.yaml#/components/schemas/Tac' NRFrequency-Single: allOf: @@ -1162,10 +1152,19 @@ components: properties: rRMPolicyMaxRatio: type: integer + default: 100 + minimum: 0 + maximum: 100 rRMPolicyMinRatio: type: integer + default: 0 + minimum: 0 + maximum: 100 rRMPolicyDedicatedRatio: type: integer + default: 0 + minimum: 0 + maximum: 100 NRCellRelation-Single: allOf: @@ -1390,10 +1389,10 @@ components: properties: drachOptimizationControl: type: boolean - ueAccProbilityDist: - $ref: "#/components/schemas/UeAccProbilityDist" - ueAccDelayProbilityDist: - $ref: "#/components/schemas/UeAccDelayProbilityDist" + ueAccProbabilityDist: + $ref: "#/components/schemas/UeAccProbabilityDist" + ueAccDelayProbabilityDist: + $ref: "#/components/schemas/UeAccDelayProbabilityDist" - $ref: 'TS28623_GenericNrm.yaml#/components/schemas/ManagedFunction-ncO' DMROFunction-Single: @@ -1582,7 +1581,7 @@ components: gnbIdLength: $ref: '#/components/schemas/GnbIdLength' plmnId: - $ref: '#/components/schemas/PlmnId' + $ref: 'TS28623_ComDefs.yaml#/components/schemas/PlmnId' - $ref: 'TS28623_GenericNrm.yaml#/components/schemas/ManagedFunction-ncO' - type: object properties: diff --git a/OpenAPI/TS28541_SliceNrm.yaml b/OpenAPI/TS28541_SliceNrm.yaml index 2ea8a2b41973b2b6806e8982a56e4dbc1ae7717b..beb653b0bf36b316384b3de1e961e336fcdca97b 100755 --- a/OpenAPI/TS28541_SliceNrm.yaml +++ b/OpenAPI/TS28541_SliceNrm.yaml @@ -1,10 +1,10 @@ openapi: 3.0.1 info: title: Slice NRM - version: 17.7.0 + version: 17.12.0 description: >- OAS 3.0.1 specification of the Slice NRM - @ 2020, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). + @ 2023, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). All rights reserved. externalDocs: description: 3GPP TS 28.541; 5G NRM, Slice NRM @@ -23,26 +23,27 @@ components: enum: - STATIONARY - NOMADIC - - RESTRICTED MOBILITY - - FULLY MOBILITY + - RESTRICTED_MOBILITY + - FULL_MOBILITY SynAvailability: type: string enum: - - NOT SUPPORTED - - BETWEEN BS AND UE - - BETWEEN BS AND UE & UE AND UE + - NOT_SUPPORTED + - BETWEEN_BS_AND_UE + - BETWEEN_BS_AND_UE_AND_UE_AND_UE PositioningAvailability: type: array items: type: string enum: - - CIDE-CID + - CIDE_CID - OTDOA - - RF FINGERPRINTING + - RF_FINGERPRINTING - AECID - - HYBRID POSITIONING - - NET-RTK - Predictionfrequency: + + - HYBRID_POSITIONING + - NET_RTK + PredictionFrequency: type: string enum: - PERSEC @@ -52,29 +53,18 @@ components: type: string enum: - SHARED - - NON-SHARED + - NON_SHARED NetworkSliceSharingIndicator: type: string enum: - SHARED - - NON-SHARED + - NON_SHARED - ServiceType: - type: string - enum: - - eMBB - - RLLC - - MIoT - - V2X SliceSimultaneousUse: - type: string - enum: - - ZERO - - ONE - - TWO - - THREE - - FOUR + type: integer + minimum: 0 + maximum: 4 Category: type: string enum: @@ -105,7 +95,7 @@ components: Support: type: string enum: - - NOT SUPPORTED + - NOT_SUPPORTED - SUPPORTED DelayTolerance: type: object @@ -122,7 +112,9 @@ components: availability: $ref: '#/components/schemas/Support' periodicityList: - type: string + type: array + items: + type: integer XLThpt: type: object properties: @@ -152,7 +144,9 @@ components: servAttrCom: $ref: '#/components/schemas/ServAttrCom' kPIList: - type: string + type: array + items: + type: string NBIoT: type: object properties: @@ -166,7 +160,9 @@ components: servAttrCom: $ref: '#/components/schemas/ServAttrCom' nROperatingBands: - type: string + type: array + items: + type: string Synchronicity: type: object properties: @@ -190,8 +186,8 @@ components: $ref: '#/components/schemas/ServAttrCom' availability: $ref: '#/components/schemas/PositioningAvailability' - predictionfrequency: - $ref: '#/components/schemas/Predictionfrequency' + predictionFrequency: + $ref: '#/components/schemas/PredictionFrequency' accuracy: $ref: '#/components/schemas/Float' PositioningRANSubnet: @@ -199,8 +195,8 @@ components: properties: availability: $ref: '#/components/schemas/PositioningAvailability' - predictionfrequency: - $ref: '#/components/schemas/Predictionfrequency' + predictionFrequency: + $ref: '#/components/schemas/PredictionFrequency' accuracy: $ref: '#/components/schemas/Float' UserMgmtOpen: @@ -210,7 +206,7 @@ components: $ref: '#/components/schemas/ServAttrCom' support: $ref: '#/components/schemas/Support' - V2XCommModels: + V2XCommMode: type: object properties: servAttrCom: @@ -231,6 +227,8 @@ components: type: string nsName: type: string + description: + type: string EmbbEEPerfReq: type: object properties: @@ -321,7 +319,7 @@ components: maxNumberOfPDUSessions: type: integer coverageAreaTAList: - type: integer + $ref: 'TS28541_NrNrm.yaml#/components/schemas/TaiList' resourceSharingLevel: $ref: '#/components/schemas/SharingLevel' dLMaxPktSize: @@ -352,7 +350,7 @@ components: type: object properties: coverageAreaTAList: - type: integer + $ref: 'TS28541_NrNrm.yaml#/components/schemas/TaiList' dLLatency: type: number uLLatency: @@ -377,14 +375,14 @@ components: type: integer reliability: type: number - serviceType: - $ref: '#/components/schemas/ServiceType' dLMaxPktSize: type: integer uLMaxPktSize: type: integer nROperatingBands: - type: string + type: array + items: + type: string delayTolerance: $ref: '#/components/schemas/DelayTolerance' positioning: @@ -427,7 +425,9 @@ components: maxNumberOfPDUSessions: type: integer nROperatingBands: - type: string + type: array + items: + type: string sliceSimultaneousUse: $ref: '#/components/schemas/SliceSimultaneousUse' energyEfficiency: @@ -443,7 +443,7 @@ components: activityFactor: type: integer coverageAreaTAList: - type: integer + $ref: 'TS28541_NrNrm.yaml#/components/schemas/TaiList' resourceSharingLevel: $ref: '#/components/schemas/SharingLevel' uEMobilityLevel: @@ -452,14 +452,16 @@ components: type: integer reliability: type: number - serviceType: - $ref: '#/components/schemas/ServiceType' dLDeterministicComm: $ref: '#/components/schemas/DeterministicComm' uLDeterministicComm: $ref: '#/components/schemas/DeterministicComm' survivalTime: type: number + nssaaSupport: + $ref: '#/components/schemas/NSSAASupport' + n6Protection: + $ref: '#/components/schemas/N6Protection' ServiceProfile: type: object @@ -514,10 +516,12 @@ components: $ref: '#/components/schemas/Positioning' userMgmtOpen: $ref: '#/components/schemas/UserMgmtOpen' - v2XModels: - $ref: '#/components/schemas/V2XCommModels' + v2XCommMode: + $ref: '#/components/schemas/V2XCommMode' coverageArea: - type: string + type: array + items: + $ref: 'TS28623_ComDefs.yaml#/components/schemas/GeoArea' termDensity: $ref: '#/components/schemas/TermDensity' activityFactor: @@ -531,9 +535,9 @@ components: reliability: type: number maxDLDataVolume: - type: string + type: number maxULDataVolume: - type: string + type: number sliceSimultaneousUse: $ref: '#/components/schemas/SliceSimultaneousUse' energyEfficiency: @@ -545,7 +549,7 @@ components: SliceProfile: type: object properties: - serviceProfileId: + sliceProfileId: type: string plmnInfoList: $ref: 'TS28541_NrNrm.yaml#/components/schemas/PlmnInfoList' @@ -569,7 +573,7 @@ components: enum: - VLAN - MPLS - - Segment + - SEGMENT logicalInterfaceId: type: string @@ -583,30 +587,30 @@ components: items: $ref: '#/components/schemas/SliceProfile' FeasibilityResult: - description: -> - An attribute which specifies the feasibility check result for the feasibility check job. + description: >- + An attribute which specifies the feasibility check result for the feasibility check and reservation job. type: string enum: - FEASIBLE - INFEASIBLE InFeasibleReason: - description: -> + description: >- An attribute that specifies the additional reason information if the feasibility check result is infeasible.The detailed ENUM value is FFS. type: string RecommendedRequirements: - description: -> + description: >- An attribute that specifies the recommended network slicing related requirements (i.e. ServiceProfile and SliceProfile information) which can be supported by the MnS producer.. type: string ResourceReservation: - description: -> + description: >- An attribute represents MnS consumer's requirements for resource reservation. type: boolean RequestedReservationExpiration: - description: -> - An attribute which specifes MnS consuner's requirements for the validity period of the resource reservation. + description: >- + An attribute which specifies MnS consuner's requirements for the validity period of the resource reservation. type: string ResourceReservationStatus: - description: -> + description: >- An attribute which specifies the resource reservation result for the feasibility check job. type: string enum: @@ -614,11 +618,11 @@ components: - UNRESERVED - USED ReservationExpiration: - description: -> - An attribute which specifes the actual validity period of the resource reservation.. + description: >- + An attribute which specifies the actual validity period of the resource reservation.. type: string ReservationFailureReason: - description: -> + description: >- An attribute that specifies the additional reason information if the reservation is failed. type: string @@ -658,8 +662,8 @@ components: $ref: '#/components/schemas/EP_Transport-Multiple' NetworkSliceSubnetProviderCapabilities: $ref: '#/components/schemas/NetworkSliceSubnetProviderCapabilities-Multiple' - FeasibilityCheckJob: - $ref: '#/components/schemas/FeasibilityCheckJob-Multiple' + FeasibilityCheckAndReservationJob: + $ref: '#/components/schemas/FeasibilityCheckAndReservationJob-Multiple' NetworkSlice-Single: @@ -747,11 +751,9 @@ components: $ref: '#/components/schemas/XLThpt' uLThptPerSliceSubnet: $ref: '#/components/schemas/XLThpt' - coverageAreaTAIList: - type: array - items: - type: string - FeasibilityCheckJob-Single: + coverageAreaTAList: + $ref: 'TS28541_NrNrm.yaml#/components/schemas/TaiList' + FeasibilityCheckAndReservationJob-Single: allOf: - $ref: 'TS28623_GenericNrm.yaml#/components/schemas/Top' - type: object @@ -764,7 +766,7 @@ components: - $ref: '#/components/schemas/SliceProfile' - $ref: '#/components/schemas/ServiceProfile' resourceReservation: - $ref: '#/components/schemas/ResourceReservation' + $ref: '#/components/schemas/ResourceReservation' requestedReservationExpiration: $ref: '#/components/schemas/RequestedReservationExpiration' processMonitor: @@ -808,10 +810,10 @@ components: type: array items: $ref: '#/components/schemas/NetworkSliceSubnetProviderCapabilities-Single' - FeasibilityCheckJob-Multiple: + FeasibilityCheckAndReservationJob-Multiple: type: array items: - $ref: '#/components/schemas/FeasibilityCheckJob-Single' + $ref: '#/components/schemas/FeasibilityCheckAndReservationJob-Single' #------------ Definitions in TS 28.541 for TS 28.532 ----------------------------- @@ -824,4 +826,4 @@ components: - $ref: '#/components/schemas/NetworkSliceSubnet-Single' - $ref: '#/components/schemas/EP_Transport-Single' - $ref: '#/components/schemas/NetworkSliceSubnetProviderCapabilities-Single' - - $ref: '#/components/schemas/FeasibilityCheckJob-Single' + - $ref: '#/components/schemas/FeasibilityCheckAndReservationJob-Single' diff --git a/OpenAPI/TS28550_PerfMeasJobCtrlMnS.yaml b/OpenAPI/TS28550_PerfMeasJobCtrlMnS.yaml index 973f2820b95902601ac93fb0876af44d5cf8aa17..8c66ebf989461ab8ee150be083a941b5629690e4 100755 --- a/OpenAPI/TS28550_PerfMeasJobCtrlMnS.yaml +++ b/OpenAPI/TS28550_PerfMeasJobCtrlMnS.yaml @@ -4,7 +4,7 @@ info: version: 17.1.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). + @ 2023, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). All rights reserved. externalDocs: description: 3GPP TS 28.550 Performance assurance diff --git a/OpenAPI/TS28623_ComDefs.yaml b/OpenAPI/TS28623_ComDefs.yaml index b962d1032f47e37769bf31b3709346351b71fd59..ea37e0fa137a08bc864301a89cc8a9b3ba575627 100755 --- a/OpenAPI/TS28623_ComDefs.yaml +++ b/OpenAPI/TS28623_ComDefs.yaml @@ -1,10 +1,10 @@ openapi: 3.0.1 info: title: Common Type Definitions - version: 17.1.0 + version: 17.6.0 description: >- OAS 3.0.1 specification of common type definitions in the Generic NRM - © 2021, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). + © 2023, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). All rights reserved. externalDocs: description: 3GPP TS 28.623; Generic NRM; Common type definitions @@ -78,15 +78,23 @@ components: $ref: '#/components/schemas/Latitude' longitude: $ref: '#/components/schemas/Longitude' + altitude: + $ref: '#/components/schemas/Float' ConvexGeoPolygon: type: array items: $ref: '#/components/schemas/GeoCoordinate' - GeoAreaToCellMapping: + minItems: 3 + GeoArea: type: object properties: convexGeoPolygon: $ref: '#/components/schemas/ConvexGeoPolygon' + GeoAreaToCellMapping: + type: object + properties: + convexGeoPolygon: + $ref: '#/components/schemas/GeoArea' associationThreshold: type: integer AreaOfInterest: @@ -127,6 +135,7 @@ components: oneOf: - $ref: '#/components/schemas/Ipv4Addr' - $ref: '#/components/schemas/Ipv6Addr' + - $ref: '#/components/schemas/Ipv6Prefix' HostAddr: # This definition will be deprecated, when all occurances of HostAddr # are replaced by Host. diff --git a/OpenAPI/TS28623_GenericNrm.yaml b/OpenAPI/TS28623_GenericNrm.yaml index adfc72fd66f1a45414370888c8a627baa67bc801..2cfb0f2e951b92d4f6dadafe5ea44cf41d09f279 100755 --- a/OpenAPI/TS28623_GenericNrm.yaml +++ b/OpenAPI/TS28623_GenericNrm.yaml @@ -1,10 +1,10 @@ openapi: 3.0.1 info: title: Generic NRM - version: 17.1.0 + version: 17.6.0 description: >- OAS 3.0.1 definition of the Generic NRM - © 2022, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). + © 2023, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). All rights reserved. externalDocs: description: 3GPP TS 28.623; Generic NRM @@ -151,7 +151,7 @@ components: - FILE_BASED_LOC_SET_BY_PRODUCER - FILE_BASED_LOC_SET_BY_CONSUMER - STREAM_BASED - monitorGranularityPeriods: + reportingPeriods: type: array items: type: integer @@ -646,6 +646,8 @@ components: - N10 - N11 - S5-C + - N16 + - N16a SMSFInterfaces: type: array items: @@ -701,7 +703,7 @@ components: enum: - F1-C - listOfNeTypes-Type: + listOfNETypes-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: @@ -730,7 +732,7 @@ components: - HSS - UDM - plmnTarget-Type: + pLMNTarget-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: @@ -957,7 +959,7 @@ components: - UEauthentication - EventExposure - anonymizationOfMdtData-Type: + anonymizationOfMDTData-Type: description: Specifies level of MDT anonymization. For additional details see 3GPP TS 32.422 clause 5.10.12. type: string enum: @@ -968,7 +970,7 @@ components: description: Determines whether beam level measurements shall be included in case of immediate MDT M1 measurement in NR. For additional details see 3GPP TS 32.422 clause 5.10.40. type: boolean - collectionPeriodRrmLte-Type: + collectionPeriodRRMLTE-Type: description: See details in 3GPP TS 32.422 clause 5.10.20. type: string enum: @@ -983,7 +985,7 @@ components: - 10240ms - 60000ms - collectionPeriodM6Lte-Type: + collectionPeriodM6LTE-Type: description: See details in 3GPP TS 32.422 clause 5.10.32. type: string enum: @@ -992,13 +994,13 @@ components: - 5120ms - 10240ms - collectionPeriodM7Lte-Type: + collectionPeriodM7LTE-Type: description: See details in 3GPP TS 32.422 clause 5.10.33. type: integer minimum: 1 maximum: 60 - collectionPeriodRrmUmts-Type: + collectionPeriodRRMUMTS-Type: description: See details in 3GPP TS 32.422 clause 5.10.21. type: string enum: @@ -1011,7 +1013,7 @@ components: - 4000ms - 6000ms - collectionPeriodRrmNr-Type: + collectionPeriodRRMNR-Type: description: See details in 3GPP TS 32.422 clause 5.10.30. type: string enum: @@ -1021,7 +1023,7 @@ components: - 10240ms - 60000ms - collectionPeriodM6Nr-Type: + collectionPeriodM6NR-Type: description: See details in 3GPP TS 32.422 clause 5.10.34. type: string enum: @@ -1040,7 +1042,7 @@ components: - 12min - 30min - collectionPeriodM7Nr-Type: + collectionPeriodM7NR-Type: description: See details in 3GPP TS 32.422 clause 5.10.35. type: integer minimum: 1 @@ -1240,7 +1242,7 @@ components: - 2560ms - 5120ms - measurementPeriodLte-Type: + measurementPeriodLTE-Type: description: See details in 3GPP TS 32.422 clause 5.10.23. type: string enum: @@ -1250,7 +1252,7 @@ components: - 10240ms - 1min - measurementPeriodUmts-Type: + measurementPeriodUMTS-Type: description: See details in 3GPP TS 32.422 clause 5.10.22. type: string enum: @@ -1276,13 +1278,13 @@ components: - CPICH_RSCP - PathLoss - eventThresholdUphUmts-Type: + eventThresholdUphUMTS-Type: description: See details in 3GPP TS 32.422 clause 5.10.A. type: integer minimum: 0 maximum: 31 - plmnList-Type: + pLMNList-Type: description: See details in 3GPP TS 32.422 clause 5.10.24. type: array items: @@ -1414,6 +1416,36 @@ components: description: See details in 3GPP TS 32.422 clause 5.10.11. Only TCE Id value may be sent over the air to the UE being configured for Logged MDT. type: integer + excessPacketDelayThresholds-Type: + description: Excess Packet Delay Threshold for NR MDT. See details in 3GPP TS 32.422 clause 4.1.1 and 4.1.2. + type: array + properties: + fiveQIValue: + type: integer + excessPacketDelayThresholdValue: + type: string + enum: + - 0.25ms + - 0.5ms + - 1ms + - 2ms + - 4ms + - 5ms + - 10ms + - 20ms + - 30ms + - 40ms + - 50ms + - 60ms + - 70ms + - 80ms + - 90ms + - 100ms + - 150ms + - 300ms + - 500ms + minItems: 0 + maxItems: 255 #-------- end of Definition of types used in Trace control NRM fragment ---------- @@ -1600,13 +1632,13 @@ components: $ref: '#/components/schemas/jobType-Type' listOfInterfaces: $ref: '#/components/schemas/listOfInterfaces-Type' - listOfNeTypes: - $ref: '#/components/schemas/listOfNeTypes-Type' - plmnTarget: - $ref: '#/components/schemas/plmnTarget-Type' + listOfNETypes: + $ref: '#/components/schemas/listOfNETypes-Type' + pLMNTarget: + $ref: '#/components/schemas/pLMNTarget-Type' traceReportingConsumerUri: $ref: 'TS28623_ComDefs.yaml#/components/schemas/Uri' - traceCollectionEntityIpAddress: + traceCollectionEntityIPAddress: $ref: '#/components/schemas/IpAddr' traceDepth: $ref: '#/components/schemas/traceDepth-Type' @@ -1622,8 +1654,8 @@ components: $ref: '#/components/schemas/traceTarget-Type' triggeringEvents: $ref: '#/components/schemas/triggeringEvents-Type' - anonymizationOfMdtData: - $ref: '#/components/schemas/anonymizationOfMdtData-Type' + anonymizationOfMDTData: + $ref: '#/components/schemas/anonymizationOfMDTData-Type' areaConfigurationForNeighCell: $ref: '#/components/schemas/AreaConfig' areaScope: @@ -1632,20 +1664,20 @@ components: $ref: '#/components/schemas/AreaScope' beamLevelMeasurement: $ref: '#/components/schemas/beamLevelMeasurement-Type' - collectionPeriodRrmLte: - $ref: '#/components/schemas/collectionPeriodRrmLte-Type' - collectionPeriodM6Lte: - $ref: '#/components/schemas/collectionPeriodM6Lte-Type' - collectionPeriodM7Lte: - $ref: '#/components/schemas/collectionPeriodM7Lte-Type' - collectionPeriodRrmUmts: - $ref: '#/components/schemas/collectionPeriodRrmUmts-Type' - collectionPeriodRrmNr: - $ref: '#/components/schemas/collectionPeriodRrmNr-Type' - collectionPeriodM6Nr: - $ref: '#/components/schemas/collectionPeriodM6Nr-Type' - collectionPeriodM7Nr: - $ref: '#/components/schemas/collectionPeriodM7Nr-Type' + collectionPeriodRRMLTE: + $ref: '#/components/schemas/collectionPeriodRRMLTE-Type' + collectionPeriodM6LTE: + $ref: '#/components/schemas/collectionPeriodM6LTE-Type' + collectionPeriodM7LTE: + $ref: '#/components/schemas/collectionPeriodM7LTE-Type' + collectionPeriodRRMUMTS: + $ref: '#/components/schemas/collectionPeriodRRMUMTS-Type' + collectionPeriodRRMNR: + $ref: '#/components/schemas/collectionPeriodRRMNR-Type' + collectionPeriodM6NR: + $ref: '#/components/schemas/collectionPeriodM6NR-Type' + collectionPeriodM7NR: + $ref: '#/components/schemas/collectionPeriodM7NR-Type' eventListForEventTriggeredMeasurement: $ref: '#/components/schemas/eventListForEventTriggeredMeasurement-Type' eventThreshold: @@ -1662,20 +1694,20 @@ components: $ref: '#/components/schemas/hysteresisL1-Type' timeToTriggerL1: $ref: '#/components/schemas/timeToTriggerL1-Type' - mbsfnAreaList: + mBSFNAreaList: type: array items: $ref: '#/components/schemas/MbsfnArea' - measurementPeriodLte: - $ref: '#/components/schemas/measurementPeriodLte-Type' - measurementPeriodUmts: - $ref: '#/components/schemas/measurementPeriodUmts-Type' + measurementPeriodLTE: + $ref: '#/components/schemas/measurementPeriodLTE-Type' + measurementPeriodUMTS: + $ref: '#/components/schemas/measurementPeriodUMTS-Type' measurementQuantity: $ref: '#/components/schemas/measurementQuantity-Type' - eventThresholdUphUmts: - $ref: '#/components/schemas/eventThresholdUphUmts-Type' - plmnList: - $ref: '#/components/schemas/plmnList-Type' + eventThresholdUphUMTS: + $ref: '#/components/schemas/eventThresholdUphUMTS-Type' + pLMNList: + $ref: '#/components/schemas/pLMNList-Type' positioningMethod: $ref: '#/components/schemas/positioningMethod-Type' reportAmount: @@ -1690,6 +1722,8 @@ components: $ref: '#/components/schemas/sensorInformation-Type' traceCollectionEntityId: $ref: '#/components/schemas/traceCollectionEntityId-Type' + excessPacketDelayThresholds: + $ref: '#/components/schemas/excessPacketDelayThresholds-Type' ManagedFunction-ncO: type: object @@ -1703,13 +1737,6 @@ components: TraceJob: $ref: '#/components/schemas/TraceJob-Multiple' - MnsRegistry-Single: - type: object - properties: - MnsInfo: - $ref: '#/components/schemas/MnsInfo-Multiple' - - #-------- Definition of concrete IOCs -------------------------------------------- VsDataContainer-Single: @@ -1909,7 +1936,7 @@ components: collectionTimeWindow: $ref: 'TS28623_ComDefs.yaml#/components/schemas/TimeWindow' reportingCtrl: - type: string + $ref: '#/components/schemas/ReportingCtrl' dataScope: type: string enum: @@ -2006,32 +2033,41 @@ components: $ref: 'TS28623_ComDefs.yaml#/components/schemas/Dn' jobId: type: string + MnsRegistry-Single: + allOf: + - $ref: '#/components/schemas/Top' + - type: object + properties: + MnsInfo: + $ref: '#/components/schemas/MnsInfo-Multiple' 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: 'TS28623_ComDefs.yaml#/components/schemas/Uri' - mnsScope: - description: >- - List of the managed object instances that can be accessed using the MnS. - If a complete SubNetwork can be accessed using the MnS, this attribute may contain the - DN of the SubNetwork instead of the DNs of the individual managed entities within the - SubNetwork. - type: array - items: - $ref: 'TS28623_ComDefs.yaml#/components/schemas/Dn' + allOf: + - $ref: '#/components/schemas/Top' + - 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: 'TS28623_ComDefs.yaml#/components/schemas/Uri' + mnsScope: + description: >- + List of the managed object instances that can be accessed using the MnS. + If a complete SubNetwork can be accessed using the MnS, this attribute may + contain the DN of the SubNetwork instead of the DNs of the individual managed + entities within the SubNetwork. + type: array + items: + $ref: 'TS28623_ComDefs.yaml#/components/schemas/Dn' #-------- Definition of YAML arrays for name-contained IOCs ---------------------- diff --git a/README.md b/README.md index d48cceab2b334389757d4ede3e3dcd52e487d41c..e64f569bbf18cd57d49c8469d5d8eef234bfee35 100644 --- a/README.md +++ b/README.md @@ -2,18 +2,18 @@ The Rel-16 branch represents the latest Rel-16 content approved and published after each TSG SA plenary. -Rel17-draft branch represents the current working in progress release status. +Rel-17 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 {+Rel17-draft+} validation status: +Branch {+Rel-17+} validation status: -[![pipeline status](https://forge.3gpp.org/rep/SA5/MnS/badges/Rel17-draft/pipeline.svg)](https://forge.3gpp.org/rep/SA5/MnS/commits/Rel17-draft) +[![pipeline status](https://forge.3gpp.org/rep/SA5/MnS/badges/Rel-17/pipeline.svg)](https://forge.3gpp.org/rep/SA5/MnS/commits/Rel-17) ## Data models validation The YANG data models in the present projects are validated by an automated CI agent. Learn more at: -* [Jenkins job run for this project](https://forge.3gpp.org/jenkins/view/SA5/) -* [Validation scripts repository](https://forge.3gpp.org/rep/tools/3gpp-scripts) +* [Management And Orchestration APIs Wiki](https://forge.3gpp.org/rep/sa5/MnS/-/wikis/home) +* [Validation scripts repository](https://forge.3gpp.org/rep/tools/3gpp-scripts/sa5) diff --git a/yang-models/_3gpp-5g-common-yang-types.yang b/yang-models/_3gpp-5g-common-yang-types.yang index 7101b213ce2ab4223a9fc8457f3d47ff96ba58f2..bd7d6a19807e9cc28e3f4b3b03357650d864349b 100755 --- a/yang-models/_3gpp-5g-common-yang-types.yang +++ b/yang-models/_3gpp-5g-common-yang-types.yang @@ -3,7 +3,7 @@ module _3gpp-5g-common-yang-types { namespace "urn:3gpp:sa5:_3gpp-5g-common-yang-types"; prefix "types5g3gpp"; - + import ietf-yang-types { prefix yang; } import _3gpp-common-yang-types { prefix types3gpp; } organization "3GPP SA5"; @@ -12,6 +12,7 @@ module _3gpp-5g-common-yang-types { network slicing."; reference "3GPP TS 28.541"; + revision 2023-05-09 { reference CR-0915; } revision 2021-08-05 { reference S5-214053/CR-0518; } revision 2020-11-05 { reference CR-0412 ; } revision 2019-10-20 { reference "Initial version."; } @@ -24,9 +25,8 @@ module _3gpp-5g-common-yang-types { leaf sd { description "Slice Differentiator If not needed, the value can be set to FFFFFF."; - type string{ + type yang:hex-string { length 6; - pattern '[a-fA-F0-9]*'; } reference "3GPP TS 23.003"; } diff --git a/yang-models/_3gpp-5gc-nrm-QFQoSMonitoringControl.yang b/yang-models/_3gpp-5gc-nrm-QFQoSMonitoringControl.yang index a7290eb818034aa64431d8cb86046b6506a004ee..a0c284c6058b0d5bb70d2800b056583b6a7a28dc 100755 --- a/yang-models/_3gpp-5gc-nrm-QFQoSMonitoringControl.yang +++ b/yang-models/_3gpp-5gc-nrm-QFQoSMonitoringControl.yang @@ -16,7 +16,7 @@ module _3gpp-5gc-nrm-QFQoSMonitoringControl { in 3GPP TS 23.501."; reference "3GPP TS 28.541"; - revision 2020-11-05 { reference CR-0412 ; } + revision 2020-11-07 { reference CR-0412 ; } revision 2020-08-03 { reference "CR-0321"; } revision 2020-04-10 { reference "S5-202101"; } diff --git a/yang-models/_3gpp-5gc-nrm-configurable5qiset.yang b/yang-models/_3gpp-5gc-nrm-configurable5qiset.yang index 9561ede161dfd0b172a2c1cd434824d50d1a4c27..855d9ea76df943b1510fecf9e0f40b285cadde9f 100755 --- a/yang-models/_3gpp-5gc-nrm-configurable5qiset.yang +++ b/yang-models/_3gpp-5gc-nrm-configurable5qiset.yang @@ -1,32 +1,30 @@ module _3gpp-5gc-nrm-configurable5qiset { yang-version 1.1; - namespace urn:3gpp:sa5:_3gpp-5gc-nrm-configurable5qiset; - prefix Conf5QIs3gpp; - + 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 configurable 5QIs, including - their QoS characteristics, that need to be pre-configured + description "This IOC represents the configurable 5QIs, including + their QoS characteristics, that need to be pre-configured (and configurable) to the 5G NFs."; reference "3GPP TS 28.541"; + revision 2022-07-27 { reference "CR-0769"; } revision 2022-04-29 { reference "CR-0729"; } revision 2022-01-07 { reference CR-0643; } revision 2020-08-04 { reference "CR-0321"; } revision 2020-06-03 { reference "CR-0286"; } - grouping PacketErrorRate { + grouping PacketErrorRateGrp { leaf scalar { type uint32 { range 0..9 ; } mandatory true; - description "The Packet Error Rate of a 5QI expressed as Scalar x 10-k + description "The Packet Error Rate of a 5QI expressed as Scalar x 10-k where k is the Exponent."; } leaf exponent { @@ -34,18 +32,13 @@ module _3gpp-5gc-nrm-configurable5qiset { range 0..9 ; } mandatory true; - description "The Packet Error Rate of a 5QI expressed as Scalar x 10-k, + 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 ; @@ -60,87 +53,83 @@ module _3gpp-5gc-nrm-configurable5qiset { enum NON_GBR; } mandatory true; - description "It indicates the Resource Type of a 5QI, as specified + description "It indicates the Resource Type of a 5QI, as specified in TS 23.501 "; } - + leaf priorityLevel { type uint32 { range 0..127 ; } + mandatory true; + description "It indicates the Priority Level of a 5QI, as specified + in TS 23.501."; } - + leaf packetDelayBudget { type uint32 { range 0..1023 ; } - description "Indicates the Packet Delay Budget (in unit of 0.5ms)of a 5QI, + mandatory true; + 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 1; max-elements 1; - uses PacketErrorRate; - reference "TS 23.501"; + uses PacketErrorRateGrp; + description "It indicates the Packet Error Rate of a 5QI, + as specified in TS 23.501."; } leaf averagingWindow { type uint32 { range 0..4095 ; } + mandatory true; units ms; reference "TS 23.501"; } - + leaf maximumDataBurstVolume { type uint32{ range 0..4095 ; } + mandatory true; 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 { + description "Represents the Configurable5QISet IOC. + No attributes defined."; + } + + grouping FiveQICharacteristicsSubtree { + list FiveQICharacteristics { + description "This specifies the 5QI value and the corresponding + QoS characteristics for a 5QI."; 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 + 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; } + uses FiveQICharacteristicsSubtree; } } - - augment "/subnet3gpp:SubNetwork" { - uses Configurable5QISetSubtree; - } - - augment "/me3gpp:ManagedElement" { - uses Configurable5QISetSubtree; - } -} +} \ No newline at end of file diff --git a/yang-models/_3gpp-5gc-nrm-dynamic5qiset.yang b/yang-models/_3gpp-5gc-nrm-dynamic5qiset.yang index b19c9f6d790f12a90fa7b6ff6727c819cbf0a877..275507d95bf3b270dce74e34ba5120272b8069e5 100755 --- a/yang-models/_3gpp-5gc-nrm-dynamic5qiset.yang +++ b/yang-models/_3gpp-5gc-nrm-dynamic5qiset.yang @@ -1,6 +1,5 @@ module _3gpp-5gc-nrm-dynamic5qiset { yang-version 1.1; - namespace urn:3gpp:sa5:_3gpp-5gc-nrm-dynamic5qiset; prefix dyn5QIs3gpp; @@ -15,6 +14,7 @@ module _3gpp-5gc-nrm-dynamic5qiset { characteristics."; reference "3GPP TS 28.541"; + revision 2022-07-27 { reference "CR-0769"; } revision 2022-01-07 { reference CR-0643; } revision 2020-10-01 { reference "CR-0393"; } revision 2020-08-06 { reference "CR-0333"; } @@ -22,10 +22,15 @@ module _3gpp-5gc-nrm-dynamic5qiset { grouping Dynamic5QISetGrp { description "Represents the Dynamic5QISet IOC."; list dynamic5QIs { - key id; - uses top3gpp:Top_Grp; - container attributes { - uses Conf5QIs3gpp:FiveQICharacteristicsGrp; + description "This IOC specifies the dynamically assigned 5QIs + including their QoS characteristics, see 3GPP TS 23.501. + The instance of this IOC shall not be created or modified by the + MnS consumer except for the instance associated to + PCFFunction MOI or SMFFunction MOI when the PCF is not deployed."; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses Conf5QIs3gpp:FiveQICharacteristicsGrp; } } } @@ -40,6 +45,7 @@ module _3gpp-5gc-nrm-dynamic5qiset { container attributes { uses Dynamic5QISetGrp; } + uses Conf5QIs3gpp:FiveQICharacteristicsSubtree; } } diff --git a/yang-models/_3gpp-5gc-nrm-externalseppfunction.yang b/yang-models/_3gpp-5gc-nrm-externalseppfunction.yang index 38496aaaae2394b2bbebc945d4b924efb5d2dc2c..4d127756256609556783673790b1f1301cfd97cd 100755 --- a/yang-models/_3gpp-5gc-nrm-externalseppfunction.yang +++ b/yang-models/_3gpp-5gc-nrm-externalseppfunction.yang @@ -15,10 +15,10 @@ module _3gpp-5gc-nrm-externalseppfunction { 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 { + revision 2019-11-19 { description "initial revision"; reference "Based on - 3GPP TS 28.541 V16.X.XX"; + 3GPP TS 28.541 "; } grouping ExternalSEPPFunctionGrp { diff --git a/yang-models/_3gpp-5gc-nrm-nrffunction.yang b/yang-models/_3gpp-5gc-nrm-nrffunction.yang index 62e0ca74cce7cc84a2d1beea319c9eae958366e3..6356fe1271a76fc2d0633e5703d4ca7b92cfe394 100755 --- a/yang-models/_3gpp-5gc-nrm-nrffunction.yang +++ b/yang-models/_3gpp-5gc-nrm-nrffunction.yang @@ -18,7 +18,7 @@ module _3gpp-5gc-nrm-nrffunction { 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-11-07 { reference CR-0412 ; } revision 2020-08-03 { reference "CR-0321"; } revision 2019-10-28 { reference S5-193518 ; } revision 2019-05-15 { reference "initial revision"; } diff --git a/yang-models/_3gpp-5gc-nrm-nssffunction.yang b/yang-models/_3gpp-5gc-nrm-nssffunction.yang index b68d988ecf5de2be280cbcbebf06f2f424e30c1f..737b630f06c3747a3e7c011461ef8638e9d96f8e 100755 --- a/yang-models/_3gpp-5gc-nrm-nssffunction.yang +++ b/yang-models/_3gpp-5gc-nrm-nssffunction.yang @@ -17,7 +17,7 @@ module _3gpp-5gc-nrm-nssffunction { information about the NSSF, see 3GPP TS 23.501."; reference "3GPP TS 28.541"; - revision 2020-11-05 { reference CR-0412 ; } + revision 2020-11-07 { 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"; } diff --git a/yang-models/_3gpp-5gc-nrm-nwdaffunction.yang b/yang-models/_3gpp-5gc-nrm-nwdaffunction.yang index bf143ba350e6b91599f8f3fd8d7ad39a732049ee..4c91c240a93d3dcd18f75eae4878556675d0a0d6 100755 --- a/yang-models/_3gpp-5gc-nrm-nwdaffunction.yang +++ b/yang-models/_3gpp-5gc-nrm-nwdaffunction.yang @@ -16,7 +16,7 @@ module _3gpp-5gc-nrm-nwdaffunction { 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 2020-11-07 { reference CR-0412 ; } revision 2019-10-25 { reference "S5-194457 S5-195427 S5-193518"; } revision 2019-05-15 {reference "initial revision"; } diff --git a/yang-models/_3gpp-5gc-nrm-pcffunction.yang b/yang-models/_3gpp-5gc-nrm-pcffunction.yang index a7f9bd152503fd84b45d5709f5744f13c3608871..9fc1c558dda2c0c8a9e6c1e13d69b249185c7965 100755 --- a/yang-models/_3gpp-5gc-nrm-pcffunction.yang +++ b/yang-models/_3gpp-5gc-nrm-pcffunction.yang @@ -17,7 +17,7 @@ module _3gpp-5gc-nrm-pcffunction { information about the PCF, see 3GPP TS 23.501."; reference "3GPP TS 28.541"; - revision 2020-11-05 { reference CR-0412 ; } + revision 2020-11-07 { 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"; } diff --git a/yang-models/_3gpp-5gc-nrm-scpfunction.yang b/yang-models/_3gpp-5gc-nrm-scpfunction.yang index aa1f980725193fa68b25fe8780dccd3b1cccb8ed..8e86bc5a289e12abb61f2d3b08fd0d04e1a69d00 100755 --- a/yang-models/_3gpp-5gc-nrm-scpfunction.yang +++ b/yang-models/_3gpp-5gc-nrm-scpfunction.yang @@ -14,10 +14,10 @@ module _3gpp-5gc-nrm-scpfunction { 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 { + revision 2019-10-21 { description "initial revision"; reference "Based on - 3GPP TS 28.541 V16.X.XX"; + 3GPP TS 28.541 "; } grouping SCPFunctionGrp { diff --git a/yang-models/_3gpp-5gc-nrm-smffunction.yang b/yang-models/_3gpp-5gc-nrm-smffunction.yang index 04659fb7177c0faa018a10b85ac6eea4b630428c..99469f4b8d5782a8b5affcd3c71166f68e0be3e4 100755 --- a/yang-models/_3gpp-5gc-nrm-smffunction.yang +++ b/yang-models/_3gpp-5gc-nrm-smffunction.yang @@ -14,7 +14,7 @@ module _3gpp-5gc-nrm-smffunction { 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-11-07 { 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"; } diff --git a/yang-models/_3gpp-5gc-nrm-udmfunction.yang b/yang-models/_3gpp-5gc-nrm-udmfunction.yang index 74965272afb49cd82bef6c063cd0815e141fc157..14c0cf9ecccb2752f2a12fe43ca26f89a80aae60 100755 --- a/yang-models/_3gpp-5gc-nrm-udmfunction.yang +++ b/yang-models/_3gpp-5gc-nrm-udmfunction.yang @@ -17,7 +17,7 @@ module _3gpp-5gc-nrm-udmfunction { information about the UDM, see 3GPP TS 23.501."; reference "3GPP TS 28.541"; - revision 2020-11-05 { reference CR-0412 ; } + revision 2020-11-07 { reference CR-0412 ; } revision 2019-10-25 { reference "S5-194457 S5-195427 S5-193518"; } revision 2019-05-22 { reference "initial revision";} diff --git a/yang-models/_3gpp-5gc-nrm-udrfunction.yang b/yang-models/_3gpp-5gc-nrm-udrfunction.yang index 5eabaac8b2eafee0b8dbfb53a595821b2dd990ff..3c2fb27dc026bab874eff6529e1a219ed3abe38e 100755 --- a/yang-models/_3gpp-5gc-nrm-udrfunction.yang +++ b/yang-models/_3gpp-5gc-nrm-udrfunction.yang @@ -17,7 +17,7 @@ module _3gpp-5gc-nrm-udrfunction { about the UDR, see 3GPP TS 23.501."; reference "3GPP TS 28.541"; - revision 2020-11-05 { reference CR-0412 ; } + revision 2020-11-07 { reference CR-0412 ; } revision 2019-10-25 { reference "S5-194457 S5-195427 S5-193518"; } revision 2019-05-22 {reference "initial revision"; } diff --git a/yang-models/_3gpp-5gc-nrm-udsffunction.yang b/yang-models/_3gpp-5gc-nrm-udsffunction.yang index c0ef6f2176a74924cbc62eba684453c4a6cd239c..e6d4d3683083fdb05d1a98ddac6a6406e612ed99 100755 --- a/yang-models/_3gpp-5gc-nrm-udsffunction.yang +++ b/yang-models/_3gpp-5gc-nrm-udsffunction.yang @@ -17,7 +17,7 @@ module _3gpp-5gc-nrm-udsffunction { with any other 5GC NF defined in 3GPP TS 23.501."; reference "3GPP TS 28.541"; - revision 2020-11-05 { reference CR-0412 ; } + revision 2020-11-07 { reference CR-0412 ; } revision 2019-10-25 { reference "S5-194457 S5-195427 S5-193518"; } revision 2019-05-22 { reference "initial revision"; } diff --git a/yang-models/_3gpp-5gc-nrm-upffunction.yang b/yang-models/_3gpp-5gc-nrm-upffunction.yang index 1443942e5bcdc28914c0404296b2736dad2f2505..e09f6eb696f5711c77c11728a5c85b5752471de5 100755 --- a/yang-models/_3gpp-5gc-nrm-upffunction.yang +++ b/yang-models/_3gpp-5gc-nrm-upffunction.yang @@ -14,7 +14,7 @@ module _3gpp-5gc-nrm-upffunction { description "UPFFunction derived from basic ManagedFunction."; reference "3GPP TS 28.541 5G Network Resource Model (NRM)"; - revision 2020-11-05 { reference CR-0412 ; } + revision 2020-11-07 { 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"; } diff --git a/yang-models/_3gpp-common-filemanagement.yang b/yang-models/_3gpp-common-filemanagement.yang index 39dc1093f5a8fce96ae811e71294f2a51f28f54b..34c6d9ae6c4168fa6ad6f585f24c07873eb83d8e 100644 --- a/yang-models/_3gpp-common-filemanagement.yang +++ b/yang-models/_3gpp-common-filemanagement.yang @@ -6,6 +6,7 @@ module _3gpp-common-filemanagement { import _3gpp-common-subnetwork { prefix subnet3gpp; } import _3gpp-common-top { prefix top3gpp; } import _3gpp-common-yang-types { prefix yang3gpp; } + import _3gpp-common-yang-extensions { prefix yext3gpp; } import _3gpp-common-managed-element { prefix me3gpp; } organization "3GPP SA5"; @@ -14,6 +15,7 @@ module _3gpp-common-filemanagement { Class (IOC) that is part of the Generic Network Resource Model (NRM)."; reference "3GPP TS 28.623 Generic Network Resource Model (NRM)"; + revision 2022-10-31 { reference CR-0195; } revision 2022-02-10 { reference "Initial revision, S5-221757"; } grouping FileDownloadProcessMonitor { @@ -50,18 +52,20 @@ module _3gpp-common-filemanagement { allowedValues: File URI (See RFC 8089)"; mandatory true; type string; + yext3gpp:notNotifyable; } leaf notificationRecipientAddress { description "Address of the notification recipient."; type string; + yext3gpp:notNotifyable; } leaf cancelJob { description "Setting this attribute to TRUE cancels the file download job. - As specified in the definition of ProcessMonitor, cancellation is possible in - the NOT_STARTED and RUNNING state. Setting the attribute to FALSE has no - observable result."; + As specified in the definition of ProcessMonitor, cancellation is + possible in the NOT_STARTED and RUNNING state. Setting the attribute + to FALSE has no observable result."; type boolean; mandatory true; } @@ -92,4 +96,4 @@ module _3gpp-common-filemanagement { augment "/me3gpp:ManagedElement" { uses FileDownloadJobSubtree; } -} +} \ No newline at end of file diff --git a/yang-models/_3gpp-common-fm.yang b/yang-models/_3gpp-common-fm.yang index 1399a086f6524651ae881b78af17a5c673927bf4..4e4d2b9a36299b89782ff72d20e24f326c075f16 100755 --- a/yang-models/_3gpp-common-fm.yang +++ b/yang-models/_3gpp-common-fm.yang @@ -6,6 +6,7 @@ module _3gpp-common-fm { import ietf-yang-types { prefix yang; } import _3gpp-common-top { prefix top3gpp; } import _3gpp-common-yang-types { prefix types3gpp; } + import _3gpp-common-yang-extensions { prefix yext3gpp; } organization "3GPP SA5"; contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; @@ -22,11 +23,16 @@ module _3gpp-common-fm { Integration Reference Point (IRP); Information Service (IS)"; + revision 2023-05-09 { reference CR-0249; } + revision 2022-10-31 { reference CR-0195; } revision 2021-08-08 { reference "CR-0132"; } revision 2021-06-02 { reference "CR-0130"; } revision 2020-06-03 { reference "CR-0091"; } - revision 2020-02-24 { - reference "S5-201365"; + revision 2020-02-24 { reference "S5-201365"; } + + feature AcknowledgeByConsumer { + description "Indicates whether alarm acknowledgement by the consumer is + supported."; } typedef eventType { @@ -59,7 +65,7 @@ module _3gpp-common-fm { value 8; } - enum PHYSICAL_VIOLATIONu { + enum PHYSICAL_VIOLATION { value 9; } @@ -85,8 +91,7 @@ module _3gpp-common-fm { enum CLEARED { value 8; } } - description "The possible alarm serverities. - Aligned with ERICSSON-ALARM-MIB."; + description "The possible alarm severities"; } grouping AlarmRecordGrp { @@ -107,96 +112,108 @@ module _3gpp-common-fm { type string; mandatory true; description "Identifies the alarmRecord"; + yext3gpp:notNotifyable; } leaf objectInstance { - type string; + type types3gpp:DistinguishedName; config false ; mandatory true; + yext3gpp:notNotifyable; } leaf notificationId { type int32; config false ; mandatory true; + description "The Id of the last notification updating the AlarmRecord."; + yext3gpp:notNotifyable; } leaf alarmRaisedTime { type yang:date-and-time ; + mandatory true; config false ; + yext3gpp:notNotifyable; } leaf alarmChangedTime { type yang:date-and-time ; config false ; description "not applicable if related alarm has not changed"; + yext3gpp:notNotifyable; } leaf alarmClearedTime { type yang:date-and-time ; config false ; description "not applicable if related alarm was not cleared"; + yext3gpp:notNotifyable; } leaf alarmType { type eventType; config false ; + mandatory true; description "General category for the alarm."; + yext3gpp:notNotifyable; } leaf probableCause { + type union { + type int32; type string; + } config false ; + mandatory true; + yext3gpp:notNotifyable; } leaf specificProblem { + type union { + type int32; type string; + } config false ; reference "ITU-T Recommendation X.733 clause 8.1.2.2."; + yext3gpp:notNotifyable; } leaf perceivedSeverity { type severity-level; + mandatory true; description "This is Writable only if producer supports consumer to set perceivedSeverity to CLEARED"; + yext3gpp:notNotifyable; } leaf backedUpStatus { - type string; + type boolean; 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."; + yext3gpp:notNotifyable; } leaf backUpObject { - type string; + type types3gpp:DistinguishedName; config false ; + description "Backup object of the alarmed object as defined in + ITU-T Rec. X. 733"; + yext3gpp:notNotifyable; } leaf trendIndication { - type string; + type enumeration { + enum MORE_SEVERE; + enum NO_CHANGE; + enum LESS_SEVERE; + } 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."; - } + yext3gpp:notNotifyable; } grouping ThresholdInfoGrp { @@ -221,27 +238,76 @@ module _3gpp-common-fm { thresholdValue."; } - uses 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."; + } } list thresholdInfo { config false ; - uses ThresholdInfoGrp; + yext3gpp:notNotifyable; + description "Indicates the crossed threshold"; + uses ThresholdInfoGrp; } - leaf stateChangeDefinition { - type string; + list stateChangeDefinition { + key attributeName; config false ; - description "Indicates MO attribute value changes. See definition - in ITU-T Recommendation X.733 clause 8.1.2.11."; + description "Indicates MO attribute value changes associated with the + alarm for state attributes of the monitored entity (state transitions). + The change is reported with the name of the state attribute, the new + value and an optional old value. + See definition in ITU-T Recommendation X.733 [4] clause 8.1.2.10."; + yext3gpp:notNotifyable; + + leaf attributeName { + type string; + } + + anydata newValue { + mandatory true; + description "The new value of the attribute. The content of this data + node shall be in accordance with the data model for the attribute."; + } + + anydata oldValue{ + description "The old value of the attribute. The content of this data + node shall be in accordance with the data model for the attribute."; } + } + + list monitoredAttributes { + key attributeName; + config false ; + yext3gpp:notNotifyable; + description "Attributes of the monitored entity and their + values at the time the alarm occurred that are of interest for the + alarm report."; + reference "ITU-T Recommendation X.733 clause 8.1.2.11."; - leaf monitoredAttributes { + leaf attributeName { 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."; + } + + anydata value { + mandatory true; + description "The value of the attribute. The content of this data + node shall be in accordance with the data model for the attribute."; + } } leaf proposedRepairActions { @@ -249,50 +315,62 @@ module _3gpp-common-fm { config false ; description "Indicates proposed repair actions. See definition in ITU-T Recommendation X.733 clause 8.1.2.12."; + yext3gpp:notNotifyable; } leaf additionalText { type string; config false ; + yext3gpp:notNotifyable; } - anydata additionalInformation { + list additionalInformation { + key name; config false ; + yext3gpp:notNotifyable; + description "Vendor specific alarm information in the alarm."; + uses types3gpp:nameValuePair; } leaf rootCauseIndicator { - type enumeration { - enum YES; - enum NO; - } + type boolean; + default false; 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."; + yext3gpp:notNotifyable; } leaf ackTime { + if-feature AcknowledgeByConsumer; 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."; + yext3gpp:notNotifyable; } leaf ackUserId { + if-feature AcknowledgeByConsumer; type string; description "It identifies the last user who has changed the Acknowledgement State."; + yext3gpp:notNotifyable; } leaf ackSystemId { + if-feature AcknowledgeByConsumer; type string; description "It identifies the system (Management System) that last changed the ackState of an alarm, i.e. acknowledged or unacknowledged the alarm."; + yext3gpp:notNotifyable; } leaf ackState { + if-feature AcknowledgeByConsumer; type enumeration { enum ACKNOWLEDGED { description "The alarm has been acknowledged."; @@ -302,16 +380,19 @@ module _3gpp-common-fm { been acknowledged."; } } + yext3gpp:notNotifyable; } leaf clearUserId { type string; description "Carries the identity of the user who invokes the clearAlarms operation."; + yext3gpp:notNotifyable; } leaf clearSystemId { type string; + yext3gpp:notNotifyable; } leaf serviceUser { @@ -320,6 +401,7 @@ module _3gpp-common-fm { description "It identifies the service-user whose request for service provided by the serviceProvider led to the generation of the security alarm."; + yext3gpp:notNotifyable; } leaf serviceProvider { @@ -328,12 +410,28 @@ module _3gpp-common-fm { description "It identifies the service-provider whose service is requested by the serviceUser and the service request provokes the generation of the security alarm."; + yext3gpp:notNotifyable; } leaf securityAlarmDetector { type string; config false ; + yext3gpp:notNotifyable; + } + + list correlatedNotifications { + key sourceObjectInstance; + description "List of correlated notifications"; + + leaf sourceObjectInstance { + type types3gpp:DistinguishedName; + } + + leaf-list notificationId { + type int32; + min-elements 1; } + } } grouping AlarmListGrp { @@ -361,17 +459,20 @@ module _3gpp-common-fm { config false; mandatory true; description "The number of alarm records in the AlarmList"; + yext3gpp:notNotifyable; } leaf lastModification { type yang:date-and-time ; config false; description "The last time when an alarm record was modified"; + yext3gpp:notNotifyable; } list alarmRecords { key alarmId; description "List of alarmRecords"; + yext3gpp:notNotifyable; uses AlarmRecordGrp; } } diff --git a/yang-models/_3gpp-common-managed-element.yang b/yang-models/_3gpp-common-managed-element.yang index 33acde382acf356b414420ce624d7a6d6409c953..066b356aa9174913e4b126d69f8c7e0ca46db007 100755 --- a/yang-models/_3gpp-common-managed-element.yang +++ b/yang-models/_3gpp-common-managed-element.yang @@ -9,7 +9,8 @@ module _3gpp-common-managed-element { import _3gpp-common-subscription-control { prefix subscr3gpp; } import _3gpp-common-fm { prefix fm3gpp; } import _3gpp-common-trace { prefix trace3gpp; } - + import _3gpp-5gc-nrm-configurable5qiset { prefix conf5QIs3gpp; } + organization "3GPP SA5"; contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; @@ -28,6 +29,7 @@ module _3gpp-common-managed-element { 3GPP TS 28.620 Umbrella Information Model (UIM)"; + revision 2022-07-26 { reference CR-0180 ; } revision 2021-01-16 { reference "CR-0120"; } revision 2020-08-06 { reference "CR-0102"; } revision 2020-08-03 { reference "CR-0095"; } @@ -37,6 +39,10 @@ module _3gpp-common-managed-element { revision 2019-06-17 { reference " S5-203316"; } revision 2019-05-08 { reference "Initial revision"; } + feature Configurable5qisetUnderManagedElement { + description "The Configurable5qiset shall be contained under ManagedElement"; + } + feature MeasurementsUnderManagedElement { description "The MeasurementSubtree shall be contained under ManagedElement"; @@ -244,5 +250,8 @@ module _3gpp-common-managed-element { if-feature TraceUnderManagedElement; } + uses conf5QIs3gpp:Configurable5QISetSubtree { + if-feature Configurable5qisetUnderManagedElement; + } } } \ No newline at end of file diff --git a/yang-models/_3gpp-common-managed-function.yang b/yang-models/_3gpp-common-managed-function.yang index 57d745917952e3185b514c928e762d2da64771fb..608ced2963e6e5596463e43fe528a4bee7723e89 100755 --- a/yang-models/_3gpp-common-managed-function.yang +++ b/yang-models/_3gpp-common-managed-function.yang @@ -4,6 +4,7 @@ module _3gpp-common-managed-function { prefix mf3gpp; import _3gpp-common-yang-types { prefix types3gpp; } + import _3gpp-common-yang-extensions { prefix yext3gpp; } import _3gpp-common-top { prefix top3gpp; } import _3gpp-common-measurements { prefix meas3gpp; } import _3gpp-common-trace { prefix trace3gpp; } @@ -20,6 +21,7 @@ module _3gpp-common-managed-function { 3GPP TS 28.620 Umbrella Information Model (UIM)"; + revision 2022-10-31 { reference CR-0195; } revision 2022-01-07 { reference "CR-0146"; } revision 2021-01-25 { reference "CR-0122"; } revision 2020-09-30 { reference "CR-bbbb"; } @@ -46,6 +48,7 @@ module _3gpp-common-managed-function { leaf name { type string; mandatory true; + yext3gpp:notNotifyable; } leaf-list allowedNFTypes { @@ -83,6 +86,7 @@ module _3gpp-common-managed-function { 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"; + yext3gpp:notNotifyable; } list sAP { @@ -322,4 +326,4 @@ module _3gpp-common-managed-function { if-feature TraceUnderManagedFunction ; } } -} +} \ No newline at end of file diff --git a/yang-models/_3gpp-common-managementdatacollection.yang b/yang-models/_3gpp-common-managementdatacollection.yang new file mode 100644 index 0000000000000000000000000000000000000000..0704facf57aad69e03e87aa734524afe3f259df7 --- /dev/null +++ b/yang-models/_3gpp-common-managementdatacollection.yang @@ -0,0 +1,265 @@ +module _3gpp-common-managementdatacollection { + yang-version 1.1; + namespace "urn:3gpp:sa5:_3gpp-common-managementdatacollection"; + prefix "mgtdatcol3gpp"; + + import _3gpp-common-top { prefix top3gpp; } + import _3gpp-common-yang-types {prefix types3gpp; } + //import ietf-inet-types { prefix inet; } + import ietf-yang-types { prefix yang; } + import _3gpp-common-subnetwork { prefix subnet3gpp; } + + organization "3GPP SA5"; + contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; + + description "Handling management data collection"; + + 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 2022-11-03 { reference "CR-0193"; } + + + 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 NodeFilterGrp { + + list areaOfInterest { + key idx; + leaf idx { + type string; + } + uses Tai; // (Maybe type: types3gpp:Tai,if we define Tai there.) + // mandatory false + min-elements 1; + description "It specifies a location(s) from where the management data + shall be collected. It is defined in terms of TAI(s)."; + } + + leaf networkDomain { + type enumeration { + enum CN; + enum RAN; + } + // mandatory false + description "It specifies the network domain of the target node. This + will also result in collecting appropriate management data from the + nodes belonging to the specified domain."; + } + + leaf cpUpType { + type enumeration { + enum CP; + enum UP; + } + // mandatory false + description "It specifies the traffic type of the target node. This will + also result in collecting appropriate management data from the nodes + handling the specified traffic (e.g AMF for CP and UPF for UP)."; + } + + leaf sst { + type uint8; // TS 28.003 clause 28.4. + //mandatory false; + description "It specifies the slice service type (SST) of which the slice + subnet should be targeted. Please refer to 3GPP TS 23.501: 'System + Architecture for the 5G System'"; + } + } + + typedef mgtDataCategoryType { + type enumeration { + enum COVERAGE; + enum CAPACITY; + enum ENERGY_EFFICIENCY; + enum MOBILITY; + enum ACCESSIBILITY; + } + description ""; + } + + grouping TimeWindowGrp { + leaf startTime { + type yang:date-and-time; + } + leaf endTime { + type yang:date-and-time; + } + } + + + grouping ManagementDataCollectionGrp { + + choice managementData { + case mgtDataCategory { + leaf-list category { + type mgtDataCategoryType; + min-elements 1; + max-elements 5; // The ENUM contains 5 possible values + description "This attributes defines the type of management data that + are requested. + + Allowed values for data category are COVERAGE, CAPACITY, + ENERGY_EFFICIENCY, MOBILITY, ACCESSIBILITY. The data categories + will map to certain measurement families defined in TS 28.552, see + below. In addition to the below mappings, MnS producer may map the + provided categories to any additional proprietary management data, + as appropriate. + + - The COVERAGE category will map to measurement families of MR + (measurements related to Measurement Report) and L1M (measurements + related to Layer 1 Measurement). + + - The CAPACITY category will map to measurement family RRU + (measurements related to Radio Resource Utilization). + + - The ENERGY_EFFICIENCY category will map to measurement family PEE + (measurements related to Power, Energy and Environment). + + - The MOBILITY category will map to measurement family MM + (measurements related to Mobility Management). + + - The ACCESSIBILITY category will map to measurement family CE + (measurements related to Connection Establishment)."; + } + } + case mgtDataName { + leaf-list name { + type string; + min-elements 1; + description "The list may include metrics or set of metrics defined + in TS 28.552, TS 28.554 and TS 32.422. + + The metrics are identified with their names/identifiers. + For performance 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 according to the + KPI definitions template as the component designated with a). + + For trace metrics (including trace messages, MDT measurements + (Immediate MDT, Logged MDT, Logged MBSFN MDT), RLF and RCEF + reports) defined in TS 32.422, the name (metric identifier) is + defined in clause 10 of TS 32.422."; + } + } + mandatory true; + } + + list targetNodeFilter { + key idx; + leaf idx { + type string; + } + min-elements 1; + description "Set of information to target the Object Instance to collect + the measurements from."; + uses NodeFilterGrp; + } + + list collectionTimeWindow { + key "startTime endTime"; + max-elements 1; + description "Collection time window for which the management data + should be reported."; + uses TimeWindowGrp; + } + + list reportingCtrl { + key idx; + leaf idx { + type string; + } + min-elements 1; + max-elements 1; + uses types3gpp:ReportingCtrl; + description "Selecting the reporting method and defining associated + control parameters."; + } + + leaf dataScope { + type enumeration { + enum SNSSAI; + enum 5QI; + } + // mandatory false; [Implicit] + description "It specifies whether the required data is reported per + S-NSSAI or per 5QI."; + } + } + + augment /subnet3gpp:SubNetwork { + + list ManagementDataCollection { + key id; + uses top3gpp:Top_Grp ; + container attributes { + uses ManagementDataCollectionGrp; + } + description "This IOC represents a management data collection request + job. The requested data could be of kind Trace, MDT (Minimization + of Drive Test), RLF (Radio Link Failure) report, RCEF (RRC Connection + Establishment Failure) report, PM (performance measurements), KPI + (end-to-end key performance indicators) or a combination of these. + + The attribute 'managementData' defines the management data which shall + be reported. This may either include a list of data categories or a + list of management data identified with their name. For further details + see TS 28.622 clause 4.3.50. The 'targetNodeFilter' attribute can be + used to target object instance(s) producing the required management + data. It is assumed that the consumer may not have detailed knowledge + of the network and hence may not identify the exact object instance + producing the required management data. In this case consumer can + request management data, specified by 3GPP, produced by certain network + function(s) based on a particular location, the domain (CN or RAN) of + the network function, and the handled traffic (CP or UP) of the network + function. + + To activate the production of the requested data, a MnS consumer has to + create a 'ManagementDataCollection' object instance on the MnS producer. + + The MnS producer will derive multiple jobs ('PerfMetricJob', + 'TraceJob') from a single 'ManagementDataCollection' job for collecting + the required management data. Once it receives the measurement from + multiple sources, it consolidates the data into a set of management data + for reporting. + + The attribute 'collectionTimeWindow' specifies the time window for which + the management data should be reported. + + The attribute 'reportingCtrl' specifies the method and associated + control parameters for reporting the produced management data 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. + + The attribute 'dataScope' configures, whether the management data + should be reported per S-NSSAI or per 5QI, if applicable."; + } + } + +} \ No newline at end of file diff --git a/yang-models/_3gpp-common-measurements.yang b/yang-models/_3gpp-common-measurements.yang index 96893e6c393426eef89f311c6b2c8e53c1fa8487..9162c103d6c2ae8c39d2c57f9f4840f14e3492e2 100755 --- a/yang-models/_3gpp-common-measurements.yang +++ b/yang-models/_3gpp-common-measurements.yang @@ -5,6 +5,7 @@ module _3gpp-common-measurements { import _3gpp-common-top { prefix top3gpp; } import _3gpp-common-yang-types { prefix types3gpp; } + import _3gpp-common-yang-extensions { prefix yext3gpp; } organization "3GPP SA5"; contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; @@ -53,6 +54,9 @@ module _3gpp-common-measurements { Integration Reference Point (IRP); Information Service (IS)"; + revision 2023-02-15 { reference "CR-0239";} + revision 2022-11-03 { reference "CR-0193"; } + revision 2022-10-31 { reference CR-0195; } revision 2021-07-22 { reference "CR-0137"; } revision 2020-11-06 { reference "CR-0118"; } revision 2020-09-04 { reference "CR-000107"; } @@ -190,6 +194,8 @@ module _3gpp-common-measurements { range 1..max ; } units seconds; + description "Granularity periods supported for the associated + measurement types. The period is defined in seconds."; } leaf-list reportingMethods { @@ -201,13 +207,13 @@ module _3gpp-common-measurements { min-elements 1; } - leaf-list monitorGranularityPeriods { + leaf-list reportingPeriods { type uint32 { range 1..max ; } units seconds; - description "Granularity periods supported for the monitoring of - associated measurement types for thresholds"; + description "Reporting periods supported for the associated + measurement types. The period is defined in seconds."; } } } @@ -273,62 +279,12 @@ module _3gpp-common-measurements { 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; + uses types3gpp:ReportingCtrl { + refine "reportingCtrl/file-based-reporting/fileReportingPeriod" { 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."; - } } } } @@ -357,6 +313,7 @@ module _3gpp-common-measurements { min-elements 1; leaf idx { type uint32 ; } uses ThresholdInfoGrp; + description "List of threshold info."; } leaf monitorGranularityPeriod { @@ -371,12 +328,14 @@ module _3gpp-common-measurements { leaf-list objectInstances { type types3gpp:DistinguishedName; + yext3gpp:notNotifyable; } 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."; + yext3gpp:notNotifyable; } } @@ -491,6 +450,9 @@ module _3gpp-common-measurements { A threshold monitor checks for threshold crossings of performance metric values and generates a notification when that happens. + The ThresholdMonitor is used only when NRM based threshold + monitoring is supported. + 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 @@ -522,6 +484,8 @@ module _3gpp-common-measurements { 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. + The value is a multiple of a supported granularity period for the + measurements being monitored. Each threshold is identified with a number (key) called thresholdLevel. A threshold is defined using the attributes thresholdValue , diff --git a/yang-models/_3gpp-common-mnsregistry.yang b/yang-models/_3gpp-common-mnsregistry.yang index df01996aa3ae3bb09054e9aba515dc2bd9165b8c..f0c3a3d07cd530b92617dee82738cb7f28c5501b 100755 --- a/yang-models/_3gpp-common-mnsregistry.yang +++ b/yang-models/_3gpp-common-mnsregistry.yang @@ -13,13 +13,14 @@ 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 2023-09-09 { reference CR0242; } + revision 2023-07-25 { reference CR00252; } revision 2021-11-23 { reference "S5-216090"; } revision 2021-10-18 { reference "S5-215263"; } revision 2021-08-29 { reference "Initial revision, S5-214388"; } - grouping MNSInfoGrp { - description "Represents the MNSInfo IOC."; - reference "3GPP TS 28.622"; + grouping MnsInfoGrp { + description "Represents the MnsInfo IOC."; leaf mnsLabel { description "Human-readable name of management service."; mandatory true; @@ -48,27 +49,52 @@ module _3gpp-common-mnsregistry { } leaf-list mnsScope { - description "List of the managed object instances that can be accessed using the MnS. If a complete SubNetwork can be accessed using the MnS, this attribute may contain the DN of the SubNetwork instead of the DNs of the individual managed entities within the SubNetwork."; + description "List of the managed object instances that can be accessed + using the MnS. If a complete SubNetwork can be accessed using the MnS, + this attribute may contain the DN of the SubNetwork instead of the + DNs of the individual managed entities within the SubNetwork."; min-elements 1; type types3gpp:DistinguishedName; } - } augment "/subnet3gpp:SubNetwork" { list MNSRegistry { - description "Represents the MNSRegistry IOC."; - reference "3GPP TS 28.622"; + description "Represents the MNSRegistry IOC. + The IOC is instantiated by the system."; uses top3gpp:Top_Grp; key id; max-elements 1; + list MNSInfo { - description "Represents the MNSInfo IOC."; - reference "3GPP TS 28.622"; + description "This IOC represents an available Management Service (MnS) + and provides the data required to support its discovery. + It is name-contained by MnsRegistry. + + This specification does not specify how 'MnsInfo' objects are + created and maintained. + + This information is used by the consumer to discover the producers + of specific Management Services and to derive the addresses of the + Management Service. + + Attributes mnsLabel, mnsType, and mnsVersion are used to describe + the Management Service. + + Attribute mnsAddress is used to provide addressing information for + the Management Service operations. + + Attribute mnsScope is used to provide information about the + management scope of the Management Service. The management scope is + defined as the set of managed object instances that can be accessed + using the Management Service."; + + key id; uses top3gpp:Top_Grp; - key "mnsType mnsVersion mnsAddress"; - uses MNSInfoGrp; + container attributes { + uses MnsInfoGrp; + } } } } -} +} \ No newline at end of file diff --git a/yang-models/_3gpp-common-subnetwork.yang b/yang-models/_3gpp-common-subnetwork.yang index 53739e61ca3705cca1c3e57219deb1deb03766a2..777936f24113323d17737cf7e0880e4b7b4ddc2f 100755 --- a/yang-models/_3gpp-common-subnetwork.yang +++ b/yang-models/_3gpp-common-subnetwork.yang @@ -10,7 +10,8 @@ module _3gpp-common-subnetwork { import _3gpp-common-fm { prefix fm3gpp; } import _3gpp-common-trace { prefix trace3gpp; } import ietf-yang-schema-mount { prefix yangmnt; } - + import _3gpp-5gc-nrm-configurable5qiset { prefix conf5QIs3gpp; } + organization "3GPP SA5"; contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; @@ -28,6 +29,7 @@ module _3gpp-common-subnetwork { 3GPP TS 28.620 Umbrella Information Model (UIM)"; + revision 2022-07-26 { reference CR-0180 ; } revision 2021-01-16 { reference "CR-0120"; } revision 2020-08-06 { reference "CR-0102"; } revision 2020-06-08 { reference "CR-0092"; } @@ -49,6 +51,10 @@ module _3gpp-common-subnetwork { reference "Initial revision"; } + feature Configurable5qisetUnderSubNetwork { + description "The Configurable5qiset shall be contained under SubNetwork"; + } + feature ExternalsUnderSubNetwork { description "Classes representing external entities like EUtranFrequency, ExternalGNBCUCPFunction, ExternalENBFunction @@ -203,6 +209,10 @@ module _3gpp-common-subnetwork { uses trace3gpp:TraceSubtree { if-feature TraceUnderSubNetwork; } + + uses conf5QIs3gpp:Configurable5QISetSubtree { + if-feature Configurable5qisetUnderSubNetwork; + } yangmnt:mount-point children-of-SubNetwork { description "Mountpoint for ManagedElement"; diff --git a/yang-models/_3gpp-common-subscription-control.yang b/yang-models/_3gpp-common-subscription-control.yang index 25bde6927d08e51784ebcf38167c8ebcb7e36419..58688a029f88c116a225d4677e4154931368eb47 100755 --- a/yang-models/_3gpp-common-subscription-control.yang +++ b/yang-models/_3gpp-common-subscription-control.yang @@ -3,6 +3,7 @@ module _3gpp-common-subscription-control { namespace "urn:3gpp:sa5:_3gpp-common-subscription-control"; prefix "subscr3gpp"; + import _3gpp-common-yang-extensions { prefix yext3gpp; } import _3gpp-common-top { prefix top3gpp; } organization "3GPP SA5"; @@ -15,6 +16,8 @@ module _3gpp-common-subscription-control { Solution Set (SS) definitions 3GPP TS 28.623"; + revision 2023-08-11 { reference "CR-0259"; } + revision 2022-10-31 { reference CR-0195; } 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"; } @@ -90,8 +93,7 @@ module _3gpp-common-subscription-control { } grouping HeartbeatControlGrp { - description "Attributes of HeartbeatControl. Note the triggerHeartbeatNtf - attribute has no mapping in the present release."; + description "Attributes of HeartbeatControl."; leaf heartbeatNtfPeriod { type uint32; @@ -101,6 +103,20 @@ module _3gpp-common-subscription-control { The value of zero has the special meaning of stopping the heartbeat notification emission."; } + + leaf triggerHeartbeatNtf { + type boolean; + default false; + description "Setting this attribute to 'true' triggers an immediate + additional heartbeat notification emission. Setting the value to + 'false' has no observable result. + + The periodicity of notifyHeartbeat emission is not changed. + + After triggering the heartbeat the system SHALL set the value + back to false."; + yext3gpp:notNotifyable; + } } grouping SubscriptionControlSubtree { @@ -157,9 +173,8 @@ module _3gpp-common-subscription-control { 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. + notifications to monitor the communication channels between themselves + and MnS producers configured to emit notifications. A HeartbeatControl instance allows controlling the emission of heartbeat notifications by MnS producers. The recipients of heartbeat @@ -190,7 +205,7 @@ module _3gpp-common-subscription-control { 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. + 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 @@ -206,4 +221,4 @@ module _3gpp-common-subscription-control { } } } -} \ No newline at end of file +} diff --git a/yang-models/_3gpp-common-trace.yang b/yang-models/_3gpp-common-trace.yang index 8051893e7a276d0ebdd857711f952eb198bf6cb1..a1fdd25466dd920717edf29bd1ec5e66fa699c88 100755 --- a/yang-models/_3gpp-common-trace.yang +++ b/yang-models/_3gpp-common-trace.yang @@ -22,6 +22,9 @@ module _3gpp-common-trace { Integration Reference Point (IRP); Information Service (IS)"; + revision 2023-07-25 { reference CR00252; } + revision 2023-02-17 { reference "CR-0232"; } + revision 2023-02-15 { reference "CR-0236"; } revision 2022-04-27 { reference "CR-0159"; } revision 2021-10-18 { reference "CR-0139"; } revision 2021-07-22 { reference "CR-0137"; } @@ -29,8 +32,23 @@ module _3gpp-common-trace { revision 2020-11-16 { reference "CR-0117"; } revision 2020-08-06 { reference "CR-0102"; } + grouping TraceReference { + leaf mcc { + mandatory true; + type types3gpp:Mcc; + } + leaf mnc { + mandatory true; + type types3gpp:Mnc; + } + leaf traceId { + mandatory true; + type int64; + } + } + grouping TraceJobGrp { - leaf tjJobType { + leaf jobType { type enumeration { enum IMMEDIATE_MDT_ONLY; enum LOGGED_MDT_ONLY; @@ -49,7 +67,7 @@ module _3gpp-common-trace { allowed values."; } - list tjListOfInterfaces { + list listOfInterfaces { key idx; must 'count(MSCServerInterfaces)+count(MGWInterfaces)+count(RNCInterfaces)' +'+count(SGSNInterfaces)+count(GGSNInterfaces)+count(S-CSCFInterfaces)' @@ -362,7 +380,7 @@ module _3gpp-common-trace { } } - leaf-list tjListOfNeTypes { + leaf-list listOfNETypes { type enumeration { enum MSC_SERVER; enum SGSN; @@ -387,44 +405,44 @@ module _3gpp-common-trace { allowed values"; } - leaf tjPLMNTarget { - type string; - mandatory true; + list pLMNTarget { + key "mcc mnc"; 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"; + + uses types3gpp:PLMNId; } - leaf tjStreamingTraceConsumerURI { - when '../tjTraceReportingFormat = "STREAMING"'; + leaf traceReportingConsumerUri { + when '../traceReportingFormat = "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."; + supported and traceReportingFormat set to 'file based' or when + jobType 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"'; + leaf traceCollectionEntityIPAddress { + when '../traceReportingFormat = "FILE_BASED" or ' + +'../jobType = "LOGGED_MDT_ONLY" or ../jobType = "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 + the attribute traceReportingFormat 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"'; + leaf traceDepth { + when '../jobType = "TRACE_ONLY"' + + ' or ../jobType = "IMMEDIATE_MDT_AND_TRACE"'; type enumeration { enum MINIMUM; enum MEDIUM; @@ -443,9 +461,10 @@ module _3gpp-common-trace { reference "Clause 5.3 of 3GPP TS 32.422"; } - leaf tjTraceReference { - type uint64; - mandatory true; + list traceReference { + uses TraceReference; + key "mcc mnc traceId"; + max-elements 1; 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 @@ -453,16 +472,7 @@ module _3gpp-common-trace { 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 { + leaf traceReportingFormat { type enumeration { enum FILE_BASED; enum STREAMING; @@ -472,7 +482,7 @@ module _3gpp-common-trace { reporting or file-based trace reporting"; reference "3GPP TS 32.422 clause 5.11"; } - list tjTraceTarget { + list traceTarget { key "targetIdType targetIdValue"; max-elements 1; @@ -500,12 +510,12 @@ module _3gpp-common-trace { 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 + The traceTarget shall be public ID in case of a Management Based + Activation is done to an ScscfFunction. The traceTarget 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 + The traceTarget shall be E-UtranCell only in case of E-UTRAN cell + traffic trace function.The traceTarget shall be either IMSI or IMEI(SV) if the Trace Session is activated to any of the following ManagedEntity(ies): - HssFunction @@ -516,32 +526,33 @@ module _3gpp-common-trace { - RncFunction - MmeFunction - The tjTraceTarget shall be IMSI if the Trace Session is activated to a + The traceTarget 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 + In case of signaling based Trace/MDT, the traceTarget attribute shall + be able to carry (IMSI or IMEI(SV)or SUPI), the MDTAreaScope 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 traceTarget attribute + shall be null value, the MDTAreaScope attribute shall carry a list of (Utrancell or E-UtranCell or NRCellDU). - In case of management based Logged MDT, the tjTraceTarget attribute + In case of management based Logged MDT, the traceTarget 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 + on the specified eNB or RNC or gNB in traceTarget. The MDTAreaScope 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 + In case of RLF reporting, or RCEF reporting, the traceTarget + attribute shall be null value, the MDTAreaScope attribute shall carry one or list of eNBs/gNBs"; reference "3GPP TS 32.422"; } - leaf tjTriggeringEvent { - when '../tjJobType = "TRACE_ONLY" or ../tjJobType = "IMMEDIATE_MDT_AND_TRACE"'; + leaf triggeringEvent { + when '../jobType = "TRACE_ONLY" or ' + + '../jobType = "IMMEDIATE_MDT_AND_TRACE"'; type string ; mandatory true; description "Specifies the triggering event parameter of the trace session. @@ -550,8 +561,8 @@ module _3gpp-common-trace { reference "Clause 5.1 of 3GPP TS 32.422"; } - leaf tjMDTAnonymizationOfData { - when ../tjMDTAreaScope ; + leaf MDTAnonymizationOfData { + when ../MDTAreaScope ; type enumeration { enum NO_IDENTITY; enum TAC_OF_IMEI; @@ -561,8 +572,8 @@ module _3gpp-common-trace { reference "3GPP TS 32.422 clause 5.10.12."; } - list tjMDTAreaConfigurationForNeighCell { - when '../tjJobType = "LOGGED_MDT_ONLY"'; + list MDTAreaConfigurationForNeighCell { + when '../jobType = "LOGGED_MDT_ONLY"'; key "idx"; min-elements 1; leaf idx { type uint32 ; } @@ -584,7 +595,7 @@ module _3gpp-common-trace { } } - leaf-list tjMDTAreaScope { + leaf-list MDTAreaScope { type string; description "specifies MDT area scope when activates an MDT job. @@ -603,9 +614,9 @@ module _3gpp-common-trace { reference "Clause 5.10.2 of 3GPP TS 32.422"; } - leaf tjMDTCollectionPeriodRrmLte { - when '../tjJobType = "IMMEDIATE_MDT_ONLY"' - + ' or ../tjJobType = "IMMEDIATE_MDT_AND_TRACE"'; + leaf MDTCollectionPeriodRrmLte { + when '../jobType = "IMMEDIATE_MDT_ONLY"' + + ' or ../jobType = "IMMEDIATE_MDT_AND_TRACE"'; type uint32 { range "250|500|1000|2000|3000|4000|6000|8000|12000|16000|20000|" +"24000|28000|32000|64000"; @@ -618,9 +629,9 @@ module _3gpp-common-trace { reference "Clause 5.10.20 of 3GPP TS 32.422"; } - leaf tjMDTCollectionPeriodM6Lte { - when '../tjJobType = "IMMEDIATE_MDT_ONLY"' - + ' or ../tjJobType = "IMMEDIATE_MDT_AND_TRACE"'; + leaf MDTCollectionPeriodM6Lte { + when '../jobType = "IMMEDIATE_MDT_ONLY"' + + ' or ../jobType = "IMMEDIATE_MDT_AND_TRACE"'; type uint32 { range "1024|2048|5120|10240"; } @@ -632,9 +643,9 @@ module _3gpp-common-trace { reference "Clause 5.10.32 of TS 32.422 "; } - leaf tjMDTCollectionPeriodM7Lte { - when '../tjJobType = "IMMEDIATE_MDT_ONLY"' - + ' or ../tjJobType = "IMMEDIATE_MDT_AND_TRACE"'; + leaf MDTCollectionPeriodM7Lte { + when '../jobType = "IMMEDIATE_MDT_ONLY"' + + ' or ../jobType = "IMMEDIATE_MDT_AND_TRACE"'; type uint16 { range 1..60 ; } @@ -645,9 +656,9 @@ module _3gpp-common-trace { reference "Clause 5.10.22 of TS 32.422 ."; } - leaf tjMDTCollectionPeriodRrmUmts { - when '../tjJobType = "IMMEDIATE_MDT_ONLY"' - + ' or ../tjJobType = "IMMEDIATE_MDT_AND_TRACE"'; + leaf MDTCollectionPeriodRrmUmts { + when '../jobType = "IMMEDIATE_MDT_ONLY"' + + ' or ../jobType = "IMMEDIATE_MDT_AND_TRACE"'; type uint32 { range "1024|1280|2048|2560|5120|" +"10240|60000"; @@ -660,9 +671,9 @@ module _3gpp-common-trace { reference "Clause 5.10.21 of 3GPP TS 32.422"; } - leaf tjMDTCollectionPeriodRrmNR { - when '../tjJobType = "IMMEDIATE_MDT_ONLY"' - + ' or ../tjJobType = "IMMEDIATE_MDT_AND_TRACE"'; + leaf MDTCollectionPeriodRrmNR { + when '../jobType = "IMMEDIATE_MDT_ONLY"' + + ' or ../jobType = "IMMEDIATE_MDT_AND_TRACE"'; type uint32 { range "1024|2048|5120|10240|60000"; } @@ -674,9 +685,9 @@ module _3gpp-common-trace { reference "Clause 5.10.30 of 3GPP TS 32.422"; } - leaf tjMDTCollectionPeriodM6NR { - when '../tjJobType = "IMMEDIATE_MDT_ONLY"' - + ' or ../tjJobType = "IMMEDIATE_MDT_AND_TRACE"'; + leaf MDTCollectionPeriodM6NR { + when '../jobType = "IMMEDIATE_MDT_ONLY"' + + ' or ../jobType = "IMMEDIATE_MDT_AND_TRACE"'; type enumeration { enum 120ms; enum 240ms; @@ -700,9 +711,9 @@ module _3gpp-common-trace { reference "clause 5.10.34 of TS 32.422"; } - leaf tjMDTCollectionPeriodM7NR { - when '../tjJobType = "IMMEDIATE_MDT_ONLY"' - + ' or ../tjJobType = "IMMEDIATE_MDT_AND_TRACE"'; + leaf MDTCollectionPeriodM7NR { + when '../jobType = "IMMEDIATE_MDT_ONLY"' + + ' or ../jobType = "IMMEDIATE_MDT_AND_TRACE"'; type uint32 { range "1..60"; } @@ -713,8 +724,8 @@ module _3gpp-common-trace { reference "clause 5.10.35 of TS 32.422"; } - leaf tjMDTEventListForTriggeredMeasurement { - when '../tjJobType = "LOGGED_MDT_ONLY"'; + leaf MDTEventListForTriggeredMeasurement { + when '../jobType = "LOGGED_MDT_ONLY"'; type enumeration { enum OUT_OF_COVERAGE ; enum A2_EVENT ; @@ -729,7 +740,7 @@ module _3gpp-common-trace { reference "Clause 5.10.28 of 3GPP TS 32.422"; } - leaf tjMDTEventThreshold { + leaf MDTEventThreshold { 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 @@ -739,8 +750,8 @@ module _3gpp-common-trace { reference "Clauses 5.10.7 and 5.10.7a of 3GPP TS 32.422"; } - leaf tjMDTListOfMeasurements { - when '../tjJobType = "IMMEDIATE_MDT_ONLY"'; + leaf MDTListOfMeasurements { + when '../jobType = "IMMEDIATE_MDT_ONLY"'; type int64; mandatory true; description "It specifies the UE measurements that shall be collected in @@ -749,8 +760,9 @@ module _3gpp-common-trace { reference "3GPP TS 32.422 clause 5.10.3"; } - leaf tjMDTLoggingDuration { - when '../tjJobType = "LOGGED_MDT_ONLY" or ../tjJobType = "LOGGED_MBSFN_MDT"'; + leaf MDTLoggingDuration { + when '../jobType = "LOGGED_MDT_ONLY" or' + + ' ../jobType = "LOGGED_MBSFN_MDT"'; type uint32 { range "600|1200|2400|3600|5400|7200"; } @@ -763,8 +775,9 @@ module _3gpp-common-trace { reference "5.10.9 of 3GPP TS 32.422"; } - leaf tjMDTLoggingInterval { - when '../tjJobType = "LOGGED_MDT_ONLY" or ../tjJobType = "LOGGED_MBSFN_MDT"'; + leaf MDTLoggingInterval { + when '../jobType = "LOGGED_MDT_ONLY" or' + + ' ../jobType = "LOGGED_MBSFN_MDT"'; type uint32 { range "1280|2560|5120|10240|20480|" +"30720|40960|61440"; @@ -777,48 +790,51 @@ module _3gpp-common-trace { reference "5.10.8 of 3GPP TS 32.422"; } - leaf tjMDTLoggingEventThreshold { - when '../tjJobType = "LOGGED_MDT_ONLY" or ../tjJobType = "LOGGED_MBSFN_MDT"'; + leaf MDTLoggingEventThreshold { + when '../jobType = "LOGGED_MDT_ONLY" or' + + ' ../jobType = "LOGGED_MBSFN_MDT"'; type uint32 { range "0..127"; } description "It specifies the threshold which should trigger the reporting in case of event based reporting of logged NR MDT. - The attribute is applicable only for Logged MDT and when tjMDTReportType + The attribute is applicable only for Logged MDT and when MDTReportType is configured for event triggered reporting and when - tjMDTEventListForTriggeredMeasurement is configured for L1 event. + MDTEventListForTriggeredMeasurement is configured for L1 event. In case this attribute is not used, it carries a null semantic."; reference "clause 5.10.36 of TS 32.422"; } - leaf tjMDTLoggedHysteresis { - when '../tjJobType = "LOGGED_MDT_ONLY" or ../tjJobType = "LOGGED_MBSFN_MDT"'; + leaf MDTLoggedHysteresis { + when '../jobType = "LOGGED_MDT_ONLY" or ' + + '../jobType = "LOGGED_MBSFN_MDT"'; type uint32 { range "0..30"; } description "It specifies the hysteresis used within the entry and leave condition of the L1 event based reporting of logged NR MDT. - The attribute is applicable only for Logged MDT, when tjMDTReportType + The attribute is applicable only for Logged MDT, when MDTReportType is configured for event triggered reporting and when - tjMDTEventListForTriggeredMeasurement is configured for L1 event. + MDTEventListForTriggeredMeasurement is configured for L1 event. In case this attribute is not used, it carries a null semantic."; reference "clause 5.10.37 of TS 32.422"; } - leaf tjMDTLoggedTimeToTrigger { - when '../tjJobType = "LOGGED_MDT_ONLY" or ../tjJobType = "LOGGED_MBSFN_MDT"'; + leaf MDTLoggedTimeToTrigger { + when '../jobType = "LOGGED_MDT_ONLY" or ' + + '../jobType = "LOGGED_MBSFN_MDT"'; type int32 ; description "It specifies the threshold which should trigger the reporting in case of event based reporting of logged NR MDT. - The attribute is applicable only for Logged MDT, when tjMDTReportType + The attribute is applicable only for Logged MDT, when MDTReportType is configured for event triggered reporting and when - tjMDTEventListForTriggeredMeasurement is configured for L1 event. + MDTEventListForTriggeredMeasurement is configured for L1 event. In case this attribute is not used, it carries a null semantic."; reference "clauses 5.10.38 of TS 32.422"; } - leaf-list tjMDTMBSFNAreaList { - when '../tjJobType = "LOGGED_MBSFN_MDT"'; + leaf-list MDTMBSFNAreaList { + when '../jobType = "LOGGED_MBSFN_MDT"'; type string; min-elements 1; max-elements 8; @@ -828,9 +844,9 @@ module _3gpp-common-trace { reference "5.10.25 of 3GPP TS 32.422"; } - leaf tjMDTMeasurementPeriodLTE { - when '../tjJobType = "IMMEDIATE_MDT_ONLY"' - + ' or ../tjJobType = "IMMEDIATE_MDT_AND_TRACE"'; + leaf MDTMeasurementPeriodLTE { + when '../jobType = "IMMEDIATE_MDT_ONLY"' + + ' or ../jobType = "IMMEDIATE_MDT_AND_TRACE"'; type uint32 { range "1024|1280|2048|2560|5120|" +"10240|60000"; @@ -844,9 +860,9 @@ module _3gpp-common-trace { reference "Clause 5.10.23 of 3GPP TS 32.422"; } - leaf tjMDTMeasurementPeriodUMTS { - when '../tjJobType = "IMMEDIATE_MDT_ONLY"' - + 'or ../tjJobType = "IMMEDIATE_MDT_AND_TRACE"'; + leaf MDTMeasurementPeriodUMTS { + when '../jobType = "IMMEDIATE_MDT_ONLY"' + + 'or ../jobType = "IMMEDIATE_MDT_AND_TRACE"'; type uint32 { range "250|500|1000|2000|3000|4000|6000|8000|12000|16000|20000|" +"24000|28000|32000|64000"; @@ -860,9 +876,9 @@ module _3gpp-common-trace { reference "Clause 5.10.22 of 3GPP TS 32.422"; } - leaf tjMDTMeasurementQuantity { - when '../tjJobType = "IMMEDIATE_MDT_ONLY"' - + ' or ../tjJobType = "IMMEDIATE_MDT_AND_TRACE"'; + leaf MDTMeasurementQuantity { + when '../jobType = "IMMEDIATE_MDT_ONLY"' + + ' or ../jobType = "IMMEDIATE_MDT_AND_TRACE"'; type uint64 ; mandatory true; description "It specifies the measurements that are collected in an MDT @@ -870,9 +886,9 @@ module _3gpp-common-trace { reference "Clause 5.10.15 of 3GPP TS 32.422"; } - leaf tjMDTM4ThresholdUmts { - when '../tjJobType = "IMMEDIATE_MDT_ONLY"' - + ' or ../tjJobType = "IMMEDIATE_MDT_AND_TRACE"'; + leaf MDTM4ThresholdUmts { + when '../jobType = "IMMEDIATE_MDT_ONLY"' + + ' or ../jobType = "IMMEDIATE_MDT_AND_TRACE"'; type uint16 { range 0..31 ; } @@ -883,8 +899,8 @@ module _3gpp-common-trace { reference "3GPP TS 32.422 clause 5.10.A"; } - list tjMDTPLMList { - when '../tjJobType = "LOGGED_MDT_ONLY"'; + list MDTPLMList { + when '../jobType = "LOGGED_MDT_ONLY"'; key "mcc mnc"; uses types3gpp:PLMNId; min-elements 1; @@ -894,9 +910,9 @@ module _3gpp-common-trace { reference "Clause 5.10.24 of 3GPP TS 32.422"; } - leaf tjMDTPositioningMethod { - when '../tjJobType = "IMMEDIATE_MDT_ONLY"' - + ' or ../tjJobType = "IMMEDIATE_MDT_AND_TRACE"'; + leaf MDTPositioningMethod { + when '../jobType = "IMMEDIATE_MDT_ONLY"' + + ' or ../jobType = "IMMEDIATE_MDT_AND_TRACE"'; type enumeration { enum GNSS; enum E_CELL_ID; @@ -907,9 +923,9 @@ module _3gpp-common-trace { reference "Clause 5.10.19 of 3GPP TS 32.422"; } - leaf tjMDTReportAmount { - when '../tjJobType = "IMMEDIATE_MDT_ONLY"' - + ' and ../tjMDTReportingTrigger = "PERIODICAL"'; + leaf MDTReportAmount { + when '../jobType = "IMMEDIATE_MDT_ONLY"' + + ' and ../MDTReportingTrigger = "PERIODICAL"'; type union { type uint32 { range "1|4|8|16|32|64" ; @@ -922,13 +938,13 @@ module _3gpp-common-trace { 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 + MDTReportingTrigger 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"'; + leaf MDTReportingTrigger { + when '../jobType = "IMMEDIATE_MDT_ONLY"'; type enumeration { enum PERIODICAL; enum A2_FOR_LTE; @@ -941,15 +957,15 @@ module _3gpp-common-trace { 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) + MDTListOfMeasurements 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"'; + leaf MDTReportInterval { + when '../jobType = "IMMEDIATE_MDT_ONLY"' + + ' and ../MDTReportingTrigger = "PERIODICAL"'; type uint32 { range "120|240|250|480|500|640|1000|1024|2000|2048|3000|4000|" +"5120|6000|8000|10240|12000|16000|20000|" @@ -961,13 +977,13 @@ module _3gpp-common-trace { 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 + MDTReportingTrigger 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"'; + leaf MDTReportType { + when '../jobType = "LOGGED_MDT_ONLY"'; type enumeration { enum PERIODICAL; enum EVENT_TRIGGERED; @@ -977,7 +993,7 @@ module _3gpp-common-trace { reference "Clause 5.10.27 of 3GPP TS 32.422"; } - leaf tjMDTSensorInformation { + leaf MDTSensorInformation { type bits { bit BAROMETRIC_PRESSURE; bit UE_SPEED; @@ -991,8 +1007,9 @@ module _3gpp-common-trace { reference "Clause 5.10.29 of 3GPP TS 32.422"; } - leaf tjMDTTraceCollectionEntityID { - when '../tjJobType = "LOGGED_MDT_ONLY" or ../tjJobType = "LOGGED_MBSFN_MDT"'; + leaf MDTTraceCollectionEntityID { + when '../jobType = "LOGGED_MDT_ONLY" or ' + + '../jobType = "LOGGED_MBSFN_MDT"'; type uint8; mandatory true; description "It specifies the TCE Id which is sent to the UE in @@ -1020,7 +1037,7 @@ module _3gpp-common-trace { 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 + traceCollectionEntityAddress or streamingTraceConsumerUri to be his own. When a MnS consumer wishes to deactivate a Trace Job, the MnS consumer @@ -1029,51 +1046,56 @@ module _3gpp-common-trace { For details of management Trace Job activation/deactivation see clause 4.1.1.1.2 of TS 32.422. - 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. + The attribute traceReference specifies a globally unique ID and + identifies a Trace session. One Trace Session may be activated to + multiple Network Elements. The traceReference is populated by the + consumer that makes the request for a Trace Session. + + The attribute tjJobType specifies the kind of data to collect. + Dependent on the selected type various parameters shall be available. + The attributes tjJobType, tjTraceReference, + 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. + available: listOfNeTypes, traceDepth, traceTarget and + triggeringEvent. - For this case the optional attribute tjListOfInterfaces allows to + For this case the optional attribute listOfInterfaces 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 + - traceTarget + - MDTAnonymizationOfData, + - MDTListOfMeasurements, + - MDTCollectionPeriodRrmUmts (conditional for M3, M4 and M5 in UMTS), + - MDTMeasurementPeriodUMTS (conditional for M6 and M7 in UMTS), + - MDTCollectionPeriodRrmLte (conditional for M2 and M3 in LTE), + - MDTMeasurementPeriodLTE (conditional for M4 and M5 in LTE), + - MDTCollectionPeriodM6Lte (conditional for M6 in LTE), + - MDTCollectionPeriodM7Lte (conditional for M7 in LTE), + - MDTCollectionPeriodRrmNR (conditional for M4 and M5 in NR), + - MDTCollectionPeriodM6NR (conditional for M6 in NR), + - MDTCollectionPeriodM7NR (conditional for M7 in NR), + - MDTReportInterval (conditional for M1 in LTE or NR and M1/M2 in UMTS), - - tjMDTReportAmount (conditional for M1 in LTE or NR and M1/M2 in + - MDTReportAmount (conditional for M1 in LTE or NR and M1/M2 in UMTS), - - tjMDTReportingTrigger (conditional for M1 in LTE or NR and M1/M2 in + - MDTReportingTrigger (conditional for M1 in LTE or NR and M1/M2 in UMTS), - - tjMDTEventThreshold (conditional for A2 event reporting or A2 event + - MDTEventThreshold (conditional for A2 event reporting or A2 event triggered periodic reporting), - - tjMDTMeasurementQuantity (conditional for 1F event reporting). + - MDTMeasurementQuantity (conditional for 1F event reporting). - For this case the optional attribute tjMDTAreaScope allows to specify + For this case the optional attribute MDTAreaScope 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 + attributes MDTPositioningMethod, MDTSensorInformation allow to specify the positioning methods to use or the sensor information to include. @@ -1081,30 +1103,30 @@ module _3gpp-common-trace { 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. + shall be available: traceTarget, MDTAnonymizationOfData, + MDTTraceCollectionEntityID, MDTLoggingInterval, + MDTLoggingDuration, MDTReportType, + MDTEventListForTriggeredMeasurements. - For this case the optional attribute tjMDTAreaScope allows to specify + For this case the optional attribute MDTAreaScope 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, + MDTPLMNList 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 + MDTAreaConfigurationForNeighCell 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 + MDTSensorInformation 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 + attribute traceTarget shall be available, the optional attribute + MDTAreaScope 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. + shall be available: MDTAnonymizationOfData, MDTLoggingInterval, + MDTLoggingDuration, MDTMBSFNAreaList. Creation and deletion of TraceJob instances by MnS consumers is optional; when not supported, the TraceJob instances may be created and deleted by diff --git a/yang-models/_3gpp-common-yang-extensions.yang b/yang-models/_3gpp-common-yang-extensions.yang index 9bc0a82be8cb514da33f2b79e3ec972509342cb1..fe703ee2ba215e74fdc2edcd8c4b02b86f7c3958 100755 --- a/yang-models/_3gpp-common-yang-extensions.yang +++ b/yang-models/_3gpp-common-yang-extensions.yang @@ -40,8 +40,26 @@ module _3gpp-common-yang-extensions { the extension e.g. with a deviation. "; - revision "2019-06-23" { - description "Initial version"; + revision 2022-10-31 { reference CR-0195; } + revision 2019-06-23 { reference "Initial version"; } + + extension notNotifyable { + description + "Indicates that data change notifications shall not be sent + for this attribute. If the extension is not present and other + conditions are fulfilled data change notification should be sent. + If a list or container already has the notNotifyable + extension, that is also valid for all contained data nodes. + + The statement MUST only be a substatement of a leaf, leaf-list, list, + container statement that is contained within the 'attributes' + container of an IOC and that represents an attribute or sub-parts of + an attribute . + + Zero or one notNotifyable statement is allowed per parent statement. + NO substatements are allowed. + + Adding this statement is an NBC change, removing it is BC."; } extension inVariant { diff --git a/yang-models/_3gpp-common-yang-types.yang b/yang-models/_3gpp-common-yang-types.yang index 18084a2ebc95c6d1ed2090b6778e4ad9016b3f6a..11abd7be840b9dbb7c64d6d69840c4387dc78bfd 100755 --- a/yang-models/_3gpp-common-yang-types.yang +++ b/yang-models/_3gpp-common-yang-types.yang @@ -5,6 +5,7 @@ module _3gpp-common-yang-types { import ietf-inet-types { prefix inet; } import ietf-yang-types { prefix yang; } + import _3gpp-common-yang-extensions { prefix yext3gpp; } organization "3GPP SA5"; contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; @@ -13,8 +14,14 @@ module _3gpp-common-yang-types { network slicing."; reference "3GPP TS 28.623"; + revision 2023-08-09 { reference CR-0265; } + revision 2023-05-09 { reference CR-0249; } + revision 2022-11-03 { reference "CR-0193"; } + revision 2022-10-31 { reference CR-0195; } + revision 2022-07-26 { reference CR-0180 ; } revision 2022-02-09 { reference "CR-0144"; } revision 2021-11-01 { reference "CR-0141"; } + revision 2021-09-30 { description "Added Longitude, Latitude, TenthOfDegrees, OnOff."; reference "CR-0138"; @@ -51,6 +58,11 @@ module _3gpp-common-yang-types { } } + grouping nameValuePair { + leaf name { type string; } + leaf value { type string; } + } + grouping ProcessMonitor { description "Provides attributes to monitor the progress of processes with specific purpose and limited lifetime running on MnS producers. @@ -68,7 +80,7 @@ module _3gpp-common-yang-types { The progress of the process is described by the 'status' and 'progressPercentage' attributes. Additional textual qualifications for - the 'status' attribute may be provided by the 'progessStateInfo' and + the 'status' attribute may be provided by the 'progressStateInfo' and 'resultStateInfo' attributes. When the process is instantiated, the 'status' is set to 'NOT_RUNNING' @@ -80,7 +92,7 @@ module _3gpp-common-yang-types { During the 'RUNNING' state the 'progressPercentage' attribute may be repeatedly updated. The exact semantic of this attribute is subject to - further specialisation. The 'progessInfo' attribute may be used to + further specialisation. The 'progressInfo' attribute may be used to provide additional textual information in the 'NOT_RUNNING', 'CANCELLING' and 'RUNNING' states. Further specialisation of 'progressStateInfo' may be provided where this data type is @@ -208,6 +220,7 @@ module _3gpp-common-yang-types { Once the timer is set, the consumer can not change it anymore. If the consumer has not set the timer the MnS Producer may set it."; + yext3gpp:notNotifyable; } } @@ -428,6 +441,24 @@ module _3gpp-common-yang-types { } } + typedef BasicAdministrativeState { + 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."; + } + } + } + typedef AdministrativeState { reference "3GPP TS 28.625 and ITU-T X.731"; type enumeration { @@ -679,35 +710,106 @@ module _3gpp-common-yang-types { type uint16; } } + grouping TaiGrp { + description "This <> defines a Tracking Area Identity (TAI) + as specified in clause 28.6 of TS 23.003, clause 8.2 of TS 38.300 + and clause 9.3.3.11 of TS 38.413. It is composed of the PLMN + identifier (PLMN-Id, which is composed of the MCC and MNC) and + the Tracking Area Code (TAC). "; + list plmnId { + description "PLMN Identity."; + min-elements 1; + max-elements 1; + key "mcc mnc"; + uses types3gpp:PLMNId; + } + + leaf tac { type Tac; } + } + + /* DistinguishedName pattern is built up based on the + EBNF in 32.300 clause 7.3 EBNF of DN String Representation + + leaf DN { type string { // Same pattern as LocalDN + pattern '[A-Z][^,=+<>#;\\"\r\n*.]*=([^,=+<>#;\\"\r\n* ]|(\\[a-fA-F0-9]{2}))(([^,=+<>#;\\"\r\n*]|(\\[a-fA-F0-9]{2}))*([^,=+<>#;\\"\r\n* ]|(\\[a-fA-F0-9]{2})))?(,[A-Z][^,=+<>#;\\"\r\n*.]*=([^,=+<>#;\\"\r\n* ]|(\\[a-fA-F0-9]{2}))(([^,=+<>#;\\"\r\n*]|(\\[a-fA-F0-9]{2}))*([^,=+<>#;\\"\r\n* ]|(\\[a-fA-F0-9]{2})))?)*'; + } } + + leaf fullLocalDN { type string { // LocalRDN , { RDNSeparator , LocalRDN } RDNSeparator is a single , no space or \R allowed Me.mykey=1 allowed + // (fullLocalRDN)(,(fullLocalRDN))* + pattern '(([A-Z][^,=+<>#;\\"\r\n*.]*|([A-Z][^,=+<>#;\\"\r\n*.]*\.[a-z][^,=+<>#;\\"\r\n*.]*))=(([^,=+<>#;\\"\r\n* ]|(\\[a-fA-F0-9]{2}))(([^,=+<>#;\\"\r\n*]|(\\[a-fA-F0-9]{2}))*([^,=+<>#;\\"\r\n* ]|(\\[a-fA-F0-9]{2})))?))(,(([A-Z][^,=+<>#;\\"\r\n*.]*|([A-Z][^,=+<>#;\\"\r\n*.]*\.[a-z][^,=+<>#;\\"\r\n*.]*))=(([^,=+<>#;\\"\r\n* ]|(\\[a-fA-F0-9]{2}))(([^,=+<>#;\\"\r\n*]|(\\[a-fA-F0-9]{2}))*([^,=+<>#;\\"\r\n* ]|(\\[a-fA-F0-9]{2})))?)))*'; + } } + + leaf LocalDN { type string { // LocalRDN , { RDNSeparator , LocalRDN } RDNSeparator is a single , no space or \R allowed + // LocalRDN(,LocalRDN)* + pattern '[A-Z][^,=+<>#;\\"\r\n*.]*=([^,=+<>#;\\"\r\n* ]|(\\[a-fA-F0-9]{2}))(([^,=+<>#;\\"\r\n*]|(\\[a-fA-F0-9]{2}))*([^,=+<>#;\\"\r\n* ]|(\\[a-fA-F0-9]{2})))?(,[A-Z][^,=+<>#;\\"\r\n*.]*=([^,=+<>#;\\"\r\n* ]|(\\[a-fA-F0-9]{2}))(([^,=+<>#;\\"\r\n*]|(\\[a-fA-F0-9]{2}))*([^,=+<>#;\\"\r\n* ]|(\\[a-fA-F0-9]{2})))?)*'; + } } + + leaf fullLocalRDN { type string { // same as fullLocalDNAttributeTypeAndValue + pattern '([A-Z][^,=+<>#;\\"\r\n*.]*|([A-Z][^,=+<>#;\\"\r\n*.]*\.[a-z][^,=+<>#;\\"\r\n*.]*))=(([^,=+<>#;\\"\r\n* ]|(\\[a-fA-F0-9]{2}))(([^,=+<>#;\\"\r\n*]|(\\[a-fA-F0-9]{2}))*([^,=+<>#;\\"\r\n* ]|(\\[a-fA-F0-9]{2})))?)'; + } } + + leaf LocalRDN { type string { // same as LocalDNAttributeTypeAndValue + pattern '[A-Z][^,=+<>#;\\"\r\n*.]*=([^,=+<>#;\\"\r\n* ]|(\\[a-fA-F0-9]{2}))(([^,=+<>#;\\"\r\n*]|(\\[a-fA-F0-9]{2}))*([^,=+<>#;\\"\r\n* ]|(\\[a-fA-F0-9]{2})))?'; + } } + + leaf fullLocalDNAttributeTypeAndValue { type string { // LocalDNAttributeType , AttributeTypeAndValueSeparator , RegularAttributeValue + // pattern LocalDNAttributeType=RegularAttributeValue + pattern '([A-Z][^,=+<>#;\\"\r\n*.]*|([A-Z][^,=+<>#;\\"\r\n*.]*\.[a-z][^,=+<>#;\\"\r\n*.]*))=(([^,=+<>#;\\"\r\n* ]|(\\[a-fA-F0-9]{2}))(([^,=+<>#;\\"\r\n*]|(\\[a-fA-F0-9]{2}))*([^,=+<>#;\\"\r\n* ]|(\\[a-fA-F0-9]{2})))?)'; + } } + + // limitation: NamesOfClassAndNamingAttributenot supported Me.mykey=1 + leaf LocalDNAttributeTypeAndValue { type string { + // ebnf1 LocalDNAttributeType , AttributeTypeAndValueSeparator , RegularAttributeValue + // ebnf2-limited NameOfClassWithIdAttribute , AttributeTypeAndValueSeparator , RegularAttributeValue + // pattern NameOfClassWithIdAttribute=RegularAttributeValue + pattern '[A-Z][^,=+<>#;\\"\r\n*.]*=([^,=+<>#;\\"\r\n* ]|(\\[a-fA-F0-9]{2}))(([^,=+<>#;\\"\r\n*]|(\\[a-fA-F0-9]{2}))*([^,=+<>#;\\"\r\n* ]|(\\[a-fA-F0-9]{2})))?'; + } } + + leaf LocalDNAttributeType { type string { // NameOfClassWithIdAttribute | NamesOfClassAndNamingAttribute RDNSeparator is a single , no space or \R allowed + // NameOfClassWithIdAttribute|NamesOfClassAndNamingAttribute + pattern '[A-Z][^,=+<>#;\\"\r\n*.]*|([A-Z][^,=+<>#;\\"\r\n*.]*\.[a-z][^,=+<>#;\\"\r\n*.]*)'; + } } + + leaf RegularAttributeValue { type string { // ( AttributeValueChar – SpaceChar ) , [ { AttributeValueChar } , ( AttributeValueChar – SpaceChar ) ] + pattern '([^,=+<>#;\\"\r\n* ]|(\\[a-fA-F0-9]{2}))(([^,=+<>#;\\"\r\n*]|(\\[a-fA-F0-9]{2}))*([^,=+<>#;\\"\r\n* ]|(\\[a-fA-F0-9]{2})))?' ; + } } + + leaf NamesOfClassAndNamingAttribute { type string { // ClassName , ClassNamingAttributeSeparator , NamingAttributeName + // pattern: ClassName\.NamingAttributeName + pattern '[A-Z][^,=+<>#;\\"\r\n*.]*\.[a-z][^,=+<>#;\\"\r\n*.]*' ; + } } + + leaf restrictiveClassName { type string { // + pattern '[a-zA-Z][a-zA-Z0-9-_]*' ; + } } - typedef DistinguishedName { // TODO is this equivalent to TS 32.300 ? + leaf ClassName { type string { // CapitalLetterChar , { LocalDNAttributeTypeChar } + pattern '[A-Z][^,=+<>#;\\"\r\n*.]*' ; + } } + + leaf NamingAttributeName { type string { // SmallLetterChar , { LocalDNAttributeTypeChar } + pattern '[a-z][^,=+<>#;\\"\r\n*.]*' ; + } } + + */ + typedef DistinguishedName { 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:] + pattern '[A-Z][^,=+<>#;\\"\r\n*.]*=([^,=+<>#;\\"\r\n* ]|' + + '(\\[a-fA-F0-9]{2}))(([^,=+<>#;\\"\r\n*]|(\\[a-fA-F0-9]{2}))*' + + '([^,=+<>#;\\"\r\n* ]|(\\[a-fA-F0-9]{2})))?' + + '(,[A-Z][^,=+<>#;\\"\r\n*.]*=([^,=+<>#;\\"\r\n* ]|(\\[a-fA-F0-9]{2}))' + + '(([^,=+<>#;\\"\r\n*]|(\\[a-fA-F0-9]{2}))*' + + '([^,=+<>#;\\"\r\n* ]|(\\[a-fA-F0-9]{2})))?)*'; + } + description "Represents the 3GPP standard for DistinguishedName. + + Limitations: + - RDNSeparator: don't allow SpaceChar or CarriageReturnChar + - NullDN: Disallow nullDN that is the same as not providing a DN + - NamesOfClassAndNamingAttribute format not allowed + (eg. ManagedElement.mykey=345436)"; + reference "3GPP TS 32.300"; + } typedef QOffsetRange { type int8 { @@ -717,4 +819,102 @@ module _3gpp-common-yang-types { } units dB; } -} \ No newline at end of file + + grouping ReportingCtrl { + 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, on condition that an appropriate subscription + is in place, inform the MnS consumer about the availability of new + files and the file location using the notifyFileReady notification. + In case the preparation of a file fails, 'notifyFilePreparationError' + shall be sent instead. + + - When the 'fileReportingPeriod' and 'notificationRecipientAddress' + attributes are present, then the MnS producer shall behave like + described for the case that only the 'fileReportingPeriod' is present. + In addition, the MnS producer shall create on behalf of the MnS + consumer a subscription, using 'NtfSubscriptionControl', for the + notification types 'notifyMOICreation' and 'notifyMOIDeletion' related + to the 'File' instances that will be produced later. In case an existing + subscription does already include the 'File' instances to be produced, + no new subscription shall be created. The + 'notificationRecipientAddress' attribute in the created + 'NtfSubscriptionControl' instance shall be set to the value of the + 'notificationRecipientAddress' in the related 'PerfMetricJob'. This + feature is called implicit notification subscription, as opposed to the + case where the MnS consumer creates the subscription (explicit + notification subscription). When the related 'PerfMetricJob' is + deleted, the 'NtfSubscriptionControl' instance created due to the + request for implicit subscription shall be deleted as well. + + - When only the fileReportingPeriod and fileLocation attributes are + present, the MnS producer shall store the files on a MnS consumer, that + can be any entity such as a file server, 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; + 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."; + } + choice reporting-target { + case file-target { + 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 notification-target { + leaf notificationRecipientAddress { + type string; + description "Must be present when the notification-based reporting + method is supported, and the the files are available as + notifications for the MnS consumer to subscribe to."; + } + } + description "When netiher fileLocation or notificationRecipientAddress + are present, the files are stored and available to the MnS consumer + if the MnS subscribes to the notifyFileReady notification."; + } + } + + case stream-based-reporting { + leaf streamTarget { + type string; + mandatory true; + description "Applicable when stream-based reporting method is + supported."; + } + } + + } + } +} diff --git a/yang-models/_3gpp-nr-nrm-beam.yang b/yang-models/_3gpp-nr-nrm-beam.yang index 64cdd8dcf78e613dc55c4a99215330119a10d333..ae97f88d617c347217516d3f6a20c16e274103ca 100755 --- a/yang-models/_3gpp-nr-nrm-beam.yang +++ b/yang-models/_3gpp-nr-nrm-beam.yang @@ -16,7 +16,7 @@ module _3gpp-nr-nrm-beam { 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 { + revision 2019-11-23 { description "Initial revision"; reference "S5-197643"; } diff --git a/yang-models/_3gpp-nr-nrm-dlbofunction.yang b/yang-models/_3gpp-nr-nrm-dlbofunction.yang index a9915f7f3d0905bc477599d83ecdb5b8853c1856..d532fe03792c2ba51b6c39a0fee47589c5e1e676 100644 --- a/yang-models/_3gpp-nr-nrm-dlbofunction.yang +++ b/yang-models/_3gpp-nr-nrm-dlbofunction.yang @@ -16,7 +16,7 @@ module _3gpp-nr-nrm-dlbofunction { Model (NRM)."; reference "3GPP TS 28.541 5G Network Resource Model (NRM)"; - revision 2022-03-25 { reference "CR-XXXX"; } + revision 2022-03-25 { reference "CR-0683"; } revision 2021-10-22 { reference "CR-0577"; } feature DLBOUnderGNBCUCPFunction { @@ -49,6 +49,7 @@ module _3gpp-nr-nrm-dlbofunction { type int32 { range "-20..20"; } units "0.5 dB"; } + leaf maximumDeviationHoTriggerHigh { description "This parameter defines the maximum allowed upper deviation of the Handover Trigger, from the default point of @@ -97,4 +98,4 @@ module _3gpp-nr-nrm-dlbofunction { if-feature DLBOUnderSubNetwork; uses DLBOFunctionSubtree; } -} +} \ 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 f56ee70128359f01dcca3cfcd75b31ff1af5bf8b..4a065cdf944390ed1d0a196bd6998c41b4c77145 100755 --- a/yang-models/_3gpp-nr-nrm-dmrofunction.yang +++ b/yang-models/_3gpp-nr-nrm-dmrofunction.yang @@ -98,4 +98,4 @@ module _3gpp-nr-nrm-dmrofunction { if-feature subnet3gpp:DMROFunction; uses DMROFunctionSubtree; } -} +} \ No newline at end of file diff --git a/yang-models/_3gpp-nr-nrm-eutrancellrelation.yang b/yang-models/_3gpp-nr-nrm-eutrancellrelation.yang index 4eee4a4010bd59fcecf6690c504b6ba9c4979150..29d2d1d1eab763857fe4b8d55ce3ba2a21a57ace 100755 --- a/yang-models/_3gpp-nr-nrm-eutrancellrelation.yang +++ b/yang-models/_3gpp-nr-nrm-eutrancellrelation.yang @@ -4,21 +4,20 @@ module _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"; + contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; 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 2023-06-25 { reference CR0932 ; } revision 2019-10-28 { reference S5-193518 ; } - revision 2019-06-17 { - description "Initial revision"; - } + revision 2019-06-17 { reference "Initial revision"; } typedef ActionAllowed { type enumeration { @@ -38,7 +37,6 @@ module _3gpp-nr-nrm-eutrancellrelation { 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 @@ -55,7 +53,7 @@ module _3gpp-nr-nrm-eutrancellrelation { be removed (deleted). If NO, the subject EUtranCellRelation instance shall not be removed (deleted) by any entity but an IRPManager."; mandatory true; - type ActionAllowed; + type boolean; } leaf isHOAllowed { @@ -65,18 +63,9 @@ module _3gpp-nr-nrm-eutrancellrelation { 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; + type boolean; } - leaf isICICInformationSendAllowed { description "Indicates if ICIC (Inter Cell Interference Coordination) load information message sending is allowed or prohibited. If YES, @@ -133,6 +122,7 @@ module _3gpp-nr-nrm-eutrancellrelation { Balancing Optimization (LBO) function."; reference "3GPP TS 36.331"; config false; + mandatory true; type types3gpp:QOffsetRange; } @@ -144,17 +134,18 @@ module _3gpp-nr-nrm-eutrancellrelation { } } - augment /me3gpp:ManagedElement/gnbcucp3gpp:GNBCUCPFunction/nrcellcu3gpp:NRCellCU { + 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"; + 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-eutranfreqrelation.yang b/yang-models/_3gpp-nr-nrm-eutranfreqrelation.yang index fce8aa7fffd813be3d903e2d2ec13f83680d10b2..38d337f0c65e0e2ccfa3bf67a38c07b8ca8d5e00 100755 --- a/yang-models/_3gpp-nr-nrm-eutranfreqrelation.yang +++ b/yang-models/_3gpp-nr-nrm-eutranfreqrelation.yang @@ -4,26 +4,24 @@ module _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"; + contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; 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 2023-06-25 { reference CR0932 ; } revision 2019-10-28 { reference S5-193518 ; } - revision 2019-06-17 { - description "Initial revision"; - } + revision 2019-06-17 { reference "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 @@ -31,22 +29,19 @@ module _3gpp-nr-nrm-eutranfreqrelation { 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 { + leaf-list blockListEntry { description "A list of Physical Cell Identities (PCIs) that are - blacklisted in E-UTRAN measurements."; + exclude-listed in E-UTRAN measurements."; reference "3GPP TS 38.331"; - min-elements 0; type uint16 { range "0..1007"; } } - leaf-list blackListEntryIdleMode { + leaf-list blockListEntryIdleMode { description "A list of Physical Cell Identities (PCIs) that are - blacklisted in SIB4 and SIB5."; - min-elements 0; + exclude-listed in SIB4 and SIB5."; type uint16 { range "0..1007"; } } @@ -83,7 +78,9 @@ module _3gpp-nr-nrm-eutranfreqrelation { leaf qOffsetFreq { description "The frequency specific offset applied when evaluating candidates for cell reselection."; - type int32; + type int32 { 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"; } default 0; } @@ -148,7 +145,7 @@ module _3gpp-nr-nrm-eutranfreqrelation { serving frequency. Each frequency of NR and E-UTRAN might have a specific threshold."; reference "ThreshX, LowQ in 3GPP TS 38.304"; - mandatory false; + mandatory true; type int32 { range "0..31"; } units dB; } @@ -186,12 +183,13 @@ module _3gpp-nr-nrm-eutranfreqrelation { leaf eUtranFrequencyRef { description "Reference to a corresponding EUtranFrequency instance."; - mandatory true; - type types3gpp:DistinguishedName; + mandatory true; + type types3gpp:DistinguishedName; } } - augment /me3gpp:ManagedElement/gnbcucp3gpp:GNBCUCPFunction/nrcellcu3gpp:NRCellCU { + augment "/me3gpp:ManagedElement/gnbcucp3gpp:GNBCUCPFunction/" + + "nrcellcu3gpp:NRCellCU" { list EUtranFreqRelation { description "Represents a frequency relation between an NR cell and an @@ -202,7 +200,6 @@ module _3gpp-nr-nrm-eutranfreqrelation { container attributes { uses EUtranFreqRelationGrp; } - uses mf3gpp:ManagedFunctionContainedClasses; } } } \ No newline at end of file diff --git a/yang-models/_3gpp-nr-nrm-gnbcucpfunction.yang b/yang-models/_3gpp-nr-nrm-gnbcucpfunction.yang index 4c4cee4d639b0c079c1c5540374c16ebdd481f8a..ccfc57f6cc70b053267b72111a38150c311cede0 100755 --- a/yang-models/_3gpp-nr-nrm-gnbcucpfunction.yang +++ b/yang-models/_3gpp-nr-nrm-gnbcucpfunction.yang @@ -7,7 +7,6 @@ module _3gpp-nr-nrm-gnbcucpfunction { 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"; @@ -15,6 +14,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 2022-07-27 { reference "CR-0769"; } revision 2021-11-06 { reference "CR-0611" ; } revision 2021-11-05 { reference "CR-0609"; } revision 2020-10-02 { reference CR-0384 ; } @@ -25,9 +25,7 @@ module _3gpp-nr-nrm-gnbcucpfunction { 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"; - } + revision 2019-06-17 { reference "Initial revision"; } feature DESManagementFunction { description "Classs representing Distributed SON Energy Saving feature"; @@ -46,7 +44,6 @@ module _3gpp-nr-nrm-gnbcucpfunction { 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) @@ -102,24 +99,29 @@ 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)."; + 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)."; + 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."; + description "This attribute determines whether the CHO function is + enabled or disabled."; } leaf dDAPSHOControl { diff --git a/yang-models/_3gpp-nr-nrm-gnbcuupfunction.yang b/yang-models/_3gpp-nr-nrm-gnbcuupfunction.yang index 944da20a724d15754008acab41b0e533da5859be..973689b39e43436143c9b70b74099b0b58f0fde3 100755 --- a/yang-models/_3gpp-nr-nrm-gnbcuupfunction.yang +++ b/yang-models/_3gpp-nr-nrm-gnbcuupfunction.yang @@ -7,7 +7,6 @@ module _3gpp-nr-nrm-gnbcuupfunction { 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"; @@ -16,6 +15,7 @@ module _3gpp-nr-nrm-gnbcuupfunction { Object Class (IOC) that is part of the NR Network Resource Model (NRM)."; reference "3GPP TS 28.541 5G Network Resource Model (NRM)"; + revision 2022-07-27 { reference "CR-0769"; } revision 2020-11-05 { reference CR-0412 ; } revision 2020-08-06 { reference "CR-0333"; } revision 2020-08-03 { reference "CR-0321"; } @@ -98,7 +98,6 @@ module _3gpp-nr-nrm-gnbcuupfunction { description "Represents the GNBCUUPFunction IOC."; reference "3GPP TS 28.541"; uses mf3gpp:ManagedFunctionGrp; - uses nrrrmpolicy3gpp:RRMPolicy_Grp; leaf gNBCUUPId { type uint64 { diff --git a/yang-models/_3gpp-nr-nrm-gnbdufunction.yang b/yang-models/_3gpp-nr-nrm-gnbdufunction.yang index c52250c6dae466682ce850b82a1e195f1c1682c9..1428af023fdde90a56ee94bc89005cbe65c45f8f 100755 --- a/yang-models/_3gpp-nr-nrm-gnbdufunction.yang +++ b/yang-models/_3gpp-nr-nrm-gnbdufunction.yang @@ -6,7 +6,6 @@ module _3gpp-nr-nrm-gnbdufunction { 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-common-yang-types { prefix types3gpp; } organization "3GPP SA5"; @@ -15,6 +14,7 @@ module _3gpp-nr-nrm-gnbdufunction { Object Class (IOC) that is part of the NR Network Resource Model (NRM)."; reference "3GPP TS 28.541 5G Network Resource Model (NRM)"; + revision 2022-07-27 { reference "CR-0769"; } revision 2021-10-28 { reference CR-0607 ; } revision 2021-04-30 { reference CR-0490 ; } revision 2020-10-02 { reference CR-0384 ; } @@ -132,7 +132,6 @@ module _3gpp-nr-nrm-gnbdufunction { description "Represents the GNBDUFunction IOC."; reference "3GPP TS 28.541"; uses mf3gpp:ManagedFunctionGrp; - uses nrrrmpolicy3gpp:RRMPolicy_Grp; leaf gNBId { type int64 { range "0..4294967295"; } diff --git a/yang-models/_3gpp-nr-nrm-nrcelldu.yang b/yang-models/_3gpp-nr-nrm-nrcelldu.yang index 0cb6dce0c84718a82dd025e4f6102ae711bb9779..48c399e32f0cce2a95a85339901dc7dd50dab697 100755 --- a/yang-models/_3gpp-nr-nrm-nrcelldu.yang +++ b/yang-models/_3gpp-nr-nrm-nrcelldu.yang @@ -8,17 +8,16 @@ module _3gpp-nr-nrm-nrcelldu { 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; } import ietf-yang-types { prefix yang; } - 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 2022-07-27 { reference "CR-0769"; } revision 2021-10-28 { reference CR-0607 ; } revision 2021-01-25 { reference CR-0454 ; } revision 2020-11-25 { reference CR-0386 ; } @@ -82,7 +81,6 @@ module _3gpp-nr-nrm-nrcelldu { 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 diff --git a/yang-models/_3gpp-nr-nrm-nrcellrelation.yang b/yang-models/_3gpp-nr-nrm-nrcellrelation.yang index 6e2a77b91f1efa13784d9fa48e2cc19319e1cfdb..861b3b3705190428db8154504ef2f6a3290d2ad5 100755 --- a/yang-models/_3gpp-nr-nrm-nrcellrelation.yang +++ b/yang-models/_3gpp-nr-nrm-nrcellrelation.yang @@ -15,6 +15,7 @@ module _3gpp-nr-nrm-nrcellrelation { Object Class (IOC) that is part of the NR Network Resource Model (NRM)."; reference "3GPP TS 28.541 5G Network Resource Model (NRM)"; + revision 2023-06-25 { reference CR0932 ; } revision 2021-01-25 { reference CR-0454 ; } revision 2020-06-03 { reference S5-202333 ; } revision 2020-04-23 { reference CR0281 ; } @@ -36,11 +37,11 @@ module _3gpp-nr-nrm-nrcellrelation { description "Represents the NRCellRelation IOC."; reference "3GPP TS 28.541"; - leaf nRTCI { + 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; + type uint64; } container cellIndividualOffset { @@ -50,64 +51,64 @@ module _3gpp-nr-nrm-nrcellrelation { sinrOffsetCSI-RS."; reference "cellIndividualOffset in MeasObjectNR in 3GPP TS 38.331"; - leaf rsrpOffsetSsb { + leaf rsrpOffsetSsb { description "Offset value of rsrpOffsetSSB."; default 0; - type types3gpp:QOffsetRange; + type types3gpp:QOffsetRange; } - leaf rsrqOffsetSsb{ + leaf rsrqOffsetSsb{ description "Offset value of rsrqOffsetSSB."; default 0; - type types3gpp:QOffsetRange; + type types3gpp:QOffsetRange; } - leaf sinrOffsetSsb { + leaf sinrOffsetSsb { description "Offset value of sinrOffsetSSB."; default 0; - type types3gpp:QOffsetRange; + type types3gpp:QOffsetRange; } - leaf rsrpOffsetCsiRs{ + leaf rsrpOffsetCsiRs{ description "Offset value of rsrpOffsetCSI-RS."; default 0; - type types3gpp:QOffsetRange; + type types3gpp:QOffsetRange; } - leaf rsrqOffsetCsiRs { + leaf rsrqOffsetCsiRs { description "Offset value of rsrqOffsetCSI-RS."; default 0; - type types3gpp:QOffsetRange; + type types3gpp:QOffsetRange; } - leaf sinrOffsetCsiRs { + leaf sinrOffsetCsiRs { description "Offset value of sinrOffsetCSI-RS."; default 0; - type types3gpp:QOffsetRange; + type types3gpp:QOffsetRange; } } - leaf nRFreqRelationRef { + leaf nRFreqRelationRef { description "Reference to a corresponding NRFreqRelation instance."; mandatory true; type types3gpp:DistinguishedName; } - leaf adjacentNRCellRef { + leaf adjacentNRCellRef { description "Reference to an adjacent NR cell (NRCellCU or ExternalNRCellCU)."; mandatory true; type types3gpp:DistinguishedName; } - leaf isRemoveAllowed { - type boolean; + 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; + leaf isHOAllowed { + type boolean; default true; description "True if handovers are allowed over this relation."; } @@ -124,6 +125,34 @@ module _3gpp-nr-nrm-nrcellrelation { changed to energy saving state."; type EnergySavingCoverage; } + + leaf isENDCAllowed { + type boolean; + mandatory true; + description "This 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."; + } + + leaf isMLBAllowed { + type boolean; + mandatory true; + description "This indicates if mobility load balancing is allowed or + prohibited from source cell to target cell. + + If TRUE, load balancing is allowed from source cell to target cell. + The source cell is identified by the name-containing NRCellCU of + the NRCellRelation that contains the isMLBAllowed. The target cell + is referenced by the NRCellRelation that contains this isLBAllowed. + In case of isHOAllowed is FALSE, mobility load balancing is + prohibited by handover from source cell to target cell. + + If FALSE, load balancing shall be prohibited from source cell to + target cell."; + } } augment /me3gpp:ManagedElement/gnbcucp3gpp:GNBCUCPFunction/nrcellcu3gpp:NRCellCU { diff --git a/yang-models/_3gpp-nr-nrm-nrfreqrelation.yang b/yang-models/_3gpp-nr-nrm-nrfreqrelation.yang index 3d25d85d05bdaba7a313347b3ef7d8f49c032fbd..0c571f295df70e90d66e1a9a186c90c6fa391fb4 100755 --- a/yang-models/_3gpp-nr-nrm-nrfreqrelation.yang +++ b/yang-models/_3gpp-nr-nrm-nrfreqrelation.yang @@ -15,6 +15,7 @@ module _3gpp-nr-nrm-nrfreqrelation { Object Class (IOC) that is part of the NR Network Resource Model (NRM)."; reference "3GPP TS 28.541 5G Network Resource Model (NRM)"; + revision 2023-06-25 { reference CR0932 ; } revision 2020-04-23 { reference CR0281 ; } revision 2019-10-28 { reference S5-193518 ; } revision 2019-06-17 { @@ -72,17 +73,17 @@ module _3gpp-nr-nrm-nrfreqrelation { } } - leaf-list blackListEntry { + leaf-list blockListEntry { description "A list of Physical Cell Identities (PCIs) that are - blacklisted in NR measurements."; + exclude-listed in NR measurements."; reference "3GPP TS 38.331"; min-elements 0; type uint16 { range "0..1007"; } } - leaf-list blackListEntryIdleMode { + leaf-list blockListEntryIdleMode { description "A list of Physical Cell Identities (PCIs) that are - blacklisted in SIB4 and SIB5."; + exclude-listed in SIB4 and SIB5."; min-elements 0; type uint16 { range "0..1007"; } } diff --git a/yang-models/_3gpp-nr-nrm-rrmpolicy.yang b/yang-models/_3gpp-nr-nrm-rrmpolicy.yang index cfe977059492f51fbb080086288c153f9ed2d111..65a7ac1a4e4bb61c3b79a099c1936ed5993d1d9b 100755 --- a/yang-models/_3gpp-nr-nrm-rrmpolicy.yang +++ b/yang-models/_3gpp-nr-nrm-rrmpolicy.yang @@ -1,10 +1,16 @@ module _3gpp-nr-nrm-rrmpolicy { yang-version 1.1; namespace "urn:3gpp:sa5:_3gpp-nr-nrm-rrmpolicy"; - prefix "nrrrmpolicy3gpp"; + prefix "rrmpolicy3gpp"; import _3gpp-5g-common-yang-types { prefix types5g3gpp; } import _3gpp-common-top { prefix top3gpp; } + import _3gpp-common-managed-element { prefix me3gpp; } + import _3gpp-nr-nrm-nrcellcu { prefix nrcellcu3gpp ; } + import _3gpp-nr-nrm-nrcelldu { prefix nrcelldu3gpp ; } + 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"; @@ -12,6 +18,7 @@ module _3gpp-nr-nrm-rrmpolicy { is part of the NR Network Resource Model (NRM)."; reference "3GPP TS 28.541 5G Network Resource Model (NRM)"; + revision 2022-07-27 { reference "CR-0769"; } revision 2020-11-05 { reference CR-0412 ; } revision 2020-04-28 { reference "CR0285"; } revision 2020-02-14 { reference "Initial revision"; } @@ -26,13 +33,6 @@ module _3gpp-nr-nrm-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. @@ -71,13 +71,11 @@ module _3gpp-nr-nrm-rrmpolicy { } } // 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. @@ -113,16 +111,88 @@ module _3gpp-nr-nrm-rrmpolicy { } } - 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; + grouping RrmPolicySubtree { + description "Contains RrmPolicy related classes. + Should be used in all classes (or classes inheriting from) + - NRCellCU, NRCellDU, GNBCUUPFunction, GNBCUCPFunction, GNBDUFunction + + If some YAM wants to augment these classes/list/groupings they must + augment all user classes!"; + + list RRMPolicyRatio { + description "This IOC represents the properties of RRMPolicyRatio. + RRMPolicyRatio is one realization of abstract RRMPolicy_ IOC. + RRMPolicyRatio has three attributes, apart from those inherited + (DN, resourceType, rRMPolicyMemberList). + + Structure of RRMPolicyRatio includes in order: Dedicated Resources, + Prioritized Resources, Shared Resources, etc. + + - The attribute rRMPolicyMaxRatio defines the maximum resource usage + quota for the associated rRMPolicyMemberList, including at least one of + shared resources, prioritized resources and dedicated resources. The + sum of the 'rRMPolicyMaxRatio' values assigned to all RRMPolicyRatio(s) + name-contained by same MangedEntity can be greater than 100. + - The attribute rRMPolicyMinRatio defines the minimum resource usage + quota for the associated RRMPolicyMemberList, including at least one + of prioritized resources and dedicated resources, which means the + resources quota that need to be guaranteed for use by the associated + rRMPolicyMemberList. The sum of the 'rRMPolicyMinRatio' values assigned + to all RRMPolicyRatio(s) name-contained by same MangedEntity shall be + less or equal 100. + - The attribute rRMPolicyDedicatedRatio defines the dedicated resource + usage quota for the RRMPolicyMemberList, including dedicated resources. + The sum of the 'rRMPolicyDedicatedRatio' values assigned to all + RRMPolicyRatio(s) name-contained by same MangedEntity shall be less + or equal 100. + + The following are the definition for above mentioned three resource + categories: + - Shared resources: means the resources that are shared with other + rRMPolicyMemberList(s) (i.e. the rRMPolicyMemberList(s) defined in + RRMPolicyRatio(s) name-contained by the same ManagedEntity). The shared + resources are not guaranteed for use by the associated + rRMPolicyMemberList. The shared resources quota is represented by + [rRMPolicyMaxRatio-rRMPolicyMinRatio]. + - Priortized resources: means the resources are preferentially used by + the associated RRMPolicyMemberList. These resources are guaranteed for + use by the associated RRMPolicyMemberList when it needs to use them. + When not used, these resources may be used by other + rRMPolicyMemberList(s) (i.e. the rRMPolicyMemberList(s) defined in + RRMPolicyRatio(s) name-contained by the same ManagedEntity). + The prioritized resources quota is represented by + [rRMPolicyMinRatio-rRMPolicyDedicatedRatio] + - Dedicated resources: means the resources are dedicated for use by + the associated RRMPolicyMemberList. These resources can not be shared + even if the associated RRMPolicyMember does not use them. The Dedicated + resources quota is represented by [rRMPolicyDedicatedRatio]."; + key id; + uses top3gpp:Top_Grp; + container attributes { + uses RRMPolicyRatioGrp; + } } } + + augment "/me3gpp:ManagedElement/gnbcucp3gpp:GNBCUCPFunction/" + + "nrcellcu3gpp:NRCellCU" { + uses RrmPolicySubtree; + } + + augment "/me3gpp:ManagedElement/gnbdu3gpp:GNBDUFunction/" + + "nrcelldu3gpp:NRCellDU" { + uses RrmPolicySubtree; + } + + augment "/me3gpp:ManagedElement/gnbcuup3gpp:GNBCUUPFunction" { + uses RrmPolicySubtree; + } + + augment "/me3gpp:ManagedElement/gnbcucp3gpp:GNBCUCPFunction" { + uses RrmPolicySubtree; + } + + augment "/me3gpp:ManagedElement/gnbdu3gpp:GNBDUFunction" { + uses RrmPolicySubtree; + } } \ 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 f187bd1a97c5b9bd7f0b653359229b906b45a306..671affd8193b7f40ba3a4b20c062ef566dfa546a 100755 --- a/yang-models/_3gpp-ns-nrm-networkslice.yang +++ b/yang-models/_3gpp-ns-nrm-networkslice.yang @@ -3,7 +3,6 @@ module _3gpp-ns-nrm-networkslice { 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; } @@ -20,6 +19,7 @@ module _3gpp-ns-nrm-networkslice { Information model definitions for network slice NRM (chapter 6) "; + revision 2022-07-27 { reference CR-0769; } revision 2020-06-02 { reference "CR-0485, CR-0508"; } @@ -30,15 +30,14 @@ module _3gpp-ns-nrm-networkslice { } grouping NetworkSliceGrp { - - uses subnet3gpp:SubNetworkGrp; // Inherits from SubNetwork - + description "Represents the NetworkSlice IOC"; leaf operationalState { description "The operational state of the network slice instance. - It describes whether or not the resource is physically installed + It describes whether or not the resource is installed and working."; - config false; type types3gpp:OperationalState; + config false; + mandatory true; } leaf administrativeState { @@ -46,6 +45,7 @@ module _3gpp-ns-nrm-networkslice { It describes the permission to use or prohibition against using the instance, imposed through the OAM services."; type types3gpp:AdministrativeState; + default LOCKED; } list serviceProfileList { @@ -56,23 +56,25 @@ module _3gpp-ns-nrm-networkslice { } leaf networkSliceSubnetRef { - type leafref { - path /nss3gpp:NetworkSliceSubnet/nss3gpp:id; - } - description "The NetworkSliceSubnet that the NetworkSlice is - associated with."; + type types3gpp:DistinguishedName; + config false; + mandatory true; + description "DN of NetworkSliceSubnet relating to the + NetworkSlice instance"; } } - list NetworkSlice { - description "Represents the properties of a network slice instance in - a 5G network."; - key id; - - container attributes { - uses NetworkSliceGrp; + augment /subnet3gpp:SubNetwork { + 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; } - - uses top3gpp:Top_Grp; } } \ No newline at end of file diff --git a/yang-models/_3gpp-ns-nrm-networkslicesubnet.yang b/yang-models/_3gpp-ns-nrm-networkslicesubnet.yang index 98daa9b54b7a5e241238e20e2be3a9e666be4119..f433c4d206bb06d6f5daa571e295ea2292b9094a 100755 --- a/yang-models/_3gpp-ns-nrm-networkslicesubnet.yang +++ b/yang-models/_3gpp-ns-nrm-networkslicesubnet.yang @@ -6,9 +6,7 @@ module _3gpp-ns-nrm-networkslicesubnet { 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; @@ -23,6 +21,7 @@ module _3gpp-ns-nrm-networkslicesubnet { Information model definitions for network slice NRM (chapter 6) "; + revision 2022-07-27 { reference CR-0769; } revision 2021-05-05 { description "replace perfReq with 3 new datatypes xxxSliceSubnetProfile"; reference "CR-0485"; @@ -39,11 +38,6 @@ module _3gpp-ns-nrm-networkslicesubnet { 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"; @@ -114,13 +108,10 @@ module _3gpp-ns-nrm-networkslicesubnet { } grouping NetworkSliceSubnetGrp { - - uses subnet3gpp:SubNetworkGrp; - uses EPTransportGrp; - + description "Represents the NetworkSliceSubnet IOC."; leaf operationalState { - description "The operational state of the network slice instance. - It describes whether or not the resource is physically installed + description "The operational state of the resouce. + It describes whether or not the resource is installed and working."; mandatory true; config false; @@ -131,7 +122,7 @@ module _3gpp-ns-nrm-networkslicesubnet { 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; + default LOCKED; type types3gpp:AdministrativeState; } @@ -157,61 +148,80 @@ module _3gpp-ns-nrm-networkslicesubnet { uses SliceProfileGrp; } - list managedFunctionRef { - description "The managed functions that the NetworkSliceSubnet is - associated with."; - key aggregatedManagedFunction; - leaf aggregatedManagedFunction { - type instance-identifier; + leaf priorityLabel { + type int32 ; + mandatory true ; + description "Specifies a label that consumer would assign a value on + an instance of network slice subnet. The management system takes + the value of this attribute into account. The effect of this + attribute value to the subject managed entity is not standardized"; + } + + leaf networkSliceSubnetType { + type enumeration { + enum TOP_SLICESUBNET; + enum RAN_SLICESUBNET; + enum CN_SLICESUBNET; } + mandatory true; + description "Indicates the type of network slice subnet, including: + - Top network slice subnet + - RAN network slice subnet + - CN network slice subnet"; + } + + leaf-list managedFunctionRef { + type types3gpp:DistinguishedName; + config false; + description "This holds a list of DN of ManagedFunction instances + supporting the NetworkSliceSubnet instance."; } leaf-list networkSliceSubnetRef { - type leafref { - path /NetworkSliceSubnet/id; - } - description "Lists the NetworkSliceSubnet instances associated with - this NetworkSliceSubnet."; + type types3gpp:DistinguishedName; + config false; + description "List of DNs of constituent NetworkSliceSubnet supporting + NetworkSliceSubnet instance ."; + } + + leaf-list epTransportRef { + type types3gpp:DistinguishedName; + description "List of transport level EPs associated with the + application level EP (i.e. EP_N3 or EP_NgU) or network slice subnet."; } } - 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"; - } + augment /subnet3gpp:SubNetwork { + list NetworkSliceSubnet { + description "Represents the properties of a network slice subnet + instance in a 5G network. + + The NetworkSliceSubnet can be categorized by following types: + - RANSliceSubne represent the RAN network slice subnet in a 5G network, + which is associated to one or multiple 'RANSliceSubnetProfile'. + - CNSliceSubnet represent the CN network slice subnet in a 5G network, + which is associated to one or multiple 'CNSliceSubnetProfile'. + - TopSliceSubnet represent the top network slice subnet in a 5G network, + which is associated to one or multiple 'TopSliceSubnetProfile'. + + The attribute epTransportRef is used to specify a list of EP_Transport + instance as transport resources to be aggregated to a NetworkSliceSubnet + instance. The MnS consumer determines the EP_Transport instance(s) to + support EP_Application instances as part of the NetworkSliceSubnet + instance and request the MnS producer to configure the attribute + epTransportRef of the NetworkSliceSubnet. + + The EP_Transport is name contained by SubNetwork, and an EP_Transport + instance can be a new instance created for the EP_Application instances + as part of NetworkSliceSubnet instance or an existing instance reused + for EP_Application instance."; + key id; + + container attributes { + uses NetworkSliceSubnetGrp; } - } - - uses top3gpp:Top_Grp; - uses meas3gpp:MeasurementSubtree { - if-feature MeasurementsUnderNetworkSliceSubnet; - } + + uses top3gpp:Top_Grp; + } } } \ No newline at end of file diff --git a/yang-models/_3gpp-ns-nrm-serviceprofile.yang b/yang-models/_3gpp-ns-nrm-serviceprofile.yang index d3630dc23fd3822e742ede611947bb9bfa4815e1..db3fcd9e7c8b462963722b77d2cf0b60d1b522a2 100755 --- a/yang-models/_3gpp-ns-nrm-serviceprofile.yang +++ b/yang-models/_3gpp-ns-nrm-serviceprofile.yang @@ -362,7 +362,7 @@ submodule _3gpp-ns-nrm-serviceprofile { type ns3cmn:Support-enum; } } - list v2XCommModels { + list v2XCommMode { description "An attribute specifies whether or not the V2X communication mode is supported by the network slice."; config false; @@ -500,4 +500,4 @@ submodule _3gpp-ns-nrm-serviceprofile { } } } -} \ No newline at end of file +} diff --git a/yang-models/_3gpp-ns-nrm-sliceprofile.yang b/yang-models/_3gpp-ns-nrm-sliceprofile.yang index c1441d45aee372db6e9a75c1dcd3b643934762d6..5ecec2d087ed32d2b5c71a19108988e2ced419af 100755 --- a/yang-models/_3gpp-ns-nrm-sliceprofile.yang +++ b/yang-models/_3gpp-ns-nrm-sliceprofile.yang @@ -18,8 +18,8 @@ submodule _3gpp-ns-nrm-sliceprofile { 5G Network Resource Model (NRM); Information model definitions for network slice NRM (chapter 6) "; - - revision 2021-07-16 { reference CR-0566 ; } + revision 2023-11-04 { reference CR-1057 ; } + revision 2021-07-17 { reference CR-0566 ; } revision 2021-05-05 { description "replace perfReq with 3 new datatypes xxxSliceSubnetProfile"; reference "CR-0485"; @@ -106,11 +106,6 @@ submodule _3gpp-ns-nrm-sliceprofile { } 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 @@ -308,11 +303,13 @@ submodule _3gpp-ns-nrm-sliceprofile { fraction-digits 1; } } - leaf-list coverageAreaTAList { + list coverageAreaTAList { description "A list of TrackingAreas where the NSI can be selected."; + key idx; //no obvious leaf to use as a key + leaf idx { type uint32; } //optional support min-elements 1; - type types3gpp:Tac; + uses types3gpp:TaiGrp; } leaf uEMobilityLevel { description "The mobility level of UE accessing the network slice @@ -408,11 +405,6 @@ submodule _3gpp-ns-nrm-sliceprofile { } 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 @@ -571,11 +563,13 @@ submodule _3gpp-ns-nrm-sliceprofile { type ns3cmn3gpp:Support-enum; } } - leaf-list coverageAreaTAList { + list coverageAreaTAList { description "A list of TrackingAreas where the NSI can be selected."; + key idx; //no obvious leaf to use as a key + leaf idx { type uint32; } //optional support min-elements 1; - type types3gpp:Tac; + uses types3gpp:TaiGrp; } leaf resourceSharingLevel { description "Specifies whether the resources to be allocated to the @@ -844,11 +838,13 @@ submodule _3gpp-ns-nrm-sliceprofile { fraction-digits 1; } } - leaf-list coverageAreaTAList { + list coverageAreaTAList { description "A list of TrackingAreas where the NSI can be selected."; + key idx; //no obvious leaf to use as a key + leaf idx { type uint32; } //optional support min-elements 1; - type types3gpp:Tac; + uses types3gpp:TaiGrp; } leaf uEMobilityLevel { description "The mobility level of UE accessing the network slice @@ -983,11 +979,13 @@ submodule _3gpp-ns-nrm-sliceprofile { type uint64; } - leaf-list coverageAreaTAList { + list coverageAreaTAList { description "A list of TrackingAreas where the NSI can be selected."; + key idx; //no obvious leaf to use as a key + leaf idx { type uint32; } //optional support min-elements 1; - type types3gpp:Tac; + uses types3gpp:TaiGrp; } leaf latency {