From e003e947edf9c84f256d967c52b2dd4c28267a1a Mon Sep 17 00:00:00 2001 From: "U-ERICSSON\\ETHBLL" Date: Sun, 23 Oct 2022 12:27:55 +0200 Subject: [PATCH 1/7] added yexte:ontNotifyable to yanf-extensions and subscription-control --- .../_3gpp-common-subscription-control.yang | 16 ++++++++ yang-models/_3gpp-common-yang-extensions.yang | 37 ++++++++++++++++--- 2 files changed, 47 insertions(+), 6 deletions(-) diff --git a/yang-models/_3gpp-common-subscription-control.yang b/yang-models/_3gpp-common-subscription-control.yang index 25bde6927..5809a0b2b 100755 --- a/yang-models/_3gpp-common-subscription-control.yang +++ b/yang-models/_3gpp-common-subscription-control.yang @@ -4,6 +4,7 @@ module _3gpp-common-subscription-control { prefix "subscr3gpp"; import _3gpp-common-top { prefix top3gpp; } + import _3gpp-common-yang-extensions { prefix yext3gpp; } organization "3GPP SA5"; contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; @@ -15,6 +16,7 @@ module _3gpp-common-subscription-control { Solution Set (SS) definitions 3GPP TS 28.623"; + revision 2022-10-20 { reference CR-0196; } 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"; } @@ -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 { diff --git a/yang-models/_3gpp-common-yang-extensions.yang b/yang-models/_3gpp-common-yang-extensions.yang index 9bc0a82be..9d1ef9639 100755 --- a/yang-models/_3gpp-common-yang-extensions.yang +++ b/yang-models/_3gpp-common-yang-extensions.yang @@ -4,6 +4,8 @@ module _3gpp-common-yang-extensions { prefix yext3gpp ; organization "3GPP SA5"; + contact "https://www.3gpp.org/DynaReport/TSG-WG--S5--officials.htm?Itemid=464"; + description "The module defines YANG extensions needed 3GPP YANG modeling. @@ -37,11 +39,34 @@ module _3gpp-common-yang-extensions { implementations MAY or MAY NOT support. If support for an extension is missing the extension statement needs individual handling or it SHOULD be removed from the module using - the extension e.g. with a deviation. - "; - - revision "2019-06-23" { - description "Initial version"; + the extension e.g. with a deviation."; + + reference "3GPP TS 28.623 + Generic Network Resource Model (NRM) + Integration Reference Point (IRP); + Solution Set (SS) definitions + 3GPP TS 28.623"; + + revision 2022-10-20 { reference CR-0196; } + 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 { @@ -92,4 +117,4 @@ module _3gpp-common-yang-extensions { argument "initial-value"; } -} \ No newline at end of file +} -- GitLab From ebc15e4a19ac827aeabb5373bfacf28c0dae28f0 Mon Sep 17 00:00:00 2001 From: Jacqueline Beaulac Date: Mon, 24 Oct 2022 14:33:35 +0200 Subject: [PATCH 2/7] added yexte:notNotifyable to 4 modules --- yang-models/_3gpp-common-fm.yang | 34 +++++++++++++++++++ .../_3gpp-common-managed-function.yang | 4 +++ yang-models/_3gpp-common-measurements.yang | 8 +++-- yang-models/_3gpp-common-yang-types.yang | 4 +++ 4 files changed, 48 insertions(+), 2 deletions(-) diff --git a/yang-models/_3gpp-common-fm.yang b/yang-models/_3gpp-common-fm.yang index 1399a086f..6f7eec49e 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-10-24 { reference CR-0196; } 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 { @@ -226,6 +241,7 @@ module _3gpp-common-fm { list thresholdInfo { config false ; + yext3gpp:notNotifyable; uses ThresholdInfoGrp; } @@ -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,17 +392,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-function.yang b/yang-models/_3gpp-common-managed-function.yang index a2bca7e83..77d529cc5 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-24 { reference CR-0196; } 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 { diff --git a/yang-models/_3gpp-common-measurements.yang b/yang-models/_3gpp-common-measurements.yang index 96893e6c3..8c0a75041 100755 --- a/yang-models/_3gpp-common-measurements.yang +++ b/yang-models/_3gpp-common-measurements.yang @@ -5,7 +5,8 @@ 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-10-24 { reference CR-0196; } 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."; + contains the root object and all descendant objects."; + yext3gpp:notNotifyable; } choice reportingCtrl { diff --git a/yang-models/_3gpp-common-yang-types.yang b/yang-models/_3gpp-common-yang-types.yang index 0986cdefc..6e7b1c165 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-10-24 { reference CR-0196; } revision 2022-07-26 { reference CR-0180 ; } revision 2022-02-09 { reference "CR-0144"; } revision 2021-11-01 { reference "CR-0141"; } @@ -261,6 +263,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 { @@ -268,6 +271,7 @@ module _3gpp-common-yang-types { min-elements 1; type NfType; description "Type of the Network Function" ; + yext3gpp:notNotifyable; } leaf hostAddr { -- GitLab From 24475bd6a4d386a2eeeac10ba1b5e707aaf62394 Mon Sep 17 00:00:00 2001 From: Jacqueline Beaulac Date: Thu, 27 Oct 2022 16:28:50 +0200 Subject: [PATCH 3/7] Corrected description of HeartbeatControlGrp --- yang-models/_3gpp-common-subscription-control.yang | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/yang-models/_3gpp-common-subscription-control.yang b/yang-models/_3gpp-common-subscription-control.yang index 5809a0b2b..8d9f27a82 100755 --- a/yang-models/_3gpp-common-subscription-control.yang +++ b/yang-models/_3gpp-common-subscription-control.yang @@ -92,8 +92,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; -- GitLab From 4c932105d218589001aaf7d74d47458ac58eed50 Mon Sep 17 00:00:00 2001 From: Jacqueline Beaulac Date: Mon, 31 Oct 2022 20:02:24 +0100 Subject: [PATCH 4/7] Added nonNotifyable to ProcessMonitor.timer --- yang-models/_3gpp-common-yang-types.yang | 1 + 1 file changed, 1 insertion(+) diff --git a/yang-models/_3gpp-common-yang-types.yang b/yang-models/_3gpp-common-yang-types.yang index 6e7b1c165..ebafa1c66 100755 --- a/yang-models/_3gpp-common-yang-types.yang +++ b/yang-models/_3gpp-common-yang-types.yang @@ -212,6 +212,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; } } -- GitLab From 583e4002132114782cc567bf02137cb6e050df32 Mon Sep 17 00:00:00 2001 From: Jacqueline Beaulac Date: Thu, 3 Nov 2022 11:32:41 +0100 Subject: [PATCH 5/7] Corrected revision history --- yang-models/_3gpp-common-yang-extensions.yang | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/yang-models/_3gpp-common-yang-extensions.yang b/yang-models/_3gpp-common-yang-extensions.yang index 9d1ef9639..86568541b 100755 --- a/yang-models/_3gpp-common-yang-extensions.yang +++ b/yang-models/_3gpp-common-yang-extensions.yang @@ -48,7 +48,7 @@ module _3gpp-common-yang-extensions { 3GPP TS 28.623"; revision 2022-10-20 { reference CR-0196; } - revision 2019-06-23 { reference "Initial version"; } + revision 2019-06-23 { description "Initial version"; } extension notNotifyable { description -- GitLab From ac761842c3aeacba890f5f11a425a1ea15b317a0 Mon Sep 17 00:00:00 2001 From: Jacqueline Beaulac Date: Thu, 3 Nov 2022 11:47:17 +0100 Subject: [PATCH 6/7] Restore revision history of yang-extensions --- yang-models/_3gpp-common-yang-extensions.yang | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/yang-models/_3gpp-common-yang-extensions.yang b/yang-models/_3gpp-common-yang-extensions.yang index 86568541b..9d1ef9639 100755 --- a/yang-models/_3gpp-common-yang-extensions.yang +++ b/yang-models/_3gpp-common-yang-extensions.yang @@ -48,7 +48,7 @@ module _3gpp-common-yang-extensions { 3GPP TS 28.623"; revision 2022-10-20 { reference CR-0196; } - revision 2019-06-23 { description "Initial version"; } + revision 2019-06-23 { reference "Initial version"; } extension notNotifyable { description -- GitLab From e08ccafad30bb424f4532406b23602939b9a3ebe Mon Sep 17 00:00:00 2001 From: Jacqueline Beaulac Date: Thu, 3 Nov 2022 12:16:27 +0100 Subject: [PATCH 7/7] Corrected ThresholdMonitor Reverted ManagedNfProfile Updated FileDownloadJob --- yang-models/_3gpp-common-filemanagement.yang | 4 ++++ yang-models/_3gpp-common-measurements.yang | 4 ++-- yang-models/_3gpp-common-yang-types.yang | 2 -- 3 files changed, 6 insertions(+), 4 deletions(-) diff --git a/yang-models/_3gpp-common-filemanagement.yang b/yang-models/_3gpp-common-filemanagement.yang index b2c76e85e..a81af586c 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-24 { reference CR-0196; } revision 2022-02-10 { reference "Initial revision, S5-221757"; } grouping FileDownloadProcessMonitor { @@ -50,11 +52,13 @@ 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 { diff --git a/yang-models/_3gpp-common-measurements.yang b/yang-models/_3gpp-common-measurements.yang index 8c0a75041..1b22c8f06 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-yang-types.yang b/yang-models/_3gpp-common-yang-types.yang index ebafa1c66..c60bf8658 100755 --- a/yang-models/_3gpp-common-yang-types.yang +++ b/yang-models/_3gpp-common-yang-types.yang @@ -264,7 +264,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 { @@ -272,7 +271,6 @@ module _3gpp-common-yang-types { min-elements 1; type NfType; description "Type of the Network Function" ; - yext3gpp:notNotifyable; } leaf hostAddr { -- GitLab