sda2013 pundit: creating, exploring and consuming annotations

26
PUNDIT: CREATING, EXPLORING AND CONSUMING SEMANTIC ANNOTATIONS Marco Grassi (1), Christian Morbidoni(2), Michele Nucci(3), Simone Fonda(4), Francesca Di Donato(5) (1,2,3) DII - Department of Information Engineering. Polytechnic University of Le Marche, Ancona, Italy (4) NET7 srl, Italy (5)Scuola Normale Superiore, Italy This work is licensed under a Creative Commons Attribution 3.0 Unported (CC BY 3.0) www.netseven.it / www.sns.it / http://semedia.dii.univpm.it

Upload: marco-grassi

Post on 11-May-2015

1.248 views

Category:

Technology


5 download

DESCRIPTION

This paper presents Pundit, a novel semantic web annotation tool, and demonstrates its use in producing structured data out of users annotations. Pundit allows communities of scholars to produce machine-readable annotations that can be made public and thus consumable as web data via SPARQL and ad-hoc REST APIs. Pundit is highly configurable and can deployed in custom instances to include well-defined and agreed annotation vocabularies. Such instances can be distributed as bookmaklets to community users so they can create uniformly structured data in a certain application scenario. Basing on the provided APIs, some demonstrative applications have been developed, exploring different use scenarios, ranging from philosophy to journalism and cultural heritage. The main aim of this paper is to demonstrate how such uniformly structured annotations can be quickly re-used on the web to make information discoverable or to visualize it in interesting ways.

TRANSCRIPT

Page 1: SDA2013 Pundit: Creating, Exploring and Consuming Annotations

PUNDIT: CREATING, EXPLORING AND CONSUMING SEMANTIC ANNOTATIONS

Marco Grassi(1), Christian Morbidoni(2), Michele Nucci(3), Simone Fonda(4), Francesca Di Donato(5)

(1,2,3) DII - Department of Information Engineering. Polytechnic University of Le Marche, Ancona, Italy(4) NET7 srl, Italy

(5)Scuola Normale Superiore, Italy

This work is licensed under a Creative Commons Attribution 3.0 Unported (CC BY 3.0)

www.netseven.it/ www.sns.it/http://semedia.dii.univpm.it

Page 2: SDA2013 Pundit: Creating, Exploring and Consuming Annotations

Pundit: Creating, Exploring and Consuming Semantic Annotations [email protected] 2013

OUTLINE

1.PUNDIT VISION

2.PUNDIT ANNOTATION MODEL

3.DISPLAYING ANNOTATION DATA

4.SOME EXAMPLES

5.CONCLUSIONS

Page 3: SDA2013 Pundit: Creating, Exploring and Consuming Annotations

Pundit: Creating, Exploring and Consuming Semantic Annotations [email protected] 2013

Semedia, Università Politecnica delle Marchehttp://semedia.dii.univpm.it

Semlib Project Eu Projecthttp://semedia.dii.univpm.it

DM2E EU Projecthttp://dm2e.edu/

AGORA EU Projecthttp://project-agora.eu/

Net7 SRL, Pisawww.netseven.it/

SUPPORTING PROJECTS:

DEVELOPED BY:

Page 4: SDA2013 Pundit: Creating, Exploring and Consuming Annotations

Pundit: Creating, Exploring and Consuming Semantic Annotations [email protected] 2013

Pundit won the LODLAM Challenge 2013!http://summit2013.lodlam.netData visualizations, tools, mashups for Linked Open Data in libraries, archives, and museums

http://www.youtube.com/watch?v=6uUQ4f3z_E0

LINKED DATA THE EARLY DAYS...

CHECK OUT

THE VIDEO

Page 5: SDA2013 Pundit: Creating, Exploring and Consuming Annotations

Pundit: Creating, Exploring and Consuming Semantic Annotations [email protected] 2013

PUNDIT VISION

pundit:annotation/

id/b2b3e

LINKED DATA CLOUD

The Divine Comedy (Italian: Divina Commedia) is an epic poem written by Dante Alighieri between c. 1308 and his death in 1321. It is widely considered the preeminent work of Italian literature, and is seen as one of the greatest works of world literature.

TEXTUAL COMMENTONTOLOGIES &TAXONOMIES

