diff --git a/xos/attic/header.py b/xos/attic/header.py
index 33498dd..e3ab236 100644
--- a/xos/attic/header.py
+++ b/xos/attic/header.py
@@ -1,5 +1,5 @@
 from django.db import models
-from core.models import Service, XOSBase, Slice, Instance, Tenant, TenantWithContainer, Node, Image, User, Flavor
+from core.models import Service, XOSBase, Slice, Instance, ServiceInstance, Node, Image, User, Flavor
 from core.models.xosbase import StrippedCharField
 import os
 from django.db import models, transaction
diff --git a/xos/attic/onosapp_model.py b/xos/attic/onosapp_model.py
index a294f2d..8ac7d9e 100644
--- a/xos/attic/onosapp_model.py
+++ b/xos/attic/onosapp_model.py
@@ -1,17 +1,6 @@
 def __init__(self, *args, **kwargs):
     onos_services = ONOSService.objects.all()
     if onos_services:
-        self._meta.get_field("provider_service").default = onos_services[0].id
+        self._meta.get_field("owner").default = onos_services[0].id
     super(ONOSApp, self).__init__(*args, **kwargs)
 
-def save(self, *args, **kwargs):
-    if not self.creator:
-        if not getattr(self, "caller", None):
-            # caller must be set when creating a vCPE since it creates a slice
-            raise XOSProgrammingError("ONOSApp's self.caller was not set")
-        self.creator = self.caller
-        if not self.creator:
-            raise XOSProgrammingError("ONOSApp's self.creator was not set")
-
-    super(ONOSApp, self).save(*args, **kwargs)
-
