The FHIR Specification Publisher
This library builds and publishes the FHIR specification, based on the contained spreadsheet data in the project.
|CI Status (master)||CI Status (R4B)|
This is the source for the FHIR specification itself. Only the editors of the specification (a small group) need to build this. If that's not you, one of these links should get you going:
- Jira - Propose a change - use this rather than making a PR directly, since all changes must be approved using the Jira workflow
- FHIR chat
- Stack Overflow questions
- Published FHIR Specification or Current Build of the specficiation
./gradlew publishfrom the command line
- Wait for it to finish (~20 minutes)
If running commands on the terminal is a frightening prospect for you...
We provide executable script files for Windows (publish.bat) and for a Bash shell for mac/linux/windows (publish.sh).
Command line parameters
There are multiple options available for publishing:
--offline: use this arg if you are offline and cannot fetch dependencies
-nogen: don't generate the spec, just run the validation. (to use this, manually fix things in the publication directory, and then migrate the changes back to source when done. this is a hack)
-noarchive: don't generate the archive. Don't use this if you're a core editor
-web: produce the HL7 ready publication form for final upload (only core editors)
-diff: the executable program to use if platform round-tripping doesn't produce identical content (default: c:\program files (x86)\WinMerge\WinMergeU.exe)
-name: the "name" to go in the title bar of each of the specification
To add any of these options to the publish task, run the command as
./gradlew publish --args"<YOUR ARGS HERE>"
For example, if you wanted to publish without generating the spec, just running the validation, you would run the command
./gradlew publish --args="-nogen"
Each time a pull request is opened, the pull request pipeline runs. If the pipeline successfully publishes, it uploads the build as a separate branch on build.fhir.org/branches, where it can be reviewed to ensure accuracy.