-module types2 {\r
- yang-version 1;\r
- namespace "urn:simple.types.data.demo";\r
- prefix "t2";\r
- \r
- import types1 {\r
- prefix "if";\r
- revision-date 2013-02-27;\r
- }\r
-\r
- organization "Cisco";\r
- contact "WILL-BE-DEFINED-LATER";\r
- description "This is types-data test description";\r
-\r
- revision "2013-02-27" {\r
- reference " WILL BE DEFINED LATER";\r
- }\r
- \r
- typedef ranges1 {\r
- type int32 {\r
- range "10..20";\r
- }\r
- }\r
- \r
- typedef ranges2 {\r
- type ranges1 {\r
- range "12..max";\r
- }\r
- }\r
- \r
- typedef my-base-int32-type {\r
- type int32 {\r
- range "2..20";\r
- }\r
- }\r
-\r
- typedef my-type1 {\r
- type my-base-int32-type {\r
- range "11..max";\r
- }\r
- }\r
- \r
- typedef my-string-type {\r
- type my-custom-string {\r
- pattern "[a-k]*";\r
- length "5..10";\r
- }\r
- }\r
- \r
- typedef my-custom-string {\r
- type string {\r
- pattern "[a-k]*";\r
- length "5..11";\r
- }\r
- }\r
- \r
- typedef my-string-type2 {\r
- type my-string-type {\r
- pattern "[b-u]*";\r
- }\r
- }\r
- \r
- typedef my-string-type-ext {\r
- type my-string-type2 {\r
- pattern "[e-z]*";\r
- }\r
- }\r
- \r
- typedef my-int-type {\r
- type int32 {\r
- range "10..20";\r
- }\r
- }\r
- \r
- typedef my-int-type2 {\r
- type my-int-type {\r
- range "12..18";\r
- }\r
- }\r
- \r
- typedef my-int-type-ext {\r
- type my-int-type2 {\r
- range "14..16";\r
- }\r
- }\r
- \r
- typedef my-decimal-type {\r
- type decimal64 {\r
- fraction-digits 6;\r
- }\r
- }\r
- \r
- typedef my-decimal-type-ext {\r
- type decimal64 {\r
- fraction-digits 5;\r
- }\r
- }\r
-\r
- augment "/if:interfaces/if:ifEntry" {\r
- when "if:ifType='ds0'";\r
- leaf ds0ChannelNumber {\r
- type string;\r
- }\r
- }\r
-\r
- leaf if-name {\r
- type leafref {\r
- path "/interface/name";\r
- }\r
- }\r
- \r
- leaf name {\r
- type string;\r
- }\r
- \r
- leaf nested-type-leaf {\r
- type my-type1;\r
- }\r
- \r
- extension c-define {\r
- description\r
- "Takes as argument a name string.\r
- Makes the code generator use the given name in the\r
- #define.";\r
- argument "name" {\r
- yin-element "true";\r
- }\r
- }\r
-\r
-}\r
+module types2 {
+ yang-version 1;
+ namespace "urn:simple.types.data.demo";
+ prefix "t2";
+
+ import types1 {
+ prefix "if";
+ revision-date 2013-02-27;
+ }
+
+ organization "opendaylight";
+ contact "WILL-BE-DEFINED-LATER";
+ description "This is types-data test description";
+
+ revision "2013-02-27" {
+ reference " WILL BE DEFINED LATER";
+ }
+
+ typedef my-base-int32-type {
+ type int32 {
+ range "2..20";
+ }
+ }
+
+ typedef my-type1 {
+ type my-base-int32-type {
+ range "11..max";
+ }
+ units "mile";
+ default "11";
+ }
+
+ typedef my-custom-string {
+ type string {
+ pattern "[a-k]*";
+ length "5..11";
+ }
+ }
+
+ typedef my-string-type {
+ type my-custom-string {
+ length "5..10";
+ }
+ }
+
+ typedef my-string-type2 {
+ type my-string-type {
+ pattern "[b-u]*";
+ }
+ }
+
+ typedef my-string-type-ext {
+ type my-string-type2 {
+ pattern "[e-z]*";
+ }
+ }
+
+ typedef my-int-type {
+ type int32 {
+ range "10..20";
+ }
+ }
+
+ typedef my-int-type2 {
+ type my-int-type {
+ range "12..18";
+ }
+ }
+
+ typedef my-int-type-ext {
+ type my-int-type2 {
+ range "14..16";
+ }
+ }
+
+ typedef my-decimal-type {
+ type decimal64 {
+ fraction-digits 6;
+ }
+ }
+
+ typedef my-decimal-type-ext {
+ type decimal64 {
+ fraction-digits 5;
+ }
+ }
+
+ typedef my-union {
+ type union {
+ type int16 {
+ range "1..100";
+ }
+ type int32;
+ }
+ }
+
+ typedef my-union-ext {
+ type my-union;
+ }
+
+ typedef nested-union1 {
+ type nested-union2;
+ }
+
+ typedef nested-union2 {
+ type union {
+ type my-union-ext;
+ type string;
+ }
+ }
+
+ augment "/if:interfaces/if:ifEntry" {
+ when "if:ifType='ds0'";
+ leaf ds0ChannelNumber {
+ type string;
+ }
+ }
+
+ leaf if-name {
+ type leafref {
+ path "/interface/name";
+ }
+ }
+
+ leaf name {
+ type string;
+ }
+
+ leaf nested-type-leaf {
+ type my-type1;
+ }
+
+ extension c-define {
+ description
+ "Takes as argument a name string.
+ Makes the code generator use the given name in the
+ #define.";
+ argument "name" {
+ yin-element "true";
+ }
+ }
+
+ container system {
+ leaf user {
+ type string;
+ }
+ }
+
+}