FHIR Chat · Packages with no canonical · shorthand

Stream: shorthand

Topic: Packages with no canonical


view this post on Zulip Ward Weistra (Jun 15 2020 at 22:42):

@Chris Moesel For packages that do not have a canonical (like nictiz.fhir.nl.stu3.zib2017@1.3.10 or de.basisprofil.r4@0.9.7) sushi can't create the entry in the IG resource from config.yaml, because it has to fill the uri component:

"dependsOn": [
    {
      "uri": "?",
      "packageId": "nictiz.fhir.nl.stu3.zib2017",
      "version": "1.3.10"
    }
  ]

However, I can run the IG publisher if I provide that uri myself. Would it make sense to allow me to specify that uri explicitly in the config.yaml for packages without a canonical value?

view this post on Zulip Chris Moesel (Jun 16 2020 at 11:48):

Hi @Ward Weistra -- that sounds reasonable. To be honest, I'm unfamiliar with canonical-less packages. In cases like this, what is the uri for the package? Is it just an arbitrary URI chosen by the author/publisher?

We'll have to figure out how we want this to work though. In the config.yaml, it's currently key/value pairs:

dependencies:
  nictiz.fhir.nl.stu3.zib2017: 1.3.10

If you used a uri instead of packageId as the key in that pair, we could probably detect it is a uri and treat it accordingly -- but then we don't have the packageId anymore -- and I'm not sure if we can look it up by that URI (since it's not the canonical one, but perhaps you know better?). So we could support a more advanced mode for those who need it:

dependencies:
  nictiz.fhir.nl.stu3.zib2017:
    uri: http://my.uri.org/fhir/ImplementationGuide/foo
    version: 1.3.10

Thoughts?

view this post on Zulip Ward Weistra (Jun 16 2020 at 11:58):

It's a good question. This uri is being used to refer back to the parent IG, right? I just filled in the IG location for eg de.basisprofil.r4: https://simplifier.net/guide/basisprofil-de-r4.

view this post on Zulip Chris Moesel (Jun 16 2020 at 13:00):

OK. So what do you think of that 2nd (proposed) approach then? Where the value is a complex object that allows for uri and version? Would that do the trick?

view this post on Zulip Ward Weistra (Jun 16 2020 at 13:29):

Yes, I certainly think so! Trying to dig through the IG publisher docs I see a whole lot of other parameters for dependencyList (not even called dependsOn), but also uri is not one of them. So, I'm not sure if people would need to add other parameters, but your proposal would still allow for that.

view this post on Zulip Ward Weistra (Jun 18 2020 at 13:36):

@Chris Moesel Not sure where id in dependsOn comes from, but perhaps that should be possible to specify too in the same way.

view this post on Zulip Chris Moesel (Jun 18 2020 at 16:55):

@Ward Weistra -- either you read my mind or you read my GitHub issue. ;-). I just filed this issue this morning and noted that we should also support id: https://github.com/FHIR/sushi/issues/497

view this post on Zulip Ward Weistra (Jun 18 2020 at 20:17):

:slight_smile: I just carefully look at the Sushi output


Last updated: Apr 12 2022 at 19:14 UTC