GoPubMed and beyond: Rules and reasoning for ontologybased literature search - PowerPoint PPT Presentation

1 / 25
About This Presentation
Title:

GoPubMed and beyond: Rules and reasoning for ontologybased literature search

Description:

It is well known that Levamisole inhibits alkaline phosphatase ... Effects of alkaline phosphatase and its inhibitor Levamisole... – PowerPoint PPT presentation

Number of Views:68
Avg rating:3.0/5.0
Slides: 26
Provided by: w3
Category:

less

Transcript and Presenter's Notes

Title: GoPubMed and beyond: Rules and reasoning for ontologybased literature search


1
GoPubMed and beyond Rules and reasoning for
ontology-based literature search
2
REWERSEa European Network of Excellence
  • Reasoning on the Web with Rules and Semantics
  • Technology
  • Rule Markup languages
  • Policy specification, composition and conformance
  • Composition and typing
  • Reasoning-aware querying
  • Evolution and reactivity
  • Application
  • Web-based Decision Support for Event, Temporal,
    and Geographical Data
  • Towards a Bioinformatics Semantic Web
  • Personalised Information Systems
  • Towards a Bioinformatics Semantic Web
  • Groups Dresden, Jena, Lisbon, Linkoeping,
    Edinburgh, Bucarest, Manchester, Paris
  • Rules and constraints for structure prediction,
    metabolic pathways, gene expression analysis,
    ontologies, workflows.

3
GoPubMed and beyond Rules and reasoning for
ontology-based literature search
4
Problem
  • PubMed gt12M articles

5
Example Task
  • Which enzymes does Levamisole inhibit?
  • It is well known that Levamisole inhibits
    alkaline phosphatase
  • It is not well known that Levamisole inhibits
    phosphofructokinase

6
PubMed Example
  • A keyword search for levamisole inhibitor
    produces well over 100 hits in PubMed.
  • To find out about specific functions, we have to
    go through all these papers!
  • We are interested in the relevant enzymatic
    functions.
  • A refined search for Levamisole inhibitor
    enzymatic activity produces only 5 hits - a lot
    of relevant papers have been dropped.

7
GoPubMed Example
Query Levamisole inhibitor Maximum papers
100 Strict matching 54 papers in biological
process 20 in cellular components 72 in molecular
function
8
GoPubMed Example
Lets look for some functions 70 papers
including terms, which are enzyme activities
9
GoPubMed Example
Transferase 8 Kinase 6 Hydrolase
58 Oxidoreductase 2 Lyase 1
10
GoPubMed Example
alkaline phosphatase inhibitor levamisole
Effects of alkaline phosphatase and its inhibitor
Levamisole
Alkaline Phosphatase 52 papers
11
GoPubMed Example
Phosphofructokinase
12
GoPubMed Example
Levamisole direclty inhibits tumor
phosphofructokinase
13
GoPubMed Example
In PubMed the article is listed at position
84! And hence unlikely to be read
14
GoPubMed and beyond Rules and reasoning for
ontology-based literature search
15
Prova
16
Prova
  • Rule-based Java scripting for middleware
  • Combination of object-oriented and declarative
    programming
  • Offer a rule-based platform for distributed agent
    programming.
  • Expose logic and agent behaviour as rules
  • Access data sources via wrappers written in Java
  • Make all Java API from available packages
    directly accessible from rules
  • Run within the Java runtime
  • Enable rapid prototyping of applications

17
PubMed XML Output
  • ltPubmedArticlegt
  • ltMedlineCitation Owner"NLM"
    Status"Publisher"gt
  • ltPMIDgt15469972lt/PMIDgt
  • ltDateCreatedgt
  • ltYeargt2004lt/Yeargt
  • ltMonthgt10lt/Monthgt
  • ltDaygt7lt/Daygt
  • lt/DateCreatedgt
  • ltArticlegt
  • ltJournalgt
  • ltISSNgt0950-1991lt/ISSNgt
  • ltJournalIssue PrintYN"N"gt
  • ltPubDategt
  • ltYeargt2004lt/Yeargt
  • ltMonthgt10lt/Monthgt
  • ltDaygt6lt/Daygt
  • lt/PubDategt
  • lt/JournalIssuegt
  • ltCodengtDEVPEDlt/Codengt

18
Output
  • Year 2004
  • ArticleTitle Developmental potential of
    defined neural progenitors derived from mouse
    embryonic
  • stem cells.
  • LastName Plachta
  • FirstName Nicolas
  • Initials N
  • LastName Bibel
  • FirstName Miriam
  • Initials M
  • LastName Tucker
  • FirstName Kerry Lee
  • Initials KL
  • LastName Barde
  • FirstName Yves-Alain
  • Initials YA

19
Code Snippet
Prolog rules
  • XML reading tests
  • - eval(test_xml1()).
  • test_xml1() -
  • DocumentXML("pubmed.xml"),
  • Root Document.getDocumentElement(),
  • tagname(Root,Elements),
  • Elements.nodes(Element),
  • subtag(Element,SubElements),
  • SubElements.nodes(SubElement),
  • SubElementNodeName SubElement.getNodeName(),
  • ChildNodesSubElement.getChildNodes(),
  • ChildNodes.nodes(ChildNode),
  • evaluate(ChildNode).
  • tagname(Root,Elements)-
  • evaluate(ChildNode)-
  • "Year"ChildNode.getNodeName(),
  • printout(ChildNode).
  • evaluate(ChildNode)-
  • "Initials"ChildNode.getNodeName(),
  • printout(ChildNode),
  • println().
  • evaluate(ChildNode)-
  • "FirstName"ChildNode.getNodeName(),
  • printout(ChildNode).
  • evaluate(ChildNode)-
  • "ForeName"ChildNode.getNodeName(),
  • printout(ChildNode).
  • evaluate(ChildNode)-
  • "LastName"ChildNode.getNodeName(),
  • printout(ChildNode).

