Show query rewrite of VC as title attribute

Change-Id: I6946bf1f9a2f8e7de95d61788c558ce5d5d39446
diff --git a/dev/js/spec/vcSpec.js b/dev/js/spec/vcSpec.js
index 0c86d85..482d384 100644
--- a/dev/js/spec/vcSpec.js
+++ b/dev/js/spec/vcSpec.js
@@ -1986,6 +1986,36 @@
       expect(doc.element().classList.contains('rewritten')).toBeTruthy();
     });
 
+    it('should be described in a title attribute', function () {
+
+            doc = docClass.create(
+        undefined,
+        {
+          "@type":"koral:doc",
+          "key":"Titel",
+          "value":"Baum",
+          "match":"match:eq",
+          "rewrites" : [
+            {
+              "@type" : "koral:rewrite",
+              "operation" : "operation:modification",
+              "src" : "querySerializer",
+              "scope" : "tree"
+            },
+            {
+              "@type" : "koral:rewrite",
+              "operation" : "operation:injection",
+              "src" : "me"
+            }
+          ]
+        });
+      
+      expect(doc.element().classList.contains('doc')).toBeTruthy();
+      expect(doc.element().classList.contains('rewritten')).toBeTruthy();
+      expect(doc.element().lastChild.getAttribute("title")).toEqual("querySerializer: tree (modification)\nme (injection)");
+    });
+
+    
     xit('should be deserialized by docGroups', function () {
       var docGroup = docGroupClass.create(
         undefined,
diff --git a/dev/js/src/vc/rewritelist.js b/dev/js/src/vc/rewritelist.js
index cec95ff..8e68fa0 100644
--- a/dev/js/src/vc/rewritelist.js
+++ b/dev/js/src/vc/rewritelist.js
@@ -32,22 +32,32 @@
 
       this._element = document.createElement('div');
       this._element.setAttribute('class', 'rewrite');
+      var comments = [];
       for (var x in this._list) {
 	      var rewrite = this._list[x];
+
+        // This is a blind element
 	      var span = document.createElement('span');
 
 	      // Set class attribute
 	      span.setAttribute('class', rewrite.operation());
 
 	      // Append source information
-	      span.addT(rewrite.src());
+	      var rewriteText = rewrite.src();
 
 	      // Append scope information
 	      if (rewrite.scope() !== undefined) {
-	        span.addT(': ' + rewrite.scope());
+	        rewriteText += ': ' + rewrite.scope();
 	      };
+
+	      // Append source information
+	      span.addT(rewriteText);
+
+        comments.push(rewriteText + ' (' + rewrite.operation() + ')');
+        
 	      this._element.appendChild(span);
       };
+      this._element.setAttribute("title", comments.join("\n"))
       return this._element;
     }
   };