module simple-types { yang-version 1; namespace "urn:simple.types"; prefix "st"; organization "opendaylight"; contact "WILL-BE-DEFINED-LATER"; revision 2015-04-16; typedef myint8 { type int8 { range "1..20"; } } identity my-base; typedef myint32 { type int32 { range "1..2000"; } } container mycontainer { leaf mynumerical { type int32 { range "1..3000"; } } leaf mynorestrictions { type string; } leaf mytypedefuse1 { type myint32; } leaf mytypedefuse2 { type myint8; } leaf myunion { type union { type int8; type int32; } } leaf mydecimal64 { type decimal64 { fraction-digits 2; range "1 .. 3.14 | 10 | 20..max"; } } leaf mystring { type string { length "1..255"; pattern "[0-9a-fA-F]*"; } } leaf myenum { type enumeration { enum zero; enum one; enum seven { value 7; } } } leaf mybits { type bits { bit disable-nagle { position 0; } bit auto-sense-speed { position 1; } bit onyl-10-Mb { position 2; } } default "auto-sense-speed"; } leaf mgmt-interface { type leafref { path "../myenum"; } } leaf crypto { type identityref { base "my-base"; } } } }