All C-FIND SCPs shall be capable of processing queries which meet the requirements of the "Worklist" Search (see K.184.108.40.206).
An SCP conveys the following semantics using the C-FIND requests and responses:
— The SCP is requested to perform a match of all the keys specified in the Identifier of the request, against the information it possesses. Attribute matching is performed using the key values specified in the Identifier of the C-FIND request as defined in Section K.2.
— The SCP generates a C-FIND response for each match using the "Worklist" Search method. All such responses shall contain an Identifier whose Attributes contain values from a single match. All such responses shall contain a status of Pending.
— When all matches have been sent, the SCP generates a C-FIND response which contains a status of Success. A status of Success shall indicate that a response has been sent for each match known to the SCP.
Notes: 1. No ID is contained in a response with a status of Success. For a complete definition, see PS 3.7.
2. When there are no matches, then no responses with a status of Pending are sent, only a single response with a status of Success.
— The SCP shall generate a response with a status of Refused or Failed if it is unable to process the request. A Refused or Failed response shall contain no Identifier.
— If the SCP receives C-FIND-CANCEL indication before it has completed the processing of the matches it shall interrupt the matching process and return a status of Cancel.
The following procedure is used to generate matches.
The key match strings contained in the Identifier of the C-FIND request are matched against the values of the Key Attributes for each worklist entity. For each entity for which the Attributes match all of the specified match strings, construct an Identifier. This Identifier shall contain all of the values of the Attributes for this entity which match those in the C-FIND request. Return a response for each such Identifier. If there are no matching keys, then there are no matches, return a response with a status equal to Success and with no Identifier.