Index: modules/taxonomy.views.inc
===================================================================
RCS file: /cvs/drupal-contrib/contributions/modules/views/modules/taxonomy.views.inc,v
retrieving revision 1.57.2.6
diff -u -p -r1.57.2.6 taxonomy.views.inc
--- modules/taxonomy.views.inc	29 Apr 2010 18:17:37 -0000	1.57.2.6
+++ modules/taxonomy.views.inc	3 Jun 2010 20:18:13 -0000
@@ -324,6 +324,66 @@ function taxonomy_views_data() {
   );
 
   // ----------------------------------------------------------------------
+  // term_data table aliased to give us fields for the parent term
+
+  $data['term_data_parent']['table']['group']  = t('Taxonomy');
+  $data['term_data_parent']['table']['join'] = array(
+    'node' => array(
+      'table' => 'term_data',
+      'left_table' => 'term_hierarchy',
+      'left_field' => 'parent',
+      'field' => 'tid',
+    ),
+    'node_revision' => array(
+      'table' => 'term_data',
+      'left_table' => 'term_hierarchy',
+      'left_field' => 'parent',
+      'field' => 'tid',
+    ),
+    'term_data' => array(
+      'table' => 'term_data',
+      'left_table' => 'term_hierarchy',
+      'left_field' => 'parent',
+      'field' => 'tid',
+    ),
+  );
+
+  // Parent tid field
+  $data['term_data_parent']['tid'] = array(
+    'title' => t('Parent term ID'),
+    'help' => t('The taxonomy parent term ID'),
+    'field' => array(
+      'handler' => 'views_handler_field_numeric',
+      'click sortable' => TRUE,
+    ),
+    'sort' => array(
+      'handler' => 'views_handler_sort',
+    ),
+  );
+
+  // Parent term name field
+  $data['term_data_parent']['name'] = array(
+    'title' => t('Parent term'),
+    'help' => t('Taxonomy parent term. Note that using this can cause duplicate nodes to appear in views; you must add filters to reduce the result set.'),
+    'field' => array(
+      'handler' => 'views_handler_field_taxonomy',
+      'click sortable' => TRUE,
+    ),
+  );
+
+  // Parent term description
+  $data['term_data_parent']['description'] = array(
+    'title' => t('Parent term description'), // The item it appears as on the UI,
+    'help' => t('The description associated with a taxonomy term.'),
+    'field' => array(
+      'field' => 'description', // the real field
+      'group' => t('Taxonomy'), // The group it appears in on the UI,
+      'handler' => 'views_handler_field_markup',
+      'format' => FILTER_FORMAT_DEFAULT,
+    ),
+  );
+
+  // ----------------------------------------------------------------------
   // term_synonym table
 
   $data['term_synonym']['table']['group']  = t('Taxonomy');
@@ -428,6 +488,9 @@ function taxonomy_views_handlers() {
       'views_handler_field_taxonomy' => array(
         'parent' => 'views_handler_field',
       ),
+      'views_handler_field_taxonomy_parent' => array(
+        'parent' => 'views_handler_field_taxonomy',
+      ),
       'views_handler_filter_vocabulary_vid' => array(
         'parent' => 'views_handler_filter_in_operator',
       ),
