IE (Ireland) Core Implementation Guide
1.0.0-ballot - Ballot Ireland flag

Publication Build: This will be filled in by the publication tooling

Resource Profile: IE Core DiagnosticReport Profile for Laboratory Results Reporting

Official URL: http://iehr.ai/fhir/ie/core/StructureDefinition/ie-core-diagnosticreport-lab Version: 1.0.0-ballot
Standards status: Trial-use Maturity Level: 3 Computable Name: IECoreDiagnosticReportProfileLaboratoryReporting
Other Identifiers: OID:1.3.6.1.4.1.54392.5.2690.42.18

Copyright/Legal: iEHR.ai, all rights reserved Creative Commons License

The IE Core DiagnosticReport Profile for Laboratory Results Reporting inherits from the FHIR DiagnosticReport resource; refer to it for scope and usage definitions. Laboratory results are grouped and summarized using the DiagnosticReport resource, which typically references Observation resource(s). Each Observation resource represents an individual laboratory test and result value or component result values or a nested panel (such as a microbial susceptibility panel) that references other observations. Laboratory results can also be presented in report form or as free text. This profile sets minimum expectations for the DiagnosticReport resource to record, search, and fetch laboratory results associated with a patient. It specifies which core elements, extensions, vocabularies, and value sets SHALL be present and constrains how the elements are used. Providing the floor for standards development for specific use cases promotes interoperability and adoption.

Example Usage Scenarios:

The following are example usage scenarios for the IE Core DiagnosticReport Profile for Laboratory Results Reporting:

  • Query for lab reports belonging to a Patient
  • Record or update a lab report for a specific Patient

Mandatory and Must Support Data Elements

The following data elements must always be present (Mandatory definition) or must be supported if the data is present in the sending system (Must Support definition). They are presented below in a simple human-readable explanation. Profile specific guidance and examples are provided as well. The Formal Views below provides the formal summary, definitions, and terminology requirements.

Each DiagnosticReport Must Have:

  1. a status
  2. a category code of 'LAB'
  3. a code (preferably a LOINC code) which tells you what is being measured
  4. a patient
  5. the diagnostically relevant time (known as the "effective time" and typically the time of specimen collection)*
  6. when the report was released*

*These elements have the following constraints: SHALL be present if status is 'partial', 'preliminary', 'final', 'amended', 'corrected', or 'appended'.

Each DiagnosticReport Must Support:

  1. a timestamp when the resource last changed*
  2. encounter associated with DiagnosticReport
  3. who issues the report
  4. a result

Profile Specific Implementation Guidance:

  • Additional codes that translate or map to the DiagnosticReport codes or category codes are allowed. For example:
    • providing both a local system code and a LOINC code that it maps to
    • providing a more specific category code to the "LAB" category code, such as "CH" (chemistry), in an additional coding element.
  • Results that are free text or report form are represented using the 'presentedForm' element in DiagnosticReport.
  • * See the IE Core General Guidance page for Searching Using lastUpdated. Updates to Meta.lastUpdated SHOULD reflect:
    • New laboratory reports
    • Changes in the status of laboratory reports, including events that trigger the same status (e.g., amended → amended).

Based upon additional testing, we intend to to upgrade the Meta.lastUpdated guidance (SHOULD) to requirements (SHALL) in the next version of IE Core

Usage:

Formal Views of Profile Content

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

This structure is derived from DiagnosticReport

NameFlagsCard.TypeDescription & Constraintsdoco
.. DiagnosticReport C 0..* DiagnosticReport A Diagnostic report - a combination of request information, atomic results, images, interpretation, as well as formatted reports
ie-core-8: effective[x] SHALL be present if the status is 'partial', 'preliminary', 'final', 'amended', 'corrected' or 'appended'
ie-core-9: issued SHALL be present if the status is 'partial', 'preliminary', 'final', 'amended', 'corrected' or 'appended'
... meta S 0..1 Meta Metadata about the resource
.... lastUpdated S 0..1 instant When the resource last changed
... status SC 1..1 code registered | partial | preliminary | final +
Binding: DiagnosticReportStatus (required)
... Slices for category S 1..* CodeableConcept Service category
Slice: Unordered, Open by pattern:$this
.... category:LaboratorySlice S 1..1 CodeableConcept Service category
Required Pattern: At least the following
..... coding 1..* Coding Code defined by a terminology system
Fixed Value: (complex)
...... system 1..1 uri Identity of the terminology system
Fixed Value: http://terminology.hl7.org/CodeSystem/v2-0074
...... code 1..1 code Symbol in syntax defined by the system
Fixed Value: LAB
... code S 1..1 CodeableConcept IE Core Laboratory Report Order Code
Binding: IE Core Laboratory Test Codes (extensible): LOINC codes

