SlideShare uma empresa Scribd logo
1 de 86
Personalizing medical research using Semantics Mark Wilkinson, PI Bioinformatics, Heart + Lung Institute @ St. Paul’s Hospital Vancouver, BC, Canada
Web Servicesvs.Semantic Web
Web Servicesare not “connected” to the Semantic WebWhy?
Web ServicesXML + XML SchemaSemantic WebRDF + OWL
Web ServicesPOST of SOAP-XMLSemantic WebGET of RDF-XML
Web ServicesNo (rigorous) semanticsSemantic WebRich, flexible semantics
Web Services&Semantic WebFundamentally and deeply different Web technologies!
>1000 X more data in the “Deep Web” than in Web pagesPrimarily databases and analytical algorithms
Accessing these databases and analytical algorithms “transparently”, based on individual researcher’s  ideas, beliefs, preferenceswill help us personalize medical research
Mark Butler (2003) Is the semantic web hype? Hewlett Packard laboratories presentation at MMU, 2003-03-12
Semantic Web?(my definition) An information system where machines can receive information from one source, re-interpret it, and correctly use it for a purpose that the source had not anticipated.
Re-interpretation Correct re-use Both are critical to the personalization of research
Building a personalized Semantic Web… Step-by-step…
Semantic Automated Discovery and Integrationhttp://sadiframework.org Founding partner
SADI“best-practices” for Semantic Web Service provision
standards-compliant
Lightweight(only 2 “rules”)
Rules come from observations:
SADI Observation #1: Web Services in Bioinformatics create implicitbiologicalrelationships between their input and output
SADI Observation #1:
SADI Best Practice #1 Make the implicit explicit… A Web Service should create triples linking the input data to the output data, thus explicitly describing the semantic relationship between them
SADI Best Practice #1 This is what bioinformatics Web Services implicitly do anyway! Easy to implement this as a best-practice
SADI Observation #2:GET and POST GET guarantees the response relates to the request URI in a very precise and predictable way POST does not…
SADI Observation #2:GET and POST That’s why Web Services have a fundamentally different behaviour than the Semantic Web
SADI Observation #2:GET and POST We can fix that! (without breaking any existing rules or standards!)
SADI Best Practice #2 SUBJECT URI of the output graph (triples)  is the sameas the SUBJECT URI of the input graph (triples) (the output is “about” the input... Now explicitly!)
Consequence The “Semantics” of our interaction with the Web Service are now explicitandidentical to the “Semantics” of GET
SADI Web Service Interfaces Service Interfaces defined by two OWL classes:
SADI Web Service Interfaces OWL Class #1:  My Input Class
SADI Web Service Interfaces OWL Class #2:  My Output Class
SADI Web Service Interfaces My Service consumes OWL Individuals of Class #1 and returns OWL Individuals of Class #2 …but the URI of those two individuals is the same!(see best practice #2)
How do we discover services? Since input and output are about the same “thing”, we can automatically determine what a service doesby comparing the Input and Output OWL classes
How do we find services? Automatically index services in a registry based on what properties (predicates) Services add  to their respective input data-types
EXAMPLE   Input Data:  BRCA1   rdf:type    Gene ID   Output Data:     BRCA1    hasDNASequence    AGCTTAGCCA…   Registry Index:  Service provides “hasDNASequence” property to Gene IDs
Now we can answer questions like  “what is the DNA sequence of BRCA1?”  Discover a service that creates the DNA Sequence property of gene identifiers
Okay, enough tech gobbledygookWhat will this do for ME?
Demo #1
Imagine there is a “virtual database” containing all of the data from all of the databases,together with the output ofevery conceivable analysis
How do we query that database?
“SHARE”Semantic Health And Research EnvironmentSADI client application
What pathways does UniProt protein P47989 belong to? PREFIX pred: <http://sadiframework.org/ontologies/predicates.owl#> PREFIX ont: <http://ontology.dumontierlab.com/> PREFIX uniprot: <http://lsrn.org/UniProt:> SELECT ?gene ?pathway  WHERE {  	uniprot:P47989 pred:isEncodedBy ?gene .  	?gene ont:isParticipantIn ?pathway .  }
Recapwhat we just saw A standard SPARQL query was entered into SHARE, a SADI-aware query engine
Recapwhat we just saw The query was interpreted to extract the properties being queried and these were passed to SADI for Web Service discovery
Recapwhat we just saw SADIsearched-for, found, and accessed all databases and/or analytical tools capable of generating those properties
Recapwhat we just saw We posed, and answered a complex database query  WITHOUT A DATABASE (in fact, the data didn’t even have to exist...)
Cool!
 …but I’m supposed to be personalizing research… Let’s make this a little more personal by bringing in Ontologies
