Interweave Implementation Guide
0.1.0 - ci-build United Kingdom flag

Interweave Implementation Guide - Local Development build (v0.1.0) built by the FHIR (HL7® FHIR® Standard) Build Tools. See the STU3 profiles here.

Resource Profile: InterweaveObservationPregnancyEDD

Official URL: https://fhir.interweavedigital.nhs.uk/R4/StructureDefinition/Interweave-Observation-Pregnancy-EDD Version: 0.0.1
Draft as of 2024-07-15 Computable Name: InterweaveObservationPregnancyEDD

Interweave Pregnancy Estimated Delivery Date resource profile. - DRAFT

Status: DRAFT: For Review

Introduction

This profile sets out the expectations for the interweave preganancy Estimated date of delivery observation resource. UK Core does not have a profile for this observation, and therefore the base for this profile is the Interweave-Observation. We stipulate the use of SNOMED concept codes where possible and have removed the component field.

Mandatory fields

The following mandatory fields are defined:

  1. status – Fixed value of ‘final’. Only finalised observations should be shared.

  2. category – The classification of the type of observation e.g. exam, survey, vital-signs etc. We require that the FHIR Observation category is always populated. There is also an option to provide additional local categories to enable FHIR searching on local categories.

  3. code – The SNOMED CT coded value to represent, which method was used to derive the observation for estimated delivery date.

  4. subject – Reference to the patient who is the subject of this measurement.

  5. effective – An important field to provide details of the date/time at during which the observation was taken.

  6. valueDateTime – The actual result (Estimated Delivery Date) recorded.

Must Support fields

In addition the following fields are "Must Support" - ie they must be populated if relevant and known.

  1. identifier – A Local Id should be provided, such that could be quoted if manually getting in touch to find out more.

  2. encounter – This will typically be the encounter the event occurred within, but some events may be initiated prior to or after the official completion of an encounter but still be tied to the context of the encounter (e.g. pre-admission laboratory tests). For some observations it may be important to know the link between an observation and a particular encounter.

  3. performer – We limit this field to reference practitioner / practitionerRole/ CareTeam resources only. The organization responsible for the observation can be obtained via the provenance tag.

  4. note – Comments in addition to the result are often recorded for observations, it is therefore important to provide this field when available to give the consumer the full result information.

Optional fields

Other fields are optional and may be populated if known - on the understanding that not all data consumers will necessarily make use of them. Points of note include:

  • derivedFrom – To reduce complexity, we limit the related field’s usage to only allow links to observation / Questionnaire Response resources, from which the primary observation’s value was derived. E.g. An observation may have a value which is a score, and that score may have been derived from several other observations.

Discouraged or Removed fields

  • Component – Removed to aid the data consumer, we ask that the result is provided in the valueQuantity field and not as a component.

  • basedOn – This field is discouraged as it does not appear to provide information which would be beneficial in a shared care record. It also allows references to a raft of request/order resources which introduces a lot of complexity for a data consumer.

  • partOf – This field is discouraged as it does not appear to provide information which would be beneficial in a shared care record. It also allows references to a raft of request/order resources which introduces a lot of complexity for a data consumer.

  • issued – This field has been removed as this information can be taken from the mandatory meta.lastUpdated field, and to also avoid any confusion with the other date fields.

  • interpretation
  • referenceRange
  • specimen
  • device
  • dataAbsentReason
  • bodySite
  • method

Usage:

  • This Resource Profile is not used by any profiles in this Implementation Guide

Formal Views of Profile Content

Description of Profiles, Differentials, Snapshots and how the different presentations work.

This structure is derived from InterweaveObservation

NameFlagsCard.TypeDescription & Constraintsdoco
.. Observation 0..* InterweaveObservation Measurements and simple assertions
... Slices for extension Content/Rules for all slices
.... extension:bodyStructureR5 0..0
.... extension:valuePrecision 0..0
... status 1..1 code Fixed value of ‘final’.
Fixed Value: final
... code 1..1 CodeableConcept The type of observation (code / type).
Binding: InterweavePregnancyEDDCode (required)
... encounter 0..1 Reference(InterweaveEncounter) The encounter during which this observation is made.
... effective[x] 1..1 dateTime This is the time/time period during which the observation was taken.
... performer 0..* Reference(InterweavePractitioner | InterweavePractitionerRole | CareTeam) Who is responsible for the observation.
... value[x] 1..1 dateTime Actual result.
... dataAbsentReason 0..0
... interpretation 0..0
... note 0..1 Annotation Comments about the result
... bodySite 0..0
... method 0..0
... specimen 0..0
... device 0..0
... referenceRange 0..0
... component 0..0

doco Documentation for this format

Terminology Bindings (Differential)

PathConformanceValueSetURI
Observation.coderequiredInterweavePregnancyEDDCode
https://fhir.interweavedigital.nhs.uk/R4/ValueSet/Interweave-PregnancyEDDCode
from this IG
NameFlagsCard.TypeDescription & Constraintsdoco
.. Observation C 0..* InterweaveObservation Measurements and simple assertions
obs-6: dataAbsentReason SHALL only be present if Observation.value[x] is not present
obs-7: If Observation.code is the same as an Observation.component.code then the value element associated with the code SHALL NOT be present
... id SΣ 0..1 id Logical id of this artifact
... meta Σ 0..1 Meta Metadata about the resource
.... versionId SΣ 0..1 id Version specific identifier
.... lastUpdated SΣ 0..1 instant MANDATORY except in Contained Resources. When the resource version last changed.
.... profile SΣ 0..* canonical(StructureDefinition) Profiles this resource claims to conform to. Should list (i) this profile (ii) base profile for this resource.
.... Slices for tag Σ 0..* Coding Tags applied to this resource
Slice: Unordered, Open by value:system
Binding: CommonTags (example): Codes that represent various types of tags, commonly workflow-related; e.g. "Needs review by Dr. Jones".