Pundit allows user to generate semantically structured data when they create annotations!

Page 6: SDA2013 Pundit: Creating, Exploring and Consuming Annotations

Pundit: Creating, Exploring and Consuming Semantic Annotations [email protected] 2013

PUNDIT VISION

EASILY CREATE DYNAMIC DATA VISUALIZATIONS

SEARCH / EXPLORE / SHARE THE ANNOTATIONS

RESTful APIs are provided to consume created annotations (data):

Page 7: SDA2013 Pundit: Creating, Exploring and Consuming Annotations

Pundit: Creating, Exploring and Consuming Semantic Annotations [email protected] 2013

CREATING SEMANTIC ANNOTATIONS

Page 8: SDA2013 Pundit: Creating, Exploring and Consuming Annotations

Pundit: Creating, Exploring and Consuming Semantic Annotations [email protected] 2013

ANNOTATION MODEL• Based on Open Annotation Collaboration (OAC)

Contextual Information

Annotation Content

oa:Annotation

ex:MarcoGrassi

a

2011-01-27 10:30:56

ex:fragment/id/t67u

oac:hasBody

oa:hasTarget

My example annotation

rdfs:label

dcterms:created

ex:ANNOTATION-GRAPH-ID-1

dcterms:creator

pundit:annotation/id/b2b3e

oa:SpecificResource

rdf:type

oa:SpecificResource

oa:hasSource

ex:selector/id/u89yt

oa:hasSelector

oa:SpecificResource

rdf:type{"points":[ {"x":0.29, "y":0.35}, {"x":0.48, "y":0.42}, {"x":0.54, "y":0.89}, {"x":0.16, "y":0.69},]}

rdf:value

ex:fragment/id/t67u

http://rdf.freebase.com/en.dante_alighieri

foaf:depicts

The face of Dante

rdfs:label

http://rdf.freebase.com/en.giotto

dc:creator

Named Graph

Page 9: SDA2013 Pundit: Creating, Exploring and Consuming Annotations

Pundit: Creating, Exploring and Consuming Semantic Annotations [email protected] 2013

NOTEBOOKS

oa:Annotation

ex:MarcoGrassi

a

2011-01-27 10:30:56

ex:fragment/id/t67u

oac:hasBody

oa:hasTarget

My example annotationrdfs:label

dcterms:createddcterms:creator

pundit:annotation/id/b2b3e

ex:ANNOTATION-GRAPH-ID-1

ex:fragment/id/t67u

http://rdf.freebase.com/en.dante_alighieri

foaf:depicts

The face of Dante

rdfs:label

http://rdf.freebase.com/en.giotto

dc:creator

oa:Annotation

ex:MarcoGrassi

a

2011-01-27 10:30:56

ex:fragment/id/t67u

oac:hasBody

oa:hasTarget

My example annotationrdfs:label

dcterms:createddcterms:creator

pundit:annotation/id/b2b3e

ex:ANNOTATION-GRAPH-ID-1

ex:fragment/id/t67u

http://rdf.freebase.com/en.dante_alighieri

foaf:depicts

The face of Dante

rdfs:label

http://rdf.freebase.com/en.giotto

dc:creator

oa:Annotation

ex:MarcoGrassi

a

2011-01-27 10:30:56

ex:fragment/id/t67u

oac:hasBody

oa:hasTarget

My example annotationrdfs:label

dcterms:createddcterms:creator

pundit:annotation/id/b2b3e

ex:ANNOTATION-GRAPH-ID-1

ex:fragment/id/t67u

http://rdf.freebase.com/en.dante_alighieri

foaf:depicts

The face of Dante

rdfs:label

http://rdf.freebase.com/en.giotto

dc:creator

oa:Annotation

ex:MarcoGrassi

a

2011-01-27 10:30:56

ex:fragment/id/t67u

oac:hasBody

oa:hasTarget

My example annotationrdfs:label

dcterms:createddcterms:creator

pundit:annotation/id/b2b3e

ex:ANNOTATION-GRAPH-ID-1

ex:fragment/id/t67u

http://rdf.freebase.com/en.dante_alighieri

foaf:depicts

The face of Dante

rdfs:label

http://rdf.freebase.com/en.giotto

dc:creator

oa:Annotation

ex:MarcoGrassi

