The document discusses SADI (Semantic Automated Discovery and Integration), which provides best practices for creating semantic web services. SADI web services explicitly create RDF triples linking input and output data to describe their semantics. This allows services to be discovered and workflows to be automatically generated. The SADI Taverna plugin and SHARE system are presented, which allow searching for desired properties to automatically add and connect SADI services into workflows. SHARE also uses SADI to automatically construct workflows to answer SPARQL queries by discovering necessary analytical services on the web.
1. SADI: Semantic Support for Automated Workflow GenerationThe SADI Taverna plugin and SHARE Presentation to Workflow track ISoLA 2010, Crete, October 2010
13. SADI “rule” #1 Make the implicit explicit… A Web Service should create RDF “triples” linking input and output data, thus explicitly describing the semantic relationship between them Input and output structuresdescribed by OWL Classes
14. SADI Rule #2 (Simple derivation from rule #1) The URI of the inputmust be preserved in the output Therefore, the output is explicitly about the input
16. Consequence “Semantics” of HTTP POST are identical to the “Semantics” of HTTP GET Therefore SADI Web Services behave like the Semantic Web
17. IMPORTANT!! SADI concerns itself ONLY with the way Web Services themselves are modeled SADI is not competitive with nor incompatible with* existing Web Service description standards (OWL-S, WSDL2, etc.) * AFAIK
36. SADI-Taverna Summary Search for the property of the data you desire Automatically adds the service correctly connected automatically Unlike earlier BioMobyplugin, the SADI plugin handles parsing into and out of RDF format automatically and transparently Easy to connect SADI with non-SADI services
38. A Novel SPARQL Query Engine Uses SADI to automatically construct a workflow that creates a query-specific database
39. Show me the latest Blood Urea Nitrogen and Creatinine levelsof patients who appear to be rejecting their transplants PREFIX rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> PREFIX patient: <http://sadiframework.org/ontologies/patients.owl#> PREFIX l: <http://sadiframework.org/ontologies/predicates.owl#> SELECT ?patient ?bun ?creat FROM <http://sadiframework.org/ontologies/patients.rdf> WHERE { ?patientrdf:typepatient:LikelyRejecter . ?patient l:latestBUN ?bun . ?patient l:latestCreatinine ?creat . }
40. Likely Rejecter: A patient who has creatinine levelsthat are increasing over time - - Wilkinson MD
41. Likely Rejecter: …but there is no “likely rejecter” column or table in our database… only blood chemistry measurementsat various time-points
43. The definition of a LikelyRejecter is encoded in a machine-readable document written in the OWL language (“Ontology”) “the regression line over creatinine measurements should have an increasing slope”
44. The machine continues to burrow down through the definition and discovers that regression lines have things like slopes and intercepts, etc…
51. SHARE Summary SADI -enabled fully automated workflow generationin the context of creating a database capable of answering A SPARQL query Data absent from local data-store automatically determined to be neededand the necessary workflow automatically constructed
52. Join us! SADI and CardioSHARE are Open-Source projects Come join us – we’re having a lot of fun!! http://sadiframework.org
53. Credits Benjamin VanderValk(SHARE & SADI) Luke McCarthy (SADI, SHARE, Taverna, CardioSHARE) SoroushSamadian(CardioSHARE) David Withers(Taverna) Edward Kawas(SADI Service auto-generator)
54. U of New Brunswick Dr. Chris BakerAlexandreRiazanov Carleton University Dr. Michel Dumontier Marc-Alexandre Nolin Leonid Chepelev Steve Etlinger NichaellaKieth Jose Cruz