summaryrefslogtreecommitdiffhomepage
path: root/tools/yang/ietf-yang-smiv2.yang
blob: b06afc7abd1fbcbcb73aa2ec30a9fd447694fc47 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
module ietf-yang-smiv2 {

  namespace "urn:ietf:params:xml:ns:yang:ietf-yang-smiv2";
  prefix "smiv2";
  
  organization
   "IETF NETMOD (NETCONF Data Modeling Language) Working Group";
  
  contact
   "WG Web:   <http://tools.ietf.org/wg/netmod/>
    WG List:  <mailto:netmod@ietf.org>

    WG Chair: David Kessens
              <mailto:david.kessens@nsn.com>

    WG Chair: Juergen Schoenwaelder
              <mailto:j.schoenwaelder@jacobs-university.de>

    Editor:   Juergen Schoenwaelder
              <mailto:j.schoenwaelder@jacobs-university.de>";

  description
   "This module defines YANG extensions that are used to translate
    SMIv2 concepts into YANG.

    Copyright (c) 2011 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; see 
    the RFC itself for full legal notices.";
    // RFC Ed.: replace XXXX with actual RFC number and remove this note

  // RFC Ed.: please update the date to the date of publication
  revision 2011-11-25 {
    description
     "Initial revision.";
    reference
     "RFC XXXX: Translation of SMIv2 MIB Modules to YANG Modules";
    // RFC Ed.: replace XXXX with actual RFC number and remove this note
  }

  identity object-identity {
    description
     "Base identity for all SMIv2 OBJECT-IDENTITYs.";
  }

  typedef opaque {
    type binary;
    description
     "The Opaque type supports the capability to pass arbitrary ASN.1
      syntax.  A value is encoded using the ASN.1 Basic Encoding Rules
      into a string of octets.  This, in turn, is encoded as an OCTET
      STRING, in effect 'double-wrapping' the original ASN.1 value.

      In the value set and its semantics, this type is equivalent to
      the Opaque type of the SMIv2. This type exists in the SMIv2
      solely for backward-compatibility reasons and this is also 
      true for this YANG data type.";
    reference
     "RFC 2578: Structure of Management Information Version 2 (SMIv2)";
  }

  extension display-hint {
    argument "format";
    description
     "The display-hint statement takes as an argument the DISPLAY-HINT
      assigned to an SMIv2 textual convention.";
    reference
     "RFC2579: Textual Conventions for SMIv2";
  }

  extension max-access {
    argument "access";
    description
     "The max-access statement takes as an argument the MAX-ACCESS
      assigned to an SMIv2 object definition";
    reference
     "RFC2578: Structure of Management Information Version 2 (SMIv2)";
  }

  extension defval {
    argument "value";
    description
     "The defval statement takes as an argument a default value
      defined by an SMIv2 DEFVAL clause. Note that the value is in 
      the SMIv2 value space defined by the SMIv2 syntax of the
      corresponding object and not in the YANG value space
      defined by the corresponding YANG data type.";
    reference
     "RFC2578: Structure of Management Information Version 2 (SMIv2)";
  }

  extension implied {
    argument "index";
    description
     "If an SMIv2 INDEX object is preceded by the IMPLIED keyword, then
      the implied statement is present in the yang module and takes as
      an argument the name of the IMPLIED index object.";
    reference
     "RFC2578: Structure of Management Information Version 2 (SMIv2)";
   }

  extension alias {
    argument "descriptor";
    description
     "The alias statement introduces an SMIv2 descriptor. The body of
      the alias statement is expected to contain an oid statement that
      provides the numeric OID associated with the descriptor.";
    reference
     "RFC2578: Structure of Management Information Version 2 (SMIv2)";
  }

  extension oid {
    argument "value";
    description
     "The oid statement takes as an argument the object identifier
      assigned to an SMIv2 definition. The object identifier value
      is written in decimal dotted notation.";
    reference
     "RFC2578: Structure of Management Information Version 2 (SMIv2)";
  }

  extension subid {
    argument "value";
    description
     "The subid statement takes as an argument the last sub-identifier
      of the object identifier assigned to an SMIv2 definition.  The
      sub-identifier value is a single positive decimal natural number.
      The subid statement may not be used as a substatement to any
      top-level node in a YANG document.  The subid substatement may
      be used only as a substatement to a node having a parent node
      defined with either a smiv2:oid or smiv2:subid substatement.";
    reference
     "RFC2578: Structure of Management Information Version 2 (SMIv2)";
  }

}