diff --git a/src/Record.php b/src/Record.php
index <HASH>..<HASH> 100644
--- a/src/Record.php
+++ b/src/Record.php
@@ -189,12 +189,12 @@ class Record
      */
     public function getSubjects($vocabulary = null, $tag = null)
     {
-        return array_filter(Subject::get($this), function (Subject $field) use ($vocabulary, $tag) {
+        return array_values(array_filter(Subject::get($this), function (Subject $field) use ($vocabulary, $tag) {
             $a = is_null($vocabulary) || $vocabulary == $field->vocabulary;
             $b = is_null($tag) || $tag == $field->type;
 
             return $a && $b;
-        });
+        }));
     }
 
     /*************************************************************************
Fix indices in the array returned by Record::getSubjects

Unfortunately `array_filter()` preserves indices. Wrapping it in `array_values()` to prevent this.