Summary
Extend the query/response data model so that a client can query for specific artifacts (e.g. CoRIM documents) by directly specifying their ID and media type, and make it straightforward to unpick those items from the response.
Details
There is a use case for CoSERV where the client simply wants to pull a specific set of documents from the provider, and explicitly knows the identities of those documents in advance. These identities could be CoRIM/CoMID/CoSWID identifiers, for example. It should be possible to make a CoSERV query based on one or more of those identities. It should also be easy for the client to locate those documents in the result set once the query has been fulfilled.
The data model (CDDL) would need two changes:
- An extension to the
environment-selector-map type. This type currently has three mutually-exclusive variants, supporting queries by instance, group or class. This change will introduce a fourth variant, to select based on an artifact ID and a media type.
- A change to the
results type such that the source-artifacts field is structured as a collection rather than an array. The collection would be keyed on the artifact ID (e.g. CoRIM/CoMID/CoSWID ID), which would allow the client to locate the individual results more easily.
Summary
Extend the query/response data model so that a client can query for specific artifacts (e.g. CoRIM documents) by directly specifying their ID and media type, and make it straightforward to unpick those items from the response.
Details
There is a use case for CoSERV where the client simply wants to pull a specific set of documents from the provider, and explicitly knows the identities of those documents in advance. These identities could be CoRIM/CoMID/CoSWID identifiers, for example. It should be possible to make a CoSERV query based on one or more of those identities. It should also be easy for the client to locate those documents in the result set once the query has been fulfilled.
The data model (CDDL) would need two changes:
environment-selector-maptype. This type currently has three mutually-exclusive variants, supporting queries by instance, group or class. This change will introduce a fourth variant, to select based on an artifact ID and a media type.resultstype such that thesource-artifactsfield is structured as a collection rather than an array. The collection would be keyed on the artifact ID (e.g. CoRIM/CoMID/CoSWID ID), which would allow the client to locate the individual results more easily.