- restructured test directory
- fixed classes in Cosmas II
- matchall fixed
diff --git a/src/main/antlr/cosmas/c2ps.g b/src/main/antlr/cosmas/c2ps.g
index 5a5d46d..ed56030 100644
--- a/src/main/antlr/cosmas/c2ps.g
+++ b/src/main/antlr/cosmas/c2ps.g
@@ -9,7 +9,6 @@
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
grammar c2ps;
-//import c2ps_regex;
options { output=AST; backtrack=true; k=5;}
tokens {C2PQ; OPBED; OPTS; OPBEG; OPEND; OPNHIT; OPALL; OPLEM; OPPROX;
@@ -139,7 +138,6 @@
fragment RE_alter : ( ( RE_char | RE_chgroup ) '|' RE_expr )+;
fragment RE_chgroup : '[' RE_char+ ']';
fragment RE_chars : (RE_char | RE_chgroup | ( '(' RE_expr ')')) (('+'|'*'|FOCC)'?'? |'?')? ;
-//fragment RE_expr : (RE_char | RE_alter | RE_chgroup | RE_group)+;
fragment RE_expr : (RE_alter | RE_chars)+;
fragment REGEX : '"' (RE_expr | '\'' | ':' )* '"';
@@ -155,17 +153,6 @@
| WORD '/' WORD '!'? '=' WORD ':' (WORD|REGEX)
;
-/*
-fragment MORPHEXPR
- : (WORD|regex)
- | WORD ':' (WORD|regex)
- | WORD '!'? '=' (WORD|regex)
- | WORD '!'? '=' WORD ':' (WORD|regex)
- | WORD '/' WORD '!'? '=' (WORD|regex)
- | WORD '/' WORD '!'? '=' WORD ':' (WORD|regex)
- ;
-*/
-
OP_MORPH: 'MORPH('
MORPHEXPR (' '* '&' ' '* MORPHEXPR)* ' '*
')' ;
@@ -176,7 +163,6 @@
//
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
-
c2ps_query
: searchExpr EOF -> ^(C2PQ searchExpr);
diff --git a/src/main/java/de/ids_mannheim/korap/query/serialize/Cosmas2QueryProcessor.java b/src/main/java/de/ids_mannheim/korap/query/serialize/Cosmas2QueryProcessor.java
index b3e1d45..cabf32c 100644
--- a/src/main/java/de/ids_mannheim/korap/query/serialize/Cosmas2QueryProcessor.java
+++ b/src/main/java/de/ids_mannheim/korap/query/serialize/Cosmas2QueryProcessor.java
@@ -492,14 +492,14 @@
((ArrayList<Object>) classRefCheck.get("operands")).add(posgroup);
LinkedHashMap<String, Object> focusGroup = null;
if ((boolean) positionOptions.get("matchall") == true) {
- focusGroup = KoralObjectGenerator.makeResetReference();
+ focusGroup = KoralObjectGenerator.makeClassRefOp("classRefOp:delete",
+ new Integer[]{128+classCounter++}, 128+classCounter);
((ArrayList<Object>) focusGroup.get("operands")).add(classRefCheck);
}
else { // match only first argument
focusGroup = KoralObjectGenerator.wrapInReference(classRefCheck,
- 128 + classCounter - 1);
+ 128 + classCounter);
}
- System.err.println(positionOptions);
// wrap in 'merge' operation if grouping option is set
if (positionOptions.containsKey("grouping")) {
if (positionOptions.get("grouping").equals(true)) {
diff --git a/src/main/java/de/ids_mannheim/korap/query/serialize/util/KoralObjectGenerator.java b/src/main/java/de/ids_mannheim/korap/query/serialize/util/KoralObjectGenerator.java
index 45135ef..804b8f9 100644
--- a/src/main/java/de/ids_mannheim/korap/query/serialize/util/KoralObjectGenerator.java
+++ b/src/main/java/de/ids_mannheim/korap/query/serialize/util/KoralObjectGenerator.java
@@ -237,6 +237,7 @@
return makeReference(classRef, false);
}
+ @Deprecated
public static LinkedHashMap<String, Object> makeResetReference() {
LinkedHashMap<String, Object> group = new LinkedHashMap<String, Object>();
group.put("@type", "korap:reference");