module my-module { yang-version 1; namespace "uri:my-module"; prefix my; import imported-module { prefix imp; revision-date 2014-10-07; } revision 2014-10-07 { description "My yang model"; } grouping my-grouping { container my-container-in-grouping { leaf my-leaf-in-grouping { type int16; } } leaf my-leaf-in-gouping2 { type string; } grouping my-grouping-in-grouping { leaf my-leaf-in-grouping-in-grouping { type string; } } } container my-container { leaf my-leaf-in-container { type int32; } uses my-grouping; list my-list { leaf my-leaf-in-list { type string; } leaf-list my-leaf-list-in-list { type int16; } grouping my-grouping-in-list { leaf my-leaf-in-grouping-in-list { type string; } } } grouping my-grouping-in-container { leaf my-leaf-in-grouping-in-container { type string; } } } rpc my-rpc { input { leaf my-input-leaf { type string; } grouping my-grouping-in-input { leaf my-leaf-in-grouping-in-input { type string; } } } output { leaf my-output-leaf { type int16; } grouping my-grouping-in-output { leaf my-leaf-in-grouping-in-output { type string; } } } grouping my-grouping-in-rpc { leaf my-leaf-in-grouping-in-rpc { type string; } } } notification my-notification { leaf my-notification-leaf { type string; } grouping my-grouping-in-notification { leaf my-leaf-in-grouping-in-notification { type string; } } } choice my-choice { case one { leaf my-choice-leaf-one { type string; } container my-container-in-case { grouping my-grouping-in-case { leaf my-leaf-in-grouping-in-case { type string; } } } } case two { leaf my-choice-leaf-two { type int16; } } } grouping my-name { choice my-choice { case case-one { container one { //empty } } case case-two { container two { //empty } } } } rpc my-name { input { uses my-name; } } }