Blame tests/schema/yin/ietf/ietf-netconf-notifications.yin

Packit 8fb591
Packit 8fb591
Packit 8fb591
        xmlns="urn:ietf:params:xml:ns:yang:yin:1"
Packit 8fb591
        xmlns:ncn="urn:ietf:params:xml:ns:yang:ietf-netconf-notifications"
Packit 8fb591
        xmlns:inet="urn:ietf:params:xml:ns:yang:ietf-inet-types"
Packit 8fb591
        xmlns:nc="urn:ietf:params:xml:ns:netconf:base:1.0">
Packit 8fb591
  <namespace uri="urn:ietf:params:xml:ns:yang:ietf-netconf-notifications"/>
Packit 8fb591
  <prefix value="ncn"/>
Packit 8fb591
  <import module="ietf-inet-types">
Packit 8fb591
    <prefix value="inet"/>
Packit 8fb591
  </import>
Packit 8fb591
  <import module="ietf-netconf">
Packit 8fb591
    <prefix value="nc"/>
Packit 8fb591
  </import>
Packit 8fb591
  <organization>
Packit 8fb591
    <text>IETF NETCONF (Network Configuration Protocol) Working Group</text>
Packit 8fb591
  </organization>
Packit 8fb591
  <contact>
Packit 8fb591
    <text>WG Web:   <http://tools.ietf.org/wg/netconf/>
Packit 8fb591
WG List:  <mailto:netconf@ietf.org>
Packit 8fb591
Packit 8fb591
WG Chair: Bert Wijnen
Packit 8fb591
          <mailto:bertietf@bwijnen.net>
Packit 8fb591
Packit 8fb591
WG Chair: Mehmet Ersue
Packit 8fb591
          <mailto:mehmet.ersue@nsn.com>
Packit 8fb591
Packit 8fb591
Editor:   Andy Bierman
Packit 8fb591
          <mailto:andy@netconfcentral.org></text>
Packit 8fb591
  </contact>
Packit 8fb591
  <description>
Packit 8fb591
    <text>This module defines a YANG data model for use with the
