Application Platforms and Developer Communities -
New software tools and apps to support the research workflow

Computer Science Roundtable - July 16, 2012

Michael Habib, MSLS
Product Manager, Scopus
habib@elsevier.com
Twitter: @habib
ScienceDirect
– Elsevier’s online full text portal with 11 million full text
  articles from 2000+ journals as well as thousands of books


Scopus
– World’s largest abstract and citation database with 40
  million abstracts, millions of author and affiliation profiles
  and reference and citation data.


Hub
– Comprehensive search covering ScienceDirect, Scopus and
  the Scirus scientific web index covering 400 million records
  from patents databases, arXiv, lab pages, news and more.
SCIVERSE APPLICATIONS




open, interoperable, domain specific
APPLICATIONS
DEVELOPER PORTAL
Developer Events 2011
10 Challenges, 4 Continents, 10 Countries
  6 Global Institutions, 525+ Developers
           35+ Apps launched
     $65,000 in Total Prize Money




                                    App s for
                                    Scie nce
                                    coun tries
“Hackathon” at NJIT
            61 students, 13 teams
            5 judges, 4 speakers
            3 winners, 8 SciVerse apps
            24 hours of coding
            $3,000 in total prizes
            “The Elsevier hackathon is the kind of
            challenging practical real-world collaborative
            programming experience we like to provide
            to students to augment the concepts that we
            teach in the classroom”

            -Narain Gehani
            Dean College of Computer Sciences, NJIT




                                                             [+]
Apps for Science 2011




JUDGES
  Akhilesh Pandey                     James Hendler                      Lee Dirks       Tony Askew
  Johns Hopkins University            Rensselaer Polytechnic Institute   Microsoft       Reed Elsevier Ventures

  Gully Burns                         Jeff Jonas                         Santo Politi
  University of Southern California   IBM                                Spark Capital
WHY ARE WE DOING THIS?
• Literature and data want to
  be together
  – Mass of data available to researchers outside
    the formal literature is huge and growing
  – This is inefficient - task switching between
    multiple interfaces, hard to find resources...
  – Smart apps can facilitate interoperability,
    bring relevant data into context with papers
(Researchers, N = 3824 ; study by Publishing Research Consortium, 2010)




   High importance but not
      easily accessible
LINKING DATA
WHY ARE WE DOING THIS?

• Customers expect the tools
  they use to work together
 – Google Gmail on your Apple iPhone synced to
   your Dell laptop running Microsoft Windows
 – SciVerse is one tool among many our users are
   using and our customers are subscribing to
 – APIs and an open platform brings SciVerse to
   where users are and lets other products add
   value to SciVerse
ADDED VALUE
              “bX is already
              available on the
              eLibrary, and is
              proving very useful in
              presenting users with
              highly relevant
              material beyond what
              they find through
              their own searches.
              Adding bX to SciVerse
              will bring added value
              to those systems too.“
              Gill McDonald – Librarian,
              Cardiff University
WHY ARE WE DOING THIS?
• Domain specificity is the
  future of research tools
  – The current one-size-fits-all model of
    publishing is print-centric and needlessly
    constricting
  – Publishers/database providers cannot build
    tools for every single scientific discipline
  – An open platform is the obvious solution – let
    the research community build the tools they
    need
“THIS IS A MEDIEVAL WAY OF
       COMMUNICATING
 INFORMATION. WE HAVE TO
WORK TOGETHER TO CHANGE
THIS. THERE IS SO MUCH MORE
         WE CAN DO.”
SIMPLE THINGS
CONNECTING DATA IN CONTEXT
CONNECTING DATA IN CONTEXT
BACK UP
SO WHAT JUST HAPPENED?
APPS ARE INTEGRATED GADGETS
  • OpenSocial, Shindig container for
    serving gadgets
    – Each gadget displayed in its own iFrame
    – Shindig container proxies content to comply with same
      origin policy
  • XML wrapper around HTML/JS
    – Gadgets API with some proprietary extensions
    – Can contain client side code or display external web pages
  • Integrated, context-aware
    – Many integration points in key pages in SciVerse user
      experience
    – Advanced features supported via javascript calls (link text on
      page, run a search, open overlay etc.)
    – Can ask container for data about user, inputs and page
      (meta)data
HTML GADGETS
<?xml version="1.0" encoding="UTF-8"?>
<Module>
  <Require feature="opensocial-0.9" />
  <Require feature="sciverse" />
  <Require feature="hub" />
 </ModulePrefs>
 <Content type="html" view=“profile">
    <![CDATA[
    <p>Hello World!</p>
    ]]></Content>
