diff -urp --strip-trailing-cr ../drupal-6.x-dev/modules/taxonomy/taxonomy.module ./modules/taxonomy/taxonomy.module
--- ../drupal-6.x-dev/modules/taxonomy/taxonomy.module	2007-10-02 18:15:56.000000000 +0200
+++ ./modules/taxonomy/taxonomy.module	2007-10-26 20:33:06.000000000 +0200
@@ -343,11 +343,10 @@ function taxonomy_del_term($tid) {
 function taxonomy_form($vid, $value = 0, $help = NULL, $name = 'taxonomy') {
   $vocabulary = taxonomy_vocabulary_load($vid);
   $help = ($help) ? $help : $vocabulary->help;
-  if ($vocabulary->required) {
-    $blank = 0;
-  }
-  else {
-    $blank = '<'. t('none') .'>';
+  $blank = 0;
+  
+  if (!$vocabulary->multiple) {
+    $blank = ($vocabulary->required) ? t('- Please choose -') : t('- None selected -');
   }
 
   return _taxonomy_term_select(check_plain($vocabulary->name), $name, $value, $vid, $help, intval($vocabulary->multiple), $blank);
@@ -892,7 +891,7 @@ function _taxonomy_term_select($title, $
   $options = array();
 
   if ($blank) {
-    $options[0] = $blank;
+    $options[''] = $blank;
   }
   if ($tree) {
     foreach ($tree as $term) {
@@ -902,10 +901,6 @@ function _taxonomy_term_select($title, $
         $options[] = $choice;
       }
     }
-    if (!$blank && !$value) {
-      // required but without a predefined value, so set first as predefined
-      $value = $tree[0]->tid;
-    }
   }
 
   return array('#type' => 'select',
