Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
27 commits
Select commit Hold shift + click to select a range
9b28259
Update StructureDefinition\NHSDigital-MedicationRequest
KazeemHamzat Apr 7, 2026
ac45622
Add Extension-EPS-RepeatInformation
KazeemHamzat Apr 7, 2026
c4c368a
Update MedicationRequest-WithoutGroupID-Example
KazeemHamzat Apr 7, 2026
e4ea721
Update MedicationRequest-WithoutGroupID-Example
KazeemHamzat Apr 7, 2026
fba6fc9
Update MedicationRequest-WithoutGroupID-Example
KazeemHamzat Apr 7, 2026
456ff2b
Update MedicationRequest-WithoutGroupID-Example
KazeemHamzat Apr 8, 2026
f4bf2da
Update ValueSet-DM-task-business-status
KazeemHamzat May 12, 2026
e183761
ConceptMap Issues
KazeemHamzat May 12, 2026
bab641c
Remove Conflicting NamingSystems
KazeemHamzat May 12, 2026
06cc186
Remove filter
KazeemHamzat May 13, 2026
700338e
Prescription Status in MedicationRequest
KazeemHamzat May 18, 2026
3bb6eeb
Added Firely Action
KazeemHamzat May 18, 2026
ecb5322
Firely Credentials Issue
KazeemHamzat May 18, 2026
5181518
Credentials
KazeemHamzat May 18, 2026
9ebe577
Cred
KazeemHamzat May 18, 2026
33b9af1
Bypass
KazeemHamzat May 18, 2026
0cde4b4
Added Custom file
KazeemHamzat May 20, 2026
9c2172f
Update NHSDigital-Logical-Request.StructureDefinitio
KazeemHamzat May 20, 2026
03eba50
Update
KazeemHamzat May 20, 2026
8a6a290
Update NHSDigital-Logical-Request.StructureDefinition.
KazeemHamzat May 20, 2026
cdf164e
Testing IOPS
KazeemHamzat May 20, 2026
d3384aa
Update
KazeemHamzat May 20, 2026
7c83e53
QRes Update
KazeemHamzat May 20, 2026
7e4bbbd
Update Assets
KazeemHamzat May 20, 2026
4706504
Suppress
KazeemHamzat May 20, 2026
7184e70
Update Extension-NHSDigital-Provenance-agent.StructureDefinitio
KazeemHamzat May 20, 2026
797b6c6
Suprress IOPS Val
KazeemHamzat May 20, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
59 changes: 59 additions & 0 deletions .github/workflows/firely-validation.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,59 @@
# This is a basic workflow to help you get started with Actions

name: Firely Validation

# Controls when the action will run.
on:
# Triggers the workflow on push or pull request events but only for the master branch
push:
branches:
- '**'
pull_request:
branches: [ master, main ]
# Allows you to run this workflow manually from the Actions tab
workflow_dispatch:

# A workflow run is made up of one or more jobs that can run sequentially or in parallel
jobs:

# Validate all resources using Firely Terminal
CI_FHIR_VALIDATION:
# The type of runner that the job will run on
runs-on: ubuntu-latest

# Steps represent a sequence of tasks that will be executed as part of the job
steps:
- name: Checkout code
uses: actions/checkout@v6

# Install .NET runtime
- name: Setup .NET Core SDK
uses: actions/setup-dotnet@v5
with:
dotnet-version: 8.0.x

# Install Java runtime (only needed if you want to run the offical HL7 Java validator)
- name: Setup Java JDK
uses: actions/setup-java@v5
with:
distribution: 'microsoft'
java-version: '21'

- name: Firely.Terminal (GitHub Actions)
uses: FirelyTeam/firely-terminal-pipeline@v0.7.31
with:
PATH_TO_CONFORMANCE_RESOURCES: StructureDefinition ValueSet CodeSystem
PATH_TO_EXAMPLES: ActivityDefinition AuditEvent BodyStructure Bundle CapabilityStatement Composition ConceptMap Condition Consent Device DiagnosticReport DocumentReference FamilyMemberHistory GraphDefinition Group Library MessageDefinition MessageHeader NamingSystem Observation OperationDefinition OperationOutcome Organization Parameters Patient PlanDefinition Practitioner PractitionerRole Procedure Provenance Questionnaire QuestionnaireResponse RelatedPerson RequestGroup SearchParameter ServiceRequest Specimen SpecimenDefinition StructureMap Subscription Task
PATH_TO_QUALITY_CONTROL_RULES: custom
DOTNET_VALIDATION_ENABLED: true
JAVA_VALIDATION_ENABLED: false
#EXPECTED_FAILS: VALIDATION_EXAMPLES_JAVA
SIMPLIFIER_USERNAME: ${{ secrets.SIMPLIFIER_USERNAME }}
SIMPLIFIER_PASSWORD: ${{ secrets.SIMPLIFIER_PASSWORD }}
FIRELY_TERMINAL_VERSION: 3.5.0
SUSHI_ENABLED: false

