ObservationNews2Lite

Introduction

The ObservationNews2Lite profile represents the Assessment scale NEWS2 and is a profile created from the resource Observation. The NEWS2 is a scale for the severity of a patients condition. The NEWS2 score is calculated by the vital signs of a patient.

Intended Use

The ObservationNews2Lite is used for communicating the severity of a patients condition by sending the calculated score in observation.value. The score should be between 0 and 20. The News2 profile should also contain references for all vital signs used to calculate the score. It is mandatory to send all the vital signs. The score(observation.value) is optional. In COSMIC the NEWS2 score is mapped to the internal archetype for NEWS2.

The API can be used to create, invalidate/remove and read patient NEWS2 information from/to COSMIC.

Create NEWS2

  • To create data using this API, the user should be a healthcare professional with a specified HSA ID. The healthcare professional should have their assignment, and be connected, to the specified care unit. The care unit should also be specified with a HSA ID.
  • The intended use is in first hand that the API is used within the same caregiver. The user and the specified care unit should exist in COSMIC as well as in the external system.

Invalidate NEWS2

  • If the external system is considered the master system of the information, it should be possible through the API to invalidate/delete the data in COSMIC, if it is invalidated/deleted in the master system.
  • Invalidation of data should be done by a healthcare professional with a specified HSA ID. The healthcare professional should have their assignment, and be connected, to the specified unit. The Unit should also be specified with a HSA ID. This is for traceability purposes and should be for the log.

Read NEWS2

  • The intended use for reading data with this API is in first hand that the API is applied for direct access and should not be used to transfer data between caregivers. If it should be used for "data copying" between caregivers, patient consent must be handled outside the API.

Specific Rules and Limitations

Type Description
Rule For creating NEWS2 data the external user must not be the patient. E.g. A healthcare professional is the intended user to create vital sign data with this API.
Rule All vital signs stated as target types in observation.derivedFrom must be referenced or included in query. One vital sign entry must only be referenced once in the same query.
Rule It should not be possible for the patient to invalidate/delete the NEWS2 after sending it to COSMIC. If this happens, it should be managed manually outside the API.
Rule For reading NEWS2 data the external user should not be someone else than the patient of which NEWS2 belongs. E.g. A healthcare professional is not the intended user of the read vital sign data with this API.
Rule This API should not be used to transfer data between caregivers.
Rule All vital signs stated as target types in element observation.derivedFrom must be included.
Rule The same vital sign profile must not be referenced more than once.

Profile Overview

ObservationNews2Lite

idΣ0..1string
id0..1string
extensionI0..*Extension
versionIdΣ0..1id
lastUpdatedΣ0..1instant
sourceS Σ0..1uri
profileΣ1..1canonical(StructureDefinition)
securityΣ0..*CodingBinding
tagΣ0..*Coding
implicitRulesΣ ?!0..1uri
language0..1codeBinding
text0..1Narrative
contained0..*Resource
extensionI0..*Extension
modifierExtension?! I0..*Extension
id0..1string
extensionI0..*Extension
useΣ ?!0..1codeBinding
typeΣ0..1CodeableConceptBinding
systemΣ1..1uri
valueΣ1..1string
periodΣ I0..1Period
assignerΣ I0..1Reference(Organization)
basedOnΣ I0..0Reference(CarePlan | DeviceRequest | ImmunizationRecommendation | MedicationRequest | NutritionOrder | ServiceRequest)
partOfΣ I0..0Reference(MedicationAdministration | MedicationDispense | MedicationStatement | Procedure | Immunization | ImagingStudy)
statusΣ ?!1..1codeBinding
category0..0CodeableConceptBinding
id0..1string
extensionI0..*Extension
id0..1string
extensionI0..*Extension
systemΣ1..1uriFixed Value
versionΣ0..1string
codeΣ1..1codeFixed Value
displayΣ0..1string
userSelectedΣ0..1boolean
textΣ0..1string
id0..1string
extensionI0..*Extension
referenceΣ I0..1string
typeΣ0..1uriBinding
id0..1string
extensionI0..*Extension
useΣ ?!0..1codeBinding
typeΣ0..1CodeableConceptBinding
systemΣ1..1uriFixed Value
valueΣ1..1string
periodΣ I0..1Period
assignerΣ I0..1Reference(Organization)
id0..1string
extensionI0..*Extension
useΣ ?!0..1codeBinding
typeΣ0..1CodeableConceptBinding
systemΣ1..1uriFixed Value
valueΣ1..1string
periodΣ I0..1Period
assignerΣ I0..1Reference(Organization)
displayΣ0..1string
focusΣ I0..0Reference(Resource)
encounterΣ I0..1Reference(Encounter)
effectiveDateTimedateTime
issuedΣ0..0instant
id0..1string
extensionI0..*Extension
referenceΣ I0..1string
typeΣ1..1uriBindingFixed Value
id0..1string
extensionI0..*Extension
useΣ ?!0..1codeBinding
typeΣ0..1CodeableConceptBinding
systemΣ1..1uriFixed Value
valueΣ1..1string
periodΣ I0..1Period
assignerΣ I0..1Reference(Organization)
displayΣ0..1string
id0..1string
extensionI0..*Extension
referenceΣ I0..1string
typeΣ1..1uriBindingFixed Value
id0..1string
extensionI0..*Extension
useΣ ?!0..1codeBinding
typeΣ0..1CodeableConceptBinding
systemΣ1..1uriFixed Value
valueΣ1..1string
periodΣ I0..1Period
assignerΣ I0..1Reference(Organization)
displayΣ0..1string
id0..1string
extensionI0..*Extension
referenceΣ I0..1string
typeΣ1..1uriBindingFixed Value
identifierΣ0..1Identifier
displayΣ0..1string
id0..1string
extensionI0..*Extension
valueΣ1..1decimal
comparatorΣ ?!0..1codeBinding
unitΣ0..1string
systemΣ I0..1uri
codeΣ0..1code
dataAbsentReasonI0..0CodeableConceptBinding
interpretation0..0CodeableConceptBinding
note0..1Annotation
bodySite0..0CodeableConcept
method0..0CodeableConcept
specimenI0..0Reference(Specimen)
deviceI0..0Reference(Device | DeviceMetric)
hasMemberΣ I0..0Reference(Observation | QuestionnaireResponse | MolecularSequence)
derivedFromΣ I6..6Reference(ObservationRespiratoryRateLite | ObservationBPLite | ObservationHeartRateLite | ObservationAcvpuLite | ObservationOxygenSaturationLite | ObservationBodyTemperatureLite)

