module f {
namespace "urn:f";
prefix f_mod;
typedef tdef2 {
type leafref {
path "/refleaf";
}
}
grouping grp1 {
typedef tdef1 {
type leafref {
path "/refleaf";
}
}
leaf leaf1 {
type tdef1;
}
}
uses grp1;
container cont1 {
typedef tdef3 {
type leafref {
path "/refleaf";
}
}
grouping grp2 {
typedef tdef4 {
type leafref {
path "/refleaf";
}
}
leaf leaf4 {
type tdef4;
}
}
leaf leaf2 {
type tdef2;
}
list list1 {
key "key1";
typedef tdef5 {
type leafref {
path "/refleaf";
}
}
leaf key1 {
type string;
}
container cont2 {
leaf leaf5 {
type tdef5;
}
uses grp2;
}
}
leaf leaf3 {
type tdef3;
}
}
leaf refleaf {
type empty;
}
rpc rpc1 {
typedef tdef6 {
type leafref {
path "/refleaf";
}
}
input {
typedef tdef7 {
type leafref {
path "/refleaf";
}
}
leaf leaf6 {
type tdef6;
}
leaf leaf7 {
type tdef7;
}
}
output {
typedef tdef8 {
type leafref {
path "/refleaf";
}
}
leaf leaf8 {
type tdef8;
}
}
}
notification notif1 {
typedef tdef9 {
type leafref {
path "/refleaf";
}
}
leaf leaf9 {
type tdef9;
}
}
}