diff options
author | Hongjun Ni <hongjun.ni@intel.com> | 2018-12-21 04:48:35 +0000 |
---|---|---|
committer | Gerrit Code Review <gerrit@fd.io> | 2018-12-21 04:48:35 +0000 |
commit | 8791f3211bd61d213e4ea4a0af66a14bb2e3a239 (patch) | |
tree | 846a89e6ca81d639d024e5509654766d3581b7ea /src/plugins/yang/openconfig/openconfig-catalog-types.yang | |
parent | de7bb8f2b0cdd2dfeba0586213bd415c9bb3fd18 (diff) | |
parent | 639509ad42f8bd6baf9b6f5b668a9bbfb05108d4 (diff) |
Merge "Add Openconfig YANG modules."
Diffstat (limited to 'src/plugins/yang/openconfig/openconfig-catalog-types.yang')
-rw-r--r-- | src/plugins/yang/openconfig/openconfig-catalog-types.yang | 242 |
1 files changed, 242 insertions, 0 deletions
diff --git a/src/plugins/yang/openconfig/openconfig-catalog-types.yang b/src/plugins/yang/openconfig/openconfig-catalog-types.yang new file mode 100644 index 0000000..bdec31e --- /dev/null +++ b/src/plugins/yang/openconfig/openconfig-catalog-types.yang @@ -0,0 +1,242 @@ +module openconfig-catalog-types { + + yang-version "1"; + + // namespace + namespace "http://openconfig.net/yang/catalog-types"; + + prefix "oc-cat-types"; + + import openconfig-extensions { prefix oc-ext; } + + + // meta + organization "OpenConfig working group"; + + contact + "OpenConfig working group + www.openconfig.net"; + + description + "This module defines types and identities used by the OpenConfig + YANG module catalog model."; + + oc-ext:openconfig-version "0.2.1"; + + revision "2017-05-01" { + description + "Fix to module dependency list"; + reference "0.2.1"; + } + + revision "2017-03-08" { + description + "OpenConfig public release"; + reference "0.2.0"; + } + + revision "2016-02-15" { + description + "Initial OpenConfig public release"; + reference "0.1.0"; + } + + + // extension statements + + // feature statements + + // identity statements + + identity CATALOG_MEMBER_TYPE { + description + "Base identity for elements in the catalog"; + } + + identity MODULE { + base CATALOG_MEMBER_TYPE; + description + "Module elements in the catalog"; + } + + identity RELEASE_BUNDLE { + base CATALOG_MEMBER_TYPE; + description + "Release bundle elements in the catalog"; + } + + identity FEATURE_BUNDLE { + base CATALOG_MEMBER_TYPE; + description + "Feature bundle elements in the catalog"; + } + + + identity IMPLEMENTATION_STATUS_TYPE { + description + "Indications of the status of a module's implementation on a + device or server"; + } + + identity IN_PROGRESS { + base IMPLEMENTATION_STATUS_TYPE; + description + "Implementation is in progress"; + } + + identity PLANNED { + base IMPLEMENTATION_STATUS_TYPE; + description + "Implementation is planned"; + } + + identity COMPLETE { + base IMPLEMENTATION_STATUS_TYPE; + description + "Implementation is complete and fully supports the model"; + } + + identity PARTIAL { + base IMPLEMENTATION_STATUS_TYPE; + description + "Implementation is complete, but only supports the model + partially"; + } + + identity MODULE_STATUS_TYPE { + description + "Indicates the deployment status of the module"; + } + + identity EXPERIMENTAL { + base MODULE_STATUS_TYPE; + description + "Module should be considered experimental, not deployed in + production settings"; + } + + identity PRODUCTION { + base MODULE_STATUS_TYPE; + description + "Module is suitable for use in production, or has been + deployed in production"; + } + + identity MODULE_CATEGORY_BASE { + description + "Base identity for the module category. It is expected that + publishing organizations will define additional derived + identities to describe their categorization scheme."; + } + + identity MODULE_SUBCATEGORY_BASE { + description + "Base identity for the module subcategory. It is expected that + publishing organizations will define additional derived + identities to describe their categorization scheme."; + } + + identity ORGANIZATION_TYPE { + description + "Publishing organization type for the set of modules"; + } + + identity STANDARDS { + base ORGANIZATION_TYPE; + description + "Standards development organization (SDO) publisher type"; + } + + identity INDUSTRY { + base ORGANIZATION_TYPE; + description + "Industry forum or other industry group"; + } + + identity COMMERCIAL { + base ORGANIZATION_TYPE; + description + "Commercial entity, company, etc."; + } + + identity INDIVIDUAL { + base ORGANIZATION_TYPE; + description + "For modules published by an individual"; + } + + identity IETF_MODEL_LAYER { + base MODULE_CATEGORY_BASE; + description + "Describes layering of models based on their abstraction + level as defined by IETF model classification proposals"; + reference + "IETF draft-ietf-netmod-yang-model-classification"; + } + + identity IETF_MODEL_TYPE { + base MODULE_SUBCATEGORY_BASE; + description + "IETF proposed classification dimension of YANG model types as + standard YANG models, vendor-specific, or user-specific YANG + models and extensions"; + reference + "IETF draft-ietf-netmod-yang-model-classification"; + } + + identity IETF_NETWORK_SERVICE { + base IETF_MODEL_LAYER; + description + "Service-layer model as defined by IETF classification + proposal"; + } + + identity IETF_NETWORK_ELEMENT { + base IETF_MODEL_LAYER; + description + "Network element-layer model as defined by IETF classification + proposal"; + } + + identity IETF_TYPE_STANDARD { + base IETF_MODEL_TYPE; + description + "Models published by standards-defining organizations (SDOs)"; + } + + identity IETF_TYPE_VENDOR { + base IETF_MODEL_TYPE; + description + "Developed by organizations (e.g., vendors) with the intent + to support a specific set of implementations under control of + that organization"; + } + + identity IETF_TYPE_USER { + base IETF_MODEL_TYPE; + description + "Developed by organizations that operate YANG-based + infrastructure including devices and orchestrators. + The intent of these models is to express the specific needs + for a certain implementation, above and beyond what is provided + by vendors"; + } + + typedef module-version-type { + type string; + 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: <major>.<minor>.<patch> + examples: 0.1.0, 2.1.0, 1.1.*, 2.*.* + + revision format: YYYY-MM-DD + example: 2016-11-31"; + } + + + +} |