...
- Must indicate TimeMap in the same way it indicates the Container interaction model of the resource via HTTP headers. See: https://fcrepo.github.io/fcrepo-specification/#general-3
- Must return Vary-Post and Vary-Put with value 'Memento-Datetime'.
Enable Versioning on an Existing LDPR
A PUT request to an Existing LDPR will make a resource versionable if it includes header Link: rel="type" with type of http://fedora.info/definitions/fcrepo#VersionedResource
The versioning type will be added to the LDPR, making it a LDPRv.
A LDPCv will be created for the LDPRv
A LDPRm will be generated, contained by the LDPCv.
Enable Versioning on a new LDPR
A PUT or POST request to create an object will make a resource versionable if it includes header Link: rel="type" with type of http://fedora.info/definitions/fcrepo#VersionedResource
A LDPR will be created as a LDPRv with the versioning type.
A LDPCv will be created
A LDPRm will be generated, contained by the LDPCv.
Restore a LDPRm
Discusssion of the details for this feature are still ongoing at https://github.com/fcrepo/fcrepo-specification/issues/217
Answered questions
- 4.1.1 Should the "timegate" link only be present when an object is versioned or should all LDPR that could be versioned provide this link?
- Yes, it should always be present
- This seems to imply that all resources are LDPRv's from the start
4.3.1 Why does each memento need a separate TimeMap to be created, rather than sharing one for all of the LDPRv and LDPRm of one LDPR?- This was a misinterpretation. In the modeshape implementation, currently the timemap is the fcr:versions endpoint.
4.3.1 LDPCv must not be contained by the LDPRvdoes that mean that fcr:versions will no longer be a subpath of the LDPR?- This only applies to ldp:contains, the uri is irrelevant
- 4.1.2 The Fcrepo spec doesn't mention it directly, but is there a conflict between the Memento "Content-Location" header and External File's "Content-Location"? Can they both appear in the same response?
- External File Content-Location header just appears on LDP-NR HEAD/GET requests, while Memento uses the header for responses from LDPRm and maybe LDPRv, both of which are LDP-RS's. So the headers should not both appear on the same response
- 4.3.1 How do you determine what serializations are available for TimeMaps? HEAD is not currently supported and is not in the Memento spec.
- GET response formats are not actually listed in any other requests, only for Post and Patch.
- However, it would likely be helpful to include info about HEAD and GET requests in the spec
...