Reusable Node Group (Grouping)

Groups of nodes can be assembled into reusable collections using the "grouping" statement. A grouping defines a set of nodes that are instantiated using the "uses" statement.

YANG example:

grouping target {
 leaf address {
  type inet:ip-address;
  description "Target IP address";
 }
 leaf port {
  type inet:port-number;
  description "Target port number";
 }
}
container peer {
 container destination {
  uses target;
 }
}

NETCONF XML example:

<peer>
 <destination>
  <address>192.168.2.1</address>
  <port>830</port>
 </destination>
</peer>

The grouping can be refined as it is used, allowing certain statements to be overridden. The following example shows how the description is refined:

container connection {
 container source {
  uses target {
   refine "address" {
    description "Source IP address";
   }
   refine "port" {
    description "Source port number";
   }
  }
 }
 container destination {
  uses target {
   refine "address" {
    description "Destination IP address";
   }
   refine "port" {
    description "Destination port number";
   }
  }
 }
}
Copyright © Huawei Technologies Co., Ltd.
Copyright © Huawei Technologies Co., Ltd.
< Previous topic Next topic >