diff --git a/field_group_list.module b/field_group_list.module
index 83391b4..acc457c 100644
--- a/field_group_list.module
+++ b/field_group_list.module
@@ -24,7 +24,7 @@ function field_group_list_theme() {
       'variables' => array('element' => NULL, 'group' => NULL),
     ),
     'field_group_list_field_wrapper' => array(
-      'variables' => array('group' => NULL, 'field_name' => NULL),
+      'variables' => array('group' => NULL, 'field_name' => NULL, 'field_label' => NULL),
     ),
     'field_group_list_help_text' => array(
       'variables' => array('field_group' => NULL),
@@ -45,16 +45,22 @@ function theme_field_group_list_group_wrapper($variables) {
   $element['#type'] = 'markup';
   $element['#weight'] = $group->weight;
   $classes = check_plain($group->format_settings['instance_settings']['classes']);
-  if ($group->format_settings['formatter'] == 'ordered') {
-    $element['#prefix'] = '<ol class="field-group-format ' . $group->group_name . ' ' . $classes . '">';
-    $element['#suffix'] = '</ol>';
-  }
-  else {
-    $element['#prefix'] = '<ul class="field-group-format ' . $group->group_name . ' ' . $classes . '">';
-    $element['#suffix'] = '</ul>';
+  switch ($group->format_settings['formatter']) {
+    case 'ordered':
+      $element['#prefix'] = '<ol class="field-group-format ' . $group->group_name . ' ' . $classes . '">';
+      $element['#suffix'] = '</ol>';
+      break;
+    case 'unordered':
+      $element['#prefix'] = '<ul class="field-group-format ' . $group->group_name . ' ' . $classes . '">';
+      $element['#suffix'] = '</ul>';
+      break;
+    case 'definition/description':
+      $element['#prefix'] = '<dl class="field-group-format ' . $group->group_name . ' ' . $classes . '">';
+      $element['#suffix'] = '</dl>';
+      break;
   }
   foreach (element_children($element) as $field_name) {
-    $element[$field_name] += theme('field_group_list_field_wrapper', array('group' => $group, 'field_name' => $field_name));
+    $element[$field_name] += theme('field_group_list_field_wrapper', array('group' => $group, 'field_name' => $field_name, 'field_label' => $element[$field_name]['#title']));
   }
   return $element;
 }
@@ -68,9 +74,19 @@ function theme_field_group_list_group_wrapper($variables) {
 function theme_field_group_list_field_wrapper($variables) {
   $group = $variables['group'];
   $field_name = $variables['field_name'];
+  $field_label = $variables['field_label'];
   $element = array();
-  $element['#prefix'] = '<li class="' . $group->group_name . ' ' . $field_name . '">';
-  $element['#suffix'] = '</li>';
+  switch ($group->format_settings['formatter']) {
+    case 'definition/description':
+      $element['#prefix'] = '<dt class="' . $group->group_name . ' ' . $field_name . '">' . $field_label . '</dt><dd class="' . $group->group_name . ' ' . $field_name . '">';
+      $element['#suffix'] = '</dd>';
+      break;
+    case 'ordered':
+    case 'unordered':
+      $element['#prefix'] = '<li class="' . $group->group_name . ' ' . $field_name . '">';
+      $element['#suffix'] = '</li>';
+      break;
+  }
   return $element;
 }
 
@@ -82,8 +98,8 @@ function field_group_list_field_group_formatter_info() {
     'display' => array(
       'list' => array(
         'label' => t('List'),
-        'description' => t('This list renders the inner content in a ordered or unordered list.'),
-        'format_types' => array('ordered', 'unordered'),
+        'description' => t('This list renders the inner content in a ordered, unordered or definition/description list.'),
+        'format_types' => array('ordered', 'unordered', 'definition/description'),
         'instance_settings' => array('classes' => ''),
         'default_formatter' => 'unordered',
       ),
