diff --git a/public/biopet-extensions/src/main/scala/nl/lumc/sasc/biopet/extensions/picard/SortVcf.scala b/public/biopet-extensions/src/main/scala/nl/lumc/sasc/biopet/extensions/picard/SortVcf.scala
index cdc7304281b4ea4aa4c1b3a8218275352210d483..62370802495173555ae1a6e76cbdba9abbe6d1a8 100644
--- a/public/biopet-extensions/src/main/scala/nl/lumc/sasc/biopet/extensions/picard/SortVcf.scala
+++ b/public/biopet-extensions/src/main/scala/nl/lumc/sasc/biopet/extensions/picard/SortVcf.scala
@@ -17,11 +17,12 @@ package nl.lumc.sasc.biopet.extensions.picard
 
 import java.io.File
 
+import nl.lumc.sasc.biopet.core.Reference
 import nl.lumc.sasc.biopet.utils.config.Configurable
 import org.broadinstitute.gatk.utils.commandline.{Input, Output}
 
 /** Extension for picard SortVcf */
-class SortVcf(val root: Configurable) extends Picard {
+class SortVcf(val root: Configurable) extends Picard with Reference {
   javaMainClass = new picard.vcf.SortVcf().getClass.getName
 
   @Input(doc = "Input VCF(s) to be sorted. Multiple inputs must have the same sample names (in order)", required = true)
@@ -33,6 +34,11 @@ class SortVcf(val root: Configurable) extends Picard {
   @Input(doc = "Sequence dictionary to use", required = true)
   var sequenceDictionary: File = _
 
+  override def beforeGraph(): Unit = {
+    super.beforeGraph()
+    if (sequenceDictionary == null) sequenceDictionary = referenceDict
+  }
+
   /** Returns command to execute */
   override def cmdLine = super.cmdLine +
     (if (inputAsStdin) required("INPUT=", new File("/dev/stdin"), spaceSeparated = false)