Population of CodeableConcept
CodeableConcept data type is used throughout this capability and the following guidance SHALL be followed in order to ensure consistent representation of coded data:
Definitions of mandatory, required and optional
Throughout the profile pages within the specification we have a label for each data item named “Optionality”, which details whether or not it has to be included in the resource. This item has 3 possible values:
- Mandatory - if the data item MUST be recorded in the resource every time it is produced.
- Required - if the system that is providing the data item contains this piece of data then it MUST include it in the resource.
- Optional - the system has the option to include this data if it is available.
An example of a ‘required’ data item is the extension to the MedicationRequest profile for StatusReason.
StatusReason is used in GP Connect to carry information about why the status of a medication has been changed to stopped. In GP systems when a medication is stopped the clinician has to enter a date when it was stopped and the reason why it was stopped.
Clearly not every medication will have a status of stopped but when it does this information is of a high clinical importance and MUST be included in the message.
Definition of ‘Must support’ for use in the FHIR profiles
In FHIR it alows the use of a flag titled ‘Must support’ to be attached to any give data item. The FHIR specification states ‘The meaning of “support” is not defined by the base FHIR specification, but can be set to true in a profile. When a profile does this, it SHALL also make clear exactly what kind of “support” is required’
In the GP Connect FHIR profiles we have used the ‘Must support’ flag to represent the required data items as described above.
This leads to our definition for use in GP Connect,
Must support = if a system is providing resources and one of the items is flagged as ‘Must support’ the sytem MUST include the data item if it is available to be sent.
Using the List resource
List resource in FHIR is used to manage collections of resources.
In GP Connect it is used to organise data returned by a query into groups of resources that can then be processed more easily. For each clinical area query, GP Connect will return a list that identifies the data returned for that query.
- When an API call returns data for more than one clinical area, the list will identify which data has been returned for which clinical area.
- Where there are no items returned, the list will be empty.
- Where the return includes warning messages (for example, when clinical data is excluded), those messages will be in the list profile.manage negation where no resources are present in a system to be returned by a query. An attribution that is common to the resources it references will be returned, differentiating between items at different stages of a workflow, providing a mechanism to deal with warnings that can be applied to the group of resources.
The following table provides details of the warning codes that are to be used in the warningCode extension in GP Connect. More guidance for each code follows in the subsequent sections.
|Confidential Items||confidential-items||Items excluded due to confidentiality and/or patient preferences.|
|Data in Transit||data-in-transit||Patient record transfer from previous GP practice not yet complete; information recorded before dd-Mmm-yyyy may be missing.|
Where items have been excluded from the returned resources due to patient consent preferences or as they are part of the exclusion dataset this MUST be indicated at the list level. If an item that would have been an entry in a list is excluded the warningCode field MUST be populated using the confidential items warning code from the above table. The associated text MUST also be added into the note field when the code is used.
Note: If the results of a search contained only confidential items, it would present as an
List with no entries, an
emptyReason and the Confidential Items warning code.
Data in transit
This only refers to data transmitted from GP to GP when a patient moves GP practice. This is where a patient is registered at their new GP practice but their medical records from their previous GP practice have not yet been received and/or incorporated into their new GP practice system. When this takes place all the lists returned MUST be populated using the data in transit warning code from the above table. The associated text MUST also be added into the note field when the code is used. Set dd-mmm-yyyy to the date the patient registered at their new GP practice.
Data awaiting filing
When a GP Clinical system receives electronic data about a patient it will go through filing process during which the information is reviewed by a user and if suitable integrated into the patient’s medical record. The details on how this process is managed vary between different GP Clinical Systems and GP Practices.
GP Connect will not return electronic data that has been received by the GP Clinical System but has not yet been through the filing process. The data will only become available through GP Connect once it has integrated into the patient’s medical record.
Common code systems
The following common code systems are used when populating
CodeableConcept.coding.system in resources for this capability:
|Read codes V2||
|Read codes CTV3||
|EMIS drug codes||
|Multilex drug codes||
|Resip UK Gemscript drug codes||
Common identifier systems
The following common identifier systems are used when populating
Identifier.system in resources for this capability:
|ODS organisation code||
|ODS site code||
|SDS user ID||
|SDS role profile ID||
|General Medical Council (GMC) number||
|General Practitioner (GMP) number||
|Cross care setting identifier||
|EPS Line item identifier||
The following profiled STU3 FHIR® resources are used in this capability pack:
Business identifiers for resources
Each clinical resource will have a unique business identifier that will be persisted to help consuming systems distinguish data they have integrated previously to data which is new to them. These identifiers will be scoped by a supplier specific namespace to ensure uniqueness.
- Observation - uncategorised data
- List - consultation structure
- Observation - narrative data
- Condition - ProblemHeader