FHIR Chat · Race & Ethnicity error in FHIR Validator · terminology

Stream: terminology

Topic: Race & Ethnicity error in FHIR Validator


view this post on Zulip Ankita Srivastava (Dec 17 2021 at 09:59):

Hello @Oliver Egger & @Yannick Lagger ,
I am using vscode-fhir-tools for validating Patient resource. However, I am getting error for valid ethnicity code.
Could you please check, if this is the issue in the tool itself as the code is valid.
Kindly advise.

Thanks
Ankita

view this post on Zulip Ankita Srivastava (Dec 17 2021 at 09:59):

Patient.json

view this post on Zulip Ankita Srivastava (Dec 17 2021 at 09:59):

FAILURE: 1 errors, 1 warnings, 3 notes
Error @ Patient.extension[1].extension[0].value.ofType(Coding) (line 128, col42): The Coding provided (urn:oid:2.16.840.1.113883.6.238#2135-2) is not in the value set http://hl7.org/fhir/us/core/ValueSet/omb-ethnicity-category, and a code is required from this value set. (error message = Not in value set http://hl7.org/fhir/us/core/ValueSet/omb-ethnicity-category)
Information @ Patient.extension[0] (line 105, col10): Unknown extension http://hl7.org/fhir/us/core/StructureDefinition/us-core-race
Information @ Patient.extension[0].extension[0].value.ofType(Coding) (line 111, col42): Code System URI 'urn:oid:2.16.840.1.113883.6.238' is unknown so the code cannot be validated
Information @ Patient.extension[1].extension[0].value.ofType(Coding) (line 128, col42): Code System URI 'urn:oid:2.16.840.1.113883.6.238' is unknown so the code cannot be validated

view this post on Zulip Oliver Egger (Dec 17 2021 at 10:06):

this error message comes from the FHIR validator itself, not from vscode-fhir-tools.

the information 'Unknown extension' means probably that you need to add the us-core ig to the parameters (via -ig) that the validator knows the http://hl7.org/fhir/us/core/StructureDefinition/us-core-race extension

view this post on Zulip Ankita Srivastava (Dec 17 2021 at 10:22):

Thank you @Oliver Egger for the response. I understand that its coming from FHIR validator, however, while validating the same resource through ClinFHIR validator, there is no such error. Not sure why do we have different behavior, as both are using same FHIR validator.

view this post on Zulip Oliver Egger (Dec 17 2021 at 10:26):

maybe ClinFHIR is configured with us-core? did you add us-core as an ig to the FHIR Validitor parameter? Alternatively you can use https://validator.fhir.org/ and specify the ig in the validator options.

view this post on Zulip Ankita Srivastava (Dec 17 2021 at 10:34):

Thank you @Oliver Egger for the suggestion. I have verified using the FHIR Validator jar along with ig parameter and got error for both Race & Ethnicity.

view this post on Zulip Ankita Srivastava (Dec 17 2021 at 10:34):

FAILURE: 2 errors, 0 warnings, 2 notes
Error @ Patient.extension[0].extension[0].value.ofType(Coding) (line 111, col54) : The Coding provided (urn:oid:2.16.840.1.113883.6.238#2106-3) is not in the value set http://hl7.org/fhir/us/core/ValueSet/omb-race-category, and a code is required from this value set. (error message = Error from server: Unable to find value set http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113762.1.4.1021.103)
Error @ Patient.extension[1].extension[0].value.ofType(Coding) (line 128, col54) : The Coding provided (urn:oid:2.16.840.1.113883.6.238#2135-2) is not in the value set http://hl7.org/fhir/us/core/ValueSet/omb-ethnicity-category, and a code is required from this value set. (error message = Error from server: Unable to find value set http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113762.1.4.1021.102)
Information @ Patient.extension[0].extension[0].value.ofType(Coding) (line 111, col54) : Code System URI 'urn:oid:2.16.840.1.113883.6.238' is unknown so the code cannot be validated
Information @ Patient.extension[1].extension[0].value.ofType(Coding) (line 128, col54) : Code System URI 'urn:oid:2.16.840.1.113883.6.238' is unknown so the code cannot be validated
PS D:\07-FHIR\FHIR Validator>

view this post on Zulip Ankita Srivastava (Dec 17 2021 at 10:36):

Both are valid codes as per US Core, still validator is throwing error. Could you please suggest someone from FHIR Validator Team who can help here.

view this post on Zulip Ankita Srivastava (Dec 17 2021 at 10:57):

@Grahame Grieve & @Lloyd McKenzie Kindly look into this issue and share your feedback.
Thanks

view this post on Zulip Daniel Venton (Dec 17 2021 at 13:49):

Looks to me that your validator didn't load the value set expansion. Is there another error stating why it couldn't/didn't load the value set?

view this post on Zulip Ankita Srivastava (Dec 17 2021 at 14:47):

@Daniel Venton I am not getting any other error apart from this. I tried validation using VS-Tool and also through the validator jar directly. However, we have same error in both the cases.

view this post on Zulip Ankita Srivastava (Dec 17 2021 at 14:51):

Loading
Load FHIR v4.0 from hl7.fhir.r4.core#4.0.1 - 4575 resources (00:04.0542)
Load hl7.terminology#3.0.0 - 3795 resources (00:02.0202)
Terminology server http://tx.fhir.org - Version 2.0.10 (00:02.0462)
Get set... go (00:00.0087)
Validating
Validate ..\Resources\Patient\Patient1.fhir.json ..Detect format for ..\Resources\Patient\Patient1.fhir.json
Load hl7.fhir.uv.bulkdata#2.0.0 - 6 resources (00:04.0767)
Load hl7.fhir.uv.smart-app-launch#2.0.0 - 0 resources (00:00.0003)
Load us.nlm.vsac#0.3.0 - 8916 resources (00:03.0305)
Load hl7.fhir.uv.sdc#2.7.0 - 60 resources (00:00.0014)
Load hl7.fhir.us.core#4.1.0 - 177 resources (00:00.0020)
00:16.0005
Done. Times: Loading: 00:09.0533, validation: 00:24.0120. Memory = 2Gb

view this post on Zulip Daniel Venton (Dec 17 2021 at 17:03):

Now that I look at it more, I think it tells you the problem "Unable to find value set http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113762.1.4.1021.103)"
That value set doesn't exist on nlm (I didn't verify)

view this post on Zulip Eric Haas (Dec 18 2021 at 03:43):

We didn't use VSAC for R&E until the current balloted version (4.1.0) and if you read the spec and look at the terminology, we have big bold Ballot comments stating that there is a tooling issue with integration of VSAC. for example, see http://hl7.org/fhir/us/core/2022Jan/ValueSet-detailed-race.html.

I think your solution is to specify the version of US Core when using the canonical e.g., : http://hl7.org/fhir/us/core/ValueSet/detailed-ethnicity|3.1.1

view this post on Zulip Ankita Srivastava (Dec 18 2021 at 04:32):

I got it.. Thank you @Daniel Venton & @Eric Haas for the feedback.. I will try with version as specified by @Eric Haas and share the details.

view this post on Zulip Matt Rouhana (Jan 26 2022 at 19:26):

@Eric Haas - tx.fhir.org doesn't have any previous versions of the R&E ValueSets (e.g., https://tx.fhir.org/r4/ValueSet/?_id=omb-race-category). Given this, how should one programmatically retrieve the expansions of these ValueSets?

view this post on Zulip Eric Haas (Jan 26 2022 at 20:35):

https://tx.fhir.org/r4/ValueSet/?_id=omb-race-category

Gives me:

image.png

view this post on Zulip Eric Haas (Jan 26 2022 at 20:36):

So you can fetch the value set. I am not sure of the question and I am probably not going to be able to answer it. but maybe @Rob Hausam can. He a terminology wizard!

view this post on Zulip Matt Rouhana (Jan 26 2022 at 22:39):

@Eric Haas @Rob Hausam - I need the expansion of the ValueSet. Trying to obtain this via https://tx.fhir.org/r4/ValueSet/omb-race-category/$expand?_format=json produces an error, because tx.fhir.org can't find the VSAC ValueSets (upon which the R&E ValueSets now depend):

{
    "resourceType": "OperationOutcome",
    "text": {
        "status": "generated",
        "div": "<div xmlns=\"http://www.w3.org/1999/xhtml\"><p>Unable to find value set \"http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.2074.1.1.3\"</p></div>"
    },
    "issue": [{
        "severity": "error",
        "code": "not-supported",
        "details": {
            "text": "Unable to find value set \"http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.2074.1.1.3\""
        },
        "diagnostics": "(00000000009146BE){FHIRServer.exe} [0000000000D156BE] Unknown function at TMethodImplementationIntercept + $85B4EE\r\n(0000000005550ADC){FHIRServer.exe} [0000000005951ADC] Unknown function at TMethodImplementationIntercept + $549790C\r\n(0000000005552776){FHIRServer.exe} [0000000005953776] Unknown function at TMethodImplementationIntercept + $54995A6\r\n(000000000004C8A7){FHIRServer.exe} [000000000044D8A7] Unknown function at __dbk_fcall_wrapper + $2E867\r\n(000000000004D61B){FHIRServer.exe} [000000000044E61B] Unknown function at __dbk_fcall_wrapper + $2F5DB\r\n(00000000000118F6){FHIRServer.exe} [00000000004128F6]\r\n(0000000000011931){FHIRServer.exe} [0000000000412931]\r\n(00000000009146BE){FHIRServer.exe} [0000000000D156BE] Unknown function at TMethodImplementationIntercept + $85B4EE\r\n(00000000009150CC){FHIRServer.exe} [0000000000D160CC] Unknown function at TMethodImplementationIntercept + $85BEFC\r\n(0000000000912886){FHIRServer.exe} [0000000000D13886] Unknown function at TMethodImplementationIntercept + $8596B6\r\n(00000000009114E5){FHIRServer.exe} [0000000000D124E5] Unknown function at TMethodImplementationIntercept + $858315\r\n(0000000000A61514){FHIRServer.exe} [0000000000E62514] Unknown function at TMethodImplementationIntercept + $9A8344\r\n(0000000000A60CC4){FHIRServer.exe} [0000000000E61CC4] Unknown function at TMethodImplementationIntercept + $9A7AF4\r\n(000000000350C296){FHIRServer.exe} [000000000390D296] Unknown function at TMethodImplementationIntercept + $34530C6\r\n(0000000000AF7AC8){FHIRServer.exe} [0000000000EF8AC8] Unknown function at TMethodImplementationIntercept + $A3E8F8\r\n(0000000000AEFE07){FHIRServer.exe} [0000000000EF0E07] Unknown function at TMethodImplementationIntercept + $A36C37\r\n(000000000383431D){FHIRServer.exe} [0000000003C3531D] Unknown function at TMethodImplementationIntercept + $377B14D\r\n(0000000003830F4C){FHIRServer.exe} [0000000003C31F4C] Unknown function at TMethodImplementationIntercept + $3777D7C\r\n(000000000382D648){FHIRServer.exe} [0000000003C2E648] Unknown function at TMethodImplementationIntercept + $3774478\r\n(0000000003850ED8){FHIRServer.exe} [0000000003C51ED8] Unknown function at TMethodImplementationIntercept + $3797D08\r\n(000000000384F1B8){FHIRServer.exe} [0000000003C501B8] Unknown function at TMethodImplementationIntercept + $3795FE8\r\n(000000000021DB7C){FHIRServer.exe} [000000000061EB7C] Unknown function at TMethodImplementationIntercept + $1649AC\r\n(000000000021F40C){FHIRServer.exe} [000000000062040C] Unknown function at TMethodImplementationIntercept + $16623C\r\n(00000000001FA7AE){FHIRServer.exe} [00000000005FB7AE] Unknown function at TMethodImplementationIntercept + $1415DE\r\n(00000000001F8861){FHIRServer.exe} [00000000005F9861] Unknown function at TMethodImplementationIntercept + $13F691\r\n(00000000001FFC54){FHIRServer.exe} [0000000000600C54] Unknown function at TMethodImplementationIntercept + $146A84\r\n(00000000001FEB4D){FHIRServer.exe} [00000000005FFB4D] Unknown function at TMethodImplementationIntercept + $14597D\r\n(000000000012F1C3){FHIRServer.exe} [00000000005301C3] Unknown function at TMethodImplementationIntercept + $75FF3\r\n(00000000000124ED){FHIRServer.exe} [00000000004134ED]\r\n(00000000000003D2){KERNEL32.DLL} [00007FFFA78813D2] BaseThreadInitThunk + $22\r\n(00000000000144F4){ntdll.dll   } [00007FFFA81E54F4] RtlUserThreadStart + $34\r\n"
    }]
}

view this post on Zulip Rob Hausam (Jan 26 2022 at 22:52):

@Matt Rouhana To make the expansion for this value set work, tx.fhir.org would need to have copies of the other two value sets and the code systems that they are based on. That's potentially doable technically, but would need to verify the licensing and be sure that it's feasible (might need discussion with HTA).

view this post on Zulip Eric Haas (Jan 27 2022 at 01:25):

@Rob Hausam is it possible to go in the terminology server's wayback machine and grab a prior version of a valueset like from USCore ver 3.1.1?

view this post on Zulip Eric Haas (Jan 27 2022 at 01:31):

I think that is what he is asking, because it is giving us the latest valueset (ver 4.1.0) and that is referring to VSAC.

view this post on Zulip Eric Haas (Jan 27 2022 at 01:36):

never mind, I just answered my own question: based on the $expand OperationDefinition can add the version to get the expansion ....

view this post on Zulip Eric Haas (Jan 27 2022 at 01:37):

  • valueSetVersion
    -0..1

  • string

  • The identifier that is used to identify a specific version of the value set to be used when generating the expansion. This is an arbitrary value managed by the value set author and is not expected to be globally unique. For example, it might be a timestamp (e.g. yyyymmdd) if a managed version is not available.

view this post on Zulip Eric Haas (Jan 27 2022 at 01:39):

GET [base]/ValueSet/$expand?url=http://hl7.org/fhir/us/core/ValueSet/omb-ethnicity-category&amp;valueSetVerson=3.1.1

view this post on Zulip Eric Haas (Jan 27 2022 at 01:48):

I tried:
https://tx.fhir.org/r4/ValueSet/$expand?url=http://hl7.org/fhir/us/core/ValueSet/omb-ethnicity-category&valueSetVersion=3.1.1 but get the same issue its looking for VSAC even though the ValueSet in 3.1.1 does not use VSAC? @Rob Hausam is the valueSetVersion supported for tx.fhir.org?

view this post on Zulip Grahame Grieve (Jan 27 2022 at 05:51):

I

view this post on Zulip Grahame Grieve (Jan 27 2022 at 05:52):

I'll have a look at this, but I think it's a more general issue waiting for me to sort out vsac

view this post on Zulip Matt Rouhana (Jan 27 2022 at 14:21):

@Eric Haas I think there's only one version of the ValueSet available on tx.fhir.org, and it's the latest one (4.1.0).

view this post on Zulip Matt Rouhana (Jan 27 2022 at 15:02):

I've tried as many publicly available terminology servers as I can find - there doesn't appear to be a way to $expand any of the US Core ValueSets on any of them (either because the ValueSet doesn't exist on the server, the server doesn't support the $expand operation, or the server can't find the dependent VSAC ValueSets).

view this post on Zulip Eric Haas (Jan 31 2022 at 18:02):

the only short term fix I can think of is use the version 3.1.1 package where the R and E codes are enumerated.


Last updated: Apr 12 2022 at 19:14 UTC