a

2011-01-27 10:30:56

ex:fragment/id/t67u

oac:hasBody

oa:hasTarget

My example annotationrdfs:label

dcterms:createddcterms:creator

pundit:annotation/id/b2b3e

ex:ANNOTATION-GRAPH-ID-1

ex:fragment/id/t67u

http://rdf.freebase.com/en.dante_alighieri

foaf:depicts

The face of Dante

rdfs:label

http://rdf.freebase.com/en.giotto

dc:creator

pundit:Notebook

ex:MarcoGrassi

a

2011-01-27 10:30:56

My example annotation

rdfs:label

dcterms:created

dcterms:creator

• Users can organize their annotations in different notebooks

• Set as Public/Private

• Activate/Deactivate to filter the amount of public annotations visualizing only those of interest.

• Identified by a (dereferenciable) URI

• Annotations are collected in notebooks

• Annotations are shared at notebook level.

Page 10: SDA2013 Pundit: Creating, Exploring and Consuming Annotations

Pundit: Creating, Exploring and Consuming Semantic Annotations [email protected] 2013

ANNOTATION CENTRIC

oa:Annotation

ex:MarcoGrassi

a

2011-01-27 10:30:56

ex:fragment/id/t67u

oac:hasBody

oa:hasTarget

My example annotationrdfs:label

dcterms:createddcterms:creator

pundit:annotation/id/b2b3e

ex:ANNOTATION-GRAPH-ID-1

ex:fragment/id/t67u

http://rdf.freebase.com/en.dante_alighieri

foaf:depicts

The face of Dante

rdfs:label

http://rdf.freebase.com/en.giotto

dc:creator

oa:Annotation

ex:MarcoGrassi

a

2011-01-27 10:30:56

ex:fragment/id/t67u

oac:hasBody

oa:hasTarget

My example annotationrdfs:label

dcterms:createddcterms:creator

pundit:annotation/id/b2b3e

ex:ANNOTATION-GRAPH-ID-1

ex:fragment/id/t67u

http://rdf.freebase.com/en.dante_alighieri

foaf:depicts

The face of Dante

rdfs:label

http://rdf.freebase.com/en.giotto

dc:creator

oa:Annotation

ex:MarcoGrassi

a

2011-01-27 10:30:56

ex:fragment/id/t67u

oac:hasBody

oa:hasTarget

My example annotationrdfs:label

dcterms:createddcterms:creator

pundit:annotation/id/b2b3e

ex:ANNOTATION-GRAPH-ID-1

ex:fragment/id/t67u

http://rdf.freebase.com/en.dante_alighieri

foaf:depicts

The face of Dante

rdfs:label

http://rdf.freebase.com/en.giotto

dc:creator

oa:Annotation

ex:MarcoGrassi

a

2011-01-27 10:30:56

ex:fragment/id/t67u

oac:hasBody

oa:hasTarget

My example annotationrdfs:label

dcterms:createddcterms:creator

pundit:annotation/id/b2b3e

ex:ANNOTATION-GRAPH-ID-1

ex:fragment/id/t67u

http://rdf.freebase.com/en.dante_alighieri

foaf:depicts

The face of Dante

rdfs:label

http://rdf.freebase.com/en.giotto

dc:creator

oa:Annotation

ex:MarcoGrassi

a

2011-01-27 10:30:56

ex:fragment/id/t67u

oac:hasBody

oa:hasTarget

My example annotationrdfs:label

dcterms:createddcterms:creator

pundit:annotation/id/b2b3e

ex:ANNOTATION-GRAPH-ID-1

ex:fragment/id/t67u

http://rdf.freebase.com/en.dante_alighieri

foaf:depicts

The face of Dante

rdfs:label

http://rdf.freebase.com/en.giotto

dc:creator

pundit:Notebook

ex:MarcoGrassi

a

2011-01-27 10:30:56

My example annotation

rdfs:label

dcterms:created

dcterms:creator

• play a fundamental role for data visualization:

The single annotation maintains its integrity (context, authorship, web location)

oa:Annotation

ex:MarcoGrassi

a

2011-01-27 10:30:56

ex:fragment/id/t67u

oac:hasBody

oa:hasTarget

My example annotationrdfs:label

dcterms:createddcterms:creator