Packit 8fb591
NETCONF protocol that allows the NETCONF client to
Packit 8fb591
receive common NETCONF base event notifications.
Packit 8fb591
Packit 8fb591
Copyright (c) 2012 IETF Trust and the persons identified as
Packit 8fb591
the document authors.  All rights reserved.
Packit 8fb591
Packit 8fb591
Redistribution and use in source and binary forms, with or
Packit 8fb591
without modification, is permitted pursuant to, and subject
Packit 8fb591
to the license terms contained in, the Simplified BSD License
Packit 8fb591
Packit 8fb591
Packit 8fb591
Packit 8fb591
set forth in Section 4.c of the IETF Trust's Legal Provisions
Packit 8fb591
Relating to IETF Documents
Packit 8fb591
(http://trustee.ietf.org/license-info).
Packit 8fb591
Packit 8fb591
This version of this YANG module is part of RFC 6470; see
Packit 8fb591
the RFC itself for full legal notices.</text>
Packit 8fb591
  </description>
Packit 8fb591
  <revision date="2012-02-06">
Packit 8fb591
    <description>
Packit 8fb591
      <text>Initial version. Errata 3957 added.</text>
Packit 8fb591
    </description>
Packit 8fb591
    <reference>
Packit 8fb591
      <text>RFC 6470: NETCONF Base Notifications</text>
Packit 8fb591
    </reference>
Packit 8fb591
  </revision>
Packit 8fb591
  <grouping name="common-session-parms">
Packit 8fb591
    <description>
Packit 8fb591
      <text>Common session parameters to identify a
Packit 8fb591
management session.</text>
Packit 8fb591
    </description>
Packit 8fb591
    <leaf name="username">
Packit 8fb591
      <type name="string"/>
Packit 8fb591
      <mandatory value="true"/>
Packit 8fb591
      <description>
Packit 8fb591
        <text>Name of the user for the session.</text>
Packit 8fb591
      </description>
Packit 8fb591
    </leaf>
Packit 8fb591
    <leaf name="session-id">
Packit 8fb591
      <type name="nc:session-id-or-zero-type"/>
Packit 8fb591
      <mandatory value="true"/>
Packit 8fb591
      <description>
Packit 8fb591
        <text>Identifier of the session.
Packit 8fb591
A NETCONF session MUST be identified by a non-zero value.
Packit 8fb591
A non-NETCONF session MAY be identified by the value zero.</text>
Packit 8fb591
      </description>
Packit 8fb591
    </leaf>
Packit 8fb591
    <leaf name="source-host">
Packit 8fb591
      <type name="inet:ip-address"/>
Packit 8fb591
      <description>
Packit 8fb591
        <text>Address of the remote host for the session.</text>
Packit 8fb591
      </description>
Packit 8fb591
    </leaf>
Packit 8fb591
  </grouping>
Packit 8fb591
  <grouping name="changed-by-parms">
Packit 8fb591
    <description>
Packit 8fb591
      <text>Common parameters to identify the source
Packit 8fb591
of a change event, such as a configuration
Packit 8fb591
or capability change.</text>
Packit 8fb591
    </description>
Packit 8fb591
    <container name="changed-by">
Packit 8fb591
      <description>
Packit 8fb591
        <text>Indicates the source of the change.
Packit 8fb591
If caused by internal action, then the
Packit 8fb591
empty leaf 'server' will be present.
Packit 8fb591
If caused by a management session, then
Packit 8fb591
the name, remote host address, and session ID
Packit 8fb591
of the session that made the change will be reported.</text>
Packit 8fb591
      </description>
Packit 8fb591
      <choice name="server-or-user">
Packit 8fb591
        <mandatory value="true"/>
Packit 8fb591
        <leaf name="server">
Packit 8fb591
          <type name="empty"/>
Packit 8fb591
          <description>
Packit 8fb591
            <text>If present, the change was caused
Packit 8fb591
by the server.</text>
Packit 8fb591
          </description>
Packit 8fb591
        </leaf>
Packit 8fb591
        <case name="by-user">
Packit 8fb591
          <uses name="common-session-parms"/>
Packit 8fb591
        </case>
Packit 8fb591
      </choice>
Packit 8fb591
    </container>
Packit 8fb591
  </grouping>
Packit 8fb591
  <notification name="netconf-config-change">
Packit 8fb591
    <description>
Packit 8fb591
      <text>Generated when the NETCONF server detects that the
Packit 8fb591
<running> or <startup> configuration datastore
Packit 8fb591
has been changed by a management session.
Packit 8fb591
The notification summarizes the edits that
Packit 8fb591
have been detected.
Packit 8fb591
Packit 8fb591
The server MAY choose to also generate this
Packit 8fb591
notification while loading a datastore during the
Packit 8fb591
boot process for the device.</text>
Packit 8fb591
    </description>
Packit 8fb591
    <uses name="changed-by-parms"/>
Packit 8fb591
    <leaf name="datastore">
Packit 8fb591
      <type name="enumeration">
Packit 8fb591
        <enum name="running">
Packit 8fb591
          <description>
Packit 8fb591
            <text>The <running> datastore has changed.</text>
Packit 8fb591
          </description>
Packit 8fb591
        </enum>
Packit 8fb591
        <enum name="startup">
Packit 8fb591
          <description>
Packit 8fb591
            <text>The <startup> datastore has changed</text>
Packit 8fb591
          </description>
Packit 8fb591
        </enum>
Packit 8fb591
      </type>
Packit 8fb591
      <default value="running"/>
Packit 8fb591
      <description>
Packit 8fb591
        <text>Indicates which configuration datastore has changed.</text>
Packit 8fb591
      </description>
Packit 8fb591
    </leaf>
Packit 8fb591
    <list name="edit">
Packit 8fb591
      <description>
Packit 8fb591
        <text>An edit record SHOULD be present for each distinct
Packit 8fb591
edit operation that the server has detected on
Packit 8fb591
the target datastore.  This list MAY be omitted
Packit 8fb591
if the detailed edit operations are not known.
Packit 8fb591
The server MAY report entries in this list for
Packit 8fb591
changes not made by a NETCONF session (e.g., CLI).</text>
Packit 8fb591
      </description>
Packit 8fb591
      <leaf name="target">
Packit 8fb591
        <type name="instance-identifier"/>
Packit 8fb591
        <description>
Packit 8fb591
          <text>Topmost node associated with the configuration change.
Packit 8fb591
A server SHOULD set this object to the node within
Packit 8fb591
the datastore that is being altered.  A server MAY
Packit 8fb591
set this object to one of the ancestors of the actual
Packit 8fb591
node that was changed, or omit this object, if the
Packit 8fb591
exact node is not known.</text>
Packit 8fb591
        </description>
Packit 8fb591
      </leaf>
Packit 8fb591
      <leaf name="operation">
Packit 8fb591
        <type name="nc:edit-operation-type"/>
Packit 8fb591
        <description>
Packit 8fb591
          <text>Type of edit operation performed.
Packit 8fb591
A server MUST set this object to the NETCONF edit
Packit 8fb591
operation performed on the target datastore.</text>
Packit 8fb591
        </description>
Packit 8fb591
      </leaf>
Packit 8fb591
    </list>
Packit 8fb591
  </notification>
Packit 8fb591
  <notification name="netconf-capability-change">
Packit 8fb591
    <description>
Packit 8fb591
      <text>Generated when the NETCONF server detects that
Packit 8fb591
the server capabilities have changed.
Packit 8fb591
Indicates which capabilities have been added, deleted,
Packit 8fb591
and/or modified.  The manner in which a server
Packit 8fb591
capability is changed is outside the scope of this
Packit 8fb591
document.</text>
Packit 8fb591
    </description>
Packit 8fb591
    <uses name="changed-by-parms"/>
Packit 8fb591
    <leaf-list name="added-capability">
Packit 8fb591
      <type name="inet:uri"/>
Packit 8fb591
      <description>
Packit 8fb591
        <text>List of capabilities that have just been added.</text>
Packit 8fb591
      </description>
Packit 8fb591
    </leaf-list>
Packit 8fb591
    <leaf-list name="deleted-capability">
Packit 8fb591
      <type name="inet:uri"/>
Packit 8fb591
      <description>
Packit 8fb591
        <text>List of capabilities that have just been deleted.</text>
Packit 8fb591
      </description>
Packit 8fb591
    </leaf-list>
Packit 8fb591
    <leaf-list name="modified-capability">
Packit 8fb591
      <type name="inet:uri"/>
Packit 8fb591
      <description>
Packit 8fb591
        <text>List of capabilities that have just been modified.
Packit 8fb591
A capability is considered to be modified if the
Packit 8fb591
base URI for the capability has not changed, but
Packit 8fb591
one or more of the parameters encoded at the end of
Packit 8fb591
the capability URI have changed.
Packit 8fb591
The new modified value of the complete URI is returned.</text>
Packit 8fb591
      </description>
Packit 8fb591
    </leaf-list>
Packit 8fb591
  </notification>
Packit 8fb591
  <notification name="netconf-session-start">
Packit 8fb591
    <description>
Packit 8fb591
      <text>Generated when a NETCONF server detects that a
Packit 8fb591
NETCONF session has started.  A server MAY generate
Packit 8fb591
this event for non-NETCONF management sessions.
Packit 8fb591
Indicates the identity of the user that started
Packit 8fb591
the session.</text>
Packit 8fb591
    </description>
Packit 8fb591
    <uses name="common-session-parms"/>
Packit 8fb591
  </notification>
Packit 8fb591
  <notification name="netconf-session-end">
Packit 8fb591
    <description>
Packit 8fb591
      <text>Generated when a NETCONF server detects that a
Packit 8fb591
NETCONF session has terminated.
Packit 8fb591
A server MAY optionally generate this event for
Packit 8fb591
non-NETCONF management sessions.  Indicates the
Packit 8fb591
identity of the user that owned the session,
Packit 8fb591
and why the session was terminated.</text>
Packit 8fb591
    </description>
Packit 8fb591
    <uses name="common-session-parms"/>
Packit 8fb591
    <leaf name="killed-by">
Packit 8fb591
      <when condition="../termination-reason = 'killed'"/>
Packit 8fb591
      <type name="nc:session-id-type"/>
Packit 8fb591
      <description>
Packit 8fb591
        <text>The ID of the session that directly caused this session
Packit 8fb591
to be abnormally terminated.  If this session was abnormally
Packit 8fb591
terminated by a non-NETCONF session unknown to the server,
Packit 8fb591
then this leaf will not be present.</text>
Packit 8fb591
      </description>
Packit 8fb591
    </leaf>
Packit 8fb591
    <leaf name="termination-reason">
Packit 8fb591
      <type name="enumeration">
Packit 8fb591
        <enum name="closed">
Packit 8fb591
          <description>
Packit 8fb591
            <text>The session was terminated by the client in normal
Packit 8fb591
fashion, e.g., by the NETCONF <close-session>
Packit 8fb591
protocol operation.</text>
Packit 8fb591
          </description>
Packit 8fb591
        </enum>
Packit 8fb591
        <enum name="killed">
Packit 8fb591
          <description>
Packit 8fb591
            <text>The session was terminated in abnormal
Packit 8fb591
fashion, e.g., by the NETCONF <kill-session>
Packit 8fb591
protocol operation.</text>
Packit 8fb591
          </description>
Packit 8fb591
        </enum>
Packit 8fb591
        <enum name="dropped">
Packit 8fb591
          <description>
Packit 8fb591
            <text>The session was terminated because the transport layer
Packit 8fb591
connection was unexpectedly closed.</text>
Packit 8fb591
          </description>
Packit 8fb591
        </enum>
Packit 8fb591
        <enum name="timeout">
Packit 8fb591
          <description>
Packit 8fb591
            <text>The session was terminated because of inactivity,
Packit 8fb591
e.g., waiting for the <hello> message or <rpc>
Packit 8fb591
messages.</text>
Packit 8fb591
          </description>
Packit 8fb591
        </enum>
Packit 8fb591
        <enum name="bad-hello">
Packit 8fb591
          <description>
Packit 8fb591
            <text>The client's <hello> message was invalid.</text>
Packit 8fb591
          </description>
Packit 8fb591
        </enum>
Packit 8fb591
        <enum name="other">
Packit 8fb591
          <description>
Packit 8fb591
            <text>The session was terminated for some other reason.</text>
Packit 8fb591
          </description>
Packit 8fb591
        </enum>
Packit 8fb591
      </type>
Packit 8fb591
      <mandatory value="true"/>
Packit 8fb591
      <description>
Packit 8fb591
        <text>Reason the session was terminated.</text>
Packit 8fb591
      </description>
Packit 8fb591
    </leaf>
Packit 8fb591
  </notification>
Packit 8fb591
  <notification name="netconf-confirmed-commit">
Packit 8fb591
    <description>
Packit 8fb591
      <text>Generated when a NETCONF server detects that a
Packit 8fb591
confirmed-commit event has occurred.  Indicates the event
Packit 8fb591
and the current state of the confirmed-commit procedure
Packit 8fb591
in progress.</text>
Packit 8fb591
    </description>
Packit 8fb591
    <reference>
Packit 8fb591
      <text>RFC 6241, Section 8.4</text>
Packit 8fb591
    </reference>
Packit 8fb591
    <uses name="common-session-parms">
Packit 8fb591
      <when condition="confirm-event != 'timeout'"/>
Packit 8fb591
    </uses>
Packit 8fb591
    <leaf name="confirm-event">
Packit 8fb591
      <type name="enumeration">
Packit 8fb591
        <enum name="start">
Packit 8fb591
          <description>
Packit 8fb591
            <text>The confirmed-commit procedure has started.</text>
Packit 8fb591
          </description>
Packit 8fb591
        </enum>
Packit 8fb591
        <enum name="cancel">
Packit 8fb591
          <description>
Packit 8fb591
            <text>The confirmed-commit procedure has been canceled,
Packit 8fb591
e.g., due to the session being terminated, or an
Packit 8fb591
explicit <cancel-commit> operation.</text>
Packit 8fb591
          </description>
Packit 8fb591
        </enum>
Packit 8fb591
        <enum name="timeout">
Packit 8fb591
          <description>
Packit 8fb591
            <text>The confirmed-commit procedure has been canceled
Packit 8fb591
due to the confirm-timeout interval expiring.
Packit 8fb591
The common session parameters will not be present
Packit 8fb591
in this sub-mode.</text>
Packit 8fb591
          </description>
Packit 8fb591
        </enum>
Packit 8fb591
        <enum name="extend">
Packit 8fb591
          <description>
Packit 8fb591
            <text>The confirmed-commit timeout has been extended,
Packit 8fb591
e.g., by a new <confirmed-commit> operation.</text>
Packit 8fb591
          </description>
Packit 8fb591
        </enum>
Packit 8fb591
        <enum name="complete">
Packit 8fb591
          <description>
Packit 8fb591
            <text>The confirmed-commit procedure has been completed.</text>
Packit 8fb591
          </description>
Packit 8fb591
        </enum>
Packit 8fb591
      </type>
Packit 8fb591
      <mandatory value="true"/>
Packit 8fb591
      <description>
Packit 8fb591
        <text>Indicates the event that caused the notification.</text>
Packit 8fb591
      </description>
Packit 8fb591
    </leaf>
Packit 8fb591
    <leaf name="timeout">
Packit 8fb591
      <when condition="../confirm-event = 'start' or ../confirm-event = 'extend'"/>
Packit 8fb591
      <type name="uint32"/>
Packit 8fb591
      <units name="seconds"/>
Packit 8fb591
      <description>
Packit 8fb591
        <text>The configured timeout value if the event type
Packit 8fb591
is 'start' or 'extend'.  This value represents
Packit 8fb591
the approximate number of seconds from the event
Packit 8fb591
time when the 'timeout' event might occur.</text>
Packit 8fb591
      </description>
Packit 8fb591
    </leaf>
Packit 8fb591
  </notification>
Packit 8fb591
</module>