docs: def _parse_patient_variants(self, file):
          """
          :param file: file handler
          :return:
          """
          patient_var_map = self._convert_variant_file_to_dict(file)
          gene_coordinate_map = self._parse_gene_coordinates(
              self.map_files['gene_coord_map'])
          rs_map = self._parse_rs_map_file(self.map_files['dbsnp_map'])
  
          genotype = Genotype(self.graph)
          model = Model(self.graph)
  
          self._add_variant_gene_relationship(patient_var_map, gene_coordinate_map)
  
          for patient in patient_var_map:
              patient_curie = ':{0}'.format(patient)
              # make intrinsic genotype for each patient
              intrinsic_geno_bnode = self.make_id(
                  "{0}-intrinsic-genotype".format(patient), "_")
              genotype_label = "{0} genotype".format(patient)
              genotype.addGenotype(
                  intrinsic_geno_bnode, genotype_label,
                  model.globaltt['intrinsic_genotype'])
  
              self.graph.addTriple(
                  patient_curie, model.globaltt['has_genotype'], intrinsic_geno_bnode)
              for variant_id, variant in patient_var_map[patient].items():
                  build = variant['build']
                  chromosome = variant['chromosome']
                  position = variant['position']
                  reference_allele = variant['reference_allele']
                  variant_allele = variant['variant_allele']
                  genes_of_interest = variant['genes_of_interest']
                  rs_id = variant['rs_id']
  
                  variant_label = ''
                  variant_bnode = self.make_id("{0}".format(variant_id), "_")
  
                  # maybe should have these look like the elif statements below
                  if position and reference_allele and variant_allele:
                      variant_label = self._build_variant_label(
                          build, chromosome, position, reference_allele,
                          variant_allele, genes_of_interest)
                  elif not position and reference_allele and variant_allele \
                          and len(genes_of_interest) == 1:
  
                      variant_label = self._build_variant_label(
                          build, chromosome, position, reference_allele, variant_allele,
                          genes_of_interest)
                  elif position and (not reference_allele or not variant_allele) \
                          and len(genes_of_interest) == 1:
  
                      variant_label = "{0}{1}({2}):g.{3}".format(
                          build, chromosome, genes_of_interest[0], position)
                  elif len(genes_of_interest) == 1:
                      variant_label = 'variant of interest in {0} gene of patient' \
                          ' {1}'.format(genes_of_interest[0], patient)
                  else:
                      variant_label = 'variant of interest in patient {0}'.format(patient)
  
                  genotype.addSequenceAlteration(variant_bnode, None)
                  # check if it we have built the label
                  # in _add_variant_gene_relationship()
                  labels = self.graph.objects(
                      BNode(re.sub(r'^_:', '', variant_bnode, 1)), RDFS['label'])
  
                  label_list = list(labels)
  
                  if len(label_list) == 0:
                      model.addLabel(variant_bnode, variant_label)
  
                  self.graph.addTriple(
                      variant_bnode, self.globaltt['in taxon'],
                      self.globaltt['Homo sapiens'])
                  self.graph.addTriple(
                      intrinsic_geno_bnode, self.globaltt['has_variant_part'],
                      variant_bnode)
                  if rs_id:
                      dbsnp_curie = 'dbSNP:{0}'.format(rs_id)
                      model.addSameIndividual(variant_bnode, dbsnp_curie)
  
          self._add_variant_sameas_relationships(patient_var_map, rs_map)
          return