BioMOBY
Encyclopedia
BioMOBY is a registry of web service
Web service
A Web service is a method of communication between two electronic devices over the web.The W3C defines a "Web service" as "a software system designed to support interoperable machine-to-machine interaction over a network". It has an interface described in a machine-processable format...

s used in bioinformatics
Bioinformatics
Bioinformatics is the application of computer science and information technology to the field of biology and medicine. Bioinformatics deals with algorithms, databases and information systems, web technologies, artificial intelligence and soft computing, information and computation theory, software...

. It allows interoperability between biological data hosts and analytical services by annotating services with terms taken from standard ontologies.

The BioMOBY project

The BioMoby project began at the Model Organism Bring Your own Database Interface Conference (MOBY-DIC), held in Emma Lake, Saskatchewan
Saskatchewan
Saskatchewan is a prairie province in Canada, which has an area of . Saskatchewan is bordered on the west by Alberta, on the north by the Northwest Territories, on the east by Manitoba, and on the south by the U.S. states of Montana and North Dakota....

 on September 21, 2001. It stemmed from a conversation between Mark D Wilkinson and Suzanna Lewis during a http://geneontology.org Gene Ontology
Gene Ontology
The Gene Ontology, or GO, is a major bioinformatics initiative to unify the representation of gene and gene product attributes across all species...

 developers meeting at the Carnegie Institute, Stanford, where the functionalities of the Genquire and Apollo genome annotation tools were being discussed and compared. The lack of a simple standard that would allow these tools to interact with the myriad of data-sources required to accurately annotate a genome was a critical need of both systems.

Funding for the BioMOBY project was subsequently adopted by Genome Prairie http://genomeprairie.ca (2002-2005), Genome Alberta http://genomealberta.ca(2005-date), in part through Genome Canada http://genomecanada.ca, a not-for-profit institution leading the Canadian X-omic initiatives.

There are two main branches of the BioMOBY project. One is a web-service-based approach, while the other utilizes Semantic Web technologies. This article will refer only to the Web Service specifications. The other branch of the project, Semantic Moby, is described in a separate entry.

Moby

The Moby project defines three Ontologies that describe biological data-types, biological data-formats, and bioinformatics analysis types. Most of the interoperable behaviours seen in Moby are achieved through the Object (data-format) and Namespace (data-type) ontologies.

The MOBY Namespace Ontology is derived from the Cross-Reference Abbreviations List of the Gene Ontology project. It is simply a list of abbreviations for the different types of identifiers that are used in bioinformatics. For example, Genbank has "gi" identifiers that are used to enumerate all of their sequence records - this is defined as "NCBI_gi" in the Namespace Ontology.

The MOBY Object Ontology is an ontology consisting of IS-A, HAS-A, and HAS relationships between data formats. For example a DNASequence IS-A GenericSequence and HAS-A String representing the text of the sequence. All data in Moby must be represented as some type of MOBY Object. An XML serialization of this ontology is defined in the Moby API such that any given ontology node has a predictable XML structure.

Thus, between these two ontologies, a service provider and/or a client program can receive a piece of Moby XML, and immediately know both its structure, and its "intent" (semantics).

The final core component of Moby is the MOBY Central web service registry. MOBY Central is aware of the Object, Namespace and Service ontologies, and thus can match consumers who have in-hand Moby data, with service providers who claim to consume that data-type (or some compatible ontological data-type) or to perform a particular operation on it. This "semantic matching" helps ensure that only relevant service providers are identified in a registry query, and moreover, ensures that the in-hand data can be passed to that service provider verbatim. As such, the interaction between a consumer and a service provider can be partially or fully automated, as shown in the Gbrowse Moby and Ahab clients respectively.

BioMOBY and RDF/OWL

BioMOBY does not, for its core operations, utilize the RDF
Resource Description Framework
The Resource Description Framework is a family of World Wide Web Consortium specifications originally designed as a metadata data model...

 or OWL
Web Ontology Language
The Web Ontology Language is a family of knowledge representation languages for authoring ontologies.The languages are characterised by formal semantics and RDF/XML-based serializations for the Semantic Web...

 standards from the W3C. This is in part because neither of these standards were stable in 2001, when the project began, and in part because the library support for these standards were not "commodity" in any of the most common languages (i.e. Perl and Java) at that time.

Nevertheless, the BioMOBY system exhibits what can only be described as Semantic Web
Semantic Web
The Semantic Web is a collaborative movement led by the World Wide Web Consortium that promotes common formats for data on the World Wide Web. By encouraging the inclusion of semantic content in web pages, the Semantic Web aims at converting the current web of unstructured documents into a "web of...

-like behaviours. The BioMOBY Object Ontology controls the valid data structures in exactly the same way as an OWL
Web Ontology Language
The Web Ontology Language is a family of knowledge representation languages for authoring ontologies.The languages are characterised by formal semantics and RDF/XML-based serializations for the Semantic Web...

 ontology defines an RDF
Resource Description Framework
The Resource Description Framework is a family of World Wide Web Consortium specifications originally designed as a metadata data model...

 data instance. BioMOBY Web Services consume and generate BioMOBY XML, the structure of which is defined by the BioMOBY Object Ontology. As such, BioMOBY Web Services have been acting as prototypical Semantic Web Services
Semantic Web Services
Semantic Web Services, like conventional web services, are the server end of a client–server system for machine-to-machine interaction via the World Wide Web...

 since 2001, despite not using the eventual RDF/OWL standards.

However, BioMOBY does utilize the RDF/OWL standards, as of 2006, for the description of its Objects, Namespaces,Service, and Registry. Increasingly these ontologies are being used to govern the behaviour of all BioMOBY functions using DL reasoners.

BioMOBY clients

There are several client applications
Client (computing)
A client is an application or system that accesses a service made available by a server. The server is often on another computer system, in which case the client accesses the service by way of a network....

 that can search and browse the BioMOBY registry of services. One of the most popular is the Taverna workbench
Taverna workbench
Taverna Workbench is an open source software tool for designing and executing workflows, created by the myGrid project and funded through the OMII-UK...

 built as part of the MyGrid
MyGrid
The myGrid consortium is a multi-institutional, multi-disciplinary internationally leading research group focussing on the challenges of eScience...

 project. The first BioMOBY client was Gbrowse Moby, written in 2001 to allow access to the prototype version of BioMoby Services. Gbrowse Moby http://www.scfbm.org/content/1/1/4, in addition to being a BioMoby browser, now works in tandem with the Taverna workbench
Taverna workbench
Taverna Workbench is an open source software tool for designing and executing workflows, created by the myGrid project and funded through the OMII-UK...

 to create SCUFL workflows reflecting the Gbrowse Moby browsing session that can then be run in a high-throughput environment. The Seahawk http://www.biomedcentral.com/1471-2105/8/208/abstract applet also provides the ability to export a session history as a Taverna workflow, in what constitutes a programming by example
Programming by example
In computer science, programming by example , also known as programming by demonstration or more generally as demonstrational programming, is an End-user development technique for teaching a computer new behavior by demonstrating actions on concrete examples...

 functionality.

The Ahab client is a fully automated data mining tool. Given a starting point, it will discover, and execute, every possible BioMOBY service and provide the results in a clickable interface.

See also

  • Open Bioinformatics Foundation
    Open Bioinformatics Foundation
    The Open Bioinformatics Foundation is a non profit, volunteer run organization focused on supporting open source programming in bioinformatics....

  • SADI the Semantic Automated Discovery and Integration Framework

External links

The source of this article is wikipedia, the free encyclopedia.  The text of this article is licensed under the GFDL.
 
x
OK