110 lines
3.9 KiB
YANG
110 lines
3.9 KiB
YANG
module openconfig-extensions {
|
|
|
|
yang-version "1";
|
|
|
|
// namespace
|
|
namespace "http://openconfig.net/yang/openconfig-ext";
|
|
|
|
prefix "oc-ext";
|
|
|
|
// meta
|
|
organization "OpenConfig working group";
|
|
|
|
contact
|
|
"OpenConfig working group
|
|
www.openconfig.net";
|
|
|
|
description
|
|
"This module provides extensions to the YANG language to allow
|
|
OpenConfig specific functionality and meta-data to be defined.";
|
|
|
|
oc-ext:openconfig-version "0.5.1";
|
|
|
|
// extension statements
|
|
extension openconfig-version {
|
|
argument "semver" {
|
|
yin-element false;
|
|
}
|
|
description
|
|
"The OpenConfig version number for the module. This is
|
|
expressed as a semantic version number of the form:
|
|
x.y.z
|
|
where:
|
|
* x corresponds to the major version,
|
|
* y corresponds to a minor version,
|
|
* z corresponds to a patch version.
|
|
This version corresponds to the model file within which it is
|
|
defined, and does not cover the whole set of OpenConfig models.
|
|
|
|
Individual YANG modules are versioned independently -- the
|
|
semantic version is generally incremented only when there is a
|
|
change in the corresponding file. Submodules should always
|
|
have the same semantic version as their parent modules.
|
|
|
|
A major version number of 0 indicates that this model is still
|
|
in development (whether within OpenConfig or with industry
|
|
partners), and is potentially subject to change.
|
|
|
|
Following a release of major version 1, all modules will
|
|
increment major revision number where backwards incompatible
|
|
changes to the model are made.
|
|
|
|
The minor version is changed when features are added to the
|
|
model that do not impact current clients use of the model.
|
|
|
|
The patch-level version is incremented when non-feature changes
|
|
(such as bugfixes or clarifications to human-readable
|
|
descriptions that do not impact model functionality) are made
|
|
that maintain backwards compatibility.
|
|
|
|
The version number is stored in the module meta-data.";
|
|
}
|
|
|
|
extension regexp-posix {
|
|
description
|
|
"This extension indicates that the regular expressions included
|
|
within the YANG module specified are conformant with the POSIX
|
|
regular expression format rather than the W3C standard that is
|
|
specified by RFC6020 and RFC7950.";
|
|
}
|
|
|
|
extension operational {
|
|
description
|
|
"The operational annotation is specified in the context of a
|
|
grouping, leaf, or leaf-list within a YANG module. It indicates
|
|
that the nodes within the context are derived state on the device.
|
|
|
|
OpenConfig data models divide nodes into the following three categories:
|
|
|
|
- intended configuration - these are leaves within a container named
|
|
'config', and are the writable configuration of a target.
|
|
- applied configuration - these are leaves within a container named
|
|
'state' and are the currently running value of the intended configuration.
|
|
- derived state - these are the values within the 'state' container which
|
|
are not part of the applied configuration of the device. Typically, they
|
|
represent state values reflecting underlying operational counters, or
|
|
protocol statuses.";
|
|
}
|
|
|
|
extension catalog-organization {
|
|
argument "org" {
|
|
yin-element false;
|
|
}
|
|
description
|
|
"This extension specifies the organization name that should be used within
|
|
the module catalogue on the device for the specified YANG module. It stores
|
|
a pithy string where the YANG organization statement may contain more
|
|
details.";
|
|
}
|
|
|
|
extension origin {
|
|
argument "origin" {
|
|
yin-element false;
|
|
}
|
|
description
|
|
"This extension specifies the name of the origin that the YANG module
|
|
falls within. This allows multiple overlapping schema trees to be used
|
|
on a single network element without requiring module based prefixing
|
|
of paths.";
|
|
}
|
|
}
|