..... tag:Source SΣ 0..1 Coding MANDATORY except in Contained Resources. The Data Provider Id (and display text) of the system supplying the data
Binding: CommonTags (example): Codes that represent various types of tags, commonly workflow-related; e.g. "Needs review by Dr. Jones".


...... system Σ 1..1 uri Identity of the terminology system
Fixed Value: https://fhir.interweavedigital.nhs.uk/Source
...... code SΣ 1..1 code The Data Provider Id of the system supplying the data
...... display SΣ 1..1 string Name of the system supplying the data
..... tag:Provenance SΣ 0..1 Coding MANDATORY except in Contained Resources. The ODS Code (and display text) of the organisation responsible for the data
Binding: CommonTags (example): Codes that represent various types of tags, commonly workflow-related; e.g. "Needs review by Dr. Jones".


...... system Σ 1..1 uri Identity of the terminology system
Fixed Value: https://fhir.interweavedigital.nhs.uk/Provenance
...... code SΣ 1..1 code The ODS Code of the organisation responsible for the data
...... display SΣ 1..1 string Name of the organisation supplying the data
... implicitRules ?!Σ 0..1 uri DISCOURAGED - may not be honoured by Data Consumers
... modifierExtension ?! 0..* Extension Extensions that cannot be ignored
... identifier SΣ 0..* Identifier Business Identifier for observation
.... extension 0..0
.... use ?!Σ 0..1 code usual | official | temp | secondary | old (If known)
Binding: IdentifierUse (required): Identifies the purpose for this identifier, if known .

... status ?!SΣ 1..1 code Fixed value of ‘final’.
Binding: ObservationStatus (required): Codes providing the status of an observation.


Fixed Value: final
... Slices for category S 1..* CodeableConcept A code that classifies the general type of observation being made.
Slice: Unordered, Open by value:coding.system
Binding: ObservationCategoryCodes (preferred): Codes for high level observation categories.


.... category:All Slices Content/Rules for all slices
..... extension 0..0
.... category:observationCategory S 1..1 CodeableConcept A code that classifies the general type of observation being made.
Binding: ObservationCategoryCodes (required): Codes for high level observation categories.


..... extension 0..0
... code SΣ 1..1 CodeableConcept The type of observation (code / type).
Binding: InterweavePregnancyEDDCode (required)
.... extension 0..0
... subject SΣ 1..1 Reference(InterweavePatient) The patient whose characteristics (direct or indirect) are described by the observation and into whose record the observation is placed.
.... extension 0..0
.... reference ΣC 1..1 string Reference to a resource (could be Contained)
.... display Σ 1..1 string Description of the referenced resource
... encounter SΣ 0..1 Reference(InterweaveEncounter) The encounter during which this observation is made.
... effective[x] SΣ 1..1 dateTime This is the time/time period during which the observation was taken.
... performer SΣ 0..* Reference(InterweavePractitioner | InterweavePractitionerRole | CareTeam) Who is responsible for the observation.
.... extension 0..0
.... reference ΣC 1..1 string Reference to a resource (could be Contained)
.... display Σ 1..1 string Description of the referenced resource
... value[x] SΣC 1..1 dateTime Actual result.
... note S 0..1 Annotation Comments about the result

doco Documentation for this format

Terminology Bindings

PathConformanceValueSet / CodeURI
Observation.meta.tagexampleCommonTags
http://hl7.org/fhir/ValueSet/common-tags
from the FHIR Standard
Observation.meta.tag:SourceexampleCommonTags
http://hl7.org/fhir/ValueSet/common-tags
from the FHIR Standard
Observation.meta.tag:ProvenanceexampleCommonTags
http://hl7.org/fhir/ValueSet/common-tags
from the FHIR Standard
Observation.extension:triggeredByR5.extension:type.value[x]requiredhttp://hl7.org/fhir/ValueSet/observation-triggeredbytype
http://hl7.org/fhir/ValueSet/observation-triggeredbytype
Observation.identifier.userequiredIdentifierUse
http://hl7.org/fhir/ValueSet/identifier-use|4.0.1
from the FHIR Standard
Observation.statusrequiredFixed Value: final
http://hl7.org/fhir/ValueSet/observation-status|4.0.1
from the FHIR Standard
Observation.categorypreferredObservationCategoryCodes
http://hl7.org/fhir/ValueSet/observation-category
from the FHIR Standard
Observation.category:observationCategoryrequiredObservationCategoryCodes
http://hl7.org/fhir/ValueSet/observation-category
from the FHIR Standard
Observation.coderequiredInterweavePregnancyEDDCode
https://fhir.interweavedigital.nhs.uk/R4/ValueSet/Interweave-PregnancyEDDCode
from this IG
Observation.component.codepreferredUKCoreObservationType
https://fhir.hl7.org.uk/ValueSet/UKCore-ObservationType
from this IG
Observation.component.dataAbsentReasonrequiredDataAbsentReason
http://hl7.org/fhir/ValueSet/data-absent-reason
from the FHIR Standard
Observation.component.interpretationrequiredObservationInterpretationCodes
http://hl7.org/fhir/ValueSet/observation-interpretation
from the FHIR Standard

Constraints

