FHIR profile validation

358 views
Skip to first unread message

Johannes Faber

unread,
May 14, 2020, 11:30:42 AM5/14/20
to GCP Healthcare Discuss
Does the GCP FHIR API support profile validation; either explicitly by calling $validate or by setting the profile in the meta data of a resource?

Andy Crowne

unread,
May 14, 2020, 12:01:38 PM5/14/20
to GCP Healthcare Discuss
We do support profiles in a capabiity that was reecntly launched to Alpha, se launch text below...

FHIR profiles in the Cloud Healthcare API can be configured using one or more ImplementationGuide resources, containing StructureDefinitions. After adding your conformance resources to your store, add the ImplementationGuide's url to the validationConfig.enabledImplementationGuides field of your FHIR store. When validation is enabled, all incoming resources must conform to at least one StructureDefinition or they will be rejected with a "Precondition Failed" error. For more information see the documentation for FhirStore.ValidationConfig in the create or patch FhirStore methods.

You would need to be in our Trusted Tester program to access this capability, if you are not a member you can apply here https://services.google.com/fb/forms/cloudhealthcareapiearlyaccessprogram/

Johannes Faber

unread,
May 14, 2020, 12:23:37 PM5/14/20
to GCP Healthcare Discuss
Thanks for the info. I missed that. 

But I'm curious now. Does this mean that you try out all potentially fitting StructureDefinitions? E.g., when I add 120 Observation profiles (e.g., because I don't want to use the maturity 0 ObservationDefinition), you validate against all of them. Does this scale well?

Paul Church

unread,
May 14, 2020, 1:16:13 PM5/14/20
to Johannes Faber, GCP Healthcare Discuss
This is something we are evaluating while the feature is in alpha/beta. Currently yes, an Observation will be evaluated against all Observation profiles in the enabled IGs. This is different from evaluating meta.profile as a set of claims, which we are not currently doing.

--
You received this message because you are subscribed to the Google Groups "GCP Healthcare Discuss" group.
To unsubscribe from this group and stop receiving emails from it, send an email to gcp-healthcare-di...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/gcp-healthcare-discuss/91071653-219d-4fa6-ae82-3562b119d47e%40googlegroups.com.

Richard Braman

unread,
Apr 29, 2021, 8:46:29 AM4/29/21
to GCP Healthcare Discuss
So I have loaded all the structuredefintion, codesystems, valuesets, and search parameters, and capabilitystatement for the Carin BB IG into the datastore I specifically have setup for Carin.  When I try to load the IG resource (straight from hl7), I get a repeated error like this:

       {
            "code": "structure",
            "details": {
                "text": "unparseable_resource"
            },
            "diagnostics": "invalid Id format",
            "expression": [
                "ImplementationGuide.definition.resource[99].groupingId"
            ],
            "severity": "error"
        },

can the grouping id be set to a guid or does it need to map to the id of the particular referenced resource? 

Paul Church

unread,
Apr 29, 2021, 3:07:41 PM4/29/21
to Richard Braman, GCP Healthcare Discuss
That's odd, CARIN seems to have published the ImplementationGuide resource with underscores in the values in the groupingId field. This isn't conformant - the data type of that field is Id which has a regex of [A-Za-z0-9\-\.]{1,64}

This is probably an IG tooling issue. I'll raise it on zulip.

Paul Church

unread,
May 3, 2021, 10:00:50 AM5/3/21
to Richard Braman, GCP Healthcare Discuss
Per zulip discussion it seems the version of the ImplementationGuide resource in http://hl7.org/fhir/us/carin-bb/full-ig.zip does not have this problem - you could use that until they get the tooling issue figured out.
Reply all
Reply to author
Forward
0 new messages