--- 1/draft-ietf-netmod-yang-10.txt 2010-02-24 11:11:26.000000000 +0100 +++ 2/draft-ietf-netmod-yang-11.txt 2010-02-24 11:11:27.000000000 +0100 @@ -1,18 +1,25 @@ Network Working Group M. Bjorklund, Ed. Internet-Draft Tail-f Systems -Intended status: Standards Track January 12, 2010 -Expires: July 16, 2010 +Intended status: Standards Track February 24, 2010 +Expires: August 28, 2010 YANG - A data modeling language for NETCONF - draft-ietf-netmod-yang-10 + draft-ietf-netmod-yang-11 + +Abstract + + YANG is a data modeling language used to model configuration and + state data manipulated by the Network Configuration Protocol + (NETCONF) protocol, NETCONF remote procedure calls, and NETCONF + notifications. Status of this Memo This Internet-Draft is submitted to IETF in full conformance with the provisions of BCP 78 and BCP 79. Internet-Drafts are working documents of the Internet Engineering Task Force (IETF), its areas, and its working groups. Note that other groups may also distribute working documents as Internet- Drafts. @@ -21,316 +28,325 @@ and may be updated, replaced, or obsoleted by other documents at any time. It is inappropriate to use Internet-Drafts as reference material or to cite them other than as "work in progress." The list of current Internet-Drafts can be accessed at http://www.ietf.org/ietf/1id-abstracts.txt. The list of Internet-Draft Shadow Directories can be accessed at http://www.ietf.org/shadow.html. - This Internet-Draft will expire on July 16, 2010. + This Internet-Draft will expire on August 28, 2010. Copyright Notice Copyright (c) 2010 IETF Trust and the persons identified as the document authors. All rights reserved. This document is subject to BCP 78 and the IETF Trust's Legal - Provisions Relating to IETF Documents in effect on the date of - publication of this document (http://trustee.ietf.org/license-info). - Please review these documents carefully, as they describe your rights - and restrictions with respect to this document. - -Abstract + Provisions Relating to IETF Documents + (http://trustee.ietf.org/license-info) in effect on the date of + publication of this document. Please review these documents + carefully, as they describe your rights and restrictions with respect + to this document. Code Components extracted from this document must + include Simplified BSD License text as described in Section 4.e of + the Trust Legal Provisions and are provided without warranty as + described in the Simplified BSD License. - YANG is a data modeling language used to model configuration and - state data manipulated by the Network Configuration Protocol - (NETCONF) protocol, NETCONF remote procedure calls, and NETCONF - notifications. + This document may contain material from IETF Documents or IETF + Contributions published or made publicly available before November + 10, 2008. The person(s) controlling the copyright in some of this + material may not have granted the IETF Trust the right to allow + modifications of such material outside the IETF Standards Process. + Without obtaining an adequate license from the person(s) controlling + the copyright in such materials, this document may not be modified + outside the IETF Standards Process, and derivative works of it may + not be created outside the IETF Standards Process, except to format + it for publication as an RFC or to translate it into languages other + than English. Table of Contents - 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 8 - 2. Key Words . . . . . . . . . . . . . . . . . . . . . . . . . . 9 - 3. Terminology . . . . . . . . . . . . . . . . . . . . . . . . . 10 - 3.1. Mandatory nodes . . . . . . . . . . . . . . . . . . . . . 12 - 4. YANG Overview . . . . . . . . . . . . . . . . . . . . . . . . 13 - 4.1. Functional Overview . . . . . . . . . . . . . . . . . . . 13 - 4.2. Language Overview . . . . . . . . . . . . . . . . . . . . 14 - 4.2.1. Modules and Submodules . . . . . . . . . . . . . . . 14 - 4.2.2. Data Modeling Basics . . . . . . . . . . . . . . . . 15 - 4.2.3. State Data . . . . . . . . . . . . . . . . . . . . . 19 - 4.2.4. Built-in Types . . . . . . . . . . . . . . . . . . . 19 - 4.2.5. Derived Types (typedef) . . . . . . . . . . . . . . . 20 - 4.2.6. Reusable Node Groups (grouping) . . . . . . . . . . . 21 - 4.2.7. Choices . . . . . . . . . . . . . . . . . . . . . . . 22 - 4.2.8. Extending Data Models (augment) . . . . . . . . . . . 23 - 4.2.9. RPC Definitions . . . . . . . . . . . . . . . . . . . 24 - 4.2.10. Notification Definitions . . . . . . . . . . . . . . 25 - 5. Language Concepts . . . . . . . . . . . . . . . . . . . . . . 27 - 5.1. Modules and Submodules . . . . . . . . . . . . . . . . . 27 - 5.1.1. Import and Include by Revision . . . . . . . . . . . 28 - 5.1.2. Module Hierarchies . . . . . . . . . . . . . . . . . 28 - 5.2. File Layout . . . . . . . . . . . . . . . . . . . . . . . 29 - 5.3. XML Namespaces . . . . . . . . . . . . . . . . . . . . . 30 - 5.3.1. YANG XML Namespace . . . . . . . . . . . . . . . . . 30 - 5.4. Resolving Grouping, Type, and Identity Names . . . . . . 30 - 5.5. Nested Typedefs and Groupings . . . . . . . . . . . . . . 30 - 5.6. Conformance . . . . . . . . . . . . . . . . . . . . . . . 31 - 5.6.1. Basic Behavior . . . . . . . . . . . . . . . . . . . 32 - 5.6.2. Optional Features . . . . . . . . . . . . . . . . . . 32 - 5.6.3. Deviations . . . . . . . . . . . . . . . . . . . . . 32 + 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 9 + 2. Key Words . . . . . . . . . . . . . . . . . . . . . . . . . . 10 + 3. Terminology . . . . . . . . . . . . . . . . . . . . . . . . . 11 + 3.1. Mandatory nodes . . . . . . . . . . . . . . . . . . . . . 13 + 4. YANG Overview . . . . . . . . . . . . . . . . . . . . . . . . 14 + 4.1. Functional Overview . . . . . . . . . . . . . . . . . . . 14 + 4.2. Language Overview . . . . . . . . . . . . . . . . . . . . 15 + 4.2.1. Modules and Submodules . . . . . . . . . . . . . . . 15 + 4.2.2. Data Modeling Basics . . . . . . . . . . . . . . . . 16 + 4.2.3. State Data . . . . . . . . . . . . . . . . . . . . . 20 + 4.2.4. Built-in Types . . . . . . . . . . . . . . . . . . . 20 + 4.2.5. Derived Types (typedef) . . . . . . . . . . . . . . . 21 + 4.2.6. Reusable Node Groups (grouping) . . . . . . . . . . . 22 + 4.2.7. Choices . . . . . . . . . . . . . . . . . . . . . . . 23 + 4.2.8. Extending Data Models (augment) . . . . . . . . . . . 24 + 4.2.9. RPC Definitions . . . . . . . . . . . . . . . . . . . 25 + 4.2.10. Notification Definitions . . . . . . . . . . . . . . 26 + 5. Language Concepts . . . . . . . . . . . . . . . . . . . . . . 28 + 5.1. Modules and Submodules . . . . . . . . . . . . . . . . . 28 + 5.1.1. Import and Include by Revision . . . . . . . . . . . 29 + 5.1.2. Module Hierarchies . . . . . . . . . . . . . . . . . 29 + 5.2. File Layout . . . . . . . . . . . . . . . . . . . . . . . 30 + 5.3. XML Namespaces . . . . . . . . . . . . . . . . . . . . . 31 + 5.3.1. YANG XML Namespace . . . . . . . . . . . . . . . . . 31 + 5.4. Resolving Grouping, Type, and Identity Names . . . . . . 31 + 5.5. Nested Typedefs and Groupings . . . . . . . . . . . . . . 31 + 5.6. Conformance . . . . . . . . . . . . . . . . . . . . . . . 32 + 5.6.1. Basic Behavior . . . . . . . . . . . . . . . . . . . 33 + 5.6.2. Optional Features . . . . . . . . . . . . . . . . . . 33 + 5.6.3. Deviations . . . . . . . . . . . . . . . . . . . . . 33 5.6.4. Announcing Conformance Information in the - Message . . . . . . . . . . . . . . . . . . . . . . . 33 - 5.7. Data Store Modification . . . . . . . . . . . . . . . . . 35 - 6. YANG syntax . . . . . . . . . . . . . . . . . . . . . . . . . 36 - 6.1. Lexicographical Tokenization . . . . . . . . . . . . . . 36 - 6.1.1. Comments . . . . . . . . . . . . . . . . . . . . . . 36 - 6.1.2. Tokens . . . . . . . . . . . . . . . . . . . . . . . 36 - 6.1.3. Quoting . . . . . . . . . . . . . . . . . . . . . . . 36 + Message . . . . . . . . . . . . . . . . . . . . . . . 34 + 5.7. Data Store Modification . . . . . . . . . . . . . . . . . 36 + 6. YANG syntax . . . . . . . . . . . . . . . . . . . . . . . . . 37 + 6.1. Lexicographical Tokenization . . . . . . . . . . . . . . 37 + 6.1.1. Comments . . . . . . . . . . . . . . . . . . . . . . 37 + 6.1.2. Tokens . . . . . . . . . . . . . . . . . . . . . . . 37 + 6.1.3. Quoting . . . . . . . . . . . . . . . . . . . . . . . 37 + 6.2. Identifiers . . . . . . . . . . . . . . . . . . . . . . . 39 + 6.2.1. Identifiers and their namespaces . . . . . . . . . . 39 + 6.3. Statements . . . . . . . . . . . . . . . . . . . . . . . 40 + 6.3.1. Language Extensions . . . . . . . . . . . . . . . . . 40 + 6.4. XPath Evaluations . . . . . . . . . . . . . . . . . . . . 40 + 6.4.1. XPath Context . . . . . . . . . . . . . . . . . . . . 41 + 6.5. Schema Node Identifier . . . . . . . . . . . . . . . . . 41 + 7. YANG Statements . . . . . . . . . . . . . . . . . . . . . . . 43 + 7.1. The module Statement . . . . . . . . . . . . . . . . . . 43 + 7.1.1. The module's Substatements . . . . . . . . . . . . . 44 + 7.1.2. The yang-version Statement . . . . . . . . . . . . . 45 + 7.1.3. The namespace Statement . . . . . . . . . . . . . . . 45 + 7.1.4. The prefix Statement . . . . . . . . . . . . . . . . 46 + 7.1.5. The import Statement . . . . . . . . . . . . . . . . 46 + 7.1.6. The include Statement . . . . . . . . . . . . . . . . 47 + 7.1.7. The organization Statement . . . . . . . . . . . . . 48 + 7.1.8. The contact Statement . . . . . . . . . . . . . . . . 48 + 7.1.9. The revision Statement . . . . . . . . . . . . . . . 48 + 7.1.10. Usage Example . . . . . . . . . . . . . . . . . . . . 49 + 7.2. The submodule Statement . . . . . . . . . . . . . . . . . 49 + 7.2.1. The submodule's Substatements . . . . . . . . . . . . 50 + 7.2.2. The belongs-to Statement . . . . . . . . . . . . . . 51 + 7.2.3. Usage Example . . . . . . . . . . . . . . . . . . . . 52 + 7.3. The typedef Statement . . . . . . . . . . . . . . . . . . 52 + 7.3.1. The typedef's Substatements . . . . . . . . . . . . . 53 + 7.3.2. The typedef's type Statement . . . . . . . . . . . . 53 + 7.3.3. The units Statement . . . . . . . . . . . . . . . . . 53 + 7.3.4. The typedef's default Statement . . . . . . . . . . . 53 + 7.3.5. Usage Example . . . . . . . . . . . . . . . . . . . . 54 + 7.4. The type Statement . . . . . . . . . . . . . . . . . . . 54 + 7.4.1. The type's Substatements . . . . . . . . . . . . . . 54 + 7.5. The container Statement . . . . . . . . . . . . . . . . . 54 + 7.5.1. Containers with Presence . . . . . . . . . . . . . . 55 + 7.5.2. The container's Substatements . . . . . . . . . . . . 56 + 7.5.3. The must Statement . . . . . . . . . . . . . . . . . 56 + 7.5.4. The must's Substatements . . . . . . . . . . . . . . 58 + 7.5.5. The presence Statement . . . . . . . . . . . . . . . 59 + 7.5.6. The container's Child Node Statements . . . . . . . . 59 + 7.5.7. XML Mapping Rules . . . . . . . . . . . . . . . . . . 59 + 7.5.8. NETCONF Operations . . . . . . . . . . 59 + 7.5.9. Usage Example . . . . . . . . . . . . . . . . . . . . 60 + 7.6. The leaf Statement . . . . . . . . . . . . . . . . . . . 61 + 7.6.1. The leaf's default value . . . . . . . . . . . . . . 61 + 7.6.2. The leaf's Substatements . . . . . . . . . . . . . . 62 + 7.6.3. The leaf's type Statement . . . . . . . . . . . . . . 62 + 7.6.4. The leaf's default Statement . . . . . . . . . . . . 62 + 7.6.5. The leaf's mandatory Statement . . . . . . . . . . . 63 + 7.6.6. XML Mapping Rules . . . . . . . . . . . . . . . . . . 63 + 7.6.7. NETCONF Operations . . . . . . . . . . 63 + 7.6.8. Usage Example . . . . . . . . . . . . . . . . . . . . 64 + 7.7. The leaf-list Statement . . . . . . . . . . . . . . . . . 65 + 7.7.1. Ordering . . . . . . . . . . . . . . . . . . . . . . 65 + 7.7.2. The leaf-list's Substatements . . . . . . . . . . . . 66 + 7.7.3. The min-elements Statement . . . . . . . . . . . . . 66 + 7.7.4. The max-elements Statement . . . . . . . . . . . . . 66 + 7.7.5. The ordered-by Statement . . . . . . . . . . . . . . 67 + 7.7.6. XML Mapping Rules . . . . . . . . . . . . . . . . . . 67 + 7.7.7. NETCONF Operations . . . . . . . . . . 68 + 7.7.8. Usage Example . . . . . . . . . . . . . . . . . . . . 69 + 7.8. The list Statement . . . . . . . . . . . . . . . . . . . 70 + 7.8.1. The list's Substatements . . . . . . . . . . . . . . 71 + 7.8.2. The list's key Statement . . . . . . . . . . . . . . 71 + 7.8.3. The list's unique Statement . . . . . . . . . . . . . 72 + 7.8.4. The list's Child Node Statements . . . . . . . . . . 73 + 7.8.5. XML Mapping Rules . . . . . . . . . . . . . . . . . . 73 + 7.8.6. NETCONF Operations . . . . . . . . . . 74 + 7.8.7. Usage Example . . . . . . . . . . . . . . . . . . . . 75 + 7.9. The choice Statement . . . . . . . . . . . . . . . . . . 78 + 7.9.1. The choice's Substatements . . . . . . . . . . . . . 79 + 7.9.2. The choice's case Statement . . . . . . . . . . . . . 79 + 7.9.3. The choice's default Statement . . . . . . . . . . . 80 + 7.9.4. The choice's mandatory Statement . . . . . . . . . . 82 + 7.9.5. XML Mapping Rules . . . . . . . . . . . . . . . . . . 82 + 7.9.6. NETCONF Operations . . . . . . . . . . 82 + 7.9.7. Usage Example . . . . . . . . . . . . . . . . . . . . 82 + 7.10. The anyxml Statement . . . . . . . . . . . . . . . . . . 83 + 7.10.1. The anyxml's Substatements . . . . . . . . . . . . . 84 + 7.10.2. XML Mapping Rules . . . . . . . . . . . . . . . . . . 84 + 7.10.3. NETCONF Operations . . . . . . . . . . 84 + 7.10.4. Usage Example . . . . . . . . . . . . . . . . . . . . 85 + 7.11. The grouping Statement . . . . . . . . . . . . . . . . . 85 + 7.11.1. The grouping's Substatements . . . . . . . . . . . . 86 + 7.11.2. Usage Example . . . . . . . . . . . . . . . . . . . . 87 + 7.12. The uses Statement . . . . . . . . . . . . . . . . . . . 87 + 7.12.1. The uses's Substatements . . . . . . . . . . . . . . 88 + 7.12.2. The refine Statement . . . . . . . . . . . . . . . . 88 + 7.12.3. XML Mapping Rules . . . . . . . . . . . . . . . . . . 89 + 7.12.4. Usage Example . . . . . . . . . . . . . . . . . . . . 89 + 7.13. The rpc Statement . . . . . . . . . . . . . . . . . . . . 90 + 7.13.1. The rpc's Substatements . . . . . . . . . . . . . . . 91 + 7.13.2. The input Statement . . . . . . . . . . . . . . . . . 91 + 7.13.3. The output Statement . . . . . . . . . . . . . . . . 92 + 7.13.4. XML Mapping Rules . . . . . . . . . . . . . . . . . . 93 + 7.13.5. Usage Example . . . . . . . . . . . . . . . . . . . . 93 + 7.14. The notification Statement . . . . . . . . . . . . . . . 94 + 7.14.1. The notification's Substatements . . . . . . . . . . 95 + 7.14.2. XML Mapping Rules . . . . . . . . . . . . . . . . . . 95 + 7.14.3. Usage Example . . . . . . . . . . . . . . . . . . . . 95 + 7.15. The augment Statement . . . . . . . . . . . . . . . . . . 96 + 7.15.1. The augment's Substatements . . . . . . . . . . . . . 97 + 7.15.2. XML Mapping Rules . . . . . . . . . . . . . . . . . . 97 + 7.15.3. Usage Example . . . . . . . . . . . . . . . . . . . . 97 + 7.16. The identity Statement . . . . . . . . . . . . . . . . . 99 + 7.16.1. The identity's Substatements . . . . . . . . . . . . 100 + 7.16.2. The base Statement . . . . . . . . . . . . . . . . . 100 + 7.16.3. Usage Example . . . . . . . . . . . . . . . . . . . . 101 + 7.17. The extension Statement . . . . . . . . . . . . . . . . . 101 + 7.17.1. The extension's Substatements . . . . . . . . . . . . 102 + 7.17.2. The argument Statement . . . . . . . . . . . . . . . 102 + 7.17.3. Usage Example . . . . . . . . . . . . . . . . . . . . 103 + 7.18. Conformance-related Statements . . . . . . . . . . . . . 103 + 7.18.1. The feature Statement . . . . . . . . . . . . . . . . 103 + 7.18.2. The if-feature Statement . . . . . . . . . . . . . . 105 + 7.18.3. The deviation Statement . . . . . . . . . . . . . . . 105 + 7.19. Common Statements . . . . . . . . . . . . . . . . . . . . 108 + 7.19.1. The config Statement . . . . . . . . . . . . . . . . 108 + 7.19.2. The status Statement . . . . . . . . . . . . . . . . 108 + 7.19.3. The description Statement . . . . . . . . . . . . . . 109 + 7.19.4. The reference Statement . . . . . . . . . . . . . . . 109 + 7.19.5. The when Statement . . . . . . . . . . . . . . . . . 109 + 8. Constraints . . . . . . . . . . . . . . . . . . . . . . . . . 111 + 8.1. Constraints on Data . . . . . . . . . . . . . . . . . . . 111 + 8.2. Hierarchy of Constraints . . . . . . . . . . . . . . . . 111 + 8.3. Constraint Enforcement Model . . . . . . . . . . . . . . 111 + 8.3.1. Payload Parsing . . . . . . . . . . . . . . . . . . . 112 + 8.3.2. NETCONF Processing . . . . . . . . . . 112 + 8.3.3. Validation . . . . . . . . . . . . . . . . . . . . . 113 + 9. Built-in Types . . . . . . . . . . . . . . . . . . . . . . . 114 + 9.1. Canonical representation . . . . . . . . . . . . . . . . 114 + 9.2. The Integer Built-in Types . . . . . . . . . . . . . . . 114 + 9.2.1. Lexicographic Representation . . . . . . . . . . . . 115 + 9.2.2. Canonical Form . . . . . . . . . . . . . . . . . . . 116 + 9.2.3. Restrictions . . . . . . . . . . . . . . . . . . . . 116 + 9.2.4. The range Statement . . . . . . . . . . . . . . . . . 116 + 9.2.5. Usage Example . . . . . . . . . . . . . . . . . . . . 117 + 9.3. The decimal64 Built-in Type . . . . . . . . . . . . . . . 117 + 9.3.1. Lexicographic Representation . . . . . . . . . . . . 117 + 9.3.2. Canonical Form . . . . . . . . . . . . . . . . . . . 117 + 9.3.3. Restrictions . . . . . . . . . . . . . . . . . . . . 118 + 9.3.4. The fraction-digits Statement . . . . . . . . . . . . 118 + 9.3.5. Usage Example . . . . . . . . . . . . . . . . . . . . 119 + 9.4. The string Built-in Type . . . . . . . . . . . . . . . . 119 + 9.4.1. Lexicographic Representation . . . . . . . . . . . . 119 + 9.4.2. Canonical Form . . . . . . . . . . . . . . . . . . . 119 + 9.4.3. Restrictions . . . . . . . . . . . . . . . . . . . . 119 + 9.4.4. The length Statement . . . . . . . . . . . . . . . . 119 + 9.4.5. Usage Example . . . . . . . . . . . . . . . . . . . . 120 + 9.4.6. The pattern Statement . . . . . . . . . . . . . . . . 121 + 9.4.7. Usage Example . . . . . . . . . . . . . . . . . . . . 121 + 9.5. The boolean Built-in Type . . . . . . . . . . . . . . . . 122 + 9.5.1. Lexicographic Representation . . . . . . . . . . . . 122 + 9.5.2. Canonical Form . . . . . . . . . . . . . . . . . . . 122 + 9.5.3. Restrictions . . . . . . . . . . . . . . . . . . . . 122 + 9.6. The enumeration Built-in Type . . . . . . . . . . . . . . 122 + 9.6.1. Lexicographic Representation . . . . . . . . . . . . 122 + 9.6.2. Canonical Form . . . . . . . . . . . . . . . . . . . 122 + 9.6.3. Restrictions . . . . . . . . . . . . . . . . . . . . 122 + 9.6.4. The enum Statement . . . . . . . . . . . . . . . . . 122 + 9.6.5. Usage Example . . . . . . . . . . . . . . . . . . . . 123 + 9.7. The bits Built-in Type . . . . . . . . . . . . . . . . . 124 + 9.7.1. Restrictions . . . . . . . . . . . . . . . . . . . . 124 + 9.7.2. Lexicographic Representation . . . . . . . . . . . . 124 + 9.7.3. Canonical Form . . . . . . . . . . . . . . . . . . . 124 + 9.7.4. The bit Statement . . . . . . . . . . . . . . . . . . 124 + 9.7.5. Usage Example . . . . . . . . . . . . . . . . . . . . 125 + 9.8. The binary Built-in Type . . . . . . . . . . . . . . . . 125 + 9.8.1. Restrictions . . . . . . . . . . . . . . . . . . . . 126 + 9.8.2. Lexicographic Representation . . . . . . . . . . . . 126 + 9.8.3. Canonical Form . . . . . . . . . . . . . . . . . . . 126 + 9.9. The leafref Built-in Type . . . . . . . . . . . . . . . . 126 + 9.9.1. Restrictions . . . . . . . . . . . . . . . . . . . . 126 + 9.9.2. The path Statement . . . . . . . . . . . . . . . . . 126 + 9.9.3. Lexicographic Representation . . . . . . . . . . . . 127 + 9.9.4. Canonical Form . . . . . . . . . . . . . . . . . . . 127 + 9.9.5. Usage Example . . . . . . . . . . . . . . . . . . . . 127 + 9.10. The identityref Built-in Type . . . . . . . . . . . . . . 131 + 9.10.1. Restrictions . . . . . . . . . . . . . . . . . . . . 131 + 9.10.2. The identityref's base Statement . . . . . . . . . . 131 + 9.10.3. Lexicographic Representation . . . . . . . . . . . . 132 + 9.10.4. Canonical Form . . . . . . . . . . . . . . . . . . . 132 + 9.10.5. Usage Example . . . . . . . . . . . . . . . . . . . . 132 + 9.11. The empty Built-in Type . . . . . . . . . . . . . . . . . 133 + 9.11.1. Restrictions . . . . . . . . . . . . . . . . . . . . 133 + 9.11.2. Lexicographic Representation . . . . . . . . . . . . 133 + 9.11.3. Canonical Form . . . . . . . . . . . . . . . . . . . 133 + 9.11.4. Usage Example . . . . . . . . . . . . . . . . . . . . 133 + 9.12. The union Built-in Type . . . . . . . . . . . . . . . . . 134 + 9.12.1. Restrictions . . . . . . . . . . . . . . . . . . . . 134 + 9.12.2. Lexicographic Representation . . . . . . . . . . . . 134 + 9.12.3. Canonical Form . . . . . . . . . . . . . . . . . . . 134 + 9.13. The instance-identifier Built-in Type . . . . . . . . . . 135 + 9.13.1. Restrictions . . . . . . . . . . . . . . . . . . . . 135 + 9.13.2. The require-instance Statement . . . . . . . . . . . 136 + 9.13.3. Lexicographic Representation . . . . . . . . . . . . 136 + 9.13.4. Canonical Form . . . . . . . . . . . . . . . . . . . 136 + 9.13.5. Usage Example . . . . . . . . . . . . . . . . . . . . 136 + 10. Updating a Module . . . . . . . . . . . . . . . . . . . . . . 138 + 11. YIN . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 141 + 11.1. Formal YIN Definition . . . . . . . . . . . . . . . . . . 141 + 11.1.1. Usage Example . . . . . . . . . . . . . . . . . . . . 143 - 6.2. Identifiers . . . . . . . . . . . . . . . . . . . . . . . 38 - 6.2.1. Identifiers and their namespaces . . . . . . . . . . 38 - 6.3. Statements . . . . . . . . . . . . . . . . . . . . . . . 39 - 6.3.1. Language Extensions . . . . . . . . . . . . . . . . . 39 - 6.4. XPath Evaluations . . . . . . . . . . . . . . . . . . . . 39 - 6.4.1. XPath Context . . . . . . . . . . . . . . . . . . . . 40 - 6.5. Schema Node Identifier . . . . . . . . . . . . . . . . . 40 - 7. YANG Statements . . . . . . . . . . . . . . . . . . . . . . . 42 - 7.1. The module Statement . . . . . . . . . . . . . . . . . . 42 - 7.1.1. The module's Substatements . . . . . . . . . . . . . 43 - 7.1.2. The yang-version Statement . . . . . . . . . . . . . 44 - 7.1.3. The namespace Statement . . . . . . . . . . . . . . . 44 - 7.1.4. The prefix Statement . . . . . . . . . . . . . . . . 45 - 7.1.5. The import Statement . . . . . . . . . . . . . . . . 45 - 7.1.6. The include Statement . . . . . . . . . . . . . . . . 46 - 7.1.7. The organization Statement . . . . . . . . . . . . . 47 - 7.1.8. The contact Statement . . . . . . . . . . . . . . . . 47 - 7.1.9. The revision Statement . . . . . . . . . . . . . . . 47 - 7.1.10. Usage Example . . . . . . . . . . . . . . . . . . . . 48 - 7.2. The submodule Statement . . . . . . . . . . . . . . . . . 48 - 7.2.1. The submodule's Substatements . . . . . . . . . . . . 49 - 7.2.2. The belongs-to Statement . . . . . . . . . . . . . . 50 - 7.2.3. Usage Example . . . . . . . . . . . . . . . . . . . . 51 - 7.3. The typedef Statement . . . . . . . . . . . . . . . . . . 51 - 7.3.1. The typedef's Substatements . . . . . . . . . . . . . 52 - 7.3.2. The typedef's type Statement . . . . . . . . . . . . 52 - 7.3.3. The units Statement . . . . . . . . . . . . . . . . . 52 - 7.3.4. The typedef's default Statement . . . . . . . . . . . 52 - 7.3.5. Usage Example . . . . . . . . . . . . . . . . . . . . 53 - 7.4. The type Statement . . . . . . . . . . . . . . . . . . . 53 - 7.4.1. The type's Substatements . . . . . . . . . . . . . . 53 - 7.5. The container Statement . . . . . . . . . . . . . . . . . 53 - 7.5.1. Containers with Presence . . . . . . . . . . . . . . 54 - 7.5.2. The container's Substatements . . . . . . . . . . . . 55 - 7.5.3. The must Statement . . . . . . . . . . . . . . . . . 55 - 7.5.4. The must's Substatements . . . . . . . . . . . . . . 57 - 7.5.5. The presence Statement . . . . . . . . . . . . . . . 58 - 7.5.6. The container's Child Node Statements . . . . . . . . 58 - 7.5.7. XML Mapping Rules . . . . . . . . . . . . . . . . . . 58 - 7.5.8. NETCONF Operations . . . . . . . . . . 58 - 7.5.9. Usage Example . . . . . . . . . . . . . . . . . . . . 59 - 7.6. The leaf Statement . . . . . . . . . . . . . . . . . . . 60 - 7.6.1. The leaf's default value . . . . . . . . . . . . . . 60 - 7.6.2. The leaf's Substatements . . . . . . . . . . . . . . 61 - 7.6.3. The leaf's type Statement . . . . . . . . . . . . . . 61 - 7.6.4. The leaf's default Statement . . . . . . . . . . . . 61 - 7.6.5. The leaf's mandatory Statement . . . . . . . . . . . 62 - 7.6.6. XML Mapping Rules . . . . . . . . . . . . . . . . . . 62 - 7.6.7. NETCONF Operations . . . . . . . . . . 62 - 7.6.8. Usage Example . . . . . . . . . . . . . . . . . . . . 63 - 7.7. The leaf-list Statement . . . . . . . . . . . . . . . . . 64 - 7.7.1. Ordering . . . . . . . . . . . . . . . . . . . . . . 64 - 7.7.2. The leaf-list's Substatements . . . . . . . . . . . . 65 - 7.7.3. The min-elements Statement . . . . . . . . . . . . . 65 - 7.7.4. The max-elements Statement . . . . . . . . . . . . . 65 - 7.7.5. The ordered-by Statement . . . . . . . . . . . . . . 66 - 7.7.6. XML Mapping Rules . . . . . . . . . . . . . . . . . . 66 - 7.7.7. NETCONF Operations . . . . . . . . . . 67 - 7.7.8. Usage Example . . . . . . . . . . . . . . . . . . . . 68 - 7.8. The list Statement . . . . . . . . . . . . . . . . . . . 69 - 7.8.1. The list's Substatements . . . . . . . . . . . . . . 70 - 7.8.2. The list's key Statement . . . . . . . . . . . . . . 70 - 7.8.3. The list's unique Statement . . . . . . . . . . . . . 71 - 7.8.4. The list's Child Node Statements . . . . . . . . . . 72 - 7.8.5. XML Mapping Rules . . . . . . . . . . . . . . . . . . 72 - 7.8.6. NETCONF Operations . . . . . . . . . . 73 - 7.8.7. Usage Example . . . . . . . . . . . . . . . . . . . . 74 - 7.9. The choice Statement . . . . . . . . . . . . . . . . . . 77 - 7.9.1. The choice's Substatements . . . . . . . . . . . . . 78 - 7.9.2. The choice's case Statement . . . . . . . . . . . . . 78 - 7.9.3. The choice's default Statement . . . . . . . . . . . 79 - 7.9.4. The choice's mandatory Statement . . . . . . . . . . 81 - 7.9.5. XML Mapping Rules . . . . . . . . . . . . . . . . . . 81 - 7.9.6. NETCONF Operations . . . . . . . . . . 81 - 7.9.7. Usage Example . . . . . . . . . . . . . . . . . . . . 81 - 7.10. The anyxml Statement . . . . . . . . . . . . . . . . . . 82 - 7.10.1. The anyxml's Substatements . . . . . . . . . . . . . 83 - 7.10.2. XML Mapping Rules . . . . . . . . . . . . . . . . . . 83 - 7.10.3. NETCONF Operations . . . . . . . . . . 83 - 7.10.4. Usage Example . . . . . . . . . . . . . . . . . . . . 84 - 7.11. The grouping Statement . . . . . . . . . . . . . . . . . 84 - 7.11.1. The grouping's Substatements . . . . . . . . . . . . 85 - 7.11.2. Usage Example . . . . . . . . . . . . . . . . . . . . 86 - 7.12. The uses Statement . . . . . . . . . . . . . . . . . . . 86 - 7.12.1. The uses's Substatements . . . . . . . . . . . . . . 87 - 7.12.2. The refine Statement . . . . . . . . . . . . . . . . 87 - 7.12.3. XML Mapping Rules . . . . . . . . . . . . . . . . . . 88 - 7.12.4. Usage Example . . . . . . . . . . . . . . . . . . . . 88 - 7.13. The rpc Statement . . . . . . . . . . . . . . . . . . . . 89 - 7.13.1. The rpc's Substatements . . . . . . . . . . . . . . . 90 - 7.13.2. The input Statement . . . . . . . . . . . . . . . . . 90 - 7.13.3. The output Statement . . . . . . . . . . . . . . . . 91 - 7.13.4. XML Mapping Rules . . . . . . . . . . . . . . . . . . 92 - 7.13.5. Usage Example . . . . . . . . . . . . . . . . . . . . 92 - 7.14. The notification Statement . . . . . . . . . . . . . . . 93 - 7.14.1. The notification's Substatements . . . . . . . . . . 94 - 7.14.2. XML Mapping Rules . . . . . . . . . . . . . . . . . . 94 - 7.14.3. Usage Example . . . . . . . . . . . . . . . . . . . . 94 - 7.15. The augment Statement . . . . . . . . . . . . . . . . . . 95 - 7.15.1. The augment's Substatements . . . . . . . . . . . . . 96 - 7.15.2. XML Mapping Rules . . . . . . . . . . . . . . . . . . 96 - 7.15.3. Usage Example . . . . . . . . . . . . . . . . . . . . 96 - 7.16. The identity Statement . . . . . . . . . . . . . . . . . 98 - 7.16.1. The identity's Substatements . . . . . . . . . . . . 99 - 7.16.2. The base Statement . . . . . . . . . . . . . . . . . 99 - 7.16.3. Usage Example . . . . . . . . . . . . . . . . . . . . 100 - 7.17. The extension Statement . . . . . . . . . . . . . . . . . 100 - 7.17.1. The extension's Substatements . . . . . . . . . . . . 101 - 7.17.2. The argument Statement . . . . . . . . . . . . . . . 101 - 7.17.3. Usage Example . . . . . . . . . . . . . . . . . . . . 102 - 7.18. Conformance-related Statements . . . . . . . . . . . . . 102 - 7.18.1. The feature Statement . . . . . . . . . . . . . . . . 102 - 7.18.2. The if-feature Statement . . . . . . . . . . . . . . 104 - 7.18.3. The deviation Statement . . . . . . . . . . . . . . . 104 - 7.19. Common Statements . . . . . . . . . . . . . . . . . . . . 107 - 7.19.1. The config Statement . . . . . . . . . . . . . . . . 107 - 7.19.2. The status Statement . . . . . . . . . . . . . . . . 107 - 7.19.3. The description Statement . . . . . . . . . . . . . . 108 - 7.19.4. The reference Statement . . . . . . . . . . . . . . . 108 - 7.19.5. The when Statement . . . . . . . . . . . . . . . . . 108 - 8. Constraints . . . . . . . . . . . . . . . . . . . . . . . . . 110 - 8.1. Constraints on Data . . . . . . . . . . . . . . . . . . . 110 - 8.2. Hierarchy of Constraints . . . . . . . . . . . . . . . . 110 - 8.3. Constraint Enforcement Model . . . . . . . . . . . . . . 110 - 8.3.1. Payload Parsing . . . . . . . . . . . . . . . . . . . 111 - 8.3.2. NETCONF Processing . . . . . . . . . . 111 - 8.3.3. Validation . . . . . . . . . . . . . . . . . . . . . 112 - 9. Built-in Types . . . . . . . . . . . . . . . . . . . . . . . 113 - 9.1. Canonical representation . . . . . . . . . . . . . . . . 113 - 9.2. The Integer Built-in Types . . . . . . . . . . . . . . . 113 - 9.2.1. Lexicographic Representation . . . . . . . . . . . . 114 - 9.2.2. Canonical Form . . . . . . . . . . . . . . . . . . . 115 - 9.2.3. Restrictions . . . . . . . . . . . . . . . . . . . . 115 - 9.2.4. The range Statement . . . . . . . . . . . . . . . . . 115 - 9.2.5. Usage Example . . . . . . . . . . . . . . . . . . . . 116 - 9.3. The decimal64 Built-in Type . . . . . . . . . . . . . . . 116 - 9.3.1. Lexicographic Representation . . . . . . . . . . . . 116 - 9.3.2. Canonical Form . . . . . . . . . . . . . . . . . . . 116 - 9.3.3. Restrictions . . . . . . . . . . . . . . . . . . . . 117 - 9.3.4. The fraction-digits Statement . . . . . . . . . . . . 117 - 9.3.5. Usage Example . . . . . . . . . . . . . . . . . . . . 118 - 9.4. The string Built-in Type . . . . . . . . . . . . . . . . 118 - 9.4.1. Lexicographic Representation . . . . . . . . . . . . 118 - 9.4.2. Canonical Form . . . . . . . . . . . . . . . . . . . 118 - 9.4.3. Restrictions . . . . . . . . . . . . . . . . . . . . 118 - 9.4.4. The length Statement . . . . . . . . . . . . . . . . 118 - 9.4.5. Usage Example . . . . . . . . . . . . . . . . . . . . 119 - 9.4.6. The pattern Statement . . . . . . . . . . . . . . . . 120 - 9.4.7. Usage Example . . . . . . . . . . . . . . . . . . . . 120 - 9.5. The boolean Built-in Type . . . . . . . . . . . . . . . . 121 - 9.5.1. Lexicographic Representation . . . . . . . . . . . . 121 - 9.5.2. Canonical Form . . . . . . . . . . . . . . . . . . . 121 - 9.5.3. Restrictions . . . . . . . . . . . . . . . . . . . . 121 - 9.6. The enumeration Built-in Type . . . . . . . . . . . . . . 121 - 9.6.1. Lexicographic Representation . . . . . . . . . . . . 121 - 9.6.2. Canonical Form . . . . . . . . . . . . . . . . . . . 121 - 9.6.3. Restrictions . . . . . . . . . . . . . . . . . . . . 121 - 9.6.4. The enum Statement . . . . . . . . . . . . . . . . . 121 - 9.6.5. Usage Example . . . . . . . . . . . . . . . . . . . . 122 - 9.7. The bits Built-in Type . . . . . . . . . . . . . . . . . 123 - 9.7.1. Restrictions . . . . . . . . . . . . . . . . . . . . 123 - 9.7.2. Lexicographic Representation . . . . . . . . . . . . 123 - 9.7.3. Canonical Form . . . . . . . . . . . . . . . . . . . 123 - 9.7.4. The bit Statement . . . . . . . . . . . . . . . . . . 123 - 9.7.5. Usage Example . . . . . . . . . . . . . . . . . . . . 124 - 9.8. The binary Built-in Type . . . . . . . . . . . . . . . . 124 - 9.8.1. Restrictions . . . . . . . . . . . . . . . . . . . . 125 - 9.8.2. Lexicographic Representation . . . . . . . . . . . . 125 - 9.8.3. Canonical Form . . . . . . . . . . . . . . . . . . . 125 - 9.9. The leafref Built-in Type . . . . . . . . . . . . . . . . 125 - 9.9.1. Restrictions . . . . . . . . . . . . . . . . . . . . 125 - 9.9.2. The path Statement . . . . . . . . . . . . . . . . . 125 - 9.9.3. Lexicographic Representation . . . . . . . . . . . . 126 - 9.9.4. Canonical Form . . . . . . . . . . . . . . . . . . . 126 - 9.9.5. Usage Example . . . . . . . . . . . . . . . . . . . . 126 - 9.10. The identityref Built-in Type . . . . . . . . . . . . . . 130 - 9.10.1. Restrictions . . . . . . . . . . . . . . . . . . . . 130 - 9.10.2. The identityref's base Statement . . . . . . . . . . 130 - 9.10.3. Lexicographic Representation . . . . . . . . . . . . 131 - 9.10.4. Canonical Form . . . . . . . . . . . . . . . . . . . 131 - 9.10.5. Usage Example . . . . . . . . . . . . . . . . . . . . 131 - 9.11. The empty Built-in Type . . . . . . . . . . . . . . . . . 132 - 9.11.1. Restrictions . . . . . . . . . . . . . . . . . . . . 132 - 9.11.2. Lexicographic Representation . . . . . . . . . . . . 132 - 9.11.3. Canonical Form . . . . . . . . . . . . . . . . . . . 132 - 9.11.4. Usage Example . . . . . . . . . . . . . . . . . . . . 132 - 9.12. The union Built-in Type . . . . . . . . . . . . . . . . . 133 - 9.12.1. Restrictions . . . . . . . . . . . . . . . . . . . . 133 - 9.12.2. Lexicographic Representation . . . . . . . . . . . . 133 - 9.12.3. Canonical Form . . . . . . . . . . . . . . . . . . . 133 - 9.13. The instance-identifier Built-in Type . . . . . . . . . . 134 - 9.13.1. Restrictions . . . . . . . . . . . . . . . . . . . . 134 - 9.13.2. The require-instance Statement . . . . . . . . . . . 135 - 9.13.3. Lexicographic Representation . . . . . . . . . . . . 135 - 9.13.4. Canonical Form . . . . . . . . . . . . . . . . . . . 135 - 9.13.5. Usage Example . . . . . . . . . . . . . . . . . . . . 135 - 10. Updating a Module . . . . . . . . . . . . . . . . . . . . . . 137 - 11. YIN . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 140 - 11.1. Formal YIN Definition . . . . . . . . . . . . . . . . . . 140 - 11.1.1. Usage Example . . . . . . . . . . . . . . . . . . . . 142 - 12. YANG ABNF Grammar . . . . . . . . . . . . . . . . . . . . . . 145 - 13. Error Responses for YANG Related Errors . . . . . . . . . . . 167 - 13.1. Error Message for Data that Violates a unique Statement . 167 + 12. YANG ABNF Grammar . . . . . . . . . . . . . . . . . . . . . . 146 + 13. Error Responses for YANG Related Errors . . . . . . . . . . . 168 + 13.1. Error Message for Data that Violates a unique Statement . 168 13.2. Error Message for Data that Violates a max-elements - Statement . . . . . . . . . . . . . . . . . . . . . . . . 167 + Statement . . . . . . . . . . . . . . . . . . . . . . . . 168 13.3. Error Message for Data that Violates a min-elements - Statement . . . . . . . . . . . . . . . . . . . . . . . . 167 - 13.4. Error Message for Data that Violates a must Statement . . 168 + Statement . . . . . . . . . . . . . . . . . . . . . . . . 168 + 13.4. Error Message for Data that Violates a must Statement . . 169 13.5. Error Message for Data that Violates a - require-instance Statement . . . . . . . . . . . . . . . 168 + require-instance Statement . . . . . . . . . . . . . . . 169 13.6. Error Message for Data that does not Match a leafref - Type . . . . . . . . . . . . . . . . . . . . . . . . . . 168 + Type . . . . . . . . . . . . . . . . . . . . . . . . . . 169 13.7. Error Message for Data that Violates a mandatory - choice Statement . . . . . . . . . . . . . . . . . . . . 168 - 13.8. Error Message for the "insert" Operation . . . . . . . . 169 - 14. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 170 - 15. Security Considerations . . . . . . . . . . . . . . . . . . . 171 - 16. Contributors . . . . . . . . . . . . . . . . . . . . . . . . 172 - 17. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 173 - 18. References . . . . . . . . . . . . . . . . . . . . . . . . . 174 - 18.1. Normative References . . . . . . . . . . . . . . . . . . 174 - 18.2. Non-Normative References . . . . . . . . . . . . . . . . 175 - Appendix A. ChangeLog . . . . . . . . . . . . . . . . . . . . . 176 - A.1. Version -10 . . . . . . . . . . . . . . . . . . . . . . . 176 - A.2. Version -09 . . . . . . . . . . . . . . . . . . . . . . . 176 - A.3. Version -08 . . . . . . . . . . . . . . . . . . . . . . . 176 - A.4. Version -07 . . . . . . . . . . . . . . . . . . . . . . . 177 - A.5. Version -06 . . . . . . . . . . . . . . . . . . . . . . . 177 - A.6. Version -05 . . . . . . . . . . . . . . . . . . . . . . . 177 - A.7. Version -04 . . . . . . . . . . . . . . . . . . . . . . . 178 - A.8. Version -03 . . . . . . . . . . . . . . . . . . . . . . . 178 - A.9. Version -02 . . . . . . . . . . . . . . . . . . . . . . . 178 - A.10. Version -01 . . . . . . . . . . . . . . . . . . . . . . . 179 - A.11. Version -00 . . . . . . . . . . . . . . . . . . . . . . . 180 - Author's Address . . . . . . . . . . . . . . . . . . . . . . . . 181 + choice Statement . . . . . . . . . . . . . . . . . . . . 169 + 13.8. Error Message for the "insert" Operation . . . . . . . . 170 + 14. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 171 + 15. Security Considerations . . . . . . . . . . . . . . . . . . . 172 + 16. Contributors . . . . . . . . . . . . . . . . . . . . . . . . 173 + 17. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 174 + 18. References . . . . . . . . . . . . . . . . . . . . . . . . . 175 + 18.1. Normative References . . . . . . . . . . . . . . . . . . 175 + 18.2. Non-Normative References . . . . . . . . . . . . . . . . 176 + Appendix A. ChangeLog . . . . . . . . . . . . . . . . . . . . . 177 + A.1. Version -10 . . . . . . . . . . . . . . . . . . . . . . . 177 + A.2. Version -09 . . . . . . . . . . . . . . . . . . . . . . . 177 + A.3. Version -08 . . . . . . . . . . . . . . . . . . . . . . . 177 + A.4. Version -07 . . . . . . . . . . . . . . . . . . . . . . . 178 + A.5. Version -06 . . . . . . . . . . . . . . . . . . . . . . . 178 + A.6. Version -05 . . . . . . . . . . . . . . . . . . . . . . . 178 + A.7. Version -04 . . . . . . . . . . . . . . . . . . . . . . . 179 + A.8. Version -03 . . . . . . . . . . . . . . . . . . . . . . . 179 + A.9. Version -02 . . . . . . . . . . . . . . . . . . . . . . . 179 + A.10. Version -01 . . . . . . . . . . . . . . . . . . . . . . . 180 + A.11. Version -00 . . . . . . . . . . . . . . . . . . . . . . . 181 + Author's Address . . . . . . . . . . . . . . . . . . . . . . . . 182 1. Introduction YANG is a data modeling language used to model configuration and state data manipulated by the Network Configuration Protocol (NETCONF) protocol, NETCONF remote procedure calls, and NETCONF notifications. YANG is used to model the operations and content layers of NETCONF (see the NETCONF Configuration Protocol [RFC4741], section 1.1). @@ -3810,21 +3826,21 @@ 7.13. The rpc Statement The "rpc" statement is used to define a NETCONF RPC operation. It takes one argument, which is an identifier, followed by a block of substatements that holds detailed rpc information. This argument is the name of the RPC, and is used as the element name directly under the element, as designated by the substitution group "rpcOperation" in [RFC4741]. The "rpc" statement defines an rpc node in the schema tree. Under - the rpc node, an input node with the name "input", and an output node + the rpc node, a schema node with the name "input", and a schema node with the name "output" are also defined. The nodes "input" and "output" are defined in the module's namespace. 7.13.1. The rpc's Substatements +--------------+---------+-------------+ | substatement | section | cardinality | +--------------+---------+-------------+ | description | 7.19.3 | 0..1 | | grouping | 7.11 | 0..n | @@ -7408,23 +7424,20 @@ [RFC3986] Berners-Lee, T., Fielding, R., and L. Masinter, "Uniform Resource Identifier (URI): Generic Syntax", STD 66, RFC 3986, January 2005. [RFC4648] Josefsson, S., "The Base16, Base32, and Base64 Data Encodings", RFC 4648, October 2006. [RFC4741] Enns, R., "NETCONF Configuration Protocol", RFC 4741, December 2006. - [RFC4844] Daigle, L. and Internet Architecture Board, "The RFC - Series and RFC Editor", RFC 4844, July 2007. - [RFC5226] Narten, T. and H. Alvestrand, "Guidelines for Writing an IANA Considerations Section in RFCs", BCP 26, RFC 5226, May 2008. [RFC5234] Crocker, D. and P. Overell, "Augmented BNF for Syntax Specifications: ABNF", STD 68, RFC 5234, January 2008. [RFC5277] Chisholm, S. and H. Trevino, "NETCONF Event Notifications", RFC 5277, July 2008. @@ -7451,24 +7464,27 @@ Schoenwaelder, Ed., "Structure of Management Information Version 2 (SMIv2)", STD 58, RFC 2578, April 1999. [RFC2579] McCloghrie, K., Ed., Perkins, D., Ed., and J. Schoenwaelder, Ed., "Textual Conventions for SMIv2", STD 58, RFC 2579, April 1999. [RFC3780] Strauss, F. and J. Schoenwaelder, "SMIng - Next Generation Structure of Management Information", RFC 3780, May 2004. + [RFC4844] Daigle, L. and Internet Architecture Board, "The RFC + Series and RFC Editor", RFC 4844, July 2007. + [XPATH2.0] - Chamberlin, D., Boag, S., Berglund, A., Robie, J., - SimAfA(C)on, J., FernAfA!ndez, M., and M. Kay, "XML Path - Language (XPath) 2.0", World Wide Web Consortium + Berglund, A., Boag, S., Chamberlin, D., Fernandez, M., + Kay, M., Robie, J., and J. Simeon, "XML Path Language + (XPath) 2.0", World Wide Web Consortium Recommendation REC-xpath20-20070123, January 2007, . [XSLT] Clark, J., "XSL Transformations (XSLT) Version 1.0", World Wide Web Consortium Recommendation REC-xslt-19991116, November 1999, . Appendix A. ChangeLog