... subject S 1..1 Reference(IE Core Patient Profile S | Group | Device | IE Core Location Profile) The subject of the report - usually, but not always, the patient
... encounter S 0..1 Reference(IE Core Encounter Profile) Encounter associated with DiagnosticReport
... effective[x] SC 0..1 Diagnostically relevant time (typically the time of specimen collection)
.... effectiveDateTime dateTime S
.... effectivePeriod Period
... issued SC 0..1 instant When the report was released
... performer S 0..* Reference(IE Core Practitioner Profile S | IE Core Organization Profile | IE Core CareTeam Profile | IE Core PractitionerRole Profile) Responsible Diagnostic Service
... result S 0..* Reference(IE Core Laboratory Result Observation Profile) Observations

doco Documentation for this format

Terminology Bindings (Differential)

PathConformanceValueSetURI
DiagnosticReport.statusrequiredDiagnosticReportStatus
http://hl7.org/fhir/ValueSet/diagnostic-report-status
from the FHIR Standard
DiagnosticReport.codeextensibleIECoreLaboratoryTestCodes
http://iehr.ai/fhir/ie/core/ValueSet/ie-core-laboratory-test-codes
from this IG

Constraints

IdGradePath(s)DetailsRequirements
ie-core-8errorDiagnosticReporteffective[x] SHALL be present if the status is 'partial', 'preliminary', 'final', 'amended', 'corrected' or 'appended'
: (status='partial' or status='preliminary' or status='final' or status='amended' or status='corrected' or status='appended' ) implies effective.exists()
ie-core-9errorDiagnosticReportissued SHALL be present if the status is 'partial', 'preliminary', 'final', 'amended', 'corrected' or 'appended'
: (status='partial' or status='preliminary' or status='final' or status='amended' or status='corrected' or status='appended' ) implies issued.exists()
NameFlagsCard.TypeDescription & Constraintsdoco
.. DiagnosticReport C 0..* DiagnosticReport A Diagnostic report - a combination of request information, atomic results, images, interpretation, as well as formatted reports
ie-core-8: effective[x] SHALL be present if the status is 'partial', 'preliminary', 'final', 'amended', 'corrected' or 'appended'
ie-core-9: issued SHALL be present if the status is 'partial', 'preliminary', 'final', 'amended', 'corrected' or 'appended'
... meta SΣ 0..1 Meta Metadata about the resource
.... lastUpdated SΣ 0..1 instant When the resource last changed
... implicitRules ?!Σ 0..1 uri A set of rules under which this content was created
... modifierExtension ?! 0..* Extension Extensions that cannot be ignored
... status ?!SΣC 1..1 code registered | partial | preliminary | final +
Binding: DiagnosticReportStatus (required)
... Slices for category SΣ 1..* CodeableConcept Service category
Slice: Unordered, Open by pattern:$this
Binding: DiagnosticServiceSectionCodes (example): Codes for diagnostic service sections.


.... category:LaboratorySlice SΣ 1..1 CodeableConcept Service category
Binding: DiagnosticServiceSectionCodes (example): Codes for diagnostic service sections.



Required Pattern: At least the following
..... coding 1..* Coding Code defined by a terminology system
Fixed Value: (complex)
...... system 1..1 uri Identity of the terminology system
Fixed Value: http://terminology.hl7.org/CodeSystem/v2-0074
...... code 1..1 code Symbol in syntax defined by the system
Fixed Value: LAB
... code SΣ 1..1 CodeableConcept IE Core Laboratory Report Order Code
Binding: IE Core Laboratory Test Codes (extensible): LOINC codes

... subject SΣ 1..1 Reference(IE Core Patient Profile) The subject of the report - usually, but not always, the patient
... encounter SΣ 0..1 Reference(IE Core Encounter Profile) Encounter associated with DiagnosticReport
... effective[x] SΣC 0..1 Diagnostically relevant time (typically the time of specimen collection)
.... effectiveDateTime dateTime
... issued SΣC 0..1 instant When the report was released
... performer SΣ 0..* Reference(IE Core Practitioner Profile) Responsible Diagnostic Service
... result S 0..* Reference(IE Core Laboratory Result Observation Profile) Observations

doco Documentation for this format

Terminology Bindings

