microsoft / microsoft/dicom-server
Extend fuzzy matching capabilities of QIDO-RS
Nobody has claimed this yet.
- Dominant language
- C#
- Stars
- 513
- Forks
- 195
- PR merge metrics
- No merged PRs in 30d
Description
User story
As a user, I want search on specific component of a component group (even in phonetic or ideographic group) of the whole patient's name with fuzzy matching enabled so that get better and a narrowed down result set.
Acceptance criteria
Let's suppose there are two different patients in the database.
They have the "Harrison" string in common, however in their different name component (family name and given name):
- George^Harrison=dzsordzs^herizon
- Harrison^Ford
When I do
studies?PatientName=Harris^&FuzzyMatching=true
then
only George Harrison is returned in the result set.
and/or
When I do
studies?PatientName=^Harris&FuzzyMatching=true
then
only Harrison Ford is returned in the result set.
and/or
When I do
studies?PatientName==heri&FuzzyMatching=true
then
only George Harrison is returned in the result set.
Pay attention to the equal sign which could mean that the search need to be performed in the ideographic group.
If there were two equal signs it would mean that the search need to be performed in the phonetic group. However these could be combined together.
Contributor guide
No contributing guide indexed for this repository
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start with the QIDO-RS PatientName query handling and the DICOM patient-name component rules described in the issue. Trace how FuzzyMatching=true currently interprets family, given, ideographic, and phonetic components; done means the three example queries return only the specified patient, including the documented equal-sign behavior.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- csharp
- Domain
- api, backend-api-design, search
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100