Statuses

FHIR status Status in COSMIC
preliminary unsigned
final signed, completedNonSignable
entered-in-error invalidated
cancelled removed

Terminology Bindings

The ObservationNews2Lite profile is bound by the use of the Snomed CT code: 1104051000000101 | Royal College of Physicians National Early Warning Score 2 total score (observable entity) |

Versions

COS version Profile version Required COSMIC version Date Description
3.0.0 1.1.0 R8.3.05 May 2022 Updates in target profile for performer.organization which makes it possible to retrieve PDL units
COS Feb 2021 1.0.0 R8.2.08 Feb 2021 Initial version, support for GET and POST.

Supported Operations

HTTP Methods

Method Description
GET Used to get or search for NEWS2 entries
POST Used to create an NEWS2 entry. If successful, the operation will return id in response, can also be used for invalidate

Query Operations

Search Parameters

Parameter Format Mandatory Comment
date date (ddmmyy) Yes Obtained date/time. The date is always a range, i.e. two dates are used as search parameters.
status token No The status of the observation. See supported statuses in #Statuses
patient reference Yes The subject that the observation is about (if patient). The reference can be a literal reference ex: subject=1 or a Business identifier as well.ex: subject.identifier=urn:oid:1.2.752.129.2.1.3.1|20200109-6078
code token No SNOMED CT code of the observation type
profile string No search on the profile url

Supported Queries

  1. GET [baseURL]/Observation/?search?patient= (Search)
  2. GET [baseURL]/Observation/?search?status= (Search)
  3. GET [baseURL]/Observation/?search?date=[gt_date]&date=[lt_date] (Search)
  4. GET [baseURL]/Observation/?search?code= (Search)
  5. GET [baseURL]/Observation/?search?profile= (Search)
  6. GET [baseURL]/Observation/?search?patient=&_include=Observation:performer (Search)
  7. GET [baseURL]/Observation/?search?status=[status]&_include=[] (Search)
  8. GET [baseURL]/Observation/?search?date=[gt_date]&date=[lt_date]&_include=[] (Search)
  9. GET [baseURL]/Observation/?search?code=[code]&_include=[] (Search)
  10. GET [baseURL]/Observation/?search?profile=[url]&_include=[] (Search)
  11. POST [baseURL]/Observation (Post)

Supported SearchInclude Operations

SearchInclude operations possible for all vital signs profile referenced in Observation.derivedFrom. The following searchInclude parameters are supported:

  1. ObservationRespiratoryRateLite
  2. ObservationBPLite
  3. ObservationHeartRateLite
  4. ObservationAcvpuLite
  5. ObservationOxygenSaturationLite
  6. ObservationBodyTemperatureLite
Supported Format:

IncludeParam(allow = ["Observation:derived-from", "Observation.derivedFrom"]

Supported RevInclude Operations

No supported parameters

Error Codes

In the table below, a few error messages specific for Observation are listed.

Code Description Comment
400 "Subject and Performer Patient references does not match."
400 "The date time: < date > is invalid" the dateTime must contain a time component
400 "Server supports only FINAL status when posting Observations" Statuses preliminary, entered-in-error, cancelled are not supported when posting a NEWS2.