From 058a67b7ccbb04e9cd166cc351f14465c699d3a5 Mon Sep 17 00:00:00 2001 From: Kate Bobyn Date: Thu, 14 Aug 2025 17:15:39 +0100 Subject: [PATCH 1/3] NRL-1573 add new shared care record pointer type --- layer/nrlf/core/constants.py | 7 +++++++ resources/fhir/NRLF-RecordCategory-ValueSet.json | 8 ++++++-- resources/fhir/NRLF-RecordType-ValueSet.json | 8 ++++++-- tests/performance/environment.py | 1 + 4 files changed, 20 insertions(+), 4 deletions(-) diff --git a/layer/nrlf/core/constants.py b/layer/nrlf/core/constants.py index fb4cf4eff..a17385817 100644 --- a/layer/nrlf/core/constants.py +++ b/layer/nrlf/core/constants.py @@ -67,6 +67,7 @@ class PointerTypes(Enum): MRA_UPPER_LIMB_ARTERY = "https://nicip.nhs.uk|MAULR" MRI_AXILLA_BOTH = "https://nicip.nhs.uk|MAXIB" APPOINTMENT = "http://snomed.info/sct|749001000000101" + SHARED_CARE_RECORD = "http://snomed.info/sct|887181000000106" @staticmethod def list(): @@ -86,6 +87,7 @@ class Categories(Enum): DIAGNOSTIC_STUDIES_REPORT = "http://snomed.info/sct|721981007" DIAGNOSTIC_PROCEDURE = "http://snomed.info/sct|103693007" RECORD_ARTIFACT = "http://snomed.info/sct|419891008" + RECORD_HEADINGS = "http://snomed.info/sct|716931000000107" @staticmethod def list(): @@ -115,6 +117,7 @@ def coding_value(self): "display": "Diagnostic procedure", }, Categories.RECORD_ARTIFACT.value: {"display": "Record artifact"}, + Categories.RECORD_HEADINGS.value: {"display": "Record headings"}, } TYPE_ATTRIBUTES = { @@ -163,6 +166,7 @@ def coding_value(self): PointerTypes.APPOINTMENT.value: { "display": "Appointment", }, + PointerTypes.SHARED_CARE_RECORD.value: {"display": "Clinical summary"}, } TYPE_CATEGORIES = { @@ -191,6 +195,9 @@ def coding_value(self): # # Bookings and Referrals PointerTypes.APPOINTMENT.value: Categories.RECORD_ARTIFACT.value, + # + # Shared Care Records + PointerTypes.SHARED_CARE_RECORD.value: Categories.RECORD_ARTIFACT.value, } PRACTICE_SETTING_VALUE_SET_URL = ( diff --git a/resources/fhir/NRLF-RecordCategory-ValueSet.json b/resources/fhir/NRLF-RecordCategory-ValueSet.json index 1cc60ab77..048d7164e 100644 --- a/resources/fhir/NRLF-RecordCategory-ValueSet.json +++ b/resources/fhir/NRLF-RecordCategory-ValueSet.json @@ -2,10 +2,10 @@ "resourceType": "ValueSet", "id": "NRLF-RecordCategory", "url": "https://fhir.nhs.uk/England/ValueSet/England-NRLRecordCategory", - "version": "1.1.3", + "version": "1.1.4", "name": "NRLF Record Category", "status": "draft", - "date": "2025-05-25T00:00:00+00:00", + "date": "2025-08-14T00:00:00+00:00", "publisher": "NHS Digital", "contact": { "name": "NRL Team at NHS Digital", @@ -45,6 +45,10 @@ { "code": "419891008", "display": "Record artifact" + }, + { + "code": "716931000000107", + "display": "Record headings" } ] } diff --git a/resources/fhir/NRLF-RecordType-ValueSet.json b/resources/fhir/NRLF-RecordType-ValueSet.json index 90c523b14..b2c51d803 100644 --- a/resources/fhir/NRLF-RecordType-ValueSet.json +++ b/resources/fhir/NRLF-RecordType-ValueSet.json @@ -2,10 +2,10 @@ "resourceType": "ValueSet", "id": "NRLF-RecordType", "url": "https://fhir.nhs.uk/England/ValueSet/England-NRLRecordType", - "version": "1.1.3", + "version": "1.1.4", "name": "NRLF Record Type", "status": "draft", - "date": "2025-05-22T00:00:00+00:00", + "date": "2025-08-14T00:00:00+00:00", "publisher": "NHS Digital", "contact": { "name": "NRL Team at NHS Digital", @@ -73,6 +73,10 @@ { "code": "749001000000101", "display": "Appointment" + }, + { + "code": "887181000000106", + "display": "Clinical summary" } ] }, diff --git a/tests/performance/environment.py b/tests/performance/environment.py index fc7861bd7..34d7a4abe 100644 --- a/tests/performance/environment.py +++ b/tests/performance/environment.py @@ -33,6 +33,7 @@ class LogReference: "735324008": "Treatment Escalation Plan", "824321000000109": "Summary Record", "2181441000000107": "Personalised Care and Support Plan", + "887181000000106": "Clinical summary", } From f3a759545d5dfd5398eba77d5a29bb60abefbc42 Mon Sep 17 00:00:00 2001 From: Kate Bobyn Date: Mon, 18 Aug 2025 09:30:00 +0100 Subject: [PATCH 2/3] NRL-1573 add ShCR type to integration tests --- .../producer/createDocumentReference-success.feature | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/tests/features/producer/createDocumentReference-success.feature b/tests/features/producer/createDocumentReference-success.feature index ba081c3d6..e1094739d 100644 --- a/tests/features/producer/createDocumentReference-success.feature +++ b/tests/features/producer/createDocumentReference-success.feature @@ -223,9 +223,10 @@ Feature: Producer - createDocumentReference - Success Scenarios | pointer-type | pointer-category | type-name | | 824321000000109 | 823651000000106 | SUMMARY_RECORD | - Examples: Record Artifacts - | pointer-type | pointer-category | type-name | - | 749001000000101 | 419891008 | APPOINTMENT | + Examples: Record Artifacts and Headings + | pointer-type | pointer-category | type-name | + | 749001000000101 | 419891008 | APPOINTMENT | + | 887181000000106 | 716931000000107 | SHARED_CARE_RECORD | # Create with content and contact details # Create with contact details only From 641b366d665d6fa36a7e226b2fef4deec8a96a19 Mon Sep 17 00:00:00 2001 From: Kate Bobyn Date: Mon, 18 Aug 2025 09:44:51 +0100 Subject: [PATCH 3/3] NRL-1573 fix type-category binding --- layer/nrlf/core/constants.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/layer/nrlf/core/constants.py b/layer/nrlf/core/constants.py index a17385817..17236ac77 100644 --- a/layer/nrlf/core/constants.py +++ b/layer/nrlf/core/constants.py @@ -197,7 +197,7 @@ def coding_value(self): PointerTypes.APPOINTMENT.value: Categories.RECORD_ARTIFACT.value, # # Shared Care Records - PointerTypes.SHARED_CARE_RECORD.value: Categories.RECORD_ARTIFACT.value, + PointerTypes.SHARED_CARE_RECORD.value: Categories.RECORD_HEADINGS.value, } PRACTICE_SETTING_VALUE_SET_URL = (