You are asking about C-FIND request/response in Query/Retrieve Information Model.
With reference to Table C.6-4. Composite Object Instance Level Keys for the Patient Root Query/Retrieve Information Model in specifications, SOP Class UID is marked [O-Optional].
PS3.4 2021a - Service Class Specifications - C.6.1.1.5 Composite Object Instance Level
In the table:
- R = Required (SCP must return value)
- U = Unique Identifier (SCU must include this key in query; SCP must support match and return)
- O = Optional (SCU may pass empty attribute to request a value. SCP may return value if supported; not mandatory)
But, the important is the note section at the bottom of the table:
Note
- SOP Class UID (0008,0016) is an optional key, but it is strongly recommended that it always be returned by all SCPs, if matching is requested.
Although it is optional, specifications strongly recommend to return it.
This is same for IMAGE level with both PATIENT ROOT and STUDY ROOT.
C.6.2.1.4 Composite Object Instance Level
Attributes for the Composite Object Instance Level of the Study Root Query/Retrieve Information Model are the same as the Attributes for the Composite Object Instance Level of the Patient Root Query/Retrieve Information Model described in Section C.6.1.1.5.
PS3.4 2021a - Service Class Specifications - C.6.2.1.4 Composite Object Instance Level
Please refer to this article for simple explanation.
Now, let us answer your questions. I am answering in context of IMAGE level as you are asking about SOP Class UID.
In the C-Find request can I have SOP Class UID (0008,0016) empty?
Yes; you can have any attribute (other than marked U) empty. Attributes marked R are always returned by SCP.
should that field be then populated in each response with the SOP Class UID of that image?
As mentioned above, this is optional. SCP may or may not populate (return) this attribute.