Computed dependent field
It seems that it's very easy to implement a computed dependent field. Suppose there is a term reference (field_section) on an edit form with YOUR_FORM_ID.

function YOUR_MODULE_NAME_form_alter(&amp;$form, &amp;$form_state, $form_id) {
  if ($form_id == YOUR_FORM_ID) {

    // Add an AJAX behaviour to field_section:
    // After you will select a new term on the edit form,
    // YOUR_MODULE_NAME_form_alter and
    // _YOUR_MODULE_NAME_form_section_callback will be called.
    $form['field_section'][LANGUAGE_NONE]['#ajax'] = array(
      'event' =&gt; 'change',
      'callback' =&gt; '_YOUR_MODULE_NAME_form_section_callback',
      'wrapper' =&gt; 'nomination-desc-wrapper',
      'method' =&gt; 'replace',
      'effect' =&gt; 'fade'
    );

    // Add a wrapper for our computed dependent field.
    // At the begining it will be invisible
    $form['nomination_desc_container'] = array(
      '#type' =&gt; 'hidden',
      '#weight' =&gt; 2,
      '#attributes' =&gt; array('id' =&gt; array('nomination-desc-wrapper')),
    );

    // Add a computed dependent field. It will be shown as a text
    $form['nomination_desc_container']['nomination_desc'] = array(
      '#type' =&gt; 'item',
    );

    // This code will be executed during form creation and
    // during each AJAX-call
    if (isset($form_state['values']['field_section'])) {

      // Find taxonomy term
      $tid = $form_state['values']['field_section'][LANGUAGE_NONE][0]['tid'];
      $term = taxonomy_term_load($tid);

      // Show it's description
      $form['nomination_desc_container']['nomination_desc']['#markup'] = $term-&gt;description;

      // Display description wrapper
      $form['nomination_desc_container']['#type'] = 'container';
    }
  }
}

// Just return new wrapper body
function _YOUR_MODULE_NAME_form_section_callback($form, &amp;$form_state) {
  return $form['nomination_desc_container'];
}