Content
Data can currently be retrieved by an experiment handle. An experiment handle is retrieved by an experiment identification number, or the ExptID. Currently, one can obtain the meta data for a hybridization or a public url to download raw data for an hybridization.
There are also services to retrieve all experiment handles for an experimenter, an organism, or a publication within the database. Sample scripts are included below.
my $exptOrg = SOAP::Lite
my $exptExpter = SOAP::Lite
my $resCat = SOAP::Lite
my $resPub = SOAP::Lite
my $metaData = SOAP::Lite
my $exptURL = SOAP::Lite
#!/usr/bin/perl -w
use strict;
use SOAP::Lite;
##############################################
#########Get List Data from SMD #############
##############################################
##Get a hash of all organisms with public data in the database
my $organismHash = SOAP::Lite
-> uri('http://genome-www5.stanford.edu/listData')
-> proxy('http://genome-www5.stanford.edu/cgi-bin/tools/webservices/listData.pl')
-> Organism
-> result;
foreach my $organism (keys %{$organismHash}){
print "$organism\t$$organismHash{$organism}\n";
}
##Get an array of all categories with public data in the database
my $catHash = SOAP::Lite
-> uri('http://genome-www5.stanford.edu/listData')
-> proxy('http://genome-www5.stanford.edu/cgi-bin/tools/webservices/listData.pl')
-> Category
-> result;
foreach my $cat (keys %{$catHash}{
print "$cat\t$$catHash{$cat}\n";
}
##Get a hash of all publications in the database
my $publicationHash = SOAP::Lite
-> uri('http://genome-www5.stanford.edu/listData')
-> proxy('http://genome-www5.stanford.edu/cgi-bin/tools/webservices/listData.pl')
-> Publication
-> result;
foreach my $pub (keys %{$publicationHash}){
print "$pub\t$$publicationHash{$pub}\n";
}
###########################################
#######Grab an SMD experiment handle#######
###########################################
########by experimenter####################
my $exptExpter = SOAP::Lite
-> uri('http://genome-www5.stanford.edu/Experiment')
-> proxy('http://genome-www5.stanford.edu/cgi-bin/tools/webservices/exptHandle.pl')
-> ExptByExperimenter ('SPELLMAN')
-> result;
print "@{$exptExpter}\n" if defined $$exptExpter[0];
#########by organism#######################
my $exptOrg = SOAP::Lite
-> uri('http://genome-www5.stanford.edu/Experiment')
-> proxy('http://genome-www5.stanford.edu/cgi-bin/tools/webservices/exptHandle.pl')
-> ExptByOrgansim ('VC')
-> result;
print "@{$exptOrg}\n" if defined ($$exptOrg[0]);
########by category#######################
my $resCat = SOAP::Lite
-> uri('http://genome-www5.stanford.edu/Experiment')
-> proxy('http://genome-www5.stanford.edu/cgi-bin/tools/webservices/exptHandle.pl')
-> ExptCategory('Batten disease')
-> result;
#print "@{$resCat}\n" if defined ($$resCat[0]);
########by publication#######################
my $resPub = SOAP::Lite
-> uri('http://genome-www5.stanford.edu/Experiment')
-> proxy('http://genome-www5.stanford.edu/cgi-bin/tools/webservices/exptHandle.pl')
-> ExptPub('7')
-> result;
print "@{$resPub}\n" if defined ($$resCat[0]);
###########################################
####### Get Experiment Data #######
###########################################
#get meta data from an experiment
my $metaData = SOAP::Lite
-> uri('http://genome-www5.stanford.edu/Experiment')
-> proxy('http://genome-www5.stanford.edu/cgi-bin/tools/webservices/exptHandle.pl')
-> ExptMetaData (2341, 'xml')
###state the form of returned data, either 'xml' or 'hash table'
-> result;
print "$metaData\n";
#########Get Raw Data For ExptID #############
my $exptURL = SOAP::Lite
-> uri('http://genome-www5.stanford.edu/Experiment')
-> proxy('http://genome-www5.stanford.edu/cgi-bin/tools/webservices/exptHandle.pl')
-> ExptFTP (2341)
-> result;
print "$exptURL\n";