It is required to use the same endpoint as the regular deposit.
Although, it might be challenging to do so, since the metadata deposit requires a SWHID and the process that follows is quite different from the deposit.
Although, it might be challenging to do so, since the metadata deposit requires a SWHID and the process that follows is quite different from the deposit.
Maybe not so much in the end, we could use the slug ("suggested identifier").
Quoting the linked page:
The client MAY supply a Slug header providing a suggested identifier for the deposited content
If that slug is a SWHID (and it exists), then we infer the deposit client wants a metadata only deposit and progress as such.
After a talk with Bruno and Yannick on HAL, they say that depositing metadata is: 6.5.2. Replacing the Metadata of a Resource
because the resource already exists on SWH and this should be a PUT of new (maybe new from scratch) metadata on an existing identifier (SWHID).
That's true if you consider the graph sub-dag to be the Resource. I assumed at Resource to be the deposit itself; but re-reading the SWORDv2 spec, it's not obvious which one is the right interpretation.
Stefano Zacchirolichanged title from Extend software deposit endpoint to enable only metadata deposits to Extend software deposit endpoint to support metadata-only deposits
changed title from Extend software deposit endpoint to enable only metadata deposits to Extend software deposit endpoint to support metadata-only deposits
Morane Otilia Gruenpeterchanged title from Extend software deposit endpoint to support metadata-only deposits to Extend new deposit endpoint to support metadata-only deposits
changed title from Extend software deposit endpoint to support metadata-only deposits to Extend new deposit endpoint to support metadata-only deposits
! In T2312#47921, @moranegg wrote:
After this morning's meeting with @vlorentz and @ardumont:
We will keep the metadata-only deposit specs with the idea of a separate namespace swh for which we need to write the schema (not sure we have that).
This way, the xml with metadata has a section where the identified artifact is mentioned:
Reference a snapshot, revision or release:
With ${type} in {snp (snapshot), rev (revision), rel (release) }:<swh:deposit> <swh:reference> <swh:object id="swh:1:${type}:aaaaaaaaaaaaaa..."/> </swh:reference></swh:deposit>
We need to add to the list of types: directory and content
The possibility to deposit metadata on an origin should be implemented as well, but is not suited for institutional repositories (e.g HAL).
Reference an origin:
1. The metadata-only deposit is sent via SWORD protocol with a POST request the same as a classic deposit to a client's collection (see here https://docs.softwareheritage.org/devel/swh-deposit/spec-api.html#create-deposit)2. The metadata-only deposit is composed from ONLY one xml file containing all metadata3. It MUST comply to the metadata requirements in https://docs.softwareheritage.org/devel/swh-deposit/metadata.html4. It MUST reference an **object** or an **origin** in a deposit tag5. The reference SHOULD exist in the SWH archive (to verify with upper management)6. The **object** reference MUST be a SWHID on one of the following artifact types: - snapshot - release - revision - directory - content7. The SWHID MAY be simple (core SWHID) 8. The SWHID MAY be complex with context (adding classifiers as documented here https://docs.softwareheritage.org/devel/swh-model/persistent-identifiers.html)8. The SWHID MUST NOT reference a fragment of code with the classifier `lines`