module ietf-origin {
yang-version 1.1;
namespace "urn:ietf:params:xml:ns:yang:ietf-origin";
prefix or;
import ietf-yang-metadata {
prefix md;
}
organization
"IETF NETMOD (NETCONF Data Modeling Language) Working Group";
contact
"WG Web:
WG List:
Author: Martin Bjorklund
Author: Juergen Schoenwaelder
Author: Phil Shafer
Author: Kent Watsen
Author: Rob Wilton
";
description
"This YANG module defines an 'origin' metadata annotation, and a
set of identities for the origin value.
Copyright (c) 2017 IETF Trust and the persons identified as
authors of the code. All rights reserved.
Redistribution and use in source and binary forms, with or
without modification, is permitted pursuant to, and subject to
the license terms contained in, the Simplified BSD License set
forth in Section 4.c of the IETF Trust's Legal Provisions
Relating to IETF Documents
(http://trustee.ietf.org/license-info).
This version of this YANG module is part of RFC XXXX
(http://www.rfc-editor.org/info/rfcxxxx); see the RFC itself
for full legal notices.";
revision 2017-04-26 {
description
"Initial revision.";
reference
"RFC XXXX: Network Management Datastore Architecture";
}
/*
* Identities
*/
identity origin {
description
"Abstract base identity for the origin annotation.";
}
identity intended {
base origin;
description
"Denotes data from the intended configuration datastore";
}
identity dynamic {
base origin;
description
"Denotes data from a dynamic datastore.";
}
identity system {
base origin;
description
"Denotes data originated by the system itself, including
both system configuration and system state.
Examples of system configuration include applied configuration
for an always existing loopback interface, or interface
configuration that is auto-created due to the hardware
currently present in the device.";
}
identity learned {
base origin;
description
"Denotes configuration learned from protocol interactions with
other devices, instead of via the intended configuration
datastore or any dynamic datastore.
Examples of protocols that provide learned configuration
include link-layer negotiations, routing protocols, and
DHCP.";
}
identity default {
base origin;
description
"Denotes data that does not have an configured or learned
value, but has a default value in use. Covers both values
defined in a 'default' statement, and values defined via an
explanation in a 'description' statement.";
}
identity unknown {
base origin;
description
"Denotes data for which the system cannot identify the
origin.";
}
/*
* Metadata annotations
*/
md:annotation origin {
type identityref {
base origin;
}
description
"The 'origin' annotation can be present on any node in a
datastore. It specifies from where the node originated.";
}
}