This module defines types and identities used by the OpenConfig YANG module catalog model.
openconfig-extensions
description:
This type defines acceptable formats for the version of a
module. The version may be a semantic version, or a YANG
revision statement date, and may include wildcards when
included in a bundle compatibility list, e.g.:
semver format:
type: string
description:
Base identity for elements in the catalog
description:
Module elements in the catalog
base identity: CATALOG_MEMBER_TYPE
description:
Release bundle elements in the catalog
base identity: CATALOG_MEMBER_TYPE
description:
Feature bundle elements in the catalog
base identity: CATALOG_MEMBER_TYPE
description:
Indications of the status of a module's implementation on a
device or server
description:
Implementation is in progress
base identity: IMPLEMENTATION_STATUS_TYPE
description:
Implementation is planned
base identity: IMPLEMENTATION_STATUS_TYPE
description:
Implementation is complete and fully supports the model
base identity: IMPLEMENTATION_STATUS_TYPE
description:
Implementation is complete, but only supports the model
partially
base identity: IMPLEMENTATION_STATUS_TYPE
description:
Indicates the deployment status of the module
description:
Module should be considered experimental, not deployed in
production settings
base identity: MODULE_STATUS_TYPE
description:
Module is suitable for use in production, or has been
deployed in production
base identity: MODULE_STATUS_TYPE
description:
Base identity for the module category. It is expected that
publishing organizations will define additional derived
identities to describe their categorization scheme.
description:
Describes layering of models based on their abstraction
level as defined by IETF model classification proposals
base identity: MODULE_CATEGORY_BASE
description:
Base identity for the module subcategory. It is expected that
publishing organizations will define additional derived
identities to describe their categorization scheme.
description:
IETF proposed classification dimension of YANG model types as
standard YANG models, vendor-specific, or user-specific YANG
models and extensions
base identity: MODULE_SUBCATEGORY_BASE
description:
Publishing organization type for the set of modules
description:
Standards development organization (SDO) publisher type
base identity: ORGANIZATION_TYPE
description:
Industry forum or other industry group
base identity: ORGANIZATION_TYPE
description:
Commercial entity, company, etc.
base identity: ORGANIZATION_TYPE
description:
For modules published by an individual
base identity: ORGANIZATION_TYPE
This module provides a schema for cataloging and descrbing YANG models published across various organizations. The catalog contains several categories of data:
* organizations -- entities that publish and/or maintain individual YANG modules or groups of modules
* modules -- information regarding individual YANG modules, including their versions, dependencies, submodules, and how to access them
* release bundles -- groups of modules that are compatible and consistent with each other (as determined by the publisher of of the bundle). The release bundle does not necessarily correspond to a functional area, e.g., it could the entire set of modules published by an organization
* feature bundles -- sets of schema paths across a release bundle that provide a specific set of functionality
* implementations -- information about available module and/or bundle implementations and their status
openconfig-inet-types
openconfig-catalog-types
openconfig-extensions
description:
List of organizations owning modules
nodetype: container (rw)
description:
List of organizations publishing YANG modules or
module bundles
nodetype: list (rw)
list keys: [name]
description:
Name of the maintaining organization -- the name should be
supplied in the official format used by the organization.
Standards Body examples:
IETF, IEEE, MEF, ONF, etc.
Commercial entity examples:
AT&T, Facebook,
nodetype: leaf (list key) (rw)
type: string
description:
Type of the publishing organization
nodetype: leaf (rw)
type: identityref
description:
Contact information for the publishing organization (web
site, email address, etc.)
nodetype: leaf (rw)
type: string
description:
Modules published by this organization
nodetype: container (rw)
description:
List of published modules from the organization
nodetype: list (rw)
description:
The name of the module or bundle. For modules, this
should reflect the 'module' or 'submodule'
statement in the YANG module file.
For bundles, this is the canonical name for the overall
bundle of modules which is to be released together.
This name should be consistent over multiple
releases
nodetype: leaf (list key) (rw)
type: string
description:
For individual modules, this is the version number, e.g.,
a semantic version. The version may be the same as the date
indicated in the module revision statement.
For bundles, this is a semantic version number for the
overall bundle. This version is to be defined as per the
approach specified in the OpenConfig semantic version
guidance - and is of the form x.y.z, where x is the major
version, y is the minor version, and z is the patch level
nodetype: leaf (list key) (rw)
type: oc-cat-types:module-version-type
description:
Published namespace of module, i.e., defined by the
'namespace'
nodetype: leaf (rw)
type: string
description:
Published prefix of the module
nodetype: leaf (rw)
type: string
description:
Date in the revision statement of the module
nodetype: leaf (rw)
type: string
description:
Summary description of the module
nodetype: leaf (rw)
type: string
description:
Container for data describing the module's classification
nodetype: container (rw)
description:
Categorization of the module based on identities defined
or used by the publishing organizations.
nodetype: leaf (rw)
type: identityref
description:
Sub-categorization of the module based on identities
defined or used by the publishing organizations.
nodetype: leaf (rw)
type: identityref
description:
Deployment status of the module -- experimental,
standards-track, production, etc.
nodetype: leaf (rw)
type: identityref
description:
Data about dependencies of the module
nodetype: container (rw)
description:
List of names of modules that are imported by the
current module. This list should reflect all of the 'import'
statements in the module. Release bundles should be used to
indicate which versions of the imported module are used
(or are compatible) with the current module
nodetype: leaf-list (rw)
type: string
description:
Container for data pertaining to retrieval and usage of the
module
nodetype: container (rw)
description:
URI where module can be downloaded. Modules may be
made available from the catalog maintainer, or directly
from the publisher
nodetype: leaf (rw)
type: oc-inet:uri
description:
Optional MD5 hash of the module file. If specified, the
hash may be used by users to validate data integrity
nodetype: leaf (rw)
type: string
description:
Data for the submodules belonging to a submodule. If the
module does not have any submodules, this container
should be empty.
nodetype: container (rw)
description:
List of submodules included by a module. All submodules
specified by 'include' statements in the module should be
included in this list.
nodetype: list (rw)
list keys: [name]
description:
Name of the submodule as indicated by its top-level
'submodule' statement
nodetype: leaf (list key) (rw)
type: string
description:
Container for data pertaining to retrieval and usage of the
module
nodetype: container (rw)
description:
URI where module can be downloaded. Modules may be
made available from the catalog maintainer, or directly
from the publisher
nodetype: leaf (rw)
type: oc-inet:uri
description:
Optional MD5 hash of the module file. If specified, the
hash may be used by users to validate data integrity
nodetype: leaf (rw)
type: string
description:
List of release bundles
nodetype: container (rw)
description:
List of release bundles - sets of modules and/or
bundles which are interoperable
nodetype: list (rw)
description:
The name of the module or bundle. For modules, this
should reflect the 'module' or 'submodule'
statement in the YANG module file.
For bundles, this is the canonical name for the overall
bundle of modules which is to be released together.
This name should be consistent over multiple
releases
nodetype: leaf (list key) (rw)
type: string
description:
For individual modules, this is the version number, e.g.,
a semantic version. The version may be the same as the date
indicated in the module revision statement.
For bundles, this is a semantic version number for the
overall bundle. This version is to be defined as per the
approach specified in the OpenConfig semantic version
guidance - and is of the form x.y.z, where x is the major
version, y is the minor version, and z is the patch level
nodetype: leaf (list key) (rw)
type: oc-cat-types:module-version-type
description:
List of bundle members which make up this release bundle. A
member is defined as an individual YANG module specified
in the YANG catalogue, or another release
bundle which can be used to group multiple YANG
models together.
nodetype: container (rw)
description:
A set of modules or bundles which are part of the bundle
of models. For example, if 'ietf-yang-types' were to be
specified within the bundle, then this would refer to the
individual entry within the module catalogue. If the type
of the entry is set to bundle, then for example,
openconfig-bgp could be referenced - which itself consists
of separate modules.
nodetype: list (rw)
list keys: [id]
description:
Identifier for the bundle member
nodetype: leaf (list key) (rw)
type: string
description:
The type of member that is to be included within the
release bundle. Release bundles may include modules and
other release bundles. Both member modules and member
bundles should specify the list of compatible versions.
nodetype: leaf (rw)
type: identityref
description:
Name of the module set which is included in this bundle -
for example, 'openconfig-bgp'
nodetype: leaf (rw)
type: leafref
description:
Name of the module set which is included in this bundle -
for example, 'openconfig-bgp'
nodetype: leaf (rw)
type: leafref
description:
Reference to the name of the publishing organization
nodetype: leaf (rw)
type: leafref
description:
A list of semantic version specification of the versions
of the specified module or release bundle which are
compatible when building this version of the bundle.
Version specifications may be added when changes are made
to a module within a bundle, and this does not affect the
interaction between it and other modules. It is expected
that backwards compatible changes to an individual module or
member bundle do not affect the compatibility of that
with other members, and hence wildcard matches are allowed
within this list.
nodetype: leaf-list (rw)
type: oc-cat-types:module-version-type
description:
Enclosing container for the list of feature bundles
nodetype: container (rw)
description:
List of feature bundles
nodetype: list (rw)
description:
The name of the module or bundle. For modules, this
should reflect the 'module' or 'submodule'
statement in the YANG module file.
For bundles, this is the canonical name for the overall
bundle of modules which is to be released together.
This name should be consistent over multiple
releases
nodetype: leaf (list key) (rw)
type: string
description:
For individual modules, this is the version number, e.g.,
a semantic version. The version may be the same as the date
indicated in the module revision statement.
For bundles, this is a semantic version number for the
overall bundle. This version is to be defined as per the
approach specified in the OpenConfig semantic version
guidance - and is of the form x.y.z, where x is the major
version, y is the minor version, and z is the patch level
nodetype: leaf (list key) (rw)
type: oc-cat-types:module-version-type
description:
The list of schema paths included in the feature. The
paths specify subtrees, i.e., all data underneath the
specified path are included in the feature.
nodetype: leaf-list (rw)
type: string
description:
Data to identify the release bundle from which the feature
paths should be specified. If the feature crosses
release bundles, a new release bundle should be
created to support the feature bundle.
nodetype: container (rw)
description:
Name of the module set which is included in this bundle -
for example, 'openconfig-bgp'
nodetype: leaf (rw)
type: leafref
description:
Reference to the name of the publishing organization
nodetype: leaf (rw)
type: leafref
description:
Version of the referenced release bundle
nodetype: leaf (rw)
type: oc-cat-types:module-version-type
description:
Enclosing container for the list of included feature
bundles. Feature bundles may be composed from other
smaller feature units
nodetype: container (rw)
description:
The list of feature bundles included in the current
feature bundle.
nodetype: list (rw)
list keys: [name]
description:
Name of the referenced feature bundle
nodetype: leaf (list key) (rw)
type: leafref
description:
Publisher of the referenced feature bundle
nodetype: leaf (rw)
type: leafref
description:
Version of the referenced feature bundle
nodetype: leaf (rw)
type: oc-cat-types:module-version-type
description:
Container for module implementation information
nodetype: container (rw)
description:
List of available implementations, keyed by an identifier
provided by either the implementor or the module
maintainer. Such a key avoids needing a complex composite
key to uniquely identify an implementation.
nodetype: list (rw)
list keys: [id]
description:
An identifier for the implementation, provided by the
implementor. This id should uniquely identify a specific
implementation of the module, e.g., based on the vendor,
platform, and platform version.
nodetype: leaf (list key) (rw)
type: string
description:
A text summary of important information about the
implementation
nodetype: leaf (rw)
type: string
description:
A URI (preferred) or text reference to more detailed
information about the implementation.
nodetype: leaf (rw)
type: union
type: oc-inet:uri
type: string
description:
Name of the platform on which the implementation
is available -- this could be the model name of a network
device, a server OS, etc.
nodetype: leaf (rw)
type: string
description:
Implementor-defined version name or number of the
module implementation, corresponding to the platform.
This could be the firmware version of a network device
such as a router, OS version, or other server platform
version.
nodetype: leaf (rw)
type: string
description:
Indicates the status of the implementation, e.g.,
complete, partial, in-progress, etc. Implementors
may define additional values for the base identity
nodetype: leaf (rw)
type: identityref
description:
Enclosing container for the list of feature bundles
nodetype: container (rw)
description:
List of feature bundles supported by the implementation
nodetype: list (rw)
description:
Name of the referenced feature bundle
nodetype: leaf (list key) (rw)
type: leafref
description:
Publisher of the referenced feature bundle
nodetype: leaf (rw)
type: leafref
description:
Version of the referenced feature bundle
nodetype: leaf (list key) (rw)
type: oc-cat-types:module-version-type