PathConformanceValueSet / CodeURI
DiagnosticReport.statusrequiredDiagnosticReportStatus
http://hl7.org/fhir/ValueSet/diagnostic-report-status
from the FHIR Standard
DiagnosticReport.categoryexampleDiagnosticServiceSectionCodes
http://hl7.org/fhir/ValueSet/diagnostic-service-sections
from the FHIR Standard
DiagnosticReport.category:LaboratorySliceexamplePattern: LAB
http://hl7.org/fhir/ValueSet/diagnostic-service-sections
from the FHIR Standard
DiagnosticReport.codeextensibleIECoreLaboratoryTestCodes
http://iehr.ai/fhir/ie/core/ValueSet/ie-core-laboratory-test-codes
from this IG

Constraints

IdGradePath(s)DetailsRequirements
ie-core-8errorDiagnosticReporteffective[x] SHALL be present if the status is 'partial', 'preliminary', 'final', 'amended', 'corrected' or 'appended'
: (status='partial' or status='preliminary' or status='final' or status='amended' or status='corrected' or status='appended' ) implies effective.exists()
ie-core-9errorDiagnosticReportissued SHALL be present if the status is 'partial', 'preliminary', 'final', 'amended', 'corrected' or 'appended'
: (status='partial' or status='preliminary' or status='final' or status='amended' or status='corrected' or status='appended' ) implies issued.exists()
NameFlagsCard.TypeDescription & Constraintsdoco
.. DiagnosticReport C 0..* DiagnosticReport A Diagnostic report - a combination of request information, atomic results, images, interpretation, as well as formatted reports
ie-core-8: effective[x] SHALL be present if the status is 'partial', 'preliminary', 'final', 'amended', 'corrected' or 'appended'
ie-core-9: issued SHALL be present if the status is 'partial', 'preliminary', 'final', 'amended', 'corrected' or 'appended'
... id Σ 0..1 id Logical id of this artifact
... meta SΣ 0..1 Meta Metadata about the resource
.... id 0..1 string Unique id for inter-element referencing
.... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
.... versionId Σ 0..1 id Version specific identifier
.... lastUpdated SΣ 0..1 instant When the resource last changed
.... source Σ 0..1 uri Identifies where the resource comes from
.... profile Σ 0..* canonical(StructureDefinition) Profiles this resource claims to conform to
.... security Σ 0..* Coding Security Labels applied to this resource
Binding: All Security Labels (extensible): Security Labels from the Healthcare Privacy and Security Classification System.


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


... implicitRules ?!Σ 0..1 uri A set of rules under which this content was created
... language 0..1 code Language of the resource content
Binding: CommonLanguages (preferred): A human language.

Additional BindingsPurpose
AllLanguages Max Binding
... text 0..1 Narrative Text summary of the resource, for human interpretation
... 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 Business identifier for report
... basedOn 0..* Reference(CarePlan | ImmunizationRecommendation | MedicationRequest | NutritionOrder | ServiceRequest) What was requested
... status ?!SΣC 1..1 code registered | partial | preliminary | final +
Binding: DiagnosticReportStatus (required)
... Slices for category SΣ 1..* CodeableConcept Service category
Slice: Unordered, Open by pattern:$this
Binding: DiagnosticServiceSectionCodes (example): Codes for diagnostic service sections.


.... category:LaboratorySlice SΣ 1..1 CodeableConcept Service category
Binding: DiagnosticServiceSectionCodes (example): Codes for diagnostic service sections.



Required Pattern: At least the following
..... id 0..1 string Unique id for inter-element referencing
..... extension 0..* Extension Additional content defined by implementations
..... coding 1..* Coding Code defined by a terminology system
Fixed Value: (complex)
...... id 0..1 string Unique id for inter-element referencing
...... extension 0..* Extension Additional content defined by implementations
...... system 1..1 uri Identity of the terminology system
Fixed Value: http://terminology.hl7.org/CodeSystem/v2-0074
...... version 0..1 string Version of the system - if relevant
...... code 1..1 code Symbol in syntax defined by the system
Fixed Value: LAB
...... 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
... code SΣ 1..1 CodeableConcept IE Core Laboratory Report Order Code
Binding: IE Core Laboratory Test Codes (extensible): LOINC codes

