diff --git a/example-data/nfv.xml b/example-data/nfv.xml
index a956b2b51ebb5f5c36cab9095f918b8eefc8bded..c1c1619b6282ba85e592a9006a306ed1ba22c8a9 100644
--- a/example-data/nfv.xml
+++ b/example-data/nfv.xml
@@ -36,7 +36,7 @@
asa-vsd
- root
+ root-storage
0
@@ -131,7 +131,7 @@
csr-vsd
- root
+ root-storage
0
diff --git a/src/yang/etsi-nfv-common.yang b/src/yang/etsi-nfv-common.yang
index 2f6a69a9329b3a886411cb0e17c6bf6d1763cf20..b50297c35e60814d8f712f957098ffeb43213bb1 100644
--- a/src/yang/etsi-nfv-common.yang
+++ b/src/yang/etsi-nfv-common.yang
@@ -216,7 +216,30 @@ submodule etsi-nfv-common {
reference
"GS NFV IFA011: Section 7.1.6.10 Checksum information element.";
}
-
+
+ identity storage-type {
+ description
+ "Base type of storage that identities can derive from.";
+ }
+
+ identity root-storage {
+ base storage-type;
+ description
+ "Root type of storage.";
+ }
+
+ identity swap-storage {
+ base storage-type;
+ description
+ "Swap type of storage.";
+ }
+
+ identity ephemeral-storage {
+ base storage-type;
+ description
+ "Ephemeral type of storage.";
+ }
+
/*
* Typedefs
*/
diff --git a/src/yang/etsi-nfv-vnf.yang b/src/yang/etsi-nfv-vnf.yang
index 28e81604b242e555174edc0c35932dbccc565928..ed971b948a6241b6153b8dfbf35ada14a2879fbe 100755
--- a/src/yang/etsi-nfv-vnf.yang
+++ b/src/yang/etsi-nfv-vnf.yang
@@ -733,12 +733,10 @@ submodule etsi-nfv-vnf {
leaf type-of-storage {
// Needed to be able to onboard images
- type enumeration {
- enum "root";
- enum "swap";
- enum "ephemeral";
- }
- default "root";
+ default "root-storage";
+ type identityref {
+ base storage-type;
+ }
description
"Type of virtualised storage resource (e.g. volume,
object).";