메멘토 프로젝트

Memento Project
메멘토 로고

Memento는 웹 아카이브 콘텐츠를 보다 쉽게 검색할 수 있도록 하기 위한 미국 NDIIPP(National Digital Information Infrastructure and Reservation Program)의 자금 지원 프로젝트다.

이 프로젝트는 로스 알라모스 국립 연구소올드 도미니언 대학이 주도하고 있다.

사람들이 증가하는 웹 아카이브의 수에 대해 알고, 그들이 찾고 있는 리소스의 이전 버전을 저장할 수 있는 아카이브를 예상하기보다는, 메멘토는 검색자가 이미 알고 있는 원래 URL을 통해 아카이브된 콘텐츠를 검색 가능하게 만들 것을 제안한다. 본질적으로, 메멘토는 사용자들이 과거 주어진 날짜에서 보았던 것처럼 어떤 웹 페이지라도 볼 수 있도록 하기 위한 시도다.

기술 설명

다양한 웹 아카이브가 존재하며, 특정 시점에 존재했던 웹 페이지의 구체적인 수정사항을 수집한다. Memento는 사용자가 원하는 페이지의 날짜/시간과 일치하는 최상의 보관 페이지를 찾기 위해 이러한 보관 파일 사이를 원활하게 전환할 수 있도록 한다.

메멘토는 RFC 7089에서[1] 1996년버너스 리가 정의한 콘텐츠 협상 시간 차원의 구현으로 정의된다.[2] HTTP는 헤더를 통해 콘텐츠 협상을 수행한다. 아래 표는 클라이언트와 서버가 사용자가 원하는 콘텐츠를 찾을 수 있도록 HTTP에 사용할 수 있는 서로 다른 헤더를 보여준다.

HTTP가 제공하는 콘텐츠 협상 규모
요청 헤더 응답 헤더 치수 참조
받아들이다 내용 유형 표현의 내용 유형 문자/문자

텍스트/메시지 이미지/png

RFC 7231[3]

RFC 2616

수락 언어 콘텐츠 언어 대표 언어

미국 내 cz

RFC 7231

RFC 2616

승인-인코딩 콘텐츠-인코딩 콘텐츠가 암호화되어 있는 중간, 일반적으로 압축 압축하다

지퍼의 공기를 빼다

RFC 7231

RFC 2616

승인-차르셋 내용 유형 웹페이지에서 사용하는 문자 집합 이소-8859-5

유니코드-1-1

RFC 7231

RFC 2616

수락-데이타임 메멘토-다테타임 대표 시간 2014년 8월 15일 금요일 13:43:03

GMT

RFC 7089

Memento는 클라이언트가 서버에 날짜를 제공할 수 있도록 요청 헤더를 제공하며, 서버는 해당 날짜에 가장 잘 보관된 페이지 버전을 제공할 수 있다. 이것을 datetime 협상이라고 한다.

메멘토를 완전히 이해하려면 HTTP가[4] 제공하는 헤더가 특정 버전의 웹페이지가 존재할 때 반드시 반영되는 것은 아니라는 것을 깨달아야 한다. 또한 헤더가 존재하지 않는 경우도 있다. 더 많은 정보를 제공하기 위해, 헤더를 도입하여 웹 페이지의 특정 표현이 웹에서 관찰된 시기를 표시하였다.[5]

This diagram shows how Memento uses a TimeGate (URI-G) to find the best archived page (URI-M) for a user, given the original resource (URI-R) and a datetime.

위의 도표는 메멘토가 사용자가 제공하는 datetime에 가장 잘 보관된 웹 페이지를 찾는 3단계 과정을 보여준다. 이 과정은 다음과 같이 작용한다.

  1. Memento 클라이언트는 링크 헤더에서 타임게이트(URI-G)에 대한 정보를 반환할지 여부를 확인하기 위해 원래 리소스에 연락한다.
  2. 그런 다음, Memento 클라이언트는 요청 헤더를 사용하여 사용자가 원하는 날짜/시간을 이전 단계에서 발견한 URI-G에 제출한다. 웹 상의 대부분의 리소스는 아직 URI-G를 반환하지 않으므로 대부분의 메멘토 클라이언트는 이 단계를 수행하기 위해 미리 정의된 TimeGate 목록을 사용한다. 그런 다음 TimeGate는 302 리디렉션 상태 코드와 헤더를 반환하여 클라이언트에게 아카이브된 리소스(URI-M)를 찾을 위치를 알려준다.
  3. 그런 다음 Memento 클라이언트는 다른 웹 페이지와 마찬가지로 아카이브된 리소스(URI-M)를 요청한다. URI-M에 대한 응답은 웹에서 언제 관찰됐는지를 나타내는 것을 포함하고 있다.

이러한 방식으로 메멘토는 HTTP의 기존 인프라를 활용하여 사용자가 원하는 날짜/시간과 URI를 기반으로 최고의 아카이브 웹 페이지를 찾는 목표를 달성한다.

사용법

웹 브라우저에서 원하는 페이지의 전체 URL로 대체하여 링크 형식으로 이동하면 페이지 복사본을 찾을 수 있다.[6]

메멘토에 대한 JSON 설명:

http://timetravel.mementoweb.org/api/json/YYYY/urltoarchive
http://timetravel.mementoweb.org/api/json/YYYYMM/urltoarchive
http://timetravel.mementoweb.org/api/json/YYYYMMDD/urltoarchive
http://timetravel.mementoweb.org/api/json/YYYYMMDDHH/urltoarchive
http://timetravel.mementoweb.org/api/json/YYYYMMDDHHMM/urltoarchive
또는

원하는 날짜/시간에 가까운 날짜/시간을 가진 메멘토로 리디렉션:

http://timetravel.mementoweb.org/memento/YYYY/urltoarchive
http://timetravel.mementoweb.org/memento/YYYYMM/urltoarchive
http://timetravel.mementoweb.org/memento/YYYYMMDD/urltoarchive
http://timetravel.mementoweb.org/memento/YYYYMMDDHH/urltoarchive
http://timetravel.mementoweb.org/memento/YYYYMMDDHHMM/urltoarchive

참조

  1. ^ RFC 7089: 리소스 상태에 대한 시간 기반 액세스를 위한 HTTP 프레임워크 - 메멘토
  2. ^ 버너스 리, 팀 "웹 아키텍처: 일반 리소스". 월드 와이드 웹 컨소시엄 (W3C). 1996. http://www.w3.org/DesignIssues/Generic 웨이백 머신에 2015-06-02 보관
  3. ^ RFC 7231: 하이퍼텍스트 전송 프로토콜(HTTP/1.1): 의미론 및 내용
  4. ^ RFC 7232: 하이퍼텍스트 전송 프로토콜(HTTP/1.1): 조건부 요청
  5. ^ 넬슨, 마이클 L. "2010-11-05: Memento-Datetime은 Last-Modified가 아니다." Web Science and Digital Libraries Research Group. 2010년 11월 5일. http://ws-dl.blogspot.com/2010/11/2010-11-05-memento-datetime-is-not-last.html 웨이백 머신2015-05-19년 보관
  6. ^ "Time Travel APIs". timetravel.mementoweb.org. Archived from the original on 2018-05-21. Retrieved 2018-05-15.

외부 링크