docs: def _add_g2p_assoc(self, graph, strain_id, sex, assay_id, phenotypes, comment):
          """
          Create an association between a sex-specific strain id
          and each of the phenotypes.
          Here, we create a genotype from the strain,
          and a sex-specific genotype.
          Each of those genotypes are created as anonymous nodes.
  
          The evidence code is hardcoded to be:
              ECO:experimental_phenotypic_evidence.
  
          :param g:
          :param strain_id:
          :param sex:
          :param assay_id:
          :param phenotypes: a list of phenotypes to association with the strain
          :param comment:
          :return:
  
          """
          geno = Genotype(graph)
          model = Model(graph)
          eco_id = self.globaltt['experimental phenotypic evidence']
          strain_label = self.idlabel_hash.get(strain_id)
          # strain genotype
          genotype_id = '_:'+'-'.join((re.sub(r':', '', strain_id), 'genotype'))
          genotype_label = '[' + strain_label + ']'
  
          sex_specific_genotype_id = '_:'+'-'.join((
              re.sub(r':', '', strain_id), sex, 'genotype'))
          if strain_label is not None:
              sex_specific_genotype_label = strain_label + ' (' + sex + ')'
          else:
              sex_specific_genotype_label = strain_id + '(' + sex + ')'
  
          genotype_type = self.globaltt['sex_qualified_genotype']
          if sex == 'm':
              genotype_type = self.globaltt['male_genotype']
          elif sex == 'f':
              genotype_type = self.globaltt['female_genotype']
  
          # add the genotype to strain connection
          geno.addGenotype(
              genotype_id, genotype_label,
              self.globaltt['genomic_background'])
          graph.addTriple(
              strain_id, self.globaltt['has_genotype'], genotype_id)
  
          geno.addGenotype(
              sex_specific_genotype_id, sex_specific_genotype_label,
              genotype_type)
  
          # add the strain as the background for the genotype
          graph.addTriple(
              sex_specific_genotype_id,
              self.globaltt['has_sex_agnostic_part'],
              genotype_id)
  
          # #############    BUILD THE G2P ASSOC    #############
          # TODO add more provenance info when that model is completed
  
          if phenotypes is not None:
              for phenotype_id in phenotypes:
                  assoc = G2PAssoc(
                      graph, self.name, sex_specific_genotype_id, phenotype_id)
                  assoc.add_evidence(assay_id)
                  assoc.add_evidence(eco_id)
                  assoc.add_association_to_graph()
                  assoc_id = assoc.get_association_id()
                  model.addComment(assoc_id, comment)
                  model._addSexSpecificity(assoc_id, self.resolve(sex))
  
          return