FHIR Chat · CapabilityStatement.instantiates · implementers

Stream: implementers

Topic: CapabilityStatement.instantiates


view this post on Zulip Elliot Silver (Feb 14 2018 at 11:46):

The instantiates element of CapabilityStatement indicates "another capability statement this implements". Does this apply to both instance and requirements kinds of CapabilityStatements? I'd like to be able to build a complex requirement CapabilityStatement out of simpler building blocks, and this looks like the way to do it, but I want to confirm.

view this post on Zulip Grahame Grieve (Feb 14 2018 at 11:54):

yes

view this post on Zulip Elliot Silver (Feb 14 2018 at 12:18):

Thanks.

view this post on Zulip Rob Hausam (Feb 14 2018 at 12:35):

So, for FHIR terminology servers, we will specify a reference to the server's TerminologyCapabilities statement resource in CapabilityStatement.instantiates, and the interaction to access all of it continues to be /metadata. Correct?

view this post on Zulip Grahame Grieve (Feb 14 2018 at 12:38):

well, from /metadata you get back a conformance statement that has instantiates, and then you have to chase that. But my server fully populates the conformance statement, so you don't have to chase it - you can magically recognise 'a terminology server' or look through the details

view this post on Zulip Rob Hausam (Feb 14 2018 at 12:58):

Sure. I just scanned your r3 capability statement (r4 seems to be down right now), and I think you still would need to chase it to get the terminology specific details, for individual code systems, etc.?

view this post on Zulip Grahame Grieve (Feb 14 2018 at 13:14):

oh yes you'd still need the terminology capabilities (which we still haven't defined how to do). but instantiates is something else again

view this post on Zulip Elliot Silver (Feb 14 2018 at 13:17):

For StructureDefs, we talk about snapshot and diffs. Is the /metadata ConformanceStatement a snapshot (flattens all "instantiates" into the result) or a diff (only shows what isn't in the "instantiates")? Are both approaches (and others that might be in between) permitted?

view this post on Zulip Rob Hausam (Feb 14 2018 at 13:28):

OK. I was probably starting to read "Reference to a canonical URL of another CapabilityStatement that this software implements or uses" a little more broadly than you were intending, and we might want to clarify a bit more what the "something else again" exactly is.

view this post on Zulip John Moehrke (Feb 19 2018 at 14:53):

The question that Elliot asked was in support of IHE mCSD profile (mostly a provider directory). That profile has many combinatorics so we needed to leverage instantiates to eliminate repetition of the same requirements. So we ended up with a huge set of CapabilityStatements that have various levels of nesting to show all the combinations of Actors/Options. See https://simplifier.net/mCSD

view this post on Zulip Ewout Kramer (Feb 19 2018 at 15:14):

The question that Elliot asked was in support of IHE mCSD profile (mostly a provider directory). That profile has many combinatorics so we needed to leverage instantiates to eliminate repetition of the same requirements. So we ended up with a huge set of CapabilityStatements that have various levels of nesting to show all the combinations of Actors/Options. See https://simplifier.net/mCSD

I do recognize that requirement, esp. where the same set of capabilities repeat for a specific set of resources. Now, it's copy & paste....

view this post on Zulip John Moehrke (Feb 19 2018 at 15:46):

yes, the instantiates seems to have eliminated that copy and paste problem. It however doesn't show up well in Simplifier. In the case of StructureDefinitions, Simplifier pulls in the baseDefinition; it doesn't do the same for CapabilityStatement.instantiates...... Thus one can get a nice visualization of StructureDefinition result... but the same is not true of CapabilityStatement (in requirements kind)... I think I reported this through Simplifier feedback as a improvement opportunity.

view this post on Zulip Ewout Kramer (Feb 19 2018 at 16:15):

No, for StructureDefinition the spec specifically describes how to create a "snapshot" from a differential (a process which includes definitions from the baseDefinition). For CapabilityStatement, we don't really have something comparable, there's no "differential" notation for a CapabilityStatement. But I can see where it would be nice that the capabilities of a CapabilityStatement (CS) "A", which derives from a CS "B" would "override" stuff in "B". And you could produce a combination of both. When doing that, I am pretty sure there are some subtleties (repeating elements come to mind: does "A"'s elements get added to "B"s, or do they replace them)?.....

view this post on Zulip John Moehrke (Feb 19 2018 at 16:24):

isn't that analysis necessity speak for the need itself?

view this post on Zulip Grahame Grieve (Feb 19 2018 at 19:48):

does Forge have a CapabilityStatement editor does it?

view this post on Zulip Ewout Kramer (Feb 19 2018 at 22:26):

No, it does not yet. CapabilityStatement has grown enough in complexity that an editor for it is becoming a feature....

view this post on Zulip Grahame Grieve (Feb 19 2018 at 22:27):

great. cause the FHIR Toolkit does include an editor for it

view this post on Zulip John Moehrke (Feb 20 2018 at 14:39):

The FHIR Toolkit is what I use and recommend in IHE for CapabilityStatement. spreading the love around to all the tools for one thing or the other

view this post on Zulip Igor Sirkovich (Mar 09 2018 at 20:50):

I'm wondering if anyone is able to run the FHIR Toolkit on their macOS. My MacBook is running on High Sierra 10.13.3 and I get an error when trying to open FHIRToolkit.app (v0.0.40): The application “FHIRToolkit.app” can’t be opened.

view this post on Zulip Grahame Grieve (Mar 09 2018 at 23:33):

do you get any additional information? is there a security problem?

view this post on Zulip Igor Sirkovich (Mar 12 2018 at 06:26):

No, no additional information, no security issues (it doesn't appear under the security setting as a blocked app).

view this post on Zulip Igor Sirkovich (Mar 12 2018 at 16:27):

@Grahame Grieve I browsed the package content of the FHIRToolkit.app and noticed that FHIRToolkit.app/Contents/MacOS/FHIRToolkit file didn't have executable permissions. I have used chmod to make it executable and the app is working now. I think this is something you would want to add to your Build process.

view this post on Zulip Grahame Grieve (Mar 12 2018 at 19:35):

I don't know how to add it to my build process, since the build process runs on windows.

view this post on Zulip Igor Sirkovich (Mar 12 2018 at 19:38):

I see. In this case, maybe it would be worthwhile to add a note at http://healthintersections.com.au/FhirServer instructing Mac users to add executable permission to the FHIRToolkit.app/Contents/MacOS/FHIRToolkit file?

view this post on Zulip Grahame Grieve (Mar 12 2018 at 19:40):

I'll see what I can do. Whenever I've downloaded on OSX, it's prompted me to do it

view this post on Zulip Igor Sirkovich (Mar 12 2018 at 19:43):

I assume this behavior might depend on the version of macOS.

view this post on Zulip Grahame Grieve (Mar 12 2018 at 19:46):

perhaps. I'll have to look into this

view this post on Zulip Kevan Riley (May 22 2018 at 18:22):

As of 5/22 the Mac version is missing the FHIRToolkit file all together (at least that was the result after I unzipped it)

view this post on Zulip Grahame Grieve (May 22 2018 at 18:26):

yes. sorry. building it is painful and it's on my agenda for later this week :-(


Last updated: Apr 12 2022 at 19:14 UTC