Date post: | 28-Jan-2015 |
Category: |
Technology |
Upload: | scorlosquet |
View: | 111 times |
Download: | 0 times |
Drupal as aSemantic Web platform
Stéphane Corlosquet, Sudeshna Das, Emily Merrill, Paolo Ciccarese, and Tim ClarkMassachusetts General HospitalISWC 2012, Boston, USA – Nov 14th, 2012
Drupal
● Dries Buytaert - small news site in 2000● Open Source - 2001● Content Management System● LAMP stack● Non-developers can build sites
and publish content● Control panels instead of code
http://www.flickr.com/photos/funkyah/2400889778/
Who uses Drupal?
Who uses Drupal?
Who uses Drupal?
Who uses Drupal?
Who uses Drupal?
Who uses Drupal?
Who uses Drupal?
Who uses Drupal?
Who uses Drupal?
Drupal
● Open & modular architecture
● Extensible by modules● Standards-based● Low resource hosting● Scalable
http://drupal.org/getting-started/before/overview
Building a Drupal site
http://www.flickr.com/photos/toomuchdew/3792159077/
Building a Drupal site
● Create the content types you need
Blog, article, wiki, forum, polls, image, video, podcast, e-commerce... (be creative)
http://www.flickr.com/photos/georgivar/4795856532/
Building a Drupal site
● Enable the features you want
Comments, tags, voting/rating, location, translations, revisions, search...
http://www.flickr.com/photos/skip/42288941/
Building a Drupal site
Building a Drupal site
Thousands of free contributed modules ● Google Analytics● Wysiwyg● Captcha● Calendar● XML sitemap● Five stars● Twitter● ...
http://www.flickr.com/photos/kaptainkobold/1422600992/
The Drupal Community
http://www.flickr.com/photos/x-foto/4923221504/
Repository• New repository for stem cell data as part of Stem
Cell Commons
• Harvard Stem Cell Institute (HSCI): Blood and Cancer program system
• Designed to incorporate- multiple stem cell types- multiple assay types- user requested features
• Integrated with analytical tools
• Enhanced search and browsing capabilities
Content types
Integrated with Analysis tools
What about RDF?
Drupal 7 default RDF Schema
SCC RDF Schema
Backend architecture
Modules used
● Contributed module for more features● RDF Extensions
● Serialization formats: RDF/XML, Turtle, N-Triples
● SPARQL● Expose Drupal RDF data in a SPARQL Endpoint
● Features and packaging● Build distributions / deployment workflow
SPARQL Endpoint
● SPARQL Endpoint available at /sparql
SPARQL Endpoint
● Need to query Drupal data across different classes from R
● Need a standard query language● SQL?● Query Drupal data with SPARQL
Backend architecture (revisited)
SPARQL query
PREFIX obo: <http://purl.obolibrary.org/obo/>PREFIX mged: <http://mged.sourceforge.net/ontologies/MGEDontology.php#>PREFIX dc: <http://purl.org/dc/terms/>
SELECT ?bioassay_title WHERE { ?experiment obo:OBI_0000070 ?bioassay; dc:title ?bioassay_title . ?bioassay mged:LabelCompound <http://exframe-dev.sciencecollaboration.org/taxonomy/term/588> .}GROUP BY ?bioassay_titleORDER BY ASC(dc:date)
Wrap up use case #1
● Drupal is a good fit for building web frontends ● Editing User Interfaces out of the box● Querying Data in SQL:
● not very friendly● may not be appropriate / performant
● Querying with SPARQL:● Use the backend that match your needs● ARC2 can be sufficient for prototyping and
lightweight use cases
Use Case #2:
Data Layers
Domeo + Drupal
Domeo
● Annotation Tool developed by MIND Informatics, Massachusetts General Hospital
● Annotate HTML documents● Share annotations● Annotation Ontology (AO), provenance, ACL● JSON-LD Service to retrieve annotations● http://annotationframework.org/
Domeo
Domeo
Domeo
Domeo
JSON-LD
● JSON for Linked Data● Client side as well as server side friendly● Browser Scripting:
– Native javascript format– RDFa API in the DOM
● Data can be fetched from anywhere:– Cross-Origin Resource Sharing (CORS) required
● Clients can mash data
List of publications in Drupal
Can we layer personal annotations on top?
What do we have?
● RDFa markup for each publication
RDFa API
● Extract structured data from RDFa documents● Green Turtle: RDFa 1.1 library in Javascript
document.getElementsByType('http://schema.org/ScholarlyArticle');
RDFa API
Domeo + Drupal
● Data mash up from independent sources
Domeo + Drupal
Wrap up use case #2
● Another use case for exposing data as RDFa● RDFa and JSON-LD fit well together
● HTML → RDFa● JSON → JSON-LD
● CORS support not yet available everywhere● Grails didn't have it● Use JSONP instead
Thanks!
● Stéphane Corlosquet ● [email protected]● @scorlosquet● http://openspring.net/
● MIND Informatics● http://www.mindinformatics.org/