docs: def _process_evidence_view(self, limit):
          """
          Here we fetch the evidence (code and publication) for the associations.
          The evidence codes are mapped from the standard GO codes to ECO.
          J numbers are added for publications.
          We will only add the evidence if the annotation is in our idhash.
  
          We also pull in evidence qualifiers, as of June 2018 they are
          Data Interpretation Center (eg IMPC)
          external ref (eg UniProtKB:Q9JHI2-3 for Proteoform/Marker assoc)
          Phenotyping Center (eg WTSI)
          Resource Name (eg MGP)
          MP-Sex-Specificity (eg NA, M, F)
  
          Triples:
          <annot_id> dc:evidence <evidence_id>
          <pub_id> a owl:NamedIndividual
          <annot_id> dc:source <pub_id>
  
          :param limit:
          :return:
  
          """
  
          if self.test_mode:
              graph = self.testgraph
          else:
              graph = self.graph
  
          model = Model(graph)
          line_counter = 0
          LOG.info("getting evidence and pubs for annotations")
          raw = '/'.join((self.rawdir, 'evidence_view'))
          col = [
              'annot_evidence_key', 'annot_key', 'evidence_code', 'jnumid', 'qualifier',
              'qualifier_value', 'annotation_type']
          with open(raw, 'r') as reader:
              reader.readline()  # read the header row; skip
              for line in reader:
                  line = line.rstrip("\n")
                  line_counter += 1
                  row = line.split('\t')
  
                  annot_evidence_key = row[col.index('annot_evidence_key')]
                  annot_key = int(row[col.index('annot_key')])
                  evidence_code = row[col.index('evidence_code')]
                  jnumid = row[col.index('jnumid')]
                  qualifier = row[col.index('qualifier')]
                  qualifier_value = row[col.index('qualifier_value')]
                  # annotation_type = row[col.index('annotation_type')]
  
                  if self.test_mode and annot_key not in self.test_keys.get('annot'):
                      continue
  
                  # add the association id to map to the evidence key
                  # (to attach the right note to the right assn)
                  self.idhash['notes'][annot_evidence_key] = annot_key
  
                  assoc_id = self.idhash['annot'].get(annot_key)
  
                  if assoc_id is None:
                      # assume that we only want to add the evidence/source
                      # for annots that we have in our db
                      continue
  
                  evidence_id = self.resolve(evidence_code)
  
                  reference = Reference(graph, jnumid)
                  reference.addRefToGraph()
  
                  # add the ECO and citation information to the annot
                  model.addTriple(assoc_id, self.globaltt['has evidence'], evidence_id)
                  model.addTriple(assoc_id, self.globaltt['source'], jnumid)
  
                  # For Mammalian Phenotype/Genotype annotation types
                  # MGI adds sex specificity qualifiers here
                  if qualifier == 'MP-Sex-Specificity' and qualifier_value in ('M', 'F'):
                      model._addSexSpecificity(assoc_id, self.resolve(qualifier_value))
  
                  if not self.test_mode and limit is not None and line_counter > limit:
                      break
  
          return