robert sanderson – rsanderson@lanl.gov azaroth42@gmail.com herbert van de sompel –...

Post on 11-Jan-2016

220 Views

Category:

Documents

0 Downloads

Preview:

Click to see full reader

TRANSCRIPT

Robert Sanderson – rsanderson@lanl.gov azaroth42@gmail.comHerbert Van de Sompel – herbertv@lanl.gov hvdsomp@gmail.com

Digital Library Research and Prototyping TeamLos Alamos National Laboratory, USA

Interoperable AnnotationRob Sanderson, Herbert Van de Sompel

CNI Fall Task Force Meeting, Dec 14-15, Washington DC

<http://www.openannotation.org/>

This research was funded by the Andrew W. Mellon Foundation. Acknowledgements: Tim Cole, Bernhard Haslhofer, Jane Hunter, Ray Larson, Cliff Lynch, Michael Nelson, Doug Reside

Overview

• The Collaboration and Project

• Interoperability:• Status • Basic Principles • Current Data Model• Protocol-less Approach• Demo

• Summary

Slide: 2Interoperable AnnotationRob Sanderson, Herbert Van de Sompel

CNI Fall Task Force Meeting, Dec 14-15, Washington DC

The Collaboration

• Los Alamos National Labs (Data Modeling and Interoperability)• Herbert Van de Sompel (PI)• Robert Sanderson

• University of Illinois at Urbana-Champaign• Tim Cole (PI)• Allen Renear• Carole Palmer• Tom Habing

• University of Queensland• Jane Hunter (PI)• Anna Gerber• Ron Chernich

• University of Maryland• Neil Fraistat (PI)• Douglas Reside

• George Mason University• Dan Cohen• Sean Takats

Slide: 3Interoperable AnnotationRob Sanderson, Herbert Van de Sompel

CNI Fall Task Force Meeting, Dec 14-15, Washington DC

The Project

• Aims• Facilitate a Web-centric interoperable annotation environment• Demonstrate the proposed environment for scholarly use-cases• Seed adoption by deployment of high-visibility production systems

• Phase I• Exploration of Existing Systems, Requirements and Use Case analysis• Initial Interoperability Specification• Integration of AXE and Zotero

• Mellon Foundation Funded• Alerted to possibility through JSTOR (unfunded partner) • 14 Months for Phase I• Hope to proceed to Phases II and III

Slide: 4Interoperable AnnotationRob Sanderson, Herbert Van de Sompel

CNI Fall Task Force Meeting, Dec 14-15, Washington DC

Advisory Board

