code: private boolean couldBeRelativeOrDependentClause(AnalyzedTokenReadings[] tokens, int pos) {
      boolean comma;
      boolean relPronoun;
      if (pos >= 1) {
        // avoid false alarm: "Das Wahlrecht, das Frauen zugesprochen bekamen." etc:
        comma = tokens[pos-1].getToken().equals(",");
        relPronoun = comma && tokens[pos].hasAnyLemma(REL_PRONOUN_LEMMAS);
        if (relPronoun && pos+3 < tokens.length) {
          return true;
        }
      }
      if (pos >= 2) {
        // avoid false alarm: "Der Mann, in dem quadratische Fische schwammen."
        // or: "Die Polizei erwischte die Diebin, weil diese Ausweis und Visitenkarte hinterließ."
        comma = tokens[pos-2].getToken().equals(",");
        if(comma) {
          boolean prep = tokens[pos-1].hasPosTagStartingWith("PRP:");
          relPronoun = tokens[pos].hasAnyLemma(REL_PRONOUN_LEMMAS);
          return prep && relPronoun || (tokens[pos-1].hasPosTag("KON:UNT") && (tokens[pos].hasLemma("jen") || tokens[pos].hasLemma("dies")));
        }
      }
      return false;
    }
docs: TODO: improve this so it only returns true for real relative clauses