diff --git a/.gitignore b/.gitignore
index 97c429a..8176c0d 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1,2 +1,7 @@
 .*
 !/.gitignore
+target
+tmp
+logs
+cache_store
+*.iml
diff --git a/src/main/java/de/ids_mannheim/korap/config/Attributes.java b/src/main/java/de/ids_mannheim/korap/config/Attributes.java
index 8e607eb..6e2c227 100644
--- a/src/main/java/de/ids_mannheim/korap/config/Attributes.java
+++ b/src/main/java/de/ids_mannheim/korap/config/Attributes.java
@@ -88,6 +88,8 @@
 
     public static final String CORPUS_SIGLE = "corpusSigle";
 
+    public static final String DOC_SIGLE = "docSigle";
+
     public static final String REF_CORPUS = "refCorpus";
     public static final String QUERY = "query";
     public static final String CACHE = "cache";
diff --git a/src/main/java/de/ids_mannheim/korap/resource/rewrite/DocMatchRewrite.java b/src/main/java/de/ids_mannheim/korap/resource/rewrite/DocMatchRewrite.java
index 796592a..b3f99f5 100644
--- a/src/main/java/de/ids_mannheim/korap/resource/rewrite/DocMatchRewrite.java
+++ b/src/main/java/de/ids_mannheim/korap/resource/rewrite/DocMatchRewrite.java
@@ -1,10 +1,7 @@
 package de.ids_mannheim.korap.resource.rewrite;
 
 import com.fasterxml.jackson.databind.JsonNode;
-import de.ids_mannheim.korap.config.BeanInjectable;
-import de.ids_mannheim.korap.config.BeansFactory;
-import de.ids_mannheim.korap.config.ContextHolder;
-import de.ids_mannheim.korap.config.KustvaktConfiguration;
+import de.ids_mannheim.korap.config.*;
 import de.ids_mannheim.korap.exceptions.KustvaktException;
 import de.ids_mannheim.korap.handlers.DocumentDao;
 import de.ids_mannheim.korap.resources.Document;
@@ -12,6 +9,7 @@
 import net.sf.ehcache.Cache;
 import net.sf.ehcache.CacheManager;
 import net.sf.ehcache.Element;
+import org.w3c.dom.Attr;
 
 /**
  * @author hanl
@@ -43,8 +41,8 @@
         if (this.docDao == null)
             throw new RuntimeException("Document dao must be set!");
 
-        if (node.has("docID")) {
-            String docID = node.get("docID");
+        if (node.has(Attributes.DOC_SIGLE)) {
+            String docID = node.get(Attributes.DOC_SIGLE);
             Element e = this.cache.get(docID);
             if (e == null) {
                 doc = docDao.findbyId(docID, null);
@@ -55,7 +53,7 @@
                 doc = (Document) e.getObjectValue();
 
             if (doc != null && doc.isDisabled())
-                node.removeNode();
+                node.removeNode(Attributes.DOC_SIGLE);
         }
         return node.rawNode();
     }
