SRI International Bioinformatics 1 The Structured Advanced Query Page Tomer Altman & Mario Latendresse Bioinformatics Research Group SRI, International.

Slides:



Advertisements
Similar presentations
Introduction to Web Design Lecture number:. Todays Aim: Introduction to Web-designing and how its done. Modelling websites in HTML.
Advertisements

SRI International Bioinformatics 1 Navigation to Related Objects Bioinformatics Research Group SRI International Mario Latendresse.
Copyright © 2008 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Chapter 15 Introduction to Rails.
WEB DESIGN TABLES, PAGE LAYOUT AND FORMS. Page Layout Page Layout is an important part of web design Why do you think your page layout is important?
SRI International Bioinformatics 1 Web Services. SRI International Bioinformatics 2 Kinds of Web Services Data retrieval Web Services l PTools-XML l BioPAX.
JavaScript FaaDoOEngineers.com FaaDoOEngineers.com.
SRI International Bioinformatics Comparative Analysis Q
Session 6 Server-side programming - ASP. An ASP page is an HTML page interspersed with server-side code. The.ASP extension instead of.HTM denotes server-side.
Visual Web Information Extraction With Lixto Robert Baumgartner Sergio Flesca Georg Gottlob.
DT211/3 Internet Application Development
DT228/3 Web Development JSP: Directives and Scripting elements.
Guide To UNIX Using Linux Third Edition
About the Presentations The presentations cover the objectives found in the opening of each chapter. All chapter objectives are listed in the beginning.
Introduction To Form Builder
SiS Technical Training Development Track Technical Training(s) Day 1 – Day 2.
Attribute databases. GIS Definition Diagram Output Query Results.
The Internet & The World Wide Web Notes
Basic HTML The Magic Of Web Pages. Create an HTML folder  Make a folder in your H drive and name it “HTML”. We will save EVERYTHING for this unit here.
1 Introduction to Web Development. Web Basics The Web consists of computers on the Internet connected to each other in a specific way Used in all levels.
SRI International Bioinformatics 1 Searching BioCyc Ron Caspi.
Javascript and the Web Whys and Hows of Javascript.
8 Chapter Eight Server-side Scripts. 8 Chapter Objectives Create dynamic Web pages that retrieve and display database data using Active Server Pages Process.
A Scalable Application Architecture for composing News Portals on the Internet Serpil TOK, Zeki BAYRAM. Eastern MediterraneanUniversity Famagusta Famagusta.
4-1 INTERNET DATABASE CONNECTOR Colorado Technical University IT420 Tim Peterson.
XP New Perspectives on Microsoft Access 2002 Tutorial 51 Microsoft Access 2002 Tutorial 5 – Enhancing a Table’s Design, and Creating Advanced Queries and.
1 PHP and MySQL. 2 Topics  Querying Data with PHP  User-Driven Querying  Writing Data with PHP and MySQL PHP and MySQL.
Information Need Question Understanding Selecting Sources Information Retrieval and Extraction Answer Determina tion Answer Presentation This work is supported.
1 Welcome to the GrameneMart Tutorial A tool for batch data sequence retrieval 1.Select a Gramene dataset to search against. 2.Add filters to the dataset.
CSCI 6962: Server-side Design and Programming Introduction to Java Server Faces.
Client Scripting1 Internet Systems Design. Client Scripting2 n “A scripting language is a programming language that is used to manipulate, customize,
Computer Science 101 Database Concepts. Database Collection of related data Models real world “universe” Reflects changes Specific purposes and audience.
Class 1Intro to Databases Goals of this class Understand the architecture behind web database applications Gain a basic understanding of what relational.
Lecture # 6 Forms, Widgets and Event Handling. Today Questions: From notes/reading/life? Share Personal Web Page (if not too personal) 1.Introduce: How.
Java CGI Lecture notes by Theodoros Anagnostopoulos.
SRI International Bioinformatics 1 Recent Developments in Pathway Tools GMOD Workshop November ‘07 Suzanne Paley Bioinformatics Research Group SRI International.
Using SAS® Information Map Studio
SRI International Bioinformatics 1 The Structured Advanced Query Page Tomer Altman & Mario Latendresse Bioinformatics Research Group SRI, International.
JAVA SERVER PAGES CREATING DYNAMIC WEB PAGES USING JAVA James Faeldon CS 119 Enterprise Systems Programming.
Creating Dynamic Web Pages Using PHP and MySQL CS 320.
NMED 3850 A Advanced Online Design January 12, 2010 V. Mahadevan.
 2003 Prentice Hall, Inc. All rights reserved. CHAPTER 3 JavaScript 1.
Dynamic Web Pages & JavaScript. Dynamic Web Pages Dynamic = Change Dynamic Web Pages are web pages that change. More than just moving graphics around.
 Agenda 2/20/13 o Review quiz, answer questions o Review database design exercises from 2/13 o Create relationships through “Lookup tables” o Discuss.