... subject SΣ 1..1 Reference(IE Core Patient Profile S | Group | Device | IE Core Location Profile) The subject of the report - usually, but not always, the patient
... encounter SΣ 0..1 Reference(IE Core Encounter Profile) Encounter associated with DiagnosticReport
... effective[x] SΣC 0..1 Diagnostically relevant time (typically the time of specimen collection)
.... effectiveDateTime dateTime S
.... effectivePeriod Period
... issued SΣC 0..1 instant When the report was released
... performer SΣ 0..* Reference(IE Core Practitioner Profile S | IE Core Organization Profile | IE Core CareTeam Profile | IE Core PractitionerRole Profile) Responsible Diagnostic Service
... resultsInterpreter Σ 0..* Reference(Practitioner | PractitionerRole | Organization | CareTeam) Primary result interpreter
... specimen 0..* Reference(Specimen) Specimens this report is based on
... result S 0..* Reference(IE Core Laboratory Result Observation Profile) Observations
... imagingStudy 0..* Reference(ImagingStudy) Reference to full details of imaging associated with the diagnostic report
... media Σ 0..* BackboneElement Key images associated with this report
.... id 0..1 string Unique id for inter-element referencing
.... extension 0..* Extension Additional content defined by implementations
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
.... comment 0..1 string Comment about the image (e.g. explanation)
.... link Σ 1..1 Reference(Media) Reference to the image source
... conclusion 0..1 string Clinical conclusion (interpretation) of test results
... conclusionCode 0..* CodeableConcept Codes for the clinical conclusion of test results
Binding: SNOMEDCTClinicalFindings (example): Diagnosis codes provided as adjuncts to the report.


... presentedForm 0..* Attachment Entire report as issued

doco Documentation for this format

Terminology Bindings

PathConformanceValueSet / CodeURI
DiagnosticReport.meta.securityextensibleAll Security Labels
http://hl7.org/fhir/ValueSet/security-labels
from the FHIR Standard
DiagnosticReport.meta.tagexampleCommonTags
http://hl7.org/fhir/ValueSet/common-tags
from the FHIR Standard
DiagnosticReport.languagepreferredCommonLanguages
Additional Bindings Purpose
AllLanguages Max Binding
http://hl7.org/fhir/ValueSet/languages
from the FHIR Standard
DiagnosticReport.statusrequiredDiagnosticReportStatus
http://hl7.org/fhir/ValueSet/diagnostic-report-status
from the FHIR Standard
DiagnosticReport.categoryexampleDiagnosticServiceSectionCodes
http://hl7.org/fhir/ValueSet/diagnostic-service-sections
from the FHIR Standard
DiagnosticReport.category:LaboratorySliceexamplePattern: LAB
http://hl7.org/fhir/ValueSet/diagnostic-service-sections
from the FHIR Standard
DiagnosticReport.codeextensibleIECoreLaboratoryTestCodes
http://iehr.ai/fhir/ie/core/ValueSet/ie-core-laboratory-test-codes
from this IG
DiagnosticReport.conclusionCodeexampleSNOMEDCTClinicalFindings
http://hl7.org/fhir/ValueSet/clinical-findings
from the FHIR Standard

Constraints

IdGradePath(s)DetailsRequirements
ie-core-8errorDiagnosticReporteffective[x] SHALL be present if the status is 'partial', 'preliminary', 'final', 'amended', 'corrected' or 'appended'
: (status='partial' or status='preliminary' or status='final' or status='amended' or status='corrected' or status='appended' ) implies effective.exists()
ie-core-9errorDiagnosticReportissued SHALL be present if the status is 'partial', 'preliminary', 'final', 'amended', 'corrected' or 'appended'
: (status='partial' or status='preliminary' or status='final' or status='amended' or status='corrected' or status='appended' ) implies issued.exists()

Differential View

This structure is derived from DiagnosticReport

NameFlagsCard.TypeDescription & Constraintsdoco
.. DiagnosticReport C 0..* DiagnosticReport A Diagnostic report - a combination of request information, atomic results, images, interpretation, as well as formatted reports
ie-core-8: effective[x] SHALL be present if the status is 'partial', 'preliminary', 'final', 'amended', 'corrected' or 'appended'
ie-core-9: issued SHALL be present if the status is 'partial', 'preliminary', 'final', 'amended', 'corrected' or 'appended'
... meta S 0..1 Meta Metadata about the resource
.... lastUpdated S 0..1 instant When the resource last changed
... status SC 1..1 code registered | partial | preliminary | final +
Binding: DiagnosticReportStatus (required)
... Slices for category S 1..* CodeableConcept Service category
Slice: Unordered, Open by pattern:$this
.... category:LaboratorySlice S 1..1 CodeableConcept Service category
Required Pattern: At least the following
..... coding 1..* Coding Code defined by a terminology system
Fixed Value: (complex)
...... system 1..1 uri Identity of the terminology system
Fixed Value: http://terminology.hl7.org/CodeSystem/v2-0074
...... code 1..1 code Symbol in syntax defined by the system
Fixed Value: LAB
... code S 1..1 CodeableConcept IE Core Laboratory Report Order Code
Binding: IE Core Laboratory Test Codes (extensible): LOINC codes

