diff --git a/date.module b/date.module
index cd542f2..746b6de 100644
--- a/date.module
+++ b/date.module
@@ -177,6 +177,7 @@ function date_theme() {
     'date_display_single' => $base + array('variables' => array(
         'date' => NULL,
         'timezone' => NULL
+        'attributes' => array(),
     )),
     'date_display_range' => $base + array(
       'variables' => array(
@@ -326,6 +327,8 @@ function date_formatter_process($formatter, $entity_type, $entity, $field, $inst
           $dates[$processed]['formatted_time'] = date_format_date($date, 'custom', date_limit_format($format, array('hour', 'minute', 'second')));
           $dates[$processed]['formatted_timezone'] = date_format_date($date, 'custom', date_limit_format($format, array('timezone')));
         }
+        // Full datetime ISO including the timezone.
+        $dates[$processed]['formatted_datetime_iso'] = date_format($date, 'c');
       }
     }
   }
diff --git a/date.theme b/date.theme
index 8f0151c..9986a31 100644
--- a/date.theme
+++ b/date.theme
@@ -127,9 +127,13 @@ function theme_date_display_combination($vars) {
   }
   // From and To dates match or there is no To date, display a complete single date.
   elseif ($date1 == $date2 || empty($date2)) {
+    if (!empty($entity->rdf_mapping)) {
+      $attributes = array('content' => $dates['value']['formatted_datetime_iso']);
+    }
     $output .= theme('date_display_single', array(
       'date' => $date1, 
       'timezone' => $timezone
+      'attributes' => $attributes,
     ));
   }
   // Same day, different times, don't repeat the date but show both From and To times.
