Add supoprt for D release use-case.
[sim/o1-interface.git] / ntsimulator / deploy / o-ran-ru-fh / yang / o-ran-sync@2020-08-10.yang
1 module o-ran-sync {
2   yang-version 1.1;
3   namespace "urn:o-ran:sync:1.0";
4   prefix "o-ran-sync";
5
6   import ietf-interfaces {
7     prefix "if";
8   }
9
10   import o-ran-interfaces {
11     prefix "o-ran-int";
12   }
13
14   organization "O-RAN Alliance";
15
16   contact
17     "www.o-ran.org";
18
19   description
20     "This module defines synchronization mechanism for the O-RAN Equipment.
21
22     Copyright 2020 the O-RAN Alliance.
23
24     THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 'AS IS'
25     AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
26     IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
27     ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
28     LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
29     CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
30     SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
31     INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
32     CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
33     ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
34     POSSIBILITY OF SUCH DAMAGE.
35
36     Redistribution and use in source and binary forms, with or without
37     modification, are permitted provided that the following conditions are met:
38
39     * Redistributions of source code must retain the above copyright notice,
40     this list of conditions and the above disclaimer.
41     * Redistributions in binary form must reproduce the above copyright notice,
42     this list of conditions and the above disclaimer in the documentation
43     and/or other materials provided with the distribution.
44     * Neither the Members of the O-RAN Alliance nor the names of its
45     contributors may be used to endorse or promote products derived from
46     this software without specific prior written permission.";
47
48   revision "2020-08-10" {
49     description
50       "version 1.3.0
51
52       1) Update description of ENCHANCED under container sync-capability leaf sync-t-tsc with
53          correct reference to IEEE 802.1CM sections.
54       2) Add description that CLASS_B and ENHANCED are as per IEEE802.1CM.
55       3) Add freq-error and time-error leafs under container sync-status. This allows an O-DU to
56          query the O-RU using NETCONF <get> procedure about the phase and frequency errors at
57          any time.
58       4) Move delay-assymmetry outside of container g-8275-1-config as the delay assymetry
59          is applicable to G.8275.2 as well
60       5) Add gnss-rx-error in gnss-data for LLS-C4 configuration
61       6) Correct the description of state enumerations under synce-status. The earlier
62          descriptions were copy paste from ptp-status";
63
64     reference "ORAN-WG4.M.0-v04.00";
65   }
66
67   revision "2020-04-17" {
68     description
69       "version 1.2.0
70
71       1) enable O-RU to only support GNSS and not 802.1CM.";
72
73     reference "ORAN-WG4.M.0-v03.00";
74   }
75
76   revision "2019-07-03" {
77     description
78       "version 1.1.0
79
80       1) backward compatible changes to introduce groupings.";
81
82     reference "ORAN-WG4.M.0-v01.00";
83   }
84
85   revision "2019-02-04" {
86     description
87       "version 1.0.0
88
89       1) imported model from xRAN
90       2) changed namespace and reference from xran to o-ran";
91
92     reference "ORAN-WG4.M.0-v01.00";
93   }
94
95   typedef geographic-coordinate-degree {
96            type decimal64 {
97              fraction-digits 8;
98            }
99            description
100              "Decimal degree (DD) used to express latitude and longitude
101               geographic coordinates.";
102        }
103
104   feature GNSS {
105     description
106       "This feature indicates that the equipment supports integrated GNSS functionality.";
107   }
108
109   feature ANTI-JAM {
110     description
111       "This feature indicates that the equipment supports Anti-jam fuctionality";
112   }
113
114   grouping sync-group {
115     description "This group represents the state and status of timing and synchronization of the O-RU";
116     container sync-status {
117       config false;
118
119       description
120         "Object of this class provides synchronization state of the module.";
121
122       leaf sync-state {
123         type enumeration {
124           enum LOCKED {
125             description
126               "equipment is in the locked mode, as defined in ITU-T G.810";
127           }
128           enum HOLDOVER {
129             description
130               "equipment clock is in holdover mode";
131           }
132           enum FREERUN {
133             description
134               "equipment clock isn't locked to an input reference, and is not in the holdover mode";
135           }
136         }
137         mandatory true;
138         description
139           "State of DU synchronization";
140       }
141       leaf time-error {
142         type decimal64 {
143           fraction-digits 3;
144         }
145         units nanoseconds;
146         description
147           "An optional leaf indicating an estimate of the current time error in the O-RU,
148           e.g., derived from a low pass filtering of the residual error of the PLL.
149           The definition of the filtering and updating is left to O-RU implementation.";
150       }
151       leaf frequency-error {
152         type decimal64 {
153           fraction-digits 3;
154         }
155         units parts-per-billion;
156         description
157           "An optional leaf indicating an estimate of the current frequency error in the O-RU,
158           e.g., derived from a low pass filtering of the residual error of the PLL.
159           The definition of the filtering and updating is left to O-RU implementation.";
160       }
161
162       list supported-reference-types {
163         key item;
164         min-elements 1;
165         description
166           "Type of a synchronization supported source.";
167         leaf item {
168           type enumeration {
169             enum GNSS {
170               description
171                 "GPS can be taken as a synchronization source";
172             }
173             enum PTP {
174               description
175                 "Precision Time Protocol can be taken as a synchronization source";
176             }
177             enum SYNCE {
178               description
179                 "Synchronous Ethernet can be taken as a synchronization source";
180             }
181           }
182           mandatory true;
183
184           description
185             "supported reference-type";
186         }
187       }
188     }
189
190     container sync-capability {
191       config false;
192
193       description
194         "Object of this class provides synchronization capabilities of the module.";
195
196       leaf sync-t-tsc {
197         type enumeration {
198           enum CLASS_B {
199             description
200               "Regular accuracy (previously referred to class B) for synchronization
201               is supported by the device as per IEEE802.1CM clause 6.4.1, Case 1.1";
202           }
203           enum ENCHANCED {
204             description
205               "Enhanced accuracy for synchronization is supported by the device as per
206               IEEE802.1CM clause 6.4.1, Case 1.2.
207
208               The typo in the name of the enumeration (ENCHANCED instead of ENHANCED)
209               is kept as is for backwards compatibility";
210           }
211         }
212         description
213           "When the O-RU supports 802.1CM, this leaf provides information about
214           T-TSC capability";
215
216         reference "IEEE 802.1CM";
217       }
218     }
219
220     container ptp-config {
221       description
222         "This MO defines configuration of Precise Time Protocol.";
223       leaf domain-number {
224         type uint8;
225         default 24;
226         description
227           "This parameter indicates Domain Number for PTP announce messages.";
228       }
229
230       list accepted-clock-classes {
231         key clock-classes;
232         leaf clock-classes {
233           type uint8;
234           description
235             "PTP Clock Class accepted by the O-RU";
236         }
237         description
238           "Contains list of PTP acceptable Clock Classes, sorted in the descending order.";
239       }
240
241       leaf ptp-profile {
242         type enumeration {
243           enum G_8275_1 {
244             description
245               "Usage of multicast over ethernet";
246           }
247
248           enum G_8275_2 {
249             description
250               "Usage of unicast over IP";
251           }
252         }
253         default "G_8275_1";
254         description
255           "Type of profile to be used in ptp setting";
256       }
257       leaf delay-asymmetry {
258         type int16 {
259           range "-10000..10000";
260         }
261         default 0;
262         description
263           "Defines static phase error in the recovered PTP timing signal to be compensated at the O-RU.
264           The error is defined in units of nanoseconds in the range Â±10 000 ns.
265
266           If the deprecated delay-asymmetry schema node in the g-8275-1-config container is configured
267           together with this schema node, then the O-RU shall use this schema node and ignore the
268           value in the g-8275-1-config container.";
269       }
270
271         container g-8275-1-config {
272           when "../ptp-profile='G_8275_1'";
273
274           description
275             "Container allowing for configuration of G8275.1";
276
277           leaf multicast-mac-address {
278             type enumeration {
279               enum FORWARDABLE {
280                 description
281                   "means, that PTP shall use 01-1B-19-00-00-00 destination MAC address";
282               }
283               enum NONFORWARDABLE {
284                 description
285                   "means, that PTP shall use 01-80-C2-00-00-0E destination MAC address";
286               }
287             }
288             default FORWARDABLE;
289             description
290               "The parameter defines destination MAC address, used by the DU in the egress PTP messages.";
291           }
292
293           leaf delay-asymmetry {
294             type int16 {
295               range -10000..10000;
296             }
297             default 0;
298             status deprecated;
299             description
300               "Defines static phase error in the recovered PTP timing signal to be compensated at the O-RU.
301               The error is defined in units of nanoseconds in the range Â±10 000 ns.";
302           }
303         }
304
305       container g-8275-2-config {
306         when "../ptp-profile='G_8275_2'";
307
308         description
309           "Container used for configuration of G8275.2 profile";
310
311         leaf local-ip-port {
312           type leafref {
313             path "/if:interfaces/if:interface/if:name";
314           }
315           description
316             "Reference to interface name corresponding to IP interface
317             used for G.8275.2";
318         }
319
320         list master-ip-configuration {
321           key local-priority;
322           description
323             "The parameter defines list of ip configuration of devices acting as ptp signal source.";
324           leaf local-priority {
325             type uint8;
326             description
327               "The parameter defines local priority or underlying master IP address.";
328           }
329
330           leaf ip-address {
331             type string;
332             description
333               "the parameter defines master IP address.";
334           }
335         }
336
337         leaf log-inter-sync-period {
338           type int8 {
339             range "-7..0";
340           }
341
342           description
343             "The parameter defines number of sync message during 1 second";
344         }
345
346         leaf log-inter-announce-period {
347           type int8 {
348             range "-3..0";
349           }
350
351           description
352             "The parameter defines number of announce message during 1 second";
353         }
354       }
355     }
356
357     container ptp-status {
358       description
359         "ptp status container";
360       leaf reporting-period {
361         type uint8;
362         default 10;
363         description
364           "This parameter defines minimum period in seconds between reports,
365           sent by the NETCONF Client, for parameters in this container.";
366       }
367       leaf lock-state {
368         type enumeration {
369           enum LOCKED {
370             description
371               "The integrated ordinary clock is synchronizing to the reference, recovered from PTP flow";
372           }
373           enum UNLOCKED {
374             description
375               "The integrated ordinary clock is not synchronizing to the reference, recovered from PTP flow";
376           }
377         }
378         config false;
379         description
380           "This parameter indicates, whether the integrated ordinary clock is
381           synchronizing to the reference, recovered from PTP signal.
382           The exact definition when to indicate locked or unlocked is up to specific
383           implementation.";
384       }
385
386       leaf clock-class {
387         type uint8;
388         config false;
389         description
390           "This parameter contains the clock class of the clock, controlled by the O-RU";
391       }
392
393       leaf clock-identity {
394         type string {
395           length 18;
396           pattern "0[xX][0-9a-fA-F]{16}";
397         }
398         config false;
399         description
400           "This parameter contains identity of the clock,
401             according to IEEE 1588-2008 defintion, controlled by the O-RU.
402           The string shall be formatted as an 8-octet hex value with the '0x' prefix.";
403       }
404
405       leaf partial-timing-supported {
406         type boolean;
407         config false;
408         description
409           "Provides information wheter G.8275.2 (partial timing support from network) is supported.";
410       }
411
412       list sources {
413         key local-port-number;
414         config false;
415
416         description
417           "Synchronisation sources";
418
419         leaf local-port-number {
420           type leafref {
421             path "/if:interfaces/if:interface/o-ran-int:port-reference/o-ran-int:port-number";
422           }
423           description
424             "This is reference to portNumber of ExternalEthernetPort to identify the port,
425             where the PTP signal is located.";
426         }
427
428         leaf state {
429           type enumeration {
430             enum PARENT {
431               description
432                 "Indicates that this source is the current master clock, i.e. the clock,
433                 which the clock, controlled by the Netconf Server, is synchronized to";
434             }
435             enum OK {
436               description
437                 "Indicates that this source is an alternate master, which the clock,
438                 controlled by the Netconf Server, can potentially synchronize to,
439                 i.e. clock class and priority, announced by the master clock is lower,
440                 compared to those of the clock, controlled by the Netconf Server,
441                 and and the clock class is accepted";
442             }
443             enum NOK {
444               description
445                 "Indicates that this source is an alternate master, which the clock,
446                 controlled by the Netconf Server, has an operational connection to,
447                 but the class or priority of the master clock is higher or equal
448                 to those of the clock, controlled by the Netconf Server,
449                 or the clock class is not accepted";
450             }
451             enum DISABLED {
452               description
453                 "Indicates that this source is an alternate master, which the clock,
454                 controlled by the Netconf Server, has no operational connection to";
455             }
456           }
457           description
458             "This parameter indicates status of the PTP source";
459         }
460
461         leaf two-step-flag {
462           type boolean;
463           description
464             "This parameter reflects status of the twoStepFlag attribute in Sync messages,
465             received from the PTP source.";
466         }
467
468         leaf leap61 {
469           type boolean;
470           description
471             "This parameter reflects status of the leap61 flag in Announce messages,
472             received from the PTP source.
473             When true, the last minute of the current UTC day contains 61 seconds.";
474         }
475
476         leaf leap59 {
477           type boolean;
478           description
479             "This parameter reflects status of the leap59 flag in Announce messages,
480             received from the PTP source.
481             When true, the last minute of the current UTC day contains 59 seconds.";
482         }
483
484         leaf current-utc-offset-valid {
485           type boolean;
486           description
487             "This parameter reflects status of the currentUtcOffsetValid flag in
488             Announce messages, received from the PTP source.
489             When true, the current UTC offset is valid.";
490         }
491
492         leaf ptp-timescale {
493           type boolean;
494           description
495             "This parameter reflects status of the ptpTimescale flag in Announce
496             messages, received from the PTP source.
497
498             When set, the clock timescale of the grandmaster clock is PTP;
499             otherwise, the timescale is ARB (arbitrary)";
500         }
501
502         leaf time-traceable {
503           type boolean;
504           description
505             "This parameter reflects status of the timeTraceable flag in Announce
506             messages, received from the PTP source.
507
508             When true, the timescale and the currentUtcOffset are traceable to a
509             primary reference";
510         }
511
512         leaf frequency-traceable {
513           type boolean;
514           description
515             "This parameter reflects status of the frequencyTraceable flag in
516             Announce messages, received from the PTP source.
517
518             When true, the frequency determining the timescale is traceable to a
519             primary reference";
520         }
521
522         leaf source-clock-identity {
523           type string {
524             length 18;
525             pattern "0[xX][0-9a-fA-F]{16}";
526           }
527           description
528             "This parameter reflects value of the sourceClockIdentity attribute in
529             Announce messages, received from the PTP source.
530
531             The string shall be formatted as an 8-octet hex value with the '0x'
532             prefix.";
533         }
534
535         leaf source-port-number {
536           type uint16;
537           description
538             "This parameter reflects value of the sourcePortNumber attribute in
539             Announce messages, received from the PTP source.";
540         }
541
542         leaf current-utc-offset {
543           type int16;
544           description
545             "The offset between TAI and UTC when the epoch of the PTP system is
546             the PTP epoch, i.e., when ptp-timescale is TRUE; otherwise, the value
547             has no meaning";
548         }
549
550         leaf priority1 {
551           type uint8;
552           description
553             "This parameter reflects value of the priority1 attribute in Announce
554             messages, received from the PTP source.";
555         }
556
557         leaf clock-class {
558           type uint8;
559           description
560             "This parameter reflects value of the clockClass attribute in
561             Announce messages, received from the PTP source.";
562         }
563
564         leaf clock-accuracy {
565           type uint8;
566           description
567             "This parameter reflects value of the clockAccuracy attribute in
568             Announce messages, received from the PTP source.";
569         }
570
571         leaf offset-scaled-log-variance {
572           type uint16;
573           description
574             "This parameter reflects value of the offsetScaledLogVariance
575             attribute in Announce messages, received from the PTP source.";
576         }
577
578         leaf priority2 {
579           type uint8;
580           description
581             "This parameter reflects value of the priority2 attribute in Announce
582             messages, received from the PTP source.";
583         }
584
585         leaf grandmaster-clock-identity {
586           type string {
587             length 18;
588             pattern "0[xX][0-9a-fA-F]{16}";
589           }
590           description
591             "This parameter reflects value of the grandmasterClockIdentity
592             attribute in Announce messages, received from the PTP source.
593
594             The string shall be formatted as an 8-octet hex value with the '0x'
595             prefix.";
596         }
597
598         leaf steps-removed {
599           type uint16;
600           description
601             "This parameter reflects value of the stepsRemoved attribute in
602             Announce messages, received from the PTP source.
603
604             It indicates the number of communication paths traversed
605             between the local clock and the grandmaster clock.";
606         }
607
608         leaf time-source {
609           type uint8;
610           description
611             "This parameter reflects value of the timeSource attribute in
612             Announce messages, received from the PTP source.";
613         }
614       }
615     }
616
617     container synce-config {
618       description
619         "This container defines the configuration of SyncE";
620
621       leaf-list acceptance-list-of-ssm {
622         type enumeration {
623           enum PRC {
624             description
625               "PRC";
626           }
627           enum PRS {
628             description
629               "PRS";
630           }
631           enum SSU_A {
632             description
633               "SSU_A";
634           }
635           enum SSU_B {
636             description
637               "SSU_B";
638           }
639           enum ST2 {
640             description
641               "ST2";
642           }
643           enum ST3 {
644             description
645               "ST3";
646           }
647           enum ST3E {
648             description
649               "ST3E";
650           }
651           enum EEC1 {
652             description
653               "EEC1";
654           }
655           enum EEC2 {
656             description
657               "EEC2";
658           }
659           enum DNU {
660             description
661               "DNU";
662           }
663           enum NONE {
664             description
665               "NONE";
666           }
667         }
668
669         default "PRC";
670
671         description
672           "The parameter contains the list of SyncE acceptable SSMs.";
673       }
674
675       leaf ssm-timeout {
676         type uint16;
677
678         description
679           "The parameter contains the value of maximum duration in seconds for which the actual SSM value may be different than configured values.";
680       }
681     }
682
683     container synce-status {
684       description
685         "SyncE status container";
686
687       leaf reporting-period {
688           type uint8;
689           default 10;
690           description
691             "This parameter defines minimum period in seconds between reports,
692              sent by the NETCONF client, for parameters in this container.";
693       }
694
695       leaf lock-state {
696         type enumeration {
697           enum LOCKED {
698             description
699               "The integrated ordinary clock is synchronizing to the reference, recovered from SyncE signal";
700           }
701           enum UNLOCKED {
702             description
703               "The integrated ordinary clock is not synchronizing to the reference, recovered from SyncE signal";
704           }
705         }
706         config false;
707         description
708           "This parameter indicates, whether the integrated ordinary clock is
709           synchronizing to the reference, recovered from SyncE signal.
710
711           The exact definition when to indicate locked or unlocked is up to
712           specific implementation.";
713       }
714
715       list sources {
716         key local-port-number;
717         config false;
718         leaf local-port-number {
719           type leafref {
720             path "/if:interfaces/if:interface/o-ran-int:port-reference/o-ran-int:port-number";
721           }
722           description
723             "This is reference to portNumber of ExternalEthernetPort to identify
724             the port, where the SyncE signal is located.";
725         }
726
727         leaf state {
728           type enumeration {
729             enum PARENT {
730               description
731                 "Indicates this is the primary SyncE source recovering SyncE signal";
732             }
733             enum OK {
734               description
735                 "Indicates that this source is an alternate SyncE source, which the clock,
736                 controlled by the Netconf Server, can potentially synchronize to, when the
737                 clock quality of the primary SyncE signal advertised in ESMC packets is
738                 lower than the expected or configured clock quality; or when this source
739                 clock quality is better than the primary SyncE source clock quality";
740             }
741             enum NOK {
742               description
743                 "Indicates that this source is an alternate SyncE source, and the O-RU
744                  has an operational connection to this alternate SyncE source, but the
745                  clock quality is not in the configured acceptable range";
746             }
747             enum DISABLED {
748               description
749                 "Indicates that this source is an alternate SyncE clock, and the O-RU has an
750                  operational connection to this alternate SyncE source";
751             }
752           }
753           description
754             "This parameter indicates status of the SyncE source";
755         }
756
757         leaf quality-level {
758           type uint8 {
759             range 0..15;
760           }
761           description
762             "This parameter contains value of the SSM clock quality level,
763             received in SSM messages from the SyncE source.";
764         }
765         min-elements 1;
766         description
767           "This parameter contains characteristics of SyncE sources of the clock, controlled by the O-RU.";
768       }
769     }
770
771     container gnss-config {
772       if-feature GNSS;
773       description
774         "This container defines the configuration of Global Navigation Satellite System (GNSS).";
775
776       leaf enable {
777         type boolean;
778
779         description
780           "This parameter defines if GNSS receiver shall be enabled or not.";
781       }
782
783       leaf-list satellite-constelation-list {
784         type enumeration {
785           enum GPS {
786             description
787               "GPS";
788           }
789           enum GLONASS {
790             description
791               "GLONASS should not be used alone but always along with GPS or BEIDOU because of missing leap second information";
792           }
793           enum GALILEO {
794             description
795               "GALILEO";
796           }
797           enum BEIDOU {
798             description
799               "BEIDOU";
800           }
801         }
802
803         description
804           "This parameter defines list of constellations to be used to acquire synchronization.";
805       }
806
807       leaf polarity {
808         type enumeration {
809           enum POSITIVE {
810             description
811               "POSITIVE";
812           }
813           enum NEGATIVE {
814             description
815               "NEGATIVE";
816           }
817         }
818         default POSITIVE;
819
820         description
821           "This parameter defines pulse polarity";
822       }
823
824       leaf cable-delay {
825         type uint16 {
826           range "0..1000";
827         }
828         default 5;
829
830         description
831           "This parameter is used to compensate cable delay.";
832       }
833
834       leaf anti-jam-enable {
835         if-feature ANTI-JAM;
836         type boolean;
837         default false;
838         description
839           "This parameter is used to enable or disable anti-jamming.";
840       }
841     }
842
843     container gnss-status {
844       if-feature GNSS;
845       description
846         "Provides information about state of gps receiver";
847       leaf reporting-period {
848         type uint8;
849         default 10;
850         description
851           "This parameter defines minimum period in seconds between reports,
852           sent by the NETCONF Client, for parameters in this container.";
853       }
854       leaf name {
855         type string {
856           length "1..255";
857         }
858         config false;
859         description
860         "A name that is unique that identifies a GNSS instance.
861         This name may be used in fault management to refer to a
862         fault source or affected object";
863       }
864       leaf gnss-sync-status {
865         type enumeration {
866           enum SYNCHRONIZED {
867             description "GNSS functionality is synchronized";
868           }
869           enum ACQUIRING-SYNC {
870             description "GNSS functionality is acquiring sync";
871           }
872           enum ANTENNA-DISCONNECTED {
873             description "GNSS functionality has its antenna disconnected";
874           }
875           enum BOOTING {
876             description "GNSS functionality is booting";
877           }
878           enum ANTENNA-SHORT-CIRCUIT {
879             description "GNSS functionality has an antenna short circuit";
880           }
881         }
882         config false;
883         description "when available, indicates the status of the gnss receiver.";
884       }
885       container gnss-data {
886         when "../gnss-sync-status='SYNCHRONIZED'";
887         config false;
888         description
889           "GPS data contained";
890         leaf satellites-tracked {
891           type uint8;
892           description "Number of satellites tracked";
893         }
894         container location {
895           description
896             "Containes information about geo location";
897           leaf altitude {
898             type int64;
899             units millimeter;
900             description
901               "Distance above the sea level.";
902           }
903           leaf latitude {
904             type geographic-coordinate-degree {
905               range "-90..90";
906             }
907             description
908               "Relative position north or south on the Earth's surface.";
909           }
910           leaf longitude {
911             type geographic-coordinate-degree {
912               range "-180..180";
913             }
914             description
915               "Angular distance east or west on the Earth's surface.";
916           }
917         }
918         leaf gnss-rx-time-error {
919           type decimal64 {
920             fraction-digits 3;
921           }
922           units nanoseconds;
923           description
924             "An optional leaf, representing the estimate of current GNSS receiver time error ";
925         }
926       }
927     }
928   }
929   container sync {
930     description
931       "Main containter for sync related parameters";
932
933     uses sync-group;
934   }
935
936   //notification statement
937   notification synchronization-state-change {
938     description
939       "Notification used to inform about synchronization state change";
940
941     leaf sync-state {
942       type leafref {
943         path "/sync/sync-status/sync-state";
944       }
945       description
946         "State of equipment synchronization is notified at state change";
947     }
948   }
949
950   notification ptp-state-change {
951     description
952       "Notification used to inform about ptp synchronization state change";
953
954     leaf ptp-state{
955       type leafref{
956         path "/sync/ptp-status/lock-state";
957       }
958       description
959         "ptp-state-change notification is signalled from equipment at state change";
960     }
961   }
962   notification synce-state-change {
963     description
964       "Notification used to inform about synce synchronization state change";
965
966     leaf synce-state{
967       type leafref{
968         path "/sync/synce-status/lock-state";
969       }
970       description
971         "synce-state change notification is signalled from equipment at state change";
972     }
973   }
974   notification gnss-state-change {
975     if-feature GNSS;
976     description
977       "Notification used to inform about gnss synchronization state change";
978
979     leaf gnss-state{
980       type leafref{
981         path "/sync/gnss-status/gnss-sync-status";
982       }
983       description
984         "gnss-state-change notification is signalled from equipment at state change";
985     }
986   }
987
988 }