module notifications { yang-version 1; namespace "urn:ietf:params:xml:ns:netconf:notification:1.0"; prefix ncEvent; import ietf-yang-types { prefix yang; } organization "IETF NETCONF WG"; contact "netconf@ops.ietf.org"; description "Conversion of the 'ncEvent' XSD in the NETCONF Notifications RFC."; reference "RFC 5277."; revision 2018-05-30 { description "First step to a common notification yang."; reference "RFC 5277: NETCONF Event Notifications"; } revision 2008-07-14 { description "Initial version"; reference "RFC 5277: NETCONF Event Notifications"; } typedef streamNameType { type string; description "The name of an event stream."; } rpc create-subscription { description "The command to create a notification subscription. It takes as argument the name of the notification stream and filter. Both of those options limit the content of the subscription. In addition, there are two time-related parameters, startTime and stopTime, which can be used to select the time interval of interest to the notification replay feature."; input { leaf stream { type streamNameType; default "NETCONF"; description "An optional parameter that indicates which stream of events is of interest. If not present, then events in the default NETCONF stream will be sent."; } anyxml filter { description "An optional parameter that indicates which subset of all possible events is of interest. The format of this parameter is the same as that of the filter parameter in the NETCONF protocol operations. If not present, all events not precluded by other parameters will be sent."; } leaf startTime { type yang:date-and-time; description "A parameter used to trigger the replay feature and indicates that the replay should start at the time specified. If start time is not present, this is not a replay subscription."; } leaf stopTime { type yang:date-and-time; description "An optional parameter used with the optional replay feature to indicate the newest notifications of interest. If stop time is not present, the notifications will continue until the subscription is terminated. Must be used with startTime."; } } } container notification { config false; description "internal struct to start a notification"; leaf eventTime { type yang:date-and-time; mandatory true; description "The time the event was generated by the event source. This parameter is of type dateTime and compliant to [RFC3339]. Implementations must support time zones."; } } }