-
Notifications
You must be signed in to change notification settings - Fork 12
Pattern
BioPAX is a language standard for describing biological networks. This software helps to define graph patterns with BioPAX objects, and searches them on BioPAX models.
This tool is developed on top of Paxtools, and effective usage requires knowledge of BioPAX structure and some familiarity with Paxtools.
A pattern is composed of fixed number of BioPAX elements and a list of constraints between. For instance the below illustrated pattern captures pairs of proteins that control two consecutive reactions (an output of first reaction is input to the second).
The Java code equivalent of this pattern is below.
Pattern p = new Pattern(ProteinReference.class, "PR1");
p.add(ConBox.erToPE(), "PR1", "P1");
p.add(ConBox.peToControlledConv(), "P1", "Conv1");
p.add(new Participant(RelType.OUTPUT), "Conv1", "linker");
p.add(ConBox.equal(false), "linker", "P1");
p.add(new ParticipatesInConv(RelType.INPUT), "linker", "Conv2");
p.add(ConBox.equal(false), "Conv1", "Conv2");
p.add(ConBox.convToController(), "Conv2", "P2");
p.add(ConBox.equal(false), "linker", "P2");
p.add(ConBox.peToER(), "P2", "PR2");
p.add(ConBox.equal(false), "PR2", "PR1");
To learn how to use, please start with the PatternQuickStart.
As an example use of this pattern search framework, we defined a set of patterns that capture useful binary interactions between proteins and small molecules in a BioPAX model. Binary interaction types include upstream-to-downstream signal transmissions, controlling expression changes, sequential catalysis by metabolic enzymes, controlling transportation, enzymes consuming or producing chemicals, etc.; read more about PatternBinaryInteractionFramework.
You can find the "fat" (paxtools with dependencies) jar file in BioPAX Downloads or the Maven repository (in the paxtools-console module).
Maven users can add the following lines to their project pom files to use biopax-pattern framework.
<repositories>
<repository>
<id>ossrh</id>
<name>OSSRH Repository</name>
<url>https://oss.sonatype.org/content/groups/public/</url>
</repository>
</repositories>
<dependencies>
<dependency>
<groupId>org.biopax.paxtools</groupId>
<artifactId>pattern</artifactId>
<version>LATEST</version>
</dependency>
</dependencies>
This software is developed as a library, however it also supports searching BioPAX models using some pre-defined patterns and output formats, without any programming. To do this, run the Paxtools JAR (since version 4.3.1-SNAPSHOT) with the following command.
java -Xmx5G -jar paxtools-{version}.jar pattern
A dialog will appear and let you to select a model, a pattern, and output file name.
If the BioPAX pattern framework was useful for your research, please cite the below article in your publications.
Ö Babur, BA Aksoy, I Rodchenkov, SO Sümer, C Sander, E Demir Pattern search in BioPAX models Bioinformatics (2014) 30 (1): 139-140. doi: 10.1093/bioinformatics/btt539