Introduction to Research Objects - Collaboartions Workshop 2015, Oxford

27
An Introduction to Research Objects Collaborations Workshop March 16th 2015, Oxford Matthew Gamble, University of Manchester researchobject.org

Transcript of Introduction to Research Objects - Collaboartions Workshop 2015, Oxford

An Introduction to Research ObjectsCollaborations Workshop March 16th 2015, Oxford

Matthew Gamble, University of Manchester

researchobject.org

Why Research Objects?

Support the publication of more than just PDFs, making data, code, and other resources first class

citizens of scholarship

researchobject.org

Going Beyond the PDF.

What are Research Objects?

researchobject.org

A common mechanism for publishing research artefacts in a consistent and useful way on the Web.

world wide web

Both conceptual model and technical implementations.

Research ArtefactsAs part of a research investigation you might for example have:

Slides hosted on slideshare, Code in a github repository, Data in figshare or community db, Preprint on arxiv.org etc.

researchobject.org

Collections

researchobject.org

Recognition that there is often a need to publish collections of these resources together as one

shareable, cite-able resource.

Research Objects

researchobject.org

Research Objects

researchobject.org

Research Objects

researchobject.org

?

Research Objects

researchobject.org

Enrich these resources and collections with any and all additional information and metadata required to

make research reusable, and reproducible!

3 Principles

researchobject.org

Use unique identifiers as names for things.

Use some mechanism of aggregation to group things together.

Provide metadata about those things & how they relate to each other.

3 Principles

researchobject.org

Use unique identifiers as names for things.

Use some mechanism of aggregation to group things together.

Provide metadata about those things & how they relate to each other.

Point of Extendability

In Reality

researchobject.org

Research Object Manifest

What about resources that aren’t already on the web?

aggregates - List of ids/links to resources

annotations - List of annotations about resources

RO Metadata - id, title, creator, status etc.

Structured document that contains:

Manifest

researchobject.org

title: my research object id : www.example.org/myresearchobject

createdOn : 2013-03-05 17:29:03 createdBy : “A. Turing”

aggregates: http://researchobject.org/blog/1 www.myexperiment.org/workflow

annotations: “www.myexperiment.org/workflow shows that P!=NP”

Manifest

researchobject.org

title: my research object id : www.example.org/myresearchobject

createdOn : 2013-03-05 17:29:03 createdBy : “A. Turing”

aggregates: http://researchobject.org/blog/1 www.myexperiment.org/workflow

annotations: “www.myexperiment.org/workflow shows that P!=NP”

That’s it! A shareable resource that describes our investigation.

Manifest

researchobject.org

{ "@context": [ "https://w3id.org/bundle/context" ], "id": "/", "createdOn": "2013-03-05T17:29:03Z", "createdBy": { "uri": "http://example.com/foaf#alice", "orcid": "http://orcid.org/0000-0002-1825-0097", "name": “A. Turing" }, "aggregates": [{ "uri": “ http://researchobject.org/blog/1” }, { "uri": “http://www.myexperiment.org/workflow“ }], "annotations": [{ "uri": "urn:uuid:d67466b4-3aeb-4855-8203-90febe71abdf", "about": “http://www.myexperiment.org/workflow”, "content": “http://www.example.org/workflow-properties.ttl” }] }

actually … That’s it!

Specifications

researchobject.org

ro ontology - defines core concepts of research objects, identity, aggregation, and annotation, used in the manifest.

https://w3id.org/ro/

Files on my machine

Manifest - Web and Local

researchobject.org

title: my research object id : www.example.org/myresearchobject

createdOn : 2013-03-05 17:29:03 createdBy : http://orcid.org/0000-0002-1825-0097

aggregates: /data/mydata.dat http://researchobject.org/blog/1

www.myexperiment.org/myworkflow annotations: /annotations/description-of-mydata.dat.txt

/annotations/workflow-provenance.rdf /annotations/domain-specific-metadata.json

researchobject.org

ro-bundle – A zip-based serialisation research objects.zipfile + manifest

Specifications

https://w3id.org/bundle/

“Backwards compatible” - Appears as just a Zip file!

RO Bundle

Just the files, no metadata

title, description, license, comments, citations, tags, authors, categories, views, shares etc.

Tooling

researchobject.org

ro bundle API – A Java library that can be used to generate the zip-based ro bundle archives. Taverna  

ruby-ro-bundle – A Ruby library for working with Research Object bundles.

ro-manager – A command line tool for creating research objects.

ro-python – A python library for building Research Objects Manifests and Research Object bundles. (in progress)

rohub.org – A prototype web application for managing research objects.

Libraries

User tools

Tooling

researchobject.org

ro-manager – A git-like command line tool

>ro init “my research object” >ro add mydata.dat >ro add “www.myexperiment.org/myworkflow“ > >ro annotate domain-specific-metadata.json > >ro export #create the zip

Build research objects on the command line

Tooling

researchobject.org

ro-manager – A git-like command line tool

Build research objects on the command line

v1 - https://github.com/wf4ever/ro-manager (prototype)

v2 - https://github.com/gambl/ro-python To bring inline with spec (in-progress)

Tooling - CKAN plugin

researchobject.org

Coming Soon!

Plugin for open source CKAN data repository to:

- build - import - export

research objects.

CKAN data model a very good fit.

Links

researchobject.org

https://github.com/apache/incubator-taverna-language/tree/master/taverna-robundle

RO bundle API

ruby-ro-bundle

ro-manager - ro command-line v1

ro-python & ro command

https://github.com/myGrid/ruby-ro-bundle

https://github.com/gambl/ro-python/

https://github.com/wf4ever/ro-manager

Discussion

researchobject.org

What type of resources would you want to include in your research objects?

Would you use research objects primarily for publication, archiving, exchange, or some other purpose?

Can you envision any barriers the adoption of research objects - by yourself?, by your community? by publishers?

What additional information is required to make research data reusable? e.g. versioning, provenance, standards used etc. Is it domain specific or general?

Have you ever struggled to replicate someone else’s investigation or experiment? If so why?