IdGradePath(s)DetailsRequirements
dom-2errorObservationIf the resource is contained in another resource, it SHALL NOT contain nested Resources
: contained.contained.empty()
dom-3errorObservationIf the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource
: contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty()
dom-4errorObservationIf a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated
: contained.meta.versionId.empty() and contained.meta.lastUpdated.empty()
dom-5errorObservationIf a resource is contained in another resource, it SHALL NOT have a security label
: contained.meta.security.empty()
dom-6best practiceObservationA resource should have narrative for robust management
: text.`div`.exists()
ele-1error**ALL** elementsAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1error**ALL** extensionsMust have either extensions or value[x], not both
: extension.exists() != value.exists()
obs-6errorObservationdataAbsentReason SHALL only be present if Observation.value[x] is not present
: dataAbsentReason.empty() or value.empty()
obs-7errorObservationIf Observation.code is the same as an Observation.component.code then the value element associated with the code SHALL NOT be present
: value.empty() or component.code.where(coding.intersect(%resource.code.coding).exists()).empty()
NameFlagsCard.TypeDescription & Constraintsdoco
.. Observation C 0..* InterweaveObservation Measurements and simple assertions
obs-6: dataAbsentReason SHALL only be present if Observation.value[x] is not present
obs-7: If Observation.code is the same as an Observation.component.code then the value element associated with the code SHALL NOT be present
... id SΣ 0..1 id Logical id of this artifact
... meta Σ 0..1 Meta Metadata about the resource
.... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
.... versionId SΣ 0..1 id Version specific identifier
.... lastUpdated SΣ 0..1 instant MANDATORY except in Contained Resources. When the resource version last changed.
.... source Σ 0..1 uri Identifies where the resource comes from
.... profile SΣ 0..* canonical(StructureDefinition) Profiles this resource claims to conform to. Should list (i) this profile (ii) base profile for this resource.
.... security Σ 0..* Coding DISCOURAGED - may not be honoured by Data Consumers
Binding: All Security Labels (extensible): Security Labels from the Healthcare Privacy and Security Classification System.


.... Slices for tag Σ 0..* Coding Tags applied to this resource
Slice: Unordered, Open by value:system
Binding: CommonTags (example): Codes that represent various types of tags, commonly workflow-related; e.g. "Needs review by Dr. Jones".


..... tag:Source SΣ 0..1 Coding MANDATORY except in Contained Resources. The Data Provider Id (and display text) of the system supplying the data
Binding: CommonTags (example): Codes that represent various types of tags, commonly workflow-related; e.g. "Needs review by Dr. Jones".


...... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
...... system Σ 1..1 uri Identity of the terminology system
Fixed Value: https://fhir.interweavedigital.nhs.uk/Source
...... code SΣ 1..1 code The Data Provider Id of the system supplying the data
...... display SΣ 1..1 string Name of the system supplying the data
...... userSelected Σ 0..1 boolean If this coding was chosen directly by the user
..... tag:Provenance SΣ 0..1 Coding MANDATORY except in Contained Resources. The ODS Code (and display text) of the organisation responsible for the data
Binding: CommonTags (example): Codes that represent various types of tags, commonly workflow-related; e.g. "Needs review by Dr. Jones".


...... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
...... system Σ 1..1 uri Identity of the terminology system
Fixed Value: https://fhir.interweavedigital.nhs.uk/Provenance
...... code SΣ 1..1 code The ODS Code of the organisation responsible for the data
...... display SΣ 1..1 string Name of the organisation supplying the data
...... userSelected Σ 0..1 boolean If this coding was chosen directly by the user
... implicitRules ?!Σ 0..1 uri DISCOURAGED - may not be honoured by Data Consumers
... text 0..1 Narrative DISCOURAGED - the preferred approach is to offer structured data fields which a Data Consumer can then render and present in a manner most suited to its users
... contained 0..* Resource Contained, inline Resources
... Slices for extension 0..* Extension Extension
Slice: Unordered, Open by value:url
... modifierExtension ?! 0..* Extension Extensions that cannot be ignored
... identifier SΣ 0..* Identifier Business Identifier for observation
.... extension 0..0
.... use ?!Σ 0..1 code usual | official | temp | secondary | old (If known)
Binding: IdentifierUse (required): Identifies the purpose for this identifier, if known .

.... type Σ 0..1 CodeableConcept Description of identifier
Binding: Identifier Type Codes (extensible): A coded type for an identifier that can be used to determine which identifier to use for a specific purpose.

.... system Σ 0..1 uri The namespace for the identifier value
Example General: http://www.acme.com/identifiers/patient
.... value Σ 0..1 string The value that is unique
Example General: 123456
.... period Σ 0..1 Period Time period when id is/was valid for use
.... assigner Σ 0..1 Reference(InterweaveOrganization) Organization that issued id (may be just text)
... basedOn Σ 0..* Reference(CarePlan | DeviceRequest | ImmunizationRecommendation | MedicationRequest | NutritionOrder | ServiceRequest) DISCOURAGED - This field does not appear to provide information which would be beneficial in a shared care record. It also allows references to a raft of request/order resources which introduces a lot of complexity for a data consumer.
... partOf Σ 0..* Reference(MedicationAdministration | MedicationDispense | MedicationStatement | Procedure | Immunization | ImagingStudy) DISCOURAGED - This field does not appear to provide information which would be beneficial in a shared care record. It also allows references to a raft of request/order resources which introduces a lot of complexity for a data consumer.
... status ?!SΣ 1..1 code Fixed value of ‘final’.
Binding: ObservationStatus (required): Codes providing the status of an observation.


Fixed Value: final
... Slices for category S 1..* CodeableConcept A code that classifies the general type of observation being made.
Slice: Unordered, Open by value:coding.system
Binding: ObservationCategoryCodes (preferred): Codes for high level observation categories.


.... category:All Slices Content/Rules for all slices
..... extension 0..0
..... coding Σ 0..* Coding Code defined by a terminology system
...... extension 0..0
...... system Σ 1..1 uri Identity of the terminology system
...... code Σ 1..1 code Symbol in syntax defined by the system
...... display Σ 1..1 string Representation defined by the system
...... userSelected Σ 0..1 boolean If this coding was chosen directly by the user
..... text Σ 0..1 string Plain text representation of the concept
.... category:observationCategory S 1..1 CodeableConcept A code that classifies the general type of observation being made.
Binding: ObservationCategoryCodes (required): Codes for high level observation categories.


