diff --git a/modules/callbacks.inc b/modules/callbacks.inc
index e7650c9..64f55a0 100644
--- a/modules/callbacks.inc
+++ b/modules/callbacks.inc
@@ -272,6 +272,9 @@ function entity_metadata_taxonomy_term_get_properties($term, array $options, $na
         return $term->parent;
       }
       return array_keys(taxonomy_get_parents($term->tid));
+
+    case 'parents_all':
+      return taxonomy_get_parents_all($term->tid);
   }
 }
 
diff --git a/modules/taxonomy.info.inc b/modules/taxonomy.info.inc
index d66d686..7ebf2f6 100644
--- a/modules/taxonomy.info.inc
+++ b/modules/taxonomy.info.inc
@@ -71,6 +71,12 @@ function entity_metadata_taxonomy_entity_property_info() {
     'setter callback' => 'entity_metadata_taxonomy_term_setter',
     'type' => 'list<taxonomy_term>',
   );
+  $properties['parents_all'] = array(
+    'label' => t("All parent terms"),
+    'description' => t("All parent terms of the taxonomy term, covering all above hierarchy levels."),
+    'getter callback' => 'entity_metadata_taxonomy_term_get_properties',
+    'type' => 'list<taxonomy_term>',
+  );
 
   // Add meta-data about the basic vocabulary properties.
   $properties = &$info['taxonomy_vocabulary']['properties'];
