cfind against remote modality - What query parameters can be used and when are they returned?

Hi,

I am successfully making queries against remote modalities, and then interrogating the results of the queries as follows:

POST /modalities/REMOTE_AET/query

{
“Level”: “Study”,
“Normalize”: false,
“Query”: { “AccessionNumber”: “ABC-123”, “ModalitiesInStudy”: “MR”},
“Expand”:true,
“Timeout”: 5
}

I then read the contents of the response:

GET /queries/cd39ebd6-3d90-433d-bcd0-053234d0600a/answers?expand&simplify

[
{
“AccessionNumber”: “ABC-123”,
“ModalitiesInStudy”: “MR”,
“NumberOfStudyRelatedInstances”: “122”,
“NumberOfStudyRelatedSeries”: “18”,
“PatientID”: “DEF-123”,
“QueryRetrieveLevel”: “STUDY”,
“RetrieveAETitle”: “REMOTE_AET”,
“SpecificCharacterSet”: “ISO_IR 100”,
“StudyInstanceUID”: “1.2.840.113845.11.1000000001809298227.777777777.5555”
}
]

If I remove ModalitiesInStudy from the initial query, it is not returned in the response when asking for the expand&simplify response. However, if I replace it with Modality: “MR”, then the Modality is not returned in the expand&simplify response.

Is this because if I’ve specified Modality in the input, I’m only going to get the modality I asked for in the output? An optimisation of the response as it were?

Also, is there a docs of what I can query on and what will be returned in the response anywhere that I can reference?

Thanks very much, love the product!

T

A bit more digging on my part, and for any future readers, these are just DICOM parameters and so they can be found on general DICOM documentation, e.g.:
https://www.ibm.com/docs/en/integration-bus/10.0?topic=pattern-example-messages-c-find-c-move-requests

I was confused because I could pass “Modality” into my query and it didn’t error, whereas if I pass in “Foobar” : “baz”, it errors saying “Associative array of DICOM tags to strings expected in field: Query”. My deduction is that this is because “Modality” is a valid DICOM tag in some contexts, but it is not something I can use on a Study level query.

Things that are permitted on the query in the “Study” level context are returned when interrogating the query, for example StudyDate.

Thanks!
T