Using the Memento MediaWiki Extension to Avoid Spoilers Shawn M. Jones sjone@cs.odu.edu Old Dominion...

Post on 11-Dec-2015

215 views 2 download

Tags:

Transcript of Using the Memento MediaWiki Extension to Avoid Spoilers Shawn M. Jones sjone@cs.odu.edu Old Dominion...

Using the Memento MediaWiki Extension to

Avoid Spoilers

Shawn M. Jonessjone@cs.odu.edu

Old Dominion University

How many of us watch?

Getting Info On Our Favorite Fiction

All of these are wikis!

All of these wikis run MediaWiki!

The ProblemWe haven’t caught up because of a job/ailing mother/bar crawl/life.

The Problem

Wait, he’s dead?

How do we avoid these spoilers?

We haven’t caught up because of a job/ailing mother/bar crawl/life.

Current “Solution”Post a big SPOILER ALERT on the page

I haven’t caught up. Is this Wiki even useful to me until I catch up?

I’m afraid to use this site now.

Site owners may be losing ad revenue because visitors turn away.

The solutionRFC 7089 describes the Memento Protocol

Memento Chrome Extensionby Los Alamos National Laboratory (LANL)

User installs in browser

Memento MediaWiki Extensionby Old Dominion University and LANL

Site administrator installs in MediaWiki

Simplified Memento Overview

DEMO

• Let’s avoid some spoilers with A Song Of Ice and Fire…

http://ws-dl-05.cs.odu.edu/demo/index.php/Kevan_Lannister

https://www.youtube.com/watch?v=tb0g5D5LTiU

DEMO Screenshots

We want to find information about Kevan Lannister, but haven’t read the book A Dance with Dragons yet. We set the Memento Chrome Extension prior to the release of that book: June 29, 2011.

DEMO Screenshots

We use the Memento Chrome Extension to request a revision of the page close to, but not over, our requested date.

DEMO Screenshots

And we get the revision of the page closest, but not over, the date requested.

DEMO Screenshots

And, as you can see, this revision of the page has no information aboutA Dance With Dragons.

DEMO Screenshots

And that’s not all… I can browse the rest of the site, spoiler-free.

DEMO Screenshots

Here’s the past revision of the page about Tommen Baratheon, as linked to, from the Kevan Lannister page, and still close to, but not over, our requested date.

Summary

• Wikis contain the past revision of ever page• Today’s fiction has given rise to fan wikis• For topics that have evolving information,

Memento can provide a way to avoid spoilers• If the Memento MediaWiki Extension is

installed on your fan-based wiki, then users with the Memento Chrome Extension will be able to avoid spoilers!

Resources• Memento Protocol: http://tools.ietf.org/html/rfc7089• Memento Website: http://www.mementoweb.org/• Memento MediaWiki Extension:

http://www.mediawiki.org/wiki/Extension:Memento• Memento Chrome Extension:

http://bit.ly/memento-for-chrome

• More details:http://ws-dl.blogspot.com/2013/12/2013-12-18-avoiding-spoilers-with.html

• Demo:https://www.youtube.com/watch?v=ciClYjTnscs

• Contact me: sjone@cs.odu.edu

Backup slides

Other uses for the Memento MediaWiki Extension

Evolving laws and legal discourse

Past software contributions (Folding@Home)

Changing relationship between organizations (ICANN vs. Verisign)

Memento Extension vs. Manually Getting Page Revision

Why do it when Memento will do it for you?

This is very time consuming.

Memento let’s you browse through the whole web with a given date!

