230 likes | 378 Views
Seahawk: How to use existing data with MOBY. Paul Gordon University of Calgary. Motivation. Professor: “I found a semi-automated way to do hundreds of BLASTs…I get my grad student to do them on the NCBI Web site, so it’s automated for me. ” Isn’t there a better way?.
E N D
Seahawk: How to useexisting data with MOBY Paul Gordon University of Calgary
Motivation • Professor: “I found a semi-automated way to do hundreds of BLASTs…I get my grad student to do them on the NCBI Web site, so it’s automated for me.” • Isn’t there a better way?
Larry Wall’s “Virtues of a Programmer” HUBRIS IMPATIENCE LAZINESS
Objectives • Appreciate the need for data and online service standardization • Incorporate multiple online resources into a pipeline • Use Seahawk to automate on-line analysis you do manually, repeatedly
How software works… (Gene name, DNA sequence, QTL…) Parameters/Input Functions/ Rules Results/ Output (article, allele,…)
DNASequence NCBI_gi Sequence_Alignment
What is Seahawk? • Data-centric display: services are just links • Multi-tabbed: multi-task in your analysis
How do I run a service? • If no “…” in description, the service runs just by clicking the popup label • If “…”, the service’s extra parameters can be set • Control+click submits using default params
Take the output of the U of C service and send it to iHOP, then send its output to DDBJ’s service…
How can we use non-Moby services? • Impatience: I don’t want to wait for someone to create a Moby equivalent… • Seahawk lets you define the input and output of the existing resources in terms of the Moby standard. • 4 easy steps!
1. Give Seahawk the original form • Find the WSDL document or Web form you want to use, then drag its URL from the browser’s location bar onto Seahawk. A new browser page will be launched. WSDL Web Service HTML Web form
2. Populating the form • Drag data links from Seahawk into the browser • Type in constant values Seahawk tracking the data type info!
3. Pick the output to return Autorecognized by Seahawk… …or a particular field
4. Annotate the new service • This helps you and others find it for reuse later
Why Seahawk vs. Manual Analysis? • Laziness: Explicit iteration (“for each”) over… …existing services …or a Web form you just imported
Managing wrapped services Tu deviens responsable pour toujours de ce que tu as apprivoisé.
Seahawk Workflows • Document your analysis, be able to rerun it as a workflow. • Hubris: maybe modify the workflow to do other stuff later? (in Taverna)
Seahawk as a stepping stone… • When you start opening data in new tabs, filtering pages (note highlight), using ‘previous input’ services, you’re writing non-trivial workflows!
General Tips • Drag data to be imported into Seahawk onto the Clipboard, it’ll be recognized automatically. • Most items have a tooltip, just hold your mouse over the item of interest and wait. • It can take some time for a service list to be populated for a given type of data. You can try again later, and it should be much quicker.
Summary • Use Seahawk for your analyses in order to: • Automate • Re-enact • Document • Learn Taverna Workflow Programming HUBRIS IMPATIENCE LAZINESS Web service/form wrapping For-each loops
Feedback • Form provided to accompany the exercises • Help us improve the utility of the software! If you can not measure it, you can not improve it. – Lord Kelvin