• Share
  • Email
  • Embed
  • Like
  • Save
  • Private Content
Memento: Updated Technical Details (March 2010)
 

Memento: Updated Technical Details (March 2010)

on

  • 6,172 views

This presentation provides updated technical information regarding the Memento framework to support time travel on the Web. Its technical content overrides the first Memento presentation ...

This presentation provides updated technical information regarding the Memento framework to support time travel on the Web. Its technical content overrides the first Memento presentation (http://www.slideshare.net/hvdsomp/memento-time-travel-for-the-web). More Memento information is available at http://www.mementoweb.org.

Statistics

Views

Total Views
6,172
Views on SlideShare
5,880
Embed Views
292

Actions

Likes
4
Downloads
109
Comments
3

12 Embeds 292

http://unbearablelightnessofathesis.blogspot.com 135
http://www.mementoweb.org 61
http://birtezindayanilmazhafifligi.blogspot.com 47
http://www.slideshare.net 31
http://ws-dl.blogspot.com 9
http://ws-dl.blogspot.gr 2
http://ws-dl.blogspot.fr 2
http://unbearablelightnessofathesis.blogspot.fr 1
http://unbearablelightnessofathesis.blogspot.ca 1
http://ws-dl.blogspot.in 1
http://translate.googleusercontent.com 1
http://unbearablelightnessofathesis.blogspot.de 1
More...

Accessibility

Upload Details

Uploaded via as Adobe PDF

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel

13 of 3 previous next Post a comment

  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

    Memento: Updated Technical Details (March 2010) Memento: Updated Technical Details (March 2010) Presentation Transcript

    • Memento: Time Travel for the Web
 The Memento Team Herbert Van de Sompel Michael L. Nelson Robert Sanderson Lyudmila Balakireva Scott Ainsworth Harihar Shankar Memento is partially funded by the Library of Congress 
 Updated Technical Details (March 2010) Memento: Time Travel for the Web Updated Technical Details (03/2010)
    • Memento wants to make navigating the Web’s Past Easy http://www.mementoweb.org http://groups.google.com/group/memento-dev Memento: Time Travel for the Web 2 Updated Technical Details (03/2010)
    • Recap of the Basics … Memento: Time Travel for the Web 3 Updated Technical Details (03/2010)
    • W3C Web Architecture: Resource – URI - Representation dereference URI Identifies Resource Represents Representation Memento: Time Travel for the Web 4 Updated Technical Details (03/2010)
    • W3C Web Architecture: Resource – URI - Representation dereference content negotiation URI Identifies Resource Represents Representation 1 Represents Representation 2 Memento: Time Travel for the Web 5 Updated Technical Details (03/2010)
    • Problem Statement … Memento: Time Travel for the Web 6 Updated Technical Details (03/2010)
    • Resources Memento: Time Travel for the Web 7 Updated Technical Details (03/2010)
    • Resources have Representations Memento: Time Travel for the Web 8 Updated Technical Details (03/2010)
    • Resources have Representations that Change over Time Memento: Time Travel for the Web 9 Updated Technical Details (03/2010)
    • Only the Current Representation is Available from a Resource Memento: Time Travel for the Web 10 Updated Technical Details (03/2010)
    • Old Representations are Lost Forever Memento: Time Travel for the Web 11 Updated Technical Details (03/2010)
    • Archived Resources Exist Memento: Time Travel for the Web 12 Updated Technical Details (03/2010)
    • Sep 11 2001, 20:36:10 UTC Dec 20 2001, 4:51:00 UTC Archived Resources http://en.wikipedia.org/w/index.php? http://web.archive.org/web/20010911203610/http:// title=September_11_attacks&oldid=282333 archived www.cnn.com/ archived resource for http://cnn.com resource for http://en.wikipedia.org/wiki/ September_11_attacks Memento: Time Travel for the Web Updated Technical Details (03/2010) 13
    • Finding Archived Resources Go to http://www.archive.org/ and search On http://web.archive.org/web/*/http://cnn.com, select http://cnn.com desired datetime Memento: Time Travel for the Web 14 Updated Technical Details (03/2010)
    • Finding Archived Resources Go to http://en.wikipedia.org/wiki/September_11_attacks Browse History and click History Memento: Time Travel for the Web 15 Updated Technical Details (03/2010)
    • Dec 20 2001, 4:51:00 UTC current Navigating Archived Resources Pentagon http://en.wikipedia.org/w/index.php? title=September_11_attacks&oldid=282333 archived http://en.wikipedia.org/wiki/The_Pentagon resource for http://en.wikipedia.org/wiki/ September_11_attacks3 Memento: Time Travel for the Web 16 Updated Technical Details (03/2010)
    • Sep 11 2001, 20:36:10 UTC Sep 11 2001, 21:38:55 UTC Navigating Archived Resources SPACE http://web.archive.org/web/20010911203610/http:// http://web.archive.org/web/20010911213855/ www.cnn.com/ archived resource for http://cnn.com www.cnn.com/TECH/space/ Memento: Time Travel for the Web 17 Updated Technical Details (03/2010)
    • Current and Past Web are Not Integrated •  Current and Past Web based on same technology. •  But, going from Current to Past Web is a matter of (manual) discovery. •  Memento wants to make going from Current to Past Web a (HTTP) protocol matter. •  Memento wants to integrate Current And Past Web. Memento: Time Travel for the Web 18 Updated Technical Details (03/2010)
    • The Memento Approach … Memento: Time Travel for the Web 19 Updated Technical Details (03/2010)
    • Navigate the Web of the Past http://en.wikipedea.org/wiki/ Web_Archiving Memento: Time Travel for the Web 20 Updated Technical Details (03/2010)
    • Navigate the Web of the Past http://en.wikipedea.org/wiki/ Web_Archiving Oct 11 2009, 05:30:33 UTC Set browser time dial to … Memento: Time Travel for the Web 21 Updated Technical Details (03/2010)
    • Navigate the Web of the Past http://en.wikipedea.org/wiki/ From Wikipedia History Web_Archiving Oct 11 2009, 05:30:33 UTC Oct 01 2009, 16:30:00 UTC Set browser time dial to … Memento: Time Travel for the Web 22 Updated Technical Details (03/2010)
    • Navigate the Web of the Past http://en.wikipedea.org/wiki/ From Wikipedia History Web_Archiving Oct 11 2009, 05:30:33 UTC Oct 01 2009, 16:30:00 UTC Set browser time dial to … Robots Exclusion Protocol Oct 11 2009, 05:30:33 UTC Memento: Time Travel for the Web 23 Updated Technical Details (03/2010)
    • Navigate the Web of the Past http://en.wikipedea.org/wiki/ Robots_exclusion_protocol Oct 11 2009, 05:30:33 UTC Browser time dial still at … Memento: Time Travel for the Web 24 Updated Technical Details (03/2010)
    • Navigate the Web of the Past http://en.wikipedea.org/wiki/ From Wikipedia History Robots_exclusion_protocol Oct 11 2009, 05:30:33 UTC Sep 15 2009, 20:49:00 UTC Browser time dial still at … Memento: Time Travel for the Web 25 Updated Technical Details (03/2010)
    • Navigate the Web of the Past http://en.wikipedea.org/wiki/ From Wikipedia History Robots_exclusion_protocol Oct 11 2009, 05:30:33 UTC Sep 15 2009, 20:49:00 UTC Browser time dial still at … Robots Exclusion Oct 11 2009, 05:30:33 UTC Memento: Time Travel for the Web 26 Updated Technical Details (03/2010)
    • Navigate the Web of the Past http://www.robotstxt.org/ Oct 11 2009, 05:30:33 UTC Browser time dial still at … Memento: Time Travel for the Web 27 Updated Technical Details (03/2010)
    • Navigate the Web of the Past http://www.robotstxt.org/ From Internet Archive Oct 11 2009, 05:30:33 UTC Nov 09 2007, 06:21:04 UTC Browser time dial still at … Memento: Time Travel for the Web 28 Updated Technical Details (03/2010)
    • How does Memento achieve this? There are two components to the Memento Solution: •  Component 1: Navigation towards an archived resource via its original resource, by leveraging content negotiation. •  Component 2: A discovery API for archives that allows requesting a list of all archived versions it holds for a resource with a given URI. Memento: Time Travel for the Web 29 Updated Technical Details (03/2010)
    • How does Memento achieve this? •  Component 1: Navigation towards an archived resource via its original resource, by leveraging content negotiation. Memento: Time Travel for the Web 30 Updated Technical Details (03/2010)
    • The Web without a Time Dimension Memento: Time Travel for the Web 31 Updated Technical Details (03/2010)
    • The Web without a Time Dimension Memento: Time Travel for the Web 32 Updated Technical Details (03/2010)
    • The Web without a Time Dimension Need to use a different URI to access archived versions of a resource and its current version Memento: Time Travel for the Web 33 Updated Technical Details (03/2010)
    • The Web with Time Dimension added by Memento In Memento: use URI of the current version to access archived versions, but qualify it with datetime Memento: Time Travel for the Web 34 Updated Technical Details (03/2010)
    • The Web with Time Dimension added by Memento … and magically arrive at an archived version Memento: Time Travel for the Web 35 Updated Technical Details (03/2010)
    • How does Memento achieve this? In order to fully understand how Memento introduces a time dimension to the Web, we present a brief recap of Transparent Content Negotiation (conneg) in HTTP. RFC 2295. Transparent Content Negotiation in HTTP, http://www.ietf.org/rfc/rfc2295.txt Memento: Time Travel for the Web 36 Updated Technical Details (03/2010)
    • HTTP GET on URI A Memento: Time Travel for the Web 37 Updated Technical Details (03/2010)
    • GET with conneg on URI T – Server Choice – 302 Found – Step 1 transparently negotiable resource Memento: Time Travel for the Web 38 Updated Technical Details (03/2010)
    • GET with conneg on URI T – Server Choice – 302 Found – Step 2 Memento: Time Travel for the Web 39 Updated Technical Details (03/2010)
    • GET with conneg on URI T – Server List – 406 Not Acceptable Memento: Time Travel for the Web 40 Updated Technical Details (03/2010)
    • How does Memento do This? •  Component 1: Navigation towards an archived resource via its original resource, by leveraging content negotiation. Memento: Time Travel for the Web 41 Updated Technical Details (03/2010)
    • Terminology Intermission We introduce the term Memento to refer to an archived version of a resource. A Memento for a resource URI-R (as it existed) at time ti is a resource URI-Mi [URI-R@ti] for which the representation at any moment past its creation time tc is the same as the representation that was available from URI- R at time ti, with tc >= ti. Implicit in this definition is the notion that, once created, a Memento always keeps the same representation. Memento: Time Travel for the Web 42 Updated Technical Details (03/2010)
    • DT-conneg: Content Negotiation in the datetime dimension •  RFC 2295 introduces conneg in the following dimensions: media type, language, compression, character set, e.g.: -  HTTP Request: o  Accept-Language: en-US o  HTTP Response: o  Content-Language: en-US •  Inspired by RFC 2295, Memento introduces datetime conneg: -  HTTP Request: o  Accept-Datetime: Mon, 12 Oct 2009 14:20:33 GMT o  HTTP Response: o  Content-Datetime: Sun, 11 Oct 2009 11:18:05 GMT Memento: Time Travel for the Web 43 Updated Technical Details (03/2010)
    • DT-conneg: Content Negotiation in the datetime dimension •  This means that somewhere, we will need transparently negotiable resources (cf. slides 38-40) that supports the datetime dimension to get to appropriate Mementos. •  This will be discussed for 2 classes of servers: o  Web servers without internal archival capabilities; o  Web servers with internal archival capabilities. Memento: Time Travel for the Web 44 Updated Technical Details (03/2010)
    • Servers Without Internal Archival Capabilities •  This type includes: o  Servers that are crawled by a web archive, such as the Internet Archive o  Servers with an associated transactional archive •  These servers are not aware of the details of Mementos of their resources held by external archives. •  These servers do not have the essential information (URI-Ms, and associated datetimes) to respond to a DT-conneg request. •  But they can be constructive by pointing (HTTP Link) a client to an archive that can respond to the DT-conneg request. o  Unconditionally do this for resources for which Mementos are conceivably available in the archive. Memento: Time Travel for the Web 45 Updated Technical Details (03/2010)
    • Oct 04 2009, 12:00:01 UTC current Oct 10 2009, 12:00:03 UTC http://lanlsource.lanl.gov/ hello Oct 21 2009, 12:00:01 UTC http://mementoarchive.lanl.gov/store/ta/ 20091021120001/http://lanlsource.lanl.gov/hello Memento: Time Travel for the Web 46 Updated Technical Details (03/2010)
    • original resource Mementos original server archival server Memento: Time Travel for the Web 47 Updated Technical Details (03/2010)
    • DT-conneg with URI-G to get URI-M original resource Mementos transparently variant negotiable resources resource original server archival server Memento: Time Travel for the Web 48 Updated Technical Details (03/2010)
    • HTTP DT-conneg with URI-G to get URI-M Link original resource Mementos transparently variant negotiable resources resource original server archival server Memento: Time Travel for the Web 49 Updated Technical Details (03/2010)
    • Terminology Intermission We introduce the term TimeGate to refer to a transparently negotiable resource that supports the datetime dimension. A TimeGate for an original resource URI-R is a transparently negotiable resource URI- G[URI-R] for which all variant resources are Mementos URI-Mi[URI-R@ti] of the resource URI-R. Since multiple archives may host versions of URI-R, multiple TimeGates may exist for any given resource, i.e. one per archive. Memento: Time Travel for the Web 50 Updated Technical Details (03/2010)
    • HTTP Link DT-conneg with URI-G to get URI-M original resource TimeGate Mementos transparently variant negotiable resources resource original server archival server Memento: Time Travel for the Web 51 Updated Technical Details (03/2010)
    • How to redirect from Original Resource to its (external) TimeGate •  Q1: Which archive to HTTP Link to? o  The archive with the best coverage for the server at hand. o  Always redirect to an Aggregator (see slides 110-139) o  No redirection by server: client takes control, accessing its preferred TimeGate, bypassing Original Resource. •  Q2: What is the TimeGate URI-G for URI-R on the chosen archive? o  Convention for syntax of URI-G as function of URI-R. -  http://web.archive.org/web/timegate/http://cnn.com o  Always redirect to an Aggregator (see slides 110-139) Memento: Time Travel for the Web 52 Updated Technical Details (03/2010)
    • Servers With Internal Archival Capabilities •  This type includes: o  Content Management Systems o  Version Control Systems o  Servers that archive resource representations in the cloud and keep track of the URIs and datetimes of remotely archived resources. •  These servers have all the essential information (URI-Ms, and associated datetimes) to respond to a DT-conneg request. •  The previous architectural solution is maintained to enforce strict distinction between handling requests for current and past representations. Memento: Time Travel for the Web 53 Updated Technical Details (03/2010)
    • Dec 20 2001, 4:51:00 UTC Dec 31 2004, 20:46:00 UTC current http://en.wikipedia.org/wiki/ September_11_attacks Dec 20 2008, 22:21:00 UTC http://en.wikipedia.org/w/index.php? title=September_11_attacks&oldid=259237305 Memento: Time Travel for the Web 54 Updated Technical Details (03/2010)
    • original Mementos resource original server Memento: Time Travel for the Web 55 Updated Technical Details (03/2010)
    • HTTP Link DT-conneg with URI-G to get URI-M original TimeGate Mementos resource transparently negotiable resource variant resources original server Memento: Time Travel for the Web 56 Updated Technical Details (03/2010)
    • How to redirect from Original Resource to its (internal) TimeGate •  Q1: Which archive to HTTP Link to? o  No problem as the archive and the original server coincide: Original Resources, TimeGates, Mementos are on same server. •  Q2: What is the TimeGate URI-G for URI-R on the chosen archive? o  Can be internal convention for syntax of URI-G as function of URI-R. -  For example, MediaWiki: http://a.wiki.org/wiki/Special:TimeGate/http://a.wiki.org/wiki/the_title Memento: Time Travel for the Web 57 Updated Technical Details (03/2010)
    • HTTP Headers in Memento Memento: Time Travel for the Web 58 Updated Technical Details (03/2010)
    • The HTTP Headers used in Memento … •  Define two new headers: –  request: Accept-Datetime: –  response: Content-Datetime: •  Introduce new content for two existing headers: –  response: Vary: ; Link: •  Use one existing headers without modification: –  response: Location:, TCN: Memento: Time Travel for the Web 59 Updated Technical Details (03/2010)
    • HTTP Request Headers for DT-conneg •  Accept-Datetime: o  Issued against TimeGate, (Original Resource), (Memento) o  Header content: desired datetime of Memento Accept-Datetime: Mon, 12 Oct 2009 14:20:33 GMT Memento: Time Travel for the Web 60 Updated Technical Details (03/2010)
    • HTTP Response Headers for DT-conneg •  Content-Datetime: o  Returned by Mementos -  Even when not as a result of DT-conneg. o  Symmetrical with regular conneg e.g. Content-Type, Content- Language, … o  Header content: archival datetime of the Memento that is being returned. •  Note: This header is crucial to allow a client to understand it has arrived at a Memento. Content-Datetime: Mon, 12 Oct 2009 14:20:33 GMT Memento: Time Travel for the Web 61 Updated Technical Details (03/2010)
    • HTTP Response Headers for DT-conneg •  TCN: o  Returned by TimeGate o  Same use as in regular conneg o  Header content: -  Choice: –  302 response –  Chosen Memento in Location header –  Alternative Mementos listed in Link header -  List: –  406, 300 response –  Possible Mementos listed in Link header (and optionally in body as HTML) TCN: choice Memento: Time Travel for the Web 62 Updated Technical Details (03/2010)
    • HTTP Response Headers for DT-conneg •  Vary: o  Returned by TimeGate o  Similar to regular conneg o  Header content: -  negotiate, accept-datetime •  Note: accept-datetime content in Vary header is crucial to allow a client to understand it has arrived at a TimeGate. Vary: negotiate, accept-datetime Memento: Time Travel for the Web 63 Updated Technical Details (03/2010)
    • HTTP Response Headers for DT-conneg •  Location: o  Returned by TimeGate o  Similar to regular conneg o  Header content: Location of Memento Location: http://web.archive.org/web/20010911223004/ http://cnn.com Memento: Time Travel for the Web 64 Updated Technical Details (03/2010)
    • HTTP Response Headers for DT-conneg •  Link: o  Returned by Original Resource, TimeGate and Mementos Memento: Time Travel for the Web 65 Updated Technical Details (03/2010)
    • HTTP Response Headers for DT-conneg •  Link header content for Original Resource: o  Recommended: URI-G of TimeGate -  rel="timegate" Link: <http://web.archive.org/web/timegate/http:// cnn.com/>; rel="timegate" Memento: Time Travel for the Web 66 Updated Technical Details (03/2010)
    • HTTP Response Headers for DT-conneg •  Link header content for TimeGate, Mementos: o  Required: URI-R of Original Resource -  rel="original" . Note: even when not as part of DT-conneg. o  Required: URI-M of first and last available Mementos; -  rel="first-memento"; datetime="…" -  rel="last-memento"; datetime="…" o  Recommended: URI-M of time-adjacent Mementos; -  rel="prev-memento"; datetime="…" -  rel="next-memento"; datetime="…" o  Recommended: URI-B of TimeBundle -  rel="timebundle" o  Optional: URI-M of other Mementos -  rel="memento"; datetime="…" Memento: Time Travel for the Web 67 Updated Technical Details (03/2010)
    • HTTP Response Headers for DT-conneg •  Link header content for TimeGate, Mementos: Link: <http://cnn.com/>; rel="original", <http://web.archive.org/web/timebundle/http://cnn.com/>; rel="timebundle", <http://web.archive.org/web/20000915112826/http:// www.cnn.com>; rel="first-memento"; datetime="Tue, 15 Sep 2000 11:28:26 GMT", <http://web.archive.org/web/20080708093433/http:// www.cnn.com>; rel="last-memento"; datetime="Tue, 08 Jul 2008 09:34:33 GMT", <http://web.archive.org/web/20010911203610/http:// www.cnn.com>; rel="prev-memento"; datetime="Tue, 11 Sep 2001 20:30:51 GMT", <http://web.archive.org/web/20010911203610/http:// www.cnn.com>; rel="next-memento"; datetime="Tue, 11 Sep 2001 20:47:33 GMT" Memento: Time Travel for the Web 68 Updated Technical Details (03/2010)
    • Two Memento HTTP Navigations Details at http://www.mementoweb.org/guide/http/ Memento: Time Travel for the Web 69 Updated Technical Details (03/2010)
    • Memento HTTP Flow HEAD R, Accept-Datetime LinkG GET G, Accept-Datetime 302M, Vary, TCN, LinkR,B,M GET M, Accept-Datetime 200, Content-Datetime, LinkR,B,M
    • Memento HTTP Flow: Notes (1) GET G, Accept-Datetime •  Accept-Datetime header only essential when communication with URI-G. Not necessary when communicating with URI-R, URI-M. •  GET G can be optimized to HEAD G Memento: Time Travel for the Web 71 Updated Technical Details (03/2010)
    • Memento HTTP Flow: Notes (2) LinkG •  Link header pointing at URI-G only essential when server of URI-R has its special-purpose of preferred archive(s) for its own resources. •  If Link is missing, HTTP client can resort to its preferred TimeGates. Memento: Time Travel for the Web 72 Updated Technical Details (03/2010)
    • Memento HTTP Flow: Notes (3) Three aspects of the Memento HTTP flow ensure maximal leverage of established Web caching infrastructure: •  URI-R separate from URI-G: Coinciding URI-R and URI-G would cause problems because caching regimes for regular resources and negotiable resources are different. •  Link header pointing from URI-R to URI-G (as opposed to HTTP 302 used in prior Memento design) allows for caching of responses from URI-R (many thanks to Erik Hetzner of California Digital Library). •  URI-G separate from URI-M: Allows for caching of Mementos. Memento: Time Travel for the Web 73 Updated Technical Details (03/2010)
    • Two Memento HTTP Navigations Scenario 1 •  cnn.com includes Link to TimeGate at Internet Archive •  URI-R on one server, URI-G & URI-M on another Memento: Time Travel for the Web 74 Updated Technical Details (03/2010)
    • Memento HTTP Flow HEAD R, Accept-Datetime LinkG GET G, Accept-Datetime 302M, Vary, TCN, LinkR,B,M GET M, Accept-Datetime 200, Content-Datetime, LinkR,B,M
    • Memento HTTP Flow: URI-R HEAD R, Accept-Datetime HEAD http://cnn.com/ HTTP/1.1 Host: cnn.com Accept-Datetime: Tue, 11 Sep 2001 20:35:00 GMT Connection: close Memento: Time Travel for the Web 76 Updated Technical Details (03/2010)
    • Memento HTTP Flow HEAD R, Accept-Datetime LinkG GET G, Accept-Datetime 302M, Vary, TCN, LinkR,B,M GET M, Accept-Datetime 200, Content-Datetime, LinkR,B,M
    • Memento HTTP Flow: Success – URI-R LinkG HTTP/1.1 200 OK Date: Thu, 21 Jan 2010 00:02:12 GMT Server: Apache Link: <http://web.archive.org/web/timegate/http://cnn.com>; rel="timegate" Content-Length: 255 Connection: close Content-Type: text/html; charset=iso-8859-1 Memento: Time Travel for the Web 78 Updated Technical Details (03/2010)
    • Memento HTTP Flow HEAD R, Accept-Datetime LinkG GET G, Accept-Datetime 302M, Vary, TCN, LinkR,B,M GET M, Accept-Datetime 200, Content-Datetime, LinkR,B,M
    • Memento HTTP Flow: URI-G GET G, Accept-Datetime GET http://web.archive.org/web/timegate/http://cnn.com HTTP/1.1 Host: web.archive.org Accept-Datetime: Tue, 11 Sep 2001 20:35:00 GMT Connection: close Memento: Time Travel for the Web 80 Updated Technical Details (03/2010)
    • Memento HTTP Flow HEAD R, Accept-Datetime LinkG GET G, Accept-Datetime 302M, Vary, TCN, LinkR,B,M GET M, Accept-Datetime 200, Content-Datetime, LinkR,B,M
    • Memento HTTP Flow: Success – URI-G 302M, Vary, LinkR,B,M HTTP/1.1 302 Found Date: Thu, 21 Jan 2010 00:06:50 GMT Server: Apache TCN: choice Vary: negotiate, accept-datetime Location: http://web.archive.org/web/20010911203610/http://www.cnn.com Link: <http://cnn.com/>; rel="original", <http://web.archive.org/web/timebundle/http://cnn.com/>; rel="timebundle", <http://web.archive.org/web/20000915112826/http://www.cnn.com>; rel="first- memento"; datetime="Tue, 15 Sep 2000 11:28:26 GMT", <http://web.archive.org/web/20080708093433/http://www.cnn.com>; rel="last-memento"; datetime="Tue, 08 Jul 2008 09:34:33 GMT", <http://web.archive.org/web/20010911203610/http://www.cnn.com>; rel="prev-memento"; datetime="Tue, 11 Sep 2001 20:30:51 GMT", <http://web.archive.org/web/20010911203610/http://www.cnn.com>; rel="next-memento"; datetime="Tue, 11 Sep 2001 20:47:33 GMT" Content-Length: 0 Connection: close Content-Type: text/plain; charset=UTF-8 82
    • Memento HTTP Flow HEAD R, Accept-Datetime LinkG GET G, Accept-Datetime 302M, Vary, TCN, LinkR,B,M GET M, Accept-Datetime 200, Content-Datetime, LinkR,B,M
    • Memento HTTP Flow: URI-M GET M, Accept-Datetime GET http://web.archive.org/web/20010911203610/http://www.cnn.com HTTP/1.1 Host: web.archive.org Accept-Datetime: Tue, 11 Sep 2001 20:35:00 GMT Connection: close Memento: Time Travel for the Web 84 Updated Technical Details (03/2010)
    • Memento HTTP Flow HEAD R, Accept-Datetime LinkG GET G, Accept-Datetime 302M, Vary, TCN, LinkR,B,M GET M, Accept-Datetime 200, Content-Datetime, LinkR,B,M
    • Memento HTTP Flow: Success – URI-M 200, Content-Datetime, LinkR,B,M HTTP/1.1 200 OK Server: Apache-Coyote/1.1 X-Archive-Orig-Accept-Ranges: bytes … Content-Type: text/html;charset=utf-8 Content-Length: 23364 Date: Thu, 21 Jan 2010 00:09:40 GMT Content-Datetime: Tue, 11 Sep 2001 20:36:10 GMT Link: <http://cnn.com/>; rel="original", <http://web.archive.org/web/timebundle/http://cnn.com/>; rel="timebundle", <http://web.archive.org/web/20000915112826/http://www.cnn.com>; rel="first-memento"; datetime="Tue, 15 Sep 2000 11:28:26 GMT", <http://web.archive.org/web/20080708093433/http://www.cnn.com>; rel="last-memento"; datetime="Tue, 08 Jul 2008 09:34:33 GMT", <http://web.archive.org/web/20010911203610/http://www.cnn.com>; rel="prev-memento"; datetime="Tue, 11 Sep 2001 20:30:51 GMT", <http://web.archive.org/web/20010911203610/http://www.cnn.com>; rel="next-memento"; datetime="Tue, 11 Sep 2001 20:47:33 GMT" Connection: close
    • Two Memento HTTP Navigations Scenario 2 •  wikipedia.org natively supports Memento •  URI-R, URI-G & URI-M on one server Memento: Time Travel for the Web 87 Updated Technical Details (03/2010)
    • Memento HTTP Flow HEAD R, Accept-Datetime LinkG GET G, Accept-Datetime 302M, Vary, TCN, LinkR,B,M GET M, Accept-Datetime 200, Content-Datetime, LinkR,B,M
    • Memento HTTP Flow: URI-R HEAD R, Accept-Datetime HEAD /wiki/DJ_Shadow HTTP/1.1 Host: en.wikipedia.org Accept-Datetime: Thu, 05 Nov 2009 00:00:00 GMT Connection: close Memento: Time Travel for the Web 89 Updated Technical Details (03/2010)
    • Memento HTTP Flow HEAD R, Accept-Datetime LinkG GET G, Accept-Datetime 302M, Vary, TCN, LinkR,B,M GET M, Accept-Datetime 200, Content-Datetime, LinkR,B,M
    • Memento HTTP Flow: Success – URI-R LinkG HTTP/1.1 200 OK Date: Thu, 21 Jan 2010 00:02:12 GMT Server: Apache Link: <http://en.wikipedia.org/Special:TimeGate/http://en.wikipedia.org/wiki/DJ_Shadow>; rel="timegate" Content-Length: 1462 Connection: close Content-Type: text/plain; charset=UTF-8 Memento: Time Travel for the Web 91 Updated Technical Details (03/2010)
    • Memento HTTP Flow HEAD R, Accept-Datetime LinkG GET G, Accept-Datetime 302M, Vary, TCN, LinkR,B,M GET M, Accept-Datetime 200, Content-Datetime, LinkR,B,M
    • Memento HTTP Flow: URI-G GET G, Accept-Datetime GET /Special:TimeGate/http://en.wikipedia.org/wiki/DJ_Shadow HTTP/1.1 Host: en.wikipedia.org Accept-Datetime: Thu, 05 Nov 2009 00:00:00 GMT Connection: close Memento: Time Travel for the Web 93 Updated Technical Details (03/2010)
    • Memento HTTP Flow HEAD R, Accept-Datetime LinkG GET G, Accept-Datetime 302M, Vary, TCN, LinkR,B,M GET M, Accept-Datetime 200, Content-Datetime, LinkR,B,M
    • Memento HTTP Flow: Success – URI-G 302M, Vary, TCN, LinkR,B,M HTTP/1.1 302 Found Date: Thu, 21 Jan 2010 00:06:50 GMT Server: Apache TCN: choice Vary: negotiate, accept-datetime Location: http://en.wikipedia.org/w/index.php?title=DJ_Shadow&oldid=324178040 Link: <http://en.wikipedia.org/Special:TimeBundle/http://en.wikipedia.org/wiki/ DJ_Shadow>; rel="timebundle", <http://en.wikipedia.org/wiki/DJ_Shadow>; rel="original", <http://en.wikipedia.org/w/index.php?title=DJ_Shadow&oldid=1493688>; rel="first-memento"; datetime="Sun, 28 Sep 2003 01:42:00 GMT", <http://en.wikipedia.org/w/index.php?title=DJ_Shadow&oldid=337446696>; rel="last-memento"; datetime="Tue, 12 Jan 2010 19:55:00 GMT", <http://en.wikipedia.org/w/index.php?title=DJ_Shadow&oldid=322586071>; rel="prev-memento"; datetime="Wed, 28 Oct 2009 14:307:00 GMT", <http://en.wikipedia.org/w/index.php?title=DJ_Shadow&oldid=326164283> ; rel="next-memento"; datetime="Thu, 26 Nov 2009 23:50:00 GMT" Content-Length: 0 Connection: close Content-Type: text/plain; charset=UTF-8 95
    • Memento HTTP Flow HEAD R, Accept-Datetime LinkG GET G, Accept-Datetime 302M, Vary, TCN, LinkR,B,M GET M, Accept-Datetime 200, Content-Datetime, LinkR,B,M
    • Memento HTTP Flow: URI-M GET M, Accept-Datetime GET /w/index.php?title=DJ_Shadow&oldid=324178040 HTTP/1.1 Host: en.wikipedia.org Accept-Datetime: Thu, 05 Nov 2009 00:00:00 GMT Connection: close Memento: Time Travel for the Web 97 Updated Technical Details (03/2010)
    • Memento HTTP Flow HEAD R, Accept-Datetime LinkG GET G, Accept-Datetime 302M, Vary, TCN, LinkR,B,M GET M, Accept-Datetime 200, Content-Datetime, LinkR,B,M
    • Memento HTTP Flow: Success – URI-M 200, Content-Datetime, LinkR,B,M HTTP/1.1 200 OK Server: Apache Content-Length: 82705 Content-Type: text/html; charset=utf-8 Date: Thu, 21 Jan 2010 00:09:40 GMT Content-Datetime: Thu, 05 Nov 2009 23:41:00 GMT Link: <http://en.wikipedia.org/Special:TimeBundle/http://en.wikipedia.org/wiki/ DJ_Shadow>; rel="timebundle", <http://en.wikipedia.org/wiki/DJ_Shadow>; rel="original", <http://en.wikipedia.org/w/index.php?title=DJ_Shadow&oldid=1493688>; rel="first-memento"; datetime="Sun, 28 Sep 2003 01:42:00 GMT", <http://en.wikipedia.org/w/index.php?title=DJ_Shadow&oldid=337446696>; rel="last-memento"; datetime="Tue, 12 Jan 2010 19:55:00 GMT", <http://en.wikipedia.org/w/index.php?title=DJ_Shadow&oldid=322586071>; rel="prev-memento"; datetime="Wed, 28 Oct 2009 14:307:00 GMT", <http://en.wikipedia.org/w/index.php?title=DJ_Shadow&oldid=326164283> ; rel="next-memento"; datetime="Thu, 26 Nov 2009 23:50:00 GMT" Connection: close 99
    • Memento HTTP Navigations involving codes other than 200, 302 Memento: Time Travel for the Web 100 Updated Technical Details (03/2010)
    • 300 Multiple Choices •  Two scenarios that generate a 300 at the TimeGate: –  A client requests a 300 using the "Negotiate: 1.0" request header –  An archive has two or more Mementos with the same Datetime (HTTP only supports second-level granularity) HTTP/1.1 300 Multiple Choices Server: Apache Content-Length: 705 Content-Type: text/html; charset=utf-8 Date: Thu, 21 Jan 2010 00:09:40 GMT TCN: list Vary: negotiate, accept-datetime Link: <http://en.wikipedia.org/Special:TimeBundle/http://en.wikipedia.org/wiki/ DJ_Shadow>; rel="timebundle", <http://en.wikipedia.org/wiki/DJ_Shadow>; rel="original", <http://en.wikipedia.org/w/index.php?title=DJ_Shadow&oldid=1493688>; rel="first-memento"; datetime="Sun, 28 Sep 2003 01:42:00 GMT", <http://en.wikipedia.org/w/index.php?title=DJ_Shadow&oldid=337446696>; rel="last-memento"; datetime="Tue, 12 Jan 2010 19:55:00 GMT", <http://en.wikipedia.org/w/index.php?title=DJ_Shadow&oldid=322586071>; rel=”memento"; datetime="Sun, 31 May 2009 15:43:00 GMT", <http://en.wikipedia.org/w/index.php?title=DJ_Shadow&oldid=326164283> ; rel=”memento"; datetime="Sun, 31 May 2009 15:43:00 GMT" Connection: close 101
    • 406 Not Acceptable •  A client request for a Memento with a datetime outside the first and last values will generate a 406 •  For example a request in Wikipedia with: Accept-DateTime: Mon, 31 May 1999 00:00:00 GMT HTTP/1.1 406 Not Acceptable Server: Apache Content-Length: 709 Content-Type: text/html; charset=utf-8 Date: Thu, 21 Jan 2010 00:09:40 GMT Vary: negotiate, accept-datetime TCN: list Link: <http://en.wikipedia.org/Special:TimeBundle/http://en.wikipedia.org/wiki/ DJ_Shadow>; rel="timebundle", <http://en.wikipedia.org/wiki/DJ_Shadow>; rel="original", <http://en.wikipedia.org/w/index.php?title=DJ_Shadow&oldid=1493688>; rel="first-memento"; datetime="Sun, 28 Sep 2003 01:42:00 GMT", <http://en.wikipedia.org/w/index.php?title=DJ_Shadow&oldid=337446696>; rel="last-memento"; datetime="Tue, 12 Jan 2010 19:55:00 GMT", Connection: close 102
    • The Web with Time Dimension added by Memento Memento: Time Travel for the Web 103 Updated Technical Details (03/2010)
    • How does Memento do This? There are two components to the Memento Solution: •  Component 1: Navigation towards an archived resource via its original resource, by leveraging Done content negotiation. •  Component 2: A discovery API for archives that allows requesting a list of all archived versions it holds for a resource with a given URI. Memento: Time Travel for the Web 104 Updated Technical Details (03/2010)
    • How does Memento do This? •  Component 2: A discovery API for archives that allows requesting a list of all archived versions it holds for a resource with a given URI. Memento: Time Travel for the Web 105 Updated Technical Details (03/2010)
    • Why an API? •  Mementos for any given URI-R are distributed across archives. •  In order to get a correct perspective of available Mementos, different archives need to be consulted. •  Can do so in distributed consultation mode (slooow), or by consulting an aggregator.
    • Terminology Intermission We introduce the term TimeBundle to refer to a resource via which an overview of all Mementos for an original resource URI-R is available. A TimeBundle for a resource URI-R, is a resource URI-B[URI-R] that is an aggregation of: (a)  All Mementos URI-Mi [URI-R@ti] available from an archive, (b)  The archive's TimeGate URI-G for URI-R, (c)  The original resource URI-R itself. Memento: Time Travel for the Web 107 Updated Technical Details (03/2010)
    • URI- M1 URI- URI-R M2 URI- M3 Original Memento resource Memento: Time Travel for the Web 108 Updated Technical Details (03/2010)
    • HTTP LINK HEADER timegate URI- M1 DT-conneg URI- URI-R URI-G M2 URI- M3 Original TimeGate Memento resource Memento DT-conneg component Memento: Time Travel for the Web 109 Updated Technical Details (03/2010)
    • See OAI-ORE: http://www.openarchives.org/ore/1.0/toc/ ore:aggregates URI- M1 ore:aggregates URI- URI-R URI-G M2 URI-B ore:aggregates URI- ore:aggregates M3 ore:aggregates Original TimeGate Memento TimeBundle resource Memento DT-conneg component Memento: Time Travel for the Web 110 Updated Technical Details (03/2010)
    • HTTP LINK HEADER timebundle ore:aggregates TimeMap URI- M1 ore:aggregates HTTP URI- 303 URI-R URI-G M2 URI-B URI-T ore:aggregates URI- ore:aggregates M3 ore:aggregates Original TimeGate Memento TimeBundle TimeMap resource Memento DT-conneg component Memento discovery component Memento: Time Travel for the Web 111 Updated Technical Details (03/2010)
    • The Aggregator: A Service using the TimeBundle API Memento: Time Travel for the Web 112 Updated Technical Details (03/2010)
    • TimeBundle API: For Discovery, Cross-Archive Services •  Archive uses common approaches to make TimeBundles/ TimeMaps discoverable: o  SiteMaps, o  Atom Feeds, o  OAI-PMH. •  Aggregator harvests and merges TimeMaps. Based on this information, the Aggregator exposes its own TimeGates. o  Cross-archive o  Finer datetime granularity o  Better chances of matching a client’s datetime preference. o  Can become a shared target for redirection for many web servers. Memento: Time Travel for the Web 113 Updated Technical Details (03/2010)
    • Aggregatorusing TimeBundle API Aggregator Conceptualization Accept-Datetime Original TimeMap HTTP LINK rel="timegate" server TimeMap Aggregator datetime browser content TimeMap negotiation HTTP LINK rel="original" HTTP Link rel="timegate" Content-Datetime Memento TimeMap server servers Memento: Time Travel for the Web 114 Updated Technical Details (03/2010)
    • Two Memento HTTP Navigations involving an Aggregator Memento: Time Travel for the Web 115 Updated Technical Details (03/2010)
    • A Memento HTTP Navigation involving an Aggregator Scenario 3 •  www.digitalpreservation.gov points at TimeGate provided by an Aggregator •  URI-R, URI-G, URI-M on different servers Memento: Time Travel for the Web 116 Updated Technical Details (03/2010)
    • Memento HTTP Flow HEAD R, Accept-Datetime LinkG GET G, Accept-Datetime 302M, Vary, TCN, LinkR,B,M GET M, Accept-Datetime 200, Content-Datetime, LinkR,B,M
    • Memento HTTP Flow: URI-R HEAD R, Accept-Datetime HEAD / HTTP/1.1 Host: www.digitalpreservation.gov Accept-Datetime: Sat, 10 Oct 2009 00:00:00 GMT Connection: close Memento: Time Travel for the Web 118 Updated Technical Details (03/2010)
    • Memento HTTP Flow HEAD R, Accept-Datetime LinkG GET G, Accept-Datetime 302M, Vary, TCN, LinkR,B,M GET M, Accept-Datetime 200, Content-Datetime, LinkR,B,M
    • Memento HTTP Flow: Success – URI-R LinkG HTTP/1.1 200 OK Date: Thu, 21 Jan 2010 00:02:12 GMT Server: Apache Link: <http://mementoproxy.lanl.gov/aggr/timegate/http://www.digitalpreservation.gov/> ; rel="timegate" Content-Length: 255 Connection: close Content-Type: text/html; charset=iso-8859-1 Memento: Time Travel for the Web 120 Updated Technical Details (03/2010)
    • Memento HTTP Flow HEAD R, Accept-Datetime LinkG GET G, Accept-Datetime 302M, Vary, TCN, LinkR,B,M GET M, Accept-Datetime 200, Content-Datetime, LinkR,B,M
    • Memento HTTP Flow: URI-G GET G, Accept-Datetime GET /aggr/timegate/http://www.digitalpreservation.gov/ HTTP/1.1 Host: mementoproxy.lanl.gov Accept-Datetime: Sat, 10 Oct 2009 00:00:00 GMT Connection: close Memento: Time Travel for the Web 122 Updated Technical Details (03/2010)
    • Memento HTTP Flow HEAD R, Accept-Datetime LinkG GET G, Accept-Datetime 302M, Vary, TCN, LinkR,B,M GET M, Accept-Datetime 200, Content-Datetime, LinkR,B,M
    • Memento HTTP Flow: Success – URI-G 302M, Vary, LinkR,B,M HTTP/1.1 302 Found Date: Thu, 21 Jan 2010 00:06:50 GMT Server: Apache TCN: choice Vary: negotiate, accept-datetime Location: http://wayback.archive-it.org/1610/20090928171405/http:// www.digitalpreservation.gov/ Link: <http://www.digitalpreservation.gov/>; rel="original", <http://mementoproxy.lanl.gov/aggr/timebundle/http://www.digitalpreservation.gov/>; rel="timebundle", <http://wayback.archive -it.org/256/20051108162921/http://www.digitalpreservation.gov/>; rel="first-memento"; datetime="Tue, 08 Nov 2005 00:00:00 GMT", <http://webcitation.org/query?id=1257028234035091>; rel="next-memento"; datetime="Sat, 31 Oct 2009 18:30:35 GMT", <http://webcitation.org/query?id=1213058061345794>; rel="prev-memento"; datetime="Mon, 09 Jun 2008 20:34:23 GMT", <http://wayback.archive -it.org/256/20100120102000/http://www.digitalpreservation.gov/>; rel="last-memento"; datetime="Wed, 20 Jan 2010 10:20:00 GMT" Content-Length: 0 Connection: close
    • Memento HTTP Flow HEAD R, Accept-Datetime LinkG GET G, Accept-Datetime 302M, Vary, TCN, LinkR,B,M GET M, Accept-Datetime 200, Content-Datetime, LinkR,B,M
    • Memento HTTP Flow: URI-M GET M, Accept-Datetime GET /1610/20090928171405/http://www.digitalpreservation.gov/ HTTP/1.1 Host: wayback.archive-it.org Accept-Datetime: Sat, 10 Oct 2009 00:00:00 GMT Connection: close Memento: Time Travel for the Web 126 Updated Technical Details (03/2010)
    • Memento HTTP Flow HEAD R, Accept-Datetime LinkG GET G, Accept-Datetime 302M, Vary, TCN, LinkR,B,M GET M, Accept-Datetime 200, Content-Datetime, LinkR,B,M
    • Memento HTTP Flow: Success – URI-M 200, Content-Datetime, LinkR,B,M HTTP/1.1 200 OK Server: Apache-Coyote/1.1 Link header values are local X-Archive-Orig-Accept-Ranges: bytes … to wayback.archive-it.org Content-Type: text/html;charset=utf-8 and different than those Content-Length: 23364 provided by URI-G Date: Thu, 21 Jan 2010 00:09:40 GMT Content-Datetime: Mon, 28 Sep 2009 17:14:05 GMT Link: <http://www.digitalpreservation.gov/>; rel="original", <http://wayback.archive-it.org/web/timebundle/http://www.digitalpreservation.gov/>; rel="timebundle", <http://wayback.archive -it.org/256/20051108162921/http://www.digitalpreservation.gov/>; rel="first-memento"; datetime="Tue, 08 Nov 2005 00:00:00 GMT", <http://wayback.archive -it.org/256/20100120102000/http://www.digitalpreservation.gov/>; rel="last-memento"; datetime="Wed, 20 Jan 2010 10:20:00 GMT" Connection: close Memento: Time Travel for the Web 128 Updated Technical Details (03/2010)
    • A Memento HTTP Navigation involving an Aggregator Scenario 4 •  cnn.com does not include a Link to a TimeGate •  client takes control by directly contacting its preferred Aggregator •  URI-R, URI-G, URI-M on different servers Memento: Time Travel for the Web 129 Updated Technical Details (03/2010)
    • Memento HTTP Flow HEAD R, Accept-Datetime 200 GET G, Accept-Datetime 302M, Vary, TCN, LinkR,B,M GET M, Accept-Datetime 200, Content-Datetime, LinkR,B,M
    • Memento HTTP Flow: URI-R HEAD R, Accept-Datetime HEAD http://cnn.com/ HTTP/1.1 Host: cnn.com Accept-Datetime: Tue, 11 Sep 2001 20:35:00 GMT Connection: close Memento: Time Travel for the Web 131 Updated Technical Details (03/2010)
    • Memento HTTP Flow HEAD R, Accept-Datetime 200 GET G, Accept-Datetime 302M, Vary, TCN, LinkR,B,M GET M, Accept-Datetime 200, Content-Datetime, LinkR,B,M
    • Memento HTTP Flow: No Success – URI-R 200 HTTP/1.1 200 OK Date: Thu, 21 Jan 2010 00:02:12 GMT Server: Apache Content-Length: 255 Connection: close Content-Type: text/html; charset=iso-8859-1 Memento: Time Travel for the Web 133 Updated Technical Details (03/2010)
    • Memento HTTP Flow HEAD R, Accept-Datetime 200 GET G, Accept-Datetime 302M, Vary, TCN, LinkR,B,M GET M, Accept-Datetime 200, Content-Datetime, LinkR,B,M
    • Memento HTTP Flow: URI-G GET G, Accept-Datetime GET /aggr/timegate/http://cnn.com/ HTTP/1.1 Host: mementoproxy.lanl.gov Accept-Datetime: Tue, 11 Sep 2001 20:35:00 GMT Connection: close Memento: Time Travel for the Web 135 Updated Technical Details (03/2010)
    • Memento HTTP Flow HEAD R, Accept-Datetime 200 GET G, Accept-Datetime 302M, Vary, TCN, LinkR,B,M GET M, Accept-Datetime 200, Content-Datetime, LinkR,B,M
    • Memento HTTP Flow: Success – URI-G 302M, Vary, LinkR,B,M HTTP/1.1 302 Found Date: Thu, 21 Jan 2010 00:06:50 GMT Server: Apache TCN: choice Vary: negotiate, accept-datetime Location: http://web.archive.org/web/20010911203610/http://www.cnn.com Link: <http://cnn.com/>; rel="original", <http://mementoproxy.lanl.gov/aggr/timebundle/http://cnn.com/>; rel="timebundle", <http://web.archive.org/web/20000915112826/http://www.cnn.com>; rel="first-memento"; datetime="Tue, 15 Sep 2000 11:28:26 GMT", <http://archive-it.org/2245/20100310102000/http://www.cnn.com>; rel="last-memento"; datetime="Wed, 10 Mar 2010 10:20:00 GMT", <http://web.archive.org/web/20010911203610/http://www.cnn.com>; rel="prev-memento"; datetime="Tue, 11 Sep 2001 20:30:51 GMT", <http://web.archive.org/web/20010911203610/http://www.cnn.com>; rel="next-memento"; datetime="Tue, 11 Sep 2001 20:47:33 GMT" Content-Length: 0 Connection: close Content-Type: text/plain; charset=UTF-8 137
    • Memento HTTP Flow HEAD R, Accept-Datetime 200 GET G, Accept-Datetime 302M, Vary, TCN, LinkR,B,M GET M, Accept-Datetime 200, Content-Datetime, LinkR,B,M
    • Memento HTTP Flow: URI-M GET M, Accept-Datetime GET http://web.archive.org/web/20010911203610/http://www.cnn.com HTTP/1.1 Host: web.archive.org Accept-Datetime: Tue, 11 Sep 2001 20:35:00 GMT Connection: close Memento: Time Travel for the Web 139 Updated Technical Details (03/2010)
    • Memento HTTP Flow HEAD R, Accept-Datetime 200 GET G, Accept-Datetime 302M, Vary, TCN, LinkR,B,M GET M, Accept-Datetime 200, Content-Datetime, LinkR,B,M
    • Memento HTTP Flow: Success – URI-M 200, Content-Datetime, LinkR,B,M HTTP/1.1 200 OK Server: Apache-Coyote/1.1 note: Link header values are X-Archive-Orig-Accept-Ranges: bytes … local to web.archive.org Content-Type: text/html;charset=utf-8 and different than those Content-Length: 23364 provided by URI-G Date: Thu, 21 Jan 2010 00:09:40 GMT Content-Datetime: Tue, 11 Sep 2001 20:36:10 GMT Link: <http://cnn.com/>; rel="original", <http://web.archive.org/web/timebundle/http://cnn.com/>; rel="timebundle", <http://web.archive.org/web/20000915112826/http://www.cnn.com>; rel="first-memento"; datetime="Tue, 15 Sep 2000 11:28:26 GMT", <http://web.archive.org/web/20080708093433/http://www.cnn.com>; rel="last-memento"; datetime="Tue, 08 Jul 2008 09:34:33 GMT", <http://web.archive.org/web/20010911203610/http://www.cnn.com>; rel="prev-memento"; datetime="Tue, 11 Sep 2001 20:30:51 GMT", <http://web.archive.org/web/20010911203610/http://www.cnn.com>; rel="next-memento"; datetime="Tue, 11 Sep 2001 20:47:33 GMT" Connection: close 141
    • The Memento Profile of OAI-ORE Memento: Time Travel for the Web 142 Updated Technical Details (03/2010)
    • Memento Profile of OAI-ORE
 URI-G TimeGate ORE Aggregated Resource ore:aggregates URI-R Original ORE Aggregated Resource ore:aggregates resource ore:describes ore:aggregates URI- URI-T URI-B M1 Memento ORE Aggregated Resource ore:aggregates URI- TimeMap TimeBundle M2 Memento ORE Aggregated Resource ORE Resource Map ORE Aggregation Memento: Time Travel for the Web 143 Updated Technical Details (03/2010)
    • Information in the TimeMap about the TimeGate
 •  Coverage Period the TimeGate has Mementos for Predicate: mem:covers Object: mem:TimeSpan •  Which Original Resource it is a TimeGate for Predicate: mem:timeGateFor Object: mem:OriginalResource •  TimeSpan Class: •  mem:start datestamp •  mem:end datestamp Memento: Time Travel for the Web 144 Updated Technical Details (03/2010)
    • Information in the TimeMap about the TimeGate
 mem:covers URI-G mem:start mem:timeGateFor datetime ore:aggregates URI-R ore:aggregates ore:describes datetime mem:end URI- URI-T URI-B M1 ore:aggregates Memento: Time Travel for the Web 145 Updated Technical Details (03/2010)
    • Information in the TimeMap about Mementos
 •  The representation's mime-type: dc:format •  The representation's byte size: dc:extent •  Over what period was the representation observed as the current representation of the Original Resource:: Predicate: mem:observedOver Object: mem:TimeSpan •  Or over what period was the representation known to be active as the current representation of the Original Resource: Predicate: mem:validOver Object: mem:TimeSpan •  The number of observations of the representation in the given time period: mem:observations integer •  Any further information that is available about Mementos Memento: Time Travel for the Web 146 Updated Technical Details (03/2010)
    • Information in the TimeMap about Mementos
 integer URI-G mem:observations mem:start datetime ore:aggregates URI-R ore:aggregates mem: ore:describes datetime mementoFor mem:end URI- URI-T URI-B M1 mem: ore:aggregates observedOver integer dc:extent dc:format string Memento: Time Travel for the Web 147 Updated Technical Details (03/2010)
    • Memento Ontology: Classes
 •  TimeMap SubClassOf ore:ResourceMap •  TimeBundle SubClassOf ore:Aggregation •  OriginalResource SubClassOf gen:TimeGenericResource •  TimeGate SubClassOf irw:WebResource •  Memento SubClassOf gen:TimeSpecificResource •  TimeSpan Typed Blank Node Memento: Time Travel for the Web 148 Updated Technical Details (03/2010)
    • Memento Ontology: Relationships
 •  timeGateFor subject: TimeGate object: OriginalResource •  hasTimeGate subject: OriginalResource object: TimeGate •  mementoFor subject: Memento object: OriginalResource •  covers subject: TimeGate object: TimeSpan •  observedOver subject: Memento object: TimeSpan •  validOver subject: Memento object: TimeSpan Memento: Time Travel for the Web 149 Updated Technical Details (03/2010)
    • Memento Ontology: Properties
 •  start subject: TimeSpan type: datestamp •  end subject: TimeSpan type: datestamp •  observations subject: TimeSpan type: integer Memento: Time Travel for the Web 150 Updated Technical Details (03/2010)
    • Ontologies
 Memento - mem: http://www.mementoweb.org/terms/tb/ Generic/Specific Resource – gen: http://www.w3.org/2006/gen/ont Identity of Resource on the Web – irw: http://ontologydesignpatterns.org/ont/web/irw.owl Object Reuse & Exchange – ore: http://www.openarchives.org/ore/terms/ Dublin Core – dc: http://purl.org/dc/elements/1.1/ Memento: Time Travel for the Web 151 Updated Technical Details (03/2010)
    • Sample TimeMap in RDF/XML
 <rdf:RDF> <mem:TimeMap rdf:about="http://mementoproxy.lanl.gov/ia/timemap/rdf/http://www.archive.org/"> <ore:describes> <mem:TimeBundle rdf:about="http://mementoproxy.lanl.gov/ia/timebundle/http://www.archive.org/"> <ore:aggregates> <mem:OriginalResource rdf:about="http://www.archive.org/"/> </ore:aggregates> <ore:aggregates> <mem:TimeGate rdf:about="http://mementoproxy.lanl.gov/ia/timegate/http://www.archive.org/"> <mem:timeGateFor rdf:resource="http://www.archive.org/"/> <mem:covers> <mem:TimeSpan> <mem:start>1999-10-11T06:44:03 GMT</mem:start> <mem:end>2008-07-19T08:52:28 GMT</mem:end> </mem:TimeSpan> </mem:covers> </mem:TimeGate> </ore:aggregates> <ore:aggregates rdf:resource="http://web.archive.org/web/19971011064403/http://www.archive.org/"/> … 152
    • How does Memento do This? There are two components to the Memento Solution: •  Component 1: Navigation towards an archived resource via its original resource, by leveraging Done content negotiation. •  Component 2: A discovery API for archives that allows requesting a list of all archived versions it Done holds for a resource with a given URI. Memento: Time Travel for the Web 153 Updated Technical Details (03/2010)
    • Memento in a non-Memento Web … Memento: Time Travel for the Web 154 Updated Technical Details (03/2010)
    • Memento and Client Development •  Browser plug-in must use different HTTP request/response cycle when in time travel mode. •  Browser plug-in needs to be more or less aware of its state in the chain Original Resource => TimeGate => Memento •  Interesting user interface challenges, among others related to time-distribution of Mementos embedded in encompassing Memento, e.g. images in HTML page. Memento: Time Travel for the Web 155 Updated Technical Details (03/2010)
    • Memento and Web Archives •  Web Archives rewrite URLs in archived pages, in order to avoid: o  Serving current representations of embedded resources; o  Linking to current representations of resources •  The upside: Archived pages are self-contained. •  The downside: o  Cannot navigate beyond the archive’s content; o  Other servers (archives or original) may have appropriate version of (missing) embedded or linked resource. •  Memento does not require URL-rewriting. Memento: Time Travel for the Web 156 Updated Technical Details (03/2010)
    • BBC home page from Internet Archive; URL rewriting Memento: Time Travel for the Web 157 Updated Technical Details (03/2010)
    • Embedded & linked resources still available at BBC site Memento: Time Travel for the Web 158 Updated Technical Details (03/2010)
    • BBC home page from Internet Archive; no URL-rewriting Memento: Time Travel for the Web 159 Updated Technical Details (03/2010)
    • Standardization •  Link relationships original, timegate, timebundle, memento, first-memento, last-memento, prev-memento, next-memento will be registered as per upcoming HTTP Link header RFC. •  Headers Accept-Datetime, Content-Datetime will be registered in the provisional registry for Message Header Fields as per RFC 3864. •  A process will be initiated aimed at publishing an RFC specifying the Memento solution. •  TimeGate URI syntax convention for Web archives will be discussed in the context of International Internet Preservation Consortium. Memento: Time Travel for the Web 160 Updated Technical Details (03/2010)
    • Towards Acceptance … Memento: Time Travel for the Web 161 Updated Technical Details (03/2010)
    • Towards Acceptance: Hyping Memento: Time Travel for the Web 162 Updated Technical Details (03/2010)
    • Towards Acceptance: Discussing http://efoundations.typepad.com/ efoundations/2009/11/memento-and- negotiating-on-time.html Is the Memento proposal OK from the perspective of the Architecture of the World Wide Web, and REST? Resulted in some adjustments to the proposed framework. Memento: Time Travel for the Web 163 Updated Technical Details (03/2010)
    • Towards Acceptance: Discussing http://www.mementoweb.org/events/ IA201002/ Two day discussion with Internet Archive, California Digital Library, LoCKSS, Library of Congress about Memento. Resulted in some adjustments to the proposed framework. Resulted in commitment by all represented archives to deploy experimental Memento support. Memento: Time Travel for the Web 164 Updated Technical Details (03/2010)
    • Towards Acceptance: Discussing http://groups.google.com/group/memento- dev Discussion list regarding Memento Resulted in some adjustments to the proposed framework. Memento: Time Travel for the Web 165 Updated Technical Details (03/2010)
    • Towards Acceptance: Thinking http://www.open.ac.uk/blogs/telstar/ 2009/11/24/the-when-of-the-web/ Use Memento to go from formal citation of Web page (URL, datetime) to appropriate archival version of the Web page. Memento: Time Travel for the Web 166 Updated Technical Details (03/2010)
    • Towards Acceptance: Developing •  Apache plug-in rule that adds Link header to TimeGate on HTTP HEAD/GET requests to Original Resources. •  http://mementoweb.org/tools/apache •  Memento plug-in for the MediaWiki platform. o  http://www.mediawiki.org/wiki/Extension:Memento o  Working towards community acceptance. o  Started similar process for Drupal. Memento: Time Travel for the Web 167 Updated Technical Details (03/2010)
    • Towards Acceptance: Developing •  Created demonstration client: o  FireFox plug-in: http://www.mementoweb.org/tools/ (many thanks to Sam Adams, Cambridge University) o  Currently working on plug-in for Internet Explorer Memento: Time Travel for the Web 168 Updated Technical Details (03/2010)
    • Towards Acceptance: Ongoing •  JISC funded developer contest for the creation of Memento- based prototype demonstrators: http://wiki.2010.dev8d.org/w/ Talk_5 •  The Memento Team will engage in a funded, collaborative agreement with the Library of Congress for: o  Standardization (I-D => RFC). o  Outreach. o  Research. o  Software development. Memento: Time Travel for the Web 169 Updated Technical Details (03/2010)
    • Some Interesting Consequences of Memento … Memento: Time Travel for the Web 170 Updated Technical Details (03/2010)
    • Memento and Resource Persistence (1) •  URI-R vanishes, but the server that used to serve it is still operational: o  The server should still include a HTTP Link header with rel="timegate" pointing at a TimeGate for URI-R, irrespective of whether the client issues a DT-conneg request or not. This allows seamless access to a Memento of URI-R, even if the server no longer hosts the original. o  If the server does not include a HTTP Link header pointing at a TimeGate for URI-R, the client resorts to interaction with archives (or with an Aggregator) and arrives at the most recent Memento of the resource. Memento: Time Travel for the Web 171 Updated Technical Details (03/2010)
    • Memento and Resource Persistence (2) •  A domain vanishes: o  The client is looking for a current representation of URI-R that was hosted by the domain, but fails. o  The client resorts to interaction with archives (or with an Aggregator) and arrives at the most recent Memento of the resource. Memento: Time Travel for the Web 172 Updated Technical Details (03/2010)
    • Memento and Resource Persistence (3) •  A domain is taken over by a new custodian: o  The new custodian adheres to other policies regarding which archive to redirect a DT-conneg request. o  The client understands from the first-memento/last- memento HTTP Link header of that archive of choice, that it does not cover the time range in which the previous custodian operated the domain. o  The client resorts to interaction with other archives (or with an Aggregator) and arrives at an appropriate Memento. Memento: Time Travel for the Web 173 Updated Technical Details (03/2010)
    • Memento and Resource Versioning (1) Resource state may evolve over time. Requiring a URI owner to publish a new URI for each change in resource state would lead to a significant number of broken references. For robustness, Web architecture promotes independence between an identifier and the state of the identified resource. From: The Architecture of the World Wide Web, http:// www.w3.org/TR/webarch/ Memento: Time Travel for the Web 174 Updated Technical Details (03/2010)
    • Memento and Resource Versioning (2) But there are many use cases that require resource versioning, including community-based content creation, scientific communication, open government, etc. How does resource versioning work currently? How can it work in a Memento Web? Paper at http://arxiv.org/abs/1003.3661 Memento: Time Travel for the Web 175 Updated Technical Details (03/2010)
    • Current Resource Versioning (3) •  Version Identification: HTTP URIs •  Versioning Strategy: new URI for new version •  Version Relationships: RDF or HTTP Links •  Version Datetime: RDF Memento: Time Travel for the Web 176 Updated Technical Details (03/2010)
    • Memento and Resource Versioning (4) •  Version Identification: HTTP URIs •  Versioning Strategy: stable , cool URI for "current" version; new URI for old version •  Version Relationships: HTTP Links, HTTP datetime conneg •  Version Datetime: HTTP Content-Datetime response header Memento: Time Travel for the Web 177 Updated Technical Details (03/2010)
    • Memento and Non-Information Resources (1) Current description of URI-R HTTP Non-Information URI-R 303 URI-S Information resource resource Paper at http://arxiv.org/abs/1003.3661 Memento: Time Travel for the Web 178 Updated Technical Details (03/2010)
    • Memento and Non-Information Resources (2) Current description of URI-R HTTP Non-Information URI-R 303 URI-S Information resource resource HTTP LINK HEADER Past timegate Description of URI-R DT-conneg TimeGate URI-G URI-M Memento Memento: Time Travel for the Web 179 Updated Technical Details (03/2010)
    • Memento and Non-Information Resources (3) •  DBpedia subject URI e.g. http://dbpedia.org/resource/France leads to current description of the subject. •  Archive of prior descriptions of DBpedia subject URIs implemented at LANL: o  Archive exposes a TimeGate per DBpedia subject URI e.g. http://mementoarchive.lanl.gov/dbpedia/timegate/http:// dbpedia.org/resource/France o  These TimeGates support DT-conneg. •  DBpedia provides HTTP Link header with rel="timegate" pointing at these TimeGates. •  Result: Clients can access current and prior descriptions using "follow your nose" HTTP navigation. •  Proof-of-Concept: "follow your nose" time-series analysis across DBpedia versions. Memento: Time Travel for the Web 180 Updated Technical Details (03/2010)
    • Memento and Non-Information Resources (4) Time-Series analysis across DBpedia versions Memento: Time Travel for the Web 181 Updated Technical Details (03/2010)
    • Memento and Time-Persistent Web Annotations Paper at http://arxiv.org/abs/1003.2643 Memento: Time Travel for the Web 182 Updated Technical Details (03/2010)
    • Memento wants to make navigating the Web’s Past Easy http://www.mementoweb.org http://groups.google.com/group/memento-dev Memento: Time Travel for the Web 183 Updated Technical Details (03/2010)