Informatics

From phenoscape
Revision as of 19:15, 11 January 2009 by Hilmar (talk | contribs) (Phenoscape software components)

This page provides a broad overview of our informatics activities. Phenoscape supports open development processes and collaboration. All source code we create is available from open source repositories such as Sourceforge, and we work with existing open-source projects whenever possible. Development plans can be found at our software roadmap.

One of the chief objectives of the Phenoscape project is to present a centralized repository to store annotations entered by ichthyologists. These annotations can be queried from a user interface and used to answer Driving_Research_Questions and for Advanced Phenoscape_use_cases. The following tools which are under various stages of development, will serve to realize this objective.

Phenoscape software components

Phenex curation tool

Phenex is an application for annotating character matrix files with ontology terms to describe phenotypes and identify taxa. Phenex is a Java application based on code from the OBO-Edit and Phenote projects. While still under development, Phenex is ready for use and enables our ongoing data curation activities.

OBD Phenoscape data repository

We are adopting OBD as the ontology-driven datastore for our phenotype annotations. We are collaborating with the Berkeley Bioinformatics Open-source Projects group in driving future development of OBD. The ontological definitions of all the terms used in the annotation stage (on Phenex) and the annotations themselves are stored in the OBD Phenoscape database. In sequential order, the term definitions in all the ontologies are first downloaded and stored in the database. Next, the annotations of phenotypes are downloaded from ZFIN and Phenoscape, post composed and stored in the database. An outline of these two stages is described in the Phenoscape data loader section. Lastly, the OBD Reasoner is used to extract inferences from the annotations and definitions in the OBD Phenoscape database. These inferences are added to the database as well.

Data services built on OBD

We are also developing a suite of web services on top of OBD to serve as a data access API and foundation for our user-oriented Phenoscape web application. These web services make use of the OBD Java API and present a RESTful service interface using Restlet. The specifications of these services are detailed in Data Services

Phenoscape web UI

The Phenoscape web application will allow scientists to browse and query the phenotype annotations as well as the supporting ontologies. Initially, the query capabilities will concentrate on implementing a select set of "use-cases", research questions that show the utility of the approach. Ultimately, we will build interfaces that allow researchers to ask open-ended questions of the data. The web application is being developed using Ruby on Rails and accesses phenotype data and ontology information via our OBD web services.

Source code

The software source code is in part being contributed back directly to a variety of existing projects we build upon, and in part deposited on our SourceForge.net svn repository.

  • Phenex:
  • Data loader:
  • Data services and middleware:
  • Web application:
  • Ontology conversion and management:
  • Other scripts and small tools:

Affiliated projects

OBO-Edit

We are using the OBO-Edit ontology editor to develop and maintain our ontologies such as the Teleost Anatomy Ontology and the Teleost Taxonomy Ontology.

NeXML

Phenex saves character matrix data using the new evolutionary data standard NeXML. NeXML is an XML Schema and has robust facilities for embedding additional data, such as our phenotype annotations, within a traditional character-by-taxon matrix.