# - name: Add & Commit.
# uses: EndBug/add-and-commit@v9
# with:
# add: 'fsh-generated/resources/'
2 changes: 1 addition & 1 deletion .github/workflows/terminology.yml
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ on:
# Triggers the workflow on push or pull request events but only for the master branch
# Allows you to run this workflow manually from the Actions tab

push:
#push:

workflow_dispatch:

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -27,6 +27,7 @@
"group": [
{
"source": "https://fhir.nhs.uk/CodeSystem/prescription-type",
"sourceVersion": "1.2.0",
"target": "https://fhir.nhs.uk/CodeSystem/mim-organisation-type",
"element": [
{
Expand Down
2 changes: 1 addition & 1 deletion ConceptMap/MedicationRequest-course-therapy-type-map.xml
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,7 @@
<sourceUri value="https://fhir.nhs.uk/ValueSet/DM-prescription-therapy-type"/>
<group>
<source value="http://terminology.hl7.org/CodeSystem/medicationrequest-course-of-therapy"/>
<target value="https://fhir.nhs.uk/CodeSystem/DM-prescription-treatment-type"/>
<target value="https://fhir.hl7.org.uk/CodeSystem/UKCore-PrescriptionType" />
<element>
<code value="acute"/>
<display value="Short course (acute) therapy"/>
Expand Down
4 changes: 2 additions & 2 deletions Examples/SDS-Endpoint-Bundle-Example.xml
Original file line number Diff line number Diff line change
Expand Up @@ -4,10 +4,10 @@
<total value="1"/>
<link>
<relation value="self"/>
<url value="[baseURL]/Endpoint?organization=https://fhir.nhs.uk/Id/ods-organization-code|R8008&amp;identifier=https://fhir.nhs.uk/Id/nhsEndpointServiceId|urn:nhs:names:services:psis:REPC_IN150016UK05"/>
<url value="http://example.org//Endpoint?organization=https://fhir.nhs.uk/Id/ods-organization-code|R8008&amp;identifier=https://fhir.nhs.uk/Id/nhsEndpointServiceId|urn:nhs:names:services:psis:REPC_IN150016UK05"/>
</link>
<entry>
<fullUrl value="[baseURL]/Endpoint/f1dc0ac6-45ff-4d2b-bf91-793971e3e286"/>
<fullUrl value="http://example.org//Endpoint/f1dc0ac6-45ff-4d2b-bf91-793971e3e286"/>
<resource>
<Endpoint>
<id value="f1dc0ac6-45ff-4d2b-bf91-793971e3e286"/>
Expand Down
71 changes: 71 additions & 0 deletions MedicationRequest/MedicationRequest-WithoutGroupID-Example.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,71 @@
<MedicationRequest xmlns="http://hl7.org/fhir">
<id value="MedicationRequest-WithoutGroupID-Example" />
<extension url="https://fhir.nhs.uk/StructureDefinition/Extension-PendingCancellation">
<valueBoolean value="false" />
</extension>
<extension
url="https://fhir.hl7.org.uk/StructureDefinition/Extension-UKCore-MedicationRepeatInformation">
<extension url="numberOfPrescriptionsIssued">
<valueUnsignedInt value="3" />
</extension>
<extension url="authorisationExpiryDate">
<valueDateTime value="2026-12-31" />
</extension>
</extension>
<extension url="https://fhir.nhs.uk/StructureDefinition/Extension-EPS-DispensingInformation">
<extension url="dispenseStatus">
<valueCoding>
<system value="https://fhir.nhs.uk/CodeSystem/medicationdispense-type" />
<code value="0008" />
<display value="Item with dispenser" />
</valueCoding>
</extension>
</extension>
<identifier>
<system value="https://fhir.nhs.uk/Id/prescription-order-item-number" />
<value value="a54219b8-f741-4c47-b662-e4f8dfa49ab6" />
</identifier>
<status value="active" />
<intent value="reflex-order" />
<medicationCodeableConcept>
<coding>
<system value="http://snomed.info/sct" />
<code value="39720311000001101" />
<display value="Paracetamol 500mg soluble tablets" />
</coding>
</medicationCodeableConcept>
<subject>
<reference value="Patient/Patient-StaceyTwitchett-Example" />
<identifier>
<system value="https://fhir.nhs.uk/Id/nhs-number" />
<value value="5839945242" />
</identifier>
</subject>
<courseOfTherapyType>
<coding>
<system value="https://fhir.nhs.uk/CodeSystem/medicationrequest-course-of-therapy" />
<code value="continuous-repeat-dispensing" />
<display value="Continuous long term (repeat dispensing)" />
</coding>
</courseOfTherapyType>
<dosageInstruction>
<text value="Take two tablets three times a day." />
</dosageInstruction>
<dispenseRequest>
<extension url="https://fhir.nhs.uk/StructureDefinition/Extension-DM-PerformerSiteType">
<valueCoding>
<system value="https://fhir.nhs.uk/CodeSystem/dispensing-site-preference" />
<code value="P1" />
</valueCoding>
</extension>
<quantity>
<value value="30" />
<unit value="dose" />
<system value="http://snomed.info/sct" />
<code value="3317411000001100" />
</quantity>
</dispenseRequest>
<substitution>
<allowedBoolean value="false" />
</substitution>
</MedicationRequest>
2 changes: 1 addition & 1 deletion MessageDefinition/MessageDefinition-document.xml
Original file line number Diff line number Diff line change
Expand Up @@ -10,12 +10,12 @@
<title value="Patient Documents" />
<status value="active" />
<date value="2021-04-23" />
<description value="Used to exchange a clinical document. One of FHIR Binary or FHIR Bundle (type=document) is required. If a Binary is supplied a DocumentReference MUST also be supplied."/>
<eventCoding>
<system value="https://fhir.nhs.uk/CodeSystem/message-event" />
<code value="document" />
<display value="Document" />
</eventCoding>
<description value="Used to exchange a clinical document. One of FHIR Binary or FHIR Bundle (type=document) is required. If a Binary is supplied a DocumentReference MUST also be supplied."/>
<category value="consequence" />
<focus>
<code value="DocumentReference" />
Expand Down
2 changes: 1 addition & 1 deletion MessageDefinition/MessageDefinition-prescription-order.xml
Original file line number Diff line number Diff line change
Expand Up @@ -10,8 +10,8 @@
<title value="Pharmacy/Treatment Order" />
<status value="active" />
<date value="2020-05-27" />
<description value="Ordering of medications"/>
<base value="https://fhir.hl7.org.uk/MessageDefinition/prescription-order" />
<description value="Ordering of medications"/>
<eventCoding>
<system value="https://fhir.nhs.uk/CodeSystem/message-event" />
<code value="prescription-order" />
Expand Down
22 changes: 0 additions & 22 deletions NamingSystem/prescription-type-ns.xml

This file was deleted.

22 changes: 0 additions & 22 deletions NamingSystem/ukcore-prescription-type-ns.xml

This file was deleted.

2 changes: 1 addition & 1 deletion OperationDefinition/MessageHeader-prepare-message.xml
Original file line number Diff line number Diff line change
Expand Up @@ -15,9 +15,9 @@
</contact>
<description value="Convert a prescription in FHIR format into the canonicalised HL7 V3 signature fragments which should be signed by the prescriber." />
<code value="prepare" />
<affectsState value="true" />
<comment value="This operation does not use the parameters resource for input parameters, it does for the response. \n\n A server may return one of several status codes: \n\n * **200 OK**: Indicates that the message has been fully processed." />
<system value="true" />
<affectsState value="true" />
<type value="false" />
<instance value="false" />
<parameter>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -18,8 +18,8 @@
</contact>
<description value="Use this operation to download prescriptions from Spine before it is dispensed. You can download a single prescription using the prescription's ID, or download up to 25 prescriptions (per request) nominated to a dispenser using the dispenser's ODS code. The operation will return prescriptions passing signature validation as a collection of Prescription-Order bundles and/or error messages for Prescriptions failing signature validation as a collection of OperationOutcome resources (with the prescription-order messages attached as supportingInfo"></description>
<code value="release"></code>
<comment value="Only one of the parameters group-identifier and owner MUST be provided. This operation performs both a query on the message queue and updates the status of returned prescriptions."></comment>
<affectsState value="true" />
<comment value="Only one of the parameters group-identifier and owner MUST be provided. This operation performs both a query on the message queue and updates the status of returned prescriptions."></comment>
<resource value="Task"></resource>
<system value="false"></system>
<type value="true"></type>
Expand Down
2 changes: 1 addition & 1 deletion OperationDefinition/OperationDefinition-release.xml
Original file line number Diff line number Diff line change
Expand Up @@ -18,8 +18,8 @@
</contact>
<description value="Use this endpoint to download prescriptions from Spine before it is dispensed. You can download a single prescription using the prescription's ID, or download up to 25 prescriptions (per request) nominated to a dispenser using the dispenser's ODS code."></description>
<code value="release"></code>
<comment value="Only one of the parameters group-identifier and owner MUST be provided. This operation performs both a query on the message queue and updates the status of returned prescriptions."></comment>
<affectsState value="true" />
<comment value="Only one of the parameters group-identifier and owner MUST be provided. This operation performs both a query on the message queue and updates the status of returned prescriptions."></comment>
<resource value="Task"></resource>
<system value="false"></system>
<type value="true"></type>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,8 +2,8 @@
<StructureDefinition xmlns="http://hl7.org/fhir">
<id value="67329733-af3b-40f1-95f8-a83812dc0a43" />
<url value="https://fhir.nhs.uk/StructureDefinition/Extension-Provenance-agent" />
<name value="ExtensionProvenanceAgent" />
<version value="1.0.1" />
<name value="ExtensionProvenanceAgent" />
<status value="draft" />
<date value="2024-08-14T13:51:00+00:00" />
<fhirVersion value="4.0.1" />
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -11,16 +11,13 @@
<baseDefinition value="http://hl7.org/fhir/StructureDefinition/Element" />
<derivation value="specialization" />
<differential>
<element id="NHSDigital-Logical-Event">
<path value="NHSDigital-Logical-Event" />
<element id="NHSDigitalLogicalEvent">
<path value="NHSDigitalLogicalEvent" />
<min value="0" />
<max value="*" />
<type>
<code value="Element" />
</type>
<max value="1" />
</element>
<element id="NHSDigital-Logical-Event.identifier">
<path value="NHSDigital-Logical-Event.identifier" />
<element id="NHSDigitalLogicalEvent.identifier">
<path value="NHSDigitalLogicalEvent.identifier" />
<short value="Business Identifier for {{title}}" />
<min value="1" />
<max value="*" />
Expand All @@ -29,8 +26,8 @@
<profile value="http://hl7.org/fhir/StructureDefinition/Identifier" />
</type>
</element>
<element id="NHSDigital-Logical-Event.status">
<path value="NHSDigital-Logical-Event.status" />
<element id="NHSDigitalLogicalEvent.status">
<path value="NHSDigitalLogicalEvent.status" />
<short value="Event status" />
<min value="1" />
<max value="1" />
Expand All @@ -39,8 +36,8 @@
<profile value="http://hl7.org/fhir/StructureDefinition/code" />
</type>
</element>
<element id="NHSDigital-Logical-Event.code">
<path value="NHSDigital-Logical-Event.code" />
<element id="NHSDigitalLogicalEvent.code">
<path value="NHSDigitalLogicalEvent.code" />
<short value="What was done (recommended)" />
<min value="0" />
<max value="1" />
Expand All @@ -49,17 +46,17 @@
<profile value="http://hl7.org/fhir/StructureDefinition/CodeableConcept" />
</type>
</element>
<element id="NHSDigital-Logical-Event.subject">
<path value="NHSDigital-Logical-Event.subject" />
<element id="NHSDigitalLogicalEvent.subject">
<path value="NHSDigitalLogicalEvent.subject" />
<min value="1" />
<max value="1" />
<type>
<code value="Reference" />
<targetProfile value="https://fhir.hl7.org.uk/StructureDefinition/UKCore-Patient" />
</type>
</element>
<element id="NHSDigital-Logical-Event.encounter">
<path value="NHSDigital-Logical-Event.encounter" />
<element id="NHSDigitalLogicalEvent.encounter">
<path value="NHSDigitalLogicalEvent.encounter" />
<short value="Encounter created as part of (recommended)" />
<min value="0" />
<max value="1" />
Expand All @@ -68,8 +65,8 @@
<targetProfile value="https://fhir.hl7.org.uk/StructureDefinition/UKCore-Encounter" />
</type>
</element>
<element id="NHSDigital-Logical-Event.performer">
<path value="NHSDigital-Logical-Event.performer" />
<element id="NHSDigitalLogicalEvent.performer">
<path value="NHSDigitalLogicalEvent.performer" />
<min value="1" />
<max value="*" />
<type>
Expand Down
Loading