pundit:annotation/id/b2b3e

ex:ANNOTATION-GRAPH-ID-1

ex:fragment/id/t67u

http://rdf.freebase.com/en.dante_alighieri

foaf:depicts

The face of Dante

rdfs:label

http://rdf.freebase.com/en.giotto

dc:creator

DATA VISUALIZATION

Explore collection of annotation grouped into notebooks

Page 11: SDA2013 Pundit: Creating, Exploring and Consuming Annotations

Pundit: Creating, Exploring and Consuming Semantic Annotations [email protected] 2013

CONTEXTUAL VISUALIZATIONANNOTATION CENTRIC VISUALIZATION

Page 12: SDA2013 Pundit: Creating, Exploring and Consuming Annotations

Pundit: Creating, Exploring and Consuming Semantic Annotations [email protected] 2013

ASK (THE PUNDIT)

A portal to manage annotations, share them and explore public notebooks

ANNOTATION CENTRIC VISUALIZATION

http://ask.thepund.it/

Page 13: SDA2013 Pundit: Creating, Exploring and Consuming Annotations

Pundit: Creating, Exploring and Consuming Semantic Annotations [email protected] 2013

ITEM CENTRIC

oa:Annotation

ex:MarcoGrassi

a

2011-01-27 10:30:56

ex:fragment/id/t67u

oac:hasBody

oa:hasTarget

My example annotationrdfs:label

dcterms:createddcterms:creator

pundit:annotation/id/b2b3e

ex:ANNOTATION-GRAPH-ID-1

ex:fragment/id/t67u

http://rdf.freebase.com/en.dante_alighieri

foaf:depicts

The face of Dante

rdfs:label

http://rdf.freebase.com/en.giotto

dc:creator

oa:Annotation

ex:MarcoGrassi

a

2011-01-27 10:30:56

ex:fragment/id/t67u

oac:hasBody

oa:hasTarget

My example annotationrdfs:label

dcterms:createddcterms:creator

pundit:annotation/id/b2b3e

ex:ANNOTATION-GRAPH-ID-1

ex:fragment/id/t67u

http://rdf.freebase.com/en.dante_alighieri

foaf:depicts

The face of Dante

rdfs:label

http://rdf.freebase.com/en.giotto

dc:creator

oa:Annotation

ex:MarcoGrassi

a

2011-01-27 10:30:56

ex:fragment/id/t67u

oac:hasBody

oa:hasTarget

My example annotationrdfs:label

dcterms:createddcterms:creator

pundit:annotation/id/b2b3e

ex:ANNOTATION-GRAPH-ID-1

ex:fragment/id/t67u

http://rdf.freebase.com/en.dante_alighieri

foaf:depicts

The face of Dante

rdfs:label

http://rdf.freebase.com/en.giotto

dc:creator

oa:Annotation

ex:MarcoGrassi

a

2011-01-27 10:30:56

ex:fragment/id/t67u

oac:hasBody

oa:hasTarget

My example annotationrdfs:label

dcterms:createddcterms:creator

pundit:annotation/id/b2b3e

ex:ANNOTATION-GRAPH-ID-1

ex:fragment/id/t67u

http://rdf.freebase.com/en.dante_alighieri

foaf:depicts

The face of Dante

rdfs:label

http://rdf.freebase.com/en.giotto

dc:creator

oa:Annotation

ex:MarcoGrassi

a

2011-01-27 10:30:56

ex:fragment/id/t67u

oac:hasBody

oa:hasTarget

My example annotationrdfs:label

dcterms:createddcterms:creator

pundit:annotation/id/b2b3e

ex:ANNOTATION-GRAPH-ID-1

ex:fragment/id/t67u

http://rdf.freebase.com/en.dante_alighieri

foaf:depicts

The face of Dante

rdfs:label

http://rdf.freebase.com/en.giotto

dc:creator

pundit:Notebook

ex:MarcoGrassi

a

2011-01-27 10:30:56

My example annotation

rdfs:label

dcterms:created

dcterms:creator

Using named graph the content of single annotation content can be merged into knowledge graph

DATA VISUALIZATION

semlib:Renassance

http://rdf.freebase.com/en.dante_alighieri

http://example.com/img1.jpeg

semlib:mentionsAuthor

