Two questions are the same question when their criteria sets are equal
and they were asked of the same PACS. Key order and surrounding
whitespace are normalized away because they are how the question was
typed, not what it asked. Values are otherwise left exactly as given:
they are the PACS's own vocabulary, and mise does not get to reinterpret
them — a case fold here would silently claim that two DICOM values match
when only the PACS can say so.
The owner is part of the question. The index holds the whole log —
every identity's queries, because that is what /net/pacs/queries lists
— while a replay may only ever serve back an answer to the identity that
asked for it. Keying by owner makes those two facts one lookup instead of
a filter somebody can forget.
Builds the key a question is filed under.
Two questions are the same question when their criteria sets are equal and they were asked of the same PACS. Key order and surrounding whitespace are normalized away because they are how the question was typed, not what it asked. Values are otherwise left exactly as given: they are the PACS's own vocabulary, and mise does not get to reinterpret them — a case fold here would silently claim that two DICOM values match when only the PACS can say so.
The owner is part of the question. The index holds the whole log — every identity's queries, because that is what
/net/pacs/querieslists — while a replay may only ever serve back an answer to the identity that asked for it. Keying by owner makes those two facts one lookup instead of a filter somebody can forget.