From d1f22fc09e1437459286946477569028cdd95616 Mon Sep 17 00:00:00 2001 From: Jacqueline Beaulac Date: Thu, 3 Nov 2022 11:35:41 +0100 Subject: [PATCH 1/3] Updated four YANG modules --- yang-models/_3gpp-common-fm.yang | 34 +++++++++++++++++++ .../_3gpp-common-managed-function.yang | 4 +++ yang-models/_3gpp-common-measurements.yang | 4 +++ yang-models/_3gpp-common-yang-extensions.yang | 22 ++++++++++-- yang-models/_3gpp-common-yang-types.yang | 4 +++ 5 files changed, 66 insertions(+), 2 deletions(-) diff --git a/yang-models/_3gpp-common-fm.yang b/yang-models/_3gpp-common-fm.yang index 1399a086f..56f84e296 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,6 +23,7 @@ module _3gpp-common-fm { Integration Reference Point (IRP); Information Service (IS)"; + revision 2022-11-03 { reference CR-0192; } revision 2021-08-08 { reference "CR-0132"; } revision 2021-06-02 { reference "CR-0130"; } revision 2020-06-03 { reference "CR-0091"; } @@ -107,58 +109,68 @@ module _3gpp-common-fm { type string; mandatory true; description "Identifies the alarmRecord"; + yext3gpp:notNotifyable; } leaf objectInstance { type string; config false ; mandatory true; + yext3gpp:notNotifyable; } leaf notificationId { type int32; config false ; mandatory true; + yext3gpp:notNotifyable; } leaf alarmRaisedTime { type yang:date-and-time ; 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 ; description "General category for the alarm."; + yext3gpp:notNotifyable; } leaf probableCause { type string; config false ; + yext3gpp:notNotifyable; } leaf specificProblem { type string; config false ; reference "ITU-T Recommendation X.733 clause 8.1.2.2."; + yext3gpp:notNotifyable; } leaf perceivedSeverity { type severity-level; description "This is Writable only if producer supports consumer to set perceivedSeverity to CLEARED"; + yext3gpp:notNotifyable; } leaf backedUpStatus { @@ -166,11 +178,13 @@ module _3gpp-common-fm { 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; config false ; + yext3gpp:notNotifyable; } leaf trendIndication { @@ -179,6 +193,7 @@ module _3gpp-common-fm { description "Indicates if some observed condition is getting better, worse, or not changing. "; reference "ITU-T Recommendation X.733 clause 8.1.2.6."; + yext3gpp:notNotifyable; } grouping ThresholdPackGrp { @@ -227,6 +242,7 @@ module _3gpp-common-fm { list thresholdInfo { config false ; uses ThresholdInfoGrp; + yext3gpp:notNotifyable; } leaf stateChangeDefinition { @@ -234,6 +250,7 @@ module _3gpp-common-fm { config false ; description "Indicates MO attribute value changes. See definition in ITU-T Recommendation X.733 clause 8.1.2.11."; + yext3gpp:notNotifyable; } leaf monitoredAttributes { @@ -242,6 +259,7 @@ module _3gpp-common-fm { description "Indicates MO attributes whose value changes are being monitored."; reference "ITU-T Recommendation X.733 clause 8.1.2.11."; + yext3gpp:notNotifyable; } leaf proposedRepairActions { @@ -249,15 +267,18 @@ 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 { config false ; + yext3gpp:notNotifyable; } leaf rootCauseIndicator { @@ -269,6 +290,7 @@ module _3gpp-common-fm { 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 { @@ -277,12 +299,14 @@ module _3gpp-common-fm { 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 { type string; description "It identifies the last user who has changed the Acknowledgement State."; + yext3gpp:notNotifyable; } leaf ackSystemId { @@ -290,6 +314,7 @@ module _3gpp-common-fm { 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 { @@ -302,16 +327,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 +348,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,11 +357,13 @@ 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; } } @@ -361,18 +392,21 @@ 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"; uses AlarmRecordGrp; + yext3gpp:notNotifyable; } } diff --git a/yang-models/_3gpp-common-managed-function.yang b/yang-models/_3gpp-common-managed-function.yang index a46d86482..2904783bf 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; } @@ -21,6 +22,7 @@ module _3gpp-common-managed-function { 3GPP TS 28.620 Umbrella Information Model (UIM)"; + revision 2022-11-03 { reference CR-0192; } revision 2021-01-25 { reference "CR-0122"; } revision 2020-09-30 { reference "CR-bbbb"; } revision 2020-08-06 { reference "CR-0102"; } @@ -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 { diff --git a/yang-models/_3gpp-common-measurements.yang b/yang-models/_3gpp-common-measurements.yang index 96893e6c3..952450d3e 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,7 @@ module _3gpp-common-measurements { Integration Reference Point (IRP); Information Service (IS)"; + revision 2022-11-03 { reference CR-0192; } revision 2021-07-22 { reference "CR-0137"; } revision 2020-11-06 { reference "CR-0118"; } revision 2020-09-04 { reference "CR-000107"; } @@ -265,12 +267,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; } choice reportingCtrl { diff --git a/yang-models/_3gpp-common-yang-extensions.yang b/yang-models/_3gpp-common-yang-extensions.yang index 9bc0a82be..aab32fd19 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-11-03 { reference CR-0192; } + revision 2019-06-23 { description "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 b19148cbe..781fc4b9a 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,6 +14,7 @@ module _3gpp-common-yang-types { network slicing."; reference "3GPP TS 28.623"; + revision 2022-11-03 { reference CR-0192; } revision 2021-11-01 { reference "CR-0141"; } revision 2020-11-06 { description "Removed incorrect S-NSSAI definitions."; @@ -61,6 +63,7 @@ module _3gpp-common-yang-types { The format of the NF Instance ID shall be a Universally Unique Identifier (UUID) version 4, as described in IETF RFC 4122 " ; + yext3gpp:notNotifyable; } leaf-list nfType { @@ -68,6 +71,7 @@ module _3gpp-common-yang-types { min-elements 1; type NfType; description "Type of the Network Function" ; + yext3gpp:notNotifyable; } leaf hostAddr { -- GitLab From 5a6ee07ad706c96c37d7b8f4938ceb91b7bfbe34 Mon Sep 17 00:00:00 2001 From: Jacqueline Beaulac Date: Fri, 4 Nov 2022 19:18:40 +0100 Subject: [PATCH 2/3] Added HeartbeatControl.triggerHeartbeatNtf Reverted ManagedNfProfile Corrected ThresholdMonitor --- yang-models/_3gpp-common-measurements.yang | 4 ++-- .../_3gpp-common-subscription-control.yang | 17 +++++++++++++++-- yang-models/_3gpp-common-yang-types.yang | 4 ---- 3 files changed, 17 insertions(+), 8 deletions(-) diff --git a/yang-models/_3gpp-common-measurements.yang b/yang-models/_3gpp-common-measurements.yang index 952450d3e..ac8ea3f58 100755 --- a/yang-models/_3gpp-common-measurements.yang +++ b/yang-models/_3gpp-common-measurements.yang @@ -267,14 +267,12 @@ 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; } choice reportingCtrl { @@ -375,12 +373,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; } } diff --git a/yang-models/_3gpp-common-subscription-control.yang b/yang-models/_3gpp-common-subscription-control.yang index 25bde6927..46de6a7b4 100755 --- a/yang-models/_3gpp-common-subscription-control.yang +++ b/yang-models/_3gpp-common-subscription-control.yang @@ -90,8 +90,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 +100,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 { diff --git a/yang-models/_3gpp-common-yang-types.yang b/yang-models/_3gpp-common-yang-types.yang index 781fc4b9a..b19148cbe 100755 --- a/yang-models/_3gpp-common-yang-types.yang +++ b/yang-models/_3gpp-common-yang-types.yang @@ -5,7 +5,6 @@ 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"; @@ -14,7 +13,6 @@ module _3gpp-common-yang-types { network slicing."; reference "3GPP TS 28.623"; - revision 2022-11-03 { reference CR-0192; } revision 2021-11-01 { reference "CR-0141"; } revision 2020-11-06 { description "Removed incorrect S-NSSAI definitions."; @@ -63,7 +61,6 @@ module _3gpp-common-yang-types { The format of the NF Instance ID shall be a Universally Unique Identifier (UUID) version 4, as described in IETF RFC 4122 " ; - yext3gpp:notNotifyable; } leaf-list nfType { @@ -71,7 +68,6 @@ module _3gpp-common-yang-types { min-elements 1; type NfType; description "Type of the Network Function" ; - yext3gpp:notNotifyable; } leaf hostAddr { -- GitLab From 290217b0c4fe65cff19641f535b574554bbfa00c Mon Sep 17 00:00:00 2001 From: Jacqueline Beaulac Date: Fri, 4 Nov 2022 19:23:42 +0100 Subject: [PATCH 3/3] Updated revision and imports --- yang-models/_3gpp-common-subscription-control.yang | 2 ++ 1 file changed, 2 insertions(+) diff --git a/yang-models/_3gpp-common-subscription-control.yang b/yang-models/_3gpp-common-subscription-control.yang index 46de6a7b4..7229d5648 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,7 @@ module _3gpp-common-subscription-control { Solution Set (SS) definitions 3GPP TS 28.623"; + revision 2022-11-03 { reference CR-0192; } 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"; } -- GitLab