..... extension 0..0
..... coding Σ 0..* Coding Code defined by a terminology system
...... extension 0..0
...... system Σ 1..1 uri Identity of the terminology system
Fixed Value: http://terminology.hl7.org/CodeSystem/observation-category
...... version Σ 0..1 string Version of the system - if relevant
...... code Σ 1..1 code Symbol in syntax defined by the system
...... display Σ 1..1 string Representation defined by the system
...... userSelected Σ 0..1 boolean If this coding was chosen directly by the user
..... text Σ 0..1 string Plain text representation of the concept
... code SΣ 1..1 CodeableConcept The type of observation (code / type).
Binding: InterweavePregnancyEDDCode (required)
.... extension 0..0
.... coding Σ 0..* Coding Code defined by a terminology system
..... extension 0..0
..... system Σ 1..1 uri Identity of the terminology system
..... version Σ 0..1 string Version of the system - if relevant
..... code Σ 1..1 code Symbol in syntax defined by the system
..... display Σ 1..1 string Representation defined by the system
..... userSelected Σ 0..1 boolean If this coding was chosen directly by the user
.... text Σ 0..1 string Plain text representation of the concept
... subject SΣ 1..1 Reference(InterweavePatient) The patient whose characteristics (direct or indirect) are described by the observation and into whose record the observation is placed.
.... extension 0..0
.... reference ΣC 1..1 string Reference to a resource (could be Contained)
.... type Σ 0..1 uri Type the reference refers to (e.g. "Patient")
Binding: ResourceType (extensible): Aa resource (or, for logical models, the URI of the logical model).

.... identifier Σ 0..1 Identifier If relevant could include an id
.... display Σ 1..1 string Description of the referenced resource
... encounter SΣ 0..1 Reference(InterweaveEncounter) The encounter during which this observation is made.
... effective[x] SΣ 1..1 dateTime This is the time/time period during which the observation was taken.
... performer SΣ 0..* Reference(InterweavePractitioner | InterweavePractitionerRole | CareTeam) Who is responsible for the observation.
.... extension 0..0
.... reference ΣC 1..1 string Reference to a resource (could be Contained)
.... type Σ 0..1 uri Type the reference refers to (e.g. "Patient")
Binding: ResourceType (extensible): Aa resource (or, for logical models, the URI of the logical model).

.... identifier Σ 0..1 Identifier If relevant could include an id
.... display Σ 1..1 string Description of the referenced resource
... value[x] SΣC 1..1 dateTime Actual result.
... note S 0..1 Annotation Comments about the result
... derivedFrom Σ 0..* Reference(InterweaveObservation | InterweaveQuestionnaireResponse) Related measurements the observation is made from

doco Documentation for this format

Terminology Bindings

PathConformanceValueSet / CodeURI
Observation.meta.securityextensibleAll Security Labels
http://hl7.org/fhir/ValueSet/security-labels
from the FHIR Standard
Observation.meta.tagexampleCommonTags
http://hl7.org/fhir/ValueSet/common-tags
from the FHIR Standard
Observation.meta.tag:SourceexampleCommonTags
http://hl7.org/fhir/ValueSet/common-tags
from the FHIR Standard
Observation.meta.tag:ProvenanceexampleCommonTags
http://hl7.org/fhir/ValueSet/common-tags
from the FHIR Standard
Observation.languagepreferredCommonLanguages
Additional Bindings Purpose
AllLanguages Max Binding
http://hl7.org/fhir/ValueSet/languages
from the FHIR Standard
Observation.extension:triggeredByR5.extension:type.value[x]requiredhttp://hl7.org/fhir/ValueSet/observation-triggeredbytype
http://hl7.org/fhir/ValueSet/observation-triggeredbytype
Observation.identifier.userequiredIdentifierUse
http://hl7.org/fhir/ValueSet/identifier-use|4.0.1
from the FHIR Standard
Observation.identifier.typeextensibleIdentifier Type Codes
http://hl7.org/fhir/ValueSet/identifier-type
from the FHIR Standard
Observation.statusrequiredFixed Value: final
http://hl7.org/fhir/ValueSet/observation-status|4.0.1
from the FHIR Standard
Observation.categorypreferredObservationCategoryCodes
http://hl7.org/fhir/ValueSet/observation-category
from the FHIR Standard
Observation.category:observationCategoryrequiredObservationCategoryCodes
http://hl7.org/fhir/ValueSet/observation-category
from the FHIR Standard
Observation.coderequiredInterweavePregnancyEDDCode
https://fhir.interweavedigital.nhs.uk/R4/ValueSet/Interweave-PregnancyEDDCode
from this IG
Observation.subject.typeextensibleResourceType
http://hl7.org/fhir/ValueSet/resource-types
from the FHIR Standard
Observation.performer.typeextensibleResourceType
http://hl7.org/fhir/ValueSet/resource-types
from the FHIR Standard
Observation.referenceRange.typepreferredObservationReferenceRangeMeaningCodes
http://hl7.org/fhir/ValueSet/referencerange-meaning
from the FHIR Standard
Observation.referenceRange.appliesToexampleObservationReferenceRangeAppliesToCodes
http://hl7.org/fhir/ValueSet/referencerange-appliesto
from the FHIR Standard
Observation.component.codepreferredUKCoreObservationType
https://fhir.hl7.org.uk/ValueSet/UKCore-ObservationType
from this IG
Observation.component.dataAbsentReasonrequiredDataAbsentReason
http://hl7.org/fhir/ValueSet/data-absent-reason
from the FHIR Standard
Observation.component.interpretationrequiredObservationInterpretationCodes
http://hl7.org/fhir/ValueSet/observation-interpretation
from the FHIR Standard

