mementoweb / rfc-extensions

0 stars 0 forks source link

Option 3: An Alternative Proposal #6

Open ikreymer opened 7 years ago

ikreymer commented 7 years ago

Based on all the other comments and thoughts here, I wanted to suggest a new proposal, a variation on Option 1 as well as a few other things.

This proposal is optimized for the Memento Reconstruct and http://oldweb.today use case, and considers individual archives as well as aggregators. Using this system, it should be possible to implement aggregators which efficiently query archives that support raw mementos, while filtering out those that do not. Such an aggregator would be suitable for use with the Memento Reconstruct and http://oldweb.today services.

Values for Prefer/Preference-Applied

TimeGate

User makes a request with a preference: curl -H "Prefer: raw" -H "Accept-Datetime ..." "http://archive.example.com/timegate/http://example.com/"

TimeGate Aggregator

The aggregator TimeGate accepts a Prefer header and passes it on to each individual TimeGate.

TimeMap

TimeMap Aggregator

Memento

(Optional) Each URI-M includes a Preference-Applied describing the dimension of rawness (so far, just rewritten or raw), the same one as was returned by the TimeGate prior to the redirect, or listed in the TimeMap. The URI-M should not include a Vary: Prefer

Each URI-M can have one and only one Preference-Applied associated with it and it must not change based on any other header.