diff --git a/xos/core/models/addresspool.xproto b/xos/core/models/addresspool.xproto
deleted file mode 100644
index e00dbb5..0000000
--- a/xos/core/models/addresspool.xproto
+++ /dev/null
@@ -1,11 +0,0 @@
-
-
-message AddressPool (XOSBase){
-     required string name = 1 [db_index = False, max_length = 32, null = False, blank = False];
-     optional string addresses = 2 [db_index = False, null = True, blank = True];
-     optional string gateway_ip = 3 [db_index = False, max_length = 32, null = True, blank = False];
-     optional string gateway_mac = 4 [db_index = False, max_length = 32, null = True, blank = False];
-     optional string cidr = 5 [db_index = False, max_length = 32, null = True, blank = False];
-     optional string inuse = 6 [db_index = False, null = True, blank = True];
-     optional manytoone service->Service:addresspools = 7 [db_index = True, null = True, blank = True];
-}
diff --git a/xos/core/models/controller.xproto b/xos/core/models/controller.xproto
deleted file mode 100644
index 760ccc5..0000000
--- a/xos/core/models/controller.xproto
+++ /dev/null
@@ -1,16 +0,0 @@
-
-
-message Controller (XOSBase){
-     required string name = 1 [max_length = 200, content_type = "stripped", blank = False, help_text = "Name of the Controller", null = False, db_index = False];
-     required string backend_type = 2 [max_length = 200, content_type = "stripped", blank = False, help_text = "Type of compute controller, e.g. EC2, OpenStack, or OpenStack version", null = False, db_index = False];
-     required string version = 3 [max_length = 200, content_type = "stripped", blank = False, help_text = "Controller version", null = False, db_index = False];
-     optional string auth_url = 4 [max_length = 200, content_type = "stripped", blank = True, help_text = "Auth url for the compute controller", null = True, db_index = False];
-     optional string admin_user = 5 [max_length = 200, content_type = "stripped", blank = True, help_text = "Username of an admin user at this controller", null = True, db_index = False];
-     optional string admin_password = 6 [max_length = 200, content_type = "stripped", blank = True, help_text = "Password of theadmin user at this controller", null = True, db_index = False];
-     optional string admin_tenant = 7 [max_length = 200, content_type = "stripped", blank = True, help_text = "Name of the tenant the admin user belongs to", null = True, db_index = False];
-     optional string domain = 8 [max_length = 200, content_type = "stripped", blank = True, help_text = "Name of the domain this controller belongs to", null = True, db_index = False];
-     optional string rabbit_host = 9 [max_length = 200, content_type = "stripped", blank = True, help_text = "IP address of rabbitmq server at this controller", null = True, db_index = False];
-     optional string rabbit_user = 10 [max_length = 200, content_type = "stripped", blank = True, help_text = "Username of rabbitmq server at this controller", null = True, db_index = False];
-     optional string rabbit_password = 11 [max_length = 200, content_type = "stripped", blank = True, help_text = "Password of rabbitmq server at this controller", null = True, db_index = False];
-     required manytoone deployment->Deployment:controllerdeployments = 12 [db_index = True, null = False, blank = False];
-}
diff --git a/xos/core/models/controllerdashboardview.xproto b/xos/core/models/controllerdashboardview.xproto
deleted file mode 100644
index ff84b95..0000000
--- a/xos/core/models/controllerdashboardview.xproto
+++ /dev/null
@@ -1,8 +0,0 @@
-
-
-message ControllerDashboardView (XOSBase){
-     required manytoone controller->Controller:controllerdashboardviews = 1 [db_index = True, null = False, blank = False];
-     required manytoone dashboardView->DashboardView:controllerdashboardviews = 2 [db_index = True, null = False, blank = False];
-     required bool enabled = 3 [default = True, null = False, db_index = False, blank = True];
-     required string url = 4 [max_length = 1024, content_type = "stripped", blank = False, help_text = "URL of Dashboard", null = False, db_index = False];
-}
diff --git a/xos/core/models/controllerimages.xproto b/xos/core/models/controllerimages.xproto
deleted file mode 100644
index aae8361..0000000
--- a/xos/core/models/controllerimages.xproto
+++ /dev/null
@@ -1,7 +0,0 @@
-
-
-message ControllerImages (XOSBase){
-     required manytoone image->Image:controllerimages = 1 [db_index = True, null = False, blank = False];
-     required manytoone controller->Controller:controllerimages = 2 [db_index = True, null = False, blank = False];
-     optional string glance_image_id = 3 [max_length = 200, content_type = "stripped", blank = True, help_text = "Glance image id", null = True, db_index = False];
-}
diff --git a/xos/core/models/controllernetwork.xproto b/xos/core/models/controllernetwork.xproto
deleted file mode 100644
index e6d2ef4..0000000
--- a/xos/core/models/controllernetwork.xproto
+++ /dev/null
@@ -1,14 +0,0 @@
-
-
-message ControllerNetwork (XOSBase){
-     required manytoone network->Network:controllernetworks = 1 [db_index = True, null = False, blank = False];
-     required manytoone controller->Controller:controllernetworks = 2 [db_index = True, null = False, blank = False];
-     required string subnet = 3 [db_index = False, max_length = 32, null = False, blank = True];
-     required string start_ip = 4 [db_index = False, max_length = 32, null = False, blank = True];
-     required string stop_ip = 5 [db_index = False, max_length = 32, null = False, blank = True];
-     optional string net_id = 6 [help_text = "Neutron network", max_length = 256, null = True, db_index = False, blank = True];
-     optional string router_id = 7 [help_text = "Neutron router id", max_length = 256, null = True, db_index = False, blank = True];
-     optional string subnet_id = 8 [help_text = "Neutron subnet id", max_length = 256, null = True, db_index = False, blank = True];
-     optional string gateway = 9 [db_index = False, max_length = 32, null = True, blank = True];
-     optional string segmentation_id = 10 [db_index = False, max_length = 32, null = True, blank = True];
-}
diff --git a/xos/core/models/controllerrole.xproto b/xos/core/models/controllerrole.xproto
deleted file mode 100644
index e2b586c..0000000
--- a/xos/core/models/controllerrole.xproto
+++ /dev/null
@@ -1,5 +0,0 @@
-
-
-message ControllerRole (XOSBase){
-     required string role = 1 [choices = "(('admin', 'Admin'),)", max_length = 30, content_type = "stripped", blank = False, null = False, db_index = False];
-}
diff --git a/xos/core/models/controllersite.xproto b/xos/core/models/controllersite.xproto
deleted file mode 100644
index c092629..0000000
--- a/xos/core/models/controllersite.xproto
+++ /dev/null
@@ -1,7 +0,0 @@
-
-
-message ControllerSite (XOSBase){
-     required manytoone site->Site:controllersite = 1 [db_index = True, null = False, blank = False];
-     optional manytoone controller->Controller:controllersite = 2 [db_index = True, null = True, blank = True];
-     optional string tenant_id = 3 [max_length = 200, content_type = "stripped", blank = True, help_text = "Keystone tenant id", null = True, db_index = True];
-}
diff --git a/xos/core/models/controllersiteprivilege.xproto b/xos/core/models/controllersiteprivilege.xproto
deleted file mode 100644
index 0bfd962..0000000
--- a/xos/core/models/controllersiteprivilege.xproto
+++ /dev/null
@@ -1,7 +0,0 @@
-
-
-message ControllerSitePrivilege (XOSBase){
-     required manytoone controller->Controller:controllersiteprivileges = 1 [db_index = True, null = False, blank = False];
-     required manytoone site_privilege->SitePrivilege:controllersiteprivileges = 2 [db_index = True, null = False, blank = False];
-     optional string role_id = 3 [max_length = 200, content_type = "stripped", blank = True, help_text = "Keystone id", null = True, db_index = True];
-}
diff --git a/xos/core/models/controllerslice.xproto b/xos/core/models/controllerslice.xproto
deleted file mode 100644
index 022835a..0000000
--- a/xos/core/models/controllerslice.xproto
+++ /dev/null
@@ -1,7 +0,0 @@
-
-
-message ControllerSlice (XOSBase){
-     required manytoone controller->Controller:controllerslices = 1 [db_index = True, null = False, blank = False];
-     required manytoone slice->Slice:controllerslices = 2 [db_index = True, null = False, blank = False];
-     optional string tenant_id = 3 [max_length = 200, content_type = "stripped", blank = True, help_text = "Keystone tenant id", null = True, db_index = False];
-}
diff --git a/xos/core/models/controllersliceprivilege.xproto b/xos/core/models/controllersliceprivilege.xproto
deleted file mode 100644
index 5895519..0000000
--- a/xos/core/models/controllersliceprivilege.xproto
+++ /dev/null
@@ -1,7 +0,0 @@
-
-
-message ControllerSlicePrivilege (XOSBase){
-     required manytoone controller->Controller:controllersliceprivileges = 1 [db_index = True, null = False, blank = False];
-     required manytoone slice_privilege->SlicePrivilege:controllersliceprivileges = 2 [db_index = True, null = False, blank = False];
-     optional string role_id = 3 [max_length = 200, content_type = "stripped", blank = True, help_text = "Keystone id", null = True, db_index = True];
-}
diff --git a/xos/core/models/controlleruser.xproto b/xos/core/models/controlleruser.xproto
deleted file mode 100644
index 14737eb..0000000
--- a/xos/core/models/controlleruser.xproto
+++ /dev/null
@@ -1,7 +0,0 @@
-
-
-message ControllerUser (XOSBase){
-     required manytoone user->User:controllerusers = 1 [db_index = True, null = False, blank = False];
-     required manytoone controller->Controller:controllersusers = 2 [db_index = True, null = False, blank = False];
-     optional string kuser_id = 3 [max_length = 200, content_type = "stripped", blank = True, help_text = "Keystone user id", null = True, db_index = False];
-}
diff --git a/xos/core/models/core.xproto b/xos/core/models/core.xproto
new file mode 100644
index 0000000..ef0cce7
--- /dev/null
+++ b/xos/core/models/core.xproto
@@ -0,0 +1,451 @@
+message XOSBase {
+     option skip = True;
+     required string created = 1 [content_type = "date", auto_now_add = True];
+     required string updated = 2 [default = "now()", content_type = "date"];
+     optional string enacted = 3 [null = True, content_type = "date", blank = True, default = None];
+     optional string policed = 4 [null = True, content_type = "date", blank = True, default = None];
+     optional string backend_register = 5 [default = "{}", max_length = 1024, null = True];
+     required bool backend_need_delete = 6 [default = False];
+     required bool backend_need_reap = 7 [default = False];
+     required string backend_status = 8 [default = "0 - Provisioning in progress", max_length = 1024];
+     required bool deleted = 9 [default = False];
+     required bool write_protect = 10 [default = False];
+     required bool lazy_blocked = 11 [default = False];
+     required bool no_sync = 12 [default = False];
+     required bool no_policy = 13 [default = False];
+}
+
+message AddressPool (XOSBase) {
+     required string name = 1 [db_index = False, max_length = 32, null = False, blank = False];
+     optional string addresses = 2 [db_index = False, null = True, blank = True];
+     optional string gateway_ip = 3 [db_index = False, max_length = 32, null = True, blank = False];
+     optional string gateway_mac = 4 [db_index = False, max_length = 32, null = True, blank = False];
+     optional string cidr = 5 [db_index = False, max_length = 32, null = True, blank = False];
+     optional string inuse = 6 [db_index = False, null = True, blank = True];
+     optional manytoone service->Service:addresspools = 7 [db_index = True, null = True, blank = True];
+}
+
+
+message Controller (XOSBase) {
+     required string name = 1 [max_length = 200, content_type = "stripped", blank = False, help_text = "Name of the Controller", null = False, db_index = False];
+     required string backend_type = 2 [max_length = 200, content_type = "stripped", blank = False, help_text = "Type of compute controller, e.g. EC2, OpenStack, or OpenStack version", null = False, db_index = False];
+     required string version = 3 [max_length = 200, content_type = "stripped", blank = False, help_text = "Controller version", null = False, db_index = False];
+     optional string auth_url = 4 [max_length = 200, content_type = "stripped", blank = True, help_text = "Auth url for the compute controller", null = True, db_index = False];
+     optional string admin_user = 5 [max_length = 200, content_type = "stripped", blank = True, help_text = "Username of an admin user at this controller", null = True, db_index = False];
+     optional string admin_password = 6 [max_length = 200, content_type = "stripped", blank = True, help_text = "Password of theadmin user at this controller", null = True, db_index = False];
+     optional string admin_tenant = 7 [max_length = 200, content_type = "stripped", blank = True, help_text = "Name of the tenant the admin user belongs to", null = True, db_index = False];
+     optional string domain = 8 [max_length = 200, content_type = "stripped", blank = True, help_text = "Name of the domain this controller belongs to", null = True, db_index = False];
+     optional string rabbit_host = 9 [max_length = 200, content_type = "stripped", blank = True, help_text = "IP address of rabbitmq server at this controller", null = True, db_index = False];
+     optional string rabbit_user = 10 [max_length = 200, content_type = "stripped", blank = True, help_text = "Username of rabbitmq server at this controller", null = True, db_index = False];
+     optional string rabbit_password = 11 [max_length = 200, content_type = "stripped", blank = True, help_text = "Password of rabbitmq server at this controller", null = True, db_index = False];
+     required manytoone deployment->Deployment:controllerdeployments = 12 [db_index = True, null = False, blank = False];
+}
+
+
+message ControllerDashboardView (XOSBase) {
+     required manytoone controller->Controller:controllerdashboardviews = 1 [db_index = True, null = False, blank = False];
+     required manytoone dashboardView->DashboardView:controllerdashboardviews = 2 [db_index = True, null = False, blank = False];
+     required bool enabled = 3 [default = True, null = False, db_index = False, blank = True];
+     required string url = 4 [max_length = 1024, content_type = "stripped", blank = False, help_text = "URL of Dashboard", null = False, db_index = False];
+}
+
+
+message ControllerImages (XOSBase) {
+     required manytoone image->Image:controllerimages = 1 [db_index = True, null = False, blank = False];
+     required manytoone controller->Controller:controllerimages = 2 [db_index = True, null = False, blank = False];
+     optional string glance_image_id = 3 [max_length = 200, content_type = "stripped", blank = True, help_text = "Glance image id", null = True, db_index = False];
+}
+
+
+message ControllerNetwork (XOSBase) {
+     required manytoone network->Network:controllernetworks = 1 [db_index = True, null = False, blank = False];
+     required manytoone controller->Controller:controllernetworks = 2 [db_index = True, null = False, blank = False];
+     required string subnet = 3 [db_index = False, max_length = 32, null = False, blank = True];
+     required string start_ip = 4 [db_index = False, max_length = 32, null = False, blank = True];
+     required string stop_ip = 5 [db_index = False, max_length = 32, null = False, blank = True];
+     optional string net_id = 6 [help_text = "Neutron network", max_length = 256, null = True, db_index = False, blank = True];
+     optional string router_id = 7 [help_text = "Neutron router id", max_length = 256, null = True, db_index = False, blank = True];
+     optional string subnet_id = 8 [help_text = "Neutron subnet id", max_length = 256, null = True, db_index = False, blank = True];
+     optional string gateway = 9 [db_index = False, max_length = 32, null = True, blank = True];
+     optional string segmentation_id = 10 [db_index = False, max_length = 32, null = True, blank = True];
+}
+
+
+message ControllerRole (XOSBase) {
+     required string role = 1 [choices = "(('admin', 'Admin'),)", max_length = 30, content_type = "stripped", blank = False, null = False, db_index = False];
+}
+
+
+message ControllerSite (XOSBase) {
+     required manytoone site->Site:controllersite = 1 [db_index = True, null = False, blank = False];
+     optional manytoone controller->Controller:controllersite = 2 [db_index = True, null = True, blank = True];
+     optional string tenant_id = 3 [max_length = 200, content_type = "stripped", blank = True, help_text = "Keystone tenant id", null = True, db_index = True];
+}
+
+
+message ControllerSitePrivilege (XOSBase) {
+     required manytoone controller->Controller:controllersiteprivileges = 1 [db_index = True, null = False, blank = False];
+     required manytoone site_privilege->SitePrivilege:controllersiteprivileges = 2 [db_index = True, null = False, blank = False];
+     optional string role_id = 3 [max_length = 200, content_type = "stripped", blank = True, help_text = "Keystone id", null = True, db_index = True];
+}
+
+
+message ControllerSlice (XOSBase) {
+     required manytoone controller->Controller:controllerslices = 1 [db_index = True, null = False, blank = False];
+     required manytoone slice->Slice:controllerslices = 2 [db_index = True, null = False, blank = False];
+     optional string tenant_id = 3 [max_length = 200, content_type = "stripped", blank = True, help_text = "Keystone tenant id", null = True, db_index = False];
+}
+
+
+message ControllerSlicePrivilege (XOSBase) {
+     required manytoone controller->Controller:controllersliceprivileges = 1 [db_index = True, null = False, blank = False];
+     required manytoone slice_privilege->SlicePrivilege:controllersliceprivileges = 2 [db_index = True, null = False, blank = False];
+     optional string role_id = 3 [max_length = 200, content_type = "stripped", blank = True, help_text = "Keystone id", null = True, db_index = True];
+}
+
+
+message ControllerUser (XOSBase) {
+     required manytoone user->User:controllerusers = 1 [db_index = True, null = False, blank = False];
+     required manytoone controller->Controller:controllersusers = 2 [db_index = True, null = False, blank = False];
+     optional string kuser_id = 3 [max_length = 200, content_type = "stripped", blank = True, help_text = "Keystone user id", null = True, db_index = False];
+}
+
+
+message DashboardView (XOSBase) {
+     required string name = 1 [max_length = 200, content_type = "stripped", blank = False, help_text = "Name of the View", null = False, db_index = False];
+     required string url = 2 [max_length = 1024, content_type = "stripped", blank = False, help_text = "URL of Dashboard", null = False, db_index = False];
+     required bool enabled = 3 [default = True, null = False, db_index = False, blank = True];
+     required string icon = 4 [default = "default-icon.png", max_length = 200, blank = False, help_text = "Icon for Dashboard", null = False, db_index = False];
+     required string icon_active = 5 [default = "default-icon-active.png", max_length = 200, blank = False, help_text = "Icon for active Dashboard", null = False, db_index = False];
+     required manytomany controllers->Controller/ControllerDashboardView:dashboardviews = 6 [db_index = False, null = False, blank = True];
+     required manytomany deployments->Deployment/DashboardView_deployments:dashboardviews = 7 [help_text = "Deployments that should be included in this view", null = False, db_index = False, blank = True];
+}
+
+
+message Deployment (XOSBase) {
+     required string name = 1 [max_length = 200, content_type = "stripped", blank = False, help_text = "Name of the Deployment", null = False, db_index = False];
+     required string accessControl = 2 [default = "allow all", max_length = 200, blank = False, help_text = "Access control list that specifies which sites/users may use nodes in this deployment", null = False, db_index = False];
+}
+
+
+message DeploymentPrivilege (XOSBase) {
+     required manytoone user->User:deploymentprivileges = 1 [db_index = True, null = False, blank = False];
+     required manytoone deployment->Deployment:deploymentprivileges = 2 [db_index = True, null = False, blank = False];
+     required manytoone role->DeploymentRole:deploymentprivileges = 3 [db_index = True, null = False, blank = False];
+}
+
+
+message DeploymentRole (XOSBase) {
+     required string role = 1 [choices = "(('admin', 'Admin'),)", max_length = 30, content_type = "stripped", blank = False, null = False, db_index = False];
+}
+
+
+message Diag (XOSBase) {
+     required string name = 1 [max_length = 200, content_type = "stripped", blank = False, help_text = "Name of the synchronizer", null = False, db_index = False];
+}
+
+
+message Flavor (XOSBase) {
+     required string name = 1 [max_length = 32, content_type = "stripped", blank = False, help_text = "name of this flavor, as displayed to users", null = False, db_index = False];
+     optional string description = 2 [db_index = False, max_length = 1024, null = True, content_type = "stripped", blank = True];
+     required string flavor = 3 [max_length = 32, content_type = "stripped", blank = False, help_text = "flavor string used to configure deployments", null = False, db_index = False];
+     required manytomany deployments->Deployment/DashboardView_deployments:flavors = 6 [db_index = False, null = False, blank = True];
+}
+
+
+message Image (XOSBase) {
+     required string name = 1 [db_index = False, max_length = 256, null = False, content_type = "stripped", blank = False];
+     required string kind = 2 [default = "vm", choices = "(('vm', 'Virtual Machine'), ('container', 'Container'))", max_length = 30, blank = False, null = False, db_index = False];
+     required string disk_format = 3 [db_index = False, max_length = 256, null = False, content_type = "stripped", blank = False];
+     required string container_format = 4 [db_index = False, max_length = 256, null = False, content_type = "stripped", blank = False];
+     optional string path = 5 [max_length = 256, content_type = "stripped", blank = True, help_text = "Path to image on local disk", null = True, db_index = False];
+     optional string tag = 6 [max_length = 256, content_type = "stripped", blank = True, help_text = "For Docker Images, tag of image", null = True, db_index = False];
+     required manytomany deployments->Deployment/ImageDeployments:images = 7 [help_text = "Select which images should be instantiated on this deployment", null = False, db_index = False, blank = True];
+}
+
+
+message ImageDeployments (XOSBase) {
+     required manytoone image->Image:imagedeployments = 1 [db_index = True, null = False, blank = False];
+     required manytoone deployment->Deployment:imagedeployments = 2 [db_index = True, null = False, blank = False];
+}
+
+
+message Instance (XOSBase) {
+     optional string instance_id = 1 [max_length = 200, content_type = "stripped", blank = True, help_text = "Nova instance id", null = True, db_index = False];
+     optional string instance_uuid = 2 [max_length = 200, content_type = "stripped", blank = True, help_text = "Nova instance uuid", null = True, db_index = False];
+     required string name = 3 [max_length = 200, content_type = "stripped", blank = False, help_text = "Instance name", null = False, db_index = False];
+     optional string instance_name = 4 [max_length = 200, content_type = "stripped", blank = True, help_text = "OpenStack generated name", null = True, db_index = False];
+     optional string ip = 5 [max_length = 39, content_type = "ip", blank = True, help_text = "Instance ip address", null = True, db_index = False];
+     required manytoone image->Image:instances = 6 [db_index = True, null = False, blank = False];
+     optional manytoone creator->User:instances = 7 [db_index = True, null = True, blank = True];
+     required manytoone slice->Slice:instances = 8 [db_index = True, null = False, blank = False];
+     required manytoone deployment->Deployment:instance_deployment = 9 [db_index = True, null = False, blank = False];
+     required manytoone node->Node:instances = 10 [db_index = True, null = False, blank = False];
+     required int32 numberCores = 11 [help_text = "Number of cores for instance", default = 0, null = False, db_index = False, blank = False];
+     required manytoone flavor->Flavor:instance = 12 [help_text = "Flavor of this instance", null = False, db_index = True, blank = False];
+     optional string userData = 13 [help_text = "user_data passed to instance during creation", null = True, db_index = False, blank = True];
+     required string isolation = 14 [default = "vm", choices = "(('vm', 'Virtual Machine'), ('container', 'Container'), ('container_vm', 'Container In VM'))", max_length = 30, blank = False, null = False, db_index = False];
+     optional string volumes = 15 [help_text = "Comma-separated list of directories to expose to parent context", null = True, db_index = False, blank = True];
+     optional manytoone parent->Instance:instance = 16 [help_text = "Parent Instance for containers nested inside of VMs", null = True, db_index = True, blank = True];
+}
+message Network (XOSBase) {
+     required string name = 1 [db_index = False, max_length = 32, null = False, blank = False];
+     required manytoone template->NetworkTemplate:network = 2 [db_index = True, null = False, blank = False];
+     required string subnet = 3 [db_index = False, max_length = 32, null = False, blank = True];
+     required string start_ip = 4 [db_index = False, max_length = 32, null = False, blank = True];
+     required string end_ip = 5 [db_index = False, max_length = 32, null = False, blank = True];
+     optional string ports = 6 [db_index = False, max_length = 1024, null = True, blank = True];
+     optional string labels = 7 [db_index = False, max_length = 1024, null = True, blank = True];
+     required manytoone owner->Slice:ownedNetworks = 8 [help_text = "Slice that owns control of this Network", null = False, db_index = True, blank = False];
+     required bool permit_all_slices = 10 [default = False, null = False, db_index = False, blank = True];
+     required bool autoconnect = 17 [help_text = "This network can be autoconnected to the slice that owns it", default = True, null = False, db_index = False, blank = True];
+     required manytomany permitted_slices->Slice/Network_permitted_slices:availableNetworks = 18 [db_index = False, null = False, blank = True];
+     required manytomany slices->Slice/NetworkSlice:networks = 19 [db_index = False, null = False, blank = True];
+     required manytomany instances->Instance/Port:networks = 20 [db_index = False, null = False, blank = True];
+}
+
+
+message NetworkParameter (XOSBase) {
+     required manytoone parameter->NetworkParameterType:networkparameters = 1 [help_text = "The type of the parameter", null = False, db_index = True, blank = False];
+     required string value = 2 [help_text = "The value of this parameter", max_length = 1024, null = False, db_index = False, blank = False];
+     required string content_type = 4 [max_length = 1024, content_type = "stripped", blank = False, help_text = "Content type id linked to this network parameter", null = False, db_index = False];
+     required uint32 object_id = 4 [db_index = False, null = False, blank = False, help_text = "Object linked to this NetworkParameter"];
+}
+
+
+message NetworkParameterType (XOSBase) {
+     required string name = 1 [help_text = "The name of this parameter", max_length = 128, null = False, db_index = True, blank = False];
+     required string description = 2 [db_index = False, max_length = 1024, null = False, blank = False];
+}
+
+
+message NetworkSlice (XOSBase) {
+     required manytoone network->Network:networkslices = 1 [db_index = True, null = False, blank = False];
+     required manytoone slice->Slice:networkslices = 2 [db_index = True, null = False, blank = False];
+}
+message NetworkTemplate (XOSBase) {
+     required string name = 1 [db_index = False, max_length = 32, null = False, blank = False];
+     optional string description = 2 [db_index = False, max_length = 1024, null = True, blank = True];
+     required string visibility = 4 [default = "private", choices = "(('public', 'public'), ('private', 'private'))", max_length = 30, blank = False, null = False, db_index = False];
+     required string translation = 5 [default = "none", choices = "(('none', 'none'), ('NAT', 'NAT'))", max_length = 30, blank = False, null = False, db_index = False];
+     optional string access = 6 [choices = "((None, 'None'), ('indirect', 'Indirect'), ('direct', 'Direct'))", max_length = 30, blank = True, help_text = "Advertise this network as a means for other slices to contact this slice", null = True, db_index = False];
+     optional string shared_network_name = 7 [db_index = False, max_length = 30, null = True, blank = True];
+     optional string shared_network_id = 8 [help_text = "Quantum network", max_length = 256, null = True, db_index = False, blank = True];
+     required string topology_kind = 9 [default = "bigswitch", choices = "(('bigswitch', 'BigSwitch'), ('physical', 'Physical'), ('custom', 'Custom'))", max_length = 30, blank = False, null = False, db_index = False];
+     optional string controller_kind = 10 [blank = True, max_length = 30, null = True, db_index = False, choices = "((None, 'None'), ('onos', 'ONOS'), ('custom', 'Custom'))"];
+     optional string vtn_kind = 11 [default = "PRIVATE", choices = "(('PRIVATE', 'Private'), ('PUBLIC', 'Public'), ('MANAGEMENT_LOCAL', 'Management Local'), ('MANAGEMENT_HOST', 'Management Host'), ('VSG', 'VSG'), ('ACCESS_AGENT', 'Access Agent'))", max_length = 30, blank = True, null = True, db_index = False];
+}
+message Node (XOSBase) {
+     required string name = 1 [max_length = 200, content_type = "stripped", blank = False, help_text = "Name of the Node", null = False, db_index = False];
+     required manytoone site_deployment->SiteDeployment:nodes = 2 [db_index = True, null = False, blank = False];
+}
+message NodeLabel (XOSBase) {
+     required string name = 1 [max_length = 200, content_type = "stripped", blank = False, help_text = "label name", null = False, db_index = False];
+     required manytomany node->Node/NodeLabel_node:nodelabels = 2 [db_index = False, null = False, blank = True];
+}
+message Port (XOSBase) {
+     required manytoone network->Network:links = 1 [db_index = True, null = False, blank = False];
+     optional manytoone instance->Instance:ports = 2 [db_index = True, null = True, blank = True];
+     optional string ip = 3 [max_length = 39, content_type = "ip", blank = True, help_text = "Instance ip address", null = True, db_index = False];
+     optional string port_id = 4 [help_text = "Neutron port id", max_length = 256, null = True, db_index = False, blank = True];
+     optional string mac = 5 [help_text = "MAC address associated with this port", max_length = 256, null = True, db_index = False, blank = True];
+     required bool xos_created = 6 [default = False, null = False, db_index = False, blank = True];
+}
+
+
+message Role (XOSBase) {
+     required string role_type = 1 [db_index = False, max_length = 80, null = False, content_type = "stripped", blank = False];
+     optional string role = 2 [db_index = False, max_length = 80, null = True, content_type = "stripped", blank = True];
+     required string description = 3 [db_index = False, max_length = 120, null = False, content_type = "stripped", blank = False];
+}
+
+
+message Service (XOSBase,AttributeMixin) {
+     optional string description = 1 [help_text = "Description of Service", max_length = 254, null = True, db_index = False, blank = True];
+     required bool enabled = 2 [default = True, null = False, db_index = False, blank = True];
+     required string kind = 3 [default = "generic", max_length = 30, content_type = "stripped", blank = False, help_text = "Kind of service", null = False, db_index = False];
+     required string name = 4 [max_length = 30, content_type = "stripped", blank = False, help_text = "Service Name", null = False, db_index = False];
+     optional string versionNumber = 5 [max_length = 30, content_type = "stripped", blank = True, help_text = "Version of Service Definition", null = True, db_index = False];
+     required bool published = 6 [default = True, null = False, db_index = False, blank = True];
+     optional string view_url = 7 [db_index = False, max_length = 1024, null = True, content_type = "stripped", blank = True];
+     optional string icon_url = 8 [db_index = False, max_length = 1024, null = True, content_type = "stripped", blank = True];
+     optional string public_key = 9 [help_text = "Public key string", max_length = 1024, null = True, db_index = False, blank = True];
+     optional string private_key_fn = 10 [db_index = False, max_length = 1024, null = True, content_type = "stripped", blank = True];
+     optional string service_specific_id = 11 [db_index = False, max_length = 30, null = True, content_type = "stripped", blank = True];
+     optional string service_specific_attribute = 12 [db_index = False, null = True, blank = True];
+}
+
+
+message ServiceAttribute (XOSBase) {
+     required string name = 1 [help_text = "Attribute Name", max_length = 128, null = False, db_index = False, blank = False];
+     required string value = 2 [help_text = "Attribute Value", null = False, db_index = False, blank = False];
+     required manytoone service->Service:serviceattributes = 3 [help_text = "The Service this attribute is associated with", null = False, db_index = True, blank = False];
+}
+
+
+message ServiceDependency (Tenant) {
+}
+
+
+message ServiceMonitoringAgentInfo (XOSBase) {
+     required string name = 1 [help_text = "Monitoring Agent Name", max_length = 128, null = False, db_index = False, blank = False];
+     optional manytoone service->Service:servicemonitoringagents = 2 [help_text = "The Service this attribute is associated with", null = True, db_index = True, blank = True];
+     required string target_uri = 3 [help_text = "Monitoring collector URI to be used by agents to publish the data", null = False, db_index = False, blank = False];
+}
+
+
+message ServicePrivilege (XOSBase) {
+     required manytoone user->User:serviceprivileges = 1 [db_index = True, null = False, blank = False];
+     required manytoone service->Service:serviceprivileges = 2 [db_index = True, null = False, blank = False];
+     required manytoone role->ServiceRole:serviceprivileges = 3 [db_index = True, null = False, blank = False];
+}
+
+
+message ServiceRole (XOSBase) {
+     required string role = 1 [choices = "(('admin', 'Admin'),)", max_length = 30, content_type = "stripped", blank = False, null = False, db_index = False];
+}
+
+
+message Site (XOSBase) {
+     required string name = 1 [max_length = 200, content_type = "stripped", blank = False, help_text = "Name for this Site", null = False, db_index = False];
+     optional string site_url = 2 [max_length = 512, content_type = "url", blank = True, help_text = "Site's Home URL Page", null = True, db_index = False];
+     required bool enabled = 3 [help_text = "Status for this Site", default = True, null = False, db_index = False, blank = True];
+     required bool hosts_nodes = 4 [help_text = "Indicates whether or not the site host nodes", default = True, null = False, db_index = False, blank = True];
+     required bool hosts_users = 5 [help_text = "Indicates whether or not the site manages user accounts", default = True, null = False, db_index = False, blank = True];
+     optional float longitude = 6 [db_index = False, null = True, blank = True];
+     optional float latitude = 7 [db_index = False, null = True, blank = True];
+     required string login_base = 8 [max_length = 50, content_type = "stripped", blank = False, help_text = "Prefix for Slices associated with this Site", null = False, db_index = False];
+     required bool is_public = 9 [help_text = "Indicates the visibility of this site to other members", default = True, null = False, db_index = False, blank = True];
+     required string abbreviated_name = 10 [db_index = False, max_length = 80, null = False, content_type = "stripped", blank = False];
+     required manytomany deployments->Deployment/SiteDeployment:sites = 11 [help_text = "Select which sites are allowed to host nodes in this deployment", null = False, db_index = False, blank = True];
+}
+
+
+message SiteDeployment (XOSBase) {
+     required manytoone site->Site:sitedeployments = 1 [db_index = True, null = False, blank = False];
+     required manytoone deployment->Deployment:sitedeployments = 2 [db_index = True, null = False, blank = False];
+     optional manytoone controller->Controller:sitedeployments = 3 [db_index = True, null = True, blank = True];
+     optional string availability_zone = 4 [max_length = 200, content_type = "stripped", blank = True, help_text = "OpenStack availability zone", null = True, db_index = False];
+}
+
+
+message SitePrivilege (XOSBase) {
+     required manytoone user->User:siteprivileges = 1 [db_index = True, null = False, blank = False];
+     required manytoone site->Site:siteprivileges = 2 [db_index = True, null = False, blank = False];
+     required manytoone role->SiteRole:siteprivileges = 3 [db_index = True, null = False, blank = False];
+}
+
+
+message SiteRole (XOSBase) {
+     required string role = 1 [choices = "(('admin', 'Admin'), ('pi', 'PI'), ('tech', 'Tech'), ('billing', 'Billing'))", max_length = 30, content_type = "stripped", blank = False, null = False, db_index = False];
+}
+message Slice (XOSBase) {
+     required string name = 1 [max_length = 80, content_type = "stripped", blank = False, help_text = "The Name of the Slice", null = False, db_index = False];
+     required bool enabled = 2 [help_text = "Status for this Slice", default = True, null = False, db_index = False, blank = True];
+     required string description = 4 [help_text = "High level description of the slice and expected activities", max_length = 1024, null = False, db_index = False, blank = True];
+     required string slice_url = 5 [db_index = False, max_length = 512, null = False, content_type = "url", blank = True];
+     required manytoone site->Site:slices = 6 [help_text = "The Site this Slice belongs to", null = False, db_index = True, blank = False];
+     required int32 max_instances = 7 [default = 10, null = False, db_index = False, blank = False];
+     optional manytoone service->Service:slices = 8 [db_index = True, null = True, blank = True];
+     optional string network = 9 [blank = True, max_length = 256, null = True, db_index = False, choices = "((None, 'Default'), ('host', 'Host'), ('bridged', 'Bridged'), ('noauto', 'No Automatic Networks'))"];
+     optional string exposed_ports = 10 [db_index = False, max_length = 256, null = True, blank = True];
+     optional manytoone creator->User:slices = 12 [db_index = True, null = True, blank = True];
+     optional manytoone default_flavor->Flavor:slices = 13 [db_index = True, null = True, blank = True];
+     optional manytoone default_image->Image:slices = 14 [db_index = True, null = True, blank = True];
+     optional manytoone default_node->Node:slices = 15 [db_index = True, null = True, blank = True];
+     optional string mount_data_sets = 16 [default = "GenBank", max_length = 256, content_type = "stripped", blank = True, null = True, db_index = False];
+     required string default_isolation = 17 [default = "vm", choices = "(('vm', 'Virtual Machine'), ('container', 'Container'), ('container_vm', 'Container In VM'))", max_length = 30, blank = False, null = False, db_index = False];
+}
+
+
+message SlicePrivilege (XOSBase) {
+     required manytoone user->User:sliceprivileges = 1 [db_index = True, null = False, blank = False];
+     required manytoone slice->Slice:sliceprivileges = 2 [db_index = True, null = False, blank = False];
+     required manytoone role->SliceRole:sliceprivileges = 3 [db_index = True, null = False, blank = False];
+}
+
+
+message SliceRole (XOSBase) {
+     required string role = 1 [choices = "(('admin', 'Admin'), ('default', 'Default'))", max_length = 30, content_type = "stripped", blank = False, null = False, db_index = False];
+}
+
+
+message Tag (XOSBase) {
+     required manytoone service->Service:tags = 1 [help_text = "The Service this Tag is associated with", null = False, db_index = True, blank = False];
+     required string name = 2 [help_text = "The name of this tag", max_length = 128, null = False, db_index = True, blank = False];
+     required string value = 3 [max_length = 1024, content_type = "stripped", blank = False, help_text = "The value of this tag", null = False, db_index = False];
+     required string content_type = 4 [max_length = 1024, content_type = "stripped", blank = False, help_text = "Content type id linked to this tag", null = False, db_index = False];
+     required uint32 object_id = 5 [db_index = False, null = False, blank = False, help_text = "Object linked to this tag"];
+}
+
+
+message Tenant (XOSBase,AttributeMixin) {
+     optional string name = 1 [db_index = False, max_length = 200, null = True, content_type = "stripped", blank = True];
+     required string kind = 2 [default = "generic", max_length = 30, content_type = "stripped", blank = False, null = False, db_index = False];
+     required manytoone provider_service->Service:provided_tenants = 3 [db_index = True, null = False, blank = False];
+     optional manytoone subscriber_service->Service:subscribed_tenants = 4 [db_index = True, null = True, blank = True];
+     optional manytoone subscriber_tenant->Tenant:subscribed_tenants = 5 [db_index = True, null = True, blank = True];
+     optional manytoone subscriber_user->User:subscribed_tenants = 6 [db_index = True, null = True, blank = True];
+     optional manytoone subscriber_root->TenantRoot:subscribed_tenants = 7 [db_index = True, null = True, blank = True];
+     optional manytoone subscriber_network->Network:subscribed_tenants = 8 [db_index = True, null = True, blank = True];
+     optional string service_specific_id = 9 [db_index = False, max_length = 30, null = True, content_type = "stripped", blank = True];
+     optional string service_specific_attribute = 10 [db_index = False, null = True, blank = True];
+     required string connect_method = 11 [default = "na", choices = "(('public', 'Public'), ('private', 'Private'), ('private-unidirectional', 'Private Unidirectional'), ('na', 'Not Applicable'))", max_length = 30, blank = False, null = False, db_index = False];
+}
+
+
+message TenantAttribute (XOSBase) {
+     required string name = 1 [help_text = "Attribute Name", max_length = 128, null = False, db_index = False, blank = False];
+     required string value = 2 [help_text = "Attribute Value", null = False, db_index = False, blank = False];
+     required manytoone tenant->Tenant:tenantattributes = 3 [help_text = "The Tenant this attribute is associated with", null = False, db_index = True, blank = False];
+}
+
+
+message TenantPrivilege (XOSBase) {
+     required manytoone user->User:tenantprivileges = 1 [db_index = True, null = False, blank = False];
+     required manytoone tenant->Tenant:tenantprivileges = 2 [db_index = True, null = False, blank = False];
+     required manytoone role->TenantRole:tenantprivileges = 3 [db_index = True, null = False, blank = False];
+}
+
+
+message TenantRole (XOSBase) {
+     required string role = 1 [choices = "(('admin', 'Admin'), ('access', 'Access'))", max_length = 30, content_type = "stripped", blank = False, null = False, db_index = False];
+}
+
+
+message TenantRoot (XOSBase,AttributeMixin) {
+     required string kind = 1 [default = "generic", max_length = 30, content_type = "stripped", blank = False, null = False, db_index = False];
+     optional string name = 2 [max_length = 255, content_type = "stripped", blank = True, help_text = "name", null = True, db_index = False];
+     optional string service_specific_attribute = 3 [db_index = False, null = True, blank = True];
+     optional string service_specific_id = 4 [db_index = False, max_length = 30, null = True, content_type = "stripped", blank = True];
+}
+
+
+message TenantRootPrivilege (XOSBase) {
+     required manytoone user->User:tenant_root_privileges = 1 [db_index = True, null = False, blank = False];
+     required manytoone tenant_root->TenantRoot:tenant_root_privileges = 2 [db_index = True, null = False, blank = False];
+     required manytoone role->TenantRootRole:tenant_root_privileges = 3 [db_index = True, null = False, blank = False];
+}
+
+
+message TenantRootRole (XOSBase) {
+     required string role = 1 [choices = "(('admin', 'Admin'), ('access', 'Access'))", max_length = 30, content_type = "stripped", blank = False, null = False, db_index = False];
+}
+
+
+message TenantWithContainer (Tenant) {
+     optional manytoone instance->Instance:+ = 1 [help_text = "Instance used by this Tenant", null = True, db_index = True, blank = True];
+     optional manytoone creator->User:+ = 2 [help_text = "Creator of this Tenant", null = True, db_index = True, blank = True];
+     optional string external_hostname = 3 [max_length = 30, content_type = "stripped", blank = True, help_text = "External host name", null = True, db_index = False];
+     optional string external_container = 4 [max_length = 30, content_type = "stripped", blank = True, help_text = "External host name", null = True, db_index = False];
+}
+
+
+message XOS (XOSBase) {
+     required string name = 1 [default = "XOS", max_length = 200, content_type = "stripped", blank = False, help_text = "Name of XOS", null = False, db_index = False];
+}
+
+message XOSGuiExtension (XOSBase) {
+     required string name = 1 [max_length = 200, content_type = "stripped", blank = False, help_text = "Name of the GUI Extensions", null = False, db_index = False];
+     required string files = 2 [max_length = 1024, content_type = "stripped", blank = False, help_text = "List of comma separated file composing the view", null = False, db_index = False];
+}
diff --git a/xos/core/models/dashboardview.xproto b/xos/core/models/dashboardview.xproto
deleted file mode 100644
index ed67e5a..0000000
--- a/xos/core/models/dashboardview.xproto
+++ /dev/null
@@ -1,11 +0,0 @@
-
-
-message DashboardView (XOSBase){
-     required string name = 1 [max_length = 200, content_type = "stripped", blank = False, help_text = "Name of the View", null = False, db_index = False];
-     required string url = 2 [max_length = 1024, content_type = "stripped", blank = False, help_text = "URL of Dashboard", null = False, db_index = False];
-     required bool enabled = 3 [default = True, null = False, db_index = False, blank = True];
-     required string icon = 4 [default = "default-icon.png", max_length = 200, blank = False, help_text = "Icon for Dashboard", null = False, db_index = False];
-     required string icon_active = 5 [default = "default-icon-active.png", max_length = 200, blank = False, help_text = "Icon for active Dashboard", null = False, db_index = False];
-     required manytomany controllers->Controller/ControllerDashboardView:dashboardviews = 6 [db_index = False, null = False, blank = True];
-     required manytomany deployments->Deployment/DashboardView_deployments:dashboardviews = 7 [help_text = "Deployments that should be included in this view", null = False, db_index = False, blank = True];
-}
diff --git a/xos/core/models/deployment.xproto b/xos/core/models/deployment.xproto
deleted file mode 100644
index 3a0e03b..0000000
--- a/xos/core/models/deployment.xproto
+++ /dev/null
@@ -1,6 +0,0 @@
-
-
-message Deployment (XOSBase){
-     required string name = 1 [max_length = 200, content_type = "stripped", blank = False, help_text = "Name of the Deployment", null = False, db_index = False];
-     required string accessControl = 2 [default = "allow all", max_length = 200, blank = False, help_text = "Access control list that specifies which sites/users may use nodes in this deployment", null = False, db_index = False];
-}
diff --git a/xos/core/models/deploymentprivilege.xproto b/xos/core/models/deploymentprivilege.xproto
deleted file mode 100644
index 2bd0286..0000000
--- a/xos/core/models/deploymentprivilege.xproto
+++ /dev/null
@@ -1,7 +0,0 @@
-
-
-message DeploymentPrivilege (XOSBase){
-     required manytoone user->User:deploymentprivileges = 1 [db_index = True, null = False, blank = False];
-     required manytoone deployment->Deployment:deploymentprivileges = 2 [db_index = True, null = False, blank = False];
-     required manytoone role->DeploymentRole:deploymentprivileges = 3 [db_index = True, null = False, blank = False];
-}
diff --git a/xos/core/models/deploymentrole.xproto b/xos/core/models/deploymentrole.xproto
deleted file mode 100644
index fa483f7..0000000
--- a/xos/core/models/deploymentrole.xproto
+++ /dev/null
@@ -1,5 +0,0 @@
-
-
-message DeploymentRole (XOSBase){
-     required string role = 1 [choices = "(('admin', 'Admin'),)", max_length = 30, content_type = "stripped", blank = False, null = False, db_index = False];
-}
diff --git a/xos/core/models/diag.xproto b/xos/core/models/diag.xproto
deleted file mode 100644
index 6396bb4..0000000
--- a/xos/core/models/diag.xproto
+++ /dev/null
@@ -1,5 +0,0 @@
-
-
-message Diag (XOSBase){
-     required string name = 1 [max_length = 200, content_type = "stripped", blank = False, help_text = "Name of the synchronizer", null = False, db_index = False];
-}
diff --git a/xos/core/models/flavor.xproto b/xos/core/models/flavor.xproto
deleted file mode 100644
index b76f419..0000000
--- a/xos/core/models/flavor.xproto
+++ /dev/null
@@ -1,8 +0,0 @@
-
-
-message Flavor (XOSBase){
-     required string name = 1 [max_length = 32, content_type = "stripped", blank = False, help_text = "name of this flavor, as displayed to users", null = False, db_index = False];
-     optional string description = 2 [db_index = False, max_length = 1024, null = True, content_type = "stripped", blank = True];
-     required string flavor = 3 [max_length = 32, content_type = "stripped", blank = False, help_text = "flavor string used to configure deployments", null = False, db_index = False];
-     required manytomany deployments->Deployment/DashboardView_deployments:flavors = 6 [db_index = False, null = False, blank = True];
-}
diff --git a/xos/core/models/image.xproto b/xos/core/models/image.xproto
deleted file mode 100644
index a06070d..0000000
--- a/xos/core/models/image.xproto
+++ /dev/null
@@ -1,11 +0,0 @@
-
-
-message Image (XOSBase){
-     required string name = 1 [db_index = False, max_length = 256, null = False, content_type = "stripped", blank = False];
-     required string kind = 2 [default = "vm", choices = "(('vm', 'Virtual Machine'), ('container', 'Container'))", max_length = 30, blank = False, null = False, db_index = False];
-     required string disk_format = 3 [db_index = False, max_length = 256, null = False, content_type = "stripped", blank = False];
-     required string container_format = 4 [db_index = False, max_length = 256, null = False, content_type = "stripped", blank = False];
-     optional string path = 5 [max_length = 256, content_type = "stripped", blank = True, help_text = "Path to image on local disk", null = True, db_index = False];
-     optional string tag = 6 [max_length = 256, content_type = "stripped", blank = True, help_text = "For Docker Images, tag of image", null = True, db_index = False];
-     required manytomany deployments->Deployment/ImageDeployments:images = 7 [help_text = "Select which images should be instantiated on this deployment", null = False, db_index = False, blank = True];
-}
diff --git a/xos/core/models/imagedeployments.xproto b/xos/core/models/imagedeployments.xproto
deleted file mode 100644
index 6d985ce..0000000
--- a/xos/core/models/imagedeployments.xproto
+++ /dev/null
@@ -1,6 +0,0 @@
-
-
-message ImageDeployments (XOSBase){
-     required manytoone image->Image:imagedeployments = 1 [db_index = True, null = False, blank = False];
-     required manytoone deployment->Deployment:imagedeployments = 2 [db_index = True, null = False, blank = False];
-}
diff --git a/xos/core/models/instance.xproto b/xos/core/models/instance.xproto
deleted file mode 100644
index dbbd4cd..0000000
--- a/xos/core/models/instance.xproto
+++ /dev/null
@@ -1,20 +0,0 @@
-
-
-message Instance (XOSBase){
-     optional string instance_id = 1 [max_length = 200, content_type = "stripped", blank = True, help_text = "Nova instance id", null = True, db_index = False];
-     optional string instance_uuid = 2 [max_length = 200, content_type = "stripped", blank = True, help_text = "Nova instance uuid", null = True, db_index = False];
-     required string name = 3 [max_length = 200, content_type = "stripped", blank = False, help_text = "Instance name", null = False, db_index = False];
-     optional string instance_name = 4 [max_length = 200, content_type = "stripped", blank = True, help_text = "OpenStack generated name", null = True, db_index = False];
-     optional string ip = 5 [max_length = 39, content_type = "ip", blank = True, help_text = "Instance ip address", null = True, db_index = False];
-     required manytoone image->Image:instances = 6 [db_index = True, null = False, blank = False];
-     optional manytoone creator->User:instances = 7 [db_index = True, null = True, blank = True];
-     required manytoone slice->Slice:instances = 8 [db_index = True, null = False, blank = False];
-     required manytoone deployment->Deployment:instance_deployment = 9 [db_index = True, null = False, blank = False];
-     required manytoone node->Node:instances = 10 [db_index = True, null = False, blank = False];
-     required int32 numberCores = 11 [help_text = "Number of cores for instance", default = 0, null = False, db_index = False, blank = False];
-     required manytoone flavor->Flavor:instance = 12 [help_text = "Flavor of this instance", null = False, db_index = True, blank = False];
-     optional string userData = 13 [help_text = "user_data passed to instance during creation", null = True, db_index = False, blank = True];
-     required string isolation = 14 [default = "vm", choices = "(('vm', 'Virtual Machine'), ('container', 'Container'), ('container_vm', 'Container In VM'))", max_length = 30, blank = False, null = False, db_index = False];
-     optional string volumes = 15 [help_text = "Comma-separated list of directories to expose to parent context", null = True, db_index = False, blank = True];
-     optional manytoone parent->Instance:instance = 16 [help_text = "Parent Instance for containers nested inside of VMs", null = True, db_index = True, blank = True];
-}
diff --git a/xos/core/models/network.xproto b/xos/core/models/network.xproto
deleted file mode 100644
index a44d378..0000000
--- a/xos/core/models/network.xproto
+++ /dev/null
@@ -1,15 +0,0 @@
-message Network (XOSBase){
-     required string name = 1 [db_index = False, max_length = 32, null = False, blank = False];
-     required manytoone template->NetworkTemplate:network = 2 [db_index = True, null = False, blank = False];
-     required string subnet = 3 [db_index = False, max_length = 32, null = False, blank = True];
-     required string start_ip = 4 [db_index = False, max_length = 32, null = False, blank = True];
-     required string end_ip = 5 [db_index = False, max_length = 32, null = False, blank = True];
-     optional string ports = 6 [db_index = False, max_length = 1024, null = True, blank = True];
-     optional string labels = 7 [db_index = False, max_length = 1024, null = True, blank = True];
-     required manytoone owner->Slice:ownedNetworks = 8 [help_text = "Slice that owns control of this Network", null = False, db_index = True, blank = False];
-     required bool permit_all_slices = 10 [default = False, null = False, db_index = False, blank = True];
-     required bool autoconnect = 17 [help_text = "This network can be autoconnected to the slice that owns it", default = True, null = False, db_index = False, blank = True];
-     required manytomany permitted_slices->Slice/Network_permitted_slices:availableNetworks = 18 [db_index = False, null = False, blank = True];
-     required manytomany slices->Slice/NetworkSlice:networks = 19 [db_index = False, null = False, blank = True];
-     required manytomany instances->Instance/Port:networks = 20 [db_index = False, null = False, blank = True];
-}
diff --git a/xos/core/models/networkparameter.xproto b/xos/core/models/networkparameter.xproto
deleted file mode 100644
index 01ce43e..0000000
--- a/xos/core/models/networkparameter.xproto
+++ /dev/null
@@ -1,8 +0,0 @@
-
-
-message NetworkParameter (XOSBase){
-     required manytoone parameter->NetworkParameterType:networkparameters = 1 [help_text = "The type of the parameter", null = False, db_index = True, blank = False];
-     required string value = 2 [help_text = "The value of this parameter", max_length = 1024, null = False, db_index = False, blank = False];
-     required string content_type = 4 [max_length = 1024, content_type = "stripped", blank = False, help_text = "Content type id linked to this network parameter", null = False, db_index = False];
-     required uint32 object_id = 4 [db_index = False, null = False, blank = False, help_text = "Object linked to this NetworkParameter"];
-}
diff --git a/xos/core/models/networkparametertype.xproto b/xos/core/models/networkparametertype.xproto
deleted file mode 100644
index 840a345..0000000
--- a/xos/core/models/networkparametertype.xproto
+++ /dev/null
@@ -1,6 +0,0 @@
-
-
-message NetworkParameterType (XOSBase){
-     required string name = 1 [help_text = "The name of this parameter", max_length = 128, null = False, db_index = True, blank = False];
-     required string description = 2 [db_index = False, max_length = 1024, null = False, blank = False];
-}
diff --git a/xos/core/models/networkslice.xproto b/xos/core/models/networkslice.xproto
deleted file mode 100644
index 1697fec..0000000
--- a/xos/core/models/networkslice.xproto
+++ /dev/null
@@ -1,6 +0,0 @@
-
-
-message NetworkSlice (XOSBase){
-     required manytoone network->Network:networkslices = 1 [db_index = True, null = False, blank = False];
-     required manytoone slice->Slice:networkslices = 2 [db_index = True, null = False, blank = False];
-}
diff --git a/xos/core/models/networktemplate.xproto b/xos/core/models/networktemplate.xproto
deleted file mode 100644
index ab7fe1d..0000000
--- a/xos/core/models/networktemplate.xproto
+++ /dev/null
@@ -1,12 +0,0 @@
-message NetworkTemplate (XOSBase){
-     required string name = 1 [db_index = False, max_length = 32, null = False, blank = False];
-     optional string description = 2 [db_index = False, max_length = 1024, null = True, blank = True];
-     required string visibility = 4 [default = "private", choices = "(('public', 'public'), ('private', 'private'))", max_length = 30, blank = False, null = False, db_index = False];
-     required string translation = 5 [default = "none", choices = "(('none', 'none'), ('NAT', 'NAT'))", max_length = 30, blank = False, null = False, db_index = False];
-     optional string access = 6 [choices = "((None, 'None'), ('indirect', 'Indirect'), ('direct', 'Direct'))", max_length = 30, blank = True, help_text = "Advertise this network as a means for other slices to contact this slice", null = True, db_index = False];
-     optional string shared_network_name = 7 [db_index = False, max_length = 30, null = True, blank = True];
-     optional string shared_network_id = 8 [help_text = "Quantum network", max_length = 256, null = True, db_index = False, blank = True];
-     required string topology_kind = 9 [default = "bigswitch", choices = "(('bigswitch', 'BigSwitch'), ('physical', 'Physical'), ('custom', 'Custom'))", max_length = 30, blank = False, null = False, db_index = False];
-     optional string controller_kind = 10 [blank = True, max_length = 30, null = True, db_index = False, choices = "((None, 'None'), ('onos', 'ONOS'), ('custom', 'Custom'))"];
-     optional string vtn_kind = 11 [default = "PRIVATE", choices = "(('PRIVATE', 'Private'), ('PUBLIC', 'Public'), ('MANAGEMENT_LOCAL', 'Management Local'), ('MANAGEMENT_HOST', 'Management Host'), ('VSG', 'VSG'), ('ACCESS_AGENT', 'Access Agent'))", max_length = 30, blank = True, null = True, db_index = False];
-}
diff --git a/xos/core/models/node.xproto b/xos/core/models/node.xproto
deleted file mode 100644
index f4b12b0..0000000
--- a/xos/core/models/node.xproto
+++ /dev/null
@@ -1,4 +0,0 @@
-message Node (XOSBase){
-     required string name = 1 [max_length = 200, content_type = "stripped", blank = False, help_text = "Name of the Node", null = False, db_index = False];
-     required manytoone site_deployment->SiteDeployment:nodes = 2 [db_index = True, null = False, blank = False];
-}
diff --git a/xos/core/models/nodelabel.xproto b/xos/core/models/nodelabel.xproto
deleted file mode 100644
index bf00ae7..0000000
--- a/xos/core/models/nodelabel.xproto
+++ /dev/null
@@ -1,4 +0,0 @@
-message NodeLabel (XOSBase){
-     required string name = 1 [max_length = 200, content_type = "stripped", blank = False, help_text = "label name", null = False, db_index = False];
-     required manytomany node->Node/NodeLabel_node:nodelabels = 2 [db_index = False, null = False, blank = True];
-}
diff --git a/xos/core/models/port.xproto b/xos/core/models/port.xproto
deleted file mode 100644
index d7841ab..0000000
--- a/xos/core/models/port.xproto
+++ /dev/null
@@ -1,8 +0,0 @@
-message Port (XOSBase){
-     required manytoone network->Network:links = 1 [db_index = True, null = False, blank = False];
-     optional manytoone instance->Instance:ports = 2 [db_index = True, null = True, blank = True];
-     optional string ip = 3 [max_length = 39, content_type = "ip", blank = True, help_text = "Instance ip address", null = True, db_index = False];
-     optional string port_id = 4 [help_text = "Neutron port id", max_length = 256, null = True, db_index = False, blank = True];
-     optional string mac = 5 [help_text = "MAC address associated with this port", max_length = 256, null = True, db_index = False, blank = True];
-     required bool xos_created = 6 [default = False, null = False, db_index = False, blank = True];
-}
diff --git a/xos/core/models/role.xproto b/xos/core/models/role.xproto
deleted file mode 100644
index d55dcc0..0000000
--- a/xos/core/models/role.xproto
+++ /dev/null
@@ -1,7 +0,0 @@
-
-
-message Role (XOSBase){
-     required string role_type = 1 [db_index = False, max_length = 80, null = False, content_type = "stripped", blank = False];
-     optional string role = 2 [db_index = False, max_length = 80, null = True, content_type = "stripped", blank = True];
-     required string description = 3 [db_index = False, max_length = 120, null = False, content_type = "stripped", blank = False];
-}
diff --git a/xos/core/models/service.xproto b/xos/core/models/service.xproto
deleted file mode 100644
index daaddf6..0000000
--- a/xos/core/models/service.xproto
+++ /dev/null
@@ -1,16 +0,0 @@
-
-
-message Service (XOSBase,AttributeMixin){
-     optional string description = 1 [help_text = "Description of Service", max_length = 254, null = True, db_index = False, blank = True];
-     required bool enabled = 2 [default = True, null = False, db_index = False, blank = True];
-     required string kind = 3 [default = "generic", max_length = 30, content_type = "stripped", blank = False, help_text = "Kind of service", null = False, db_index = False];
-     required string name = 4 [max_length = 30, content_type = "stripped", blank = False, help_text = "Service Name", null = False, db_index = False];
-     optional string versionNumber = 5 [max_length = 30, content_type = "stripped", blank = True, help_text = "Version of Service Definition", null = True, db_index = False];
-     required bool published = 6 [default = True, null = False, db_index = False, blank = True];
-     optional string view_url = 7 [db_index = False, max_length = 1024, null = True, content_type = "stripped", blank = True];
-     optional string icon_url = 8 [db_index = False, max_length = 1024, null = True, content_type = "stripped", blank = True];
-     optional string public_key = 9 [help_text = "Public key string", max_length = 1024, null = True, db_index = False, blank = True];
-     optional string private_key_fn = 10 [db_index = False, max_length = 1024, null = True, content_type = "stripped", blank = True];
-     optional string service_specific_id = 11 [db_index = False, max_length = 30, null = True, content_type = "stripped", blank = True];
-     optional string service_specific_attribute = 12 [db_index = False, null = True, blank = True];
-}
diff --git a/xos/core/models/serviceattribute.xproto b/xos/core/models/serviceattribute.xproto
deleted file mode 100644
index 8c9d209..0000000
--- a/xos/core/models/serviceattribute.xproto
+++ /dev/null
@@ -1,7 +0,0 @@
-
-
-message ServiceAttribute (XOSBase){
-     required string name = 1 [help_text = "Attribute Name", max_length = 128, null = False, db_index = False, blank = False];
-     required string value = 2 [help_text = "Attribute Value", null = False, db_index = False, blank = False];
-     required manytoone service->Service:serviceattributes = 3 [help_text = "The Service this attribute is associated with", null = False, db_index = True, blank = False];
-}
diff --git a/xos/core/models/servicedependency.xproto b/xos/core/models/servicedependency.xproto
deleted file mode 100644
index 09248fe..0000000
--- a/xos/core/models/servicedependency.xproto
+++ /dev/null
@@ -1,4 +0,0 @@
-
-
-message ServiceDependency (Tenant){
-}
diff --git a/xos/core/models/servicemonitoringagentinfo.xproto b/xos/core/models/servicemonitoringagentinfo.xproto
deleted file mode 100644
index 59ce1c8..0000000
--- a/xos/core/models/servicemonitoringagentinfo.xproto
+++ /dev/null
@@ -1,7 +0,0 @@
-
-
-message ServiceMonitoringAgentInfo (XOSBase){
-     required string name = 1 [help_text = "Monitoring Agent Name", max_length = 128, null = False, db_index = False, blank = False];
-     optional manytoone service->Service:servicemonitoringagents = 2 [help_text = "The Service this attribute is associated with", null = True, db_index = True, blank = True];
-     required string target_uri = 3 [help_text = "Monitoring collector URI to be used by agents to publish the data", null = False, db_index = False, blank = False];
-}
diff --git a/xos/core/models/serviceprivilege.xproto b/xos/core/models/serviceprivilege.xproto
deleted file mode 100644
index 6714b17..0000000
--- a/xos/core/models/serviceprivilege.xproto
+++ /dev/null
@@ -1,7 +0,0 @@
-
-
-message ServicePrivilege (XOSBase){
-     required manytoone user->User:serviceprivileges = 1 [db_index = True, null = False, blank = False];
-     required manytoone service->Service:serviceprivileges = 2 [db_index = True, null = False, blank = False];
-     required manytoone role->ServiceRole:serviceprivileges = 3 [db_index = True, null = False, blank = False];
-}
diff --git a/xos/core/models/servicerole.xproto b/xos/core/models/servicerole.xproto
deleted file mode 100644
index 74c9bb9..0000000
--- a/xos/core/models/servicerole.xproto
+++ /dev/null
@@ -1,5 +0,0 @@
-
-
-message ServiceRole (XOSBase){
-     required string role = 1 [choices = "(('admin', 'Admin'),)", max_length = 30, content_type = "stripped", blank = False, null = False, db_index = False];
-}
diff --git a/xos/core/models/site.xproto b/xos/core/models/site.xproto
deleted file mode 100644
index c71fa20..0000000
--- a/xos/core/models/site.xproto
+++ /dev/null
@@ -1,15 +0,0 @@
-
-
-message Site (XOSBase){
-     required string name = 1 [max_length = 200, content_type = "stripped", blank = False, help_text = "Name for this Site", null = False, db_index = False];
-     optional string site_url = 2 [max_length = 512, content_type = "url", blank = True, help_text = "Site's Home URL Page", null = True, db_index = False];
-     required bool enabled = 3 [help_text = "Status for this Site", default = True, null = False, db_index = False, blank = True];
-     required bool hosts_nodes = 4 [help_text = "Indicates whether or not the site host nodes", default = True, null = False, db_index = False, blank = True];
-     required bool hosts_users = 5 [help_text = "Indicates whether or not the site manages user accounts", default = True, null = False, db_index = False, blank = True];
-     optional float longitude = 6 [db_index = False, null = True, blank = True];
-     optional float latitude = 7 [db_index = False, null = True, blank = True];
-     required string login_base = 8 [max_length = 50, content_type = "stripped", blank = False, help_text = "Prefix for Slices associated with this Site", null = False, db_index = False];
-     required bool is_public = 9 [help_text = "Indicates the visibility of this site to other members", default = True, null = False, db_index = False, blank = True];
-     required string abbreviated_name = 10 [db_index = False, max_length = 80, null = False, content_type = "stripped", blank = False];
-     required manytomany deployments->Deployment/SiteDeployment:sites = 11 [help_text = "Select which sites are allowed to host nodes in this deployment", null = False, db_index = False, blank = True];
-}
diff --git a/xos/core/models/sitedeployment.xproto b/xos/core/models/sitedeployment.xproto
deleted file mode 100644
index ff23abf..0000000
--- a/xos/core/models/sitedeployment.xproto
+++ /dev/null
@@ -1,8 +0,0 @@
-
-
-message SiteDeployment (XOSBase){
-     required manytoone site->Site:sitedeployments = 1 [db_index = True, null = False, blank = False];
-     required manytoone deployment->Deployment:sitedeployments = 2 [db_index = True, null = False, blank = False];
-     optional manytoone controller->Controller:sitedeployments = 3 [db_index = True, null = True, blank = True];
-     optional string availability_zone = 4 [max_length = 200, content_type = "stripped", blank = True, help_text = "OpenStack availability zone", null = True, db_index = False];
-}
diff --git a/xos/core/models/siteprivilege.xproto b/xos/core/models/siteprivilege.xproto
deleted file mode 100644
index 0f277c2..0000000
--- a/xos/core/models/siteprivilege.xproto
+++ /dev/null
@@ -1,7 +0,0 @@
-
-
-message SitePrivilege (XOSBase){
-     required manytoone user->User:siteprivileges = 1 [db_index = True, null = False, blank = False];
-     required manytoone site->Site:siteprivileges = 2 [db_index = True, null = False, blank = False];
-     required manytoone role->SiteRole:siteprivileges = 3 [db_index = True, null = False, blank = False];
-}
diff --git a/xos/core/models/siterole.xproto b/xos/core/models/siterole.xproto
deleted file mode 100644
index 58b638e..0000000
--- a/xos/core/models/siterole.xproto
+++ /dev/null
@@ -1,5 +0,0 @@
-
-
-message SiteRole (XOSBase){
-     required string role = 1 [choices = "(('admin', 'Admin'), ('pi', 'PI'), ('tech', 'Tech'), ('billing', 'Billing'))", max_length = 30, content_type = "stripped", blank = False, null = False, db_index = False];
-}
diff --git a/xos/core/models/slice.xproto b/xos/core/models/slice.xproto
deleted file mode 100644
index 9adf2a9..0000000
--- a/xos/core/models/slice.xproto
+++ /dev/null
@@ -1,17 +0,0 @@
-message Slice (XOSBase){
-     required string name = 1 [max_length = 80, content_type = "stripped", blank = False, help_text = "The Name of the Slice", null = False, db_index = False];
-     required bool enabled = 2 [help_text = "Status for this Slice", default = True, null = False, db_index = False, blank = True];
-     required string description = 4 [help_text = "High level description of the slice and expected activities", max_length = 1024, null = False, db_index = False, blank = True];
-     required string slice_url = 5 [db_index = False, max_length = 512, null = False, content_type = "url", blank = True];
-     required manytoone site->Site:slices = 6 [help_text = "The Site this Slice belongs to", null = False, db_index = True, blank = False];
-     required int32 max_instances = 7 [default = 10, null = False, db_index = False, blank = False];
-     optional manytoone service->Service:slices = 8 [db_index = True, null = True, blank = True];
-     optional string network = 9 [blank = True, max_length = 256, null = True, db_index = False, choices = "((None, 'Default'), ('host', 'Host'), ('bridged', 'Bridged'), ('noauto', 'No Automatic Networks'))"];
-     optional string exposed_ports = 10 [db_index = False, max_length = 256, null = True, blank = True];
-     optional manytoone creator->User:slices = 12 [db_index = True, null = True, blank = True];
-     optional manytoone default_flavor->Flavor:slices = 13 [db_index = True, null = True, blank = True];
-     optional manytoone default_image->Image:slices = 14 [db_index = True, null = True, blank = True];
-     optional manytoone default_node->Node:slices = 15 [db_index = True, null = True, blank = True];
-     optional string mount_data_sets = 16 [default = "GenBank", max_length = 256, content_type = "stripped", blank = True, null = True, db_index = False];
-     required string default_isolation = 17 [default = "vm", choices = "(('vm', 'Virtual Machine'), ('container', 'Container'), ('container_vm', 'Container In VM'))", max_length = 30, blank = False, null = False, db_index = False];
-}
diff --git a/xos/core/models/sliceprivilege.xproto b/xos/core/models/sliceprivilege.xproto
deleted file mode 100644
index 6c85a8c..0000000
--- a/xos/core/models/sliceprivilege.xproto
+++ /dev/null
@@ -1,7 +0,0 @@
-
-
-message SlicePrivilege (XOSBase){
-     required manytoone user->User:sliceprivileges = 1 [db_index = True, null = False, blank = False];
-     required manytoone slice->Slice:sliceprivileges = 2 [db_index = True, null = False, blank = False];
-     required manytoone role->SliceRole:sliceprivileges = 3 [db_index = True, null = False, blank = False];
-}
diff --git a/xos/core/models/slicerole.xproto b/xos/core/models/slicerole.xproto
deleted file mode 100644
index 7d6eb19..0000000
--- a/xos/core/models/slicerole.xproto
+++ /dev/null
@@ -1,5 +0,0 @@
-
-
-message SliceRole (XOSBase){
-     required string role = 1 [choices = "(('admin', 'Admin'), ('default', 'Default'))", max_length = 30, content_type = "stripped", blank = False, null = False, db_index = False];
-}
diff --git a/xos/core/models/tag.xproto b/xos/core/models/tag.xproto
deleted file mode 100644
index a2cd9b2..0000000
--- a/xos/core/models/tag.xproto
+++ /dev/null
@@ -1,9 +0,0 @@
-
-
-message Tag (XOSBase){
-     required manytoone service->Service:tags = 1 [help_text = "The Service this Tag is associated with", null = False, db_index = True, blank = False];
-     required string name = 2 [help_text = "The name of this tag", max_length = 128, null = False, db_index = True, blank = False];
-     required string value = 3 [max_length = 1024, content_type = "stripped", blank = False, help_text = "The value of this tag", null = False, db_index = False];
-     required string content_type = 4 [max_length = 1024, content_type = "stripped", blank = False, help_text = "Content type id linked to this tag", null = False, db_index = False];
-     required uint32 object_id = 5 [db_index = False, null = False, blank = False, help_text = "Object linked to this tag"];
-}
diff --git a/xos/core/models/tenant.xproto b/xos/core/models/tenant.xproto
deleted file mode 100644
index 384d119..0000000
--- a/xos/core/models/tenant.xproto
+++ /dev/null
@@ -1,15 +0,0 @@
-
-
-message Tenant (XOSBase,AttributeMixin){
-     optional string name = 1 [db_index = False, max_length = 200, null = True, content_type = "stripped", blank = True];
-     required string kind = 2 [default = "generic", max_length = 30, content_type = "stripped", blank = False, null = False, db_index = False];
-     required manytoone provider_service->Service:provided_tenants = 3 [db_index = True, null = False, blank = False];
-     optional manytoone subscriber_service->Service:subscribed_tenants = 4 [db_index = True, null = True, blank = True];
-     optional manytoone subscriber_tenant->Tenant:subscribed_tenants = 5 [db_index = True, null = True, blank = True];
-     optional manytoone subscriber_user->User:subscribed_tenants = 6 [db_index = True, null = True, blank = True];
-     optional manytoone subscriber_root->TenantRoot:subscribed_tenants = 7 [db_index = True, null = True, blank = True];
-     optional manytoone subscriber_network->Network:subscribed_tenants = 8 [db_index = True, null = True, blank = True];
-     optional string service_specific_id = 9 [db_index = False, max_length = 30, null = True, content_type = "stripped", blank = True];
-     optional string service_specific_attribute = 10 [db_index = False, null = True, blank = True];
-     required string connect_method = 11 [default = "na", choices = "(('public', 'Public'), ('private', 'Private'), ('private-unidirectional', 'Private Unidirectional'), ('na', 'Not Applicable'))", max_length = 30, blank = False, null = False, db_index = False];
-}
diff --git a/xos/core/models/tenantattribute.xproto b/xos/core/models/tenantattribute.xproto
deleted file mode 100644
index 82c35d5..0000000
--- a/xos/core/models/tenantattribute.xproto
+++ /dev/null
@@ -1,7 +0,0 @@
-
-
-message TenantAttribute (XOSBase){
-     required string name = 1 [help_text = "Attribute Name", max_length = 128, null = False, db_index = False, blank = False];
-     required string value = 2 [help_text = "Attribute Value", null = False, db_index = False, blank = False];
-     required manytoone tenant->Tenant:tenantattributes = 3 [help_text = "The Tenant this attribute is associated with", null = False, db_index = True, blank = False];
-}
diff --git a/xos/core/models/tenantprivilege.xproto b/xos/core/models/tenantprivilege.xproto
deleted file mode 100644
index e98aaec..0000000
--- a/xos/core/models/tenantprivilege.xproto
+++ /dev/null
@@ -1,7 +0,0 @@
-
-
-message TenantPrivilege (XOSBase){
-     required manytoone user->User:tenantprivileges = 1 [db_index = True, null = False, blank = False];
-     required manytoone tenant->Tenant:tenantprivileges = 2 [db_index = True, null = False, blank = False];
-     required manytoone role->TenantRole:tenantprivileges = 3 [db_index = True, null = False, blank = False];
-}
diff --git a/xos/core/models/tenantrole.xproto b/xos/core/models/tenantrole.xproto
deleted file mode 100644
index 54ed436..0000000
--- a/xos/core/models/tenantrole.xproto
+++ /dev/null
@@ -1,5 +0,0 @@
-
-
-message TenantRole (XOSBase){
-     required string role = 1 [choices = "(('admin', 'Admin'), ('access', 'Access'))", max_length = 30, content_type = "stripped", blank = False, null = False, db_index = False];
-}
diff --git a/xos/core/models/tenantroot.xproto b/xos/core/models/tenantroot.xproto
deleted file mode 100644
index 00c3154..0000000
--- a/xos/core/models/tenantroot.xproto
+++ /dev/null
@@ -1,8 +0,0 @@
-
-
-message TenantRoot (XOSBase,AttributeMixin){
-     required string kind = 1 [default = "generic", max_length = 30, content_type = "stripped", blank = False, null = False, db_index = False];
-     optional string name = 2 [max_length = 255, content_type = "stripped", blank = True, help_text = "name", null = True, db_index = False];
-     optional string service_specific_attribute = 3 [db_index = False, null = True, blank = True];
-     optional string service_specific_id = 4 [db_index = False, max_length = 30, null = True, content_type = "stripped", blank = True];
-}
diff --git a/xos/core/models/tenantrootprivilege.xproto b/xos/core/models/tenantrootprivilege.xproto
deleted file mode 100644
index 39e8b5c..0000000
--- a/xos/core/models/tenantrootprivilege.xproto
+++ /dev/null
@@ -1,7 +0,0 @@
-
-
-message TenantRootPrivilege (XOSBase){
-     required manytoone user->User:tenant_root_privileges = 1 [db_index = True, null = False, blank = False];
-     required manytoone tenant_root->TenantRoot:tenant_root_privileges = 2 [db_index = True, null = False, blank = False];
-     required manytoone role->TenantRootRole:tenant_root_privileges = 3 [db_index = True, null = False, blank = False];
-}
diff --git a/xos/core/models/tenantrootrole.xproto b/xos/core/models/tenantrootrole.xproto
deleted file mode 100644
index 2297b33..0000000
--- a/xos/core/models/tenantrootrole.xproto
+++ /dev/null
@@ -1,5 +0,0 @@
-
-
-message TenantRootRole (XOSBase){
-     required string role = 1 [choices = "(('admin', 'Admin'), ('access', 'Access'))", max_length = 30, content_type = "stripped", blank = False, null = False, db_index = False];
-}
diff --git a/xos/core/models/tenantwithcontainer.xproto b/xos/core/models/tenantwithcontainer.xproto
deleted file mode 100644
index 2bef221..0000000
--- a/xos/core/models/tenantwithcontainer.xproto
+++ /dev/null
@@ -1,8 +0,0 @@
-
-
-message TenantWithContainer (Tenant){
-     optional manytoone instance->Instance:+ = 1 [help_text = "Instance used by this Tenant", null = True, db_index = True, blank = True];
-     optional manytoone creator->User:+ = 2 [help_text = "Creator of this Tenant", null = True, db_index = True, blank = True];
-     optional string external_hostname = 3 [max_length = 30, content_type = "stripped", blank = True, help_text = "External host name", null = True, db_index = False];
-     optional string external_container = 4 [max_length = 30, content_type = "stripped", blank = True, help_text = "External host name", null = True, db_index = False];
-}
diff --git a/xos/core/models/xos.xproto b/xos/core/models/xos.xproto
deleted file mode 100644
index 32ed1d7..0000000
--- a/xos/core/models/xos.xproto
+++ /dev/null
@@ -1,5 +0,0 @@
-
-
-message XOS (XOSBase){
-     required string name = 1 [default = "XOS", max_length = 200, content_type = "stripped", blank = False, help_text = "Name of XOS", null = False, db_index = False];
-}
diff --git a/xos/core/models/xosbase.xproto b/xos/core/models/xosbase.xproto
deleted file mode 100644
index f3def66..0000000
--- a/xos/core/models/xosbase.xproto
+++ /dev/null
@@ -1,15 +0,0 @@
-message XOSBase {
-     required string created = 1 [content_type = "date", auto_now_add = True];
-     required string updated = 2 [default = "now()", content_type = "date"];
-     optional string enacted = 3 [null = True, content_type = "date", blank = True, default = None];
-     optional string policed = 4 [null = True, content_type = "date", blank = True, default = None];
-     optional string backend_register = 5 [default = "{}", max_length = 1024, null = True];
-     required bool backend_need_delete = 6 [default = False];
-     required bool backend_need_reap = 7 [default = False];
-     required string backend_status = 8 [default = "0 - Provisioning in progress", max_length = 1024];
-     required bool deleted = 9 [default = False];
-     required bool write_protect = 10 [default = False];
-     required bool lazy_blocked = 11 [default = False];
-     required bool no_sync = 12 [default = False];
-     required bool no_policy = 13 [default = False];
-}
diff --git a/xos/core/models/xosguiextension.xproto b/xos/core/models/xosguiextension.xproto
deleted file mode 100644
index 5d0c58e..0000000
--- a/xos/core/models/xosguiextension.xproto
+++ /dev/null
@@ -1,6 +0,0 @@
-
-
-message XOSGuiExtension (XOSBase){
-     required string name = 1 [max_length = 200, content_type = "stripped", blank = False, help_text = "Name of the GUI Extensions", null = False, db_index = False];
-     required string files = 2 [max_length = 1024, content_type = "stripped", blank = False, help_text = "List of comma separated file composing the view", null = False, db_index = False];
-}
diff --git a/xos/genx/targets/init.xtarget b/xos/genx/targets/init.xtarget
index b089e53..1ecc071 100644
--- a/xos/genx/targets/init.xtarget
+++ b/xos/genx/targets/init.xtarget
@@ -10,5 +10,7 @@
 from .journal import JournalEntry, journal_object
 
 {% for m in proto.messages -%}
+{% if not m.options.skip -%}
 from .{{ m.name | lower }} import {{ m.name }} 
+{% endif -%}
 {% endfor -%}
