Webservices
You can query the NucleaRDB using the SOAP protocol.
At the moment there are a number of data retrieval functions available
through this interface; you can retrieve families, proteins, sequences,
residues and secondary structure elements. In the future, we will
extend the webservice functionality to provide you with computational
tools as well.
The WSDL is located here:
http://www.receptors.org/nucleardb/webservice/?wsdl
Usage
Python
If you use python as a programming language, we strongly advise
you to use suds (https://fedorahosted.org/suds/) to access the GPCRDB
SOAP services. To get suds to work you need to do the following:
#import the suds client module
from suds import client
#create a client from the GPCRDB WSDL
NucleaRDBClient = client.Client("http://www.receptors.org/nrdb/webservice/?wsdl")
#you can use this to get an overview of the methods and types you can use:
print NucleaRDBClient
#retrieve a protein
NucleaRDBClient.service.getProtein('tha_human')
Perl
#!/usr/bin/perl
use strict;
use warnings;
use XML::Compile::WSDL11;
use XML::Compile::SOAP11;
use XML::Compile::Transport::SOAPHTTP;
use Data::Dumper;
my $wsdl = XML::LibXML->new->parse_file('http://www.receptors.org/nrdb/webservice/?wsdl')
or die "no WSDL";
my $proxy = XML::Compile::WSDL11->new($wsdl);
my $getProtein = $proxy->compileClient('getProtein');
my ($answer, $trace) = $getProtein->(proteinId => 'tha_human')
or die "no protein\n";
if (defined $answer) {
print Dumper($answer->{parameters}->{'protein'});
}
Workflows
The NucleaRDB can be used from workflow management tools such as Taverna. We have prepared a number of example workflows that illustate a number of basic usages such as using the BLAST service, creating custom alignments and retrieving data types such as proteins.
You can find these workflows here http://www.myexperiment.org/tags/2948.html on the myExperiment web portal.