... subject S 1..1 Reference(IE Core Patient Profile S | Group | Device | IE Core Location Profile) The subject of the report - usually, but not always, the patient
... encounter S 0..1 Reference(IE Core Encounter Profile) Encounter associated with DiagnosticReport
... effective[x] SC 0..1 Diagnostically relevant time (typically the time of specimen collection)
.... effectiveDateTime dateTime S
.... effectivePeriod Period
... issued SC 0..1 instant When the report was released
... performer S 0..* Reference(IE Core Practitioner Profile S | IE Core Organization Profile | IE Core CareTeam Profile | IE Core PractitionerRole Profile) Responsible Diagnostic Service
... result S 0..* Reference(IE Core Laboratory Result Observation Profile) Observations

doco Documentation for this format

Terminology Bindings (Differential)

PathConformanceValueSetURI
DiagnosticReport.statusrequiredDiagnosticReportStatus
http://hl7.org/fhir/ValueSet/diagnostic-report-status
from the FHIR Standard
DiagnosticReport.codeextensibleIECoreLaboratoryTestCodes
http://iehr.ai/fhir/ie/core/ValueSet/ie-core-laboratory-test-codes
from this IG

Constraints

IdGradePath(s)DetailsRequirements
ie-core-8errorDiagnosticReporteffective[x] SHALL be present if the status is 'partial', 'preliminary', 'final', 'amended', 'corrected' or 'appended'
: (status='partial' or status='preliminary' or status='final' or status='amended' or status='corrected' or status='appended' ) implies effective.exists()
ie-core-9errorDiagnosticReportissued SHALL be present if the status is 'partial', 'preliminary', 'final', 'amended', 'corrected' or 'appended'
: (status='partial' or status='preliminary' or status='final' or status='amended' or status='corrected' or status='appended' ) implies issued.exists()

Key Elements View

NameFlagsCard.TypeDescription & Constraintsdoco
.. DiagnosticReport C 0..* DiagnosticReport A Diagnostic report - a combination of request information, atomic results, images, interpretation, as well as formatted reports
ie-core-8: effective[x] SHALL be present if the status is 'partial', 'preliminary', 'final', 'amended', 'corrected' or 'appended'
ie-core-9: issued SHALL be present if the status is 'partial', 'preliminary', 'final', 'amended', 'corrected' or 'appended'
... meta SΣ 0..1 Meta Metadata about the resource
.... lastUpdated SΣ 0..1 instant When the resource last changed
... implicitRules ?!Σ 0..1 uri A set of rules under which this content was created
... modifierExtension ?! 0..* Extension Extensions that cannot be ignored
... status ?!SΣC 1..1 code registered | partial | preliminary | final +
Binding: DiagnosticReportStatus (required)
... Slices for category SΣ 1..* CodeableConcept Service category
Slice: Unordered, Open by pattern:$this
Binding: DiagnosticServiceSectionCodes (example): Codes for diagnostic service sections.


.... category:LaboratorySlice SΣ 1..1 CodeableConcept Service category
Binding: DiagnosticServiceSectionCodes (example): Codes for diagnostic service sections.



Required Pattern: At least the following
..... coding 1..* Coding Code defined by a terminology system
Fixed Value: (complex)
...... system 1..1 uri Identity of the terminology system
Fixed Value: http://terminology.hl7.org/CodeSystem/v2-0074
...... code 1..1 code Symbol in syntax defined by the system
Fixed Value: LAB
... code SΣ 1..1 CodeableConcept IE Core Laboratory Report Order Code
Binding: IE Core Laboratory Test Codes (extensible): LOINC codes

... subject SΣ 1..1 Reference(IE Core Patient Profile) The subject of the report - usually, but not always, the patient
... encounter SΣ 0..1 Reference(IE Core Encounter Profile) Encounter associated with DiagnosticReport
... effective[x] SΣC 0..1 Diagnostically relevant time (typically the time of specimen collection)
.... effectiveDateTime dateTime
... issued SΣC 0..1 instant When the report was released
... performer SΣ 0..* Reference(IE Core Practitioner Profile) Responsible Diagnostic Service
... result S 0..* Reference(IE Core Laboratory Result Observation Profile) Observations

doco Documentation for this format

