Date post: | 11-Jun-2015 |
Category: |
Technology |
Upload: | jan-aerts |
View: | 452 times |
Download: | 0 times |
InterMineEmbeddable Data-Mining Widgets
Saturday, 14 July 2012
InterMine is:
• An integrated data-warehouse
• An optimising and caching query engine
• A set of web services
• A suite of embeddable widgets
Saturday, 14 July 2012
You are here
Object Store
Internal API
Web-Application
Web-Services
Java Perl Python Ruby JS
List Widgets TablesUser Scripts and Programs
Saturday, 14 July 2012
Who runs InterMine?
• YeastMine (S. cerevisiae)
• RatMine (R. norvegicus)
• ZfinMine (D. rerio)
• Wormbase (C. elegans)
• MGI (M. musculus)
• FlyMine (D. melanogaster)
• modMine
• metabolicMine
• TargetMine
• mitoMine
InterMOD
Also: S. pombe, FlyBase, TAIR
Saturday, 14 July 2012
Prime strengths
•Flexibility
•Performance
Saturday, 14 July 2012
Making it accessible
• Make running a large data-warehouse accessible to groups with limited resources
• Make powerful querying accessible to non-technical users
• Make a machine readable API accessible to anyone
• Make the display of data accessible through any site
Saturday, 14 July 2012
Step 1
• Build web services platform and library support
Saturday, 14 July 2012
from intermine.webservice import Services = Service(‘www.flymine.org/query’)q = s.model.Gene.select(‘*’, ‘proteins.proteinDomains.*’)\ .where(‘pathways’, ‘LOOKUP’, ‘pentose*’)
for gene in q: print gene.symbol for protein in gene.proteins: for domain in protein.proteinDomains: print domain.name
Saturday, 14 July 2012
from intermine.webservice import Services = Service(‘www.flymine.org/query’)q = s.model.Gene.select(‘*’, ‘proteins.proteinDomains.*’)\ .where(‘pathways’, ‘LOOKUP’, ‘pentose*’)
for row in q.rows(): print row[‘name’], row[‘proteins.proteinDomains.name’]
Saturday, 14 July 2012
Step 2
• Build Tools on this Platform
Saturday, 14 July 2012
Table Widgets
Saturday, 14 July 2012
Analysis Widgets
Saturday, 14 July 2012
Step 3
• Eat own dog-food
Saturday, 14 July 2012
Saturday, 14 July 2012
Danger, Danger!
• live demo here...
Saturday, 14 July 2012
Now it’s your turn!
<div id=”the-table-goes-here”></div>
<script>
(function($, im) {
var s, q, v;
s = new im.Service({ root: ‘www.flymine.org/query’, token: ‘MYTOKEN’ });
var q = {
from: ‘Gene’,
select: [‘symbol’, ‘proteins.proteinDomains.*’],
where: [{pathways: {LOOKUP: ‘pentose*’}]
};
var v = new im.query.results.CompactView(s, q);
v.$el.appendTo(‘#the-table-goes-here’);
v.render();
})(jQuery, intermine);
</script>
Saturday, 14 July 2012
Toolkit
Bootstrap
Saturday, 14 July 2012
One stop shop:
• All files served from cdn.intermine.org
➡Dependencies (jquery, backbone, bootstrap)
➡im.js
➡im-tables.js
➡widgets.js
Saturday, 14 July 2012
Alex Kalderimis, Daniela Butano, Adrian Carr , Sergio Contrino, Hu Fengyuan, Mike Lyne, Rachel Lyne, Julie Sullivan,
Radek !t"pán, Gos Micklem
Systems Biology Centre, University of Cambridge, Tennis Court Road, Cambridge CB2 1QR, UK
+44 1223 760262 [email protected]
intermine.org
Saturday, 14 July 2012