diff --git a/ckanext/odsh/harvesters/statistikamtnordharvester.py b/ckanext/odsh/harvesters/statistikamtnordharvester.py
index aea0a1ead5c5b63e0afcee95c8dc4a79868e4bd6..165435e4d9c2c975b65ead7ce2aa6a6c205d697e 100755
--- a/ckanext/odsh/harvesters/statistikamtnordharvester.py
+++ b/ckanext/odsh/harvesters/statistikamtnordharvester.py
@@ -174,15 +174,17 @@ class StatistikamtNordHarvester(ODSHBaseHarvester):
     @staticmethod
     def add_extras(package_dict, values):
         # issued sollte noch geliefert werden!
-        package_dict['extras'].append({
-          'key': 'issued', 'value': datetime.datetime.now().isoformat()})
+        #package_dict['extras'].append({
+        #  'key': 'issued', 'value': datetime.datetime.now().isoformat()})
         try:
             if values['ZeitraumVon'] != "":
                 package_dict['extras'].append({
-                  'key': 'temporal_start', 'value': values['ZeitraumVon']})
+                  'key': 'temporal_start', 'value': datetime.datetime.strptime(values['ZeitraumVon'], '%Y-%m-%d')
+                        .isoformat()})
             if values['ZeitraumBis'] != "":
                 package_dict['extras'].append({
-                  'key': 'temporal_end', 'value': values['ZeitraumBis']})
+                  'key': 'temporal_end', 'value': datetime.datetime.strptime(values['ZeitraumBis'], '%Y-%m-%d')
+                        .isoformat()})
         except KeyError as kerr:
             log.debug("Date not available: " + str(kerr))
         package_dict['extras'].append({
diff --git a/ckanext/odsh/helpers.py b/ckanext/odsh/helpers.py
index 2cefbd48495ecc10af3db7d66d97e0b414cd1a0b..767fcff4d988d4bf41ac7ab30bf5fc8a0c11e450 100644
--- a/ckanext/odsh/helpers.py
+++ b/ckanext/odsh/helpers.py
@@ -109,7 +109,7 @@ def odsh_render_datetime(datetime_, date_format='{0.day:02d}.{0.month:02d}.{0.ye
     if not datetime_:
         return ''
     try:
-        DATETIME_FORMAT = '%Y-%m-%d'
+        DATETIME_FORMAT = '%Y-%m-%dT%H:%M:%S'
         dt = datetime.datetime.strptime(
             datetime_, DATETIME_FORMAT)
         return dt.strftime('%d.%m.%Y')
diff --git a/ckanext/odsh/plugin.py b/ckanext/odsh/plugin.py
index 6462e580e14931d552e88e4d9a2998b449df83c2..b4365123dacb299afda520206df777495aa9723a 100644
--- a/ckanext/odsh/plugin.py
+++ b/ckanext/odsh/plugin.py
@@ -77,7 +77,7 @@ def odsh_group_id_selected(selected, group_id):
 
 
 def known_spatial_uri(key, data, errors, context):
-    value = _extract_value(key, data, 'spatial_uri')
+    value = _extract_value(data, 'spatial_uri')
 
     if not value:
         raise toolkit.Invalid('spatial_uri:odsh_spatial_uri_error_label')
@@ -115,7 +115,7 @@ def known_spatial_uri(key, data, errors, context):
     data[('extras', new_index+1, 'value')] = spatial
 
 
-def _extract_value(key, data, field):
+def _extract_value(data, field):
     key = None
     for k in data.keys():
         if data[k] == field:
@@ -123,12 +123,20 @@ def _extract_value(key, data, field):
             break
     if key is None:
         return None
-
     return data[(key[0], key[1], 'value')]
 
+def _set_value(data, field, value):
+    key = None
+    for k in data.keys():
+        if data[k] == field:
+            key = k
+            break
+    if key is None:
+        return None
+    data[(key[0], key[1], 'value')] = value
 
 def odsh_validate_extra_date(key, field, data, errors, context):
-    value = _extract_value(key, data, field)
+    value = _extract_value(data, field)
 
     if not value:
         # Statistikamt Nord does not always provide temporal_start/end,
@@ -137,10 +145,10 @@ def odsh_validate_extra_date(key, field, data, errors, context):
             raise toolkit.Invalid(field+':odsh_'+field+'_error_label')
     else:
         try:
-            # date.split('T')[0] will yield "2012-01-01"
-            # no matter if the date is like "2012-01-01" or "2012-01-01T00:00:00"
-            datetime.datetime.strptime(
-                value.split('T')[0], '%Y-%m-%d').isoformat()
+            dt=parse(value, dayfirst=True)
+            _set_value(data, field, dt.isoformat())
+            # datetime.datetime.strptime(
+            #    value.split('T')[0], '%Y-%m-%d').isoformat()
         except ValueError:
             raise toolkit.Invalid(field+':odsh_'+field+'_not_date_error_label')
 
@@ -168,7 +176,6 @@ def odsh_tag_string_convert(key, data, errors, context):
     '''Takes a list of tags that is a comma-separated string (in data[key])
     and parses tag names. These are added to the data dict, enumerated. They
     are also validated.'''
-
     if isinstance(data[key], basestring):
         tags = [tag.strip()
                 for tag in data[key].split(',')