+ "List of interfaces (internal and external) for the VNF";
+ key name;
+
+ leaf name {
+ description
+ "Name of the interface. Note that this
+ name has only local significance to the VDU.";
+ type string;
+ }
+
+ leaf position {
+ description
+ "Explicit Position of the interface within the list";
+ type uint32;
+ }
+
+ leaf type {
+ description
+ "Type of the Interface";
+
+ type vnfd-base:interface-type;
+
+ default "EXTERNAL";
+ }
+ choice connection-point-type {
+ case internal {
+ leaf internal-connection-point-ref {
+ description
+ "Leaf Ref to the particular internal connection point";
+ type leafref {
+ path "../../internal-connection-point/id";
+ }
+ }
+ }
+ case external {
+ leaf external-connection-point-ref {
+ description
+ "Leaf Ref to the particular external connection point";
+ type leafref {
+ path "../../../connection-point/name";
+ }
+ }
+ }
+ }
+ uses virtual-interface;