diff --git a/product/ERP5/ERP5Defaults.py b/product/ERP5/ERP5Defaults.py
index 16660bbe90f852b9271e8ef1f8613bcd28d25a19..14d6ff74957d861a6bea9c72ad8ff928ba9d301f 100644
--- a/product/ERP5/ERP5Defaults.py
+++ b/product/ERP5/ERP5Defaults.py
@@ -197,6 +197,9 @@ portal_business_link_type_list = ('Business Link',)
 
 portal_data_descriptor_type_list = ()
 
+portal_data_sink_type_list = ('Data Stream',
+                              'Data Bucket Stream')
+
 portal_device_type_list = ('Data Acquisition Unit',
                            'Data Aggregation Unit'
                            'Sensor')
diff --git a/product/ERP5/ERP5Site.py b/product/ERP5/ERP5Site.py
index 2f44dacf53aa0a3bca7367e3323ba5af2c011e6b..c472980ff42679d2c7c1fc839b8c4842010faabf 100644
--- a/product/ERP5/ERP5Site.py
+++ b/product/ERP5/ERP5Site.py
@@ -1553,6 +1553,15 @@ class ERP5Site(FolderMixIn, CMFSite, CacheCookieMixin):
     return self._getPortalGroupedTypeList('data_descriptor') or\
            self._getPortalConfiguration('portal_data_descriptor_type_list')
 
+  security.declareProtected(Permissions.AccessContentsInformation,
+                            'getPortalDataSinkTypeList')
+  def getPortalDataSinkTypeList(self):
+    """
+    Returns Data Sink types.    
+    """
+    return self._getPortalGroupedTypeList('data_sink') or\
+           self._getPortalConfiguration('portal_data_sink_type_list')
+
   security.declareProtected(Permissions.AccessContentsInformation,
                             'getPortalDeviceTypeList')
   def getPortalDeviceTypeList(self):
diff --git a/product/ERP5Type/ERP5Type.py b/product/ERP5Type/ERP5Type.py
index df412e29f03eeeb41f7c1b6d609cddaf1babc81d..4af610982aae31199fc131c1b597b4ec5144434f 100644
--- a/product/ERP5Type/ERP5Type.py
+++ b/product/ERP5Type/ERP5Type.py
@@ -310,6 +310,7 @@ class ERP5TypeInformation(XMLObject,
       'device',
       'device_configuration',
       'data_descriptor',
+      'data_sink',
       # LEGACY - needs a warning - XXX-JPS
       'tax_movement',
     )