Constraints

IdGradePath(s)DetailsRequirements
dom-2errorObservationIf the resource is contained in another resource, it SHALL NOT contain nested Resources
: contained.contained.empty()
dom-3errorObservationIf the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource
: contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty()
dom-4errorObservationIf a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated
: contained.meta.versionId.empty() and contained.meta.lastUpdated.empty()
dom-5errorObservationIf a resource is contained in another resource, it SHALL NOT have a security label
: contained.meta.security.empty()
dom-6best practiceObservationA resource should have narrative for robust management
: text.`div`.exists()
ele-1error**ALL** elementsAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1error**ALL** extensionsMust have either extensions or value[x], not both
: extension.exists() != value.exists()
obs-6errorObservationdataAbsentReason SHALL only be present if Observation.value[x] is not present
: dataAbsentReason.empty() or value.empty()
obs-7errorObservationIf Observation.code is the same as an Observation.component.code then the value element associated with the code SHALL NOT be present
: value.empty() or component.code.where(coding.intersect(%resource.code.coding).exists()).empty()

Differential View

This structure is derived from InterweaveObservation

NameFlagsCard.TypeDescription & Constraintsdoco
.. Observation 0..* InterweaveObservation Measurements and simple assertions
... Slices for extension Content/Rules for all slices
.... extension:bodyStructureR5 0..0
.... extension:valuePrecision 0..0
... status 1..1 code Fixed value of ‘final’.
Fixed Value: final
... code 1..1 CodeableConcept The type of observation (code / type).
Binding: InterweavePregnancyEDDCode (required)
... encounter 0..1 Reference(InterweaveEncounter) The encounter during which this observation is made.
... effective[x] 1..1 dateTime This is the time/time period during which the observation was taken.
... performer 0..* Reference(InterweavePractitioner | InterweavePractitionerRole | CareTeam) Who is responsible for the observation.
... value[x] 1..1 dateTime Actual result.
... dataAbsentReason 0..0
... interpretation 0..0
... note 0..1 Annotation Comments about the result
... bodySite 0..0
... method 0..0
... specimen 0..0
... device 0..0
... referenceRange 0..0
... component 0..0

doco Documentation for this format

Terminology Bindings (Differential)

PathConformanceValueSetURI
Observation.coderequiredInterweavePregnancyEDDCode
https://fhir.interweavedigital.nhs.uk/R4/ValueSet/Interweave-PregnancyEDDCode
from this IG

Key Elements View

NameFlagsCard.TypeDescription & Constraintsdoco
.. Observation C 0..* InterweaveObservation Measurements and simple assertions
obs-6: dataAbsentReason SHALL only be present if Observation.value[x] is not present
obs-7: If Observation.code is the same as an Observation.component.code then the value element associated with the code SHALL NOT be present
... id SΣ 0..1 id Logical id of this artifact
... meta Σ 0..1 Meta Metadata about the resource
.... versionId SΣ 0..1 id Version specific identifier
.... lastUpdated SΣ 0..1 instant MANDATORY except in Contained Resources. When the resource version last changed.
.... profile SΣ 0..* canonical(StructureDefinition) Profiles this resource claims to conform to. Should list (i) this profile (ii) base profile for this resource.
.... Slices for tag Σ 0..* Coding Tags applied to this resource
Slice: Unordered, Open by value:system
Binding: CommonTags (example): Codes that represent various types of tags, commonly workflow-related; e.g. "Needs review by Dr. Jones".


..... tag:Source SΣ 0..1 Coding MANDATORY except in Contained Resources. The Data Provider Id (and display text) of the system supplying the data
Binding: CommonTags (example): Codes that represent various types of tags, commonly workflow-related; e.g. "Needs review by Dr. Jones".


...... system Σ 1..1 uri Identity of the terminology system
Fixed Value: https://fhir.interweavedigital.nhs.uk/Source
...... code SΣ 1..1 code The Data Provider Id of the system supplying the data
...... display SΣ 1..1 string Name of the system supplying the data
..... tag:Provenance SΣ 0..1 Coding MANDATORY except in Contained Resources. The ODS Code (and display text) of the organisation responsible for the data
Binding: CommonTags (example): Codes that represent various types of tags, commonly workflow-related; e.g. "Needs review by Dr. Jones".


...... system Σ 1..1 uri Identity of the terminology system
Fixed Value: https://fhir.interweavedigital.nhs.uk/Provenance
...... code SΣ 1..1 code The ODS Code of the organisation responsible for the data
...... display SΣ 1..1 string Name of the organisation supplying the data
... implicitRules ?!Σ 0..1 uri DISCOURAGED - may not be honoured by Data Consumers
... modifierExtension ?! 0..* Extension Extensions that cannot be ignored
... identifier SΣ 0..* Identifier Business Identifier for observation
.... extension 0..0
.... use ?!Σ 0..1 code usual | official | temp | secondary | old (If known)
Binding: IdentifierUse (required): Identifies the purpose for this identifier, if known .

... status ?!SΣ 1..1 code Fixed value of ‘final’.
Binding: ObservationStatus (required): Codes providing the status of an observation.


Fixed Value: final
... Slices for category S 1..* CodeableConcept A code that classifies the general type of observation being made.
Slice: Unordered, Open by value:coding.system
Binding: ObservationCategoryCodes (preferred): Codes for high level observation categories.


.... category:All Slices Content/Rules for all slices
..... extension 0..0
.... category:observationCategory S 1..1 CodeableConcept A code that classifies the general type of observation being made.
Binding: ObservationCategoryCodes (required): Codes for high level observation categories.


