Stream: IG creation
Topic: support for new resources
Catherine Hosage Norman (Apr 13 2021 at 13:38):
When will the newer resources like MedicinalProductDefinition and SubstanceDefinition be supported. I am using SUSHI, see attached. Looks like it is using 4.5.0 but not finding the resources. sushirun.jpg
David Pyke (Apr 13 2021 at 13:41):
If you set the dependency to "current" instead of 4.5.0, they are supported
Catherine Hosage Norman (Apr 13 2021 at 14:07):
I did that and it recognized the change to current, but it sill cannot find the paths. sushirun2.jpg
David Pyke (Apr 13 2021 at 15:27):
Is there somewhere I can see your FSH code?
Chris Moesel (Apr 13 2021 at 15:31):
I can't reproduce this. If I set the fhirVersion
to current
, then I am able to successfully build this FSH definition:
Instance: MyMedicinalProduct
InstanceOf: MedicinalProductDefinition
* name.productName = "MyMedicinalProduct"
* version = "123"
As @David Pyke noted, it would be helpful to see your FSH in order to figure out what's really going on here.
Catherine Hosage Norman (Apr 13 2021 at 15:31):
https://github.com/HL7/FHIR-us-pq-cmc
Catherine Hosage Norman (Apr 13 2021 at 15:32):
Got it. I am putting the full path in. Thanks
Chris Moesel (Apr 13 2021 at 15:33):
Ah yes. You don't need to put the MedicinalProductDefinition
bit at the front of the paths. That's just implied. One of the ways we make "short"hand short. ;-)
Catherine Hosage Norman (Apr 13 2021 at 16:21):
Sushi is happy but the IG build is not. Where it is getting 4.6.0 I do not know. The only version setting it in sushi-config.yaml.
This is the result when fhirVersion: 4.5.0. is used
Core Package hl7.fhir.r5.core#current
Installing hl7.fhir.r5.core#current to the package cache
Fetching:....................................................................
Installing: .................................................................... done.
Publishing Content Failed: Error loading C:\Users\Catherine\.fhir\packages\hl7.fhir.r5.core#current\package\StructureDefinition-StructureMap.json: Unknown FHIRVersion code '4.6.0' (01:28.0110)
This is the result when fhirVersion: current is used.
Publishing Content Failed: Error Parsing File C:\PQCMC_IG_sushi\fsh-generated\resources\ImplementationGuide-hl7.fhir.us.pq-cmc.json: Unknown FHIRVersion code 'current' (00:54.0134)
David Pyke (Apr 13 2021 at 17:09):
I think that error is misleading. You've got Version set to current, that should be 0.1.0 (or less). See if that clears it up
Catherine Hosage Norman (Apr 13 2021 at 17:51):
version: 0.1.0
fhirVersion: 4.5.0
in sushi-config results in:
Core Package hl7.fhir.r5.core#current
Publishing Content Failed: Error loading C:\Users\Catherine\.fhir\packages\hl7.fhir.r5.core#current\package\StructureDefinition-StructureMap.json: Unknown FHIRVersion code '4.6.0' (00:10.0062)
version: 0.1.0
fhirVersion: current
in sushi-config results in:
java.lang.Exception: Error Parsing File C:\PQCMC_IG_sushi\fsh-generated\resources\ImplementationGuide-hl7.fhir.us.pq-cmc.json: Unknown FHIRVersion code 'current'
Chris Moesel (Apr 13 2021 at 18:48):
Ah shoot. This is sounding too familiar. I feel like there is another thread somewhere about the IG Publisher not supporting the "current" FHIR build. I feel like it used to work, but I'm afraid it does not seem to work any longer (or I am crazy and it never worked). I'll try to dig up that thread (I think it was recent).
Grahame just announced that 4.6.0 is posted, but apparently it is not available in the registry yet. @Grahame Grieve -- should we expect to be able to get the 4.6.0 package from the FHIR registry at some point soon? And what about R4B? I can't seem to find that in the registry either...
Chris Moesel (Apr 13 2021 at 19:03):
@Catherine Hosage Norman -- I found the thread about depending on current build of FHIR Core in IGs. Unfortunately, it seems it is not possible with the IG Publisher -- and I don't see any workarounds for it. I also don't know if it is something that the IG Publisher will ever support. We should probably remove support for fhirVersion: current
from SUSHI (or issue a very significant warning if someone tries it). I'm sorry about that. If/when 4.6.0 is available in the registry (and supported by IG Publisher), I'd expect that to work.
Catherine Hosage Norman (Apr 13 2021 at 19:08):
Thanks for digging. I will continue building the IG on the SUSHI side in hopes that this will resolve. We are trying to get a document out to industry and would prefer not writing the differential trees in Word.
Chris Moesel (Apr 13 2021 at 19:18):
@Catherine Hosage Norman -- I just tried this w/ fhirVersion: 4.5.0
and everything worked well (SUSHI and IG Publisher). As long as you don't need anything that changed post-4.5.0, I think you might be OK for now. Then if/when 4.6.0 is available, you could try switching to that.
Can you try it again? I would suggest that you:
- set
fhirVersion: 4.5.0
insushi-config.yaml
- delete
output
andtemp
folders (to make sure no artifacts from previous attempts interfere) - run
_updatePublisher
to ensure you have the latest IG Publisher
Chris Moesel (Apr 13 2021 at 20:30):
OK. This was really bugging me, so I kept on digging. I checked out your repo from GitHub and confirmed that it was not working. I then updated the sushi-config.yaml
so it used this version
and fhirVersion
:
version: 0.1.0
fhirVersion: 4.5.0
After that, the IG Publisher gave me this error:
Publishing Content Failed: Error loading /Users/cmoesel/.fhir/packages/hl7.fhir.r5.core#current/package/ConceptMap-101.json: property identifier is a class com.google.gson.JsonArray looking for an object (00:20.0162)
You don't use ConceptMap
, so I thought that was kind of weird. It's also weird because ConceptMap.identifier
should be an array, so I don't know why the IG Publisher is expecting it to be an object. @Grahame Grieve?
After some experimentation, I found that it would work if I commented out (or deleted) all of the FSH CodeSystem and ValueSet definitions. After doing that, I got a good build. I know that's probably not a viable solution, but it seems to be the only solution that currently works.
Catherine Hosage Norman (Apr 14 2021 at 02:47):
Well that is stranger still. Jean Duteau said there would be no support for R4b until after the ballot. I did write a differential tree in Word today. I have a deadline.
Jean Duteau (Apr 14 2021 at 03:07):
To be clear, I said that I didn't expect full R4B support in the IG publisher until after R4B has been published.
Rob Hausam (Apr 14 2021 at 13:10):
@Chris Moesel I think the reason for the confusion with ConceptMap.identifier
being an array vs. object is most likely because the max cardinality of identifier
was changed from 1 to * in the StructureDefinition in the CI build on March 29, but those changes weren't carried through to the supporting org.hl7.fhir.core project which builds the validator and publisher. So the StructureDefinition says it's an array, but the publisher/validator is still looking for an object. I'm pretty sure that's why we would be seeing this behavior. @Grahame Grieve?
Rob Hausam (Apr 14 2021 at 13:25):
So (assuming that's correct) more work needs to be done in the FHIR model (and other subprojects) in org.hl7.fhir.core. And doing that typically is far from trivial.
Last updated: Apr 12 2022 at 19:14 UTC