private void prepareAndClassifyWords(ConvPhrase pCp) {
    int wordPos = 0;

    // First create all the processed word instances
    for (ConvWord thisWord : pCp.getAllWords()) {
      ProcessedWord newPw = ProcessedWord.createFrom(thisWord, wordPos++);
      this.allWords.add(newPw);
    }

    // Then classify the processed words
    for (ProcessedWord thisWord : this.allWords) {
      thisWord.classify(this.ac, getConvConfig());
    }
  }
  protected void interpretQuestion() {
    this.phrase = ConvPhrase.createNewPhrase(this.ac, getQuestionText());

    prepareAndClassifyWords(this.phrase);
  }