Are there plans to cooperate with Memento protocol

InterPlanetary Wayback (ipwb) interfaces with IPFS and serves captures using the Memento protocol.

Memento ties in heavily with an extended version of the the Web Linking spec (RFC5988), particularly with TimeMaps of original resources, e.g.,

<https://ipfs.io>; rel="original",
<http://localhost:1208/timemap/link/https://ipfs.io>; rel="self"; type="application/link-format",
<http://web.archive.org/web/20140610003600/http://www.ipfs.io:80/>; rel="first memento"; datetime="Tue, 10 Jun 2014 00:36:00 GMT",
<http://web.archive.org/web/20140716102622/http://ipfs.io:80/>; rel="memento"; datetime="Wed, 16 Jul 2014 10:26:22 GMT",
...
<http://web.archive.org/web/20170523094036/https://ipfs.io/>; rel="memento"; datetime="Tue, 23 May 2017 09:40:36 GMT",
<http://web.archive.org/web/20170523094036/https://ipfs.io/>; rel="last memento"; datetime="Tue, 23 May 2017 09:40:36 GMT",
<http://localhost:1208/timemap/link/https://ipfs.io>; rel="timemap"; type="application/link-format",
<http://localhost:1208/timemap/json/https://ipfs.io>; rel="timemap"; type="application/json",
<http://localhost:1208/timemap/cdxj/https://ipfs.io>; rel="timemap"; type="application/cdxj+ors",
<http://localhost:1208/timegate/https://ipfs.io>; rel="timegate"

The latter was produced with a local instance of MemGator [1], an open source Memento aggregator. MemGator also supports the CDXJ [2] format (and JSON) for TimeMaps. A CDXJ format looks like:

@context ["http://tools.ietf.org/html/rfc7089"]
@id {"uri": "http://localhost:1208/timemap/cdxj/https://ipfs.io"}
@keys ["memento_datetime_YYYYMMDDhhmmss"]
@meta {"original_uri": "https://ipfs.io"}
@meta {"timegate_uri": "http://localhost:1208/timegate/https://ipfs.io"}
@meta {"timemap_uri": {"link_format": "http://localhost:1208/timemap/link/https://ipfs.io", "json_format": "http://localhost:1208/timemap/json/https://ipfs.io", "cdxj_format": "http://localhost:1208/timemap/cdxj/https://ipfs.io"}}
20140610003600 {"uri": "http://web.archive.org/web/20140610003600/http://www.ipfs.io:80/", "rel": "first memento", "datetime": "Tue, 10 Jun 2014 00:36:00 GMT"}
20140716102622 {"uri": "http://web.archive.org/web/20140716102622/http://ipfs.io:80/", "rel": "memento", "datetime": "Wed, 16 Jul 2014 10:26:22 GMT"}
20140819133040 {"uri": "http://web.archive.org/web/20140819133040/http://ipfs.io:80/", "rel": "memento", "datetime": "Tue, 19 Aug 2014 13:30:40 GMT"}
20140917113514 {"uri": "http://archive.is/20140917113514/http://ipfs.io/", "rel": "memento", "datetime": "Wed, 17 Sep 2014 11:35:14 GMT"}
...
20170523094036 {"uri": "http://web.archive.org/web/20170523094036/https://ipfs.io/", "rel": "memento", "datetime": "Tue, 23 May 2017 09:40:36 GMT"}
20170523094036 {"uri": "http://web.archive.org/web/20170523094036/https://ipfs.io/", "rel": "last memento", "datetime": "Tue, 23 May 2017 09:40:36 GMT"}

In IPWB we use the JSON block in CDXJ entries to store the IPFS hash of the payload and HTTP headers as extracted from a WARC [3] file. Doing this allows us to associate the hashes with both the URI of original resource (URI-R in Memento nomenclature) and datetime.


I was told “New users can only post 2 links”, so here’s the source 'd inline above.

[1] https://github.com/oduwsdl/memgator
[2] https://link.springer.com/article/10.1007/s00799-016-0184-4
[3] https://www.iso.org/standard/44717.html