snowstorm icon indicating copy to clipboard operation
snowstorm copied to clipboard

ICD-10-CM map target for a given concept

Open sdbhatt opened this issue 2 years ago • 8 comments

Hello,

We would like support to get ICD-10-CM map target for a given SNOMED concept.

Right now ICD-10 is supported, for example; /ConceptMap/$translate?code=294083006&system=http://snomed.info/sct&source=http://snomed.info/sct?fhir_vs&target=http://hl7.org/fhir/sid/icd-10&url=http://snomed.info/sct/900000000000207008/version/20200131?fhir_cm=447562003

Could we request support for ICD-10-CM for the SNOMED CT US release?

Thank you, Sigmoid Health

sdbhatt avatar Apr 19 '22 00:04 sdbhatt

At the moment the selection of map refsets via FHIR URIs is hardcoded.

  • This should be moved to configuration.
  • We should also add ICD-10-CM to the config
    • http://hl7.org/fhir/sid/icd-10-cm -> 6011000124106 |ICD-10-CM complex map reference set (foundation metadata concept)| (see HL7 docs)

Seems like a strong use case and simple change. Okay for me to proceed with a PR for this @rorydavidson?

kaicode avatar Apr 19 '22 15:04 kaicode

@kaicode go for it, thanks!

rorydavidson avatar Apr 19 '22 16:04 rorydavidson

Hi @sdbhatt I wholeheartedly agree with what @kaicode has suggested here. As an interim option: because the refsetId is supplied, it is possible to already obtain a mapping back. It's just that we don't know what CodeSystem it belongs to, due to the lack of configuration mentioned above. But our documentation page has an ICD-10-CM example:
https://github.com/IHTSDO/snowstorm/blob/master/docs/fhir-resources/concept-map.md and you can - as a stop gap measure - already call for example /fhir/ConceptMap/$translate?code=365753005&system=http://snomed.info/sct&source=http://snomed.info/sct?fhir_vs&target=http://hl7.org/fhir/sid/icd-10&url=http://snomed.info/sct/731000124108/version/20200301?fhir_cm=6011000124106 it's just that you'll be told that the CodeSystem being returned is SCT rather than ICD-10-CM.

pgwilliams avatar Apr 20 '22 16:04 pgwilliams

hi @pgwilliams tested and confirmed this is a good interim solution.

Thank you, Sid

sdbhatt avatar Apr 20 '22 21:04 sdbhatt

Hi guys, I'm part of @sdbhatt team.

As mentioned by @sdbhatt, it worked on the public Snowstorm, and right now we are trying to use it on our own Snowstorm Server. But we couldn't make it work, we are using a Snowstorm Server imported with RF2 Snomed CT US Edition (20220301) files.

When we try to use it in our own server, the API returns an error, could you provide any thoughts about what is missing?

API: GET /ConceptMap/$translate?code=365753005&system=http://snomed.info/sct&source=http://snomed.info/sct?fhir_vs&target=http://hl7.org/fhir/sid/icd-10&url=http://snomed.info/sct/731000124108/version/20220301?fhir_cm=6011000124106

API Response: { "resourceType": "OperationOutcome", "issue": [ { "severity": "error", "code": "processing", "diagnostics": "Failed to call access method: org.snomed.snowstorm.fhir.services.FHIROperationException: No code system known with default module of 731000124108." } ] }

Thank you

wzomer avatar Apr 27 '22 12:04 wzomer

Hi @wzomer, which branch did you import the US Edition onto? The default config expects the International Edition to be imported onto the MAIN branch under the SNOMEDCT code system, and the US Edition to be imported onto the MAIN/SNOMEDCT-US branch under the SNOMEDCT-US code system. See default config here: https://github.com/IHTSDO/snowstorm/blob/7.7.0/src/main/resources/application.properties#L187

If you have loaded the US Edition onto the MAIN branch (SNOMEDCT code system) adding this config to your installation should let the FHIR interface know where to find that module:

codesystem.config.SNOMEDCT=United States Edition|731000124108|us|National Library of Medicine

See also the configuration guide.

kaicode avatar Apr 29 '22 13:04 kaicode

Hi @kaicode, yes, we are using the MAIN branch.

I've followed your suggestion, and It has worked. Sorry for the delay for answer you. I was ensuring that it was all right.

Just taking the opportunity, what do you think is the best strategy to deploy a Snowstorm with US Edition? It seemed better and easier for me to use only the MAIN branch, do you have the same opinion?

Thank you.

wzomer avatar May 05 '22 15:05 wzomer

@wzomer I agree. If you are loading an Edition package that already contains the International content, like the US Edition, and you don't plan to host any other extensions that depend directly on the International Edition, then loading the Edition directly into the MAIN branch is the simplest approach. 👍

kaicode avatar May 06 '22 12:05 kaicode

@sdbhatt Snowstorm 8.1.0 has just been published with a rewrite of the FHIR API.

There is a new section in the configuration to configure concept maps for use in the FHIR API. ICD-10-CM has been added.

The $translate operation for ICD-10-CM can now be performed like this:

/ConceptMap/$translate
  ?code=254153009
  &system=http://snomed.info/sct
  &version=http://snomed.info/sct/731000124108
  &targetsystem=http://hl7.org/fhir/sid/icd-10-cm

The version parameter selects the US Edition. That is not required if the US Edition has been loaded into the MAIN branch.

kaicode avatar Mar 23 '23 15:03 kaicode

Thank you @kaicode this is great news. We will update to 8.1.0.

sdbhatt avatar Mar 23 '23 15:03 sdbhatt