Check if incoming Request can be accepted
This use case tests if an incoming LocalRequest can be accepted with the given parameters without actually accepting it.
This is great for checking if all required information of a Request was filled out in order to accept it, e.g. to update a user interface with the respective errors (and render an “Accept Button” as disabled) as long as there are errors.
Parameters
- The
id
of the incoming Request. - The decision for each individual RequestItem expressed as the appropriate Parameters defined in the Data Model.
On Success
- Returns a
RequestValidationResult
that indicates if the Request can be accepted with the given parameters.
On Failure
- The decisions do not match the RequestItems.
- The decisions and values of respective RequestItems do not match the requested or required values, e.g. an email address is wrong.
- A RequestItem that has the
mustBeAccepted
field set totrue
was not accepted or left blank. - A RequestItem of a Request cannot be accepted if its acceptance would lead to the creation of a RelationshipAttribute with the same
key
,owner
andvalue.@type
as a RelationshipAttribute that already exists in the context of the Relationship to thepeer
that sent the Request. The corresponding Request can therefore not be accepted if the RequestItem in question hasmustBeAccepted
set totrue
. However, ifmustBeAccepted
is set tofalse
, the Request can still be accepted by rejecting the RequestItem.