Help:WikiPathways Webservice

From WikiPathways

Revision as of 14:11, 12 December 2008 by Thomas (Talk | contribs)
Jump to: navigation, search

Contents

The WikiPathways web service

WikiPathways can be accessed through a SOAP webservice. This page contains documentation for the webservice API.

Showcase

Click on one of the images below for examples on what you can do with the WikiPathways web service.

Search

Use the web service to search for pathways

Integrate

Integrate pathway information with gene expression data

Query interactions

Load pathways as interaction networks in Cytoscape

Build workflows

Use pathway information in your Taverna workflows

Getting Started

The web service is described in a WSDL file that can be downloaded from:

http://www.wikipathways.org/wpi/webservice/webservice.php?wsdl

API Reference

See the API reference page for a list of available web service functions and data structures.

Java libraries for WikiPathways

Coming soon

Working with GPML

The pathways on WikiPathways are stored in the GPML format. This is an XML format and can be processed in any programming language. See here for the GPML specification.

SOAP libraries

For most programming languages, libraries exist to make working with SOAP web service easier. Below is a short list of SOAP libraries for popular programming languages that might help you work with the WikiPathways web service.

Examples

Scripts

Coming soon: small example scripts in various languages.

R

Using the SSOAP package in R, you can retrieve pathway information from the WikiPathways web service and use it in your R scripts (e.g. for gene set enrichment or pathway statistics). Below are a few code snippets that show you how to use SSOAP with the WikiPathways web service.

## Install SSOAP from Bioconductor ##
source("http://bioconductor.org/biocLite.R")
biocLite("SSOAP")

## Load the SSOAP library ##
library(SSOAP)

## Create a SOAPServer instance for the web service ##
srv = SOAPServer("http://www.wikipathways.org/wpi/webservice/webservice.php");

## List all organisms on WikiPathways ##
reply = .SOAP(srv, "listOrganisms", action=I("listOrganisms"), handlers=NULL)
doc = xmlParse(reply$content, asText=TRUE)
organismNodes = xmlElementsByTagName(xmlRoot(doc), "organisms", TRUE)

for(node in organismNodes) {
	print(xmlValue(node)) #Print the organism name to the screen
}

## Find all pathways for the 'apoptosis' keyword ##
reply = .SOAP(srv, "findPathwaysByText", query="apoptosis", species="", action=I("findPathwaysByText"), handlers=NULL)
doc = xmlParse(reply$content, asText=TRUE)

# Find the result nodes with an xpath query
resultNodes = getNodeSet(doc, "//*[local-name()='result']")
# Print the pathway name, species and url for each result
for(node in resultNodes) {
	children = xmlChildren(node, addNames= TRUE)
	url = xmlValue(children$url)
	name = xmlValue(children$name);
	species = xmlValue(children$species);
	
	print(paste(name, " (", species, "): ", url, sep=""))
}

Return to Help Contents

Continue to FAQ

Personal tools