Terminology Bindings

PathConformanceValueSet / CodeURI
DiagnosticReport.statusrequiredDiagnosticReportStatus
http://hl7.org/fhir/ValueSet/diagnostic-report-status
from the FHIR Standard
DiagnosticReport.categoryexampleDiagnosticServiceSectionCodes
http://hl7.org/fhir/ValueSet/diagnostic-service-sections
from the FHIR Standard
DiagnosticReport.category:LaboratorySliceexamplePattern: LAB
http://hl7.org/fhir/ValueSet/diagnostic-service-sections
from the FHIR Standard
DiagnosticReport.codeextensibleIECoreLaboratoryTestCodes
http://iehr.ai/fhir/ie/core/ValueSet/ie-core-laboratory-test-codes
from this IG

Constraints

IdGradePath(s)DetailsRequirements
ie-core-8errorDiagnosticReporteffective[x] SHALL be present if the status is 'partial', 'preliminary', 'final', 'amended', 'corrected' or 'appended'
: (status='partial' or status='preliminary' or status='final' or status='amended' or status='corrected' or status='appended' ) implies effective.exists()
ie-core-9errorDiagnosticReportissued SHALL be present if the status is 'partial', 'preliminary', 'final', 'amended', 'corrected' or 'appended'
: (status='partial' or status='preliminary' or status='final' or status='amended' or status='corrected' or status='appended' ) implies issued.exists()

Snapshot View

NameFlagsCard.TypeDescription & Constraintsdoco
.. DiagnosticReport C 0..* DiagnosticReport A Diagnostic report - a combination of request information, atomic results, images, interpretation, as well as formatted reports
ie-core-8: effective[x] SHALL be present if the status is 'partial', 'preliminary', 'final', 'amended', 'corrected' or 'appended'
ie-core-9: issued SHALL be present if the status is 'partial', 'preliminary', 'final', 'amended', 'corrected' or 'appended'
... id Σ 0..1 id Logical id of this artifact
... meta SΣ 0..1 Meta Metadata about the resource
.... id 0..1 string Unique id for inter-element referencing
.... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
.... versionId Σ 0..1 id Version specific identifier
.... lastUpdated SΣ 0..1 instant When the resource last changed
.... source Σ 0..1 uri Identifies where the resource comes from
.... profile Σ 0..* canonical(StructureDefinition) Profiles this resource claims to conform to
.... security Σ 0..* Coding Security Labels applied to this resource
Binding: All Security Labels (extensible): Security Labels from the Healthcare Privacy and Security Classification System.


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


... implicitRules ?!Σ 0..1 uri A set of rules under which this content was created
... language 0..1 code Language of the resource content
Binding: CommonLanguages (preferred): A human language.

Additional BindingsPurpose
AllLanguages Max Binding
... text 0..1 Narrative Text summary of the resource, for human interpretation
... 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 Business identifier for report
... basedOn 0..* Reference(CarePlan | ImmunizationRecommendation | MedicationRequest | NutritionOrder | ServiceRequest) What was requested
... status ?!SΣC 1..1 code registered | partial | preliminary | final +
Binding: DiagnosticReportStatus (required)
... Slices for category SΣ 1..* CodeableConcept Service category
Slice: Unordered, Open by pattern:$this
Binding: DiagnosticServiceSectionCodes (example): Codes for diagnostic service sections.


.... category:LaboratorySlice SΣ 1..1 CodeableConcept Service category
Binding: DiagnosticServiceSectionCodes (example): Codes for diagnostic service sections.



Required Pattern: At least the following
..... id 0..1 string Unique id for inter-element referencing
..... extension 0..* Extension Additional content defined by implementations
..... coding 1..* Coding Code defined by a terminology system
Fixed Value: (complex)
...... id 0..1 string Unique id for inter-element referencing
...... extension 0..* Extension Additional content defined by implementations
...... system 1..1 uri Identity of the terminology system
Fixed Value: http://terminology.hl7.org/CodeSystem/v2-0074
...... version 0..1 string Version of the system - if relevant
...... code 1..1 code Symbol in syntax defined by the system
Fixed Value: LAB
...... 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
... code SΣ 1..1 CodeableConcept IE Core Laboratory Report Order Code
Binding: IE Core Laboratory Test Codes (extensible): LOINC codes

