001package org.biopax.paxtools.pattern.miner;
002
003import org.biopax.paxtools.model.level3.Protein;
004import org.biopax.paxtools.model.level3.ProteinReference;
005import org.biopax.paxtools.pattern.Pattern;
006import org.biopax.paxtools.pattern.PatternBox;
007import org.biopax.paxtools.pattern.constraint.NOT;
008import org.biopax.paxtools.pattern.constraint.Type;
009
010import static org.biopax.paxtools.pattern.constraint.ConBox.*;
011
012/**
013 * Miner for the transcriptional regulation pattern.
014 * @author Ozgun Babur
015 */
016public class ControlsExpressionMiner extends AbstractSIFMiner
017{
018        /**
019         * Constructor that sets name and description.
020         */
021        public ControlsExpressionMiner()
022        {
023                super(SIFEnum.CONTROLS_EXPRESSION_OF);
024        }
025
026        /**
027         * Constructor for extending this class.
028         * @param nameSuppl name
029         * @param descriptionSuppl description
030         */
031        public ControlsExpressionMiner(String nameSuppl, String descriptionSuppl)
032        {
033                super(SIFEnum.CONTROLS_EXPRESSION_OF, nameSuppl, descriptionSuppl);
034        }
035
036        /**
037         * Constructs the pattern.
038         * @return pattern
039         */
040        @Override
041        public Pattern constructPattern()
042        {
043                Pattern p = PatternBox.controlsExpressionWithTemplateReac();
044
045                return p;
046        }
047
048        @Override
049        public String getSourceLabel()
050        {
051                return "TF ER";
052        }
053
054        @Override
055        public String getTargetLabel()
056        {
057                return "product ER";
058        }
059
060        @Override
061        public String[] getMediatorLabels()
062        {
063                return new String[]{"Control", "TempReac"};
064        }
065
066        @Override
067        public String[] getSourcePELabels()
068        {
069                return new String[]{"TF SPE", "TF PE"};
070        }
071
072        @Override
073        public String[] getTargetPELabels()
074        {
075                return new String[]{"product PE", "product SPE"};
076        }
077}