diff --git a/src/main/java/de/ids_mannheim/korap/query/serialize/AqlTree.java b/src/main/java/de/ids_mannheim/korap/query/serialize/AqlTree.java
index 96dfead..0a940de 100644
--- a/src/main/java/de/ids_mannheim/korap/query/serialize/AqlTree.java
+++ b/src/main/java/de/ids_mannheim/korap/query/serialize/AqlTree.java
@@ -550,6 +550,7 @@
 		return relation;
 	}
 
+	@SuppressWarnings("unchecked")
 	private LinkedHashMap<String,Object> parseEdgeSpec(ParseTree edgeSpec) {
 		List<ParseTree> annos = getChildrenWithCat(edgeSpec, "edgeAnno");
 		if (annos.size() == 1) return parseEdgeAnno(annos.get(0));
diff --git a/src/main/java/de/ids_mannheim/korap/query/serialize/CosmasTree.java b/src/main/java/de/ids_mannheim/korap/query/serialize/CosmasTree.java
index 1a239da..2e8c44d 100644
--- a/src/main/java/de/ids_mannheim/korap/query/serialize/CosmasTree.java
+++ b/src/main/java/de/ids_mannheim/korap/query/serialize/CosmasTree.java
@@ -409,8 +409,6 @@
             
             boolean putIntoOverlapDisjunction = false;
 
-            ArrayList<Object> sequenceOperands = (ArrayList<Object>) group.get("operands");
-
             // possibly several distance constraints
             for (int i = 0; i < dist_list.getChildCount(); i++) {
                 String direction = dist_list.getChild(i).getChild(0).getChild(0).toStringTree().toLowerCase();
@@ -461,7 +459,8 @@
             	sequence = embeddedSequence;
             	group = makeGroup("or");
             	ArrayList<Object> disjOperands = (ArrayList<Object>) group.get("operands");
-            	LinkedHashMap<String,Object> overlapsGroup = makePosition("overlaps");
+            	String[] sharedClasses = new String[]{"intersects"};
+            	LinkedHashMap<String,Object> overlapsGroup = makePosition(new String[0], sharedClasses);
             	
             	ArrayList<Object> overlapsOperands = (ArrayList<Object>) overlapsGroup.get("operands");
             	// this ensures identity of the operands lists and thereby a distribution of the operands for both created objects 
@@ -577,7 +576,10 @@
                 CosmasCondition c = new CosmasCondition(conditions.getChild(0));
 
                 // create the group expressing the position constraint
-                LinkedHashMap<String, Object> posgroup = makePosition(c.position);
+                String[] frames = new String[]{c.position};
+                String[] sharedClasses = new String[]{"includes"};  // OPBED only defines #IN-corresponding positions
+            	LinkedHashMap<String,Object> posgroup = makePosition(frames, sharedClasses);
+//                LinkedHashMap<String, Object> posgroup = makePosition(c.position);
                 ArrayList<Object> operands = (ArrayList<Object>) posgroup.get("operands");
                 if (c.negated) posgroup.put("exclude", true);
 
@@ -612,7 +614,9 @@
                     // for each condition, create a position group containing a class group.
                     // make position group
                     CosmasCondition c = new CosmasCondition(conditions.getChild(i));
-                    LinkedHashMap<String, Object> posGroup = makePosition(c.position);
+                    String[] frames = new String[]{c.position};
+                    String[] sharedClasses = new String[]{"includes"};  // OPBED only defines #IN-corresponding positions
+                	LinkedHashMap<String,Object> posGroup = makePosition(frames, sharedClasses);
                     operands.add(posGroup);
                     if (c.negated) posGroup.put("exclude", "true");
                     ArrayList<Object> posOperands = new ArrayList<Object>();
diff --git a/src/main/java/de/ids_mannheim/korap/query/serialize/PoliqarpPlusTree.java b/src/main/java/de/ids_mannheim/korap/query/serialize/PoliqarpPlusTree.java
index 08b269f..c29a69d 100644
--- a/src/main/java/de/ids_mannheim/korap/query/serialize/PoliqarpPlusTree.java
+++ b/src/main/java/de/ids_mannheim/korap/query/serialize/PoliqarpPlusTree.java
@@ -228,7 +228,7 @@
 		}
 
 		if (nodeCat.equals("position")) {
-			LinkedHashMap<String,Object> position = makePosition(parseFrame(node.getChild(0)));
+			LinkedHashMap<String,Object> position = parseFrame(node.getChild(0));
 			putIntoSuperObject(position);
 			objectStack.push(position);
 			stackedObjects++;
@@ -425,8 +425,29 @@
 		return new Integer[]{min,max};
 	}
 
-	private String parseFrame(ParseTree node) {
-		return node.toStringTree(parser);
+	private LinkedHashMap<String,Object> parseFrame(ParseTree node) {
+		String operator = node.toStringTree(parser);
+		String[] frames = new String[]{""};
+		String[] sharedClasses = new String[]{"includes"};
+		switch (operator) {
+			case "contains":
+				frames = new String[]{};
+				break;
+			case "matches":
+				frames = new String[]{"matches"};
+				break;
+			case "startswith":
+				frames = new String[]{"startswith"};
+				break;
+			case "endswith":
+				frames = new String[]{"endswith"};
+				break;	
+			case "overlaps":
+				frames = new String[]{"overlapsLeft","overlapsRight"};
+				sharedClasses = new String[]{"intersects"};
+				break;
+		}
+		return makePosition(frames,sharedClasses);
 	}
 
 
@@ -668,12 +689,13 @@
 //				"[base=geht][base=der][]*[base=Mann]",
 //				"<cnx/c=vp (class=header&id=7)>",
 //				"<cnx/c=vp class=header&id=a>",
-				"[][]*[base=Mann]",
-				"focus(2&3|4:contains({2:<s>},[base=mann]))",
-				"relatesTo(cnx/c:<s>,<np>)",
-				"dominates(cnx/c*:<np>,[base=Baum])",
-				"submatch(2:<np>{2:<s>})",
-				"focus(3:{1:[orth=der]}{3:[]}{2:[orth=Mann]})"
+//				"[][]*[base=Mann]",
+//				"focus(2&3|4:contains({2:<s>},[base=mann]))",
+//				"relatesTo(cnx/c:<s>,<np>)",
+//				"dominates(cnx/c*:<np>,[base=Baum])",
+//				"submatch(2:<np>{2:<s>})",
+//				"focus(3:{1:[orth=der]}{3:[]}{2:[orth=Mann]})",
+				"[base=geht][base=der][]*contains(<s>,<np>)"
 		};
 //		PoliqarpPlusTree.verbose=true;
 		for (String q : queries) {
diff --git a/src/test/java/CosmasTreeTest.java b/src/test/java/CosmasTreeTest.java
index c35a4f5..eb6e2b8 100644
--- a/src/test/java/CosmasTreeTest.java
+++ b/src/test/java/CosmasTreeTest.java
@@ -278,7 +278,7 @@
 		query="Sonne /+w4 Mond";
 		String prox4 = 
 					"{@type=korap:group, operation=operation:or, operands=[" +
-						"{@type=korap:group, operation=operation:position, frame=frame:overlaps, operands=[" +
+						"{@type=korap:group, operation=operation:position, frames=[], sharedClasses=[intersects], operands=[" +
 							"{@type=korap:group, operation=operation:class, class=0, operands=[" +	
 								"{@type=korap:token, wrap={@type=korap:term, key=Sonne, layer=orth, match=match:eq}}" +
 							"]}," +
@@ -309,7 +309,7 @@
 		query="Sonne /-w4 Mond";
 		String prox5 = 
 				"{@type=korap:group, operation=operation:or, operands=[" +
-					"{@type=korap:group, operation=operation:position, frame=frame:overlaps, operands=[" +
+					"{@type=korap:group, operation=operation:position, frames=[], sharedClasses=[intersects], operands=[" +
 						"{@type=korap:group, operation=operation:class, class=0, operands=[" +	
 							"{@type=korap:token, wrap={@type=korap:term, key=Mond, layer=orth, match=match:eq}}" +
 						"]}," +
@@ -340,7 +340,7 @@
 		query="Sonne /w4 Mond";
 		String prox6 = 
 				"{@type=korap:group, operation=operation:or, operands=[" +
-					"{@type=korap:group, operation=operation:position, frame=frame:overlaps, operands=[" +
+					"{@type=korap:group, operation=operation:position, frames=[], sharedClasses=[intersects], operands=[" +
 						"{@type=korap:group, operation=operation:class, class=0, operands=[" +	
 							"{@type=korap:token, wrap={@type=korap:term, key=Sonne, layer=orth, match=match:eq}}" +
 						"]}," +
@@ -409,9 +409,9 @@
 		
 		query="Sonne /-w4 Mond /+w2 Sterne";
 		
-		String mondsterne = 
-					"{@type=korap:token, wrap={@type=korap:term, key=Mond, layer=orth, match=match:eq}}," +
-					"{@type=korap:token, wrap={@type=korap:term, key=Sterne, layer=orth, match=match:eq}}" ;
+//		String mondsterne = 
+//					"{@type=korap:token, wrap={@type=korap:term, key=Mond, layer=orth, match=match:eq}}," +
+//					"{@type=korap:token, wrap={@type=korap:term, key=Sterne, layer=orth, match=match:eq}}" ;
 		
 		String mondsterneClasses = 
 					"{@type=korap:group, operation=operation:class, class=0, operands=[" +	
@@ -420,12 +420,12 @@
 					"{@type=korap:group, operation=operation:class, class=0, operands=[" +	
 						"{@type=korap:token, wrap={@type=korap:term, key=Sterne, layer=orth, match=match:eq}}" +
 					"]}";
-		String mondsterneSeq = 
-					"{@type=korap:group, operation=operation:sequence, operands=[" +
-						mondsterne +
-					"], inOrder=true, distances=[" +
-						"{@type=korap:distance, key=w, boundary={@type=korap:boundary, min=1, max=2}, min=1, max=2}" +
-					"]}" ;
+//		String mondsterneSeq = 
+//					"{@type=korap:group, operation=operation:sequence, operands=[" +
+//						mondsterne +
+//					"], inOrder=true, distances=[" +
+//						"{@type=korap:distance, key=w, boundary={@type=korap:boundary, min=1, max=2}, min=1, max=2}" +
+//					"]}" ;
 		String mondsterneClassesSeq = 
 				"{@type=korap:reference, operation=operation:focus, classRef=[0], operands=[" +
 					"{@type=korap:group, operation=operation:sequence, operands=[" +
@@ -434,18 +434,18 @@
 						"{@type=korap:distance, key=w, boundary={@type=korap:boundary, min=1, max=2}, min=1, max=2}" +
 					"]}" +
 				"]}" ;
-		String mondsterneOv =
-					"{@type=korap:group, operation=operation:position, frame=frame:overlaps, operands=[" +
-						mondsterne +
-					"]}";
+//		String mondsterneOv =
+//					"{@type=korap:group, operation=operation:position, frames=[], sharedClasses=[intersects], operands=[" +
+//						mondsterne +
+//					"]}";
 		String mondsterneClassesOv =
-				"{@type=korap:group, operation=operation:position, frame=frame:overlaps, operands=[" +
+				"{@type=korap:group, operation=operation:position, frames=[], sharedClasses=[intersects], operands=[" +
 					mondsterneClasses +
 				"]}";
-		String mondsterneAll =
-					"{@type=korap:group, operation=operation:or, operands=[" +
-						mondsterneOv + "," + mondsterneClassesSeq +
-					"]}";
+//		String mondsterneAll =
+//					"{@type=korap:group, operation=operation:or, operands=[" +
+//						mondsterneOv + "," + mondsterneClassesSeq +
+//					"]}";
 		String mondsterneAllClasses = 
 					"{@type=korap:group, operation=operation:or, operands=[" +
 						mondsterneClassesOv + "," + mondsterneClassesSeq +
@@ -454,7 +454,7 @@
 		
 		String prox6 = 
 			"{@type=korap:group, operation=operation:or, operands=[" +
-				"{@type=korap:group, operation=operation:position, frame=frame:overlaps, operands=[" +
+				"{@type=korap:group, operation=operation:position, frames=[], sharedClasses=[intersects], operands=[" +
 					"{@type=korap:group, operation=operation:class, class=0, operands=[" +	
 						mondsterneAllClasses  + 
 					"]}," +
@@ -727,7 +727,7 @@
 		query="#BEG(der /w3:5 Mann) /+w10 kommt"; // nesting #BEG() in a distance group
 		String beg2 = 
 					"{@type=korap:group, operation=operation:or, operands=[" +
-						"{@type=korap:group, operation=operation:position, frame=frame:overlaps, operands=[" +
+						"{@type=korap:group, operation=operation:position, frames=[], sharedClasses=[intersects], operands=[" +
 							"{@type=korap:group, operation=operation:class, class=0, operands=[" +
 								beg1 +
 							"]}" + "," +
@@ -755,7 +755,7 @@
 		query="kommt /+w10 #BEG(der /w3:5 Mann)";
 		String beg3 = 
 				"{@type=korap:group, operation=operation:or, operands=[" +
-						"{@type=korap:group, operation=operation:position, frame=frame:overlaps, operands=[" +
+						"{@type=korap:group, operation=operation:position, frames=[], sharedClasses=[intersects], operands=[" +
 							"{@type=korap:group, operation=operation:class, class=0, operands=[" +
 								kommt + 
 //							"," +
@@ -1021,7 +1021,7 @@
 		query = "#BED(der , sa)";
 		String bed1 = 
 				"{@type=korap:reference, operation=operation:focus, classRef=[1], operands= [" +
-					"{@type=korap:group, operation=operation:position, frame=frame:startswith, operands=[" +
+					"{@type=korap:group, operation=operation:position, frames=[startswith], sharedClasses=[includes], operands=[" +
 						"{@type=korap:span, key=s}," +
 						"{@type=korap:group, operation=operation:class, class=1, operands=[" +
 							"{@type=korap:token, wrap={@type=korap:term, key=der, layer=orth, match=match:eq}}" +
@@ -1035,7 +1035,7 @@
 		query = "#BED(der Mann , +pe)";
 		String bed2 = 
 				"{@type=korap:reference, operation=operation:focus, classRef=[1], operands= [" +
-						"{@type=korap:group, operation=operation:position, frame=frame:endswith, operands=[" +
+						"{@type=korap:group, operation=operation:position, frames=[endswith], sharedClasses=[includes], operands=[" +
 							"{@type=korap:span, key=p}," +
 							"{@type=korap:group, operation=operation:class, class=1, operands=[" +
 								"{@type=korap:group, operation=operation:sequence, operands=[" +
@@ -1053,7 +1053,7 @@
 		String bed3 = 
 				"{@type=korap:reference, operation=operation:focus, classRef=[1], operands=[" +
 					"{@type=korap:group, operation=operation:sequence, operands=[" +
-						"{@type=korap:group, operation=operation:position, frame=frame:startswith, operands=[" +
+						"{@type=korap:group, operation=operation:position, frames=[startswith], sharedClasses=[includes], operands=[" +
 							"{@type=korap:span, key=s}," +
 							"{@type=korap:group, operation=operation:class, class=1, operands=[" +
 								"{@type=korap:group, operation=operation:sequence, operands=[" +
@@ -1062,7 +1062,7 @@
 								"]}" +
 							"]}" +
 						"]}," +
-						"{@type=korap:group, operation=operation:position, frame=frame:startswith, operands=[" +
+						"{@type=korap:group, operation=operation:position, frames=[startswith], sharedClasses=[includes], operands=[" +
 							"{@type=korap:span, key=p}," +
 							"{@type=korap:group, operation=operation:class, class=2, operands=[" +
 								"{@type=korap:group, operation=operation:sequence, operands=[" +
@@ -1086,7 +1086,7 @@
 		query = "Der:sa";
 		String col1 = 
 				"{@type=korap:reference, operation=operation:focus, classRef=[1], operands=[" +
-					"{@type=korap:group, operation=operation:position, frame=frame:startswith, operands=[" +
+					"{@type=korap:group, operation=operation:position, frames=[startswith], sharedClasses=[includes], operands=[" +
 						"{@type=korap:span, key=s}," +
 						"{@type=korap:group, operation=operation:class, class=1, operands=[" +
 							"{@type=korap:token, wrap={@type=korap:term, key=Der, layer=orth, match=match:eq}}" +
@@ -1101,19 +1101,19 @@
 		String col2 = 
 				"{@type=korap:reference, operation=operation:focus, classRef=[1], operands=[" +
 					"{@type=korap:group, operation=operation:sequence, operands=[" +
-						"{@type=korap:group, operation=operation:position, frame=frame:startswith, operands=[" +
+						"{@type=korap:group, operation=operation:position, frames=[startswith], sharedClasses=[includes], operands=[" +
 							"{@type=korap:span, key=s}," +
 							"{@type=korap:group, operation=operation:class, class=1, operands=[" +
 									"{@type=korap:token, wrap={@type=korap:term, key=Mann, layer=orth, match=match:eq}}" +
 							"]}" +
 						"]}," +
-						"{@type=korap:group, operation=operation:position, frame=frame:startswith, operands=[" +
+						"{@type=korap:group, operation=operation:position, frames=[startswith], sharedClasses=[includes], operands=[" +
 							"{@type=korap:span, key=p}," +
 							"{@type=korap:group, operation=operation:class, class=2, operands=[" +
 									"{@type=korap:token, wrap={@type=korap:term, key=Mann, layer=orth, match=match:eq}}" +
 							"]}" +
 						"], exclude=true}," +
-						"{@type=korap:group, operation=operation:position, frame=frame:endswith, operands=[" +
+						"{@type=korap:group, operation=operation:position, frames=[endswith], sharedClasses=[includes], operands=[" +
 							"{@type=korap:span, key=t}," +
 							"{@type=korap:group, operation=operation:class, class=3, operands=[" +
 									"{@type=korap:token, wrap={@type=korap:term, key=Mann, layer=orth, match=match:eq}}" +
diff --git a/src/test/java/PoliqarpPlusTreeTest.java b/src/test/java/PoliqarpPlusTreeTest.java
index 046c374..6cbd2a2 100644
--- a/src/test/java/PoliqarpPlusTreeTest.java
+++ b/src/test/java/PoliqarpPlusTreeTest.java
@@ -386,7 +386,7 @@
 				"{@type=korap:group, operation=operation:sequence, " +
 				"operands=[" +
 					"{@type=korap:token, wrap={@type=korap:term, layer=lemma, key=der, match=match:eq}}," +
-					"{@type=korap:group, operation=operation:position, frame=frame:contains, operands=[" +
+					"{@type=korap:group, operation=operation:position, frames=[],sharedClasses=[includes], operands=[" +
 					  "{@type=korap:span, key=s}," +
 					  "{@type=korap:span, key=np}" +
 					"]}" +
@@ -403,7 +403,7 @@
 	public void testLeadingTrailingEmptyTokens() throws QueryException {
 		// startswith(<s>, [][base=Mann]
 		String et1 = 
-			"{@type=korap:group, operation=operation:position, frame=frame:startswith, operands=[" +	
+			"{@type=korap:group, operation=operation:position, frames=[startswith],sharedClasses=[includes], operands=[" +	
 				"{@type=korap:span, key=s}," +
 				"{@type=korap:group, operation=operation:sequence, operands=[" +
 					"{@type=korap:token}," +
@@ -469,7 +469,7 @@
 					"{@type=korap:group, operation=operation:repetition, operands=[" +
 						"{@type=korap:token}" +
 					"], boundary={@type=korap:boundary, min=1}, min=1}," +
-					"{@type=korap:group, operation=operation:position, frame=frame:contains, operands=[" +
+					"{@type=korap:group, operation=operation:position, frames=[],sharedClasses=[includes], operands=[" +
 					  "{@type=korap:span, key=s}," +
 					  "{@type=korap:span, key=np}" +
 					"]}," +
@@ -909,21 +909,21 @@
 	@Test
 	public void testPositions() throws QueryException {
 		// contains(<s>,<np>)
-		String pos1 = "{@type=korap:group, operation=operation:position, frame=frame:contains, operands=[" +
+		String pos1 = "{@type=korap:group, operation=operation:position, frames=[],sharedClasses=[includes], operands=[" +
 				  "{@type=korap:span, key=s}," +
 				  "{@type=korap:span, key=np}" +
 				"]}";
 		assertTrue(equalsQueryContent(pos1, "contains(<s>,<np>)"));
 		
 		// contains(<s>,[base=Mann])
-		String pos2 = "{@type=korap:group, operation=operation:position, frame=frame:contains, operands=[" +
+		String pos2 = "{@type=korap:group, operation=operation:position, frames=[],sharedClasses=[includes], operands=[" +
 				  "{@type=korap:span, key=s}," +
 				  "{@type=korap:token, wrap= {@type=korap:term, layer=lemma, key=Mann, match=match:eq}}" +
 				"]}";
 		assertTrue(equalsQueryContent(pos2, "contains(<s>,[base=Mann])"));
 		
 		// contains(<s>,[orth=der][orth=Mann])
-		String pos3 = "{@type=korap:group, operation=operation:position, frame=frame:contains, operands=[" +
+		String pos3 = "{@type=korap:group, operation=operation:position, frames=[],sharedClasses=[includes], operands=[" +
 				  	"{@type=korap:span, key=s}," +
 				  	"{@type=korap:group, operation=operation:sequence, operands=[" +
 				  		"{@type=korap:token, wrap={@type=korap:term, layer=orth, key=der, match=match:eq}}," +
@@ -938,7 +938,7 @@
 		String pos4 = 
 				"{@type=korap:group, operation=operation:sequence, operands=[" +
 					"{@type=korap:token, wrap={@type=korap:term, layer=lemma, key=Auto, match=match:eq}}," +
-					"{@type=korap:group, operation=operation:position, frame=frame:contains, operands=[" +
+					"{@type=korap:group, operation=operation:position, frames=[],sharedClasses=[includes], operands=[" +
 				  		"{@type=korap:span, key=s}," +
 				  		"{@type=korap:token, wrap={@type=korap:term, layer=lemma, key=Mann, match=match:eq}}" +
 				  	"]}" +
@@ -949,7 +949,7 @@
 		
 		// contains(<s>,[pos=N]*)
 		String pos5 = 
-					"{@type=korap:group, operation=operation:position, frame=frame:contains, operands=[" +
+					"{@type=korap:group, operation=operation:position, frames=[],sharedClasses=[includes], operands=[" +
 				  		"{@type=korap:span, key=s}," +
 				  		"{@type=korap:group, operation=operation:repetition, " +
 				  			"operands=[{@type=korap:token, wrap={@type=korap:term, layer=pos, key=N, match=match:eq}}" +
@@ -964,7 +964,7 @@
 		String pos6 = 
 				"{@type=korap:group, operation=operation:sequence, operands=[" +
 					"{@type=korap:token, wrap={@type=korap:term, layer=lemma, key=Auto, match=match:eq}}," +
-					"{@type=korap:group, operation=operation:position, frame=frame:contains, operands=[" +
+					"{@type=korap:group, operation=operation:position, frames=[],sharedClasses=[includes], operands=[" +
 				  		"{@type=korap:span, key=s}," +
 				  		"{@type=korap:group, operation=operation:repetition, " +
 				  			"operands=[{@type=korap:token, wrap={@type=korap:term, layer=pos, key=N, match=match:eq}}" +
@@ -981,9 +981,9 @@
 	public void testNestedPositions() throws QueryException {
 		// contains(<s>,startswith(<np>,[orth=Der]))
 		String npos1 = 
-			"{@type=korap:group, operation=operation:position, frame=frame:contains, operands=[" +
+			"{@type=korap:group, operation=operation:position, frames=[],sharedClasses=[includes], operands=[" +
 				"{@type=korap:span, key=s}," +
-				"{@type=korap:group, operation=operation:position, frame=frame:startswith, operands=[" +
+				"{@type=korap:group, operation=operation:position, frames=[startswith],sharedClasses=[includes], operands=[" +
 					"{@type=korap:span, key=np}," +
 					"{@type=korap:token, wrap={@type=korap:term, layer=orth, key=Der, match=match:eq}}" +
 				"]}" +
@@ -1046,7 +1046,7 @@
 		// focus(1:startswith(<s>,{1:<np>}))
 		String shr4 = 
 			"{@type=korap:reference, operation=operation:focus, classRef=[1], operands=[" +
-				"{@type=korap:group, operation=operation:position, frame=frame:startswith, operands=[" +
+				"{@type=korap:group, operation=operation:position, frames=[startswith],sharedClasses=[includes], operands=[" +
 					"{@type=korap:span, key=s}," +
 					"{@type=korap:group, operation=operation:class, class=1, operands=[" +
 						"{@type=korap:span, key=np}" +
@@ -1060,7 +1060,7 @@
 		// focus(3: startswith(<s>, {3:[base=der]{1:[mate/p=ADJA]{2:[tt/p=NN]}}})) 
 		String shr5 = 
 			"{@type=korap:reference, operation=operation:focus, classRef=[3], operands=[" +
-				"{@type=korap:group, operation=operation:position, frame=frame:startswith, operands=[" +
+				"{@type=korap:group, operation=operation:position, frames=[startswith],sharedClasses=[includes], operands=[" +
 					"{@type=korap:span, key=s}," +
 					"{@type=korap:group, operation=operation:class, class=3, operands=[" +
 						"{@type=korap:group, operation=operation:sequence, operands=[" +
@@ -1084,7 +1084,7 @@
 		// split(3: startswith(<s>, {3:[base=der]{1:[mate/p=ADJA]{2:[tt/p=NN]}}})) 
 		String shr6 = 
 			"{@type=korap:reference, operation=operation:split, classRef=[3], operands=[" +
-				"{@type=korap:group, operation=operation:position, frame=frame:startswith, operands=[" +
+				"{@type=korap:group, operation=operation:position, frames=[startswith],sharedClasses=[includes], operands=[" +
 					"{@type=korap:span, key=s}," +
 					"{@type=korap:group, operation=operation:class, class=3, operands=[" +
 						"{@type=korap:group, operation=operation:sequence, operands=[" +
@@ -1108,7 +1108,7 @@
 		// split(2|3: startswith(<s>, {3:[base=der]{1:[mate/p=ADJA]{2:[tt/p=NN]}}})) 
 		String shr7 = 
 			"{@type=korap:reference, operation=operation:split, classRef=[2, 3], classRefOp=classRefOp:intersection, operands=[" +
-				"{@type=korap:group, operation=operation:position, frame=frame:startswith, operands=[" +
+				"{@type=korap:group, operation=operation:position, frames=[startswith],sharedClasses=[includes], operands=[" +
 					"{@type=korap:span, key=s}," +
 					"{@type=korap:group, operation=operation:class, class=3, operands=[" +
 						"{@type=korap:group, operation=operation:sequence, operands=[" +
@@ -1172,7 +1172,7 @@
 		query = "submatch(1,4:contains(<s>,[base=Haus]))";
 		expected = 
 			"{@type=korap:reference, operation=operation:focus, operands=[" +
-				"{@type=korap:group, operation=operation:position, frame=frame:contains, operands=[" +
+				"{@type=korap:group, operation=operation:position, frames=[],sharedClasses=[includes], operands=[" +
 					"{@type=korap:span, key=s}," +
 					"{@type=korap:token, wrap= {@type=korap:term, layer=lemma, key=Haus, match=match:eq}}" +
 				"]}" +
