docs: def _add_qualified_edge(self, graph: BELGraph, source: Node, target: Node, key: str, bel: str, data: EdgeData):
          """Add a qualified edge to the network."""
          citation_dict = data[CITATION]
  
          citation = self.get_or_create_citation(
              type=citation_dict.get(CITATION_TYPE),
              reference=citation_dict.get(CITATION_REFERENCE),
              name=citation_dict.get(CITATION_NAME),
              title=citation_dict.get(CITATION_TITLE),
              volume=citation_dict.get(CITATION_VOLUME),
              issue=citation_dict.get(CITATION_ISSUE),
              pages=citation_dict.get(CITATION_PAGES),
              date=citation_dict.get(CITATION_DATE),
              first=citation_dict.get(CITATION_FIRST_AUTHOR),
              last=citation_dict.get(CITATION_LAST_AUTHOR),
              authors=citation_dict.get(CITATION_AUTHORS),
          )
  
          evidence = self.get_or_create_evidence(citation, data[EVIDENCE])
  
          properties = self.get_or_create_properties(graph, data)
          if properties is None:
              return
  
          annotations = self._get_annotation_entries_from_data(graph, data)
  
          return self.get_or_create_edge(
              source=source,
              target=target,
              relation=data[RELATION],
              bel=bel,
              sha512=key,
              data=data,
              evidence=evidence,
              properties=properties,
              annotations=annotations,
          )