code: def find(self, term, value=False):
          
          if '.' in term:
              parent, term = term.split('.')
              assert parent.lower() == self.record_term_lc, (parent.lower(), self.record_term_lc)
  
          for c in self.children:
              if c.record_term_lc == term.lower():
                  if value is False or c.value == value:
                      yield c
docs: Return a terms by name. If the name is not qualified, use this term's record name for the parent.
          The method will yield all terms with a matching qualified name.