• Members• Maristella Agosti (University of Padua)• Geoffrey Bilder (CrossRef)• John Bradley (King's College London)• Gregory Crane (Tufts University)• Paul Eggert (Australian Scholarly Editions Centre)• Julia Flanders (Brown University)• Cliff Lynch (Chair) (Coalition for Networked Information)• Cathy Marshall (Microsoft Research)• Martin Mueller (Northwestern University)• Geoffrey Rockwell (University of Alberta)• David Ruddy (Cornell University Library)• Joyce Rudinsky (University of North Carolina, Chapel Hill)• Mackenzie Smith (MIT Libraries)• Amanda Ward (Nature Publishing Group)• John Wilbanks (Science Commons)

Slide: 5Interoperable AnnotationRob Sanderson, Herbert Van de Sompel

CNI Fall Task Force Meeting, Dec 14-15, Washington DC

Technical Group

• Open List• Anyone can join and discuss• Discussions visible, not behind closed doors committee • http://groups.google.com/group/oac-tech

• Current Members:• Bruce D'Arcus (University of Ohio)• Anna Gerber (University of Queensland)• Tom Habing (UIUC)• Bernhard Haslhofer (University of Vienna)• Michael Nelson (Old Dominion University)• Rob Sanderson (LANL)• Ed Summers (Library of Congress)• Herbert Van de Sompel (LANL)

• Please join, or have your techie join!

Slide: 6Interoperable AnnotationRob Sanderson, Herbert Van de Sompel

CNI Fall Task Force Meeting, Dec 14-15, Washington DC

Interoperability: Status

• Requirements and Use Cases• Gathered from scholars, mainly humanities• Gathered from scholarly literature

• Initial Design• First part of Phase I, Thread I (LANL)• Discussed in f2f at UC Berkeley (Collaborators plus invited experts)

• Feedback• Difficulty of defining what an 'annotation' actually is • Model too generic!• Risk of Everything being an Annotation

• Reaction• We (Rob and Herbert) tend to agree

We Want Your Feedback!

Slide: 7Interoperable AnnotationRob Sanderson, Herbert Van de Sompel

CNI Fall Task Force Meeting, Dec 14-15, Washington DC

Interoperability: Basic Principles

• Effort focuses on Interoperability to allow annotation sharing• This is what we were funded to do!• Many MANY non-interoperable annotation systems already• Existing interoperability mechanisms (eg Annotea) need updating

• Interoperability approach is based on the Architecture of the Web• Communication is increasingly online• Resources of interest are increasingly online• Maximize chance of adoption by not being domain-centric• Semantic Web principles and Linked Data guidelines important

• Entities within the model must be identified by HTTP URIs• … when possible• From Linked Data guidelines• Globally unique identifiers without central system overhead• Locator as well as Identifier: can retrieve representation

Slide: 8Interoperable AnnotationRob Sanderson, Herbert Van de Sompel

CNI Fall Task Force Meeting, Dec 14-15, Washington DC

Current Data Model

• Alpha Data Model

• Not set in stone, please provide feedback!

• Not published as a specification, just guidelines and 'current thinking'• Implemented as demonstrator, not production system• Informed by previous work and expert contributions• 4th internal iteration of model

• Guided by Requirements and Use Cases• Will build up in steps with appropriate justification• Conflicting requirements possible (e.g. simple yet powerful and flexible)• Helps to ensure adoption and understanding by minimizing unnecessary or unused features• Keeps specification authors in touch with real users and needs

Slide: 9Interoperable AnnotationRob Sanderson, Herbert Van de Sompel

CNI Fall Task Force Meeting, Dec 14-15, Washington DC

Data Model: Step 1

Requirement: Users must be able to create an annotation with some content about a target resource

Principle:An annotation is an event at a moment in time, initiated by an agent, with a source of content and a target. There is an implicit or explicit relationship between the source and target expressed by the annotation.

Slide: 10

Interoperable AnnotationRob Sanderson, Herbert Van de Sompel

CNI Fall Task Force Meeting, Dec 14-15, Washington DC

Interoperable AnnotationRob Sanderson, Herbert Van de Sompel

CNI Fall Task Force Meeting, Dec 14-15, Washington DC

Step 1: Baseline Model

The intuitive model is that we have a Source of Content (S-1), which annotates a Target resource (T-1). We add an Annotation node (A-1) that represents the annotation event.

The Source of Content must have some relationship to the Target. By default, it should be somehow 'about' the Target for it to be considered an Annotation.

Slide: 11

Interoperable AnnotationRob Sanderson, Herbert Van de Sompel

CNI Fall Task Force Meeting, Dec 14-15, Washington DC

Step 1: Baseline Model

As entities in the baseline model, both Content and Target are resources on the web.Thus they can be of any type, format, language (or not language at all), location, …

Slide: 12

http://www.youtube.com/watch?v=fgg2tpUVbXQ http://commons.wikimedia.org/wiki/File:Hubble_ultra_deep_field.jpg

Interoperable AnnotationRob Sanderson, Herbert Van de Sompel

CNI Fall Task Force Meeting, Dec 14-15, Washington DC

Step 1b: Properties and Relationships

Properties and relationships can now be attached to the Annotation.

This diagram shows the other information from the initial use case: who created the annotation (U-1), when they created it (datetime) and the relationship (called a predicate, P-1) between Content and Target.

Diagram Style Note:• Entities are circles• Values are ovals with data type• Relationships/Properties are named lines

Slide: 13

Interoperable AnnotationRob Sanderson, Herbert Van de Sompel

CNI Fall Task Force Meeting, Dec 14-15, Washington DC

Step 1b: Properties and Relationships

Slide: 14

2009-12-03 09:30:00

http://public.lanl.gov/

rsanderson

http://public.lanl.gov/

rsanderson

oac:annotatesoac:annotates

oac:annotates

oac:annotates

Interoperable AnnotationRob Sanderson, Herbert Van de Sompel

CNI Fall Task Force Meeting, Dec 14-15, Washington DC

Step 1b: Properties and Relationships

Slide: 15

2009-12-03 12:06:00

http://public.lanl.gov/

rsanderson

http://public.lanl.gov/

rsanderson

oac:annotatesoac:annotates

oac:annotates

oac:annotates

http://twitter.com/azaroth42/status/6312196800

Interoperable AnnotationRob Sanderson, Herbert Van de Sompel

CNI Fall Task Force Meeting, Dec 14-15, Washington DC

Data Model: Step 2

Slide: 16

Requirement:

The model must support systems which only support a user-entered string as the content of the annotation.

Principle:

Annotations must allow for content and target of any media type and format.

Fab4 Client: http://bodoni.lib.liv.ac.uk/fab4/(Extensive functionality, but only string content)

Interoperable AnnotationRob Sanderson, Herbert Van de Sompel

CNI Fall Task Force Meeting, Dec 14-15, Washington DC

Step 2: String Content

Slide: 17

To allow for this common case, we can assign a unique non resolvable URI called a URN. This is an exception to the HTTP URIs for everything principle.(We will come back to this later)

The text is captured in the oac:body property.

We define a Note class which can be used with either a protocol or non protocol URI, as a hint to the client to not bother dereferencing the URI and instead look in oac:body.

Interoperable AnnotationRob Sanderson, Herbert Van de Sompel

CNI Fall Task Force Meeting, Dec 14-15, Washington DC

Step 2: String Content

Slide: 18

"The Hubble Deep Field image is very

impressive!"

"The Hubble Deep Field image is very

impressive!"

urn:uuid:1234-567…urn:uuid:1234-567…

Interoperable AnnotationRob Sanderson, Herbert Van de Sompel

CNI Fall Task Force Meeting, Dec 14-15, Washington DC

Data Model: Step 3

Slide: 19

Requirement:

The model must enable the user to select a part of the resource as the target for their annotation, not just the entire resource.

Flickr: http://www.flickr.com/photos/raindog/75675947/Pliny Client: http://pliny.cch.kcl.ac.uk/

Interoperable AnnotationRob Sanderson, Herbert Van de Sompel

CNI Fall Task Force Meeting, Dec 14-15, Washington DC

Step 3: Segments of Resources

W3C Media Fragment URIs allow us to create a URI that identifies a segment of a resource for common cases.

e.g: http://…/foo.jpg#xywh=160,120,320,240

… identifies a 320 by 240 box, at 160,120in the image foo.jpg

Slide: 20

Interoperable AnnotationRob Sanderson, Herbert Van de Sompel

CNI Fall Task Force Meeting, Dec 14-15, Washington DC

Step 3: Segments of Resources

Slide: 21

http://commons.wikimedia.org/wiki/File:Hubble_ultra_deep_field.jpg

http://commons.wikimedia.org/wiki/File:Hubble_ultra_deep_field.jpg#xywh=400,80,100,100

http://twitter.com/azaroth42/status/6312261983

Interoperable AnnotationRob Sanderson, Herbert Van de Sompel

CNI Fall Task Force Meeting, Dec 14-15, Washington DC

Data Model: Step 4

Requirement:It is important to be able to express non-rectangular regions of a resource for situations where a rectangle cannot unambiguously delineate the region of interest.

Slide: 22

http://dme.arcs.ac.at/image-annotation-frontend/

Principle:Content and Target must be able to be arbitrary parts or segments of a resource.

Interoperable AnnotationRob Sanderson, Herbert Van de Sompel

CNI Fall Task Force Meeting, Dec 14-15, Washington DC

Step 4: Complex Segments

In this case, we use a Context node (C-1) with a Segment Description (SD-1). This can be of any format, and will be dependent on the properties of the Target.

A description for a segment of an image might be an SVG path, an XPath for XML, a speaker in an audio track.

Work exists on this topic for common cases, such as in MPEG-7.

Segments of complex objects such as databases, datasets, or other non-traditional media will require more research.

Slide: 23

Interoperable AnnotationRob Sanderson, Herbert Van de Sompel

CNI Fall Task Force Meeting, Dec 14-15, Washington DC

Step 4: Complex Segments

Slide: 24

http://twitter.com/azaroth42/status/6312304007

SVGSVG

http://annotation.lanl.gov/docs/0.1/examples/4.svg

Interoperable AnnotationRob Sanderson, Herbert Van de Sompel

CNI Fall Task Force Meeting, Dec 14-15, Washington DC

Data Model: Step 5

Slide: 25

Requirement:The annotation should be able to have more than one target resource or segment, when the annotation concerns multiple resources or creates a relationship between resources.

Principle:The model must support multiple contents and targets of annotation.

Pseudo multiple targets in Adobe Acrobat

Interoperable AnnotationRob Sanderson, Herbert Van de Sompel

CNI Fall Task Force Meeting, Dec 14-15, Washington DC

Step 5: Number of Targets

This is modeled in a very predictable way.

Note that the relationship from the Content applies to all of the Targets.

Slide: 26

Interoperable AnnotationRob Sanderson, Herbert Van de Sompel

CNI Fall Task Force Meeting, Dec 14-15, Washington DC

Step 5: Number of Targets

Slide: 27

oac:annotatesoac:annotates

oac:annotates

oac:annotates

Interoperable AnnotationRob Sanderson, Herbert Van de Sompel

CNI Fall Task Force Meeting, Dec 14-15, Washington DC

Step 5b: Number of Content Sources

Slide: 28

Use Cases:

• Same comment expressed in different formats (txt, MathML)

• Same comment expressed in different media (txt, mp3)

• Same comment later translated to different language, format, media, locations

Although somewhat exotic, multiple content sources also can be modeled.

Interoperable AnnotationRob Sanderson, Herbert Van de Sompel

CNI Fall Task Force Meeting, Dec 14-15, Washington DC

Step 5b: Number of Content Sources

Slide: 29

MP3MP3

oac:annotatesoac:annotates

oac:annotates

oac:annotates

Interoperable AnnotationRob Sanderson, Herbert Van de Sompel

CNI Fall Task Force Meeting, Dec 14-15, Washington DC

Data Model: Step 6

Slide: 30

Requirement:The annotation should be robust across time with respect to changing resources, such that the annotation is applied correctly to the version of the resource which was originally annotated. This will prevent misinterpretation of the annotation and take steps towards the digital preservation of the resources involved as well as the annotation.

Please also come to hear about Memento tomorrow morning!

Interoperable AnnotationRob Sanderson, Herbert Van de Sompel

CNI Fall Task Force Meeting, Dec 14-15, Washington DC

Step 6: Robust Annotations in Time

Slide: 31

http://twitter.com/azaroth42/status/6314856966

http://news.bbc.co.uk/

Interoperable AnnotationRob Sanderson, Herbert Van de Sompel

CNI Fall Task Force Meeting, Dec 14-15, Washington DC

Step 6: Robust Annotations in Time

Slide: 32

Solution 1:

The created timestamp for the Annotation should be used as the date/time of the version of the content and target resources. Unless the version is specified explicitly.

But what about "Sad story yesterday …" sort of annotations?

2009-12-01 12:00:00

Interoperable AnnotationRob Sanderson, Herbert Van de Sompel

CNI Fall Task Force Meeting, Dec 14-15, Washington DC

Step 6: Robust Annotations in Time

Slide: 33

Solution 2:The Context node can record the timestamp of when the annotation applies to the target, if not at the creation time of the annotation. Storing other information such as digests is also possible.

Solution 3:Annotate an appropriate archived copy of the resource (e.g. in Internet Archive), and relate it back to the original to enable appropriate discovery and rendering.

Interoperable AnnotationRob Sanderson, Herbert Van de Sompel

CNI Fall Task Force Meeting, Dec 14-15, Washington DC

Data Model: Step 7

Slide: 34

Requirement:A description of the annotation must be made available for dissemination in an interoperable method, following the Web Architecture and Linked Data guidelines.

http://code.google.com/apis/sidewiki/docs/2.0/developers_guide_protocol.html http://www.w3.org/2001/Annotea/User/Protocol.html

Interoperable AnnotationRob Sanderson, Herbert Van de Sompel

CNI Fall Task Force Meeting, Dec 14-15, Washington DC

Step 7: Annotation "Transcription"

Slide: 35

We follow the same conventions as Linked Data (and OAI-ORE) and introduce a 'transcription' of the annotation as a resource on the web. This can be retrieved using HTTP and includes all of the data and metadata concerning the annotation and other objects in the model.

http://annotation.lanl.gov/docs/0.1/examples/7.rdf

Interoperable AnnotationRob Sanderson, Herbert Van de Sompel

CNI Fall Task Force Meeting, Dec 14-15, Washington DC

Alpha Data Model

Slide: 36

Interoperable AnnotationRob Sanderson, Herbert Van de Sompel

CNI Fall Task Force Meeting, Dec 14-15, Washington DC

Background for Data Model

Slide: 37

Background Research:• Annotea• LEMO• DiLAS• Fab4• Pliny• Google SideWiki• Flickr Annotations• Richard Newman's Tag Model

• … plus 3 extensions• Common Tag Model• Henry Story's Tag Model• Many online web annotation systems

We believe that our data model covers everything that we have seen as well as the requirements and use cases expressed.

Interoperable AnnotationRob Sanderson, Herbert Van de Sompel

CNI Fall Task Force Meeting, Dec 14-15, Washington DC

Protocol-less Approach

Slide: 38

Existing systems are tightly coupled: • The client sends the annotation to the server to store• The server sends the annotation to clients on request

Annotea is a REST protocol, Google Sidewiki uses ATOM plus extensions, most are proprietary.

We believe this is a hindrance to interoperability … any protocol that ties servers and clients together is a hindrance to interoperability from the Linked Data perspective.

We recommend no protocol, as opposed to not recommending a protocol.

. . o O (This from key players in OAI-PMH and SRU… have they totally lost it??)

Interoperable AnnotationRob Sanderson, Herbert Van de Sompel

CNI Fall Task Force Meeting, Dec 14-15, Washington DC

Protocol-less Approach

Slide: 39

Existing systems are tightly coupled: • The client sends the annotation to the server to store• The server sends the annotation to clients on request

Annotea is a REST protocol, Google Sidewiki uses ATOM plus extensions, most are proprietary.

We believe this is a hindrance to interoperability … any protocol that ties servers and clients together is a hindrance to interoperability from the Linked Data perspective.

We recommend no protocol, as opposed to not recommending a protocol.

GoogleSideWikiGoogle

SideWiki

GoogleInterfaceGoogle

Interface

GoogleProtocolGoogle

Protocol

GoogleInterfaceGoogle

InterfaceGoogle

InterfaceGoogle

Interface

GoogleProtocolGoogle

Protocol

GoogleProtocolGoogle

Protocol

Interoperable AnnotationRob Sanderson, Herbert Van de Sompel

CNI Fall Task Force Meeting, Dec 14-15, Washington DC

Protocol-less Approach

Slide: 40

Existing systems are tightly coupled: • The client sends the annotation to the server to store• The server sends the annotation to clients on request

Annotea is a REST protocol, Google Sidewiki uses ATOM plus extensions, most are proprietary.

We believe this is a hindrance to interoperability … any protocol that ties servers and clients together is a hindrance to interoperability from the Linked Data perspective.

We recommend no protocol, as opposed to not recommending a protocol.

GoogleSideWikiGoogle

SideWiki

GoogleInterfaceGoogle

Interface

GoogleProtocolGoogle

Protocol

GoogleInterfaceGoogle

InterfaceGoogle

InterfaceGoogle

Interface

GoogleProtocolGoogle

Protocol

GoogleProtocolGoogle

Protocol

GoogleChromeGoogleChrome

GoogleDroid

GoogleDroid

GoogleDNS

GoogleDNS

GoogleHTTPSGoogleHTTPSGoogle

ChromiumOS

GoogleChromium

OS

GoogleDocs

GoogleDocs

GoogleWave

GoogleWave

GoogleMail

GoogleMail

Interoperable AnnotationRob Sanderson, Herbert Van de Sompel

CNI Fall Task Force Meeting, Dec 14-15, Washington DC

Protocol-less Approach

Slide: 41

Breaking This Apart Promotes Interoperability:

• The client sends the annotation somewhere to store (or multiple places)

• The server retrieves the annotation• … using regular discovery/harvesting techniques (Pull)• … on demand from the client (Pull on demand)• … by being one of the places the client sends the annotation to (Push)

• The server is just one service that can send the annotation to clients on request

Interoperable AnnotationRob Sanderson, Herbert Van de Sompel

CNI Fall Task Force Meeting, Dec 14-15, Washington DC

Protocol-less Approach

Slide: 42

Breaking This Apart Promotes Interoperability:

• The client sends the annotation somewhere to store (or multiple places)

• The server retrieves the annotation• … using regular discovery/harvesting techniques (Pull)• … on demand from the client (Pull on demand)• … by being one of the places the client sends the annotation to (Push)

• The server is just one service that can send the annotation to clients on request

Blog Twitter

Web Server

Blog Twitter

Web Server

HarvesterHarvester HarvesterHarvester

Preferred

Interface

Preferred

Interface

Preferred

Interface

Preferred

Interface

Preferred

Interface

Preferred

Interface

Interoperable AnnotationRob Sanderson, Herbert Van de Sompel

CNI Fall Task Force Meeting, Dec 14-15, Washington DC

Protocol-less Approach

Slide: 43

Consequences:• Multiple servers, aggregators or other applications can access the annotation• The client can use whatever protocol is needed by the storage server(s)• Annotations are regular web resources by necessity• Access control is just like any other access control on the web

• Services can be used to extend information in annotation• Add extra information for robustness over time• Add extra information for robustness of segment location• Text Mining, Data Mining services• Graph/Relationship Mining across other annotations• …

• Servers can replace URNs with real URIs• Multiple servers can do this, and will deduplicate with original identifier• Use well known owl:sameAs predicate for this

Interoperable AnnotationRob Sanderson, Herbert Van de Sompel

CNI Fall Task Force Meeting, Dec 14-15, Washington DC

Demonstration!

Slide: 44

Let's See This Working!

(Or at least a screen capture of it working, given the poor network here)

Interoperable AnnotationRob Sanderson, Herbert Van de Sompel

CNI Fall Task Force Meeting, Dec 14-15, Washington DC

Demonstration!

Slide: 45

Let's See This Working!

(Or at least a screen capture of it working, given the poor network here)

Interoperable AnnotationRob Sanderson, Herbert Van de Sompel

CNI Fall Task Force Meeting, Dec 14-15, Washington DC

Summary

Slide: 46

Collaboration:• Up and working

Data Model:• Alpha version ready for feedback:• Not a specification document• Covers use cases, requirements and previous work• Based on Linked Data and the Web Architecture• Protocol-less interactions between distributed servers and clients

Interoperable AnnotationRob Sanderson, Herbert Van de Sompel

CNI Fall Task Force Meeting, Dec 14-15, Washington DC

Thank You

Slide: 47

Thank You!

Questions?

Pointers:• http://www.openannotation.org/

• http://groups.google.com/group/oac-tech• azaroth42@gmail.com ; hvdsomp@gmail.com

• This presentation being videoed, will be posted on CNI website • http://www.slideshare.com/azaroth42/oac-presentation-at-cni-09-fall-forum• http://www.youtube.com/watch?v=n_7rgsQHuHA

top related