semlib:depicts

Fragment: Durante gli Alighieri...

rdfs:label

semlib:mentionsPeriod

ex:fragment/id/t67u

foaf:depicts

http://rdf.freebase.com/en.giottodc:

creator

http://rdf.freebase.com/en.dante_alighieri

ex:describe

ex:fragment/id/t67u

http://rdf.freebase.com/en.arthur_schopenhauer

dc:author

ex:fragment/id/t67ucito:cites

http://rdf.freebase.com/en.plato

dc:author

ex:fragment/id/t67uhttp://rdf.freebase.com/

en.arthur_schopenhauer dc:author

ex:fragment/id/t67u

cito:cites

http://rdf.freebase.com/en.plato

dc:author

Fragment: Cosi come immobile...

rdfs:label

Fragment: Fatti non foste a viver come

bruti...

rdfs:label

Visualization on the annotated items and their relations with other items

A-priori knowledge on ontologies/custom vocabularies and relations used in annotations is beneficial!

Page 14: SDA2013 Pundit: Creating, Exploring and Consuming Annotations

Pundit: Creating, Exploring and Consuming Semantic Annotations [email protected] 2013

CONFIGURING PUNDITITEM CENTRIC VISUALIZATION

Custom Vocabularies/Taxonomies:• Online JSONp file (created manually or

automatically from an ontology )• Add URL to Pundit configuration

Linked Data Selector:

Page 15: SDA2013 Pundit: Creating, Exploring and Consuming Annotations

Pundit: Creating, Exploring and Consuming Semantic Annotations [email protected] 2013

CONFIGURING PUNDITITEM CENTRIC VISUALIZATION

create specific pattern in the annotations to create engaging user interfaces

Predicates used in relations:

address different communities and foster data reuse

Page 16: SDA2013 Pundit: Creating, Exploring and Consuming Annotations

Pundit: Creating, Exploring and Consuming Semantic Annotations [email protected] 2013

DEPLOYING PUNDIT• As a JavaScript library

• As a bookmarklet

• As a Browser Extension (Chrome and Firefox)

Select between different instances of Pundit

Restrict the web pages where Pundit is automatically launched

ITEM CENTRIC VISUALIZATION

https://github.com/marcograssi/PunditBookmarklet

Page 17: SDA2013 Pundit: Creating, Exploring and Consuming Annotations

Pundit: Creating, Exploring and Consuming Semantic Annotations [email protected] 2013

CREATING DATA VISUALIZATIONITEM CENTRIC VISUALIZATION

semlib:Renassance

http://rdf.freebase.com/en.dante_alighieri

http://example.com/img1.jpeg

semlib:mentionsAuthor

semlib:depicts

Fragment: Durante gli Alighieri...

rdfs:label

semlib:mentionsPeriod

ex:fragment/id/t67u

foaf:depicts

http://rdf.freebase.com/en.giottodc:

creator

http://rdf.freebase.com/en.dante_alighieri

ex:describe

ex:fragment/id/t67u

http://rdf.freebase.com/en.arthur_schopenhauer

dc:author

ex:fragment/id/t67ucito:cites

http://rdf.freebase.com/en.plato

dc:author

ex:fragment/id/t67uhttp://rdf.freebase.com/

en.arthur_schopenhauer dc:author

ex:fragment/id/t67u

cito:cites

http://rdf.freebase.com/en.plato

dc:author

Fragment: Cosi come immobile...

rdfs:label

Fragment: Fatti non foste a viver come

bruti...

rdfs:label

REST API + SPARQL

PUNDITcustom

Specific patterns &Standardized vocabularies

CO

MM

UN

ITY

USE

RS

SPECIALIZED DATA VISUALIZATION

PUNDITcustom

Other data sources

Third party libraries and tools

Page 18: SDA2013 Pundit: Creating, Exploring and Consuming Annotations

Pundit: Creating, Exploring and Consuming Semantic Annotations [email protected] 2013

TIMELINE

REST

API

semlib:Renassance

http://rdf.freebase.com/en.dante_alighieri

http://example.com/img1.jpeg

semlib:mentionsAuthor

semlib:depicts

Fragment: Durante gli Alighieri...

rdfs:label

semlib:mentionsPeriod

ex:fragment/id/t67u