Java objects
Unification
20
Traverse the GO tree and find all
phosphofructokinases
Built-in DB access
Built-in DB access
  • -eval(consult("utils.prova")).
  • location(database,go","jdbcmysql//comas.soi.cit
    y.ac.uk","guest","guest").
  • location(database,"GO","jdbcmysql//dbserver","gu
    est","guest").
  • -solve(isPhosphofructokinase()).
  • isPhosphofructokinase() -
  • dbopen("GO",DB),
  • println("DB open"),
  • sql_select(DB,term,id,TermID,name,Name,wher
    e,"name 'phosphofructokinase activity'"),
  • println("Looking for all children of GO-Term
    (",TermID,") ",Name),
  • findall(TermID,isPhosphofructokinase(DB,TermID),
    _).
  • isPhosphofructokinase(DB,TermID) -
  • concat("term1_id",TermID,WhereClause),
  • sql_select(DB,term2term,term2_id,ChildTermID,
    where, WhereClause),
  • concat("id",ChildTermID,WhereClause2),

Backtracking
Recursion
21
Output
  • Looking for all children of GO-Term (2153)
    phosphofructokinase activity
  • 2153 has child 1-phosphofructokinase
    activity,2154
  • 2154 does not have any children.
  • 2153 has child 6-phosphofructo-2-kinase
    activity,2155
  • 2155 does not have any children.
  • 2153 has child 6-phosphofructokinase
    activity,2156
  • 2156 does not have any children.
  • 2153 does not have any children.
  • yes

22
Messaging and Reaction Rules
  • Prova is designed to implement agents in a
    distributed system
  • Prova is based on theoretical work on multi agent
    systems
  • Prova provides predicates to send and receive
    messages and to realise reaction rules

23
Code Snippet
Built-in agent agent communication sendMsg and
rcvMsg Abstracting from protocols like JMS,
Jade or inline
  • - eval(ex004()).
  • a(1).
  • a(2).
  • b(3).
  • b(4).
  • Send out messages
  • ex004() -
  • println("ex004"),
  • iam(Me),
  • sendMsg(XID1,self,Me,queryref,a(I)),
  • rcvMult(XID1,self,Me,reply,a(I)),
  • println("Inline reaction ",rcvMult(XID1,self,Me,
    reply,a(I))),
  • sendMsg(XID2,self,Me,queryref,b(J)),
  • rcvMult(XID2,self,Me,reply,b(J)),
  • println("Inline reaction ",rcvMult(XID2,self,Me,
    reply,b(J))).

24
Output
  • ex004
  • Rule reaction 1 "rcvMsg","mediator_at_bioinf-mobile3
    ","self","mediator","queryref","a",I
  • Rule reaction 2 "rcvMsg","mediator_at_bioinf-mobile3
    ","self","mediator","queryref","a",I
  • Inline reaction "rcvMult","mediator_at_bioinf-mobile
    3","self","mediator","reply","a",1
  • Inline reaction "rcvMult","mediator_at_bioinf-mobile
    3","self","mediator","reply","a",2
  • end_of_transmission for conversation-id
    mediator_at_bioinf-mobile3 "a",I
  • Rule reaction 1 "rcvMsg","mediator_at_bioinf-mobile6
    ","self","mediator","queryref","b",N_at__at_16
  • Rule reaction 2 "rcvMsg","mediator_at_bioinf-mobile6
    ","self","mediator","queryref","b",N_at__at_16
  • Rule reaction 1 "rcvMsg","mediator_at_bioinf-mobile8
    ","self","mediator","queryref","b",N_at__at_16
  • Rule reaction 2 "rcvMsg","mediator_at_bioinf-mobile8
    ","self","mediator","queryref","b",N_at__at_16
  • Inline reaction "rcvMult","mediator_at_bioinf-mobile
    6","self","mediator","reply","b",3
  • Inline reaction "rcvMult","mediator_at_bioinf-mobile
    6","self","mediator","reply","b",4
  • end_of_transmission for conversation-id
    mediator_at_bioinf-mobile6 "b",N_at__at_16
  • Inline reaction "rcvMult","mediator_at_bioinf-mobile
    8","self","mediator","reply","b",3
  • Inline reaction "rcvMult","mediator_at_bioinf-mobile
    8","self","mediator","reply","b",4
  • end_of_transmission for conversation-id
    mediator_at_bioinf-mobile8 "b",N_at__at_16
  • end_of_transmission for conversation-id
    mediator_at_bioinf-mobile3 "a",I
  • Shutdown complete.

25
Conclusion
  • GoPubMed facilitates exploration of literature
    abstracts with the GeneOntology
  • Prova implements Prolog-style rules and reasoning
    with Java
  • Thanks
  • GoPubMed Andreas Doms, Ralf Delfs, Alex
    Kozlenkov
  • Prova Alex Kozlenkov
  • Support EU Projects REWERSE, GeneStream, BioGrid
  • Contact
  • Michael Schroeder ms_at_biotec.tu-dresden.de
  • URLs
  • www.biotec.tu-dresden.de
  • www.rewerse.net (REWERSE project including info
    on bioinfo group)
  • www.semanticwebrules.org (Prova)
  • www.gopubmed.org (GoPubMed)
Write a Comment
User Comments (0)
About PowerShow.com