..... extension 0..0
... code SΣ 1..1 CodeableConcept The type of observation (code / type).
Binding: InterweavePregnancyEDDCode (required)
.... extension 0..0
... subject SΣ 1..1 Reference(InterweavePatient) The patient whose characteristics (direct or indirect) are described by the observation and into whose record the observation is placed.
.... extension 0..0
.... reference ΣC 1..1 string Reference to a resource (could be Contained)
.... display Σ 1..1 string Description of the referenced resource
... encounter SΣ 0..1 Reference(InterweaveEncounter) The encounter during which this observation is made.
... effective[x] SΣ 1..1 dateTime This is the time/time period during which the observation was taken.
... performer SΣ 0..* Reference(InterweavePractitioner | InterweavePractitionerRole | CareTeam) Who is responsible for the observation.
.... extension 0..0
.... reference ΣC 1..1 string Reference to a resource (could be Contained)
.... display Σ 1..1 string Description of the referenced resource
... value[x] SΣC 1..1 dateTime Actual result.
... note S 0..1 Annotation Comments about the result

doco Documentation for this format

Terminology Bindings

PathConformanceValueSet / CodeURI
Observation.meta.tagexampleCommonTags
http://hl7.org/fhir/ValueSet/common-tags
from the FHIR Standard
Observation.meta.tag:SourceexampleCommonTags
http://hl7.org/fhir/ValueSet/common-tags
from the FHIR Standard
Observation.meta.tag:ProvenanceexampleCommonTags
http://hl7.org/fhir/ValueSet/common-tags
from the FHIR Standard
Observation.extension:triggeredByR5.extension:type.value[x]requiredhttp://hl7.org/fhir/ValueSet/observation-triggeredbytype
http://hl7.org/fhir/ValueSet/observation-triggeredbytype
Observation.identifier.userequiredIdentifierUse
http://hl7.org/fhir/ValueSet/identifier-use|4.0.1
from the FHIR Standard
Observation.statusrequiredFixed Value: final
http://hl7.org/fhir/ValueSet/observation-status|4.0.1
from the FHIR Standard
Observation.categorypreferredObservationCategoryCodes
http://hl7.org/fhir/ValueSet/observation-category
from the FHIR Standard
Observation.category:observationCategoryrequiredObservationCategoryCodes
http://hl7.org/fhir/ValueSet/observation-category
from the FHIR Standard
Observation.coderequiredInterweavePregnancyEDDCode
https://fhir.interweavedigital.nhs.uk/R4/ValueSet/Interweave-PregnancyEDDCode
from this IG
Observation.component.codepreferredUKCoreObservationType
https://fhir.hl7.org.uk/ValueSet/UKCore-ObservationType
from this IG
Observation.component.dataAbsentReasonrequiredDataAbsentReason
http://hl7.org/fhir/ValueSet/data-absent-reason
from the FHIR Standard
Observation.component.interpretationrequiredObservationInterpretationCodes
http://hl7.org/fhir/ValueSet/observation-interpretation
from the FHIR Standard

Constraints

IdGradePath(s)DetailsRequirements
dom-2errorObservationIf the resource is contained in another resource, it SHALL NOT contain nested Resources
: contained.contained.empty()
dom-3errorObservationIf the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource
: contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty()
dom-4errorObservationIf a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated
: contained.meta.versionId.empty() and contained.meta.lastUpdated.empty()
dom-5errorObservationIf a resource is contained in another resource, it SHALL NOT have a security label
: contained.meta.security.empty()
dom-6best practiceObservationA resource should have narrative for robust management
: text.`div`.exists()
ele-1error**ALL** elementsAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1error**ALL** extensionsMust have either extensions or value[x], not both
: extension.exists() != value.exists()
obs-6errorObservationdataAbsentReason SHALL only be present if Observation.value[x] is not present
: dataAbsentReason.empty() or value.empty()
obs-7errorObservationIf Observation.code is the same as an Observation.component.code then the value element associated with the code SHALL NOT be present
: value.empty() or component.code.where(coding.intersect(%resource.code.coding).exists()).empty()

Snapshot View

NameFlagsCard.TypeDescription & Constraintsdoco
.. Observation C 0..* InterweaveObservation Measurements and simple assertions
obs-6: dataAbsentReason SHALL only be present if Observation.value[x] is not present
obs-7: If Observation.code is the same as an Observation.component.code then the value element associated with the code SHALL NOT be present
... id SΣ 0..1 id Logical id of this artifact
... meta Σ 0..1 Meta Metadata about the resource
.... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
.... versionId SΣ 0..1 id Version specific identifier
.... lastUpdated SΣ 0..1 instant MANDATORY except in Contained Resources. When the resource version last changed.
.... source Σ 0..1 uri Identifies where the resource comes from
.... profile SΣ 0..* canonical(StructureDefinition) Profiles this resource claims to conform to. Should list (i) this profile (ii) base profile for this resource.
.... security Σ 0..* Coding DISCOURAGED - may not be honoured by Data Consumers
Binding: All Security Labels (extensible): Security Labels from the Healthcare Privacy and Security Classification System.


.... Slices for tag Σ 0..* Coding Tags applied to this resource
Slice: Unordered, Open by value:system
Binding: CommonTags (example): Codes that represent various types of tags, commonly workflow-related; e.g. "Needs review by Dr. Jones".


..... tag:Source SΣ 0..1 Coding MANDATORY except in Contained Resources. The Data Provider Id (and display text) of the system supplying the data
Binding: CommonTags (example): Codes that represent various types of tags, commonly workflow-related; e.g. "Needs review by Dr. Jones".


...... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
...... system Σ 1..1 uri Identity of the terminology system
Fixed Value: https://fhir.interweavedigital.nhs.uk/Source
...... code SΣ 1..1 code The Data Provider Id of the system supplying the data
...... display SΣ 1..1 string Name of the system supplying the data
...... userSelected Σ 0..1 boolean If this coding was chosen directly by the user
..... tag:Provenance SΣ 0..1 Coding MANDATORY except in Contained Resources. The ODS Code (and display text) of the organisation responsible for the data
Binding: CommonTags (example): Codes that represent various types of tags, commonly workflow-related; e.g. "Needs review by Dr. Jones".


...... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
...... system Σ 1..1 uri Identity of the terminology system
Fixed Value: https://fhir.interweavedigital.nhs.uk/Provenance
...... code SΣ 1..1 code The ODS Code of the organisation responsible for the data
...... display SΣ 1..1 string Name of the organisation supplying the data
...... userSelected Σ 0..1 boolean If this coding was chosen directly by the user
... implicitRules ?!Σ 0..1 uri DISCOURAGED - may not be honoured by Data Consumers
... text 0..1 Narrative DISCOURAGED - the preferred approach is to offer structured data fields which a Data Consumer can then render and present in a manner most suited to its users
... contained 0..* Resource Contained, inline Resources
... Slices for extension 0..* Extension Extension
Slice: Unordered, Open by value:url
... modifierExtension ?! 0..* Extension Extensions that cannot be ignored
... identifier SΣ 0..* Identifier Business Identifier for observation
.... extension 0..0
.... use ?!Σ 0..1 code usual | official | temp | secondary | old (If known)
Binding: IdentifierUse (required): Identifies the purpose for this identifier, if known .

.... type Σ 0..1 CodeableConcept Description of identifier
Binding: Identifier Type Codes (extensible): A coded type for an identifier that can be used to determine which identifier to use for a specific purpose.

.... system Σ 0..1 uri The namespace for the identifier value
Example General: http://www.acme.com/identifiers/patient
.... value Σ 0..1 string The value that is unique
Example General: 123456
.... period Σ 0..1 Period Time period when id is/was valid for use
.... assigner Σ 0..1 Reference(InterweaveOrganization) Organization that issued id (may be just text)
... basedOn Σ 0..* Reference(CarePlan | DeviceRequest | ImmunizationRecommendation | MedicationRequest | NutritionOrder | ServiceRequest) DISCOURAGED - This field does not appear to provide information which would be beneficial in a shared care record. It also allows references to a raft of request/order resources which introduces a lot of complexity for a data consumer.
... partOf Σ 0..* Reference(MedicationAdministration | MedicationDispense | MedicationStatement | Procedure | Immunization | ImagingStudy) DISCOURAGED - This field does not appear to provide information which would be beneficial in a shared care record. It also allows references to a raft of request/order resources which introduces a lot of complexity for a data consumer.
... status ?!SΣ 1..1 code Fixed value of ‘final’.
Binding: ObservationStatus (required): Codes providing the status of an observation.


Fixed Value: final
... Slices for category S 1..* CodeableConcept A code that classifies the general type of observation being made.
Slice: Unordered, Open by value:coding.system
Binding: ObservationCategoryCodes (preferred): Codes for high level observation categories.


.... category:All Slices Content/Rules for all slices
..... extension 0..0
..... coding Σ 0..* Coding Code defined by a terminology system
...... extension 0..0
...... system Σ 1..1 uri Identity of the terminology system
...... code Σ 1..1 code Symbol in syntax defined by the system
...... display Σ 1..1 string Representation defined by the system
...... userSelected Σ 0..1 boolean If this coding was chosen directly by the user
..... text Σ 0..1 string Plain text representation of the concept
.... category:observationCategory S 1..1 CodeableConcept A code that classifies the general type of observation being made.
Binding: ObservationCategoryCodes (required): Codes for high level observation categories.


..... extension 0..0
..... coding Σ 0..* Coding Code defined by a terminology system
...... extension 0..0
...... system Σ 1..1 uri Identity of the terminology system
Fixed Value: http://terminology.hl7.org/CodeSystem/observation-category
...... version Σ 0..1 string Version of the system - if relevant
...... code Σ 1..1 code Symbol in syntax defined by the system
...... display Σ 1..1 string Representation defined by the system
...... userSelected Σ 0..1 boolean If this coding was chosen directly by the user
..... text Σ 0..1 string Plain text representation of the concept
... code SΣ 1..1 CodeableConcept The type of observation (code / type).
Binding: InterweavePregnancyEDDCode (required)
.... extension 0..0
.... coding Σ 0..* Coding Code defined by a terminology system
..... extension 0..0
..... system Σ 1..1 uri Identity of the terminology system
..... version Σ 0..1 string Version of the system - if relevant
..... code Σ 1..1 code Symbol in syntax defined by the system
..... display Σ 1..1 string Representation defined by the system
..... userSelected Σ 0..1 boolean If this coding was chosen directly by the user
.... text Σ 0..1 string Plain text representation of the concept
... subject SΣ 1..1 Reference(InterweavePatient) The patient whose characteristics (direct or indirect) are described by the observation and into whose record the observation is placed.
.... extension 0..0
.... reference ΣC 1..1 string Reference to a resource (could be Contained)
.... type Σ 0..1 uri Type the reference refers to (e.g. "Patient")
Binding: ResourceType (extensible): Aa resource (or, for logical models, the URI of the logical model).

