docs: def _process_ortholog_classes(self, limit=None):
          """
          This method add the KEGG orthology classes to the graph.
  
          If there's an embedded enzyme commission number,
          that is added as an xref.
  
          Triples created:
          <orthology_class_id> is a class
          <orthology_class_id> has label <orthology_symbols>
          <orthology_class_id> has description <orthology_description>
          :param limit:
  
          :return:
          """
  
          LOG.info("Processing ortholog classes")
          if self.test_mode:
              graph = self.testgraph
          else:
              graph = self.graph
          model = Model(graph)
          line_counter = 0
          raw = '/'.join((self.rawdir, self.files['ortholog_classes']['file']))
          with open(raw, 'r', encoding="iso-8859-1") as csvfile:
              filereader = csv.reader(csvfile, delimiter='\t', quotechar='\"')
              for row in filereader:
                  line_counter += 1
                  (orthology_class_id, orthology_class_name) = row
  
                  if self.test_mode and orthology_class_id \
                          not in self.test_ids['orthology_classes']:
                      continue
  
                  # The orthology class is essentially a KEGG gene ID
                  # that is species agnostic.
                  # Add the ID and label as a gene family class
  
                  other_labels = re.split(r'[;,]', orthology_class_name)
                  # the first one is the label we'll use
                  orthology_label = other_labels[0]
  
                  orthology_class_id = 'KEGG-'+orthology_class_id.strip()
  
                  orthology_type = self.globaltt['gene_family']
                  model.addClassToGraph(
                      orthology_class_id, orthology_label, orthology_type)
                  if len(other_labels) > 1:
                      # add the rest as synonyms
                      # todo skip the first
                      for s in other_labels:
                          model.addSynonym(orthology_class_id, s.strip())
  
                      # add the last one as the description
                      d = other_labels[len(other_labels)-1]
                      model.addDescription(orthology_class_id, d)
  
                      # add the enzyme commission number (EC:1.2.99.5)as an xref
                      # sometimes there's two, like [EC:1.3.5.1 1.3.5.4]
                      # can also have a dash, like EC:1.10.3.-
                      ec_matches = re.findall(r'((?:\d+|\.|-){5,7})', d)
                      if ec_matches is not None:
                          for ecm in ec_matches:
                              model.addXref(orthology_class_id, 'EC:' + ecm)
  
                  if not self.test_mode and limit is not None and line_counter > limit:
                      break
  
          LOG.info("Done with ortholog classes")
          return