My Definition of Ontology (for this talk) Ontologies explicitly define the things that exist in “the world” based on what propertieseach kind of thing must have
 Ontology Spectrum Frames (Properties) Thesauri “narrower term” relation Selected Logical 	Constraints (disjointness,  inverse, …)  Catalog/ ID Formal is-a Informal is-a Formal instance General Logical constraints Terms/ glossary Value Restrs.
Demo #2 Discover instances of OWL classes  from data that doesn’t exist…
Show me patients whose creatinine level is increasing over time, along with their latest BUN and creatinine levels. PREFIX regress: <http://sadiframework.org/examples/regression.owl#>  PREFIX patients: <http://sadiframework.org/ontologies/patients.owl#>  PREFIX pred: <http://sadiframework.org/ontologies/predicates.owl#>  SELECT ?patient ?bun ?creat FROM <http://sadiframework.org/ontologies/patients.rdf> WHERE { 	?patient patients:creatinineLevels ?collection .  	?collection regress:hasRegressionModel ?model .  	?model regress:slope ?slope 		FILTER (?slope > 0) . 	?patient pred:latestBUN ?bun .  	?patient pred:latestCreatinine ?creat .  }
Show me patients with elevated creatinine along with their latest BUN and creatinine levels PREFIX rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>  PREFIX patients: <http://sadiframework.org/ontologies/patients.owl#>  PREFIX pred: <http://sadiframework.org/ontologies/predicates.owl#>  SELECT ?patient ?bun ?creat FROM <http://sadiframework.org/ontologies/patients.rdf> WHERE { 	?patient rdf:typepatients:ElevatedCreatininePatient . 	?patient pred:latestBUN ?bun .  	?patient pred:latestCreatinine ?creat .  }
Start burrowing through the OWL class  find that we need aregression model OWL class
Regression models have features like slopes and intercepts… and so onThe class is completely decomposed until a set of required Services are discoveredcapable of creating all these necessary properties
Successful decomposition of the OWL class to discover  the need for a LinearRegression Web Service, and so on
VOILA!
OWL Class restrictions converted into workflows SPARQL queries converted into workflows Reasoning happening in parallel with query executionData fulfilling OWL models is discovered, or generated through running analytical tools SADI and CardioSHARE
This SADI/SHARE behaviour is completely novel
I still don’t seewhy this is“Personal”??
Show me patients whose creatinine level is increasing over time, along with their latest BUN and creatinine SELECT ?patient ?bun ?creat FROM <http://sadiframework.org/ontologies/patients.rdf> WHERE { 	?patient rdf:typepatients:ElevatedCreatininePatient . 	?patient pred:latestBUN ?bun .  	?patient pred:latestCreatinine ?creat .  }
I created a small ontologydescribing my definition ofan Elevated Creatinine Patient
… it was MY ontology!
I can re-use it
I can modify it as I change my world-view
I can publish it for others to use
Others can modify it to fit THEIR world-view
My personal world-view is being dynamically resolved againstglobal data and knowledge
…but it’s bigger than that…
“Elevated Creatinine Patient”
I made that up!  It came out of my head!
What’s a fancy word for a world-view that you make-up? Hypothesis
Current Research We believe that ontologies and hypothesesare, in some ways, the same “thing”……simply assertions about individuals that may or may not existIf an instance of a class exists, then the hypothesis is “validated”
Recap SADI Semantic Web Services generate triples; the predicates of those triples are indexed... Period. For a given query, determine which properties are available, and which need to be discovered/generated Find services that generate the properties we need
Semantic Web An information system where machines can receive information from one source, re-interpret it, and correctly use it for a purpose that the source had not anticipated. My Purpose!!
What SADI + SHARE supports Re-interpretation We constantly compare the collection of properties, gathered from third-parties worldwide, to whatever world-model (query/ontology) we wish to view it through. MY world model
What SADI + SHARE supports Novel re-use There is no way for the provider to dictate how their data should be used, or how it should be interpreted.  They simply add their properties into the “cloud” and those properties are used in whatever way is appropriate for me.
Important “wins” Data remains distributed – no warehouse! Data is not “exposed” as a SPARQL endpoint  greater provider-control over computational resources Yet data appears to be a SPARQL endpoint… no modification of SPARQL or reasoner required.
And all this because SADI simply requires  that the input URI  is the same as the output URI

