diff --git a/includes/spaces.views.inc b/includes/spaces.views.inc
index 90fd04a..c073117 100644
--- a/includes/spaces.views.inc
+++ b/includes/spaces.views.inc
@@ -44,16 +44,18 @@ function spaces_views_data() {
   $data = array();
   // This defines a fake "pseudo" table.
   $data['spaces']['table']['group']  = t('Spaces');
-  $data['spaces']['table']['join'] = array(
-    'node' => array(
-      'left_field' => 'nid',
-      'field' => 'id',
-    ),
-    'users' => array(
-      'left_field' => 'uid',
+
+  $info = field_info_field(OG_AUDIENCE_FIELD);
+  foreach ($info['bundles'] as $entity_type => $bundles) {
+    $entity_info = entity_get_info($entity_type);
+    $base_table = $entity_info['base table'];
+    $entity_id = $entity_info['entity keys']['id'];
+    $data['spaces']['table']['join'][$base_table] = array(
+      'left field' => $entity_id,
       'field' => 'id',
-    ),
-  );
+    );
+  }
+
   $data['spaces']['current'] = array(
     'title' => t('Content in current space'),
     'help' => t('Filters content to only those that belong to the current space.'),
diff --git a/spaces_og/plugins/space_og.inc b/spaces_og/plugins/space_og.inc
index 407025f..e452568 100644
--- a/spaces_og/plugins/space_og.inc
+++ b/spaces_og/plugins/space_og.inc
@@ -184,10 +184,17 @@ class space_og extends space_type_purl {
       case 'node':
         $table = $query->ensure_table('field_data_group_audience', $relationship);
         $query->add_where(0, "$table.group_audience_gid", $this->og->gid);
+        $query->add_where(0, "$table.entity_type", 'node');
+        break;
+      case 'taxonomy_term_data':
+        $table = $query->ensure_table('field_data_group_audience', $relationship);
+        $query->add_where(0, "$table.group_audience_gid", $this->og->gid);
+        $query->add_where(0, "$table.entity_type", 'taxonomy_term');
         break;
       case 'users':
         $table = $query->ensure_table('og_membership', $relationship);
         $query->add_where(0, "$table.gid", $this->og->gid);
+        $query->add_where(0, "$table.entity_type", 'user');
         break;
     }
   }
