code: def check_component_for_specific_sbo_term(items, term):
      r
      # check for multiple allowable SBO terms
      if isinstance(term, list):
          return [elem for elem in items if
                  elem.annotation is None or
                  'sbo' not in elem.annotation or
                  not any(i in elem.annotation['sbo'] for i in term)]
      else:
          return [elem for elem in items if
                  elem.annotation is None or
                  'sbo' not in elem.annotation or
                  term not in elem.annotation['sbo']]
docs: r"""
      Identify model components that lack a specific SBO term(s).
  
      Parameters
      ----------
      items : list
          A list of model components i.e. reactions to be checked for a specific
          SBO term.
      term : str or list of str
          A string denoting a valid SBO term matching the regex '^SBO:\d{7}$'
          or a list containing such string elements.
  
      Returns
      -------
      list
          The components without any or that specific SBO term annotation.