Mais conteúdo relacionado

Destaque

Artikel opleiden in de school in Rotterdam
Artikel opleiden in de school in RotterdamArtikel opleiden in de school in Rotterdam
Artikel opleiden in de school in Rotterdam
Luc Sluijsmans
 
Portfolio PlusAnimations 2009 ENG
Portfolio PlusAnimations 2009 ENGPortfolio PlusAnimations 2009 ENG
Portfolio PlusAnimations 2009 ENG
rogiervanmeeuwen
 
Barisan Pentadbir SMKTP(AA)
Barisan Pentadbir SMKTP(AA)Barisan Pentadbir SMKTP(AA)
Barisan Pentadbir SMKTP(AA)
hajahrokiah
 
Resultaten project lerarentekort Rotterdam juni 2011
Resultaten project lerarentekort Rotterdam juni 2011Resultaten project lerarentekort Rotterdam juni 2011
Resultaten project lerarentekort Rotterdam juni 2011
Luc Sluijsmans
 
Patient Account Services
Patient Account ServicesPatient Account Services
Patient Account Services
meghandue
 
Curriculum specification F5
Curriculum specification F5Curriculum specification F5
Curriculum specification F5
hajahrokiah
 

Destaque (20)

Design Studio
Design StudioDesign Studio
Design Studio
 
Artikel opleiden in de school in Rotterdam
Artikel opleiden in de school in RotterdamArtikel opleiden in de school in Rotterdam
Artikel opleiden in de school in Rotterdam
 
Test King Virtual Test--Network+
Test King Virtual Test--Network+ Test King Virtual Test--Network+
Test King Virtual Test--Network+
 
Portfolio PlusAnimations 2009 ENG
Portfolio PlusAnimations 2009 ENGPortfolio PlusAnimations 2009 ENG
Portfolio PlusAnimations 2009 ENG
 
Combine Experiments
Combine ExperimentsCombine Experiments
Combine Experiments
 
Grupo de carlos
Grupo de carlosGrupo de carlos
Grupo de carlos
 
Enhancing Reproducibility and Transparency in Clinical Research through Seman...
Enhancing Reproducibility and Transparency in Clinical Research through Seman...Enhancing Reproducibility and Transparency in Clinical Research through Seman...
Enhancing Reproducibility and Transparency in Clinical Research through Seman...
 
Evaluating Hypotheses using SPARQL-DL as an abstract workflow language to cho...
Evaluating Hypotheses using SPARQL-DL as an abstract workflow language to cho...Evaluating Hypotheses using SPARQL-DL as an abstract workflow language to cho...
Evaluating Hypotheses using SPARQL-DL as an abstract workflow language to cho...
 
Heapoff memory wtf
Heapoff memory wtfHeapoff memory wtf
Heapoff memory wtf
 
Barisan Pentadbir SMKTP(AA)
Barisan Pentadbir SMKTP(AA)Barisan Pentadbir SMKTP(AA)
Barisan Pentadbir SMKTP(AA)
 
Tutorial 1.4 - Explore results in a heatmap
Tutorial 1.4 - Explore results in a heatmapTutorial 1.4 - Explore results in a heatmap
Tutorial 1.4 - Explore results in a heatmap
 