<Content type="html" view=“canvas">
   <![CDATA[
    <p>Hello World! This is my cat!</p>
   <img src=“http://foo.com/images/myCat.jpg” width=“800” height=“600”>
   <a href=“http://foo.com/images/catPics.html” target=“_blank”>See more
   pics of my cat here.</a>
   ]]></Content>
</Module>
URL/PROXIED CONTENT GADGETS
   Proxied Content – external content is proxied, can use extensions
       <?xml version="1.0" encoding="UTF-8"?>
       <Module>
         <Require feature="opensocial-0.9" />
         <Require feature=“sciverse” />
       </ModulePrefs>
       <UserPref name="doi" datatype="hidden"/>
       <Content type="html" view="profile" href="http://foo.com/docRef=__UP_doi__"/>
       </Module>

   URL – external web page is displayed as is, can still pass data on URL
       <?xml version="1.0" encoding="UTF-8"?>
       <Module>
         <Require feature="opensocial-0.9" />
       </ModulePrefs>
       <UserPref name="doi" datatype="hidden"/>
       <Content type=“URL" view="profile" href="http://foo.com/docRef=__UP_doi__"/>
       </Module>
EXTENSIONS
Retrieve contextual data:    Retrieve contextual data:
•getArticleContent();        Retrieve current article/abstract text
•getContextInfo();           Retrieve all context data (i.e. metadata)
•getResults();               Retrieve metadata of search results
•subscribeToQuery();         Subscribe to user’s search query input
•subscribeToResults();       Subscribe to updated results lists

UI integrations              UI integrations
•gotoCanvas();               Display canvas (full screen) view of gadget
•showHoverView();            Display hover (overlay) view of gadget
•showResultsView();          Display gadget view under specific results
•linkText();                 Link specific terms on the page
•returnQuerySuggestions();   Provide auto-complete query suggestions

Utilities                    Utilities
•makeContentAPIRequest();    Make content API call to SciVerse APIs
•makeRequest();              Make request to external API
•adjustHeight();             Resize gadget window
•makeMeInvisible();          Make gadget disappear
•makeMeVisible();            Make gadget appear
EXAMPLE – ENTITY LINKING
                  • getArticleContent();
                    • retrieves full text of article user is
                    viewing




                  • linkText(‘archidonic acid’);
                    • links selected terms in article, notifies
                    on click events




                  • showHoverView(‘LMID’);
                    • displays “hover” gadget view, passes
                    arbitrary data
THE END

applications.sciverse.com
developers.sciverse.com/framework
developers.sciverse.com/api

habib@elsevier.com
Twitter: @habib

