001package org.biopax.paxtools.model.level3;
002
003/**
004 * Tagger interface for protein, dna and rna entities
005 */
006public interface SequenceEntityReference extends EntityReference
007{
008
009        /**
010         * An organism, e.g. 'Homo sapiens'. This is the organism that the entity is found in. Pathways may
011         * not have an organism associated with them, for instance, reference pathways from KEGG.
012         * Sequence-based entities (DNA, protein, RNA) may contain an xref to a sequence database that
013         * contains organism information, in which case the information should be consistent with the value
014         * for ORGANISM.
015         *
016         * @return the organism for this gene.
017         */
018        BioSource getOrganism();
019
020        /**
021         * An organism, e.g. 'Homo sapiens'. This is the organism that the entity is found in. Pathways may
022         * not have an organism associated with them, for instance, reference pathways from KEGG.
023         * Sequence-based entities (DNA, protein, RNA) may contain an xref to a sequence database that
024         * contains organism information, in which case the information should be consistent with the value
025         * for ORGANISM.
026         *
027         * @param source new organism for this gene
028         */
029        void setOrganism(BioSource source);
030
031        /**
032         * Polymer sequence in uppercase letters. For DNA, usually A,C,G,T letters representing the
033         * nucleosides of adenine, cytosine, guanine and thymine, respectively; for RNA, usually A, C, U,
034         * G; for protein, usually the letters corresponding to the 20 letter IUPAC amino acid code.
035         * @return sequence - primary structure of a biopolymer.
036         */
037        String getSequence();
038
039        /**
040         * Polymer sequence in uppercase letters. For DNA, usually A,C,G,T letters representing the
041         * nucleosides of adenine, cytosine, guanine and thymine, respectively; for RNA, usually A, C, U,
042         * G; for protein, usually the letters corresponding to the 20 letter IUPAC amino acid code.
043         * @param sequence Polymer sequence in uppercase letters.
044         */
045        void setSequence(String sequence);
046
047
048}