elsevier developer network - developer presentation

Post on 15-Jan-2015

2.407 Views

Category:

Technology

1 Downloads

Preview:

Click to see full reader

DESCRIPTION

 

TRANSCRIPT

Developer Overview

1. SciVerse is OpenSocial in Context2. SciVerse Apps3. Note to developers 4. SciVerse APIs5. SciVerse Framework API and ContextObject6. SciVerse Content API7. API-key and authToken in Requestheaders8. Views

1. Types2. References

9. Facets10.Subject Areas11.WADLs and XSDs12.Apps For Science $35,000 Challenge 13.Support

OpenSocial in Context

SciVerse is an extension of Apache Shindig, an OpenSocial container. OpenSocial is:-People-Groups-Activities-Apps

OpenSocial Apps are HTML IFRAMEs, which means the Cross-Domain Policy applies.

SciVerse is OpenSocial Apps with access to page context, embedded in search results, full text articles and author details.

Full-Text Article

App

SciVerse Shindig server SD

SciVerse Apps - Search Results

SciVerse Apps – Full Text Article

Note to Developers

SciVerse does not yet support OAuth (3-legged) API calls

SciVerse does not yet support OpenSocial people, so there is not yet a persistent user id available to applications

SciVerse APIsFramework APIhttp://developer.sciverse.com/frameworkapi

•Access contextual information •Access list of search results •Display content under each search result •Highlight and link text and terms •Search Assist for instance for autocomplete•Hover windows •(In)visibility •Securely accessing client services with built-in MD5 Message Digest•Navigate search results using facets

Content APIhttp://developer.sciverse.com/api

RESTful APIs that provide direct access to Elsevier content: ScienceDirect, Scopus, Hub for search results and full-text articles, author, affiliation information, and meta-data.

SciVerse Framework API and ContextInfo

http://developer.sciverse.com/framework#context

gadgets.sciverse.getContextInfo(callback)

Returns contextual information provided by the hosting application as a JSON object. This includes information such as user search terms, DOI, title, etc. as well as web application data such as page type, platform, etc.

authorIdentifier, currentAffiliationId, currentAffiliationName, currentAffiliationCity, currentAffiliationCountry, doi, isbn, keywords, pii, searchTerms, secureAuthToken, timestamp, year

function getContext(){ gadgets.sciverse.getContextInfo(getContextCallback);}function getContextCallback(context) {

var searchterms = context.searchTerms;authtoken = context.secureAuthtoken;

SciVerse Content API

data mapping table with search fields and their clustershttp://developer.sciverse.com/sciversecontentapiviews2

CLUSTERS

Clustershttp://developer.sciverse.com/sciversecontentapisearchrequest

•HUB (ScienceDirect, Scopus, and Scirus data)•SCIDIR (ScienceDirect data)•SCOPUS (Scopus data)•AUTHOR •AFFILIATION

Example URLhttp://api.elsevier.com/content/search/index:CLUSTER?query=

API-key and authToken

function run() { gadgets.sciverse.getContextInfo(init);}

function init(context) { var authtoken = context.secureAuthtoken;

var requestHeaders = {}; requestHeaders['X-ELS-APIKey'] = myapikey; requestHeaders['X-ELS-Authtoken'] = authtoken;

var params = {}; params[gadgets.io.RequestParameters.HEADERS] = requestHeaders; gadgets.sciverse.makeRequest(url, callback, params);}

gadgets.util.registerOnLoadHandler(run);

Views http://developer.sciverse.com/sciversecontentapiviews

Views are defined for each CLUSTER

Views http://developer.sciverse.com/sciversecontentapiretrievalviews

Facets http://developer.sciverse.com/sciversecontentapifacets

Different facets are available for each cluster.

var scidircluster = "SCIDIR";var scidirfacets = "contenttype(Journal);"+ // return counts: All, values: // Journal, Book, Reference Work"srctitle(20);"+ // return counts: 5 to 20"pubyr(20);"+ // returns counts: 5 to 20"topics();"; // X

var url = "http://api.elsevier.com/content/search/index:"+cluster+ "?query="+searchterms+ "&facets="+facets+ "&count="+count+ "&scomode=on"+ "&sort=fd";

Subject Areas AGRI - Agricultural and Biological SciencesARTS - Arts and HumanitiesBIOC - Biochemistry, Genetics and Molecular BiologyBUSI - Business, Management and AccountingCENG - Chemical EngineeringCHEM - ChemistryCOMP - Computer ScienceDECI - Decision SciencesDENT - DentistryEART - Earth and Planetary SciencesECON - Economics, Econometrics and FinanceENER - EnergyENGI - EngineeringENVI - Environmental ScienceHEAL - Health ProfessionsIMMU - Immunology and MicrobiologyMATE - Materials ScienceMATH - MathematicsMEDI - MedicineNEUR - NeuroscienceNURS - NursingPHAR - Pharmacology, Toxicology and PharmaceuticsPHYS - Physics and AstronomyPSYC - PsychologySOCI - Social SciencesVETE - VeterinaryMULT - Multidisciplinary

WADLs and XSDs

Web Application Definition Language (WADL)

Request and Response ObjectsXML Schema Definitions (XSD)

WADL and XSD files:http://schema.elsevier.com/dtds/document/bkapi/

The SciVerse APIs support PRISM implementation of the Dublin Core metadata standard.http://developer.sciverse.com/sciversecontentapiretrievalrequest#sciVerseRetrievalResponse

Support

API, Data and Backend questionsAle de Vries (senior product manager)Dave Santucci (integration support coord)

Programming questionsRyan Dietz (principal SW engineer)

Functional Spec / Product Development questionsBen Rubin (product manager)Max Berenstein (product manager)

A little bit of everythingRemko Caprio (developer evangelist)

Githubhttps://github.com/sciversedev

top related