Mercurial > repos > cpt > cpt_psm_plotter
comparison lib/CPT/Bio/GFF_Parsing.pm @ 1:8691c1c61a8e draft default tip
planemo upload commit 94b0cd1fff0826c6db3e7dc0c91c0c5a8be8bb0c
| author | cpt |
|---|---|
| date | Mon, 05 Jun 2023 02:48:47 +0000 |
| parents | |
| children |
comparison
equal
deleted
inserted
replaced
| 0:54c7a3ea81e2 | 1:8691c1c61a8e |
|---|---|
| 1 package CPT::Bio::GFF_Parsing; | |
| 2 use Moose; | |
| 3 use autodie; | |
| 4 | |
| 5 my $tags = 'allele anticodon artificial_location | |
| 6 bio_material bound_moiety cell_line cell_type chromosome citation | |
| 7 clone clone_lib codon_start collected_by collection_date compare | |
| 8 country cultivar culture_collection db_xref dev_stage direction | |
| 9 EC_number ecotype environmental_sample estimated_length exception | |
| 10 experiment focus frequency function gap_type gene gene_synonym | |
| 11 germline haplogroup haplotype host identified_by inference isolate | |
| 12 isolation_source lab_host lat_lon linkage_evidence locus_tag | |
| 13 macronuclear map mating_type mobile_element_type mod_base mol_type | |
| 14 ncRNA_class note number old_locus_tag operon organelle organism | |
| 15 partial PCR_conditions PCR_primers phenotype plasmid pop_variant | |
| 16 product protein_id proviral pseudo rearranged replace | |
| 17 ribosomal_slippage rpt_family rpt_type rpt_unit_range rpt_unit_seq | |
| 18 satellite segment serotype serovar sex specimen_voucher | |
| 19 standard_name strain sub_clone sub_species sub_strain tag_peptide | |
| 20 tissue_lib tissue_type transgenic translation transl_except | |
| 21 transl_table trans_splicing variety'; | |
| 22 my %valid_tags = map { $_ => 1 } split( /\s+/, $tags ); | |
| 23 | |
| 24 my $keys = "-10_signal -35_signal 3'UTR 5'UTR | |
| 25 CAAT_signal CDS C_region D-loop D_segment GC_signal J_segment LTR | |
| 26 N_region RBS STS S_region TATA_signal V_region V_segment | |
| 27 assembly_gap attenuator enhancer exon gap gene iDNA intron mRNA | |
| 28 mat_peptide misc_RNA misc_binding misc_difference misc_feature | |
| 29 misc_recomb misc_signal misc_structure mobile_element | |
| 30 modified_base ncRNA old_sequence operon oriT polyA_signal | |
| 31 polyA_site precursor_RNA prim_transcript primer_bind promoter | |
| 32 protein_bind rRNA rep_origin repeat_region sig_peptide source | |
| 33 stem_loop tRNA terminator tmRNA transit_peptide unsure variation"; | |
| 34 my %valid_keys = map { $_ => 1 } split( /\s+/, $keys ); | |
| 35 | |
| 36 has 'tag_conv' => ( is => 'ro', isa => 'HashRef', default => sub { return { | |
| 37 #tags | |
| 38 'dbxref' => 'db_xref', | |
| 39 'parent' => 'note', | |
| 40 'name' => 'label', | |
| 41 'Name' => 'label', | |
| 42 'old-name' => 'obsolete_name', | |
| 43 'id' => 'note', | |
| 44 'nat-host' => 'host', | |
| 45 'genome' => 'note', | |
| 46 'region' => 'source', | |
| 47 }; }); | |
| 48 | |
| 49 | |
| 50 sub fix_gff_tag { | |
| 51 my ($self, $tag) = @_; | |
| 52 # Lowercase it | |
| 53 if(defined $tag && defined(${$self->tag_conv()}{lc($tag)})){ | |
| 54 return ${$self->tag_conv()}{lc($tag)}; | |
| 55 } | |
| 56 return $tag; | |
| 57 } | |
| 58 | |
| 59 | |
| 60 no Moose; | |
| 61 1; | |
| 62 | |
| 63 __END__ | |
| 64 | |
| 65 =pod | |
| 66 | |
| 67 =encoding UTF-8 | |
| 68 | |
| 69 =head1 NAME | |
| 70 | |
| 71 CPT::Bio::GFF_Parsing | |
| 72 | |
| 73 =head1 VERSION | |
| 74 | |
| 75 version 1.99.4 | |
| 76 | |
| 77 =head1 AUTHOR | |
| 78 | |
| 79 Eric Rasche <rasche.eric@yandex.ru> | |
| 80 | |
| 81 =head1 COPYRIGHT AND LICENSE | |
| 82 | |
| 83 This software is Copyright (c) 2014 by Eric Rasche. | |
| 84 | |
| 85 This is free software, licensed under: | |
| 86 | |
| 87 The GNU General Public License, Version 3, June 2007 | |
| 88 | |
| 89 =cut |
