code: def _empty_cache(self, termlist=None):
          
          if termlist is None:
              for term in six.itervalues(self.terms):
                  term._empty_cache()
          else:
              for term in termlist:
                  try:
                      self.terms[term.id]._empty_cache()
                  except AttributeError:
                      self.terms[term]._empty_cache()
docs: Empty the cache associated with each `Term` instance.
  
          This method is called when merging Ontologies or including
          new terms in the Ontology to make sure the cache of each
          term is cleaned and avoid returning wrong memoized values
          (such as Term.rchildren() TermLists, which get memoized for
          performance concerns)