+ grouping nsd-config-parameter{
+ list config-parameter-map {
+ key "id";
+ description "A mapping of VNF config parameter
+ requests and sources within this network service";
+ leaf id {
+ description "Identfier for VNF map";
+ type string;
+ }
+ container config-parameter-request {
+ leaf member-vnf-index-ref {
+ description "Reference to member-vnf within constituent-vnfds";
+ type leafref {
+ path "../../../nsd:constituent-vnfd/nsd:member-vnf-index";
+ }
+ }
+ leaf vnfd-id-ref {
+ description
+ "A reference to a vnfd.";
+
+ type leafref {
+ path "../../../nsd:constituent-vnfd[nsd:member-vnf-index = current()/../member-vnf-index-ref]/nsd:vnfd-id-ref";
+ }
+ }
+ leaf config-parameter-request-ref {
+ description "Reference to the request in the VNF
+ with the specified member-vnf-index";
+ type leafref {
+ path
+ "/vnfd:vnfd-catalog/vnfd:vnfd[vnfd:id = current()/../vnfd-id-ref]" +
+ "/rwvnfd:config-parameter/rwvnfd:config-parameter-request/rwvnfd:name";
+ }
+ }
+ }
+ container config-parameter-source {
+ leaf member-vnf-index-ref {
+ description "Reference to member-vnf within constituent-vnfds";
+ type leafref {
+ path "../../../nsd:constituent-vnfd/nsd:member-vnf-index";
+ }
+ }
+ leaf vnfd-id-ref {
+ description
+ "A reference to a vnfd.";
+ type leafref {
+ path "../../../nsd:constituent-vnfd[nsd:member-vnf-index = current()/../member-vnf-index-ref]/nsd:vnfd-id-ref";
+ }
+ }
+ leaf config-parameter-source-ref {
+ description "Reference to the source in the VNF
+ with the specified member-vnf-index";
+ type leafref {
+ path
+ "/vnfd:vnfd-catalog/vnfd:vnfd[vnfd:id = current()/../vnfd-id-ref]" +
+ "/rwvnfd:config-parameter/rwvnfd:config-parameter-source/rwvnfd:name";
+ }
+ }
+ }
+ }
+ }
+