Computers and Scientific Thinking David Reed, Creighton University Functions and Libraries 1.
ITCS373: Internet Technology Lecture 5: More HTML.
SRI International Bioinformatics 1 Recent Pathway Tools Performance Enhancements (Versions 13.0 to 14.5) Bioinformatics Research Group SRI International.
JavaScript - A Web Script Language Fred Durao
XHTML & Forms. PHP and the WWW PHP and HTML forms – Forms are the main way users can interact with your PHP scrip Typical usage of the form tag in HTML.
SRI International Bioinformatics 1 Submitting pathway to MetaCyc Ron Caspi.
PHP Open source language for server-side scripting Works well with many databases (e.g., MySQL) Files end in.php,.php3 or.phtml Runs on all major platforms.
Chapter 3 MATLAB Fundamentals Introduction to MATLAB Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display.
SRI International Bioinformatics 1 SmartTables & Enrichment Analysis Peter Karp SRI Bioinformatics Research Group September 2015.
SRI International Bioinformatics 1 The Structured Advanced Query Page Tomer Altman Bioinformatics Research Group SRI, International February 1, 2008.
SRI International Bioinformatics 1 Genome Browser Tomer Altman Bioinformatics Research Group SRI, International August 19th, 2009.
BlackBerry Applications using Microsoft Visual Studio and Database Handling.
Reading Flash. Training target: Read the following reading materials and use the reading skills mentioned in the passages above. You may also choose some.
Class 1Intro to Databases Goals of this class Understand the architecture behind web database applications Gain a basic understanding of what relational.
Chapter 5 Introduction To Form Builder. Lesson A Objectives  Display Forms Builder forms in a Web browser  Use a data block form to view, insert, update,
8 Chapter Eight Server-side Scripts. 8 Chapter Objectives Create dynamic Web pages that retrieve and display database data using Active Server Pages Process.
SRI International Bioinformatics 1 The Structured Advanced Query Page Mario Latendresse Tomer Altman Bioinformatics Research Group SRI International March,
Compare and Contrast : Blackboard & a Personal Web Page www3.ltu.edu/~s_schneider/howto/faculty.htm You’ll find this presentation (and another) here :
Invitation to Computer Science 6 th Edition Chapter 10 The Tower of Babel.
Chapter 6 Chapter 6 Server Side Programming (JSP) Part 1 1 (IS 203) WebProgramming (IS 203) Web Programming.
SRI International Bioinformatics 1 The Structured Advanced Query Page Tomer Altman Mario Latendresse Bioinformatics Research Group SRI International April.
Recent Developments and Future Directions in Pathway Tools Peter D. Karp SRI International.
JavaScript 101 Lesson 6: Introduction to Functions.
Welcome to the GrameneMart Tutorial A tool for batch data sequence retrieval 1.Select a Gramene dataset to search against. 2.Add filters to the dataset.
PythonCyc and other APIs A Python package to access Pathway Tools and its data using the Python programming language Mario Latendresse March 2016.
2440: 141 Web Site Administration Web Forms Instructor: Joseph Nattey.
SRI Bioinformatics Research Group
Presentation transcript:

SRI International Bioinformatics 1 The Structured Advanced Query Page Tomer Altman & Mario Latendresse Bioinformatics Research Group SRI, International August 18, 2009

1 SRI International Bioinformatics Introduction BioVelo is a query language Like SQL but simpler and easier to learn Documentation: Free-Form Advanced Query Page allows Web submission of BioVelo queries Structured Advanced Query Page (SAQP)‏ Web page for interactively constructing advanced and precise queries to PGDBs Queries are translated to BioVelo and sent to the server for processing SAQP: Documentation:

SRI International Bioinformatics 1 Why a query interface? Allow a structured way to access the rich data representation stored in a PGDB. Most advanced databases have a high-level, declarative method of access (i.e., SQL). Provides an intermediate level of access between graphically browsing the PGDB and programmatically processing the data using Lisp.

