OPPL-Galaxy, a Galaxy tool for enhancing ontology exploitation as part of bioinformatics workflows
Full text
JOURNAL OF BIOMEDICAL SEMANTICS Ega˜ na Aranguren et al. Journal of Biomedical Semantics 2013, 4:2 http://www.jbiomedsem.com/content/4/1/2 SOFTWARE Open Access OPPL-Galaxy, a Galaxy tool for enhancing ontology exploitation as part of bioinformatics workflows Mikel Ega˜ na Aranguren1,2*,JesualdoTom ´ as Fern´ andez-Breis3, Chris Mungall4, Erick Antezana5, Alejandro Rodr´ ıguez Gonz´ alez2and Mark D Wilkinson2 Abstract Background: Biomedical ontologies are key elements for building up the Life Sciences Semantic Web. Reusing and building biomedical ontologies requires flexible and versatile tools to manipulate them efficiently, in particular for enriching their axiomatic content. The Ontology Pre Processor Language (OPPL) is an OWL-based language for automating the changes to be performed in an ontology. OPPL augments the ontologists’ toolbox by providing a more efficient, and less error-prone, mechanism for enriching a biomedical ontology than that obtained by a manual treatment. Results: We present OPPL-Galaxy, a wrapper for using OPPL within Galaxy. The functionality delivered by OPPL (i.e. automated ontology manipulation) can be combined with the tools and workflows devised within the Galaxy framework, resulting in an enhancement of OPPL. Use cases are provided in order to demonstrate OPPL-Galaxy’s capability for enriching, modifying and querying biomedical ontologies. Conclusions: Coupling OPPL-Galaxy with other bioinformatics tools of the Galaxy framework results in a system that is more than the sum of its parts. OPPL-Galaxy opens a new dimension of analyses and exploitation of biomedical ontologies, including automated reasoning, paving the way towards advanced biological data analyses. Background Among the various steps that a typical life-sciences research cycle comprises, information extraction from raw data (and its dissemination to the community) remains as one of the most relevant ones. New biological insights are generated by combining information from different sources with the expertise of scientists. Nevertheless, integrating information and generating knowledge out of it is still a challenging task, as the information is frequently captured in computationally opaque formats and dispersed over the Web in resources with idiosyncratic schemas. The Semantic Web [1] aims to overcome the issue of computationally opaque and disperse information in the *Correspondence: [email protected] 1Ontology Engineering Group, School of Computer Science, Technical University of Madrid (UPM), Boadilla del Monte, 28660, Spain 2Biological Informatics Group, Centre for Plant Biotechnology and Genomics (CBGP), Technical University of Madrid (UPM), Pozuelo de Alarc´ on, 28223, Spain Full list of author information is available at the end of the article Web with a set of technologies and standards defined by the W3C: RDF [2], SPARQL [3] and OWL [4]. Therefore, these standards are increasingly used by the Life Sciences community to integrate information (RDF), to query it (SPARQL), and to axiomatically encode consensus knowledge about such information in ontologies (OWL), in the so-called Life Sciences Semantic Web [5]. Biomedical ontologies are essential for the Life Sciences Semantic Web since they offer computationally processable and often Web-oriented representations of agreedupon domain knowledge. The Gene Ontology (GO) [6] stands out as one of the most intensely curated and used biomedical ontologies; other important biomedical ontologies can be found at the Open Biological and Biomedical Ontologies Foundry [7], a project that hosts biomedical ontologies that follow certain design principles (reusability, orthogonality, etc.). Additionally, the National Center for Biomedical Ontology (NCBO) offers access to biomedical ontologies through BioPortal [8], including a set of Web Services. © 2013 Ega˜ na Aranguren et al.; licensee BioMed Central Ltd. This is an Open Access article distributed under the terms of the Creative Commons Attribution License (http://creativecommons.org/licenses/by/2.0), which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited.
Ega˜ na Aranguren et al. Journal of Biomedical Semantics 2013, 4:2 Page 2 of 16 http://www.jbiomedsem.com/content/4/1/2 Current biomedical ontologies support a broad range of tasks: axiomatically rich ontologies are used for intense automated reasoning [9], axiomatically lean ontologies act as vocabularies for Linked Data [10], and typically other functions in between [11]. In order to fulfill such functions, biomedical ontologies should be adapted to fit scientists’ requirements, especially when reusing preexisting ontologies: addition or removal of axioms and entities, inference in relation to external ontologies, selective materialisation of inferred axioms, complex querying, and so forth. Manipulating biomedical ontologies can be a laborious task since they are regularly growing in size [12] and axiomatic complexity [13]. Therefore, advanced tools are needed for efficiently performing such manipulation [14]. The Ontology Pre Processor Language (OPPL) [15] offers the possibility of automating this kind of ontology manipulation. By using OPPL, the ontologist can define the intended manipulation in an OPPL script as a series of additions or removals of axioms to be performed in a concrete ontology. Therefore, the use of OPPL makes the ontology manipulation process more efficient, sustainable and less error-prone. OPPL capabilities have already been demonstrated: it has been used to build an ontology transformation service [16] and for applying [17-20] or detecting [21] OntologyDesignPatterns(ODPs).Also,itispartofPopulous, an application for adding content from spreadsheets to ontologies [22]. OPPL’s versatility and functionality cannot be exploited directly within the typical bioinformatics analyses. Galaxy, a Web server for combining various genomic-oriented tools into workflows [23], offers an ideal platform for making OPPL part of bioinformatics analyses. Therefore, we have developed OPPL-Galaxy, a tool to execute OPPL scripts from within Galaxy. OPPL-Galaxy enhances OPPL’s functionality, i.e. automated ontology manipulation, by providing the possibility of dynamically sending OPPL’s output, that is, an improved ontology, to other Galaxy tools (and making OPPL capable of consuming ontologies as input from other Galaxy tools). This paper presents an overview of OPPL-Galaxy’s design and implementation, including tested use cases that provide a basis for creating more complex analyses. OPPL-Galaxy is also compared to other tools and its benefits and limitations are discussed. Implementation OPPL OPPL implements its own syntax: an extension of the Manchester OWL Syntax (MOS) [24] that includes keywords like ADD (to add an axiom), REMOVE (to remove an axiom), SELECT (to select entities), and so on. An OPPL script defines a query and some actions that should be performed against the retrieved entities (see ‘Basic usage’ use case in Section Results). A query can combine variables (to be bound by a set of named entities) and actual named entities of the target ontology (OWL classes, properties, or individuals). An important constraint in OPPL specifies that every variable must resolve to a group of named entities (or none), not an anonymous OWL expression, to ensure that queries can be answered. The following types of queries can be defined in OPPL (all the queries mix variables with OWL expressions): •OWL queries that exploit automated reasoning. •Syntactic OWL queries that only work with the asserted axioms. •Queries that use a regular expression to match annotation values like rdfs:label. The actions are based on the addition or removal of axioms of any complexity to/from entities retrieved by the query (OWL classes, properties, or instances). Once an OPPL script has been defined, the OPPL engine is passed this script and the ontology to be modified. The OPPL engine, in turn, modifies the ontology according to the changes defined in the OPPL script, generating a new ontology (Figures 1 and 2). Galaxy Galaxy offers an open, Web-based platform for performing genomic analyses [23]. In Galaxy several tools can be combined, ranging from simple data manipulations (e.g. text manipulation) to complex analyses (e.g. statistical analysis of Next-Generation Sequencing data). Such a tool orchestration can be executed from within a single Web interface: the output of a tool can be sent to other tools as input, easing the construction of workflows by combining recurrent tasks. Moreover, a history of all performed actions is stored, so the analyses can be reproduced at any time and shared with other users. Galaxy workflows can be built from the users’ history and shared. Finally, the workflows can be migrated to other systems, like other Galaxy servers or myExperiment [25]. Apart from its functionality and ease of use, another appealing feature of Galaxy is its extensibility, allowing a straightforward integration of command-line tools: the only requirement is to create an XML file containing a description of the tool’s Web interface and inputs/outputs [26]. OPPL-Galaxy OPPL can be executed through the graphical interface of Prot´ eg´ e [27] and Populous. Despite those possible means of manipulating ontologies, OPPL cannot be used as part of a workflow, limiting the possibilities of including other bioinformatics analysis tools, unless a tailored Java
Ega˜ na Aranguren et al. Journal of Biomedical Semantics 2013, 4:2 Page 3 of 16 http://www.jbiomedsem.com/content/4/1/2 Figure 1 Toy ontology for OWL rendering convention. Toy ontology to illustrate the convention for representing abstract OWL structures in Figures depicting use cases. Above, the ontology is rendered using MOS; below, the ontology is rendered with the same convention as in Figures 2, 5, 6, 10 and 14. In those Figures, however, names of OWL entities are not included in the ontologies, since OPPL scripts act on absract structures (any axiomatic pattern that matches the query). Solid circle: named class; dotted circle: anonymous class; dot: named individual; solid arrow: subClassOf axiom; dotted arrow: triple (relation between individuals); line ending in circle: restriction (the small circle points to the filler class; there is no distinction between necessary and necessary/sufficient conditions)a. program is written using the OPPL API. OPPL-Galaxy fills that gap by offering an enhanced version of OPPL that can be used in combination with other Galaxy tools. To that end, an OPPL wrapper was developed as a mediator between Galaxy and both the OPPL 2 API [28] and the OWL API [29] (Figure 3). OPPL-Galaxy takes as input a target ontology and an OPPL script: both artefacts are uploaded to Galaxy by the user or produced as output by another Galaxy tool. It generates a new ontology that has been changed according to the instructions defined in the OPPL script, thus axioms are added or removed. The OPPL-Galaxy Web interface presents the following options (Figure 4): •Target ontology: the input ontology that will be modified by the OPPL script. Since OPPL-Galaxy Figure 2 OPPL pipeline. The OPPL engine takes an ontology (circle group on the left) and an OPPL script (dotted square) as inputs, and performs the changes defined by the OPPL script on the input ontology, thereby generating a new output ontology (modified ontology, on the right).
Ega˜ na Aranguren et al. Journal of Biomedical Semantics 2013, 4:2 Page 4 of 16 http://www.jbiomedsem.com/content/4/1/2 Figure 3 OPPL-Galaxy architecture. The inner circle represents the OPPL wrapper and the outer one Galaxy. Galaxy manages the data and parameters that will be passed to the OPPL wrapper. In order to pass, for instance, an ontology to the OPPL wrapper, the ontology must be first uploaded to Galaxy (or passed to it from the output of another Galaxy tool). Also, Galaxy manages the output of the OPPL wrapper: it can be redirected to other Galaxy tools or downloaded and saved as a standalone file. The OPPL wrapper coordinates the OPPL API (to parse the OPPL script and execute it), the OWL API (to read/write ontologies from stdin/to stdout and perform changes), and the chosen reasoner (to perform inferences). relies on the OWL API for loading and saving ontologies, it can load ontologies in the following formats: OBOF [30], OWL (RDF/XML, OWL/XML, Functional OWL Syntax, MOS), Turtle, and KRSS. •OPPL script: a flat file containing the OPPL script that, when executed, will perform the desired changes in the target ontology. This file may be created by using the Prot´ eg´ e OPPL plugin via the OPPL text editor (with autocompletion), the OPPL script builder, or the OPPL macros tab (see the OPPL manual [31] for details on how to create OPPL scripts). •Output format: the format of the output ontology, either OBOF or OWL (RDF/XML). •Choose reasoner: the reasoner to be used for performing the inference, Pellet [32], HermiT [33], FaCT++ [34], or Elk [35]. The output ontology can be reused as input for other Galaxy tools like ONTO-toolkit [36], or downloaded from the Galaxy Web interface so that it can be used outside Galaxy, for example with Prot´ eg´ e or OBO-Edit [37]. OPPL-Galaxy includes various modules with diverse functionality, apart from executing OPPL scripts. Additionally, other tools are exploited as part of the use cases (NCBO-Galaxy [38], SPARQL-Galaxy, GO::TermFinder). See Table 1 for details. Figure 4 OPPL-Galaxy Web interface. The OPPL-Galaxy Web interface is displayed in the middle pane. In the left pane, a list of standard Galaxy tools is shown; in the right pane, a sample of a history of the executed tasks is shown.
Ega˜ na Aranguren et al. Journal of Biomedical Semantics 2013, 4:2 Page 5 of 16 http://www.jbiomedsem.com/content/4/1/2 Table 1 OPPL-Galaxy distribution and related Galaxy tools OPPL-Galaxy bundle OPPL Executes OPPL scripts OWL Query Perform DL (Description Logics) queries against OWL ontologies, returning a list of named entities that satisfy the query OPPL Query Perform OPPL queries, thus, queries that mix MOS with variables Inference Add the inferred axioms to the input ontology as asserted axioms, generating a new ontology that includes all the axioms Merge Resolves the import axioms and adds the imported ontology to the input ontology file NCBO-Galaxy bundle The NCBO-Galaxy bundle includes modules for retrieving ontologies, extracting subtrees from ontologies, search for terms in ontologies, annotate texts against ontologies, etc. using NCBO Web services. See [38] for details SPARQL-Galaxy bundle SPARQL-Galaxy includes a tool for performing SPARQL queries on an OWL (RDF/XML) ontology; it can be downloaded from the Galaxy Tool Shed (http://toolshed.g2.bx.psu.edu), under ‘Ontology manipulation’. Galaxy-OBO Galaxy-OBO [39] is a fork of Galaxy that includes wrappers for common tools like GO::TermFinder [40] This table provides a detailed list of the OPPL-Galaxy tools and other tools that are executed in the workflows of the use cases. Results This section provides use cases not only demonstrating the utility of OPPL-Galaxy but also showing, through examples, how to use it. The use cases are described in detail in [41]. All the use cases are provided as Galaxy workflows for users to be able to execute them without having to rebuild the use case from scratch. The URLs of the workflows are summarised at Table 2. Basic usage The OPPL-Galaxy bundle includes a simple OPPL script for testing purposes that works with the test ontology also included in the bundle (Figure 5). The OPPL script is described as follows to help the reader understand the remainder of the use cases (more OPPL examples can be found at the OPPL scripts collection [42]): 1 ?agent:CLASS, 2 ?process:CLASS 3 SELECT ?agent SubClassOf participates\_in some ?process 4 WHERE ?agent != Nothing 5 BEGIN 6 ADD ?agent SubClassOf participates\_in only ?process 7 END; Table 2 Galaxy workflows for reproducing the use cases Name Galaxy workflow Basic usage http://biordf.org:8090/u/mikel-egana-aranguren/w/basic-usage-1 Ontology debugging and evaluation∗ http://biordf.org:8090/u/mikel-egana-aranguren/w/ontology-debugging-and-evaluation Complex querying of GO http://biordf.org:8090/u/mikel-egana-aranguren/w/complex-querying-of-go Expansion of gene product annotations through GO structure http://biordf.org:8090/u/mikel-egana-aranguren/w/expansion-of-gene-product-annotations-through-go-structure Selective extraction of modules from GO for term enrichment http://biordf.org:8090/u/mikel-egana-aranguren/w/selective-extraction-of-modules-from-go-for-term-enrichment OWL TBox to ABox transformation for assisting SPARQL queries http://biordf.org:8090/u/mikel-egana-aranguren/w/owl-tbox-to-abox-transformation-for-assisting-sparql-queries The name of the use case (as per section name) is provided in the left column; the URL of the Galaxy workflow is provided in the right column. In order to execute a workflow, the datasets (ontologies, OPPL scripts, GAFs, etc.) must be taken from the history (http://biordf.org:8090/u/mikel-egana-aranguren/h/oppl-galaxy-usecases-for-jbs) or the workflow can be reproduced manually with the same datasets, by uploading them. The workflow “Ontology debugging and evaluation” obtains the ontologies directly from NCBO services. For detailed instructions, see http://wilkinsonlab.info/OPPL-Galaxy. All the workflows can be reproduced in a local Galaxy installation; in order to do so, the workflows and datasets can be downloaded from http://biordf.org:8080/JBSusecases.tar.gz.
Ega˜ na Aranguren et al. Journal of Biomedical Semantics 2013, 4:2 Page 6 of 16 http://www.jbiomedsem.com/content/4/1/2 Figure 5 Basic usage. The OPPL engine takes the target ontology and OPPL script as inputs, and generates a new ontology changed according to the OPPL script. The OPPL script queries the reasoner for a class with a certain restriction (SELECT ... WHERE clause, blue) and adds another restriction to the retrieved class (ADD clause, red). Lines 1 and 2 show the declaration of two variables (?process and ?agent)andtheirtype(CLASS). These variables represent (sets of) OWL classes. Then, line 3 introduces a SELECT clause, which is processed by OPPL and sent to the reasoner asking for the classes that are subclasses of the anonymous expression participates in some ?process: the expression is written in MOS and it mixes named entities of the ontology (the property participates in)withvariables(?process and ?agent, representing sets of classes). Later, in line 4, the classes retrieved as members of the variable ?agent are checked for satisfiability (?agent != Nothing). Finally, the axiom SubClassOf participates in only ?process is added (ADD) to the input ontology, resolving ?agent and ?process to all the classes that have been bound and combinations thereof. Ontology debugging and evaluation Ontology debugging (the process of fixing defects in an ontology) can be a daunting activity, especially when the ontology the scientist is working with has not been developed in-house and/or if it presents a complex axiomatisation over many entities. OPPL-Galaxy can be used for detecting and fixing certain structures that are considered bad practice (antipatterns) or at least ‘suspicious’. The detection of antipatterns also offers a ‘picture’ of the ontology: it can be used to evaluate the overall structure of the ontology as one of the criteria to judge its quality. OPPL-Galaxy provides a means of defining antipatterns as ‘test units’ that can be run automatically against a set of ontologies, as part of Galaxy workflows. The notion of antipatterns in ontologies has already been introduced [43,44]. For example, [44] mentions using the OWL universal restriction (only) without any other restriction on the same property (e.g. some)asa potential antipattern (exclusive universal). This is due to the fact that, the only restriction, on its own, can be trivially satisfied by an unsatisfiable (empty) class, e.g. A subclassof p only (B and C) can be satisfiable even when B disjointWith C, since the semantics of only state that if there is a relation, it must be to (B and C),ornone:(B and C) is empty and therefore would satisfy the none case. The exclusive universal structure can be easily detected in, for example, BioPAX [45], by the following OPPL script (Figure 6): 1 ?target:CLASS, 2 ?prop:OBJECTPROPERTY, 3 ?filler:CLASS 4 SELECT ASSERTED ?target SubClassOf ?prop only ?filler 5 WHERE FAIL ?target SubClassOf ?prop some ?filler 6 BEGIN 7 ADD ?target SubClassOf !OnlyBadPracticeResult 8 END; This script detects the exclusive universal structureb and adds all the classes that present it as subclasses of OnlyBadPracticeResult,aclasscreatedonthefly if it does not exist in the ontology (!symbol). Note the use of the ASSERTED keyword (only the asserted axioms, not the inferred ones, are taken into account: the reasoner is deactivated for querying in order to improve performance) and the FAIL keyword (negation as failure, which is out of OWL semantics, is used to detect absent existential restrictions). The ontology can also be simply queried, without modifying it, by using the OPPL-Query tool (See Table 1 and Figure 7):
Ega˜ na Aranguren et al. Journal of Biomedical Semantics 2013, 4:2 Page 7 of 16 http://www.jbiomedsem.com/content/4/1/2 Figure 6 Ontology debugging and evaluation. This script detects any class that has a universal restriction without an existential restriction (dotted blue line). It adds a subClassOf OnlyBadPracticeResult axiom (red arrow) to any matching class. 1 ?target:CLASS, 2 ?prop:OBJECTPROPERTY, 3 ?filler:CLASS 4 SELECT ASSERTED ?target SubClassOf ?prop only ?filler 5 WHERE FAIL ?target SubClassOf ?prop some ?filler The exclusive universal structure can also be modified by adding an existential restriction to every universal restriction: 1 ?target:CLASS, 2 ?prop:OBJECTPROPERTY, 3 ?filler:CLASS 4 SELECT ASSERTED ?target SubClassOf ?prop only ?filler 5 WHERE FAIL ?target SubClassOf ?prop some ?filler 6 BEGIN 7 ADD ?target SubClassOf ?prop some ?filler 8 END; Even though the exclusive universal structure might be considered as a legitimate modelling decision, it is recommendable, to make sure there is no trivially satisfiable classes, to add existential restrictions on the fly (and possibly to make entities disjoint), apply reasoning to detect trivially satisfiable classes, and then remove the existential restrictions again. Such procedure can be automatically performed using OPPL-Galaxy. An alternative would be to check the consistency of the filler, e.g. ?filler subClassOf owl:Nothing, with the reasoner activated, instead of checking for the exclusive universal structure [46]. More antipatterns can be found in the collection presented in [43]: •Logical Antipatterns (LAP): modelling errors that are detectable by an automated reasoner, e.g. unsatisfiable classes. •Non-Logical Antipatterns (NLAP): modelling errors that are not detectable using a reasoner, usually created by the developer due to a misunderstanding of the language semantics (the logical consequences of the axioms stated in the ontology). •Guidelines (G): alternative, simpler axiomatic expressions of the same knowledge. Synonym Of Equivalence (SOE) is an example of a NLAP. Such type of antipattern describes the situation in which two classes are declared as being equivalent and both pertain to the same ontology (i.e.,theyhavenot been imported). Generally, that means that the developer intends to model a synonym, which should be an rdfs:label string, as a whole class. Such structure can be easily detected, for example, in the NIF Gross Anatomy ontology [47], using the following script (which also removes the non-desired structure): 1 ?target:CLASS, 2 ?filler:CLASS 3 SELECT ASSERTED ?target equivalentTo ?filler 4 BEGIN 5 REMOVE ?target equivalentTo ?filler 6 END;
Ega˜ na Aranguren et al. Journal of Biomedical Semantics 2013, 4:2 Page 8 of 16 http://www.jbiomedsem.com/content/4/1/2 Figure 7 OPPL query tool. Web interface of the OPPL query tool. We do not claim that these structures (exclusive universal in BioPAX and SOE in NIF Gross Anatomy) are erroneous per se. We rather state that, according to the experience of the authors of [43,44], and ours, they are modelling practices that may yield unexpected results when automated reasoning is applied downstream. Therefore, a scientist who might reuse those ontologies should be aware of the existence of the mentioned antipatterns. OPPL-Galaxy is a straightforward, powerful and flexibletooltodetectantipatternsen masse when executed as a Galaxy workflow: a scientist can have a collection of antipatterns of her choice ready to be applied in any ontology she wants to reuse (any antipattern can be defined by her, since OPPL is, roughly, a superset of OWL). The full process can be automated, defining once what ontologies to obtain and then adding antipatterns to the collection as needed. Once the workflow has been executed and the antipatterns detected in the target ontology, she can decide if the ontology meets her requirements. Additionally, OPPL-Galaxy can be used to modify the ontologies that do not meet her requirements, within the same workflow. Complex querying of GO OPPL-Galaxy can be combined with other Galaxyenabled tools to build advanced workflows such as the one shown in Figures 8 and 9. This workflow can be used by a scientist to pose a complex question against GO, namely ‘What are the proteins that act on processes that involve hepatocytes and are part of or regulate other biological processes?’. Posing such a complex question requires different steps that can be performed with OPPL and stored for further analysis with the help of Galaxy. The workflow executes the OPPL query tool and the Galaxy tool for comparing two data sets (included in the standard Galaxy distribution, in ‘Join, subtract and
Ega˜ na Aranguren et al. Journal of Biomedical Semantics 2013, 4:2 Page 9 of 16 http://www.jbiomedsem.com/content/4/1/2 Figure 8 Complex querying of GO (as shown in Galaxy). OPPL-query workflow for quering GO against GAFs. The result is a list of proteins of interest. group’). Thus, this workflow combines Galaxy tools to retrieve exactly the proteins that the scientist defined in her plain-english query, which is translated into a machine interpretable form, as discussed below. The OPPL script queries GO for the terms that have ‘Hepatocyte’ as part of their names and that are related, via part of or regulates, to a biological process: 1 ?hepatocyte\_process:CLASS, 2 ?hepatocyte\_process\_label:CONSTANT = MATCH(".?hepatocyte.+"), 3 ?part\_of\_or\_regulates:OBJECTPROPERTY 4 SELECT ?hepatocyte\_process.IRI label ?hepatocyte\_process\_label, 5 ?hepatocyte\_process subClassOf ?part\_of\_or\_regulates some GO\_0008150 Then, the Galaxy tool for comparing two data sets is used to extract the proteins involved in the resulting processes of interest, using the GO terms as keys against a Gene Association File (GAF) [48]. The result of this comparison is a list of the protein identified as of interest. This workflow demonstrates some of the main advantages provided by OPPL-Galaxy: on one hand, this type of analysis can only be performed, effectively, with OPPL (see below). On the other hand, the unique capabilities of OPPL are enhanced due to the fact that they are executed Figure 9 Complex querying of GO (details). Detailed depiction of the workflow shown in Figure 8.
Ega˜ na Aranguren et al. Journal of Biomedical Semantics 2013, 4:2 Page 16 of 16 http://www.jbiomedsem.com/content/4/1/2 14. Leonelli S, Diehl A, Christie K, Harris M, Lomax J: How the gene ontology evolves. BMC Bioinf 2011, 12:325+. 15. Luigi Iannone: OPPL. [http://oppl.sf.net]. [Online; accessed 28-March-2012] 16. ˇ Sv´ ab Zamazal O, Sv´ atek V, Iannone L: Pattern-based ontology transformation service exploiting OPPL and OWL-API. In EKAW’10; 2010:105–119. 17. Ega˜ na M, Rector A, Stevens R, Antezana E, Gangemi A, Euzenat J: Applying Ontology Design Patterns in Bio-ontologies. In EKAW 2008, LNCS 5268; 2008:7–16. 18. Fernandez-Breis JT, Iannone L, Palmisano I, Rector AL, Stevens R: Enriching the Gene Ontology via the dissection of labels using the Ontology Pre Processor Language. In EKAW; 2010:59–73. 19. Iannone L, Palmisano I, Rector AL, Stevens R: Assessing the Safety of Knowledge Patterns in OWL Ontologies. In ESWC; 2010:137–151. 20. Iannone L, Rector A, Stevens R: Embedding Knowledge Patterns into OWL. In ESWC; 2009:218–232. 21. Mortensen JM, Horridge M, Musen MA, Noy NF: Modest use of Ontology Design Patterns in a repository of biomedical ontologies. In WOP. Edited by Gangemi A, Blomqvist E:2012. 22. Jupp S, Horridge M, Iannone L, Klein J, Owen S, Schanstra J, Wolstencroft K, Stevens R: Populous: a tool for building OWL ontologies from templates. BMC Bioinformatics 2012, 13(Suppl 1):S5+. 23. Goecks J, Nekrutenko A, Taylor J, Galaxy Team: Galaxy: a comprehensive approach for supporting accessible, reproducible, and transparent computational research in the life sciences. Genome Biol 2010, 11(8):R86+. 24. Horridge M, Drummond N, Goodwin J, Rector AL, Stevens R, Wang H: The Manchester OWL Syntax. In OWLED, Volume 216 of CEUR Workshop Proceedings. Edited by Grau BC, Hitzler P, Shankey C, Wallace E, Grau BC, Hitzler P, Shankey C, Wallace E; 2006. 25. Goble CA, Bhagat J, Aleksejevs S, Cruickshank D, Michaelides D, Newman D, Borkum M, Bechhofer S, Roos M, Li P, De Roure D: myExperiment: a repository and social network for the sharing of bioinformatics workflows. Nucleic Acids Res 2010, 38(suppl 2):W677—W682. 26. Galaxy project: Galaxy Tool XML File. [http://wiki.g2.bx.psu.edu/Admin/ Tools/ToolConfigSyntax]. [Online; accessed 28-March-2012] 27. Stanford Center for Biomedical Informatics Research: Prot´ eg´ e. [http:// protege.stanford.edu/]. [Online; accessed 28-March-2012] 28. Luigi Iannone: OPPL API. http://sourceforge.net/projects/oppl2/files/ OPPLAPI/. [Online; accessed 28-March-2012] 29. Matthew Horridge: OWL API. http://owlapi.sf.net. [Online; accessed 28-March-2012] 30. Mungall C, Ruttenberg A, Horrocks I, Osumi-Sutherland D, Antezana E, Balhoff J, Courtot M, Dietze H, Day-Richter J, Ireland A, Lewis S, Manzoor S, Tirmizi S H: OBO Flat File Format Syntax and Semantics. http://purl. obolibrary.org/obo/oboformat/spec.html. [Online; accessed 28-March-2012] 31. Mikel Ega˜ na Aranguren: OPPL manual. http://oppl2.sourceforge.net/ manual.pdf. [Online; accessed 28-March-2012] 32. Clarck and Parsia LLC: Pellet: OWL 2 Reasoner for Java. http:// clarkparsia.com/pellet/. [Online; accessed 28-March-2012] 33. Information Systems Group: Hermit OWL Reasoner. http://www.hermitreasoner.com/. [Online; accessed 28-March-2012] 34. Dmitry Tsarkov: FaCT++. http://code.google.com/p/factplusplus/. [Online; accessed 28-March-2012] 35. Yevgeny Kazakov: Elk reasoner. http://code.google.com/p/elkreasoner/. [Online; accessed 22-October-2012] 36. Antezana E, Venkatesan A, Mungall C, Mironov V, Kuiper M: ONTO-ToolKit: enabling bio-ontology engineering via Galaxy. BMC Bioinformatics 2010, Suppl 12:S8+. 37. Day-Richter J, Harris MA, Haendel M: Gene Ontology OBO-Edit Working Group, Lewis S. OBO-Edit–an ontology editor for biologists. Bioinformatics 2007, 23(16):2198–200. 38. Jos´ e Antonio Mi˜ narro-Gimenez, Mikel Ega˜ na Aranguren, Jesualdo Tom´ as Fern´ andez-Breis, Erick Antezana: NCBO-Galaxy: bridging the BioPortal web services and the Galaxy platform. In ICBO; 2012. [Software demo]. 39. Chris Mungall: galaxy-obo. https://bitbucket.org/cmungall/galaxy-obo/ overview. [Online; accessed 22-October-2012] 40. Boyle EI, Weng S, Gollub J, Jin H, Botstein D, Cherry JM, Sherlock G: GO::TermFinder-open source software for accessing Gene Ontology information and finding significantly enriched Gene Ontology terms associated with a list of genes. Bioinformatics,20(18):3710+. 41. Mikel Ega˜ na Aranguren, Erick Antezana, Jesualdo Tom´ as Fern´ andez-Breis: OPPL Galaxy. http://wilkinsonlab.info/OPPL-Galaxy. [Online; accessed 20-October-2012] 42. Luigi Iannone: OPPL Examples. http://oppl2.sourceforge.net/ taggedexamples/. [Online; accessed 28-March-2012] 43. Corcho O, Roussey C, Vilches Bl´ azquez LM, P´ erez IEva Blomqvist FSVS, Kurt Sandkuhl (Eds): Pattern-based OWL Ontology Debugging Guidelines; WOP 2009. 44. Rector A, Drummond N, Horridge M, Rogers J, Knublauch H, Stevens R, Wang H, Wroe C: OWL Pizzas: Practical Experience of Teaching OWL-DL: Common Errors and Common Patterns. In Engineering Knowledge in the Age of the SemanticWeb, Volume LNAI 3257. Edited by Motta E, Shadbolt N, Stutt A, Gibbins N; 2004:63–81. 45. BioPAX group: BioPAX Level 3 ontology. http://www.biopax.org/ release/biopax-level3.owl. [Online; accessed 28-March-2012] 46. Anonymous reviewer: Comment. SWAT4LS manuscript review 2011. 47. Bug WJ, Ascoli GA, Grethe JS, Gupta A, Fennema-Notestine C, Laird AR, Larson SD, Rubin D, Shepherd GM, Turner JA, Martone ME: The NIFSTD and BIRNLex vocabularies: building comprehensive ontologies for neuroscience. Neuroinformatics 2008, 6(3):175–94. 48. Camon E, Magrane M, Barrell D, Lee V, Dimmer E, Maslen J, Binns D, Harte N, Lopez R, Apweiler R: The Gene Ontology Annotation (GOA) Database: sharing knowledge in Uniprot with Gene Ontology. Nucleic Acids Res 2004, 32:D262—D266. 49. Jupp S, Stevens R, Hoehndorf R: Logical Gene Ontology Annotations (GOAL): exploring gene ontology annotations with OWL. J Biomed Semantics 2012, 3Suppl 1. 50. Heiko Dietze: Obo Ontology Release Tool. http://code.google.com/p/ owltools/wiki/OortIntro. [Online; accessed 22-October-2012] 51. Gene Ontology Consortium: Ontology processing recipes. http://wiki. geneontology.org/index.php/Ontology processing recipes. [Online; accessed 22-October-2012] 52. Mi˜ narro-Gimenez JA, Ega˜ na Aranguren M, B´ ejar RM, Fern´ andez-Breis JT, Madrid M: Semantic integration of information about orthologs and diseases: The OGO system. J Biomed Inf 2011, 44:1020–1031. 53. W3C: OWL 2 Web Ontology Language New Features and Rationale. http://www.w3.org/TR/owl2-new-features/. [Online; accessed 28-March-2012] 54. Vassiliadis V, Wielemaker J, Mungall C: Processing OWL2 ontologies using Thea: An application of logic programming. In OWLED; 2009. 55. OWLlink Working Group: OWLlink. [http://www.owllink.org/. [Online; accessed 28-March-2012]] 56. Racer Systems GmbH and Co KG: RacerPro 2.0. http://www.racersystems.com/. [Online; accessed 28-March-2012] 57. Blond´ e W, Mironov V, Venkatesan A, Antezana E, De Baets B, Kuiper M: Reasoning with bio-ontologies: using relational closure rules to enable practical querying. Bioinformatics 2011, 27(11):1562–1568. 58. Galaxy project: Galaxy on the cloud. http://wiki.g2.bx.psu.edu/Admin/ Cloud. [Online; accessed 28-March-2012] 59. Diehl AD, Augustine AD, Blake JA, Cowell LG, Gold ES, Gondr´ e-Lewis TA, Masci AM, Meehan TF, Morel PA, Nijnik A, Peters B, Pulendran B, Scheuermann RH, Yao QA, Zand MS, Mungall C J: Hematopoietic cell types: Prototype for a revised cell ontology. J Biomed Inf 2011, 44:75–79. 60. Mikel Ega˜ na Aranguren, Wroe C, Goble C, Stevens R: In situ migration of handcrafted ontologies to reason-able forms. Data and Knowledge Engineering 2008, 66:147–162. 61. Mikroyannidi E, Rector A, Stevens R: Abstracting and Generalising the Foundational Model Anatomy (FMA) Ontology. In Bio-Ontologies; 2009. doi:10.1186/2041-1480-4-2 Cite this article as: Ega˜ na Aranguren et al.:OPPL-Galaxy, a Galaxy tool for enhancing ontology exploitation as part of bioinformatics workflows. Journal of Biomedical Semantics 2013 4:2.