... subject SΣ 1..1 Reference(IE Core Patient Profile S | Group | Device | IE Core Location Profile) The subject of the report - usually, but not always, the patient
... encounter SΣ 0..1 Reference(IE Core Encounter Profile) Encounter associated with DiagnosticReport
... effective[x] SΣC 0..1 Diagnostically relevant time (typically the time of specimen collection)
.... effectiveDateTime dateTime S
.... effectivePeriod Period
... issued SΣC 0..1 instant When the report was released
... performer SΣ 0..* Reference(IE Core Practitioner Profile S | IE Core Organization Profile | IE Core CareTeam Profile | IE Core PractitionerRole Profile) Responsible Diagnostic Service
... resultsInterpreter Σ 0..* Reference(Practitioner | PractitionerRole | Organization | CareTeam) Primary result interpreter
... specimen 0..* Reference(Specimen) Specimens this report is based on
... result S 0..* Reference(IE Core Laboratory Result Observation Profile) Observations
... imagingStudy 0..* Reference(ImagingStudy) Reference to full details of imaging associated with the diagnostic report
... media Σ 0..* BackboneElement Key images associated with this report
.... id 0..1 string Unique id for inter-element referencing
.... extension 0..* Extension Additional content defined by implementations
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
.... comment 0..1 string Comment about the image (e.g. explanation)
.... link Σ 1..1 Reference(Media) Reference to the image source
... conclusion 0..1 string Clinical conclusion (interpretation) of test results
... conclusionCode 0..* CodeableConcept Codes for the clinical conclusion of test results
Binding: SNOMEDCTClinicalFindings (example): Diagnosis codes provided as adjuncts to the report.


... presentedForm 0..* Attachment Entire report as issued

doco Documentation for this format

Terminology Bindings

PathConformanceValueSet / CodeURI
DiagnosticReport.meta.securityextensibleAll Security Labels
http://hl7.org/fhir/ValueSet/security-labels
from the FHIR Standard
DiagnosticReport.meta.tagexampleCommonTags
http://hl7.org/fhir/ValueSet/common-tags
from the FHIR Standard
DiagnosticReport.languagepreferredCommonLanguages
Additional Bindings Purpose
AllLanguages Max Binding
http://hl7.org/fhir/ValueSet/languages
from the FHIR Standard
DiagnosticReport.statusrequiredDiagnosticReportStatus
http://hl7.org/fhir/ValueSet/diagnostic-report-status
from the FHIR Standard
DiagnosticReport.categoryexampleDiagnosticServiceSectionCodes
http://hl7.org/fhir/ValueSet/diagnostic-service-sections
from the FHIR Standard
DiagnosticReport.category:LaboratorySliceexamplePattern: LAB
http://hl7.org/fhir/ValueSet/diagnostic-service-sections
from the FHIR Standard
DiagnosticReport.codeextensibleIECoreLaboratoryTestCodes
http://iehr.ai/fhir/ie/core/ValueSet/ie-core-laboratory-test-codes
from this IG
DiagnosticReport.conclusionCodeexampleSNOMEDCTClinicalFindings
http://hl7.org/fhir/ValueSet/clinical-findings
from the FHIR Standard

Constraints

IdGradePath(s)DetailsRequirements
ie-core-8errorDiagnosticReporteffective[x] SHALL be present if the status is 'partial', 'preliminary', 'final', 'amended', 'corrected' or 'appended'
: (status='partial' or status='preliminary' or status='final' or status='amended' or status='corrected' or status='appended' ) implies effective.exists()
ie-core-9errorDiagnosticReportissued SHALL be present if the status is 'partial', 'preliminary', 'final', 'amended', 'corrected' or 'appended'
: (status='partial' or status='preliminary' or status='final' or status='amended' or status='corrected' or status='appended' ) implies issued.exists()

 

Other representations of profile: CSV, Excel, Schematron

Notes:


Quick Start


Below is an overview of the required Server RESTful FHIR interactions for this profile - for example, search and read operations - when supporting the IE Core interactions to access this profile's information (Profile Support + Interaction Support). Note that systems that support only IE Core Profiles (Profile Only Support) are not required to support these interactions. See the IE Core Server CapabilityStatement for a complete list of supported RESTful interactions for this IG.

  • See the Scopes Format section for a description of the SMART scopes syntax.
  • See the Search Syntax section for a description of the IE Core search syntax.
  • See the General Requirements section for additional rules and expectations when a server requires status parameters.
  • See the General Guidance section for additional guidance on searching for multiple patients.

IE Core Scopes

Servers providing access to laboratory data SHALL support these IE Core SMART Scopes:

Mandatory Search Parameters:

