diff --git a/product/ERP5/Document/Domain.py b/product/ERP5/Document/Domain.py
index 14943921a7a5f094ff66abac80210fa99697894f..88ace2b692b4ccbdb0a2de8c44d8148862408c77 100644
--- a/product/ERP5/Document/Domain.py
+++ b/product/ERP5/Document/Domain.py
@@ -85,7 +85,11 @@ class Domain(Predicate, MetaNode, MetaResource):
   __implements__ = ( Interface.Predicate, )
 
   # Declarative properties
-  property_sheets = ( PropertySheet.Domain, )
+  property_sheets = ( PropertySheet.Base
+                    , PropertySheet.Predicate
+                    , PropertySheet.Domain
+                    , PropertySheet.SortIndex
+                    )
 
   security.declareProtected( Permissions.AccessContentsInformation, 'getRelativeUrl' )
   def getRelativeUrl(self):
diff --git a/product/ERP5Form/Selection.py b/product/ERP5Form/Selection.py
index c3656e666fed1e63253c7bc4da70241917a66a15..18e2205941cbc46d3b11dcb72c1c1c170e062884 100644
--- a/product/ERP5Form/Selection.py
+++ b/product/ERP5Form/Selection.py
@@ -511,7 +511,11 @@ class DomainSelection(Acquisition.Implicit, Traversable, Persistent):
 
   security.declarePublic('asDomainItemDict')
   def asDomainItemDict(self, domain_id=None, exclude_domain_id=None):
-    pass
+    domain_item_dict = {}
+    portal = self.getPortalObject()
+    for k, d in self.domain_dict.iteritems():
+      domain_item_dict[k] = self._getDomainObject(portal,d) 
+    return domain_item_dict
 
   security.declarePublic('updateDomain')
   def updateDomain(self, domain):