A Tool for Using the SBML Format to Represent P Systems which Model Biological Reaction Networks

Type Data Engine of Simulator GUI Component Model Component Fig. 1. Hierarchical structure and relations among the different components of the application. We underline the package (sets of classes) parser, which contains all functionalities to identify the SBML format and transforms it in an input file of the model. The engine simulator package contains several CLIPS files. The controller package contains libraries to communicate among CLIPS and Java. 226 I. Nepomuceno, J.A. Nepomuceno, F.J. Romero-Campero The model presented to simulate the EGFR signalling cascade using continuous membrane system has been implementing by means of CLIPS. It is a productive development and expert system tool which provides a complete environment for the construction of rules and/or object based expert system. The engine of the simulator in CLIPS works independently of the rest of Java package of this tool, that is, the CLIPS package is changeable with other model implemented in CLIPS. In this way we can expand our model and use yet this tool, for example, to model the PI3K phosphorylation. In the Model Component, see Figure 1, there is the parser package. A parser is a program that takes a set of sentences as an input and finds its syntactic structure according to a given grammar; then, the parser transforms this syntactic structure in other kind of structure text. This parser is independent of the model implemented by CLIPS (in this case the EGFR signaling cascade), that is, we can use this parser package for any type of topological and modular model working in the engine of CLIPS simulator. We have implemented three kinds of parsers. The first one, ParserClispToJava, takes a list of reactions written in SBML syntax and identifies the markup language to translate it, and then it builds a list of reactions as a list of rules implemented in Java. This data type is converted in the syntax used in a input file of a list of reactions that understand the model implemented in CLIPS. The second parser, ParserSbmlToJava, is the opposite to the one above; it translates a list of reactions written in a syntax used in the CLIPS engine to a list of rules implemented in Java and this is translated to a SBML model. Finally, we have implemented a third parser, ParserEasyRules, to translate a simple rule written in the style of membrane computing , easier to write for the user, and parses this in SBML or CLIPS format. See Figure 2 for details. The View Component includes all classes that contain the GUI (Guide User Interface). This is the part of the program which allows the user to interact with the application. The Swing Java Package is used in the construction of this GUI. Finally the Controller Component contains the management-reception of events generated between the GUI and the simulator engine. In this moment this interaction is made only in the direction from the GUI to the engine, that is, we can transform the format of the input list of rules of the model implemented and run the engine CLIPS. The second direction, the presentation of the results (the evolution of a number of key proteins in the EGFR signalling cascade) is under development. In figure 3 we present the interface of the application and we explain how to use it. 1 A package is a group of classes whit a similar functionality. 2 This easy syntax to write a reaction is: u[v]memb → u[v]membKineticlaw Using the SBML Format to Represent P Systems 227