The following search parameters and search parameter combinations SHALL be supported:

  1. SHALL support searching for all diagnosticreports for a patient using the patient search parameter:

    GET [base]/DiagnosticReport?patient={Type/}[id]

    Example:

    1. GET [base]/DiagnosticReport?patient=1137192

    Implementation Notes: Fetches a bundle of all DiagnosticReport resources for the specified patient (how to search by reference)

  2. SHALL support searching using the combination of the patient and category search parameters:

    GET [base]/DiagnosticReport?patient={Type/}[id]&category=http://terminology.hl7.org/CodeSystem/v2-0074|LAB

    Example:

    1. GET [base]/DiagnosticReport?patient=f201&category=http://terminology.hl7.org/CodeSystem/v2-0074|LAB

    Implementation Notes: Fetches a bundle of all DiagnosticReport resources for the specified patient and a category code = LAB (how to search by reference and how to search by token)

  3. SHALL support searching using the combination of the patient and code search parameters:
    • including optional support for OR search on code (e.g.code={system|}[code],{system|}[code],...)

    GET [base]/DiagnosticReport?patient={Type/}[id]&code={system|}[code]{,{system|}[code],...}

    Example:

    1. GET [base]/DiagnosticReport?patient=1032702&code=http://loinc.org|24323-8

    Implementation Notes: Fetches a bundle of all DiagnosticReport resources for the specified patient and report code(s). SHOULD support search by multiple report codes. (how to search by reference and how to search by token)

  4. SHALL support searching using the combination of the patient and category and date search parameters:
    • including support for these date comparators: gt,lt,ge,le
    • including optional support for AND search on date (e.g.date=[date]&date=[date]]&...)

    GET [base]/DiagnosticReport?patient={Type/}[id]&category=http://terminology.hl7.org/CodeSystem/v2-0074|LAB&date={gt|lt|ge|le}[date]{&date={gt|lt|ge|le}[date]&...}

    Example:

    1. GET [base]/DiagnosticReport?patient=f201&category=http://terminology.hl7.org/CodeSystem/v2-0074|LAB&date=ge2010-01-14T00:00:00Z

    Implementation Notes: Fetches a bundle of all DiagnosticReport resources for the specified patient and date and a category code = LAB (how to search by reference and how to search by token and how to search by date)

Optional Search Parameters:

The following search parameter combinations SHOULD be supported:

  1. SHOULD support searching using the combination of the patient and status search parameters:
    • including support for OR search on status (e.g.status={system|}[code],{system|}[code],...)

    GET [base]/DiagnosticReport?patient={Type/}[id]&status={system|}[code]{,{system|}[code],...}

    Example:

    1. GET [base]/DiagnosticReport?patient=1137192&status=completed

    Implementation Notes: Fetches a bundle of all DiagnosticReport resources for the specified patient and status (how to search by reference and how to search by token)

  2. SHOULD support searching using the combination of the patient and code and date search parameters:
    • including optional support for OR search on code (e.g.code={system|}[code],{system|}[code],...)
    • including support for these date comparators: gt,lt,ge,le
    • including optional support for AND search on date (e.g.date=[date]&date=[date]]&...)

    GET [base]/DiagnosticReport?patient={Type/}[id]&code={system|}[code]{,{system|}[code],...}&date={gt|lt|ge|le}[date]{&date={gt|lt|ge|le}[date]&...}

    Example:

    1. GET [base]/DiagnosticReport?patient=f201&code=http://loinc.org|24323-8&date=ge2019-01-14T00:00:00Z

    Implementation Notes: Fetches a bundle of all DiagnosticReport resources for the specified patient and date and report code(s). SHOULD support search by multiple report codes. (how to search by reference and how to search by token and how to search by date)

  3. SHOULD support searching using the combination of the patient and category and _lastUpdated search parameters:
    • including support for these _lastUpdated comparators: gt,lt,ge,le
    • including optional support for AND search on _lastUpdated (e.g._lastUpdated=[date]&_lastUpdated=[date]]&...)

    GET [base]/DiagnosticReport?patient={Type/}[id]&category={system|}[code]&_lastUpdated={gt|lt|ge|le}[date]{&_lastUpdated={gt|lt|ge|le}[date]&...}

    Example:

    1. GET [base]/DiagnosticReport?patient=f201&category=http://terminology.hl7.org/CodeSystem/v2-0074|LAB&_lastUpdated=ge2010-01-14T00:00:00Z

    Implementation Notes: Fetches a bundle of all DiagnosticReport resources for the specified patient and a category code = LAB and _lastUpdated. See the IE Core General Guidance page for Searching Using lastUpdated. (how to search by reference and how to search by token and how to search by date)