FHIR / sushi

SUSHI (aka "SUSHI Unshortens Short Hand Inputs") is a reference implementation command-line interpreter/compiler for FHIR Shorthand (FSH).
Apache License 2.0
147 stars 43 forks source link

Support Special Rules for Contained CodeSystems in ValueSets #1435

Open cmoesel opened 8 months ago

cmoesel commented 8 months ago

Based on this Zulip conversation, it is invalid for ValueSet.compose.include.system (as well as its exclude variant) to set the uri value to a fragment (e.g., #foo). This means that the standard way of referencing a contained CodeSystem will not work.

Instead:

  1. Use the contained CodeSystem's full canonical URL as the value of ValueSet.compose.include.system
  2. Put a valueset-system extension on ValueSet.compose.include.system and set its valueCanonical to the fragment pointing to the id of the contained CodeSystem (e.g., #foo)

Authors can do this the hard way right now (setting the values directly), but I suspect if they use Canonical(ContainedCodeSystem), it might do the wrong thing and directly insert a fragment. We should try to detect this situation and do the right thing:

Also see: https://jira.hl7.org/browse/FHIR-44896

mint-thompson commented 8 months ago

Add to backlog as https://standardhealthrecord.atlassian.net/browse/CIMPL-1246