FHIR Chat · Explanation Of Benefit meta.profile · CARIN IG for Blue Button®

Stream: CARIN IG for Blue Button®

Topic: Explanation Of Benefit meta.profile


view this post on Zulip Daniel Venton (Dec 02 2020 at 14:24):

The IG says, (from inpatient

Name Flags Card. Type Description & Constraintsdoco
.. ExplanationOfBenefit I 0..* C4BBExplanationOfBenefit Explanation of Benefit resource
... meta SΣ 1..1 Meta Metadata about the resource
.... profile SΣ 1..* canonical(StructureDefinition) Profiles this resource claims to conform to

What it doesn't say is what the value shall be.
I can look at an example, BUT I don't think coding to an example (which may not be correct) is the correct thing to do.
"meta" : {
"lastUpdated" : "2019-12-12T09:14:11+00:00",
"profile" : [
"http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-ExplanationOfBenefit-Inpatient-Institutional"
]
},

Is that the value that conformance requires? If so where is it stated in the IG (non-example)?

view this post on Zulip Saul Kravitz (Dec 02 2020 at 18:29):

Good point! Not sure whether this is best specified with an invariant (one of the elements of meta.profile must refer to the appropriate profile) or through a hard coded constraint.

view this post on Zulip Saul Kravitz (Dec 03 2020 at 14:08):

See discussion here: https://chat.fhir.org/#narrow/stream/215610-shorthand/topic/meta.2Eprofile.20requirement

view this post on Zulip Josh Lamb (Dec 03 2020 at 18:02):

I think the heart of this issue is that the profile should not require meta.profile for validation since the data within the model can change and the validity of the profile will always need verified. Also, the client posting the data may not be aware of every profile the resource conforms to. By keeping this as optional (will not fail during profile validation) we can validate first, and include the profile in meta.profile when appropriate. There are some cases, such as Inpatient vs Outpatient where a single resource could be valid according to two profiles. In this case it may be beneficial to assert the desired profile beforehand.

view this post on Zulip Paul Knapp (Dec 03 2020 at 18:41):

It is beneficial to declare the profile to which an instance is intended to conform as you often cannot determine instance accuracy from the instance alone. That an instance conforms to multiple profiles is often not useful, and certainly it is not efficient to take each instance received and then check it's conformance to all known profiles to derive an assumption of what was intended.
For example, profile A has element x as optional, profile B has element x as required. If an instance received does not include element x is it a valid instance of profile A and therefore may be accepted or an invalid instance of profile B and therefore should be rejected?

view this post on Zulip Josh Lamb (Dec 03 2020 at 19:48):

Good points Paul. I agree this does not sound efficient. Both approaches are supported though by leaving meta.profile as optional.

view this post on Zulip Saul Kravitz (Dec 03 2020 at 21:49):

This was debated, and the decision was made to require the profile be declared. The implementation of that decision by yours. truly in the IG was incorrect. Now I know how to do it correctly.


Last updated: Apr 12 2022 at 19:14 UTC