def transform(self, raw_documents):
        documents = []

        for raw_doc in raw_documents:
            everything = []
            allWords, required_values, target, conditions, tables, question_type, proper_nouns, component_name = nlp_nlidb.nlp_nlidb(
                raw_doc
            )
            # everything.extend(allWords)
            # everything.extend(required_values)
            # everything.extend(target)
            everything.extend(conditions)
            # everything.extend(tables)
            # everything.extend(question_type)
            # everything.extend(question)

            everything.extend(allWords)
            # everything.extend(proper_nouns)
            if len(everything) == 0:
                documents.append(raw_doc)
            else:
                documents.append(" ".join(everything))

        return documents
    def to_sql(self, nl_query):

        if FuzzyAdventure.easter_egg(nl_query):
            return [42]

        sql, category = FuzzyAdventure.tc.template(nl_query)
        keywords = []
        allWords, required_values, target, conditions, tables, question_type, proper_nouns, component_name  = nlp_nlidb.nlp_nlidb(nl_query)
        keywords.extend(allWords)
        keywords.extend(conditions)
        keywords.extend(component_name)
        keywords.extend(map(lambda x: x.upper(), proper_nouns))
        answer = term_selector.TermSelector.fill_in_the_blanks(sql, keywords)

        return answer