Stream: IG creation
Topic: mixing profiles
Eric Haas (Aug 25 2021 at 16:07):
Instead of inherenting 2 profile ( e.g. Profile X based on Profile Y) can you simply declare 2 profiles that both inherit from same base profile?
I am thinking of "decorating" any Observation profile with a Argo Write profile that defines these things
Argo Write Elements
Argo Write Element | Mandatory (min=1) | Must Support |
---|---|---|
patent-submitted tag | + | + |
gateway extension | - | :question: |
modality extension | - | :question: |
.basedOn |
- | :question: |
Observation.device |
- | :question: |
Observation.perfomer |
- | :question: |
Eric Haas (Aug 25 2021 at 16:17):
Assuming two profiles are compatible. Instead of creating a bunch of new profiles I am assuming these profiles can be mixed together.
How does the validator handle this - does it validate against both profile x and profile y?
Lloyd McKenzie (Aug 25 2021 at 16:25):
We generally discourage mandating the declaration of profiles in instances as it means that systems that would otherwise be conformant wouldn't be - just because they didn't declare the profile. It also raises the risk of systems hardcoding the declaration and not removing it/checking it when future evolution of the interface becomes non-conformant with the profile.
What you could do is declare an invariant that says conformsTo('some-profile-url')
. The validator would check it. Only downside is that if it fails validation, I think all you'd get out would be that the invariant failed, not why.
Eric Haas (Aug 25 2021 at 16:52):
I am not advocating for declaring profiles in the instance. I am asking about the validation behavior? Can it be instructed to validate against profile x and y (assuming yes).
Grahame Grieve (Aug 25 2021 at 19:11):
are you asking about the validator or the IG publisher?
Lloyd McKenzie (Aug 25 2021 at 19:18):
I'm not totally sure where you're planning to expose the profile(s) you're wanting to validate against. If you mean "exampleOf" within an ImplementationGuide, I vaguely recall that we agreed to change that to allow repetitions, but I'm not certain. Pretty sure it's not supported yet at any rate.
Eric Haas (Aug 25 2021 at 20:44):
Grahame Grieve said:
are you asking about the validator or the IG publisher?
both
Eric Haas (Aug 25 2021 at 20:46):
so can at least do serial validation using the validation tooling otherwise ( at least for testing )
Lloyd McKenzie (Aug 25 2021 at 20:48):
@Eric Haas - where are you planning to declare these profiles?
Eric Haas (Aug 25 2021 at 20:54):
Ultimately in an IG
Lloyd McKenzie (Aug 25 2021 at 21:16):
Are you wanting to say "If you comply with profile X, you must also comply with profile Y and Z" or are you wanting to say "Example A complies not only with profile B, but also profile C"?
Eric Haas (Aug 25 2021 at 22:00):
Example A complies not only with profile B, but also profile C"?
Lloyd McKenzie (Aug 25 2021 at 23:43):
There's no support for that right now. FHIR#23965 addresses it, but hasn't been applied yet.
Last updated: Apr 12 2022 at 19:14 UTC