SWAT4LS 2011: SADI Knowledge Explorer Plug-in
SWAT4LS 2011: SADI Knowledge Explorer Plug-inSWAT4LS 2011: SADI Knowledge Explorer Plug-in
SWAT4LS 2011: SADI Knowledge Explorer Plug-in
 
Experiment Search
Experiment SearchExperiment Search
Experiment Search
 
Semana de la biblioteca 2011 final
Semana de la biblioteca 2011 finalSemana de la biblioteca 2011 final
Semana de la biblioteca 2011 final
 
Resultaten project lerarentekort Rotterdam juni 2011
Resultaten project lerarentekort Rotterdam juni 2011Resultaten project lerarentekort Rotterdam juni 2011
Resultaten project lerarentekort Rotterdam juni 2011
 
An Introduction to Vanilla Forums - FSOSS 2010
An Introduction to Vanilla Forums - FSOSS 2010An Introduction to Vanilla Forums - FSOSS 2010
An Introduction to Vanilla Forums - FSOSS 2010
 
Patient Account Services
Patient Account ServicesPatient Account Services
Patient Account Services
 
Curriculum specification F5
Curriculum specification F5Curriculum specification F5
Curriculum specification F5
 
Building a community around your blog v3
Building a community around your blog v3Building a community around your blog v3
Building a community around your blog v3
 
Bambu Communication Group Credential
Bambu Communication Group CredentialBambu Communication Group Credential
Bambu Communication Group Credential
 

Semelhante a Using Semantics to personalize medical research

Finding knowledge, data and answers on the Semantic Web
Finding knowledge, data and answers on the Semantic WebFinding knowledge, data and answers on the Semantic Web
Finding knowledge, data and answers on the Semantic Web
ebiquity
 
C:\fakepath\bioit world2010
C:\fakepath\bioit world2010C:\fakepath\bioit world2010
C:\fakepath\bioit world2010
guestdde063f8
 
Sql interview question part 12
Sql interview question part 12Sql interview question part 12
Sql interview question part 12
kaashiv1
 

Semelhante a Using Semantics to personalize medical research (20)

The Semantic Web - This time... its Personal
The Semantic Web - This time... its PersonalThe Semantic Web - This time... its Personal
The Semantic Web - This time... its Personal
 
ISoLA 2010: SADI Taverna plug-in
ISoLA 2010:  SADI Taverna plug-inISoLA 2010:  SADI Taverna plug-in
ISoLA 2010: SADI Taverna plug-in
 
SemTech 2010: Pelorus Platform
SemTech 2010: Pelorus PlatformSemTech 2010: Pelorus Platform
SemTech 2010: Pelorus Platform
 
JAX-RS. Developing RESTful APIs with Java
JAX-RS. Developing RESTful APIs with JavaJAX-RS. Developing RESTful APIs with Java
JAX-RS. Developing RESTful APIs with Java
 
IJET-V3I2P2
IJET-V3I2P2IJET-V3I2P2
IJET-V3I2P2
 
myEquivalents, aka a new cross-reference service
myEquivalents, aka a new cross-reference servicemyEquivalents, aka a new cross-reference service
myEquivalents, aka a new cross-reference service
 
Finding knowledge, data and answers on the Semantic Web
Finding knowledge, data and answers on the Semantic WebFinding knowledge, data and answers on the Semantic Web
Finding knowledge, data and answers on the Semantic Web
 
Services for Science
Services for ScienceServices for Science
Services for Science
 
How SADI & SHARE help restore the Scientific Method to in silico science
How SADI & SHARE help restore the Scientific Method to in silico scienceHow SADI & SHARE help restore the Scientific Method to in silico science
How SADI & SHARE help restore the Scientific Method to in silico science
 
BioIT Europe 2010 - BioCatalogue
BioIT Europe 2010 - BioCatalogueBioIT Europe 2010 - BioCatalogue
BioIT Europe 2010 - BioCatalogue
 
Toward Automatic Generation of SPARQL result set Visualizations
Toward Automatic Generation of SPARQL result set VisualizationsToward Automatic Generation of SPARQL result set Visualizations
Toward Automatic Generation of SPARQL result set Visualizations
 