Memento Extension vs. MediaWiki APIJSON:{"revid":607345961,"parentid":607210719,"timestamp":"2014-05-06T16:07:52Z”}

XML:<rev revid="607519915" parentid="607345961" user="Marklemagne" timestamp="2014-05-07T19:00:26Z"/>

Only a custom MediaWiki client can turn these oldid entries into URIs.

Memento is a web standard way of accessing old web resources and is already implemented for many different applications (web archives, etc.)

Memento Extension vs. MediaWiki APILink: <http://ws-dl-05.cs.odu.edu/demo-302-recommended-relations/index.php/Daenerys_Targaryen>; rel="original latest-version",

<http://ws-dl-05.cs.odu.edu/demo-302-recommended-relations/index.php/Special:TimeGate/Daenerys_Targaryen>; rel="timegate",

<http://ws-dl-05.cs.odu.edu/demo-302-recommended-relations/index.php/Special:TimeMap/Daenerys_Targaryen>; rel="timemap"; type="application/link-format"; from="Sun, 22 Apr 2007 15:01:20 GMT"; until="Fri, 27 Sep 2013 20:48:24 GMT",

<http://ws-dl-05.cs.odu.edu/demo-302-recommended-relations/index.php?title=Daenerys_Targaryen&oldid=1499>; rel="first memento"; datetime="Sun, 22 Apr 2007 15:01:20 GMT",

<http://ws-dl-05.cs.odu.edu/demo-302-recommended-relations/index.php?title=Daenerys_Targaryen&oldid=107643>; rel="last memento"; datetime="Fri, 27 Sep 2013 20:48:24 GMT"

Memento also follows the RESTful principle of “follow your nose”, indicating additional resources to access from here.

Memento Extension vs. Internet Archive

The Internet Archive only gets some of the revisions of a given page.

MediaWiki has all of the revisions of a given page.

Memento Extension vs. Other MediaWiki Time Travel Extensions

While these extensions just work for MediaWiki, Memento works for the entire web.

With the Memento extensions, one can browse the entire web spoiler free by seamlessly accessing web archives and other resources through Memento.

Sample URI-R (Step 1) HTTP Response

HTTP/1.1 200 OKDate: Sun, 25 May 2014 21:39:02 GMTServer: ApacheX-Content-Type-Options: nosniffLink: http://ws-dl-05.cs.odu.edu/demo/index.php/Daenerys\_Targaryen; rel="original latest-version",

http://ws-dl-05.cs.odu.edu/demo/index.php/Special:TimeGate/Daenerys\_Targaryen; rel="timegate",

http://ws-dl-05.cs.odu.edu/demo/index.php/Special:TimeMap/Daenerys\_Targaryen; rel="timemap”; type="application/link-format”Content-language: enVary: Accept-Encoding,CookieCache-Control: s-maxage=18000, must-revalidate, max-age=0Last-Modified: Sat, 17 May 2014 16:48:28 GMTConnection: closeContent-Type: text/html; charset=UTF-8

Sample URI-G (Step 2) HTTP Response

HTTP/1.1 302 FoundDate: Sun, 25 May 2014 21:43:08 GMTServer: ApacheX-Content-Type-Options: nosniffVary: Accept-Encoding, Accept-DatetimeLocation: http://ws-dl-05.cs.odu.edu/demo/index.php?title=Daenerys_Targaryen&oldid=1499Link: <http://ws-dl-05.cs.odu.edu/demo/index.php/Special:TimeMap/Daenerys_Targaryen>; rel="timemap”; type="application/link-format",

<http://ws-dl-05.cs.odu.edu/demo/index.php/Daenerys_Targaryen>; rel="original latest-version”Connection: closeContent-Type: text/html; charset=UTF-8

Sample URI-M (Step 3) HTTP Response

HTTP/1.1 200 OKDate: Sun, 25 May 2014 21:46:12 GMTServer: ApacheX-Content-Type-Options: nosniffMemento-Datetime: Sun, 22 Apr 2007 15:01:20 GMTLink: <http://ws-dl-05.cs.odu.edu/demo/index.php/Daenerys_Targaryen>; rel="original latest-version”,

<http://ws-dl-05.cs.odu.edu/demo/index.php/Special:TimeGate/Daenerys_Targaryen>; rel="timegate”,

<http://ws-dl-05.cs.odu.edu/demo/index.php/Special:TimeMap/Daenerys_Targaryen>; rel="timemap”; type="application/link-format”Content-language: enVary: Accept-Encoding,CookieExpires: Thu, 01 Jan 1970 00:00:00 GMTCache-Control: private, must-revalidate, max-age=0Connection: closeContent-Type: text/html; charset=UTF-8