Stream: IG creation
Topic: Pointing to StructureDefs in another profile
Jose Costa Teixeira (Jan 20 2020 at 12:44):
How can we point to structureDefs in another package?
Jose Costa Teixeira (Jan 20 2020 at 12:46):
we have some Federal profiles and some local profiles. How can I make the local IG point to the Federal profiles without copying the structuredefs?
Grahame Grieve (Jan 20 2020 at 12:48):
reference the ig in your dependencies, and then use them
Jose Costa Teixeira (Jan 20 2020 at 12:49):
can I just reference the package?
Jose Costa Teixeira (Jan 20 2020 at 12:50):
the other IG is not published but I can build it locally and get the package in my cache
Lloyd McKenzie (Jan 20 2020 at 15:08):
Knowledge of the IG will drive from what's in your cache. I use some IG dependencies that never have and never will be published on the CI-build. Sometimes I need to re-build the base IG because the cache gets wiped in an update, but other than that, works fine
Jose Costa Teixeira (Jan 20 2020 at 15:34):
my IG has this
<dependsOn> <uri value="https://www.ehealth.fgov.be/standards/fhir/ImplementationGuide/be-core"/> <packageId value="fed.be.core"/> <version value="dev"/> </dependsOn>
And I do have a fed.be.core#dev local package that has my profiles
I'm getting this
Dependency 'fed.be.core' has no id, so can't be referred to in markdown in the IG (00:34.0965)
Lloyd McKenzie (Jan 20 2020 at 15:42):
<dependsOn id="be-core">
....
Jose Costa Teixeira (Jan 20 2020 at 15:45):
ah ok I see the mismatch.
Jose Costa Teixeira (Jan 21 2020 at 06:43):
so, now i have
<dependsOn> <uri value="https://www.ehealth.fgov.be/standards/fhir/ImplementationGuide/fed.be.core"/> <packageId value="fed.be.core"/> <version value="dev"/> </dependsOn>
Jose Costa Teixeira (Jan 21 2020 at 06:46):
my fed.be.core#dev does contain a StructureDefinition-be-patient.json which has an id "be-patient" and a URL (the URL is not publicly available, but is "https://www.ehealth.fgov.be/standards/fhir/StructureDefinition/be-patient")
Jose Costa Teixeira (Jan 21 2020 at 06:49):
- I still get this
Dependency 'fed.be.core' has no id, so can't be referred to in markdown in the IG (00:27.0739)
Jose Costa Teixeira (Jan 21 2020 at 06:54):
- I seem to be unable to create examples for that profile - I want my IG to contain examples for a profile that is defined elsewhere, is that possible?
Grahame Grieve (Jan 21 2020 at 08:26):
you'll keep getting that note until you put an id on the dependsOn.
Grahame Grieve (Jan 21 2020 at 08:26):
yes it's possible - should not be an issue, but perhaps you could indicate the outcome in detail..
Jose Costa Teixeira (Jan 21 2020 at 08:49):
I'd like to see the "inherited" profile as I see the others - perhaps with some note that this is not defined here, perhaps in a different area of my IG.
Grahame Grieve (Jan 21 2020 at 10:49):
that raises difficult issues in several ways. What I don't see is why... just refer to the IG and go to it directly....
Jose Costa Teixeira (Jan 21 2020 at 10:52):
OK, i can put my examples elsewhere in my local IG and point to the other IG.
Grahame Grieve (Jan 21 2020 at 10:53):
pointing to the other IG should be automatic
Jose Costa Teixeira (Jan 21 2020 at 11:23):
you'll keep getting that note until you put an id on the dependsOn.
how?
<dependsOn id="fed-be-core"> <uri value="https://www.ehealth.fgov.be/standards/fhir/ImplementationGuide/fed-be-core"/> <packageId value="fed.be.core"/> <version value="dev"/> </dependsOn>
?
Lloyd McKenzie (Jan 21 2020 at 15:15):
The id can be whatever you like, so long as it's unique. It's used when doing site.data stuff. There are good reasons to re-publish artifacts in a referencing IG (it makes it more clear what you need to support, in some publishing mechanisms you won't have access to the base IG, it's a pain for implementers to jump around through 5 different IGs, particularly given that the menu and context changes when they click on a link, etc. The problem, obviously, is that the derived IG will include a snapshot of the parent that won't be updated if technical corrections are made to the parent. We've talked about doing this but haven't enabled it yet.
Jose Costa Teixeira (Jan 21 2020 at 16:48):
if I put that ID I get this:
Error checking links for https://www.ehealth.fgov.be/standards/fhir: com.google.gson.stream.MalformedJsonException: Use JsonReader.setLenient(true) to accept malformed JSON at line 1 column 12 path $
Jose Costa Teixeira (Jan 21 2020 at 16:49):
can I presume that this is because there is no publication on ehealth.fgov.be ? (we just use the url as a unique location identifier)
Lloyd McKenzie (Jan 21 2020 at 18:00):
@Grahame Grieve
Grahame Grieve (Jan 21 2020 at 18:55):
technically, because there's no package-list.json at the canonical location. It's not clear to me how you got there - I'm going to add more debugging. But the build should continue unaffected...
Jose Costa Teixeira (Jan 21 2020 at 19:03):
Yes, build works well.
Last updated: Apr 12 2022 at 19:14 UTC