Sustainable queryable access to Linked Data
Sustainable queryable access to Linked DataSustainable queryable access to Linked Data
Sustainable queryable access to Linked Data
 
Research - this time it's personal
Research - this time it's personalResearch - this time it's personal
Research - this time it's personal
 
C:\fakepath\bioit world2010
C:\fakepath\bioit world2010C:\fakepath\bioit world2010
C:\fakepath\bioit world2010
 
Sql interview question part 12
Sql interview question part 12Sql interview question part 12
Sql interview question part 12
 
Ebook12
Ebook12Ebook12
Ebook12
 
Sql interview question part 12
Sql interview question part 12Sql interview question part 12
Sql interview question part 12
 
Sherlock Homepage (Maarten Balliauw)
Sherlock Homepage (Maarten Balliauw)Sherlock Homepage (Maarten Balliauw)
Sherlock Homepage (Maarten Balliauw)
 
Sherlock Homepage - A detective story about running large web services (VISUG...
Sherlock Homepage - A detective story about running large web services (VISUG...Sherlock Homepage - A detective story about running large web services (VISUG...
Sherlock Homepage - A detective story about running large web services (VISUG...
 
Dynamic and repeatable transformation of existing Thesauri and Authority list...
Dynamic and repeatable transformation of existing Thesauri and Authority list...Dynamic and repeatable transformation of existing Thesauri and Authority list...
Dynamic and repeatable transformation of existing Thesauri and Authority list...
 

Mais de Mark Wilkinson

Sample data and other ur ls
Sample data and other ur lsSample data and other ur ls
Sample data and other ur ls
Mark Wilkinson
 

Mais de Mark Wilkinson (20)

FAIR Metrics - Presentation to NIH KC1
FAIR Metrics - Presentation to NIH KC1FAIR Metrics - Presentation to NIH KC1
FAIR Metrics - Presentation to NIH KC1
 
Introducing the fair evaluator
Introducing the fair evaluatorIntroducing the fair evaluator
Introducing the fair evaluator
 
FAIR Projector Builder
FAIR Projector BuilderFAIR Projector Builder
FAIR Projector Builder
 
Tech. session : Interoperability and Data FAIRness emerges from a novel combi...
Tech. session : Interoperability and Data FAIRness emerges from a novel combi...Tech. session : Interoperability and Data FAIRness emerges from a novel combi...
Tech. session : Interoperability and Data FAIRness emerges from a novel combi...
 
smartAPIs: EUDAT Semantic Working Group Presentation @ RDA 9th Plenary
smartAPIs:  EUDAT Semantic Working Group Presentation @ RDA 9th PlenarysmartAPIs:  EUDAT Semantic Working Group Presentation @ RDA 9th Plenary
smartAPIs: EUDAT Semantic Working Group Presentation @ RDA 9th Plenary
 
IBC FAIR Data Prototype Implementation slideshow
IBC FAIR Data Prototype Implementation   slideshowIBC FAIR Data Prototype Implementation   slideshow
IBC FAIR Data Prototype Implementation slideshow
 
Sample data and other ur ls
Sample data and other ur lsSample data and other ur ls
Sample data and other ur ls
 
Example code for the SADI BMI Calculator Web Service
Example code for the SADI BMI Calculator Web ServiceExample code for the SADI BMI Calculator Web Service
Example code for the SADI BMI Calculator Web Service
 
Sadi service
Sadi serviceSadi service
Sadi service
 
Tutorial - Creating SADI semantic-web-services
Tutorial - Creating SADI semantic-web-servicesTutorial - Creating SADI semantic-web-services
Tutorial - Creating SADI semantic-web-services
 
Data FAIRport Prototype & Demo - Presentation to Elsevier, Jul 10, 2015
Data FAIRport Prototype & Demo - Presentation to Elsevier, Jul 10, 2015Data FAIRport Prototype & Demo - Presentation to Elsevier, Jul 10, 2015
Data FAIRport Prototype & Demo - Presentation to Elsevier, Jul 10, 2015
 
Force11 JDDCP workshop presentation, @ Force2015, Oxford
Force11 JDDCP workshop presentation, @ Force2015, OxfordForce11 JDDCP workshop presentation, @ Force2015, Oxford
Force11 JDDCP workshop presentation, @ Force2015, Oxford
 
Presentation to the J. Craig Venter Institute, Dec. 2014
Presentation to the J. Craig Venter Institute, Dec. 2014Presentation to the J. Craig Venter Institute, Dec. 2014
Presentation to the J. Craig Venter Institute, Dec. 2014
 
SADI CSHALS 2013
SADI CSHALS 2013SADI CSHALS 2013
SADI CSHALS 2013
 
Web Science 2.0 - in silico science
Web Science 2.0 - in silico scienceWeb Science 2.0 - in silico science
Web Science 2.0 - in silico science
 
Web Science - ISoLA 2012
Web Science - ISoLA 2012Web Science - ISoLA 2012
Web Science - ISoLA 2012
 
Web Science, SADI, and the Singularity
Web Science, SADI, and the SingularityWeb Science, SADI, and the Singularity
Web Science, SADI, and the Singularity
 
SADI in Perl - Protege Plugin Tutorial (fixed Aug 24, 2011)
SADI in Perl - Protege Plugin Tutorial (fixed Aug 24, 2011)SADI in Perl - Protege Plugin Tutorial (fixed Aug 24, 2011)
SADI in Perl - Protege Plugin Tutorial (fixed Aug 24, 2011)
 
Technologies, methods and challenges to data sharing and aggrigation
Technologies, methods and challenges to data sharing and aggrigationTechnologies, methods and challenges to data sharing and aggrigation
Technologies, methods and challenges to data sharing and aggrigation
 
The Scientific Method on the Semantic Web
The Scientific Method on the Semantic WebThe Scientific Method on the Semantic Web
The Scientific Method on the Semantic Web
 

Using Semantics to personalize medical research

  • 1. Personalizing medical research using Semantics Mark Wilkinson, PI Bioinformatics, Heart + Lung Institute @ St. Paul’s Hospital Vancouver, BC, Canada
  • 3. Web Servicesare not “connected” to the Semantic WebWhy?
  • 4. Web ServicesXML + XML SchemaSemantic WebRDF + OWL
  • 5. Web ServicesPOST of SOAP-XMLSemantic WebGET of RDF-XML
  • 6. Web ServicesNo (rigorous) semanticsSemantic WebRich, flexible semantics
  • 7. Web Services&Semantic WebFundamentally and deeply different Web technologies!
  • 8.
  • 9. >1000 X more data in the “Deep Web” than in Web pagesPrimarily databases and analytical algorithms
  • 10. Accessing these databases and analytical algorithms “transparently”, based on individual researcher’s ideas, beliefs, preferenceswill help us personalize medical research
  • 11. Mark Butler (2003) Is the semantic web hype? Hewlett Packard laboratories presentation at MMU, 2003-03-12
  • 12. Semantic Web?(my definition) An information system where machines can receive information from one source, re-interpret it, and correctly use it for a purpose that the source had not anticipated.
  • 13. Re-interpretation Correct re-use Both are critical to the personalization of research
  • 14. Building a personalized Semantic Web… Step-by-step…
  • 15. Semantic Automated Discovery and Integrationhttp://sadiframework.org Founding partner
  • 16. SADI“best-practices” for Semantic Web Service provision
  • 19. Rules come from observations:
  • 20. SADI Observation #1: Web Services in Bioinformatics create implicitbiologicalrelationships between their input and output
  • 22. SADI Best Practice #1 Make the implicit explicit… A Web Service should create triples linking the input data to the output data, thus explicitly describing the semantic relationship between them
  • 23. SADI Best Practice #1 This is what bioinformatics Web Services implicitly do anyway! Easy to implement this as a best-practice
  • 24. SADI Observation #2:GET and POST GET guarantees the response relates to the request URI in a very precise and predictable way POST does not…
  • 25. SADI Observation #2:GET and POST That’s why Web Services have a fundamentally different behaviour than the Semantic Web
  • 26. SADI Observation #2:GET and POST We can fix that! (without breaking any existing rules or standards!)
  • 27. SADI Best Practice #2 SUBJECT URI of the output graph (triples) is the sameas the SUBJECT URI of the input graph (triples) (the output is “about” the input... Now explicitly!)
  • 28. Consequence The “Semantics” of our interaction with the Web Service are now explicitandidentical to the “Semantics” of GET
  • 29. SADI Web Service Interfaces Service Interfaces defined by two OWL classes:
  • 30. SADI Web Service Interfaces OWL Class #1: My Input Class
  • 31. SADI Web Service Interfaces OWL Class #2: My Output Class
  • 32. SADI Web Service Interfaces My Service consumes OWL Individuals of Class #1 and returns OWL Individuals of Class #2 …but the URI of those two individuals is the same!(see best practice #2)
  • 33. How do we discover services? Since input and output are about the same “thing”, we can automatically determine what a service doesby comparing the Input and Output OWL classes
  • 34. How do we find services? Automatically index services in a registry based on what properties (predicates) Services add to their respective input data-types
  • 35. EXAMPLE Input Data: BRCA1 rdf:type Gene ID Output Data: BRCA1 hasDNASequence AGCTTAGCCA… Registry Index: Service provides “hasDNASequence” property to Gene IDs
  • 36. Now we can answer questions like “what is the DNA sequence of BRCA1?”  Discover a service that creates the DNA Sequence property of gene identifiers
  • 37. Okay, enough tech gobbledygookWhat will this do for ME?
  • 39. Imagine there is a “virtual database” containing all of the data from all of the databases,together with the output ofevery conceivable analysis
  • 40. How do we query that database?
  • 41. “SHARE”Semantic Health And Research EnvironmentSADI client application
  • 42.
  • 43. What pathways does UniProt protein P47989 belong to? PREFIX pred: <http://sadiframework.org/ontologies/predicates.owl#> PREFIX ont: <http://ontology.dumontierlab.com/> PREFIX uniprot: <http://lsrn.org/UniProt:> SELECT ?gene ?pathway WHERE { uniprot:P47989 pred:isEncodedBy ?gene . ?gene ont:isParticipantIn ?pathway . }
  • 44.
  • 45.
  • 46.
  • 47. Recapwhat we just saw A standard SPARQL query was entered into SHARE, a SADI-aware query engine
  • 48. Recapwhat we just saw The query was interpreted to extract the properties being queried and these were passed to SADI for Web Service discovery
  • 49. Recapwhat we just saw SADIsearched-for, found, and accessed all databases and/or analytical tools capable of generating those properties
  • 50. Recapwhat we just saw We posed, and answered a complex database query WITHOUT A DATABASE (in fact, the data didn’t even have to exist...)
  • 51. Cool!
  • 52. …but I’m supposed to be personalizing research… Let’s make this a little more personal by bringing in Ontologies
  • 53. My Definition of Ontology (for this talk) Ontologies explicitly define the things that exist in “the world” based on what propertieseach kind of thing must have
  • 54. Ontology Spectrum Frames (Properties) Thesauri “narrower term” relation Selected Logical Constraints (disjointness, inverse, …) Catalog/ ID Formal is-a Informal is-a Formal instance General Logical constraints Terms/ glossary Value Restrs.
  • 55. Demo #2 Discover instances of OWL classes from data that doesn’t exist…
  • 56. Show me patients whose creatinine level is increasing over time, along with their latest BUN and creatinine levels. PREFIX regress: <http://sadiframework.org/examples/regression.owl#> PREFIX patients: <http://sadiframework.org/ontologies/patients.owl#> PREFIX pred: <http://sadiframework.org/ontologies/predicates.owl#> SELECT ?patient ?bun ?creat FROM <http://sadiframework.org/ontologies/patients.rdf> WHERE { ?patient patients:creatinineLevels ?collection . ?collection regress:hasRegressionModel ?model . ?model regress:slope ?slope FILTER (?slope > 0) . ?patient pred:latestBUN ?bun . ?patient pred:latestCreatinine ?creat . }
  • 57.
  • 58.
  • 59.
  • 60. Show me patients with elevated creatinine along with their latest BUN and creatinine levels PREFIX rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> PREFIX patients: <http://sadiframework.org/ontologies/patients.owl#> PREFIX pred: <http://sadiframework.org/ontologies/predicates.owl#> SELECT ?patient ?bun ?creat FROM <http://sadiframework.org/ontologies/patients.rdf> WHERE { ?patient rdf:typepatients:ElevatedCreatininePatient . ?patient pred:latestBUN ?bun . ?patient pred:latestCreatinine ?creat . }
  • 61. Start burrowing through the OWL class  find that we need aregression model OWL class
  • 62. Regression models have features like slopes and intercepts… and so onThe class is completely decomposed until a set of required Services are discoveredcapable of creating all these necessary properties
  • 63. Successful decomposition of the OWL class to discover the need for a LinearRegression Web Service, and so on
  • 65. OWL Class restrictions converted into workflows SPARQL queries converted into workflows Reasoning happening in parallel with query executionData fulfilling OWL models is discovered, or generated through running analytical tools SADI and CardioSHARE
  • 66. This SADI/SHARE behaviour is completely novel
  • 67. I still don’t seewhy this is“Personal”??
  • 68. Show me patients whose creatinine level is increasing over time, along with their latest BUN and creatinine SELECT ?patient ?bun ?creat FROM <http://sadiframework.org/ontologies/patients.rdf> WHERE { ?patient rdf:typepatients:ElevatedCreatininePatient . ?patient pred:latestBUN ?bun . ?patient pred:latestCreatinine ?creat . }
  • 69. I created a small ontologydescribing my definition ofan Elevated Creatinine Patient
  • 70. … it was MY ontology!
  • 72. I can modify it as I change my world-view
  • 73. I can publish it for others to use
  • 74. Others can modify it to fit THEIR world-view
  • 75. My personal world-view is being dynamically resolved againstglobal data and knowledge
  • 76. …but it’s bigger than that…
  • 78. I made that up! It came out of my head!
  • 79. What’s a fancy word for a world-view that you make-up? Hypothesis
  • 80. Current Research We believe that ontologies and hypothesesare, in some ways, the same “thing”……simply assertions about individuals that may or may not existIf an instance of a class exists, then the hypothesis is “validated”
  • 81. Recap SADI Semantic Web Services generate triples; the predicates of those triples are indexed... Period. For a given query, determine which properties are available, and which need to be discovered/generated Find services that generate the properties we need
  • 82. Semantic Web An information system where machines can receive information from one source, re-interpret it, and correctly use it for a purpose that the source had not anticipated. My Purpose!!
  • 83. What SADI + SHARE supports Re-interpretation We constantly compare the collection of properties, gathered from third-parties worldwide, to whatever world-model (query/ontology) we wish to view it through. MY world model
  • 84. What SADI + SHARE supports Novel re-use There is no way for the provider to dictate how their data should be used, or how it should be interpreted. They simply add their properties into the “cloud” and those properties are used in whatever way is appropriate for me.
  • 85. Important “wins” Data remains distributed – no warehouse! Data is not “exposed” as a SPARQL endpoint  greater provider-control over computational resources Yet data appears to be a SPARQL endpoint… no modification of SPARQL or reasoner required.
  • 86. And all this because SADI simply requires that the input URI is the same as the output URI
  • 87. Join us! We have recently received funding from CANARIEto assist and train service providersin deploying their own SADI Semantic Web Services Come join us – we’re having a lot of fun!! http://sadiframework.org
  • 88. Credits Benjamin VanderValk (SADI & CardioSHARE) Luke McCarthy (SADI & CardioSHARE) SoroushSamadian (CardioSHARE) Microsoft Research Fin This presentation available on SlideShare: keywords ‘wilkinson’ ‘BioIT-2010’
  • 89. Credits Benjamin VanderValk(SADI & CardioSHARE) Luke McCarthy (SADI & CardioSHARE) SoroushSamadian(CardioSHARE)