class_docstr: Lexicon acquisition. produce opinion lexicon and an aspect lexicon based
  on input dataset.
  
  Attributes:
      opinion_candidate_list_curr_iter (dict): candidate opinion terms in the current iteration
      opinion_candidate_list_prev_iter (dict): opinion candidates list of previous iteration
      opinion_candidate_list (dict): opinion terms learned across all iterations
      opinion_candidates_list_final (list): final opinion candidates list
      opinion_candidate_list_raw (dict): all instances of candidate opinion terms
                                         across all iterations
      aspect_candidate_list_curr_iter (dict): candidate terms in the current iteration
      aspects_candidate_list_prev_iter(list): Aspect candidates list of previous iteration
      aspect_candidate_list (list):  aspect terms learned across all iterations
      aspect_candidates_list_final (list): final aspect candidates list
      aspect_candidate_list_raw (dict): all instances of candidate aspect terms
                                        across all iterations
docstr: add new aspect term to table.
  Args:
      terms (list of CandidateTerm): candidate terms list
docstr_tok: ["add","new","aspect","term","to","table",".","Args",":","terms","(","list","of","CandidateTerm",")",":","candidate","terms","list"]
code: def _add_aspect_term(self, terms):
      """
      add new aspect term to table.
      Args:
          terms (list of CandidateTerm): candidate terms list
      """
      for term in terms:
          if term:
              term_entry = AspectTerm(term.term, term.pos, term.lemma)
              if (
                  term_entry not in self.init_aspect_dict
                  and term_entry not in self.aspect_candidate_list
                  and not self.ASPECT_STOP_LIST.is_in_stop_list(
                      term.term[0]
                  )
                  and len(term.term[0]) > 1
              ):
                  _insert_new_term_to_table(
                      term, self.aspect_candidate_list_curr_iter
                  )
  
      return True
  
imports: import copy
  import re
  import sys
  from os import PathLike
  from tqdm import tqdm
  from nlp_architect.models.absa import TRAIN_LEXICONS, LEXICONS_OUT
  from nlp_architect.models.absa import GENERIC_OP_LEX
  from nlp_architect.models.absa.inference.data_types import Polarity
  from nlp_architect.models.absa.train.data_types import AspectTerm, DepRelation, DepRelationTerm, LoadOpinionStopLists, LoadAspectStopLists, OpinionTerm, QualifiedTerm
  from nlp_architect.models.absa.train.rules import rule_1, rule_2, rule_3, rule_4, rule_5, rule_6
  from nlp_architect.models.absa.utils import _load_parsed_docs_from_dir, _write_final_opinion_lex, _load_lex_as_list_from_csv, read_generic_lex_from_file
label_desc: Use image node_id 5 for calling the AcquireTerms obj's underlying member method code with example usage: obj._add_aspect_term(terms) and returns: True