Stream: terminology
Topic: SNOMED CT Version Syntax
Ken Sinn (Jan 08 2020 at 14:53):
Based on https://www.hl7.org/fhir/snomedct.html, I wanted to confirm that the appropriate syntax for a national version of SNOMED CT would look as follows - particularly the "version" element:
"coding": [
{
"system": "http://snomed.info/sct",
"version": "http://snomed.info/sct/20611000087101/version/20190430",
"code": "8191000087109",
"display": "Overdue"
}
]
I wasn't able to find any examples on this page to confirm it, and HL7 FHIR Validator hasn't been working properly.
Thanks!
Dion McMurtrie (Jan 08 2020 at 22:41):
That looks right Ken.
You don't _have_ to specify a version as SNOMED CT codes have "concept permanence" and mean the same thing across versions. There's various opinions on the benefits or problems caused by including the version as you've done, but the's guidance at https://www.hl7.org/fhir/codesystem.html#versioning.
However at https://www.hl7.org/fhir/datatypes.html#codesystem the spec says
A code system version may also be supplied. If the meaning of codes within the code system is consistent across releases, this is not required. The version SHOULD be exchanged when the system does not maintain consistent definitions across versions. Note that the following systems SHOULD always have a version specified:
- National releases of SNOMED CT (consistency of definitions varies amongst jurisdictions, and some jurisdictions may make their own rules on this)
- Various versions of ICD (note: the major releases are labeled as different code systems altogether, but there is variation within versions)
The version URI you've created looks fine for an April 2019 version of the Canadian French edition - is that what you intended?
I'm not sure what guidance comes from the Canadian release centre.
Ken Sinn (Jan 09 2020 at 15:19):
Thanks Dion. The code example above failed terminology validation (using HL7 Validator) against snomed international, since it's only available in the Canadian extension. That's why I'm looking for feedback on the correct syntax to identify a national snomed system vs international.
Rob Hausam (Jan 09 2020 at 17:07):
These may help:
https://confluence.ihtsdotools.org/display/DOCURI/2.1+URIs+for+Editions+and+Versions
https://confluence.ihtsdotools.org/display/DOCURI/3.2+URI+Use-Cases
https://confluence.ihtsdotools.org/display/DOC/List+of+SNOMED+CT+Edition+URIs
The tx.fhir.org terminology server for the FHIR build does support this edition (French Canadian) and version:
http://tx.fhir.org/r4/CodeSystem/$lookup?system=http://snomed.info/sct&version=http://snomed.info/sct/20611000087101/version/20190430&code=8191000087109
So I would assume that you should be able to get the validation to work.
Rob Hausam (Jan 09 2020 at 17:09):
You can also specify only the SNOMED CT edition without the specific version:
http://tx.fhir.org/r4/CodeSystem/$lookup?system=http://snomed.info/sct&version=http://snomed.info/sct/20611000087101&code=8191000087109
Ken Sinn (Jan 09 2020 at 18:50):
Thanks Rob. I tried to use that version syntax on an older build of HL7 Validator (from nov 2019), but that didn't work for versions -- it would just look at the international release instead of the specified release. The current build of HL7 validator doesn't seem to be working at all w/ snomed codes, not even the international release.
Rob Hausam (Jan 09 2020 at 20:38):
Can you provide an example of the validation failure, @Ken Sinn? I wonder if your issue may have any relation to my issue here?
Brian Postlethwaite (Sep 03 2020 at 04:54):
I've been asked to include the version of snomed that a value was selected, and I note that there are 2 choices, and I know which I want to do, but I'm nervous...
<coding>
<system value="http://snomed.info/sct" />
<version value="20200601" />
<code value="36900011000036109" />
</coding>
or
<coding>
<system value="http://snomed.info/sct/version/20200601" />
<code value="36900011000036109" />
</coding>
and for medications, do I also need to include the sctid in there to indicate it's from AMT?
@Michael Lawley @Brett Esler
Michael Lawley (Sep 03 2020 at 05:04):
Both are incorrect :-)
SNOMED CT version strings look like http://snomed.info/sct/[edition]/version/[date]
Since you're talking AMT, that implies the SNOMED CT-AU Edition, so the version string would be http://snomed.info/sct/32506021000036107/version/20200601
leading to
<coding>
<system value="http://snomed.info/sct" />
<version value="http://snomed.info/sct/32506021000036107/version/20200601" />
<code value="36900011000036109" />
</coding>
Brian Postlethwaite (Sep 03 2020 at 05:06):
Thanks, is the system or version value different when specifying an MP, TP, MPUU?
And Danielle pointed out that some snomed values are re-used between versions, is that making sense?
Michael Lawley (Sep 03 2020 at 05:09):
No, the system and version are about the CodeSystem, not about the code.
Michael Lawley (Sep 03 2020 at 05:11):
SNOMED codes are never "re-used" between (published) versions. A concept's FSN (Fully Specified Name) should never change (except for trivial corrections - spelling etc) because the FSN carries the meaning of the concept.
Danielle Bancroft (Sep 03 2020 at 07:25):
yeah i'm trying very poorly to articulate the difference here... so some context. @Michael Lawley issue has come from a vendor not super familiar with AMT codes. The Prescription exchange message caters for the following:
AMT_MP
AMT_MPP
AMT_TPP
AMT_MPUU
AMT_TP
AMT_TPUU
AMT_CTPP
Then we were told to add the following for MyHR when V2/V3 change over came in
AMT_CODE_SYSTEM Australian Medicines Terminology - Version used (v2 or v3)
AMT_VERSION "Each AMTv3 release is versioned based on a date and
has a version identifier eg.http://snomed.info/sct/900062011000036108/version/20150131"
I have ditched mapping or persisting the code system given V2 is irrelevant at this point. The question is around the mapping of version, when i asked earlier in the year it wasn't clear. In the facade call back to apps we need to provide + version. we were not providing the version previously in the data set to Patient Apps, because it didn't really hold relevance originally.
That the first question, the second was from the same patient app vendor asking how they know what level the code is for. I think this is more an education piece for the vendor, I don't believe they have alot of experience with terminology currently.
Brian Postlethwaite (Sep 03 2020 at 07:51):
Which I also posted to the Australian stream too, should we use something like this?
<coding>
<extension url="http://hl7.org/fhir/StructureDefinition/valueset-reference">
<valueUri value="http://hl7.org.au/fhir/ValueSet/amt-ctpp-codes"/>
</extension>
<system value="http://snomed.info/sct" />
<version value="http://snomed.info/sct/32506021000036107/version/20200601" />
<code value="36900011000036109" />
</coding>
or with the deliciously named NCTS version of the same valueset
https://healthterminologies.gov.au/fhir/ValueSet/sctau-reference-set-929360041000036105
Grahame Grieve (Sep 03 2020 at 07:54):
you can use a value set reference like that if they really need to be told, yes
Grahame Grieve (Sep 03 2020 at 07:54):
there's also an extension for purpose of use of a coding which might be more to the point
Brian Postlethwaite (Sep 03 2020 at 07:58):
This one?
http://build.fhir.org/ig/hl7au/au-fhir-base/StructureDefinition-medication-type.html
Brian Postlethwaite (Sep 03 2020 at 07:58):
Already have the brand name and generic name extension included at the to of the medication.
Grahame Grieve (Sep 03 2020 at 07:58):
well, that might be to the purpose too
Brian Postlethwaite (Sep 03 2020 at 07:59):
I think you've answered the question though, that the valueset ref covers it.
Just leaving the name of the valueset, which I'm sure I just have to suck it up and use the gross refsetname format.
Last updated: Apr 12 2022 at 19:14 UTC