Uploaded image for project: 'FHIR Specification Feedback'
  1. FHIR Specification Feedback
  2. FHIR-42318

Remind reader of relationship between FSH profile and FHIR StructureDefinition, etc.

    XMLWordPrintableJSON

Details

    • Icon: Change Request Change Request
    • Resolution: Persuasive
    • Icon: Highest Highest
    • Shorthand (FHIR)
    • 2.0.0
    • FHIR Infrastructure
    • Language Reference
    • 3.4.9 and elsewhere
    • Hide

      We will more clearly indicate the relationship between the FSH types and FHIR resources. We propose wording similar to the following:

      The FSH syntax provides a level of abstraction over FHIR resources. When authors define a Profile, Extension, Logical, or Resource using FSH, they are creating and modifying an instance of an underlying FHIR StructureDefinition. Similarly, when authors define a CodeSystem or ValueSet, they are creating and modifying an instance of a FHIR CodeSystem or FHIR ValueSet. While the basic FSH syntax maps to the core aspects of each of these FHIR definitional resources, it does not provide a complete mapping to every possible element within them.

      In order to address this gap, FSH allows authors to use the caret (^) symbol to access elements of definitional resources corresponding to the current item in context. Caret paths SHALL be accepted in FSH Profiles, Extensions, Logicals, and Resources to address elements in the underlying FHIR StructureDefinition resource; in FSH Invariants to address elements in the underlying ElementDefinition.constraint; in FSH ValueSets to address elements in the underlying FHIR ValueSet resource; in FSH CodeSystems to address elements in the underlying FHIR CodeSystem resource; and in FSH RuleSets, as long as the RuleSet is inserted in an item that allows caret paths. CaretPaths SHALL NOT be used with any other FSH item definition, including Instances, since Instances already directly manipulate FHIR resources. In addition, caret syntax SHALL NOT be used with the following paths... (remaining follows as-in the ballot spec)

      Show
      We will more clearly indicate the relationship between the FSH types and FHIR resources. We propose wording similar to the following: The FSH syntax provides a level of abstraction over FHIR resources. When authors define a Profile, Extension, Logical, or Resource using FSH, they are creating and modifying an instance of an underlying FHIR StructureDefinition. Similarly, when authors define a CodeSystem or ValueSet, they are creating and modifying an instance of a FHIR CodeSystem or FHIR ValueSet. While the basic FSH syntax maps to the core aspects of each of these FHIR definitional resources, it does not provide a complete mapping to every possible element within them. In order to address this gap, FSH allows authors to use the caret (^) symbol to access elements of definitional resources corresponding to the current item in context. Caret paths SHALL be accepted in FSH Profiles, Extensions, Logicals, and Resources to address elements in the underlying FHIR StructureDefinition resource; in FSH Invariants to address elements in the underlying ElementDefinition.constraint; in FSH ValueSets to address elements in the underlying FHIR ValueSet resource; in FSH CodeSystems to address elements in the underlying FHIR CodeSystem resource; and in FSH RuleSets, as long as the RuleSet is inserted in an item that allows caret paths. CaretPaths SHALL NOT be used with any other FSH item definition, including Instances, since Instances already directly manipulate FHIR resources. In addition, caret syntax SHALL NOT be used with the following paths... (remaining follows as-in the ballot spec)
    • Chris Moesel / Gino Canessa: 10-0-0
    • Clarification
    • Non-substantive

    Description

      The discussion here would be helped by pointing out that a FSH Profile item is converted into a FHIR StructureDefinition; Extension into StructureDefinition; ValueSet into ValueSet. FSH also uses a more compact syntax that in many cases corresponds directly to elements in the FHIR resource, but in others the mapping is more indirect.

      Point out that caret paths are not allowed in Instance items since the resource is defined directly.

      (Comment 39 - imported by: Ron G. Parker)

      Attachments

        Activity

          People

            jafeltra Julia Afeltra
            Rongparker Ron G. Parker
            Watchers:
            3 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: