RIVO-Noord Zorgviewer Implementation Guide
1.23.0 - CI build

RIVO-Noord Zorgviewer Implementation Guide, published by RIVO-NN HL7NL. This guide is not an authorized publication; it is the continuous build for version 1.23.0 built by the FHIR (HL7® FHIR® Standard) CI Build. This version is based on the current content of https://github.com/RIVO-Noord/zorgviewer-ig/ and changes regularly. See the Directory of published versions

## Resource Profile: LaboratoryTestResult

Official URL: http://fhir.hl7.nl/zorgviewer/StructureDefinition/LaboratoryTestResult | Version: 1.23.0
Active as of 2026-03-30 | Computable Name: LaboratoryTestResult

Laboratorium Test Uitslag

> Dit Profiel is het resultaat van de vergelijking tussen de zib2017 FHIR Profiel en de implementaties in Epic, Chipsoft, Topicus en Nexus. De elementen die in ieder geval in alle output beschikbaar zullen zijn. Voornamelijk bedoeld voor houvast van een client en voor validatie van output.

### Zorginformatiebouwsteen

ZIB Laboratorium uitslag

### View Definition

ViewDefinition voor labuitslagen

### UI Wireframe

Laboratoriumuitslagen

>< | Bron | Datum | Test | Testuitslag | Interpretatie | Onder- en bovengrens | Materiaal | Status
--- | --- | --- | --- | --- | --- | --- | --- | ---
+ | EPS | 30-10-2022 | Cholesterol [Mass/volume] in Serum or Plasma | 122.5 mg/dL |  | 125 .. 200 mg/dL |  | final
+ | EPS | 30-10-2022 | Triglyceride [Mass/volume] in Serum or Plasma | 125.3 mg/dL |  | 35 .. 150 mg/dL |  | final
+ | EPS | 30-10-2022 | Cholesterol in LDL [Mass/volume] in Serum or Plasma by Direct assay | 42 mg/dL |  | 0 .. 130 mg/dL |  | final
+ | EPS | 30-10-2022 | Cholesterol in HDL [Mass/volume] in Serum or Plasma | 55.5 mg/dL |  | 45 .. 95 mg/dL |  | final
+ | Chipsoft-Bundle | 4-2-2025 | Substantie | faeces |  | .. |  | final
+ | Chipsoft-Bundle | 4-2-2025 | Rapport | faeces |  | .. |  | final
+ | Chipsoft-Bundle | 4-2-2025 | Schistosoma microscopie | Negatief |  | .. |  | final
+ | Chipsoft-Bundle | 4-2-2025 | Materiaal | faeces |  | .. |  | final
+ | Chipsoft-Bundle | 17-10-2022 | Glucose | 7.2 mmol/L | Boven referentiewaarde | 4.5 .. 6.1 mmol/L | Bloed | final
| Commentaar Toelichting: Test order voor Zorgplatform en XDS ;
+ | Chipsoft-Bundle | 17-10-2022 | Ureum | 6.3 mmol/L |  | 3 .. 7.5 mmol/L | Bloed | final
| Commentaar Toelichting: Test order voor Zorgplatform en XDS ;
+ | Chipsoft-Bundle | 17-10-2022 | Creatinine | 65 µmol/L |  | 49 .. 90 µmol/L | Bloed | final
| Commentaar Toelichting: Test order voor Zorgplatform en XDS ;
+ | Chipsoft-Bundle | 17-10-2022 | eGFR (creat) | 81 mL/min/1.73m2 |  | .. | Bloed | final
| Commentaar Toelichting: Test order voor Zorgplatform en XDS ;
+ | Chipsoft-Bundle | 17-10-2022 | Kalium | 3.8 mmol/L |  | 3.8 .. 5 mmol/L | Bloed | final
| Commentaar Toelichting: Test order voor Zorgplatform en XDS ;
+ | Chipsoft-Bundle | 17-10-2022 | Natrium | 142 mmol/L |  | 136 .. 146 mmol/L | Bloed | final
| Commentaar Toelichting: Test order voor Zorgplatform en XDS ;
+ | Chipsoft-Bundle | 17-10-2022 | AKI alert | <Memo> |  | .. | Bloed | final
| Commentaar Toelichting: Niet te beoordelen. Volgens KDIGO-richtlijn niet te berekenen want ...
+ | Chipsoft-Bundle | 17-10-2022 | Magnesium | 0.98 mmol/L |  | 0.7 .. 1 mmol/L | Bloed | final
| Commentaar Toelichting: Test order voor Zorgplatform en XDS ;
+ | Chipsoft-Bundle | 17-10-2022 | Cytomegalovirus IgM (ELFA) | 0.72/Grens |  | .. |  | final
+ | Chipsoft-Bundle | 17-10-2022 | Hepatitis B virus core IgG (CMIA) | 0.09/Neg |  | .. |  | final
| Commentaar Toelichting: Serologisch GEEN aanwijzingen voor infectie met Hepatitis B virus ;
+ | Chipsoft-Bundle | 17-10-2022 | Materiaal | Stolbloed (r |  | .. |  | final
| Commentaar Toelichting: Stolbloed (rood) 10 ml (Substantie=bloed, Rapport=Serum) ;
+ | Chipsoft-Bundle | 17-10-2022 | Cytomegalovirus IgG (ELFK) | 30/Pos |  | .. |  | final
+ | Chipsoft-Bundle | 17-10-2022 | HSV-2 IgG (VirClia) | 0.613/Neg |  | .. |  | final
+ | Chipsoft-Bundle | 17-10-2022 | HSV-2 IgM (VirClia) | 0.652/Neg |  | .. |  | final
+ | Chipsoft-Bundle | 17-10-2022 | HSV-1 IgG (VirClia) | 0.261/Neg |  | .. |  | final
| Commentaar Toelichting: Serologisch GEEN aanwijzingen voor een in het verleden opgedane inf...
+ | Chipsoft-Bundle | 17-10-2022 | HSV-1 IgM (VirClia) | 0.260/Neg |  | .. |  | final
+ | Chipsoft-Bundle | 17-10-2022 | Amylase | <20 | Onder referentiewaarde | 30 .. 640 U/L | Urine portie | final
| Commentaar Toelichting: Test order voor Zorgplatform en XDS ;
+ | Chipsoft-Bundle | 17-10-2022 | Creatinine | 9.5 mmol/L |  | .. | Urine portie | final
| Commentaar Toelichting: Test order voor Zorgplatform en XDS ;
+ | Chipsoft-Bundle | 17-10-2022 | Kalium | 38 mmol/L |  | .. | Urine portie | final
| Commentaar Toelichting: Test order voor Zorgplatform en XDS ;
+ | Chipsoft-Bundle | 17-10-2022 | Ureum | 86 mmol/L |  | .. | Urine portie | final
| Commentaar Toelichting: Test order voor Zorgplatform en XDS ;
+ | Chipsoft-Bundle | 17-10-2022 | Natrium | 127 mmol/L |  | .. | Urine portie | final
| Commentaar Toelichting: Test order voor Zorgplatform en XDS ;
+ | Chipsoft-Bundle | 17-10-2022 | Cortisol | 0.39 µmol/L |  | .. | Bloed | final
| Commentaar Toelichting: Ochtend 0.25 - 0.83 µmol/L Middag ...
+ | Chipsoft-Bundle | 17-10-2022 | Engels raaigras | <0.35 |  | .. 0.35 kU/L | Bloed | final
| Commentaar Toelichting: Test order voor Zorgplatform en XDS ;
+ | Chipsoft-Bundle | 17-10-2022 | Berk | 40 kU/L | Boven referentiewaarde | .. 0.35 kU/L | Bloed | final
| Commentaar Toelichting: Test order voor Zorgplatform en XDS ;
+ | Chipsoft-Bundle | 17-10-2022 | Bijvoet | <0.35 |  | .. 0.35 kU/L | Bloed | final
| Commentaar Toelichting: Test order voor Zorgplatform en XDS ;
+ | Chipsoft-Bundle | 17-10-2022 | Huismijt | <0.35 |  | .. 0.35 kU/L | Bloed | final
| Commentaar Toelichting: Test order voor Zorgplatform en XDS ;
+ | Chipsoft-Bundle | 17-10-2022 | Schildklier (anti-TPO) | 37 U/mL | Boven referentiewaarde | .. 35 U/mL | Bloed | final
| Commentaar Toelichting: Test order voor Zorgplatform en XDS ;
+ | Chipsoft-Bundle | 17-10-2022 | Timotheegras | <0.35 |  | .. 0.35 kU/L | Bloed | final
| Commentaar Toelichting: Test order voor Zorgplatform en XDS ;
+ | Chipsoft-Bundle | 17-10-2022 | Huisstofmijt | <0.35 |  | .. 0.35 kU/L | Bloed | final
| Commentaar Toelichting: Test order voor Zorgplatform en XDS ;
+ | Chipsoft-Bundle | 17-10-2022 | Kopramijt | 1.6 kU/L | Boven referentiewaarde | .. 0.35 kU/L | Bloed | final
| Commentaar Toelichting: Test order voor Zorgplatform en XDS ;
+ | Chipsoft-Bundle | 17-10-2022 | Hemoglobine | 8.9 mmol/L |  | 7.4 .. 9.6 mmol/L | Bloed | final
| Commentaar Toelichting: Test order voor Zorgplatform en XDS ;
+ | Chipsoft-Bundle | 17-10-2022 | Hematocriet | 0.41 L/L |  | 0.36 .. 0.46 L/L | Bloed | final
| Commentaar Toelichting: Test order voor Zorgplatform en XDS ;
+ | Chipsoft-Bundle | 17-10-2022 | TSH | 4.2 |  | 0.35 .. 5 | Bloed | final
| Commentaar Toelichting: Test order voor Zorgplatform en XDS ;
+ | Chipsoft | 30-9-2022 | Chloride | 109 | Boven referentiewaarde | 99 .. 108 | Serum | final
+ | Epic-Bundle | 20-2-2024 | INR | 1 |  | 0.9 .. 1.1 | Bloed | final
+ | Epic-Bundle | 20-2-2024 | INR | 10 | Hoog | 0.9 .. 1.1 | Bloed | final
+ | Epic-Bundle | 18-12-2023 | Kalium | 60 mmol/L | Kritiek | 3.5 .. 5 mmol/L | Bloed | final
+ | Epic-Bundle | 20-2-2024 | Sirolimus (Volbloed) | 6 ug/L |  | .. | Bloed | final
+ | Epic-Bundle | 20-2-2024 | Sirolimus (Volbloed) | Volgt |  | .. | Bloed | unknown
+ | Epic | 31-3-2022 | Chloride | 109 mmol/L |  | 99 .. 108 mmol/L |  | final
+ | Nexus | 13-3-2023 |  |  |  | .. |  | final
| Toelichting materiaal Monster bij LaboratoriumUitslag (LaboratoryTestResult) [bgz-patA-labresult2]
+ | Sanday | 27-8-2025 | glucose niet nuchter, veneus (lab) | 1 mmol/l |  | 3.5 .. 7.8 mmol/l |  | final
+ | Sanday | 27-8-2025 | glucose nuchter, veneus (lab) | 4 mmol/l |  | 4 .. 6.1 mmol/l |  | final
+ | Sanday | 27-8-2025 | schildklier cytoplasma antistoffen | 12 |  | .. |  | final
| Commentaar test lab
+ | Sanday | 27-8-2025 | vitamine D | 23.443.00 |  | .. |  | final
| Commentaar test lab
+ | Sanday | 27-8-2025 | HbA1c (glycohemoglobine) IFCC | 0 mmol/mol |  | .. |  | final
+ | Epic | 1-7-2021 | Kalium | 8 mmol/L | Kritiek | 3.5 .. 5 mmol/L |  | final

### Kolomdefinities

Kolom label | FHIR Path Expression | FHIR Type | Zib element | Toelichting of regels
Bron | `meta.extension('http://hl7.org/fhir/4.0/StructureDefinition/extension-Meta.source').valueUri` | `string` | nvt | Lookup adhv uri (AGB-Z of OID) `<adressering-base>/Organization?identifier=<.meta.tag.code>` en gebruik dan `Organization.name`
Datum | `specimen.resolve().collection.collectedDateTime | effectiveDateTime` | `dateTime` | Monster/ AfnameDatumTijd, LaboratoriumTest/ TestDatumTijd |
Test | `code.text | code.coding[0].display` | `string` | LaboratoriumTest/ TestCode |
Testuitslag | `valueString | valueQuantity.value.toString() + iif(valueQuantity.code.exists(),' ' + valueQuantity.code,'')` | `string` | LaboratoriumTest/ TestUitslag | Epic: Indien lab-order geannuleerd, dan krijgt dit alsnog de status `Definitief` met een Testuitslag van `GEANNULEERD`. Dit is voor nu akkoord bevonden door stuurgroep Zorgviewer.
Interpretatie | `interpretation.text` | `string` | LaboratoriumTest/ InterpretatieVlaggen | `AA`: uitroepteken icon, kritiek `281302008` of `H`: pijl omhoog, boven de bovengrens `281300000` of `L`: pijl naar beneden, onder de ondergrens N.B. `Resistent`, `Intermediar` en `Sensitief` vanuit de standaard zijn niet van toepassing op de klinische chemie.
Onder- en bovengrens | `iif(referenceRange.low.exists(),referenceRange.low.value.toString(),'') + ' .. ' + iif(referenceRange.high.exists(),referenceRange.high.value.toString(),'') + iif(referenceRange.high.code.exists(),' ' + referenceRange.high.code,'')` | `string` | LaboratoriumTest/ ReferentieOndergrens, LaboratoriumTest/ ReferentieBovengrens | Indien `low.code` en `high.code` niet gelijk zijn aan elkaar toon dan `code` bij beide.
Materiaal | `specimen.resolve().type.text` | `string` | Monster/ Monstermateriaal | Sanday: Levert geen type materiaal
Status | `status` | `string` | ResultaatStatus | Epic: Indien lab-order geannuleerd, dan krijgt dit alsnog de status `Definitief` met een Testuitslag van `GEANNULEERD`. Dit is voor nu akkoord bevonden door stuurgroep Zorgviewer.
UITKLAPVELD
+Commentaar | `comment | note.text` | `string` | Toelichting | LET OP: `note.text` is een FHIR R4 veld
+Toelichting materiaal | `specimen.resolve().note.text` | `string` | Monster/ Toelichting |

### Zoeken naar codes

- LOINC lab-uitslagen - `system=http://loinc.org`
- NHG Tabel 45 Diagnostische Bepalingen Labcodes `system=https://referentiemodel.nhg.org/tabellen/nhg-tabel-45-diagnostische-bepalingen`

### Request

1. Opvragen (search) laatst bekende labuitslag per type (inclusief materiaalsoort) voor een patient

   `GET <ontsluiten-bronsysteem-base>/Observation/$lastn?patient=<fhir_patient_id>&category=http://snomed.info/sct|275711006&_include=Observation:specimen`

2. Sanday: Opvragen (search) labuitslagen per type voor een patient

   `GET <ontsluiten-bronsysteem-base>/Observation?patient=<fhir_patient_id>&category=http://hl7.org/fhir/observation-category|laboratory`

   > N.B. Alleen klinische chemie resultaten zijn op dit moment beschikbaar.

### Bronsysteem herkennen

De Zorgviewer-backend of Ontsluiten bronsysteem MOET na bevragen van het bronsysteem aan elk resultaat resource een meta-tag toevoegen met de AGB, OID of URA identifier van de zorgaanbieder (zie Organization voor voorbeelden). Dit wordt vervolgens gebruikt in de "Bron" kolom in de Zorgviewer-frontend. N.B. We gebruiken hier een pre-adopt van de FHIR R4 Meta.source.

Toevoegen aan elke response, dus per resource (bij een read) of per Bundle (bij een search):

    "meta": {
        "extension": [ {
            "url": "http://hl7.org/fhir/4.0/StructureDefinition/extension-Meta.source",
            "valueUri": "urn:oid:2.16.840.1.113883.2.4.3.8"
        } ]
    }

Alternatief: Elke entry van een search response Bundle bevat een referentie naar de bijbehorende Patient (`<resource>.subject|patient`). Elke patient heeft een `Patient.managingOrganization` en in de gerefereerde `Organization.identifier` staat vervolgens o.a. de OID van het bronsysyeem. Of je gebruikt de identifiers om een volledige Organization op te zoeken in het adresboek en zie inhoud hier.

Usages:

- CapabilityStatements using this Profile: Ontsluiten Bronsysteem - Sanday and Ontsluiten Bronsysteem
- This Profile is not used by any profiles in this Implementation Guide

You can also check for usages in the FHIR IG Statistics

Changes since version 1.22.0:

- The data elements list has changed

### Formal Views of Profile Content

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

- Key Elements Table
- Differential Table
- Snapshot Table
- Statistics/References
- All

Name | Flags | Card. | Type | Description & Constraints Filter: Bindings Constraints Obligations
--- | --- | --- | --- | ---
Observation | C | 0..* | Zib LaboratoryTestResult Observation | LaboratoryTestResult Constraints: obs-7, obs-6
implicitRules | ?!Σ | 0..1 | uri | A set of rules under which this content was created
modifierExtension | ?! | 0..* | Extension | Extensions that cannot be ignored
status | ?!S Σ | 1..1 | code | TestUitslagStatus Binding: ObservationStatus (required): Codes providing the status of an observation.
Slices for extension |  |  |  | Content/Rules for all slices
extension:TestResultStatus |  | 0..1 | (Complex) | TestResultStatus URL: http://nictiz.nl/fhir/StructureDefinition/code-specification Constraints: ext-1
extension |  | 0..0 |  | Additional Content defined by implementations Slice: Unordered, Open by value:url
url |  | 1..1 | uri | "http://nictiz.nl/fhir/StructureDefinition/code-specification"
Slices for value[x] |  |  |  | Content/Rules for all slices
value[x]:valueCodeableConcept |  | 1..1 | CodeableConcept | Value of extension Binding: ResultaatStatusCodelijst (extensible): TestResultStatusCodelist
Slices for category |  | 1..* | CodeableConcept | Classification of type of observation Slice: Unordered, Open by value:$this Binding: Observation Category Codes (preferred): Codes for high level observation categories.
category:LaboratoryTestResultCode |  | 1..1 | CodeableConcept | LaboratoryTestResultCode Binding: Observation Category Codes (preferred): Codes for high level observation categories. Required Pattern: At least the following
id |  | 0..1 | string | xml:id (or equivalent in JSON)
extension |  | 0..* | Extension | Additional Content defined by implementations
coding |  | 1..* | Coding | Code defined by a terminology system Fixed Value: (Complex)
id |  | 0..1 | string | xml:id (or equivalent in JSON)
extension |  | 0..* | Extension | Additional Content defined by implementations
system |  | 1..1 | uri | Identity of the terminology system Fixed Value: http://snomed.info/sct
version |  | 0..1 | string | Version of the system - if relevant
code |  | 1..1 | code | Symbol in syntax defined by the system Fixed Value: 49581000146104
display |  | 0..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:ResultType |  | 0..1 | CodeableConcept | ResultType Binding: ResultaatTypeCodelijst (required): ResultaatTypeCodelijst
code | Σ | 1..1 | CodeableConcept | TestCode or PanelOrBattery Binding: LOINC Codes (example): Codes identifying names of simple observations.
coding | Σ | 0..* | Coding | Code defined by a terminology system
display | S Σ | 0..1 | string | Representation defined by the system
text | S Σ | 0..1 | string | Plain text representation of the concept
subject | Σ | 1..1 | Reference(Group | Device | nl-core-location | nl-core-patient) | Patient
Slices for effective[x] | Σ | 0..1 | dateTime | TestDateTime Slice: Unordered, Closed by type:$this
effective[x]:effectiveDateTime | S Σ | 0..1 | dateTime | TestDateTime
Slices for value[x] | Σ C | 0..1 | Quantity | TestResult Slice: Unordered, Closed by type:$this
value[x]:valueQuantity | S Σ C | 0..1 | Quantity | TestResult
value | S Σ | 0..1 | decimal | Numerical value (with implicit precision)
comparator | ?!Σ | 0..1 | code | < | <= | >= | > - how to understand the value Binding: QuantityComparator (required): How the Quantity should be understood and represented.
code | S Σ | 0..1 | code | Coded form of the unit
interpretation |  | 0..1 | CodeableConcept | High, low, normal, etc. Binding: Observation Interpretation Codes (extensible): Codes identifying interpretations of observations.
Slices for coding | Σ C | 1..* | Coding | Code defined by a terminology system Slice: Unordered, Open by value:$this Constraints: zib-LaboratoryTestResult-Observation-1
coding:All Slices |  |  |  | Content/Rules for all slices
code | S Σ | 0..1 | code | Symbol in syntax defined by the system
coding:ObservationInterpretation | Σ | 0..* | Coding | Code defined by a terminology system Binding: Observation Interpretation Codes (required): Observation Interpretation Codes
coding:InterpretatieVlaggenCodelijst | Σ | 0..* | Coding | ResultFlags Binding: InterpretatieVlaggenCodelijst (required): InterpretatieVlaggenCodelijst
text | S Σ | 0..1 | string | Plain text representation of the concept
specimen | S | 0..1 | Reference(Specimen) | Specimen
referenceRange | C | 0..* | BackboneElement | Reference Constraints: obs-3
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored
low | C | 0..1 | SimpleQuantity | ReferenceRangeLowerLimit
value | S Σ | 0..1 | decimal | Numerical value (with implicit precision)
code | S Σ | 0..1 | code | Coded form of the unit
high | C | 0..1 | SimpleQuantity | ReferenceRangeUpperLimit
value | S Σ | 0..1 | decimal | Numerical value (with implicit precision)
code | S Σ | 0..1 | code | Coded form of the unit
Documentation for this format

#### Terminology Bindings

Path | Status | Usage | ValueSet | Version | Source
Observation.status | Base | required | ObservationStatus | 📦3.0.2 | FHIR Std.
Observation.status.extension:TestResultStatus.​value[x]:valueCodeableConcept | Base | extensible | ResultaatStatusCodelijst | 📦2017-12-31T00:00:00 | Nictiz FHIR NL STU3 Zib2017 v2.3
Observation.category | Base | preferred | Observation Category Codes | 📦3.0.2 | FHIR Std.
Observation.category:LaboratoryTestResultCode | Base | preferred | Observation Category Codes | 📦3.0.2 | FHIR Std.
Observation.category:ResultType | Base | required | ResultaatTypeCodelijst | 📦2017-12-31T00:00:00 | Nictiz FHIR NL STU3 Zib2017 v2.3
Observation.code | Base | example | LOINC Codes | 📦3.0.2 | FHIR Std.
Observation.value[x]:valueQuantity.​comparator | Base | required | QuantityComparator | 📍3.0.2 | FHIR Std.
Observation.interpretation | Base | extensible | Observation Interpretation Codes | 📦3.0.2 | FHIR Std.
Observation.interpretation.​coding:ObservationInterpretation | Base | required | Observation Interpretation Codes | 📦3.0.2 | FHIR Std.
Observation.interpretation.​coding:InterpretatieVlaggenCodelijst | Base | required | InterpretatieVlaggenCodelijst | 📦2017-12-31T00:00:00 | Nictiz FHIR NL STU3 Zib2017 v2.3

#### Constraints

Id | Grade | Path(s) | Description | Expression
dom-1 | error | Observation | If the resource is contained in another resource, it SHALL NOT contain any narrative | `contained.text.empty()`
dom-2 | error | Observation | If the resource is contained in another resource, it SHALL NOT contain nested Resources | `contained.contained.empty()`
dom-3 | error | Observation | If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource | `contained.where(('#'+id in %resource.descendants().reference).not()).empty()`
dom-4 | error | Observation | If 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()`
ele-1 | error | **ALL** elements | All FHIR elements must have a @value or children | `hasValue() | (children().count() > id.count())`
ext-1 | error | Observation.status.extension:TestResultStatus | Must have either extensions or value[x], not both | `extension.exists() != value.exists()`
obs-3 | error | Observation.referenceRange | Must have at least a low or a high or text | `low.exists() or high.exists() or text.exists()`
obs-6 | error | Observation | dataAbsentReason SHALL only be present if Observation.value[x] is not present | `dataAbsentReason.empty() or value.empty()`
obs-7 | error | Observation | If code is the same as a component code then the value element associated with the code SHALL NOT be present | `value.empty() or component.code.where( (coding.code = %resource.code.coding.code) and (coding.system = %resource.code.coding.system)).empty()`
zib-LaboratoryTestResult-Observation-1 | error | Observation.interpretation.coding | If a value from the HCIM ValueSet 'InterpretatieVlaggenCodelijst' is present a mapped code from the FHIR ValueSet 'Observation Interpretation Codes' is also expected. A ConceptMap is available that maps the HCIM values to the FHIR values. | `coding.where(system = 'http://snomed.info/sct' and (code = '281302008' or '281300000' or '11896004' or '30714006' or '131196009') ).exists() implies coding.where(system = 'http://hl7.org/fhir/v2/0078').exists()`

This structure is derived from Zib LaboratoryTestResult Observation

Name | Flags | Card. | Type | Description & Constraints Filter: Bindings Constraints Obligations
--- | --- | --- | --- | ---
Observation |  | 0..* | Zib LaboratoryTestResult Observation | LaboratoryTestResult
status | S | 1..1 | code | TestUitslagStatus
code |  |  |  |
coding |  |  |  |
display | S | 0..1 | string | Representation defined by the system
text | S | 0..1 | string | Plain text representation of the concept
effectiveDateTime | S | 0..1 | dateTime | TestDateTime
valueQuantity | S | 0..1 | Quantity | TestResult
value | S | 0..1 | decimal | Numerical value (with implicit precision)
code | S | 0..1 | code | Coded form of the unit
interpretation |  |  |  |
coding |  |  |  |
code | S | 0..1 | code | Symbol in syntax defined by the system
text | S | 0..1 | string | Plain text representation of the concept
specimen | S | 0..1 | Reference(Specimen) | Specimen
referenceRange |  |  |  |
low |  |  |  |
value | S | 0..1 | decimal | Numerical value (with implicit precision)
code | S | 0..1 | code | Coded form of the unit
high |  |  |  |
value | S | 0..1 | decimal | Numerical value (with implicit precision)
code | S | 0..1 | code | Coded form of the unit
Documentation for this format

Name | Flags | Card. | Type | Description & Constraints Filter: Bindings Constraints Obligations
--- | --- | --- | --- | ---
Observation | C | 0..* | Zib LaboratoryTestResult Observation | LaboratoryTestResult Constraints: obs-7, obs-6
id | Σ | 0..1 | id | Logical id of this artifact
meta | Σ | 0..1 | Meta | Metadata about the resource
implicitRules | ?!Σ | 0..1 | uri | A set of rules under which this content was created
language |  | 0..1 | code | Language of the resource content Binding: Common Languages (extensible): A human language.
Additional Bindings | Purpose
All Languages | Max Binding
text |  | 0..1 | Narrative | Text summary of the resource, for human interpretation This profile does not constrain the narrative in regard to content, language, or traceability to data elements
contained |  | 0..* | Resource | Contained, inline Resources
extension |  | 0..* | Extension | Additional Content defined by implementations
modifierExtension | ?! | 0..* | Extension | Extensions that cannot be ignored
identifier | Σ | 0..* | Identifier | Identifier
basedOn | Σ | 0..* | Reference(CarePlan | DeviceRequest | ImmunizationRecommendation | MedicationRequest | NutritionOrder | ProcedureRequest | ReferralRequest) | Fulfills plan, proposal or order including requester information.
status | ?!S Σ | 1..1 | code | TestUitslagStatus Binding: ObservationStatus (required): Codes providing the status of an observation.
id |  | 0..1 | string | xml:id (or equivalent in JSON)
Slices for extension |  | 0..* | Extension | Additional Content defined by implementations Slice: Unordered, Open by value:url
extension:TestResultStatus |  | 0..1 | (Complex) | TestResultStatus URL: http://nictiz.nl/fhir/StructureDefinition/code-specification Constraints: ext-1
id |  | 0..1 | string | xml:id (or equivalent in JSON)
extension |  | 0..0 |  | Additional Content defined by implementations Slice: Unordered, Open by value:url
url |  | 1..1 | uri | "http://nictiz.nl/fhir/StructureDefinition/code-specification"
Slices for value[x] |  |  |  | Content/Rules for all slices
value[x]:valueCodeableConcept |  | 1..1 | CodeableConcept | Value of extension Binding: ResultaatStatusCodelijst (extensible): TestResultStatusCodelist
value |  | 0..1 | code | Primitive value for code
Slices for category |  | 1..* | CodeableConcept | Classification of type of observation Slice: Unordered, Open by value:$this Binding: Observation Category Codes (preferred): Codes for high level observation categories.
category:LaboratoryTestResultCode |  | 1..1 | CodeableConcept | LaboratoryTestResultCode Binding: Observation Category Codes (preferred): Codes for high level observation categories. Required Pattern: At least the following
id |  | 0..1 | string | xml:id (or equivalent in JSON)
extension |  | 0..* | Extension | Additional Content defined by implementations Slice: Unordered, Open by value:url
coding | Σ | 0..* | Coding | Code defined by a terminology system Fixed Value: (Complex)
id |  | 0..1 | string | xml:id (or equivalent in JSON)
extension |  | 0..* | Extension | Additional Content defined by implementations Slice: Unordered, Open by value:url
system | Σ | 0..1 | uri | Identity of the terminology system Fixed Value: http://snomed.info/sct
version | Σ | 0..1 | string | Version of the system - if relevant
code | Σ | 0..1 | code | Symbol in syntax defined by the system Fixed Value: 49581000146104
display | Σ | 0..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:ResultType |  | 0..1 | CodeableConcept | ResultType Binding: ResultaatTypeCodelijst (required): ResultaatTypeCodelijst
code | Σ | 1..1 | CodeableConcept | TestCode or PanelOrBattery Binding: LOINC Codes (example): Codes identifying names of simple observations.
id |  | 0..1 | string | xml:id (or equivalent in JSON)
extension |  | 0..* | Extension | Additional Content defined by implementations Slice: Unordered, Open by value:url
coding | Σ | 0..* | Coding | Code defined by a terminology system
id |  | 0..1 | string | xml:id (or equivalent in JSON)
extension |  | 0..* | Extension | Additional Content defined by implementations Slice: Unordered, Open by value:url
system | Σ | 0..1 | uri | Identity of the terminology system
version | Σ | 0..1 | string | Version of the system - if relevant
code | Σ | 0..1 | code | Symbol in syntax defined by the system
display | S Σ | 0..1 | string | Representation defined by the system
userSelected | Σ | 0..1 | boolean | If this coding was chosen directly by the user
text | S Σ | 0..1 | string | Plain text representation of the concept
subject | Σ | 1..1 | Reference(Group | Device | nl-core-location | nl-core-patient) | Patient
context |  | 0..1 | Reference(nl-core-episodeofcare | HCIM Encounter | gp-Encounter) | Encounter during which this observation is made
Slices for effective[x] | Σ | 0..1 | dateTime | TestDateTime Slice: Unordered, Closed by type:$this
effective[x]:effectiveDateTime | S Σ | 0..1 | dateTime | TestDateTime
issued | Σ | 0..1 | instant | Date/Time this was made available
performer | Σ | 0..* | Reference(nl-core-organization | nl-core-patient | nl-core-practitioner | nl-core-relatedperson) | Who is responsible for the observation
id |  | 0..1 | string | xml:id (or equivalent in JSON)
Slices for extension |  | 0..* | Extension | Additional Content defined by implementations Slice: Unordered, Open by value:url
extension:practitionerRole |  | 0..1 | Reference(nl-core-practitionerrole) | Optional Extensions Element URL: http://nictiz.nl/fhir/StructureDefinition/practitionerrole-reference Constraints: ext-1
reference | Σ C | 0..1 | string | Literal reference, Relative, internal or absolute URL
identifier | Σ | 0..1 | Identifier | Logical reference, when literal reference is not known
display | Σ | 0..1 | string | Text alternative for the resource
Slices for value[x] | Σ C | 0..1 | Quantity | TestResult Slice: Unordered, Closed by type:$this
value[x]:valueQuantity | S Σ C | 0..1 | Quantity | TestResult
id |  | 0..1 | string | xml:id (or equivalent in JSON)
extension |  | 0..* | Extension | Additional Content defined by implementations Slice: Unordered, Open by value:url
value | S Σ | 0..1 | decimal | Numerical value (with implicit precision)
comparator | ?!Σ | 0..1 | code | < | <= | >= | > - how to understand the value Binding: QuantityComparator (required): How the Quantity should be understood and represented.
unit | Σ | 0..1 | string | Unit representation
system | Σ C | 0..1 | uri | System that defines coded unit form
code | S Σ | 0..1 | code | Coded form of the unit
dataAbsentReason | C | 0..1 | CodeableConcept | Why the result is missing Binding: Observation Value Absent Reason (extensible): Codes specifying why the result (Observation.value[x]) is missing.
interpretation |  | 0..1 | CodeableConcept | High, low, normal, etc. Binding: Observation Interpretation Codes (extensible): Codes identifying interpretations of observations.
id |  | 0..1 | string | xml:id (or equivalent in JSON)
extension |  | 0..* | Extension | Additional Content defined by implementations Slice: Unordered, Open by value:url
Slices for coding | Σ C | 1..* | Coding | Code defined by a terminology system Slice: Unordered, Open by value:$this Constraints: zib-LaboratoryTestResult-Observation-1
coding:All Slices |  |  |  | Content/Rules for all slices
id |  | 0..1 | string | xml:id (or equivalent in JSON)
extension |  | 0..* | Extension | Additional Content defined by implementations Slice: Unordered, Open by value:url
system | Σ | 0..1 | uri | Identity of the terminology system
version | Σ | 0..1 | string | Version of the system - if relevant
code | S Σ | 0..1 | code | Symbol in syntax defined by the system
display | Σ | 0..1 | string | Representation defined by the system
userSelected | Σ | 0..1 | boolean | If this coding was chosen directly by the user
coding:ObservationInterpretation | Σ | 0..* | Coding | Code defined by a terminology system Binding: Observation Interpretation Codes (required): Observation Interpretation Codes
coding:InterpretatieVlaggenCodelijst | Σ | 0..* | Coding | ResultFlags Binding: InterpretatieVlaggenCodelijst (required): InterpretatieVlaggenCodelijst
text | S Σ | 0..1 | string | Plain text representation of the concept
comment |  | 0..1 | string | Comment or ResultInterpretation
bodySite |  | 0..1 | CodeableConcept | Observed body part Binding: SNOMED CT Body Structures (example): Codes describing anatomical locations. May include laterality.
method |  | 0..1 | CodeableConcept | TestMethod Binding: TestmethodeCodelijst (extensible): SNOMED CT (2.16.840.1.113883.6.96): All values
specimen | S | 0..1 | Reference(Specimen) | Specimen
device |  | 0..1 | Reference(HCIM MedicalDevice Product) | (Measurement) Device
referenceRange | C | 0..* | BackboneElement | Reference Constraints: obs-3
id |  | 0..1 | string | xml:id (or equivalent in JSON)
extension |  | 0..* | Extension | Additional Content defined by implementations
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored
low | C | 0..1 | SimpleQuantity | ReferenceRangeLowerLimit
id |  | 0..1 | string | xml:id (or equivalent in JSON)
extension |  | 0..* | Extension | Additional Content defined by implementations Slice: Unordered, Open by value:url
value | S Σ | 0..1 | decimal | Numerical value (with implicit precision)
unit | Σ | 0..1 | string | Unit representation
system | Σ C | 0..1 | uri | System that defines coded unit form
code | S Σ | 0..1 | code | Coded form of the unit
high | C | 0..1 | SimpleQuantity | ReferenceRangeUpperLimit
id |  | 0..1 | string | xml:id (or equivalent in JSON)
extension |  | 0..* | Extension | Additional Content defined by implementations Slice: Unordered, Open by value:url
value | S Σ | 0..1 | decimal | Numerical value (with implicit precision)
unit | Σ | 0..1 | string | Unit representation
system | Σ C | 0..1 | uri | System that defines coded unit form
code | S Σ | 0..1 | code | Coded form of the unit
type |  | 0..1 | CodeableConcept | Reference range qualifier Binding: Observation Reference Range Meaning Codes (extensible): Code for the meaning of a reference range.
appliesTo |  | 0..* | CodeableConcept | Reference range population Binding: Observation Reference Range Applies To Codes (example): Codes identifying the population the reference range applies to.
age |  | 0..1 | Range | Applicable age range, if relevant
text |  | 0..1 | string | Text based reference range in an observation
related | Σ | 0..* | BackboneElement | RelatedResults
id |  | 0..1 | string | xml:id (or equivalent in JSON)
extension |  | 0..* | Extension | Additional Content defined by implementations
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored
type |  | 0..1 | code | has-member | derived-from | sequel-to | replaces | qualified-by | interfered-by Binding: ObservationRelationshipType (required): Codes specifying how two observations are related.
target |  | 1..1 | Reference(QuestionnaireResponse | Sequence | HCIM LaboratoryTestResult Observation) | Resource that is related to this one
component | Σ | 0..* | BackboneElement | LaboratoryTest
id |  | 0..1 | string | xml:id (or equivalent in JSON)
extension |  | 0..* | Extension | Additional Content defined by implementations
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored
code | Σ | 1..1 | CodeableConcept | TestCode Binding: TestCodeCodelijst (extensible): LOINC (2.16.840.1.113883.6.1): All values
value[x] | Σ | 0..1 |  | TestResult
valueQuantity |  |  | Quantity |
valueCodeableConcept |  |  | CodeableConcept |
valueString |  |  | string |
valueRange |  |  | Range |
valueRatio |  |  | Ratio |
valueSampledData |  |  | SampledData |
valueAttachment |  |  | Attachment |
valueTime |  |  | time |
valueDateTime |  |  | dateTime |
valuePeriod |  |  | Period |
dataAbsentReason | C | 0..1 | CodeableConcept | Why the component result is missing Binding: Observation Value Absent Reason (extensible): Codes specifying why the result (Observation.value[x]) is missing.
interpretation |  | 0..1 | CodeableConcept | ResultFlags Binding: InterpretatieVlaggenCodelijst (extensible): InterpretatieVlaggenCodelijst
referenceRange |  | 0..* | See referenceRange (Observation) | Provides guide for interpretation of component result
Documentation for this format

#### Terminology Bindings

Path | Status | Usage | ValueSet | Version | Source
Observation.language | Base | extensible | Common Languages | 📦3.0.2 | FHIR Std.
Observation.status | Base | required | ObservationStatus | 📦3.0.2 | FHIR Std.
Observation.status.extension:TestResultStatus.​value[x]:valueCodeableConcept | Base | extensible | ResultaatStatusCodelijst | 📦2017-12-31T00:00:00 | Nictiz FHIR NL STU3 Zib2017 v2.3
Observation.category | Base | preferred | Observation Category Codes | 📦3.0.2 | FHIR Std.
Observation.category:LaboratoryTestResultCode | Base | preferred | Observation Category Codes | 📦3.0.2 | FHIR Std.
Observation.category:ResultType | Base | required | ResultaatTypeCodelijst | 📦2017-12-31T00:00:00 | Nictiz FHIR NL STU3 Zib2017 v2.3
Observation.code | Base | example | LOINC Codes | 📦3.0.2 | FHIR Std.
Observation.value[x]:valueQuantity.​comparator | Base | required | QuantityComparator | 📍3.0.2 | FHIR Std.
Observation.dataAbsentReason | Base | extensible | Observation Value Absent Reason | 📦3.0.2 | FHIR Std.
Observation.interpretation | Base | extensible | Observation Interpretation Codes | 📦3.0.2 | FHIR Std.
Observation.interpretation.​coding:ObservationInterpretation | Base | required | Observation Interpretation Codes | 📦3.0.2 | FHIR Std.
Observation.interpretation.​coding:InterpretatieVlaggenCodelijst | Base | required | InterpretatieVlaggenCodelijst | 📦2017-12-31T00:00:00 | Nictiz FHIR NL STU3 Zib2017 v2.3
Observation.bodySite | Base | example | SNOMED CT Body Structures | 📦3.0.2 | FHIR Std.
Observation.method | Base | extensible | TestmethodeCodelijst | 📦2017-12-31T00:00:00 | Nictiz FHIR NL STU3 Zib2017 v2.3
Observation.referenceRange.​type | Base | extensible | Observation Reference Range Meaning Codes | 📦3.0.2 | FHIR Std.
Observation.referenceRange.​appliesTo | Base | example | Observation Reference Range Applies To Codes | 📦3.0.2 | FHIR Std.
Observation.related.​type | Base | required | ObservationRelationshipType | 📦3.0.2 | FHIR Std.
Observation.component.​code | Base | extensible | TestCodeCodelijst | 📦2017-12-31T00:00:00 | Nictiz FHIR NL STU3 Zib2017 v2.3
Observation.component.​dataAbsentReason | Base | extensible | Observation Value Absent Reason | 📦3.0.2 | FHIR Std.
Observation.component.​interpretation | Base | extensible | InterpretatieVlaggenCodelijst | 📦2017-12-31T00:00:00 | Nictiz FHIR NL STU3 Zib2017 v2.3

#### Constraints

Id | Grade | Path(s) | Description | Expression
dom-1 | error | Observation | If the resource is contained in another resource, it SHALL NOT contain any narrative | `contained.text.empty()`
dom-2 | error | Observation | If the resource is contained in another resource, it SHALL NOT contain nested Resources | `contained.contained.empty()`
dom-3 | error | Observation | If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource | `contained.where(('#'+id in %resource.descendants().reference).not()).empty()`
dom-4 | error | Observation | If 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()`
ele-1 | error | **ALL** elements | All FHIR elements must have a @value or children | `hasValue() | (children().count() > id.count())`
ext-1 | error | Observation.status.extension:TestResultStatus, Observation.performer.extension:practitionerRole | Must have either extensions or value[x], not both | `extension.exists() != value.exists()`
obs-3 | error | Observation.referenceRange | Must have at least a low or a high or text | `low.exists() or high.exists() or text.exists()`
obs-6 | error | Observation | dataAbsentReason SHALL only be present if Observation.value[x] is not present | `dataAbsentReason.empty() or value.empty()`
obs-7 | error | Observation | If code is the same as a component code then the value element associated with the code SHALL NOT be present | `value.empty() or component.code.where( (coding.code = %resource.code.coding.code) and (coding.system = %resource.code.coding.system)).empty()`
zib-LaboratoryTestResult-Observation-1 | error | Observation.interpretation.coding | If a value from the HCIM ValueSet 'InterpretatieVlaggenCodelijst' is present a mapped code from the FHIR ValueSet 'Observation Interpretation Codes' is also expected. A ConceptMap is available that maps the HCIM values to the FHIR values. | `coding.where(system = 'http://snomed.info/sct' and (code = '281302008' or '281300000' or '11896004' or '30714006' or '131196009') ).exists() implies coding.where(system = 'http://hl7.org/fhir/v2/0078').exists()`

This structure is derived from Zib LaboratoryTestResult Observation

Summary

Must-Support: 14 elements

Structures

This structure refers to these other structures:

- Specimen (http://fhir.hl7.nl/zorgviewer/StructureDefinition/Specimen)

Key Elements View

Name | Flags | Card. | Type | Description & Constraints Filter: Bindings Constraints Obligations
--- | --- | --- | --- | ---
Observation | C | 0..* | Zib LaboratoryTestResult Observation | LaboratoryTestResult Constraints: obs-7, obs-6
implicitRules | ?!Σ | 0..1 | uri | A set of rules under which this content was created
modifierExtension | ?! | 0..* | Extension | Extensions that cannot be ignored
status | ?!S Σ | 1..1 | code | TestUitslagStatus Binding: ObservationStatus (required): Codes providing the status of an observation.
Slices for extension |  |  |  | Content/Rules for all slices
extension:TestResultStatus |  | 0..1 | (Complex) | TestResultStatus URL: http://nictiz.nl/fhir/StructureDefinition/code-specification Constraints: ext-1
extension |  | 0..0 |  | Additional Content defined by implementations Slice: Unordered, Open by value:url
url |  | 1..1 | uri | "http://nictiz.nl/fhir/StructureDefinition/code-specification"
Slices for value[x] |  |  |  | Content/Rules for all slices
value[x]:valueCodeableConcept |  | 1..1 | CodeableConcept | Value of extension Binding: ResultaatStatusCodelijst (extensible): TestResultStatusCodelist
Slices for category |  | 1..* | CodeableConcept | Classification of type of observation Slice: Unordered, Open by value:$this Binding: Observation Category Codes (preferred): Codes for high level observation categories.
category:LaboratoryTestResultCode |  | 1..1 | CodeableConcept | LaboratoryTestResultCode Binding: Observation Category Codes (preferred): Codes for high level observation categories. Required Pattern: At least the following
id |  | 0..1 | string | xml:id (or equivalent in JSON)
extension |  | 0..* | Extension | Additional Content defined by implementations
coding |  | 1..* | Coding | Code defined by a terminology system Fixed Value: (Complex)
id |  | 0..1 | string | xml:id (or equivalent in JSON)
extension |  | 0..* | Extension | Additional Content defined by implementations
system |  | 1..1 | uri | Identity of the terminology system Fixed Value: http://snomed.info/sct
version |  | 0..1 | string | Version of the system - if relevant
code |  | 1..1 | code | Symbol in syntax defined by the system Fixed Value: 49581000146104
display |  | 0..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:ResultType |  | 0..1 | CodeableConcept | ResultType Binding: ResultaatTypeCodelijst (required): ResultaatTypeCodelijst
code | Σ | 1..1 | CodeableConcept | TestCode or PanelOrBattery Binding: LOINC Codes (example): Codes identifying names of simple observations.
coding | Σ | 0..* | Coding | Code defined by a terminology system
display | S Σ | 0..1 | string | Representation defined by the system
text | S Σ | 0..1 | string | Plain text representation of the concept
subject | Σ | 1..1 | Reference(Group | Device | nl-core-location | nl-core-patient) | Patient
Slices for effective[x] | Σ | 0..1 | dateTime | TestDateTime Slice: Unordered, Closed by type:$this
effective[x]:effectiveDateTime | S Σ | 0..1 | dateTime | TestDateTime
Slices for value[x] | Σ C | 0..1 | Quantity | TestResult Slice: Unordered, Closed by type:$this
value[x]:valueQuantity | S Σ C | 0..1 | Quantity | TestResult
value | S Σ | 0..1 | decimal | Numerical value (with implicit precision)
comparator | ?!Σ | 0..1 | code | < | <= | >= | > - how to understand the value Binding: QuantityComparator (required): How the Quantity should be understood and represented.
code | S Σ | 0..1 | code | Coded form of the unit
interpretation |  | 0..1 | CodeableConcept | High, low, normal, etc. Binding: Observation Interpretation Codes (extensible): Codes identifying interpretations of observations.
Slices for coding | Σ C | 1..* | Coding | Code defined by a terminology system Slice: Unordered, Open by value:$this Constraints: zib-LaboratoryTestResult-Observation-1
coding:All Slices |  |  |  | Content/Rules for all slices
code | S Σ | 0..1 | code | Symbol in syntax defined by the system
coding:ObservationInterpretation | Σ | 0..* | Coding | Code defined by a terminology system Binding: Observation Interpretation Codes (required): Observation Interpretation Codes
coding:InterpretatieVlaggenCodelijst | Σ | 0..* | Coding | ResultFlags Binding: InterpretatieVlaggenCodelijst (required): InterpretatieVlaggenCodelijst
text | S Σ | 0..1 | string | Plain text representation of the concept
specimen | S | 0..1 | Reference(Specimen) | Specimen
referenceRange | C | 0..* | BackboneElement | Reference Constraints: obs-3
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored
low | C | 0..1 | SimpleQuantity | ReferenceRangeLowerLimit
value | S Σ | 0..1 | decimal | Numerical value (with implicit precision)
code | S Σ | 0..1 | code | Coded form of the unit
high | C | 0..1 | SimpleQuantity | ReferenceRangeUpperLimit
value | S Σ | 0..1 | decimal | Numerical value (with implicit precision)
code | S Σ | 0..1 | code | Coded form of the unit
Documentation for this format

#### Terminology Bindings

Path | Status | Usage | ValueSet | Version | Source
Observation.status | Base | required | ObservationStatus | 📦3.0.2 | FHIR Std.
Observation.status.extension:TestResultStatus.​value[x]:valueCodeableConcept | Base | extensible | ResultaatStatusCodelijst | 📦2017-12-31T00:00:00 | Nictiz FHIR NL STU3 Zib2017 v2.3
Observation.category | Base | preferred | Observation Category Codes | 📦3.0.2 | FHIR Std.
Observation.category:LaboratoryTestResultCode | Base | preferred | Observation Category Codes | 📦3.0.2 | FHIR Std.
Observation.category:ResultType | Base | required | ResultaatTypeCodelijst | 📦2017-12-31T00:00:00 | Nictiz FHIR NL STU3 Zib2017 v2.3
Observation.code | Base | example | LOINC Codes | 📦3.0.2 | FHIR Std.
Observation.value[x]:valueQuantity.​comparator | Base | required | QuantityComparator | 📍3.0.2 | FHIR Std.
Observation.interpretation | Base | extensible | Observation Interpretation Codes | 📦3.0.2 | FHIR Std.
Observation.interpretation.​coding:ObservationInterpretation | Base | required | Observation Interpretation Codes | 📦3.0.2 | FHIR Std.
Observation.interpretation.​coding:InterpretatieVlaggenCodelijst | Base | required | InterpretatieVlaggenCodelijst | 📦2017-12-31T00:00:00 | Nictiz FHIR NL STU3 Zib2017 v2.3

#### Constraints

Id | Grade | Path(s) | Description | Expression
dom-1 | error | Observation | If the resource is contained in another resource, it SHALL NOT contain any narrative | `contained.text.empty()`
dom-2 | error | Observation | If the resource is contained in another resource, it SHALL NOT contain nested Resources | `contained.contained.empty()`
dom-3 | error | Observation | If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource | `contained.where(('#'+id in %resource.descendants().reference).not()).empty()`
dom-4 | error | Observation | If 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()`
ele-1 | error | **ALL** elements | All FHIR elements must have a @value or children | `hasValue() | (children().count() > id.count())`
ext-1 | error | Observation.status.extension:TestResultStatus | Must have either extensions or value[x], not both | `extension.exists() != value.exists()`
obs-3 | error | Observation.referenceRange | Must have at least a low or a high or text | `low.exists() or high.exists() or text.exists()`
obs-6 | error | Observation | dataAbsentReason SHALL only be present if Observation.value[x] is not present | `dataAbsentReason.empty() or value.empty()`
obs-7 | error | Observation | If code is the same as a component code then the value element associated with the code SHALL NOT be present | `value.empty() or component.code.where( (coding.code = %resource.code.coding.code) and (coding.system = %resource.code.coding.system)).empty()`
zib-LaboratoryTestResult-Observation-1 | error | Observation.interpretation.coding | If a value from the HCIM ValueSet 'InterpretatieVlaggenCodelijst' is present a mapped code from the FHIR ValueSet 'Observation Interpretation Codes' is also expected. A ConceptMap is available that maps the HCIM values to the FHIR values. | `coding.where(system = 'http://snomed.info/sct' and (code = '281302008' or '281300000' or '11896004' or '30714006' or '131196009') ).exists() implies coding.where(system = 'http://hl7.org/fhir/v2/0078').exists()`

Differential View

This structure is derived from Zib LaboratoryTestResult Observation

Name | Flags | Card. | Type | Description & Constraints Filter: Bindings Constraints Obligations
--- | --- | --- | --- | ---
Observation |  | 0..* | Zib LaboratoryTestResult Observation | LaboratoryTestResult
status | S | 1..1 | code | TestUitslagStatus
code |  |  |  |
coding |  |  |  |
display | S | 0..1 | string | Representation defined by the system
text | S | 0..1 | string | Plain text representation of the concept
effectiveDateTime | S | 0..1 | dateTime | TestDateTime
valueQuantity | S | 0..1 | Quantity | TestResult
value | S | 0..1 | decimal | Numerical value (with implicit precision)
code | S | 0..1 | code | Coded form of the unit
interpretation |  |  |  |
coding |  |  |  |
code | S | 0..1 | code | Symbol in syntax defined by the system
text | S | 0..1 | string | Plain text representation of the concept
specimen | S | 0..1 | Reference(Specimen) | Specimen
referenceRange |  |  |  |
low |  |  |  |
value | S | 0..1 | decimal | Numerical value (with implicit precision)
code | S | 0..1 | code | Coded form of the unit
high |  |  |  |
value | S | 0..1 | decimal | Numerical value (with implicit precision)
code | S | 0..1 | code | Coded form of the unit
Documentation for this format

Snapshot View

Name | Flags | Card. | Type | Description & Constraints Filter: Bindings Constraints Obligations
--- | --- | --- | --- | ---
Observation | C | 0..* | Zib LaboratoryTestResult Observation | LaboratoryTestResult Constraints: obs-7, obs-6
id | Σ | 0..1 | id | Logical id of this artifact
meta | Σ | 0..1 | Meta | Metadata about the resource
implicitRules | ?!Σ | 0..1 | uri | A set of rules under which this content was created
language |  | 0..1 | code | Language of the resource content Binding: Common Languages (extensible): A human language.
Additional Bindings | Purpose
All Languages | Max Binding
text |  | 0..1 | Narrative | Text summary of the resource, for human interpretation This profile does not constrain the narrative in regard to content, language, or traceability to data elements
contained |  | 0..* | Resource | Contained, inline Resources
extension |  | 0..* | Extension | Additional Content defined by implementations
modifierExtension | ?! | 0..* | Extension | Extensions that cannot be ignored
identifier | Σ | 0..* | Identifier | Identifier
basedOn | Σ | 0..* | Reference(CarePlan | DeviceRequest | ImmunizationRecommendation | MedicationRequest | NutritionOrder | ProcedureRequest | ReferralRequest) | Fulfills plan, proposal or order including requester information.
status | ?!S Σ | 1..1 | code | TestUitslagStatus Binding: ObservationStatus (required): Codes providing the status of an observation.
id |  | 0..1 | string | xml:id (or equivalent in JSON)
Slices for extension |  | 0..* | Extension | Additional Content defined by implementations Slice: Unordered, Open by value:url
extension:TestResultStatus |  | 0..1 | (Complex) | TestResultStatus URL: http://nictiz.nl/fhir/StructureDefinition/code-specification Constraints: ext-1
id |  | 0..1 | string | xml:id (or equivalent in JSON)
extension |  | 0..0 |  | Additional Content defined by implementations Slice: Unordered, Open by value:url
url |  | 1..1 | uri | "http://nictiz.nl/fhir/StructureDefinition/code-specification"
Slices for value[x] |  |  |  | Content/Rules for all slices
value[x]:valueCodeableConcept |  | 1..1 | CodeableConcept | Value of extension Binding: ResultaatStatusCodelijst (extensible): TestResultStatusCodelist
value |  | 0..1 | code | Primitive value for code
Slices for category |  | 1..* | CodeableConcept | Classification of type of observation Slice: Unordered, Open by value:$this Binding: Observation Category Codes (preferred): Codes for high level observation categories.
category:LaboratoryTestResultCode |  | 1..1 | CodeableConcept | LaboratoryTestResultCode Binding: Observation Category Codes (preferred): Codes for high level observation categories. Required Pattern: At least the following
id |  | 0..1 | string | xml:id (or equivalent in JSON)
extension |  | 0..* | Extension | Additional Content defined by implementations Slice: Unordered, Open by value:url
coding | Σ | 0..* | Coding | Code defined by a terminology system Fixed Value: (Complex)
id |  | 0..1 | string | xml:id (or equivalent in JSON)
extension |  | 0..* | Extension | Additional Content defined by implementations Slice: Unordered, Open by value:url
system | Σ | 0..1 | uri | Identity of the terminology system Fixed Value: http://snomed.info/sct
version | Σ | 0..1 | string | Version of the system - if relevant
code | Σ | 0..1 | code | Symbol in syntax defined by the system Fixed Value: 49581000146104
display | Σ | 0..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:ResultType |  | 0..1 | CodeableConcept | ResultType Binding: ResultaatTypeCodelijst (required): ResultaatTypeCodelijst
code | Σ | 1..1 | CodeableConcept | TestCode or PanelOrBattery Binding: LOINC Codes (example): Codes identifying names of simple observations.
id |  | 0..1 | string | xml:id (or equivalent in JSON)
extension |  | 0..* | Extension | Additional Content defined by implementations Slice: Unordered, Open by value:url
coding | Σ | 0..* | Coding | Code defined by a terminology system
id |  | 0..1 | string | xml:id (or equivalent in JSON)
extension |  | 0..* | Extension | Additional Content defined by implementations Slice: Unordered, Open by value:url
system | Σ | 0..1 | uri | Identity of the terminology system
version | Σ | 0..1 | string | Version of the system - if relevant
code | Σ | 0..1 | code | Symbol in syntax defined by the system
display | S Σ | 0..1 | string | Representation defined by the system
userSelected | Σ | 0..1 | boolean | If this coding was chosen directly by the user
text | S Σ | 0..1 | string | Plain text representation of the concept
subject | Σ | 1..1 | Reference(Group | Device | nl-core-location | nl-core-patient) | Patient
context |  | 0..1 | Reference(nl-core-episodeofcare | HCIM Encounter | gp-Encounter) | Encounter during which this observation is made
Slices for effective[x] | Σ | 0..1 | dateTime | TestDateTime Slice: Unordered, Closed by type:$this
effective[x]:effectiveDateTime | S Σ | 0..1 | dateTime | TestDateTime
issued | Σ | 0..1 | instant | Date/Time this was made available
performer | Σ | 0..* | Reference(nl-core-organization | nl-core-patient | nl-core-practitioner | nl-core-relatedperson) | Who is responsible for the observation
id |  | 0..1 | string | xml:id (or equivalent in JSON)
Slices for extension |  | 0..* | Extension | Additional Content defined by implementations Slice: Unordered, Open by value:url
extension:practitionerRole |  | 0..1 | Reference(nl-core-practitionerrole) | Optional Extensions Element URL: http://nictiz.nl/fhir/StructureDefinition/practitionerrole-reference Constraints: ext-1
reference | Σ C | 0..1 | string | Literal reference, Relative, internal or absolute URL
identifier | Σ | 0..1 | Identifier | Logical reference, when literal reference is not known
display | Σ | 0..1 | string | Text alternative for the resource
Slices for value[x] | Σ C | 0..1 | Quantity | TestResult Slice: Unordered, Closed by type:$this
value[x]:valueQuantity | S Σ C | 0..1 | Quantity | TestResult
id |  | 0..1 | string | xml:id (or equivalent in JSON)
extension |  | 0..* | Extension | Additional Content defined by implementations Slice: Unordered, Open by value:url
value | S Σ | 0..1 | decimal | Numerical value (with implicit precision)
comparator | ?!Σ | 0..1 | code | < | <= | >= | > - how to understand the value Binding: QuantityComparator (required): How the Quantity should be understood and represented.
unit | Σ | 0..1 | string | Unit representation
system | Σ C | 0..1 | uri | System that defines coded unit form
code | S Σ | 0..1 | code | Coded form of the unit
dataAbsentReason | C | 0..1 | CodeableConcept | Why the result is missing Binding: Observation Value Absent Reason (extensible): Codes specifying why the result (Observation.value[x]) is missing.
interpretation |  | 0..1 | CodeableConcept | High, low, normal, etc. Binding: Observation Interpretation Codes (extensible): Codes identifying interpretations of observations.
id |  | 0..1 | string | xml:id (or equivalent in JSON)
extension |  | 0..* | Extension | Additional Content defined by implementations Slice: Unordered, Open by value:url
Slices for coding | Σ C | 1..* | Coding | Code defined by a terminology system Slice: Unordered, Open by value:$this Constraints: zib-LaboratoryTestResult-Observation-1
coding:All Slices |  |  |  | Content/Rules for all slices
id |  | 0..1 | string | xml:id (or equivalent in JSON)
extension |  | 0..* | Extension | Additional Content defined by implementations Slice: Unordered, Open by value:url
system | Σ | 0..1 | uri | Identity of the terminology system
version | Σ | 0..1 | string | Version of the system - if relevant
code | S Σ | 0..1 | code | Symbol in syntax defined by the system
display | Σ | 0..1 | string | Representation defined by the system
userSelected | Σ | 0..1 | boolean | If this coding was chosen directly by the user
coding:ObservationInterpretation | Σ | 0..* | Coding | Code defined by a terminology system Binding: Observation Interpretation Codes (required): Observation Interpretation Codes
coding:InterpretatieVlaggenCodelijst | Σ | 0..* | Coding | ResultFlags Binding: InterpretatieVlaggenCodelijst (required): InterpretatieVlaggenCodelijst
text | S Σ | 0..1 | string | Plain text representation of the concept
comment |  | 0..1 | string | Comment or ResultInterpretation
bodySite |  | 0..1 | CodeableConcept | Observed body part Binding: SNOMED CT Body Structures (example): Codes describing anatomical locations. May include laterality.
method |  | 0..1 | CodeableConcept | TestMethod Binding: TestmethodeCodelijst (extensible): SNOMED CT (2.16.840.1.113883.6.96): All values
specimen | S | 0..1 | Reference(Specimen) | Specimen
device |  | 0..1 | Reference(HCIM MedicalDevice Product) | (Measurement) Device
referenceRange | C | 0..* | BackboneElement | Reference Constraints: obs-3
id |  | 0..1 | string | xml:id (or equivalent in JSON)
extension |  | 0..* | Extension | Additional Content defined by implementations
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored
low | C | 0..1 | SimpleQuantity | ReferenceRangeLowerLimit
id |  | 0..1 | string | xml:id (or equivalent in JSON)
extension |  | 0..* | Extension | Additional Content defined by implementations Slice: Unordered, Open by value:url
value | S Σ | 0..1 | decimal | Numerical value (with implicit precision)
unit | Σ | 0..1 | string | Unit representation
system | Σ C | 0..1 | uri | System that defines coded unit form
code | S Σ | 0..1 | code | Coded form of the unit
high | C | 0..1 | SimpleQuantity | ReferenceRangeUpperLimit
id |  | 0..1 | string | xml:id (or equivalent in JSON)
extension |  | 0..* | Extension | Additional Content defined by implementations Slice: Unordered, Open by value:url
value | S Σ | 0..1 | decimal | Numerical value (with implicit precision)
unit | Σ | 0..1 | string | Unit representation
system | Σ C | 0..1 | uri | System that defines coded unit form
code | S Σ | 0..1 | code | Coded form of the unit
type |  | 0..1 | CodeableConcept | Reference range qualifier Binding: Observation Reference Range Meaning Codes (extensible): Code for the meaning of a reference range.
appliesTo |  | 0..* | CodeableConcept | Reference range population Binding: Observation Reference Range Applies To Codes (example): Codes identifying the population the reference range applies to.
age |  | 0..1 | Range | Applicable age range, if relevant
text |  | 0..1 | string | Text based reference range in an observation
related | Σ | 0..* | BackboneElement | RelatedResults
id |  | 0..1 | string | xml:id (or equivalent in JSON)
extension |  | 0..* | Extension | Additional Content defined by implementations
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored
type |  | 0..1 | code | has-member | derived-from | sequel-to | replaces | qualified-by | interfered-by Binding: ObservationRelationshipType (required): Codes specifying how two observations are related.
target |  | 1..1 | Reference(QuestionnaireResponse | Sequence | HCIM LaboratoryTestResult Observation) | Resource that is related to this one
component | Σ | 0..* | BackboneElement | LaboratoryTest
id |  | 0..1 | string | xml:id (or equivalent in JSON)
extension |  | 0..* | Extension | Additional Content defined by implementations
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored
code | Σ | 1..1 | CodeableConcept | TestCode Binding: TestCodeCodelijst (extensible): LOINC (2.16.840.1.113883.6.1): All values
value[x] | Σ | 0..1 |  | TestResult
valueQuantity |  |  | Quantity |
valueCodeableConcept |  |  | CodeableConcept |
valueString |  |  | string |
valueRange |  |  | Range |
valueRatio |  |  | Ratio |
valueSampledData |  |  | SampledData |
valueAttachment |  |  | Attachment |
valueTime |  |  | time |
valueDateTime |  |  | dateTime |
valuePeriod |  |  | Period |
dataAbsentReason | C | 0..1 | CodeableConcept | Why the component result is missing Binding: Observation Value Absent Reason (extensible): Codes specifying why the result (Observation.value[x]) is missing.
interpretation |  | 0..1 | CodeableConcept | ResultFlags Binding: InterpretatieVlaggenCodelijst (extensible): InterpretatieVlaggenCodelijst
referenceRange |  | 0..* | See referenceRange (Observation) | Provides guide for interpretation of component result
Documentation for this format

#### Terminology Bindings

Path | Status | Usage | ValueSet | Version | Source
Observation.language | Base | extensible | Common Languages | 📦3.0.2 | FHIR Std.
Observation.status | Base | required | ObservationStatus | 📦3.0.2 | FHIR Std.
Observation.status.extension:TestResultStatus.​value[x]:valueCodeableConcept | Base | extensible | ResultaatStatusCodelijst | 📦2017-12-31T00:00:00 | Nictiz FHIR NL STU3 Zib2017 v2.3
Observation.category | Base | preferred | Observation Category Codes | 📦3.0.2 | FHIR Std.
Observation.category:LaboratoryTestResultCode | Base | preferred | Observation Category Codes | 📦3.0.2 | FHIR Std.
Observation.category:ResultType | Base | required | ResultaatTypeCodelijst | 📦2017-12-31T00:00:00 | Nictiz FHIR NL STU3 Zib2017 v2.3
Observation.code | Base | example | LOINC Codes | 📦3.0.2 | FHIR Std.
Observation.value[x]:valueQuantity.​comparator | Base | required | QuantityComparator | 📍3.0.2 | FHIR Std.
Observation.dataAbsentReason | Base | extensible | Observation Value Absent Reason | 📦3.0.2 | FHIR Std.
Observation.interpretation | Base | extensible | Observation Interpretation Codes | 📦3.0.2 | FHIR Std.
Observation.interpretation.​coding:ObservationInterpretation | Base | required | Observation Interpretation Codes | 📦3.0.2 | FHIR Std.
Observation.interpretation.​coding:InterpretatieVlaggenCodelijst | Base | required | InterpretatieVlaggenCodelijst | 📦2017-12-31T00:00:00 | Nictiz FHIR NL STU3 Zib2017 v2.3
Observation.bodySite | Base | example | SNOMED CT Body Structures | 📦3.0.2 | FHIR Std.
Observation.method | Base | extensible | TestmethodeCodelijst | 📦2017-12-31T00:00:00 | Nictiz FHIR NL STU3 Zib2017 v2.3
Observation.referenceRange.​type | Base | extensible | Observation Reference Range Meaning Codes | 📦3.0.2 | FHIR Std.
Observation.referenceRange.​appliesTo | Base | example | Observation Reference Range Applies To Codes | 📦3.0.2 | FHIR Std.
Observation.related.​type | Base | required | ObservationRelationshipType | 📦3.0.2 | FHIR Std.
Observation.component.​code | Base | extensible | TestCodeCodelijst | 📦2017-12-31T00:00:00 | Nictiz FHIR NL STU3 Zib2017 v2.3
Observation.component.​dataAbsentReason | Base | extensible | Observation Value Absent Reason | 📦3.0.2 | FHIR Std.
Observation.component.​interpretation | Base | extensible | InterpretatieVlaggenCodelijst | 📦2017-12-31T00:00:00 | Nictiz FHIR NL STU3 Zib2017 v2.3

#### Constraints

Id | Grade | Path(s) | Description | Expression
dom-1 | error | Observation | If the resource is contained in another resource, it SHALL NOT contain any narrative | `contained.text.empty()`
dom-2 | error | Observation | If the resource is contained in another resource, it SHALL NOT contain nested Resources | `contained.contained.empty()`
dom-3 | error | Observation | If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource | `contained.where(('#'+id in %resource.descendants().reference).not()).empty()`
dom-4 | error | Observation | If 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()`
ele-1 | error | **ALL** elements | All FHIR elements must have a @value or children | `hasValue() | (children().count() > id.count())`
ext-1 | error | Observation.status.extension:TestResultStatus, Observation.performer.extension:practitionerRole | Must have either extensions or value[x], not both | `extension.exists() != value.exists()`
obs-3 | error | Observation.referenceRange | Must have at least a low or a high or text | `low.exists() or high.exists() or text.exists()`
obs-6 | error | Observation | dataAbsentReason SHALL only be present if Observation.value[x] is not present | `dataAbsentReason.empty() or value.empty()`
obs-7 | error | Observation | If code is the same as a component code then the value element associated with the code SHALL NOT be present | `value.empty() or component.code.where( (coding.code = %resource.code.coding.code) and (coding.system = %resource.code.coding.system)).empty()`
zib-LaboratoryTestResult-Observation-1 | error | Observation.interpretation.coding | If a value from the HCIM ValueSet 'InterpretatieVlaggenCodelijst' is present a mapped code from the FHIR ValueSet 'Observation Interpretation Codes' is also expected. A ConceptMap is available that maps the HCIM values to the FHIR values. | `coding.where(system = 'http://snomed.info/sct' and (code = '281302008' or '281300000' or '11896004' or '30714006' or '131196009') ).exists() implies coding.where(system = 'http://hl7.org/fhir/v2/0078').exists()`

This structure is derived from Zib LaboratoryTestResult Observation

Summary

Must-Support: 14 elements

Structures

This structure refers to these other structures:

- Specimen (http://fhir.hl7.nl/zorgviewer/StructureDefinition/Specimen)

Other representations of profile: CSV, Excel, Schematron