foaf:depicts

http://rdf.freebase.com/en.giottodc:

creator

http://rdf.freebase.com/en.dante_alighieri

ex:describe

ex:fragment/id/t67u

http://rdf.freebase.com/en.arthur_schopenhauer

dc:author

ex:fragment/id/t67ucito:cites

http://rdf.freebase.com/en.plato

dc:author

ex:fragment/id/t67uhttp://rdf.freebase.com/

en.arthur_schopenhauer dc:author

ex:fragment/id/t67u

cito:cites

http://rdf.freebase.com/en.plato

dc:author

Fragment: Cosi come immobile...

rdfs:label

Fragment: Fatti non foste a viver come

bruti...

rdfs:label

Notebook ID

TimelineJS compliant JSON

• Reuse TimelineJS (http://www.timeline.verite.co/)

• Create annotations in a notebook of text fragment or images, containing a date, title and creator.

EASILY CREATE INTERACTIVE TIMELINE USING PUNDIT...

Page 19: SDA2013 Pundit: Creating, Exploring and Consuming Annotations

Pundit: Creating, Exploring and Consuming Semantic Annotations [email protected] 2013

TIMELINE...JUST LIKE THIS ONE I’VE CREATED DURING THE WORKSHOP

http://semedia.dii.univpm.it/news/16-having-fun-with-pundit-sda-2013

Page 20: SDA2013 Pundit: Creating, Exploring and Consuming Annotations

Pundit: Creating, Exploring and Consuming Semantic Annotations [email protected] 2013

EDGEMAPS VISUALIZATION

BodeRaphael

influencedEvery-time that an annotation like this is created A relation is generated between the authors

ex:fragment/id/t67u

http://rdf.freebase.com/en.wilhelm_von_bode

dc:author

ex:fragment/id/t67u cito:cites

http://rdf.freebase.com/en.raphael

dc:author

Reuse http://mariandoerk.de/edgemaps/

Page 21: SDA2013 Pundit: Creating, Exploring and Consuming Annotations

Pundit: Creating, Exploring and Consuming Semantic Annotations [email protected] 2013

BURCKHARDT SOURCEhttp://burckhardtsource.org/

• Burckhardtsource.org platform aims at mapping and producing a critical edition of the extensive correspondence of 400 European intellectuals with Jacob Burckhardt over a period of more than half a century from 1842 to 1897.

• Resources of interest:Person, Places, Works of art

• Named entities source:Freebase

•Missing resources have been added to Freebase

Page 22: SDA2013 Pundit: Creating, Exploring and Consuming Annotations

Pundit: Creating, Exploring and Consuming Semantic Annotations [email protected] 2013

TIMELINE

http://metasound.dibet.univpm.it/timelinejs/examples/bur-bode.html

Page 23: SDA2013 Pundit: Creating, Exploring and Consuming Annotations

Pundit: Creating, Exploring and Consuming Semantic Annotations [email protected] 2013

EDGEMAPS VISUALIZATION

http://metasound.dibet.univpm.it/edgemaps/maps/test.html#letters;map;;

Page 24: SDA2013 Pundit: Creating, Exploring and Consuming Annotations

Pundit: Creating, Exploring and Consuming Semantic Annotations [email protected] 2013

MORE ON http://thepund.it

http://ask.thepund.it/#/timeline/31951d93

DATA JOURNALISM LOD LIVE

Page 25: SDA2013 Pundit: Creating, Exploring and Consuming Annotations

Pundit: Creating, Exploring and Consuming Semantic Annotations [email protected] 2013

CONCLUSIONS

• Pundit a customizable and flexible semantic web annotation tool.

• Custom instances can be created for specific use scenarios...

• ...and easily deployed to users (bookmarklet or browser extension).

• Specific data visualization can be created also using third party applications.

Page 26: SDA2013 Pundit: Creating, Exploring and Consuming Annotations

http://thepund.it

THANK YOU!

Semlib Project Eu Projecthttp://www.semlibproject.eu/

DM2E EU Projecthttp://dm2e.edu/

AGORA EU Projecthttp://project-agora.eu/

This work is licensed under a Creative Commons Attribution 3.0 Unported (CC BY 3.0)

www.netseven.it/ www.sns.it/http://semedia.dii.univpm.it