HL7 FHIR® UK Core Design and Development Approach

Packaging and Publishing

This guides follows through the creation and checking of the UKCore Simplifier packages

Prerequisites

Ensure that you have the following permissions:

  • Simplifier Project – Admin
  • GitHub Repository – Either Admin or as part of the GitHub IOPs Development Team
  • A non standard NHS machine (Virtual or Developers)

Package Release

Prerequisites

Ensure the following has been checks have been completed:

  • All relevant Jira tickets are complete
  • Ensure all GitHub PR's are complete
  • Merge develop (hotfix) into relevant main (release)

Publishing a Package

Note that the following must be done within a virtual machine due to NHS firewall restrictions.

  1. Within the Simplifier Project reimport Github.

    IGImport

  2. Within the same menu, check the GitHub repository settings.

    The Repository include/exclude textbox should be as the following:
    #by default, everything is included 
    #if some include statements are added, we will exclude everything by default 
    #Simplifier imports only xml, json, images, css, yaml and markdown file types 
    
    #Include examples: 
    # FHIR/IG/** 
    # *.xml 
    
    #Exclude examples: 
    # !FHIR/*.img 
    # !*.cs 
    # !FHIR/examples/* 
    
    # Exclude all capability statement files: 
    !CapabilityStatement/*
    

    This ensures that the capability statement is not copied into the npm package. If the textbox had to be updated open the file manager, search for “capability” and if there delete.

    IGFileManager

    IGCapabilityStatement


Creation of the NPM Package

  1. Create the new package for the relevant version

    IGNewPackage

  2. Enter the version number. This should be in the format of x.x.x(-aaa) where x denotes a number and (-aaa) denote an optional lowercase string. For example, 1.0.0-pre-release.

    IGNewPackageVersion

    For the release package the release notes should read

    For the balloted release

    This is a release of the FHIR assets for the x.x.x version of the UK Core.
    
    **Please note: This npm package contains only the current active FHIR assets, and does not include retired assets, or ones in development which are not part of this formal release, and are therefore these are not in the associated Implementation Guide.**
    

    For the non-balloted release

    This is a release of the FHIR assets for the x.x.x version of the UK Core
    
    **Please note: This npm package contains all current assets, including ones in devlopment which are not part of this formal release, and therefore theres are not in the associated Implementation Guide.**
    
  3. Within the content tab ensure the appropriate checkboxes are selected as below:

    IGNewPackageBoxes

  4. Click Publish.

    The package has been created.

Implementation Guide Release

Prerequisites

Once the package has been created the IG can be published. Within the IG editor:

  1. Click the hamburger. Click Settings

    IGSettings

    Add the title UK Core Implemetation Guide STUx Sequence, where x is the STU number. Add a description

    IGSettingsTitle

    Change the scope to point to the newly created package and click save.

  2. Select Edit Master Template.

    IGMasterTemplate

    Comment out development notice information if it is no longer applicable, approximately lines 54 to 63, using ``

    IGMasterTemplateComment

    Update the details of the bottom banner, namely the Released date (approximately line 91).

  3. Amend the Contact Us page
    • Change the version on the first paragraph
    • Change the version for each email subject line to read
    • Subject=UK Core Release #version
  4. Amend the new package on the Downloads page
  5. Before publishing it is vital to check that:
    • All pages and links are rendered correctly
    • The IG has been run through spell-checking software
    • The IG has been run though a link checking software

Publishing a Guide

  1. Within the Guides portal select the burger bar next to the guide you want to publish and select versions.

    IGPublish

  2. Select the burger bar next to the version that you want publishing and select publish.
    • Enter the agreed version (this may align with the package version).
    • Ensure that:
      • Status is set to Public
      • Read-only is set to Read-only
      • Make default set to Yes


      IGPublishVersion

  3. Select Publish

Overwriting and Republishing a Guide

If there are any errors spotted after publishing the guide it is possible to overwrite and republish using the same version number.

  1. Within the Guides portal select the burger bar next to the guide you want to publish and select 'Make overwritable'.
  2. From the current burger bar select publish.

    IGOverwitePublish

    • Enter the same version number of the previous guide that you have just made overwritable. This may be different to the package version.
    • Ensure that:
      • Status is set to Public
      • Read-only is set to Read-only
      • Make default set to Yes
  3. Select Publish.

GitHub Release

Prerequisites

  1. From the current burger bar select Export.

    IGOverwitePublish

Creating a Release Within GitHub

  1. With the GiHub FHIR-R4-UKCORE-STAGING-MAIN repository. Select the Releases title on the right-hand side.

    IGGithubRelease

  2. Select Draft a new release.
  3. Ensure target is set to main and create a tag the is the same as the package version.
  4. Add the following release notes, changing the information as needed:

    For the balloted release

    Implementation Guide
    INSERT URL
    
    Package
    INSERT URL
    
    NPM
    Note: The npm package contains only active FHIR assets, and does not include retired assets, or ones in development which are not part of this formal release, and therefore these are not referenced in the STUx Sequence Implementation Guide..
    
    npm --registry https://packages.simplifier.net install package@version
    

    For the non-balloted release

    Implementation Guide
    INSERT URL
    
    Package
    INSERT URL
    
    NPM
    Note: The npm package contains all current FHIR assets, including ones in development which are not part of this formal release, and therefore these are not referenced in the x.x.x Implementation Guide.
    
    npm --registry https://packages.simplifier.net install package@version
    
  5. Drag and drop the exported IG file into the ‘Attach binary…’ area.
  6. Set as latest release and publish.

Updating UK Core Publication (Version) History

  1. Within the GitHub release page right click on the zip file and ‘Copy Link’


  2. IGGithubZip

  3. Edit the UK Core Publication (Version) History within Simplifier and add the following to the table:
    <tr>
    <td>Date</td>
    <td>x.x.x</td>
    <td>4.0.1</td>
    <td>Description</td>
    <td><a href="https://simplifier.net/guide/uk-core-implementation-guide-stux-sequence?version=x.x.x">Home Page</a><br>
    <a href="https://github.com/NHSDigital/FHIR-R4-UKCORE-STAGING-MAIN/releases/download/x.x.x/UK-Core-Implementation-Guide-x.x.x.zip">Download as zip</a></td>
    <td><a href="https://simplifier.net/packages/fhir.r4.ukcore.stux.currentbuild/">fhir.r4.ukcore.stux.currentbuild x.x.x</a></td>
    </tr>
    
back to top