Application Platforms and Developer Communities - New software tools and apps to support the research workflow

  • 1.
    Application Platforms andDeveloper Communities - New software tools and apps to support the research workflow Computer Science Roundtable - July 16, 2012 Michael Habib, MSLS Product Manager, Scopus habib@elsevier.com Twitter: @habib
  • 3.
    ScienceDirect – Elsevier’s onlinefull text portal with 11 million full text articles from 2000+ journals as well as thousands of books Scopus – World’s largest abstract and citation database with 40 million abstracts, millions of author and affiliation profiles and reference and citation data. Hub – Comprehensive search covering ScienceDirect, Scopus and the Scirus scientific web index covering 400 million records from patents databases, arXiv, lab pages, news and more.
  • 4.
  • 5.
  • 6.
  • 8.
    Developer Events 2011 10Challenges, 4 Continents, 10 Countries 6 Global Institutions, 525+ Developers 35+ Apps launched $65,000 in Total Prize Money App s for Scie nce coun tries
  • 9.
    “Hackathon” at NJIT 61 students, 13 teams 5 judges, 4 speakers 3 winners, 8 SciVerse apps 24 hours of coding $3,000 in total prizes “The Elsevier hackathon is the kind of challenging practical real-world collaborative programming experience we like to provide to students to augment the concepts that we teach in the classroom” -Narain Gehani Dean College of Computer Sciences, NJIT [+]
  • 10.
    Apps for Science2011 JUDGES Akhilesh Pandey James Hendler Lee Dirks Tony Askew Johns Hopkins University Rensselaer Polytechnic Institute Microsoft Reed Elsevier Ventures Gully Burns Jeff Jonas Santo Politi University of Southern California IBM Spark Capital
  • 12.
    WHY ARE WEDOING THIS? • Literature and data want to be together – Mass of data available to researchers outside the formal literature is huge and growing – This is inefficient - task switching between multiple interfaces, hard to find resources... – Smart apps can facilitate interoperability, bring relevant data into context with papers
  • 13.
    (Researchers, N =3824 ; study by Publishing Research Consortium, 2010) High importance but not easily accessible
  • 14.
  • 15.
    WHY ARE WEDOING THIS? • Customers expect the tools they use to work together – Google Gmail on your Apple iPhone synced to your Dell laptop running Microsoft Windows – SciVerse is one tool among many our users are using and our customers are subscribing to – APIs and an open platform brings SciVerse to where users are and lets other products add value to SciVerse
  • 17.
    ADDED VALUE “bX is already available on the eLibrary, and is proving very useful in presenting users with highly relevant material beyond what they find through their own searches. Adding bX to SciVerse will bring added value to those systems too.“ Gill McDonald – Librarian, Cardiff University
  • 18.
    WHY ARE WEDOING THIS? • Domain specificity is the future of research tools – The current one-size-fits-all model of publishing is print-centric and needlessly constricting – Publishers/database providers cannot build tools for every single scientific discipline – An open platform is the obvious solution – let the research community build the tools they need
  • 20.
    “THIS IS AMEDIEVAL WAY OF COMMUNICATING INFORMATION. WE HAVE TO WORK TOGETHER TO CHANGE THIS. THERE IS SO MUCH MORE WE CAN DO.”
  • 21.
  • 22.
  • 23.
  • 24.
    BACK UP SO WHATJUST HAPPENED?
  • 25.
    APPS ARE INTEGRATEDGADGETS • OpenSocial, Shindig container for serving gadgets – Each gadget displayed in its own iFrame – Shindig container proxies content to comply with same origin policy • XML wrapper around HTML/JS – Gadgets API with some proprietary extensions – Can contain client side code or display external web pages • Integrated, context-aware – Many integration points in key pages in SciVerse user experience – Advanced features supported via javascript calls (link text on page, run a search, open overlay etc.) – Can ask container for data about user, inputs and page (meta)data
  • 26.
    HTML GADGETS <?xml version="1.0"encoding="UTF-8"?> <Module> <Require feature="opensocial-0.9" /> <Require feature="sciverse" /> <Require feature="hub" /> </ModulePrefs> <Content type="html" view=“profile"> <![CDATA[ <p>Hello World!</p> ]]></Content> <Content type="html" view=“canvas"> <![CDATA[ <p>Hello World! This is my cat!</p> <img src=“http://foo.com/images/myCat.jpg” width=“800” height=“600”> <a href=“http://foo.com/images/catPics.html” target=“_blank”>See more pics of my cat here.</a> ]]></Content> </Module>
  • 27.
    URL/PROXIED CONTENT GADGETS Proxied Content – external content is proxied, can use extensions <?xml version="1.0" encoding="UTF-8"?> <Module> <Require feature="opensocial-0.9" /> <Require feature=“sciverse” /> </ModulePrefs> <UserPref name="doi" datatype="hidden"/> <Content type="html" view="profile" href="http://foo.com/docRef=__UP_doi__"/> </Module> URL – external web page is displayed as is, can still pass data on URL <?xml version="1.0" encoding="UTF-8"?> <Module> <Require feature="opensocial-0.9" /> </ModulePrefs> <UserPref name="doi" datatype="hidden"/> <Content type=“URL" view="profile" href="http://foo.com/docRef=__UP_doi__"/> </Module>
  • 28.
    EXTENSIONS Retrieve contextual data: Retrieve contextual data: •getArticleContent(); Retrieve current article/abstract text •getContextInfo(); Retrieve all context data (i.e. metadata) •getResults(); Retrieve metadata of search results •subscribeToQuery(); Subscribe to user’s search query input •subscribeToResults(); Subscribe to updated results lists UI integrations UI integrations •gotoCanvas(); Display canvas (full screen) view of gadget •showHoverView(); Display hover (overlay) view of gadget •showResultsView(); Display gadget view under specific results •linkText(); Link specific terms on the page •returnQuerySuggestions(); Provide auto-complete query suggestions Utilities Utilities •makeContentAPIRequest(); Make content API call to SciVerse APIs •makeRequest(); Make request to external API •adjustHeight(); Resize gadget window •makeMeInvisible(); Make gadget disappear •makeMeVisible(); Make gadget appear
  • 29.
    EXAMPLE – ENTITYLINKING • getArticleContent(); • retrieves full text of article user is viewing • linkText(‘archidonic acid’); • links selected terms in article, notifies on click events • showHoverView(‘LMID’); • displays “hover” gadget view, passes arbitrary data
  • 30.

Editor's Notes

  • #3 A show of hands please: Who has heard of SciVerse Applications? Who has used a Facebook application? – farmville tripit foursquare
  • #4 Content is the base
  • #5 Three things (can be just one or all three)
  • #7 Creating good documentation and developer tools is key
  • #8 Building a technical support team is key.
  • #10 Good learning experience, maybe not the best way to get ideas
  • #11 Good ideas
  • #12 The researchers know what they need. They have the ideas and can build it themselves or we need to help them find a partner to develop.
  • #31 Thanks to Jud. I got most of the slides from him.