SRI International Bioinformatics 1 The Structured Advanced Query Page 'Advanced', in that it allows you to ask more advanced and complicated queries than the basic search interface. In other words, the SAQP allows you to search for a precise set of answers given simple or complex conditions 'Structured', in that it is a dynamic HTML form, that provides greater ease in crafting queries, but trades flexibility and power for simplicity (FFAQP). 'Page', in that it is accessed via the Web interface for BioCyc ( or from your own Pathway Tools Web server.

SRI International Bioinformatics 1 SAQP Architecture The SAQP is built on top of a high-level functional declarative language called BioVelo which is built on top of Pathway Tools. On every result page, you will see the equivalent BioVelo code that was generated from the SAQP, which, in turn, generated the results. You don't need to know anything about BioVelo to use the SAQP, but it might be helpful later if you need the ability to write even more complicated queries using the Free Form Advanced Query Page (FFAQP).

SRI International Bioinformatics 1 The Structure of the SAQP: Database specification Class specification 'Where' constraints on attributes of classes Output attributes description Data format (HTML vs TXT)‏

SRI International Bioinformatics 1 Example #1: A simple query usually consists of querying a particular database about a particular class. Find all the proteins in E. coli K-12. Display the protein names.

SRI International Bioinformatics 1 Structure of the Results A line that shows the equivalent BioVelo expression that the SAQP generated to answer the query. A HTML table of the results, with the corresponding entries hyperlinked to the matching Pathway Tools Web pages. If a text data format was requested, then a tab- delimited text file is generated, with just the table data.

SRI International Bioinformatics 1 Example #2: Find all the proteins of E. coli K-12 for which the DNA- FOOTPRINT-SIZE is smaller than 10. Display the protein name, and the DNA footprint size.

SRI International Bioinformatics 1 Example #3: In EcoCyc, display polypeptides constrained by experimentally determined molecular weight and isoelectric point. The experimental molecular weight should be between 50 and 100 kD. The pI should be less than 7. Display the polypeptide name, the experimental molecular weight, and the pI.

SRI International Bioinformatics 1 Example #4: The SAQP allows for specifying quantifiers on relations between PGDB classes. Extending example #3, now we want only proteins where at least one of the genes that encodes the protein to be within the first 500 kilobases of the E. coli chromosome.

SRI International Bioinformatics 1 Example #5: Queries with Several Components A second search component will search potentially another database and another class of objects for each element found in the first search component. It is called a 'cross-product' search. Any number of search components can be added. In general, the new search component is done for each set of objects found in the previous components. Some restraints is needed not to build a query that takes too long to answer. (The server gives a limit of a few minutes for a query.)‏ Example: Search for MetaCyc pathways in the taxonomic range of Bacteria that also exist in E. coli K- 12 using the common-name attribute.

SRI International Bioinformatics 1 Introduction to BioVelo BioVelo is based on set and list comprehension. In Mathematics, a set comprehension describes a set of values as in: {x | x in Prime, x > 100} The output is 'x', the body has a generator 'x in Prime' and a condition 'x > 100'. Several conditions and several generators could be used. BioVelo used a concise syntax: 1) [ output-expression : generator, condition,... ] 2) a generator has the form v ← database^^class 3) a condition uses logical and relational operators

SRI International Bioinformatics 1 Syntax of BioVelo (the big picture) 1. [ head-output : generators, conditions, … ] 2. { head-output : generators, conditions, …} 3. The comma can be read as “and”. 4. Head-output is a single expression or a tuple of expressions: (exp1, exp2, …, expn) 5. To get objects from database: orgid ^^ class-name 6. Typical generator: var <- ecoli^^proteins 7. To access an attribute value: Object ^ attribute 8. Conditions are formed with variables, constants, logical and relational operators. 9. Special biological functions: reaction-to-genes, enzyme-to-genes, pathway-to-reactions, etc.

SRI International Bioinformatics 1 Examples of BioVelo Queries [r : r <- ecoli^^reactions] [p^name : p <- ecoli^^proteins] [p^?name : p<- ecoli^^proteins] [p^?name : p <- ecoli^^proteins, p^dna-footprint-size < 10] [(g^?name, g^left-end-position): g <- ecoli^^genes, g^left-end-position < ]  [(g^?name, k): g<- ecoli^^genes, k := abs(g^left-end-position – g^right-end-position)+1, k < 200 ] [(r^?name, c^?name) : r<- ecoli^^reactions, c<- r^left, c in r^right]

SRI International Bioinformatics 1 BioVelo Grammar in EBNF

SRI International Bioinformatics 1 BioVelo, Table of Operators (1)

SRI International Bioinformatics 1 BioVelo, Table of Operators (2)

SRI International Bioinformatics 1 BioVelo, Special Functions

SRI International Bioinformatics 1 BioVelo and the Free Form Advanced Query Page (FFAQP) Any BioVelo query can be entered at the FFAQP There is an interactive online documentation at the FFAQP The FFAQP can be reached from the Search->Advanced command Menu Bar via the SAQP by clicking the button Switch to Free Form Advanced Query Page. Here is a demo…

SRI International Bioinformatics 1 BioVelo from Pathway Tools (Desktop) BioVelo queries can be executed from the Lisp prompt by using the bv Lisp function. The query is given as a Lisp string to bv. The result is displayed and put on the answer-list. Examples: 1. (bv “[ r : r 4]”) 2. (bv “[(g,s) : g <-ecoli^^genes, s <- g^synonyms, s ~= \”b0[0-9]\”]”)

SRI International Bioinformatics 1 BioVelo from Pathway Tools (Desktop) The result can be further stored or manipulated using Lisp. Objects are always returned as frame-structures, not frame-ids, so that multiple databases can be handled without worrying about orgids (database identifiers). But, not all functions in Pathway Tools take frame structures at “face value”. The current selected organism must match the frame-structure database.