Section 1c: FHIR®
Section 3: Implementation Guides
HL7 FHIR® Implementation Guide: FHIR Shorthand, Release 2
FHIR Shorthand (FSH) is a domain-specific language for defining FHIR artifacts involved in creation of FHIR Implementation Guides (IG). The goal of FSH is to allow Implementation Guide (IG) creators to more directly express their intent with fewer concerns about underlying FHIR mechanics, and efficiently produce high-quality FHIR IGs.
See the spec at http://hl7.org/fhir/uv/shorthand/N1.
HL7 FHIR® Implementation Guide: FHIR Shorthand, Release 2 may also go by the following names or acronyms:
- Enables simplification of creating FHIR profiles, extensions, value sets, examples and other artifacts needed for a FHIR IG.
- Provides a grammar is designed to express exactly what you want to do when profiling, as a declarative language in which you specify what is to be done rather than how to do it with readable and easily understandable language.
- Enables use with source code control-systems that support distributed development and meaningful version-to-version change tracking. FSH substantially speeds up IG projects.
There are currently over 40 profiling projects using FHIR Shorthand. Examples include
- Logica COVID-19 FHIR Profile Library IG
- the SANER (Situational Awareness for Novel Epidemic Response) IG.
There are already several existing methods for IG creation: hand editing definitions, using Excel spreadsheets, Simplifier/Forge, and Trifolia-on-FHIR. Each of these methods have certain advantages as well as drawbacks:
- Hand-editing StructureDefinitions (SDs) is unwieldy, but authors get full control over every aspect of the resulting profiles and extensions.
- The spreadsheet method has existed since before FHIR 1.0 and has been used to produce sophisticated IGs such as US Core. A downside is that version management is difficult; either the files are saved in binary form (.xslx) or as XML files, with the content mixed with formatting directives.
- Simplifier/Forge and Trifolia-on-FHIR provide graphical interfaces that help guide users through common tasks. The potential downside is the need to navigate multiple screens visit different items and make cross-cutting changes.
Experience across many domains has shown that complex software projects are best approached with textual languages. As a language designed for the job of profiling and IG creation, FSH is concise, understandable, and aligned to user intentions. Users may find that the FSH language representation is the best way to understand a set of profiles. Because it is text-based, FSH brings a degree of editing agility not found in graphical tools (cutting and pasting, global search and replace, spell checking, etc.) FSH is ideal for distributed development under source code control, providing meaningful version-to-version differentials, support for merging and conflict resolution, and nimble refactoring. These features allow FSH to scale in ways that other approaches cannot. Any text editor can be used to create or modify FSH, but advanced text editor plugins may also be used to further aid authoring.
A reference implementation, SUSHI, has been created that compiles FSH into FHIR artifacts, ready for the HL7 FHIR IG Publisher.
|HL7 FHIR® Implementation Guide: FHIR Shorthand, Release 2|
|HL7 FHIR® Implementation Guide: FHIR Shorthand, Release 1 http://hl7.org/fhir/uv/shorthand/STU1/index.html||Expiration Oct 2022|
RESPONSIBLE WORK GROUP
- Implementation Guide
- Standards Development Organizations (SDOs)