private ConcatExpr parseConcatExpr(Vector<String> tokens, int lo, int hi) {
    ConcatExpr expr = new ConcatExpr();
    for (int i = lo; i < hi; i++) {
      String v = tokens.get(i);
      if (v.length() >= 2 && v.charAt(0) == '<' && v.charAt(v.length() - 1) == '>') {
        expr.addItem(v.substring(1, v.length() - 1), false); //symbol
      } else {
        expr.addItem(v, true); //literal value
      }
    }
    return expr;
  }