.... identifier Σ 0..1 Identifier If relevant could include an id
.... display Σ 1..1 string Description of the referenced resource
... encounter SΣ 0..1 Reference(InterweaveEncounter) The encounter during which this observation is made.
... effective[x] SΣ 1..1 dateTime This is the time/time period during which the observation was taken.
... performer SΣ 0..* Reference(InterweavePractitioner | InterweavePractitionerRole | CareTeam) Who is responsible for the observation.
.... extension 0..0
.... reference ΣC 1..1 string Reference to a resource (could be Contained)
.... type Σ 0..1 uri Type the reference refers to (e.g. "Patient")
Binding: ResourceType (extensible): Aa resource (or, for logical models, the URI of the logical model).

.... identifier Σ 0..1 Identifier If relevant could include an id
.... display Σ 1..1 string Description of the referenced resource
... value[x] SΣC 1..1 dateTime Actual result.
... note S 0..1 Annotation Comments about the result
... derivedFrom Σ 0..* Reference(InterweaveObservation | InterweaveQuestionnaireResponse) Related measurements the observation is made from

doco Documentation for this format

Terminology Bindings

PathConformanceValueSet / CodeURI
Observation.meta.securityextensibleAll Security Labels
http://hl7.org/fhir/ValueSet/security-labels
from the FHIR Standard
Observation.meta.tagexampleCommonTags
http://hl7.org/fhir/ValueSet/common-tags
from the FHIR Standard
Observation.meta.tag:SourceexampleCommonTags
http://hl7.org/fhir/ValueSet/common-tags
from the FHIR Standard
Observation.meta.tag:ProvenanceexampleCommonTags
http://hl7.org/fhir/ValueSet/common-tags
from the FHIR Standard
Observation.languagepreferredCommonLanguages
Additional Bindings Purpose
AllLanguages Max Binding
http://hl7.org/fhir/ValueSet/languages
from the FHIR Standard
Observation.extension:triggeredByR5.extension:type.value[x]requiredhttp://hl7.org/fhir/ValueSet/observation-triggeredbytype
http://hl7.org/fhir/ValueSet/observation-triggeredbytype
Observation.identifier.userequiredIdentifierUse
http://hl7.org/fhir/ValueSet/identifier-use|4.0.1
from the FHIR Standard
Observation.identifier.typeextensibleIdentifier Type Codes
http://hl7.org/fhir/ValueSet/identifier-type
from the FHIR Standard
Observation.statusrequiredFixed Value: final
http://hl7.org/fhir/ValueSet/observation-status|4.0.1
from the FHIR Standard
Observation.categorypreferredObservationCategoryCodes
http://hl7.org/fhir/ValueSet/observation-category
from the FHIR Standard
Observation.category:observationCategoryrequiredObservationCategoryCodes
http://hl7.org/fhir/ValueSet/observation-category
from the FHIR Standard
Observation.coderequiredInterweavePregnancyEDDCode
https://fhir.interweavedigital.nhs.uk/R4/ValueSet/Interweave-PregnancyEDDCode
from this IG
Observation.subject.typeextensibleResourceType
http://hl7.org/fhir/ValueSet/resource-types
from the FHIR Standard
Observation.performer.typeextensibleResourceType
http://hl7.org/fhir/ValueSet/resource-types
from the FHIR Standard
Observation.referenceRange.typepreferredObservationReferenceRangeMeaningCodes
http://hl7.org/fhir/ValueSet/referencerange-meaning
from the FHIR Standard
Observation.referenceRange.appliesToexampleObservationReferenceRangeAppliesToCodes
http://hl7.org/fhir/ValueSet/referencerange-appliesto
from the FHIR Standard
Observation.component.codepreferredUKCoreObservationType
https://fhir.hl7.org.uk/ValueSet/UKCore-ObservationType
from this IG
Observation.component.dataAbsentReasonrequiredDataAbsentReason
http://hl7.org/fhir/ValueSet/data-absent-reason
from the FHIR Standard
Observation.component.interpretationrequiredObservationInterpretationCodes
http://hl7.org/fhir/ValueSet/observation-interpretation
from the FHIR Standard

Constraints

IdGradePath(s)DetailsRequirements
dom-2errorObservationIf the resource is contained in another resource, it SHALL NOT contain nested Resources
: contained.contained.empty()
dom-3errorObservationIf the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource
: contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty()
dom-4errorObservationIf a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated
: contained.meta.versionId.empty() and contained.meta.lastUpdated.empty()
dom-5errorObservationIf a resource is contained in another resource, it SHALL NOT have a security label
: contained.meta.security.empty()
dom-6best practiceObservationA resource should have narrative for robust management
: text.`div`.exists()
ele-1error**ALL** elementsAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1error**ALL** extensionsMust have either extensions or value[x], not both
: extension.exists() != value.exists()
obs-6errorObservationdataAbsentReason SHALL only be present if Observation.value[x] is not present
: dataAbsentReason.empty() or value.empty()
obs-7errorObservationIf Observation.code is the same as an Observation.component.code then the value element associated with the code SHALL NOT be present
: value.empty() or component.code.where(coding.intersect(%resource.code.coding).exists()).empty()

 

Other representations of profile: CSV, Excel, Schematron

Notes:

Differences between Interweave STU3 and R4 profiles

Element name Change details
extension:valuePrecision
  • Deleted
category:observationCategory
  • Change of codeSystem from http://hl7.org/fhir/observation-category to http://terminology.hl7.org/CodeSystem/observation-category
code
  • Changed valueSet from https://fhir.yhcr.nhs.uk/ValueSet/Interweave-PregnancyEDDCode to https://fhir.interweavedigital.nhs.uk/R4/ValueSet/Interweave-PregnancyEDDCode
encounter
  • Renamed from context to encounter
performer
  • Type Reference: Added Target Types PractitionerRole, CareTeam
note
  • Renamed from comment to note
  • Type changed from string to Annotation
derivedFrom
  • Renamed from related to derivedFrom
  • Type changed from BackboneElement to Reference
  • Type Reference: Added Target Type QuestionnaireResponse