Visit the HL7 website
Visit the FHIR website

CA Core+ v1.1.0 DFT-preBallot

1.1.0-DFT-preBallot   Canada flag
  • Index
  • Home
  • Business Context
    • Business Context
    • Relationship to PCHDCF
    • Relationship to Other Specifications
    • CA Core+ to pCHDCF Mapping
  • Technical Context
    • Technical Context
    • Artifact Status Summary
    • Profiling Conventions & Approach
    • General Guidance
    • Mapping Logic
    • Security And Privacy
  • Modules
    • Modules
    • Common Data Exchange
    • Workflows
  • FHIR Artifacts
    • FHIR Artifacts
    • Profiles
    • Extensions
    • Data Types
    • Terminology
    • Examples
    • Download
  • Change Log
    • Change Log
    • Specification Guidance
    • Copyrights
    • Known Issues & Future Development
    • Specification Feedback
    1. Index
    2. FHIR Artifacts
    3. Profiles
    4. DiagnosticReport (CA-Core)

DFT-preBallot - The specification is a DFT-preBallot version of CA Core+ for collecting community feedback. For a full list of available versions, see the Directory of published versions

DiagnosticReport (CA-Core)

Links

Profile

diagnosticreport-ca-core

Derived from

http://hl7.org/fhir/StructureDefinition/DiagnosticReport

Examples

example-diagnosticreport-pathology-ca-core, example-diagnosticreport-radiology-ca-core

Description

This profile applies constraints to the DiagnosticReport resource for CA Core+ to support diagnostic summaries such as lab and imaging reports in the pan-Canadian context.

References to this resource

CommunicationCACore

CFMM: 2

Resource Content

  • Tree view
  • Overview
  • XML
  • JSON
DiagnosticReportCACore (DiagnosticReport)CDiagnosticReport
There are no (further) constraints on this element
Element id
DiagnosticReport
Short description

A Diagnostic report - a combination of request information, atomic results, images, interpretation, as well as formatted reports

Alternate names

Report, Test, Result, Results, Labs, Laboratory

Definition

The findings and interpretation of diagnostic tests performed on patients, groups of patients, devices, and locations, and/or specimens derived from these. The report includes clinical context such as requesting and provider information, and some mix of atomic results, images, textual and coded interpretations, and formatted representation of diagnostic reports.

Comments

This is intended to capture a single report and is not suitable for use in displaying summary information that covers multiple reports. For example, this resource has not been designed for laboratory cumulative reporting formats nor detailed structured reports for sequencing.

Data type

DiagnosticReport

Constraints
  • dom-2: If the resource is contained in another resource, it SHALL NOT contain nested Resources
    contained.contained.empty()
  • dom-3: If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource
    contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty()
  • dom-4: 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()
  • dom-5: If a resource is contained in another resource, it SHALL NOT have a security label
    contained.meta.security.empty()
  • dom-6: A resource should have narrative for robust management
    text.`div`.exists()
Mappings
  • rim: Entity. Role, or Act
  • workflow: Event
  • v2: ORU -> OBR
  • rim: Observation[classCode=OBS, moodCode=EVN]
idΣ0..1string
There are no (further) constraints on this element
Element id
DiagnosticReport.id
Short description

Logical id of this artifact

Definition

The logical id of the resource, as used in the URL for the resource. Once assigned, this value never changes.

Comments

The only time that a resource does not have an id is when it is being submitted to the server using a create operation.

Data type

string

metaΣ0..1Meta
There are no (further) constraints on this element
Element id
DiagnosticReport.meta
Short description

Metadata about the resource

Definition

The metadata about the resource. This is content that is maintained by the infrastructure. Changes to the content might not always be associated with version changes to the resource.

Data type

Meta

Constraints
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
implicitRulesΣ ?!0..1uri
There are no (further) constraints on this element
Element id
DiagnosticReport.implicitRules
Short description

A set of rules under which this content was created

Definition

A reference to a set of rules that were followed when the resource was constructed, and which must be understood when processing the content. Often, this is a reference to an implementation guide that defines the special rules along with other profiles etc.

Comments

Asserting this rule set restricts the content to be only understood by a limited set of trading partners. This inherently limits the usefulness of the data in the long term. However, the existing health eco-system is highly fractured, and not yet ready to define, collect, and exchange data in a generally computable sense. Wherever possible, implementers and/or specification writers should avoid using this element. Often, when used, the URL is a reference to an implementation guide that defines these special rules as part of it's narrative along with other profiles, value sets, etc.

Data type

uri

Constraints
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
language0..1codeBinding
There are no (further) constraints on this element
Element id
DiagnosticReport.language
Short description

Language of the resource content

Definition

The base language in which the resource is written.

Comments

Language is provided to support indexing and accessibility (typically, services such as text to speech use the language tag). The html language tag in the narrative applies to the narrative. The language tag on the resource may be used to specify the language of other presentations generated from the data in the resource. Not all the content has to be in the base language. The Resource.language should not be assumed to apply to the narrative automatically. If a language is specified, it should it also be specified on the div element in the html (see rules in HTML5 for information about the relationship between xml:lang and the html lang attribute).

Data type

code

Binding

A human language.

CommonLanguages (preferred)

Binding extensions
maxValueSetAllLanguages
Constraints
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
text0..1Narrative
There are no (further) constraints on this element
Element id
DiagnosticReport.text
Short description

Text summary of the resource, for human interpretation

Alternate names

narrative, html, xhtml, display

Definition

A human-readable narrative that contains a summary of the resource and can be used to represent the content of the resource to a human. The narrative need not encode all the structured data, but is required to contain sufficient detail to make it "clinically safe" for a human to just read the narrative. Resource definitions may define what content should be represented in the narrative to ensure clinical safety.

Comments

Contained resources do not have narrative. Resources that are not contained SHOULD have a narrative. In some cases, a resource may only have text with little or no additional discrete data (as long as all minOccurs=1 elements are satisfied). This may be necessary for data from legacy systems where information is captured as a "text blob" or where text is additionally entered raw or narrated and encoded information is added later.

Data type

Narrative

Constraints
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
Mappings
  • rim: Act.text?
contained0..*Resource
There are no (further) constraints on this element
Element id
DiagnosticReport.contained
Short description

Contained, inline Resources

Alternate names

inline resources, anonymous resources, contained resources

Definition

These resources do not have an independent existence apart from the resource that contains them - they cannot be identified independently, and nor can they have their own independent transaction scope.

Comments

This should never be done when the content can be identified properly, as once identification is lost, it is extremely difficult (and context dependent) to restore it again. Contained resources may have profiles and tags In their meta elements, but SHALL NOT have security labels.

Data type

Resource

Mappings
  • rim: N/A
extensionC0..*Extension
There are no (further) constraints on this element
Element id
DiagnosticReport.extension
Short description

Additional content defined by implementations

Alternate names

extensions, user content

Definition

May be used to represent additional information that is not part of the basic definition of the resource. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.

Comments

There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.

Data type

Extension

Constraints
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
  • ext-1: Must have either extensions or value[x], not both
    extension.exists() != value.exists()
Mappings
  • rim: N/A
modifierExtension?! C0..*Extension
There are no (further) constraints on this element
Element id
DiagnosticReport.modifierExtension
Short description

Extensions that cannot be ignored

Alternate names

extensions, user content

Definition

May be used to represent additional information that is not part of the basic definition of the resource and that modifies the understanding of the element that contains it and/or the understanding of the containing element's descendants. Usually modifier elements provide negation or qualification. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer is allowed to define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions.

Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself).

Requirements

Modifier extensions allow for extensions that cannot be safely ignored to be clearly distinguished from the vast majority of extensions which can be safely ignored. This promotes interoperability by eliminating the need for implementers to prohibit the presence of extensions. For further information, see the definition of modifier extensions.

Comments

There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.

Data type

Extension

Constraints
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
  • ext-1: Must have either extensions or value[x], not both
    extension.exists() != value.exists()
Mappings
  • rim: N/A
identifierΣ0..*Identifier
There are no (further) constraints on this element
Element id
DiagnosticReport.identifier
Short description

Business identifier for report

Alternate names

ReportID, Filler ID, Placer ID

Definition

Identifiers assigned to this report by the performer or other systems.

Requirements

Need to know what identifier to use when making queries about this report from the source laboratory, and for linking to the report outside FHIR context.

Comments

Usually assigned by the Information System of the diagnostic service provider (filler id).

Data type

Identifier

Constraints
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
Mappings
  • workflow: Event.identifier
  • w5: FiveWs.identifier
  • v2: OBR-51/ for globally unique filler ID - OBR-3 , For non-globally unique filler-id the flller/placer number must be combined with the universal service Id - OBR-2(if present)+OBR-3+OBR-4
  • rim: id
basedOn0..*Reference(CarePlan | ImmunizationRecommendation | MedicationRequestCACore | NutritionOrder | ServiceRequestCACore)Element id
DiagnosticReport.basedOn
Short description

What was requested

Alternate names

Request

Definition

Details concerning a service requested.

Requirements

This allows tracing of authorization for the report and tracking whether proposals/recommendations were acted upon.

Comments

Note: Usually there is one test request for each result, however in some circumstances multiple test requests may be represented using a single test result resource. Note that there are also cases where one request leads to multiple reports.

Data type

Reference(CarePlan | ImmunizationRecommendation | MedicationRequestCACore | NutritionOrder | ServiceRequestCACore)

Constraints
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
Mappings
  • workflow: Event.basedOn
  • v2: ORC? OBR-2/3?
  • rim: outboundRelationship[typeCode=FLFS].target
statusΣ ?!1..1codeBinding
There are no (further) constraints on this element
Element id
DiagnosticReport.status
Short description

registered | partial | preliminary | final +

Definition

The status of the diagnostic report.

Requirements

Diagnostic services routinely issue provisional/incomplete reports, and sometimes withdraw previously released reports.

Data type

code

Binding

The status of the diagnostic report.

DiagnosticReportStatus (required)

Constraints
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
Mappings
  • workflow: Event.status
  • w5: FiveWs.status
  • v2: OBR-25 (not 1:1 mapping)
  • rim: statusCode Note: final and amended are distinguished by whether observation is the subject of a ControlAct event of type "revise"
categoryΣ0..*CodeableConceptCACoreElement id
DiagnosticReport.category
Short description

Concept - reference to a terminology or just text

Alternate names

Department, Sub-department, Service, Discipline

Definition

A concept that may be defined by a formal reference to a terminology or ontology or may be provided by text.

Comments

Not all terminology uses fit this general pattern. In some cases, models should not use CodeableConcept and use Coding directly and provide their own structure for managing text, codings, translations and the relationship between elements and pre- and post-coordination.

Data type

CodeableConceptCACore

Binding

Codes for diagnostic service sections.

DiagnosticServiceSectionCodes (example)

Conditions

The cardinality or value of this element may be affected by these constraints: ele-1

Constraints
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
Mappings
  • w5: FiveWs.class
  • v2: OBR-24
  • rim: inboundRelationship[typeCode=COMP].source[classCode=LIST, moodCode=EVN, code < LabService].code
  • rim: n/a
  • v2: CE/CNE/CWE
  • rim: CD
  • orim: fhir:CodeableConcept rdfs:subClassOf dt:CD
codeΣ1..1CodeableConceptCACoreBindingElement id
DiagnosticReport.code
Short description

Concept - reference to a terminology or just text

Alternate names

Type

Definition

A concept that may be defined by a formal reference to a terminology or ontology or may be provided by text.

Comments

Not all terminology uses fit this general pattern. In some cases, models should not use CodeableConcept and use Coding directly and provide their own structure for managing text, codings, translations and the relationship between elements and pre- and post-coordination.

Data type

CodeableConceptCACore

Binding

Codes that describe Diagnostic Reports.

CodespCLOCD (preferred)

Conditions

The cardinality or value of this element may be affected by these constraints: ele-1

Constraints
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
Mappings
  • workflow: Event.code
  • w5: FiveWs.what[x]
  • v2: OBR-4 (HL7 v2 doesn't provide an easy way to indicate both the ordered test and the performed panel)
  • rim: code
  • rim: n/a
  • v2: CE/CNE/CWE
  • rim: CD
  • orim: fhir:CodeableConcept rdfs:subClassOf dt:CD
subjectSO Σ0..1Reference(PatientCACore | Group | Device | LocationCACore)Element id
DiagnosticReport.subject
Short description

The subject of the report - usually, but not always, the patient

Alternate names

Patient

Definition

The subject of the report. Usually, but not always, this is a patient. However, diagnostic services also perform analyses on specimens collected from a variety of other sources.

Requirements

SHALL know the subject context.

Data type

Reference(PatientCACore | Group | Device | LocationCACore)

Constraints
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
Mappings
  • workflow: Event.subject
  • w5: FiveWs.subject[x]
  • v2: PID-3 (no HL7 v2 mapping for Group or Device)
  • rim: participation[typeCode=SBJ]
  • w5: FiveWs.subject
  • CACDI: Patient
Obligations
CodeActor
SHALL:populate-if-knownhttp://fhir.infoway-inforoute.ca/ca-core/ActorDefinition/producer
SHALL:no-errorhttp://fhir.infoway-inforoute.ca/ca-core/ActorDefinition/consumer
encounterΣ0..1Reference(EncounterCACore)Element id
DiagnosticReport.encounter
Short description

Health care event when test ordered

Alternate names

Context

Definition

The healthcare event (e.g. a patient and healthcare provider interaction) which this DiagnosticReport is about.

Requirements

Links the request to the Encounter context.

Comments

This will typically be the encounter the event occurred within, but some events may be initiated prior to or after the official completion of an encounter but still be tied to the context of the encounter (e.g. pre-admission laboratory tests).

Data type

Reference(EncounterCACore)

Constraints
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
Mappings
  • workflow: Event.encounter
  • w5: FiveWs.context
  • v2: PV1-19
  • rim: inboundRelationship[typeCode=COMP].source[classCode=ENC, moodCode=EVN]
effective[x]Σ0..1
There are no (further) constraints on this element
Element id
DiagnosticReport.effective[x]
Short description

Clinically relevant time/time-period for report

Alternate names

Observation time, Effective Time, Occurrence

Definition

The time or time-period the observed values are related to. When the subject of the report is a patient, this is usually either the time of the procedure or of specimen collection(s), but very often the source of the date/time is not known, only the date/time itself.

Requirements

Need to know where in the patient history to file/present this report.

Comments

If the diagnostic procedure was performed on the patient, this is the time it was performed. If there are specimens, the diagnostically relevant time can be derived from the specimen collection times, but the specimen information is not always available, and the exact relationship between the specimens and the diagnostically relevant time is not always automatic.

Constraints
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
Mappings
  • workflow: Event.occurrence[x]
  • w5: FiveWs.done[x]
  • v2: OBR-7
  • rim: effectiveTime
effectiveDateTimedateTime
There are no (further) constraints on this element
Data type

dateTime

effectivePeriodPeriod
There are no (further) constraints on this element
Data type

Period

issuedΣ0..1instant
There are no (further) constraints on this element
Element id
DiagnosticReport.issued
Short description

DateTime this version was made

Alternate names

Date published, Date Issued, Date Verified

Definition

The date and time that this version of the report was made available to providers, typically after the report was reviewed and verified.

Requirements

Clinicians need to be able to check the date that the report was released.

Comments

May be different from the update time of the resource itself, because that is the status of the record (potentially a secondary copy), not the actual release time of the report.

Data type

instant

Constraints
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
Mappings
  • w5: FiveWs.recorded
  • v2: OBR-22
  • rim: participation[typeCode=VRF or AUT].time
performerΣ0..*Reference(PractitionerCACore | PractitionerRoleCACore | OrganizationCACore | CareTeam)Element id
DiagnosticReport.performer
Short description

Responsible Diagnostic Service

Alternate names

Laboratory, Service, Practitioner, Department, Company, Authorized by, Director

Definition

The diagnostic service that is responsible for issuing the report.

Requirements

Need to know whom to contact if there are queries about the results. Also may need to track the source of reports for secondary data analysis.

Comments

This is not necessarily the source of the atomic data items or the entity that interpreted the results. It is the entity that takes responsibility for the clinical report.

Data type

Reference(PractitionerCACore | PractitionerRoleCACore | OrganizationCACore | CareTeam)

Constraints
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
Mappings
  • workflow: Event.performer.actor
  • w5: FiveWs.actor
  • v2: PRT-8 (where this PRT-4-Participation = "PO")
  • rim: .participation[typeCode=PRF]
resultsInterpreterΣ0..*Reference(PractitionerCACore | PractitionerRoleCACore | OrganizationCACore | CareTeam)Element id
DiagnosticReport.resultsInterpreter
Short description

Primary result interpreter

Alternate names

Analyzed by, Reported by

Definition

The practitioner or organization that is responsible for the report's conclusions and interpretations.

Requirements

Need to know whom to contact if there are queries about the results. Also may need to track the source of reports for secondary data analysis.

Comments

Might not be the same entity that takes responsibility for the clinical report.

Data type

Reference(PractitionerCACore | PractitionerRoleCACore | OrganizationCACore | CareTeam)

Constraints
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
Mappings
  • workflow: Event.performer.actor
  • w5: FiveWs.actor
  • v2: OBR-32, PRT-8 (where this PRT-4-Participation = "PI")
  • rim: .participation[typeCode=PRF]
specimen0..*Reference(Specimen)
There are no (further) constraints on this element
Element id
DiagnosticReport.specimen
Short description

Specimens this report is based on

Definition

Details about the specimens on which this diagnostic report is based.

Requirements

Need to be able to report information about the collected specimens on which the report is based.

Comments

If the specimen is sufficiently specified with a code in the test result name, then this additional data may be redundant. If there are multiple specimens, these may be represented per observation or group.

Data type

Reference(Specimen)

Constraints
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
Mappings
  • v2: SPM
  • rim: participation[typeCode=SBJ]
resultSO0..*Reference(Observation)Element id
DiagnosticReport.result
Short description

Observations

Alternate names

Data, Atomic Value, Result, Atomic result, Data, Test, Analyte, Battery, Organizer

Definition

Observations that are part of this diagnostic report.

Requirements

Need to support individual results, or groups of results, where the result grouping is arbitrary, but meaningful.

Comments

Observations can contain observations.

Data type

Reference(Observation)

Constraints
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
Mappings
  • v2: OBXs
  • rim: outboundRelationship[typeCode=COMP].target
Obligations
CodeActor
SHALL:populate-if-knownhttp://fhir.infoway-inforoute.ca/ca-core/ActorDefinition/producer
SHALL:no-errorhttp://fhir.infoway-inforoute.ca/ca-core/ActorDefinition/consumer
imagingStudy0..*Reference(ImagingStudy)
There are no (further) constraints on this element
Element id
DiagnosticReport.imagingStudy
Short description

Reference to full details of imaging associated with the diagnostic report

Definition

One or more links to full details of any imaging performed during the diagnostic investigation. Typically, this is imaging performed by DICOM enabled modalities, but this is not required. A fully enabled PACS viewer can use this information to provide views of the source images.

Comments

ImagingStudy and the image element are somewhat overlapping - typically, the list of image references in the image element will also be found in one of the imaging study resources. However, each caters to different types of displays for different types of purposes. Neither, either, or both may be provided.

Data type

Reference(ImagingStudy)

Constraints
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
Mappings
  • rim: outboundRelationship[typeCode=COMP].target[classsCode=DGIMG, moodCode=EVN]
mediaΣ0..*BackboneElement
There are no (further) constraints on this element
Element id
DiagnosticReport.media
Short description

Key images associated with this report

Alternate names

DICOM, Slides, Scans

Definition

A list of key images associated with this report. The images are generally created during the diagnostic process, and may be directly of the patient, or of treated specimens (i.e. slides of interest).

Requirements

Many diagnostic services include images in the report as part of their service.

Data type

BackboneElement

Constraints
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
Mappings
  • v2: OBX?
  • rim: outboundRelationship[typeCode=COMP].target
id0..1string
There are no (further) constraints on this element
Element id
DiagnosticReport.media.id
Short description

Unique id for inter-element referencing

Definition

Unique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.

Data type

string

Mappings
  • rim: n/a
extensionC0..*Extension
There are no (further) constraints on this element
Element id
DiagnosticReport.media.extension
Short description

Additional content defined by implementations

Alternate names

extensions, user content

Definition

May be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.

Comments

There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.

Data type

Extension

Constraints
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
  • ext-1: Must have either extensions or value[x], not both
    extension.exists() != value.exists()
Mappings
  • rim: n/a
modifierExtensionΣ ?! C0..*Extension
There are no (further) constraints on this element
Element id
DiagnosticReport.media.modifierExtension
Short description

Extensions that cannot be ignored even if unrecognized

Alternate names

extensions, user content, modifiers

Definition

May be used to represent additional information that is not part of the basic definition of the element and that modifies the understanding of the element in which it is contained and/or the understanding of the containing element's descendants. Usually modifier elements provide negation or qualification. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions.

Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself).

Requirements

Modifier extensions allow for extensions that cannot be safely ignored to be clearly distinguished from the vast majority of extensions which can be safely ignored. This promotes interoperability by eliminating the need for implementers to prohibit the presence of extensions. For further information, see the definition of modifier extensions.

Comments

There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.

Data type

Extension

Constraints
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
  • ext-1: Must have either extensions or value[x], not both
    extension.exists() != value.exists()
Mappings
  • rim: N/A
comment0..1string
There are no (further) constraints on this element
Element id
DiagnosticReport.media.comment
Short description

Comment about the image (e.g. explanation)

Definition

A comment about the image. Typically, this is used to provide an explanation for why the image is included, or to draw the viewer's attention to important features.

Requirements

The provider of the report should make a comment about each image included in the report.

Comments

The comment should be displayed with the image. It would be common for the report to include additional discussion of the image contents in other sections such as the conclusion.

Data type

string

Constraints
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
Mappings
  • rim: .inboundRelationship[typeCode=COMP].source[classCode=OBS, moodCode=EVN, code="annotation"].value
linkΣ1..1Reference(Media)
There are no (further) constraints on this element
Element id
DiagnosticReport.media.link
Short description

Reference to the image source

Definition

Reference to the image source.

Data type

Reference(Media)

Constraints
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
Mappings
  • rim: .value.reference
conclusion0..1string
There are no (further) constraints on this element
Element id
DiagnosticReport.conclusion
Short description

Clinical conclusion (interpretation) of test results

Alternate names

Report

Definition

Concise and clinically contextualized summary conclusion (interpretation/impression) of the diagnostic report.

Requirements

Need to be able to provide a conclusion that is not lost among the basic result data.

Data type

string

Constraints
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
Mappings
  • v2: OBX
  • rim: inboundRelationship[typeCode="SPRT"].source[classCode=OBS, moodCode=EVN, code=LOINC:48767-8].value (type=ST)
conclusionCode0..*CodeableConcept
There are no (further) constraints on this element
Element id
DiagnosticReport.conclusionCode
Short description

Codes for the clinical conclusion of test results

Definition

One or more codes that represent the summary conclusion (interpretation/impression) of the diagnostic report.

Data type

CodeableConcept

Binding

Diagnosis codes provided as adjuncts to the report.

SNOMEDCTClinicalFindings (example)

Constraints
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
Mappings
  • v2: OBX
  • rim: inboundRelationship[typeCode=SPRT].source[classCode=OBS, moodCode=EVN, code=LOINC:54531-9].value (type=CD)
presentedForm0..*Attachment
There are no (further) constraints on this element
Element id
DiagnosticReport.presentedForm
Short description

Entire report as issued

Definition

Rich text representation of the entire result as issued by the diagnostic service. Multiple formats are allowed but they SHALL be semantically equivalent.

Requirements

Gives laboratory the ability to provide its own fully formatted report for clinical fidelity.

Comments

"application/pdf" is recommended as the most reliable and interoperable in this context.

Data type

Attachment

Constraints
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
Mappings
  • v2: OBX
  • rim: text (type=ED)
DiagnosticReportCACore (DiagnosticReport)CDiagnosticReport
There are no (further) constraints on this element
Element id
DiagnosticReport
Short description

A Diagnostic report - a combination of request information, atomic results, images, interpretation, as well as formatted reports

Alternate names

Report, Test, Result, Results, Labs, Laboratory

Definition

The findings and interpretation of diagnostic tests performed on patients, groups of patients, devices, and locations, and/or specimens derived from these. The report includes clinical context such as requesting and provider information, and some mix of atomic results, images, textual and coded interpretations, and formatted representation of diagnostic reports.

Comments

This is intended to capture a single report and is not suitable for use in displaying summary information that covers multiple reports. For example, this resource has not been designed for laboratory cumulative reporting formats nor detailed structured reports for sequencing.

Data type

DiagnosticReport

Constraints
  • dom-2: If the resource is contained in another resource, it SHALL NOT contain nested Resources
    contained.contained.empty()
  • dom-3: If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource
    contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty()
  • dom-4: 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()
  • dom-5: If a resource is contained in another resource, it SHALL NOT have a security label
    contained.meta.security.empty()
  • dom-6: A resource should have narrative for robust management
    text.`div`.exists()
Mappings
  • rim: Entity. Role, or Act
  • workflow: Event
  • v2: ORU -> OBR
  • rim: Observation[classCode=OBS, moodCode=EVN]
idΣ0..1string
There are no (further) constraints on this element
Element id
DiagnosticReport.id
Short description

Logical id of this artifact

Definition

The logical id of the resource, as used in the URL for the resource. Once assigned, this value never changes.

Comments

The only time that a resource does not have an id is when it is being submitted to the server using a create operation.

Data type

string

metaΣ0..1Meta
There are no (further) constraints on this element
Element id
DiagnosticReport.meta
Short description

Metadata about the resource

Definition

The metadata about the resource. This is content that is maintained by the infrastructure. Changes to the content might not always be associated with version changes to the resource.

Data type

Meta

Constraints
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
implicitRulesΣ ?!0..1uri
There are no (further) constraints on this element
Element id
DiagnosticReport.implicitRules
Short description

A set of rules under which this content was created

Definition

A reference to a set of rules that were followed when the resource was constructed, and which must be understood when processing the content. Often, this is a reference to an implementation guide that defines the special rules along with other profiles etc.

Comments

Asserting this rule set restricts the content to be only understood by a limited set of trading partners. This inherently limits the usefulness of the data in the long term. However, the existing health eco-system is highly fractured, and not yet ready to define, collect, and exchange data in a generally computable sense. Wherever possible, implementers and/or specification writers should avoid using this element. Often, when used, the URL is a reference to an implementation guide that defines these special rules as part of it's narrative along with other profiles, value sets, etc.

Data type

uri

Constraints
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
language0..1codeBinding
There are no (further) constraints on this element
Element id
DiagnosticReport.language
Short description

Language of the resource content

Definition

The base language in which the resource is written.

Comments

Language is provided to support indexing and accessibility (typically, services such as text to speech use the language tag). The html language tag in the narrative applies to the narrative. The language tag on the resource may be used to specify the language of other presentations generated from the data in the resource. Not all the content has to be in the base language. The Resource.language should not be assumed to apply to the narrative automatically. If a language is specified, it should it also be specified on the div element in the html (see rules in HTML5 for information about the relationship between xml:lang and the html lang attribute).

Data type

code

Binding

A human language.

CommonLanguages (preferred)

Binding extensions
maxValueSetAllLanguages
Constraints
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
text0..1Narrative
There are no (further) constraints on this element
Element id
DiagnosticReport.text
Short description

Text summary of the resource, for human interpretation

Alternate names

narrative, html, xhtml, display

Definition

A human-readable narrative that contains a summary of the resource and can be used to represent the content of the resource to a human. The narrative need not encode all the structured data, but is required to contain sufficient detail to make it "clinically safe" for a human to just read the narrative. Resource definitions may define what content should be represented in the narrative to ensure clinical safety.

Comments

Contained resources do not have narrative. Resources that are not contained SHOULD have a narrative. In some cases, a resource may only have text with little or no additional discrete data (as long as all minOccurs=1 elements are satisfied). This may be necessary for data from legacy systems where information is captured as a "text blob" or where text is additionally entered raw or narrated and encoded information is added later.

Data type

Narrative

Constraints
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
Mappings
  • rim: Act.text?
contained0..*Resource
There are no (further) constraints on this element
Element id
DiagnosticReport.contained
Short description

Contained, inline Resources

Alternate names

inline resources, anonymous resources, contained resources

Definition

These resources do not have an independent existence apart from the resource that contains them - they cannot be identified independently, and nor can they have their own independent transaction scope.

Comments

This should never be done when the content can be identified properly, as once identification is lost, it is extremely difficult (and context dependent) to restore it again. Contained resources may have profiles and tags In their meta elements, but SHALL NOT have security labels.

Data type

Resource

Mappings
  • rim: N/A
extensionC0..*Extension
There are no (further) constraints on this element
Element id
DiagnosticReport.extension
Short description

Additional content defined by implementations

Alternate names

extensions, user content

Definition

May be used to represent additional information that is not part of the basic definition of the resource. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.

Comments

There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.

Data type

Extension

Constraints
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
  • ext-1: Must have either extensions or value[x], not both
    extension.exists() != value.exists()
Mappings
  • rim: N/A
modifierExtension?! C0..*Extension
There are no (further) constraints on this element
Element id
DiagnosticReport.modifierExtension
Short description

Extensions that cannot be ignored

Alternate names

extensions, user content

Definition

May be used to represent additional information that is not part of the basic definition of the resource and that modifies the understanding of the element that contains it and/or the understanding of the containing element's descendants. Usually modifier elements provide negation or qualification. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer is allowed to define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions.

Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself).

Requirements

Modifier extensions allow for extensions that cannot be safely ignored to be clearly distinguished from the vast majority of extensions which can be safely ignored. This promotes interoperability by eliminating the need for implementers to prohibit the presence of extensions. For further information, see the definition of modifier extensions.

Comments

There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.

Data type

Extension

Constraints
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
  • ext-1: Must have either extensions or value[x], not both
    extension.exists() != value.exists()
Mappings
  • rim: N/A
identifierΣ0..*Identifier
There are no (further) constraints on this element
Element id
DiagnosticReport.identifier
Short description

Business identifier for report

Alternate names

ReportID, Filler ID, Placer ID

Definition

Identifiers assigned to this report by the performer or other systems.

Requirements

Need to know what identifier to use when making queries about this report from the source laboratory, and for linking to the report outside FHIR context.

Comments

Usually assigned by the Information System of the diagnostic service provider (filler id).

Data type

Identifier

Constraints
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
Mappings
  • workflow: Event.identifier
  • w5: FiveWs.identifier
  • v2: OBR-51/ for globally unique filler ID - OBR-3 , For non-globally unique filler-id the flller/placer number must be combined with the universal service Id - OBR-2(if present)+OBR-3+OBR-4
  • rim: id
basedOn0..*Reference(CarePlan | ImmunizationRecommendation | MedicationRequestCACore | NutritionOrder | ServiceRequestCACore)
There are no (further) constraints on this element
Element id
DiagnosticReport.basedOn
Short description

What was requested

Alternate names

Request

Definition

Details concerning a service requested.

Requirements

This allows tracing of authorization for the report and tracking whether proposals/recommendations were acted upon.

Comments

Note: Usually there is one test request for each result, however in some circumstances multiple test requests may be represented using a single test result resource. Note that there are also cases where one request leads to multiple reports.

Data type

Reference(CarePlan | ImmunizationRecommendation | MedicationRequestCACore | NutritionOrder | ServiceRequestCACore)

Constraints
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
Mappings
  • workflow: Event.basedOn
  • v2: ORC? OBR-2/3?
  • rim: outboundRelationship[typeCode=FLFS].target
statusΣ ?!1..1codeBinding
There are no (further) constraints on this element
Element id
DiagnosticReport.status
Short description

registered | partial | preliminary | final +

Definition

The status of the diagnostic report.

Requirements

Diagnostic services routinely issue provisional/incomplete reports, and sometimes withdraw previously released reports.

Data type

code

Binding

The status of the diagnostic report.

DiagnosticReportStatus (required)

Constraints
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
Mappings
  • workflow: Event.status
  • w5: FiveWs.status
  • v2: OBR-25 (not 1:1 mapping)
  • rim: statusCode Note: final and amended are distinguished by whether observation is the subject of a ControlAct event of type "revise"
categoryΣ0..*CodeableConceptCACore
There are no (further) constraints on this element
Element id
DiagnosticReport.category
Short description

Concept - reference to a terminology or just text

Alternate names

Department, Sub-department, Service, Discipline

Definition

A concept that may be defined by a formal reference to a terminology or ontology or may be provided by text.

Comments

Not all terminology uses fit this general pattern. In some cases, models should not use CodeableConcept and use Coding directly and provide their own structure for managing text, codings, translations and the relationship between elements and pre- and post-coordination.

Data type

CodeableConceptCACore

Binding

Codes for diagnostic service sections.

DiagnosticServiceSectionCodes (example)

Conditions

The cardinality or value of this element may be affected by these constraints: ele-1

Constraints
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
Mappings
  • w5: FiveWs.class
  • v2: OBR-24
  • rim: inboundRelationship[typeCode=COMP].source[classCode=LIST, moodCode=EVN, code < LabService].code
  • rim: n/a
  • v2: CE/CNE/CWE
  • rim: CD
  • orim: fhir:CodeableConcept rdfs:subClassOf dt:CD
codeΣ1..1CodeableConceptCACoreBinding
There are no (further) constraints on this element
Element id
DiagnosticReport.code
Short description

Concept - reference to a terminology or just text

Alternate names

Type

Definition

A concept that may be defined by a formal reference to a terminology or ontology or may be provided by text.

Comments

Not all terminology uses fit this general pattern. In some cases, models should not use CodeableConcept and use Coding directly and provide their own structure for managing text, codings, translations and the relationship between elements and pre- and post-coordination.

Data type

CodeableConceptCACore

Binding

Codes that describe Diagnostic Reports.

CodespCLOCD (preferred)

Conditions

The cardinality or value of this element may be affected by these constraints: ele-1

Constraints
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
Mappings
  • workflow: Event.code
  • w5: FiveWs.what[x]
  • v2: OBR-4 (HL7 v2 doesn't provide an easy way to indicate both the ordered test and the performed panel)
  • rim: code
  • rim: n/a
  • v2: CE/CNE/CWE
  • rim: CD
  • orim: fhir:CodeableConcept rdfs:subClassOf dt:CD
subjectSO Σ0..1Reference(PatientCACore | Group | Device | LocationCACore)
There are no (further) constraints on this element
Element id
DiagnosticReport.subject
Short description

The subject of the report - usually, but not always, the patient

Alternate names

Patient

Definition

The subject of the report. Usually, but not always, this is a patient. However, diagnostic services also perform analyses on specimens collected from a variety of other sources.

Requirements

SHALL know the subject context.

Data type

Reference(PatientCACore | Group | Device | LocationCACore)

Constraints
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
Mappings
  • workflow: Event.subject
  • w5: FiveWs.subject[x]
  • v2: PID-3 (no HL7 v2 mapping for Group or Device)
  • rim: participation[typeCode=SBJ]
  • w5: FiveWs.subject
  • CACDI: Patient
Obligations
CodeActor
SHALL:populate-if-knownhttp://fhir.infoway-inforoute.ca/ca-core/ActorDefinition/producer
SHALL:no-errorhttp://fhir.infoway-inforoute.ca/ca-core/ActorDefinition/consumer
encounterΣ0..1Reference(EncounterCACore)
There are no (further) constraints on this element
Element id
DiagnosticReport.encounter
Short description

Health care event when test ordered

Alternate names

Context

Definition

The healthcare event (e.g. a patient and healthcare provider interaction) which this DiagnosticReport is about.

Requirements

Links the request to the Encounter context.

Comments

This will typically be the encounter the event occurred within, but some events may be initiated prior to or after the official completion of an encounter but still be tied to the context of the encounter (e.g. pre-admission laboratory tests).

Data type

Reference(EncounterCACore)

Constraints
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
Mappings
  • workflow: Event.encounter
  • w5: FiveWs.context
  • v2: PV1-19
  • rim: inboundRelationship[typeCode=COMP].source[classCode=ENC, moodCode=EVN]
effective[x]Σ0..1
There are no (further) constraints on this element
Element id
DiagnosticReport.effective[x]
Short description

Clinically relevant time/time-period for report

Alternate names

Observation time, Effective Time, Occurrence

Definition

The time or time-period the observed values are related to. When the subject of the report is a patient, this is usually either the time of the procedure or of specimen collection(s), but very often the source of the date/time is not known, only the date/time itself.

Requirements

Need to know where in the patient history to file/present this report.

Comments

If the diagnostic procedure was performed on the patient, this is the time it was performed. If there are specimens, the diagnostically relevant time can be derived from the specimen collection times, but the specimen information is not always available, and the exact relationship between the specimens and the diagnostically relevant time is not always automatic.

Constraints
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
Mappings
  • workflow: Event.occurrence[x]
  • w5: FiveWs.done[x]
  • v2: OBR-7
  • rim: effectiveTime
effectiveDateTimedateTime
There are no (further) constraints on this element
Data type

dateTime

effectivePeriodPeriod
There are no (further) constraints on this element
Data type

Period

issuedΣ0..1instant
There are no (further) constraints on this element
Element id
DiagnosticReport.issued
Short description

DateTime this version was made

Alternate names

Date published, Date Issued, Date Verified

Definition

The date and time that this version of the report was made available to providers, typically after the report was reviewed and verified.

Requirements

Clinicians need to be able to check the date that the report was released.

Comments

May be different from the update time of the resource itself, because that is the status of the record (potentially a secondary copy), not the actual release time of the report.

Data type

instant

Constraints
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
Mappings
  • w5: FiveWs.recorded
  • v2: OBR-22
  • rim: participation[typeCode=VRF or AUT].time
performerΣ0..*Reference(PractitionerCACore | PractitionerRoleCACore | OrganizationCACore | CareTeam)
There are no (further) constraints on this element
Element id
DiagnosticReport.performer
Short description

Responsible Diagnostic Service

Alternate names

Laboratory, Service, Practitioner, Department, Company, Authorized by, Director

Definition

The diagnostic service that is responsible for issuing the report.

Requirements

Need to know whom to contact if there are queries about the results. Also may need to track the source of reports for secondary data analysis.

Comments

This is not necessarily the source of the atomic data items or the entity that interpreted the results. It is the entity that takes responsibility for the clinical report.

Data type

Reference(PractitionerCACore | PractitionerRoleCACore | OrganizationCACore | CareTeam)

Constraints
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
Mappings
  • workflow: Event.performer.actor
  • w5: FiveWs.actor
  • v2: PRT-8 (where this PRT-4-Participation = "PO")
  • rim: .participation[typeCode=PRF]
resultsInterpreterΣ0..*Reference(PractitionerCACore | PractitionerRoleCACore | OrganizationCACore | CareTeam)
There are no (further) constraints on this element
Element id
DiagnosticReport.resultsInterpreter
Short description

Primary result interpreter

Alternate names

Analyzed by, Reported by

Definition

The practitioner or organization that is responsible for the report's conclusions and interpretations.

Requirements

Need to know whom to contact if there are queries about the results. Also may need to track the source of reports for secondary data analysis.

Comments

Might not be the same entity that takes responsibility for the clinical report.

Data type

Reference(PractitionerCACore | PractitionerRoleCACore | OrganizationCACore | CareTeam)

Constraints
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
Mappings
  • workflow: Event.performer.actor
  • w5: FiveWs.actor
  • v2: OBR-32, PRT-8 (where this PRT-4-Participation = "PI")
  • rim: .participation[typeCode=PRF]
specimen0..*Reference(Specimen)
There are no (further) constraints on this element
Element id
DiagnosticReport.specimen
Short description

Specimens this report is based on

Definition

Details about the specimens on which this diagnostic report is based.

Requirements

Need to be able to report information about the collected specimens on which the report is based.

Comments

If the specimen is sufficiently specified with a code in the test result name, then this additional data may be redundant. If there are multiple specimens, these may be represented per observation or group.

Data type

Reference(Specimen)

Constraints
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
Mappings
  • v2: SPM
  • rim: participation[typeCode=SBJ]
resultSO0..*Reference(Observation)
There are no (further) constraints on this element
Element id
DiagnosticReport.result
Short description

Observations

Alternate names

Data, Atomic Value, Result, Atomic result, Data, Test, Analyte, Battery, Organizer

Definition

Observations that are part of this diagnostic report.

Requirements

Need to support individual results, or groups of results, where the result grouping is arbitrary, but meaningful.

Comments

Observations can contain observations.

Data type

Reference(Observation)

Constraints
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
Mappings
  • v2: OBXs
  • rim: outboundRelationship[typeCode=COMP].target
Obligations
CodeActor
SHALL:populate-if-knownhttp://fhir.infoway-inforoute.ca/ca-core/ActorDefinition/producer
SHALL:no-errorhttp://fhir.infoway-inforoute.ca/ca-core/ActorDefinition/consumer
imagingStudy0..*Reference(ImagingStudy)
There are no (further) constraints on this element
Element id
DiagnosticReport.imagingStudy
Short description

Reference to full details of imaging associated with the diagnostic report

Definition

One or more links to full details of any imaging performed during the diagnostic investigation. Typically, this is imaging performed by DICOM enabled modalities, but this is not required. A fully enabled PACS viewer can use this information to provide views of the source images.

Comments

ImagingStudy and the image element are somewhat overlapping - typically, the list of image references in the image element will also be found in one of the imaging study resources. However, each caters to different types of displays for different types of purposes. Neither, either, or both may be provided.

Data type

Reference(ImagingStudy)

Constraints
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
Mappings
  • rim: outboundRelationship[typeCode=COMP].target[classsCode=DGIMG, moodCode=EVN]
mediaΣ0..*BackboneElement
There are no (further) constraints on this element
Element id
DiagnosticReport.media
Short description

Key images associated with this report

Alternate names

DICOM, Slides, Scans

Definition

A list of key images associated with this report. The images are generally created during the diagnostic process, and may be directly of the patient, or of treated specimens (i.e. slides of interest).

Requirements

Many diagnostic services include images in the report as part of their service.

Data type

BackboneElement

Constraints
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
Mappings
  • v2: OBX?
  • rim: outboundRelationship[typeCode=COMP].target
id0..1string
There are no (further) constraints on this element
Element id
DiagnosticReport.media.id
Short description

Unique id for inter-element referencing

Definition

Unique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.

Data type

string

Mappings
  • rim: n/a
extensionC0..*Extension
There are no (further) constraints on this element
Element id
DiagnosticReport.media.extension
Short description

Additional content defined by implementations

Alternate names

extensions, user content

Definition

May be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.

Comments

There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.

Data type

Extension

Constraints
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
  • ext-1: Must have either extensions or value[x], not both
    extension.exists() != value.exists()
Mappings
  • rim: n/a
modifierExtensionΣ ?! C0..*Extension
There are no (further) constraints on this element
Element id
DiagnosticReport.media.modifierExtension
Short description

Extensions that cannot be ignored even if unrecognized

Alternate names

extensions, user content, modifiers

Definition

May be used to represent additional information that is not part of the basic definition of the element and that modifies the understanding of the element in which it is contained and/or the understanding of the containing element's descendants. Usually modifier elements provide negation or qualification. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions.

Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself).

Requirements

Modifier extensions allow for extensions that cannot be safely ignored to be clearly distinguished from the vast majority of extensions which can be safely ignored. This promotes interoperability by eliminating the need for implementers to prohibit the presence of extensions. For further information, see the definition of modifier extensions.

Comments

There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.

Data type

Extension

Constraints
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
  • ext-1: Must have either extensions or value[x], not both
    extension.exists() != value.exists()
Mappings
  • rim: N/A
comment0..1string
There are no (further) constraints on this element
Element id
DiagnosticReport.media.comment
Short description

Comment about the image (e.g. explanation)

Definition

A comment about the image. Typically, this is used to provide an explanation for why the image is included, or to draw the viewer's attention to important features.

Requirements

The provider of the report should make a comment about each image included in the report.

Comments

The comment should be displayed with the image. It would be common for the report to include additional discussion of the image contents in other sections such as the conclusion.

Data type

string

Constraints
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
Mappings
  • rim: .inboundRelationship[typeCode=COMP].source[classCode=OBS, moodCode=EVN, code="annotation"].value
linkΣ1..1Reference(Media)
There are no (further) constraints on this element
Element id
DiagnosticReport.media.link
Short description

Reference to the image source

Definition

Reference to the image source.

Data type

Reference(Media)

Constraints
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
Mappings
  • rim: .value.reference
conclusion0..1string
There are no (further) constraints on this element
Element id
DiagnosticReport.conclusion
Short description

Clinical conclusion (interpretation) of test results

Alternate names

Report

Definition

Concise and clinically contextualized summary conclusion (interpretation/impression) of the diagnostic report.

Requirements

Need to be able to provide a conclusion that is not lost among the basic result data.

Data type

string

Constraints
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
Mappings
  • v2: OBX
  • rim: inboundRelationship[typeCode="SPRT"].source[classCode=OBS, moodCode=EVN, code=LOINC:48767-8].value (type=ST)
conclusionCode0..*CodeableConcept
There are no (further) constraints on this element
Element id
DiagnosticReport.conclusionCode
Short description

Codes for the clinical conclusion of test results

Definition

One or more codes that represent the summary conclusion (interpretation/impression) of the diagnostic report.

Data type

CodeableConcept

Binding

Diagnosis codes provided as adjuncts to the report.

SNOMEDCTClinicalFindings (example)

Constraints
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
Mappings
  • v2: OBX
  • rim: inboundRelationship[typeCode=SPRT].source[classCode=OBS, moodCode=EVN, code=LOINC:54531-9].value (type=CD)
presentedForm0..*Attachment
There are no (further) constraints on this element
Element id
DiagnosticReport.presentedForm
Short description

Entire report as issued

Definition

Rich text representation of the entire result as issued by the diagnostic service. Multiple formats are allowed but they SHALL be semantically equivalent.

Requirements

Gives laboratory the ability to provide its own fully formatted report for clinical fidelity.

Comments

"application/pdf" is recommended as the most reliable and interoperable in this context.

Data type

Attachment

Constraints
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
Mappings
  • v2: OBX
  • rim: text (type=ED)
{{ren
<StructureDefinition xmlns="http://hl7.org/fhir">
<id value="diagnosticreport-ca-core" />
<extension url="http://hl7.org/fhir/StructureDefinition/structuredefinition-fmm">
<valueInteger value="2" />
</extension>
<url value="http://fhir.infoway-inforoute.ca/cacore/StructureDefinition/diagnosticreport-ca-core" />
<version value="1.1.0" />
<name value="DiagnosticReportCACore" />
<title value="DiagnosticReport (CA-Core)" />
<status value="active" />
<experimental value="false" />
<date value="2025-03-06" />
<publisher value="Canada Health Infoway" />
<contact>
<name value="National Standards Release Centre" />
<telecom>
<system value="url" />
<value value="http://www.infoway-inforoute.ca" />
</telecom>
<telecom>
<system value="email" />
<value value="standards@infoway-inforoute.ca" />
</telecom>
</contact>
<description value="This profile applies constraints to the DiagnosticReport resource for CA Core+ to support diagnostic summaries such as lab and imaging reports in the pan-Canadian context." />
<jurisdiction>
<coding>
<system value="urn:iso:std:iso:3166" />
<code value="CA" />
</coding>
</jurisdiction>
<copyright value="Copyright © 2025+ Canada Health Infoway. All rights reserved. [Terms of Use and License Agreements](https://ic.infoway-inforoute.ca/en/about/tou). [Privacy Policy](https://www.infoway-inforoute.ca/en/legal/privacy-policy)." />
<fhirVersion value="4.0.1" />
<mapping>
<identity value="CACDI" />
<name value="Canadian Core Data for Interoperability (CACDI)" />
<comment value="Mapping for DiagnosticReportCACore to Canadian Core Data for Interoperability (CACDI)." />
</mapping>
<kind value="resource" />
<abstract value="false" />
<type value="DiagnosticReport" />
<baseDefinition value="http://hl7.org/fhir/StructureDefinition/DiagnosticReport" />
<derivation value="constraint" />
<snapshot>
<element id="DiagnosticReport">
<path value="DiagnosticReport" />
<short value="A Diagnostic report - a combination of request information, atomic results, images, interpretation, as well as formatted reports" />
<definition value="The findings and interpretation of diagnostic tests performed on patients, groups of patients, devices, and locations, and/or specimens derived from these. The report includes clinical context such as requesting and provider information, and some mix of atomic results, images, textual and coded interpretations, and formatted representation of diagnostic reports." />
<comment value="This is intended to capture a single report and is not suitable for use in displaying summary information that covers multiple reports. For example, this resource has not been designed for laboratory cumulative reporting formats nor detailed structured reports for sequencing." />
<alias value="Report" />
<alias value="Test" />
<alias value="Result" />
<alias value="Results" />
<alias value="Labs" />
<alias value="Laboratory" />
<min value="0" />
<max value="*" />
<base>
<path value="DiagnosticReport" />
<min value="0" />
<max value="*" />
</base>
<constraint>
<key value="dom-2" />
<severity value="error" />
<human value="If the resource is contained in another resource, it SHALL NOT contain nested Resources" />
<expression value="contained.contained.empty()" />
<xpath value="not(parent::f:contained and f:contained)" />
<source value="http://hl7.org/fhir/StructureDefinition/DomainResource" />
</constraint>
<constraint>
<key value="dom-3" />
<severity value="error" />
<human value="If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource" />
<expression value="contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty()" />
<xpath value="not(exists(for $id in f:contained/*/f:id/@value return $contained[not(parent::*/descendant::f:reference/@value=concat('#', $contained/*/id/@value) or descendant::f:reference[@value='#'])]))" />
<source value="http://hl7.org/fhir/StructureDefinition/DomainResource" />
</constraint>
<constraint>
<key value="dom-4" />
<severity value="error" />
<human value="If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated" />
<expression value="contained.meta.versionId.empty() and contained.meta.lastUpdated.empty()" />
<xpath value="not(exists(f:contained/*/f:meta/f:versionId)) and not(exists(f:contained/*/f:meta/f:lastUpdated))" />
<source value="http://hl7.org/fhir/StructureDefinition/DomainResource" />
</constraint>
<constraint>
<key value="dom-5" />
<severity value="error" />
<human value="If a resource is contained in another resource, it SHALL NOT have a security label" />
<expression value="contained.meta.security.empty()" />
<xpath value="not(exists(f:contained/*/f:meta/f:security))" />
<source value="http://hl7.org/fhir/StructureDefinition/DomainResource" />
</constraint>
<constraint>
<extension url="http://hl7.org/fhir/StructureDefinition/elementdefinition-bestpractice">
<valueBoolean value="true" />
</extension>
<extension url="http://hl7.org/fhir/StructureDefinition/elementdefinition-bestpractice-explanation">
<valueMarkdown value="When a resource has no narrative, only systems that fully understand the data can display the resource to a human safely. Including a human readable representation in the resource makes for a much more robust eco-system and cheaper handling of resources by intermediary systems. Some ecosystems restrict distribution of resources to only those systems that do fully understand the resources, and as a consequence implementers may believe that the narrative is superfluous. However experience shows that such eco-systems often open up to new participants over time." />
</extension>
<key value="dom-6" />
<severity value="warning" />
<human value="A resource should have narrative for robust management" />
<expression value="text.`div`.exists()" />
<xpath value="exists(f:text/h:div)" />
<source value="http://hl7.org/fhir/StructureDefinition/DomainResource" />
</constraint>
<isModifier value="false" />
<isSummary value="false" />
<mapping>
<identity value="rim" />
<map value="Entity. Role, or Act" />
</mapping>
<mapping>
<identity value="workflow" />
<map value="Event" />
</mapping>
<mapping>
<identity value="v2" />
<map value="ORU -> OBR" />
</mapping>
<mapping>
<identity value="rim" />
<map value="Observation[classCode=OBS, moodCode=EVN]" />
</mapping>
</element>
<element id="DiagnosticReport.id">
<path value="DiagnosticReport.id" />
<short value="Logical id of this artifact" />
<definition value="The logical id of the resource, as used in the URL for the resource. Once assigned, this value never changes." />
<comment value="The only time that a resource does not have an id is when it is being submitted to the server using a create operation." />
<min value="0" />
<max value="1" />
<base>
<path value="Resource.id" />
<min value="0" />
<max value="1" />
</base>
<type>
<extension url="http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type">
<valueUrl value="string" />
</extension>
<code value="http://hl7.org/fhirpath/System.String" />
</type>
<isModifier value="false" />
<isSummary value="true" />
</element>
<element id="DiagnosticReport.meta">
<path value="DiagnosticReport.meta" />
<short value="Metadata about the resource" />
<definition value="The metadata about the resource. This is content that is maintained by the infrastructure. Changes to the content might not always be associated with version changes to the resource." />
<min value="0" />
<max value="1" />
<base>
<path value="Resource.meta" />
<min value="0" />
<max value="1" />
</base>
<type>
<code value="Meta" />
</type>
<constraint>
<key value="ele-1" />
<severity value="error" />
<human value="All FHIR elements must have a @value or children" />
<expression value="hasValue() or (children().count() > id.count())" />
<xpath value="@value|f:*|h:div" />
<source value="http://hl7.org/fhir/StructureDefinition/Element" />
</constraint>
<isModifier value="false" />
<isSummary value="true" />
</element>
<element id="DiagnosticReport.implicitRules">
<path value="DiagnosticReport.implicitRules" />
<short value="A set of rules under which this content was created" />
<definition value="A reference to a set of rules that were followed when the resource was constructed, and which must be understood when processing the content. Often, this is a reference to an implementation guide that defines the special rules along with other profiles etc." />
<comment value="Asserting this rule set restricts the content to be only understood by a limited set of trading partners. This inherently limits the usefulness of the data in the long term. However, the existing health eco-system is highly fractured, and not yet ready to define, collect, and exchange data in a generally computable sense. Wherever possible, implementers and/or specification writers should avoid using this element. Often, when used, the URL is a reference to an implementation guide that defines these special rules as part of it's narrative along with other profiles, value sets, etc." />
<min value="0" />
<max value="1" />
<base>
<path value="Resource.implicitRules" />
<min value="0" />
<max value="1" />
</base>
<type>
<code value="uri" />
</type>
<constraint>
<key value="ele-1" />
<severity value="error" />
<human value="All FHIR elements must have a @value or children" />
<expression value="hasValue() or (children().count() > id.count())" />
<xpath value="@value|f:*|h:div" />
<source value="http://hl7.org/fhir/StructureDefinition/Element" />
</constraint>
<isModifier value="true" />
<isModifierReason value="This element is labeled as a modifier because the implicit rules may provide additional knowledge about the resource that modifies it's meaning or interpretation" />
<isSummary value="true" />
</element>
<element id="DiagnosticReport.language">
<path value="DiagnosticReport.language" />
<short value="Language of the resource content" />
<definition value="The base language in which the resource is written." />
<comment value="Language is provided to support indexing and accessibility (typically, services such as text to speech use the language tag). The html language tag in the narrative applies to the narrative. The language tag on the resource may be used to specify the language of other presentations generated from the data in the resource. Not all the content has to be in the base language. The Resource.language should not be assumed to apply to the narrative automatically. If a language is specified, it should it also be specified on the div element in the html (see rules in HTML5 for information about the relationship between xml:lang and the html lang attribute)." />
<min value="0" />
<max value="1" />
<base>
<path value="Resource.language" />
<min value="0" />
<max value="1" />
</base>
<type>
<code value="code" />
</type>
<constraint>
<key value="ele-1" />
<severity value="error" />
<human value="All FHIR elements must have a @value or children" />
<expression value="hasValue() or (children().count() > id.count())" />
<xpath value="@value|f:*|h:div" />
<source value="http://hl7.org/fhir/StructureDefinition/Element" />
</constraint>
<isModifier value="false" />
<isSummary value="false" />
<binding>
<extension url="http://hl7.org/fhir/StructureDefinition/elementdefinition-maxValueSet">
<valueCanonical value="http://hl7.org/fhir/ValueSet/all-languages" />
</extension>
<extension url="http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName">
<valueString value="Language" />
</extension>
<extension url="http://hl7.org/fhir/StructureDefinition/elementdefinition-isCommonBinding">
<valueBoolean value="true" />
</extension>
<strength value="preferred" />
<description value="A human language." />
<valueSet value="http://hl7.org/fhir/ValueSet/languages" />
</binding>
</element>
<element id="DiagnosticReport.text">
<path value="DiagnosticReport.text" />
<short value="Text summary of the resource, for human interpretation" />
<definition value="A human-readable narrative that contains a summary of the resource and can be used to represent the content of the resource to a human. The narrative need not encode all the structured data, but is required to contain sufficient detail to make it "clinically safe" for a human to just read the narrative. Resource definitions may define what content should be represented in the narrative to ensure clinical safety." />
<comment value="Contained resources do not have narrative. Resources that are not contained SHOULD have a narrative. In some cases, a resource may only have text with little or no additional discrete data (as long as all minOccurs=1 elements are satisfied). This may be necessary for data from legacy systems where information is captured as a "text blob" or where text is additionally entered raw or narrated and encoded information is added later." />
<alias value="narrative" />
<alias value="html" />
<alias value="xhtml" />
<alias value="display" />
<min value="0" />
<max value="1" />
<base>
<path value="DomainResource.text" />
<min value="0" />
<max value="1" />
</base>
<type>
<code value="Narrative" />
</type>
<constraint>
<key value="ele-1" />
<severity value="error" />
<human value="All FHIR elements must have a @value or children" />
<expression value="hasValue() or (children().count() > id.count())" />
<xpath value="@value|f:*|h:div" />
<source value="http://hl7.org/fhir/StructureDefinition/Element" />
</constraint>
<isModifier value="false" />
<isSummary value="false" />
<mapping>
<identity value="rim" />
<map value="Act.text?" />
</mapping>
</element>
<element id="DiagnosticReport.contained">
<path value="DiagnosticReport.contained" />
<short value="Contained, inline Resources" />
<definition value="These resources do not have an independent existence apart from the resource that contains them - they cannot be identified independently, and nor can they have their own independent transaction scope." />
<comment value="This should never be done when the content can be identified properly, as once identification is lost, it is extremely difficult (and context dependent) to restore it again. Contained resources may have profiles and tags In their meta elements, but SHALL NOT have security labels." />
<alias value="inline resources" />
<alias value="anonymous resources" />
<alias value="contained resources" />
<min value="0" />
<max value="*" />
<base>
<path value="DomainResource.contained" />
<min value="0" />
<max value="*" />
</base>
<type>
<code value="Resource" />
</type>
<isModifier value="false" />
<isSummary value="false" />
<mapping>
<identity value="rim" />
<map value="N/A" />
</mapping>
</element>
<element id="DiagnosticReport.extension">
<path value="DiagnosticReport.extension" />
<short value="Additional content defined by implementations" />
<definition value="May be used to represent additional information that is not part of the basic definition of the resource. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension." />
<comment value="There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone." />
<alias value="extensions" />
<alias value="user content" />
<min value="0" />
<max value="*" />
<base>
<path value="DomainResource.extension" />
<min value="0" />
<max value="*" />
</base>
<type>
<code value="Extension" />
</type>
<constraint>
<key value="ele-1" />
<severity value="error" />
<human value="All FHIR elements must have a @value or children" />
<expression value="hasValue() or (children().count() > id.count())" />
<xpath value="@value|f:*|h:div" />
<source value="http://hl7.org/fhir/StructureDefinition/Element" />
</constraint>
<constraint>
<key value="ext-1" />
<severity value="error" />
<human value="Must have either extensions or value[x], not both" />
<expression value="extension.exists() != value.exists()" />
<xpath value="exists(f:extension)!=exists(f:*[starts-with(local-name(.), "value")])" />
<source value="http://hl7.org/fhir/StructureDefinition/Extension" />
</constraint>
<isModifier value="false" />
<isSummary value="false" />
<mapping>
<identity value="rim" />
<map value="N/A" />
</mapping>
</element>
<element id="DiagnosticReport.modifierExtension">
<path value="DiagnosticReport.modifierExtension" />
<short value="Extensions that cannot be ignored" />
<definition value="May be used to represent additional information that is not part of the basic definition of the resource and that modifies the understanding of the element that contains it and/or the understanding of the containing element's descendants. Usually modifier elements provide negation or qualification. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer is allowed to define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions.\n\nModifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself)." />
<comment value="There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone." />
<requirements value="Modifier extensions allow for extensions that *cannot* be safely ignored to be clearly distinguished from the vast majority of extensions which can be safely ignored. This promotes interoperability by eliminating the need for implementers to prohibit the presence of extensions. For further information, see the [definition of modifier extensions](extensibility.html#modifierExtension)." />
<alias value="extensions" />
<alias value="user content" />
<min value="0" />
<max value="*" />
<base>
<path value="DomainResource.modifierExtension" />
<min value="0" />
<max value="*" />
</base>
<type>
<code value="Extension" />
</type>
<constraint>
<key value="ele-1" />
<severity value="error" />
<human value="All FHIR elements must have a @value or children" />
<expression value="hasValue() or (children().count() > id.count())" />
<xpath value="@value|f:*|h:div" />
<source value="http://hl7.org/fhir/StructureDefinition/Element" />
</constraint>
<constraint>
<key value="ext-1" />
<severity value="error" />
<human value="Must have either extensions or value[x], not both" />
<expression value="extension.exists() != value.exists()" />
<xpath value="exists(f:extension)!=exists(f:*[starts-with(local-name(.), "value")])" />
<source value="http://hl7.org/fhir/StructureDefinition/Extension" />
</constraint>
<isModifier value="true" />
<isModifierReason value="Modifier extensions are expected to modify the meaning or interpretation of the resource that contains them" />
<isSummary value="false" />
<mapping>
<identity value="rim" />
<map value="N/A" />
</mapping>
</element>
<element id="DiagnosticReport.identifier">
<path value="DiagnosticReport.identifier" />
<short value="Business identifier for report" />
<definition value="Identifiers assigned to this report by the performer or other systems." />
<comment value="Usually assigned by the Information System of the diagnostic service provider (filler id)." />
<requirements value="Need to know what identifier to use when making queries about this report from the source laboratory, and for linking to the report outside FHIR context." />
<alias value="ReportID" />
<alias value="Filler ID" />
<alias value="Placer ID" />
<min value="0" />
<max value="*" />
<base>
<path value="DiagnosticReport.identifier" />
<min value="0" />
<max value="*" />
</base>
<type>
<code value="Identifier" />
</type>
<constraint>
<key value="ele-1" />
<severity value="error" />
<human value="All FHIR elements must have a @value or children" />
<expression value="hasValue() or (children().count() > id.count())" />
<xpath value="@value|f:*|h:div" />
<source value="http://hl7.org/fhir/StructureDefinition/Element" />
</constraint>
<isModifier value="false" />
<isSummary value="true" />
<mapping>
<identity value="workflow" />
<map value="Event.identifier" />
</mapping>
<mapping>
<identity value="w5" />
<map value="FiveWs.identifier" />
</mapping>
<mapping>
<identity value="v2" />
<map value="OBR-51/ for globally unique filler ID - OBR-3 , For non-globally unique filler-id the flller/placer number must be combined with the universal service Id - OBR-2(if present)+OBR-3+OBR-4" />
</mapping>
<mapping>
<identity value="rim" />
<map value="id" />
</mapping>
</element>
<element id="DiagnosticReport.basedOn">
<path value="DiagnosticReport.basedOn" />
<short value="What was requested" />
<definition value="Details concerning a service requested." />
<comment value="Note: Usually there is one test request for each result, however in some circumstances multiple test requests may be represented using a single test result resource. Note that there are also cases where one request leads to multiple reports." />
<requirements value="This allows tracing of authorization for the report and tracking whether proposals/recommendations were acted upon." />
<alias value="Request" />
<min value="0" />
<max value="*" />
<base>
<path value="DiagnosticReport.basedOn" />
<min value="0" />
<max value="*" />
</base>
<type>
<code value="Reference" />
<targetProfile value="http://hl7.org/fhir/StructureDefinition/CarePlan" />
<targetProfile value="http://hl7.org/fhir/StructureDefinition/ImmunizationRecommendation" />
<targetProfile value="http://fhir.infoway-inforoute.ca/cacore/StructureDefinition/medicationrequest-ca-core" />
<targetProfile value="http://hl7.org/fhir/StructureDefinition/NutritionOrder" />
<targetProfile value="http://fhir.infoway-inforoute.ca/cacore/StructureDefinition/servicerequest-ca-core" />
</type>
<constraint>
<key value="ele-1" />
<severity value="error" />
<human value="All FHIR elements must have a @value or children" />
<expression value="hasValue() or (children().count() > id.count())" />
<xpath value="@value|f:*|h:div" />
<source value="http://hl7.org/fhir/StructureDefinition/Element" />
</constraint>
<isModifier value="false" />
<isSummary value="false" />
<mapping>
<identity value="workflow" />
<map value="Event.basedOn" />
</mapping>
<mapping>
<identity value="v2" />
<map value="ORC? OBR-2/3?" />
</mapping>
<mapping>
<identity value="rim" />
<map value="outboundRelationship[typeCode=FLFS].target" />
</mapping>
</element>
<element id="DiagnosticReport.status">
<path value="DiagnosticReport.status" />
<short value="registered | partial | preliminary | final +" />
<definition value="The status of the diagnostic report." />
<requirements value="Diagnostic services routinely issue provisional/incomplete reports, and sometimes withdraw previously released reports." />
<min value="1" />
<max value="1" />
<base>
<path value="DiagnosticReport.status" />
<min value="1" />
<max value="1" />
</base>
<type>
<code value="code" />
</type>
<constraint>
<key value="ele-1" />
<severity value="error" />
<human value="All FHIR elements must have a @value or children" />
<expression value="hasValue() or (children().count() > id.count())" />
<xpath value="@value|f:*|h:div" />
<source value="http://hl7.org/fhir/StructureDefinition/Element" />
</constraint>
<isModifier value="true" />
<isModifierReason value="This element is labeled as a modifier because it is a status element that contains status entered-in-error which means that the resource should not be treated as valid" />
<isSummary value="true" />
<binding>
<extension url="http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName">
<valueString value="DiagnosticReportStatus" />
</extension>
<strength value="required" />
<description value="The status of the diagnostic report." />
<valueSet value="http://hl7.org/fhir/ValueSet/diagnostic-report-status|4.0.1" />
</binding>
<mapping>
<identity value="workflow" />
<map value="Event.status" />
</mapping>
<mapping>
<identity value="w5" />
<map value="FiveWs.status" />
</mapping>
<mapping>
<identity value="v2" />
<map value="OBR-25 (not 1:1 mapping)" />
</mapping>
<mapping>
<identity value="rim" />
<map value="statusCode Note: final and amended are distinguished by whether observation is the subject of a ControlAct event of type "revise"" />
</mapping>
</element>
<element id="DiagnosticReport.category">
<extension url="http://hl7.org/fhir/StructureDefinition/structuredefinition-standards-status">
<valueCode value="normative" />
</extension>
<extension url="http://hl7.org/fhir/StructureDefinition/structuredefinition-normative-version">
<valueCode value="4.0.0" />
</extension>
<path value="DiagnosticReport.category" />
<short value="Concept - reference to a terminology or just text" />
<definition value="A concept that may be defined by a formal reference to a terminology or ontology or may be provided by text." />
<comment value="Not all terminology uses fit this general pattern. In some cases, models should not use CodeableConcept and use Coding directly and provide their own structure for managing text, codings, translations and the relationship between elements and pre- and post-coordination." />
<alias value="Department" />
<alias value="Sub-department" />
<alias value="Service" />
<alias value="Discipline" />
<min value="0" />
<max value="*" />
<base>
<path value="DiagnosticReport.category" />
<min value="0" />
<max value="*" />
</base>
<type>
<code value="CodeableConcept" />
<profile value="http://fhir.infoway-inforoute.ca/cacore/StructureDefinition/codeableconcept-ca-core" />
</type>
<condition value="ele-1" />
<constraint>
<key value="ele-1" />
<severity value="error" />
<human value="All FHIR elements must have a @value or children" />
<expression value="hasValue() or (children().count() > id.count())" />
<xpath value="@value|f:*|h:div" />
<source value="http://hl7.org/fhir/StructureDefinition/Element" />
</constraint>
<isModifier value="false" />
<isSummary value="true" />
<binding>
<extension url="http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName">
<valueString value="DiagnosticServiceSection" />
</extension>
<strength value="example" />
<description value="Codes for diagnostic service sections." />
<valueSet value="http://hl7.org/fhir/ValueSet/diagnostic-service-sections" />
</binding>
<mapping>
<identity value="w5" />
<map value="FiveWs.class" />
</mapping>
<mapping>
<identity value="v2" />
<map value="OBR-24" />
</mapping>
<mapping>
<identity value="rim" />
<map value="inboundRelationship[typeCode=COMP].source[classCode=LIST, moodCode=EVN, code < LabService].code" />
</mapping>
<mapping>
<identity value="rim" />
<map value="n/a" />
</mapping>
<mapping>
<identity value="v2" />
<map value="CE/CNE/CWE" />
</mapping>
<mapping>
<identity value="rim" />
<map value="CD" />
</mapping>
<mapping>
<identity value="orim" />
<map value="fhir:CodeableConcept rdfs:subClassOf dt:CD" />
</mapping>
</element>
<element id="DiagnosticReport.code">
<extension url="http://hl7.org/fhir/StructureDefinition/structuredefinition-standards-status">
<valueCode value="normative" />
</extension>
<extension url="http://hl7.org/fhir/StructureDefinition/structuredefinition-normative-version">
<valueCode value="4.0.0" />
</extension>
<path value="DiagnosticReport.code" />
<short value="Concept - reference to a terminology or just text" />
<definition value="A concept that may be defined by a formal reference to a terminology or ontology or may be provided by text." />
<comment value="Not all terminology uses fit this general pattern. In some cases, models should not use CodeableConcept and use Coding directly and provide their own structure for managing text, codings, translations and the relationship between elements and pre- and post-coordination." />
<alias value="Type" />
<min value="1" />
<max value="1" />
<base>
<path value="DiagnosticReport.code" />
<min value="1" />
<max value="1" />
</base>
<type>
<code value="CodeableConcept" />
<profile value="http://fhir.infoway-inforoute.ca/cacore/StructureDefinition/codeableconcept-ca-core" />
</type>
<condition value="ele-1" />
<constraint>
<key value="ele-1" />
<severity value="error" />
<human value="All FHIR elements must have a @value or children" />
<expression value="hasValue() or (children().count() > id.count())" />
<xpath value="@value|f:*|h:div" />
<source value="http://hl7.org/fhir/StructureDefinition/Element" />
</constraint>
<isModifier value="false" />
<isSummary value="true" />
<binding>
<extension url="http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName">
<valueString value="DiagnosticReportCodes" />
</extension>
<strength value="preferred" />
<description value="Codes that describe Diagnostic Reports." />
<valueSet value="https://fhir.infoway-inforoute.ca/ValueSet/pCLOCD" />
</binding>
<mapping>
<identity value="workflow" />
<map value="Event.code" />
</mapping>
<mapping>
<identity value="w5" />
<map value="FiveWs.what[x]" />
</mapping>
<mapping>
<identity value="v2" />
<map value="OBR-4 (HL7 v2 doesn't provide an easy way to indicate both the ordered test and the performed panel)" />
</mapping>
<mapping>
<identity value="rim" />
<map value="code" />
</mapping>
<mapping>
<identity value="rim" />
<map value="n/a" />
</mapping>
<mapping>
<identity value="v2" />
<map value="CE/CNE/CWE" />
</mapping>
<mapping>
<identity value="rim" />
<map value="CD" />
</mapping>
<mapping>
<identity value="orim" />
<map value="fhir:CodeableConcept rdfs:subClassOf dt:CD" />
</mapping>
</element>
<element id="DiagnosticReport.subject">
<extension url="http://hl7.org/fhir/StructureDefinition/obligation">
<extension url="code">
<valueCode value="SHALL:populate-if-known" />
</extension>
<extension url="actor">
<valueCanonical value="http://fhir.infoway-inforoute.ca/ca-core/ActorDefinition/producer" />
</extension>
</extension>
<extension url="http://hl7.org/fhir/StructureDefinition/obligation">
<extension url="code">
<valueCode value="SHALL:no-error" />
</extension>
<extension url="actor">
<valueCanonical value="http://fhir.infoway-inforoute.ca/ca-core/ActorDefinition/consumer" />
</extension>
</extension>
<path value="DiagnosticReport.subject" />
<short value="The subject of the report - usually, but not always, the patient" />
<definition value="The subject of the report. Usually, but not always, this is a patient. However, diagnostic services also perform analyses on specimens collected from a variety of other sources." />
<requirements value="SHALL know the subject context." />
<alias value="Patient" />
<min value="0" />
<max value="1" />
<base>
<path value="DiagnosticReport.subject" />
<min value="0" />
<max value="1" />
</base>
<type>
<code value="Reference" />
<targetProfile value="http://fhir.infoway-inforoute.ca/cacore/StructureDefinition/patient-ca-core" />
<targetProfile value="http://hl7.org/fhir/StructureDefinition/Group" />
<targetProfile value="http://hl7.org/fhir/StructureDefinition/Device" />
<targetProfile value="http://fhir.infoway-inforoute.ca/cacore/StructureDefinition/location-ca-core" />
</type>
<constraint>
<key value="ele-1" />
<severity value="error" />
<human value="All FHIR elements must have a @value or children" />
<expression value="hasValue() or (children().count() > id.count())" />
<xpath value="@value|f:*|h:div" />
<source value="http://hl7.org/fhir/StructureDefinition/Element" />
</constraint>
<mustSupport value="true" />
<isModifier value="false" />
<isSummary value="true" />
<mapping>
<identity value="workflow" />
<map value="Event.subject" />
</mapping>
<mapping>
<identity value="w5" />
<map value="FiveWs.subject[x]" />
</mapping>
<mapping>
<identity value="v2" />
<map value="PID-3 (no HL7 v2 mapping for Group or Device)" />
</mapping>
<mapping>
<identity value="rim" />
<map value="participation[typeCode=SBJ]" />
</mapping>
<mapping>
<identity value="w5" />
<map value="FiveWs.subject" />
</mapping>
<mapping>
<identity value="CACDI" />
<map value="Patient" />
</mapping>
</element>
<element id="DiagnosticReport.encounter">
<path value="DiagnosticReport.encounter" />
<short value="Health care event when test ordered" />
<definition value="The healthcare event (e.g. a patient and healthcare provider interaction) which this DiagnosticReport is about." />
<comment value="This will typically be the encounter the event occurred within, but some events may be initiated prior to or after the official completion of an encounter but still be tied to the context of the encounter (e.g. pre-admission laboratory tests)." />
<requirements value="Links the request to the Encounter context." />
<alias value="Context" />
<min value="0" />
<max value="1" />
<base>
<path value="DiagnosticReport.encounter" />
<min value="0" />
<max value="1" />
</base>
<type>
<code value="Reference" />
<targetProfile value="http://fhir.infoway-inforoute.ca/cacore/StructureDefinition/encounter-ca-core" />
</type>
<constraint>
<key value="ele-1" />
<severity value="error" />
<human value="All FHIR elements must have a @value or children" />
<expression value="hasValue() or (children().count() > id.count())" />
<xpath value="@value|f:*|h:div" />
<source value="http://hl7.org/fhir/StructureDefinition/Element" />
</constraint>
<isModifier value="false" />
<isSummary value="true" />
<mapping>
<identity value="workflow" />
<map value="Event.encounter" />
</mapping>
<mapping>
<identity value="w5" />
<map value="FiveWs.context" />
</mapping>
<mapping>
<identity value="v2" />
<map value="PV1-19" />
</mapping>
<mapping>
<identity value="rim" />
<map value="inboundRelationship[typeCode=COMP].source[classCode=ENC, moodCode=EVN]" />
</mapping>
</element>
<element id="DiagnosticReport.effective[x]">
<path value="DiagnosticReport.effective[x]" />
<short value="Clinically relevant time/time-period for report" />
<definition value="The time or time-period the observed values are related to. When the subject of the report is a patient, this is usually either the time of the procedure or of specimen collection(s), but very often the source of the date/time is not known, only the date/time itself." />
<comment value="If the diagnostic procedure was performed on the patient, this is the time it was performed. If there are specimens, the diagnostically relevant time can be derived from the specimen collection times, but the specimen information is not always available, and the exact relationship between the specimens and the diagnostically relevant time is not always automatic." />
<requirements value="Need to know where in the patient history to file/present this report." />
<alias value="Observation time" />
<alias value="Effective Time" />
<alias value="Occurrence" />
<min value="0" />
<max value="1" />
<base>
<path value="DiagnosticReport.effective[x]" />
<min value="0" />
<max value="1" />
</base>
<type>
<code value="dateTime" />
</type>
<type>
<code value="Period" />
</type>
<constraint>
<key value="ele-1" />
<severity value="error" />
<human value="All FHIR elements must have a @value or children" />
<expression value="hasValue() or (children().count() > id.count())" />
<xpath value="@value|f:*|h:div" />
<source value="http://hl7.org/fhir/StructureDefinition/Element" />
</constraint>
<isModifier value="false" />
<isSummary value="true" />
<mapping>
<identity value="workflow" />
<map value="Event.occurrence[x]" />
</mapping>
<mapping>
<identity value="w5" />
<map value="FiveWs.done[x]" />
</mapping>
<mapping>
<identity value="v2" />
<map value="OBR-7" />
</mapping>
<mapping>
<identity value="rim" />
<map value="effectiveTime" />
</mapping>
</element>
<element id="DiagnosticReport.issued">
<path value="DiagnosticReport.issued" />
<short value="DateTime this version was made" />
<definition value="The date and time that this version of the report was made available to providers, typically after the report was reviewed and verified." />
<comment value="May be different from the update time of the resource itself, because that is the status of the record (potentially a secondary copy), not the actual release time of the report." />
<requirements value="Clinicians need to be able to check the date that the report was released." />
<alias value="Date published" />
<alias value="Date Issued" />
<alias value="Date Verified" />
<min value="0" />
<max value="1" />
<base>
<path value="DiagnosticReport.issued" />
<min value="0" />
<max value="1" />
</base>
<type>
<code value="instant" />
</type>
<constraint>
<key value="ele-1" />
<severity value="error" />
<human value="All FHIR elements must have a @value or children" />
<expression value="hasValue() or (children().count() > id.count())" />
<xpath value="@value|f:*|h:div" />
<source value="http://hl7.org/fhir/StructureDefinition/Element" />
</constraint>
<isModifier value="false" />
<isSummary value="true" />
<mapping>
<identity value="w5" />
<map value="FiveWs.recorded" />
</mapping>
<mapping>
<identity value="v2" />
<map value="OBR-22" />
</mapping>
<mapping>
<identity value="rim" />
<map value="participation[typeCode=VRF or AUT].time" />
</mapping>
</element>
<element id="DiagnosticReport.performer">
<path value="DiagnosticReport.performer" />
<short value="Responsible Diagnostic Service" />
<definition value="The diagnostic service that is responsible for issuing the report." />
<comment value="This is not necessarily the source of the atomic data items or the entity that interpreted the results. It is the entity that takes responsibility for the clinical report." />
<requirements value="Need to know whom to contact if there are queries about the results. Also may need to track the source of reports for secondary data analysis." />
<alias value="Laboratory" />
<alias value="Service" />
<alias value="Practitioner" />
<alias value="Department" />
<alias value="Company" />
<alias value="Authorized by" />
<alias value="Director" />
<min value="0" />
<max value="*" />
<base>
<path value="DiagnosticReport.performer" />
<min value="0" />
<max value="*" />
</base>
<type>
<code value="Reference" />
<targetProfile value="http://fhir.infoway-inforoute.ca/cacore/StructureDefinition/practitioner-ca-core" />
<targetProfile value="http://fhir.infoway-inforoute.ca/cacore/StructureDefinition/practitionerRole-ca-core" />
<targetProfile value="http://fhir.infoway-inforoute.ca/cacore/StructureDefinition/organization-ca-core" />
<targetProfile value="http://hl7.org/fhir/StructureDefinition/CareTeam" />
</type>
<constraint>
<key value="ele-1" />
<severity value="error" />
<human value="All FHIR elements must have a @value or children" />
<expression value="hasValue() or (children().count() > id.count())" />
<xpath value="@value|f:*|h:div" />
<source value="http://hl7.org/fhir/StructureDefinition/Element" />
</constraint>
<isModifier value="false" />
<isSummary value="true" />
<mapping>
<identity value="workflow" />
<map value="Event.performer.actor" />
</mapping>
<mapping>
<identity value="w5" />
<map value="FiveWs.actor" />
</mapping>
<mapping>
<identity value="v2" />
<map value="PRT-8 (where this PRT-4-Participation = "PO")" />
</mapping>
<mapping>
<identity value="rim" />
<map value=".participation[typeCode=PRF]" />
</mapping>
</element>
<element id="DiagnosticReport.resultsInterpreter">
<path value="DiagnosticReport.resultsInterpreter" />
<short value="Primary result interpreter" />
<definition value="The practitioner or organization that is responsible for the report's conclusions and interpretations." />
<comment value="Might not be the same entity that takes responsibility for the clinical report." />
<requirements value="Need to know whom to contact if there are queries about the results. Also may need to track the source of reports for secondary data analysis." />
<alias value="Analyzed by" />
<alias value="Reported by" />
<min value="0" />
<max value="*" />
<base>
<path value="DiagnosticReport.resultsInterpreter" />
<min value="0" />
<max value="*" />
</base>
<type>
<code value="Reference" />
<targetProfile value="http://fhir.infoway-inforoute.ca/cacore/StructureDefinition/practitioner-ca-core" />
<targetProfile value="http://fhir.infoway-inforoute.ca/cacore/StructureDefinition/practitionerRole-ca-core" />
<targetProfile value="http://fhir.infoway-inforoute.ca/cacore/StructureDefinition/organization-ca-core" />
<targetProfile value="http://hl7.org/fhir/StructureDefinition/CareTeam" />
</type>
<constraint>
<key value="ele-1" />
<severity value="error" />
<human value="All FHIR elements must have a @value or children" />
<expression value="hasValue() or (children().count() > id.count())" />
<xpath value="@value|f:*|h:div" />
<source value="http://hl7.org/fhir/StructureDefinition/Element" />
</constraint>
<isModifier value="false" />
<isSummary value="true" />
<mapping>
<identity value="workflow" />
<map value="Event.performer.actor" />
</mapping>
<mapping>
<identity value="w5" />
<map value="FiveWs.actor" />
</mapping>
<mapping>
<identity value="v2" />
<map value="OBR-32, PRT-8 (where this PRT-4-Participation = "PI")" />
</mapping>
<mapping>
<identity value="rim" />
<map value=".participation[typeCode=PRF]" />
</mapping>
</element>
<element id="DiagnosticReport.specimen">
<path value="DiagnosticReport.specimen" />
<short value="Specimens this report is based on" />
<definition value="Details about the specimens on which this diagnostic report is based." />
<comment value="If the specimen is sufficiently specified with a code in the test result name, then this additional data may be redundant. If there are multiple specimens, these may be represented per observation or group." />
<requirements value="Need to be able to report information about the collected specimens on which the report is based." />
<min value="0" />
<max value="*" />
<base>
<path value="DiagnosticReport.specimen" />
<min value="0" />
<max value="*" />
</base>
<type>
<code value="Reference" />
<targetProfile value="http://hl7.org/fhir/StructureDefinition/Specimen" />
</type>
<constraint>
<key value="ele-1" />
<severity value="error" />
<human value="All FHIR elements must have a @value or children" />
<expression value="hasValue() or (children().count() > id.count())" />
<xpath value="@value|f:*|h:div" />
<source value="http://hl7.org/fhir/StructureDefinition/Element" />
</constraint>
<isModifier value="false" />
<isSummary value="false" />
<mapping>
<identity value="v2" />
<map value="SPM" />
</mapping>
<mapping>
<identity value="rim" />
<map value="participation[typeCode=SBJ]" />
</mapping>
</element>
<element id="DiagnosticReport.result">
<extension url="http://hl7.org/fhir/StructureDefinition/obligation">
<extension url="code">
<valueCode value="SHALL:populate-if-known" />
</extension>
<extension url="actor">
<valueCanonical value="http://fhir.infoway-inforoute.ca/ca-core/ActorDefinition/producer" />
</extension>
</extension>
<extension url="http://hl7.org/fhir/StructureDefinition/obligation">
<extension url="code">
<valueCode value="SHALL:no-error" />
</extension>
<extension url="actor">
<valueCanonical value="http://fhir.infoway-inforoute.ca/ca-core/ActorDefinition/consumer" />
</extension>
</extension>
<path value="DiagnosticReport.result" />
<short value="Observations" />
<definition value="[Observations](observation.html) that are part of this diagnostic report." />
<comment value="Observations can contain observations." />
<requirements value="Need to support individual results, or groups of results, where the result grouping is arbitrary, but meaningful." />
<alias value="Data" />
<alias value="Atomic Value" />
<alias value="Result" />
<alias value="Atomic result" />
<alias value="Data" />
<alias value="Test" />
<alias value="Analyte" />
<alias value="Battery" />
<alias value="Organizer" />
<min value="0" />
<max value="*" />
<base>
<path value="DiagnosticReport.result" />
<min value="0" />
<max value="*" />
</base>
<type>
<code value="Reference" />
<targetProfile value="http://hl7.org/fhir/StructureDefinition/Observation" />
</type>
<constraint>
<key value="ele-1" />
<severity value="error" />
<human value="All FHIR elements must have a @value or children" />
<expression value="hasValue() or (children().count() > id.count())" />
<xpath value="@value|f:*|h:div" />
<source value="http://hl7.org/fhir/StructureDefinition/Element" />
</constraint>
<mustSupport value="true" />
<isModifier value="false" />
<isSummary value="false" />
<mapping>
<identity value="v2" />
<map value="OBXs" />
</mapping>
<mapping>
<identity value="rim" />
<map value="outboundRelationship[typeCode=COMP].target" />
</mapping>
</element>
<element id="DiagnosticReport.imagingStudy">
<path value="DiagnosticReport.imagingStudy" />
<short value="Reference to full details of imaging associated with the diagnostic report" />
<definition value="One or more links to full details of any imaging performed during the diagnostic investigation. Typically, this is imaging performed by DICOM enabled modalities, but this is not required. A fully enabled PACS viewer can use this information to provide views of the source images." />
<comment value="ImagingStudy and the image element are somewhat overlapping - typically, the list of image references in the image element will also be found in one of the imaging study resources. However, each caters to different types of displays for different types of purposes. Neither, either, or both may be provided." />
<min value="0" />
<max value="*" />
<base>
<path value="DiagnosticReport.imagingStudy" />
<min value="0" />
<max value="*" />
</base>
<type>
<code value="Reference" />
<targetProfile value="http://hl7.org/fhir/StructureDefinition/ImagingStudy" />
</type>
<constraint>
<key value="ele-1" />
<severity value="error" />
<human value="All FHIR elements must have a @value or children" />
<expression value="hasValue() or (children().count() > id.count())" />
<xpath value="@value|f:*|h:div" />
<source value="http://hl7.org/fhir/StructureDefinition/Element" />
</constraint>
<isModifier value="false" />
<isSummary value="false" />
<mapping>
<identity value="rim" />
<map value="outboundRelationship[typeCode=COMP].target[classsCode=DGIMG, moodCode=EVN]" />
</mapping>
</element>
<element id="DiagnosticReport.media">
<path value="DiagnosticReport.media" />
<short value="Key images associated with this report" />
<definition value="A list of key images associated with this report. The images are generally created during the diagnostic process, and may be directly of the patient, or of treated specimens (i.e. slides of interest)." />
<requirements value="Many diagnostic services include images in the report as part of their service." />
<alias value="DICOM" />
<alias value="Slides" />
<alias value="Scans" />
<min value="0" />
<max value="*" />
<base>
<path value="DiagnosticReport.media" />
<min value="0" />
<max value="*" />
</base>
<type>
<code value="BackboneElement" />
</type>
<constraint>
<key value="ele-1" />
<severity value="error" />
<human value="All FHIR elements must have a @value or children" />
<expression value="hasValue() or (children().count() > id.count())" />
<xpath value="@value|f:*|h:div" />
<source value="http://hl7.org/fhir/StructureDefinition/Element" />
</constraint>
<isModifier value="false" />
<isSummary value="true" />
<mapping>
<identity value="v2" />
<map value="OBX?" />
</mapping>
<mapping>
<identity value="rim" />
<map value="outboundRelationship[typeCode=COMP].target" />
</mapping>
</element>
<element id="DiagnosticReport.media.id">
<path value="DiagnosticReport.media.id" />
<representation value="xmlAttr" />
<short value="Unique id for inter-element referencing" />
<definition value="Unique id for the element within a resource (for internal references). This may be any string value that does not contain spaces." />
<min value="0" />
<max value="1" />
<base>
<path value="Element.id" />
<min value="0" />
<max value="1" />
</base>
<type>
<extension url="http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type">
<valueUrl value="string" />
</extension>
<code value="http://hl7.org/fhirpath/System.String" />
</type>
<isModifier value="false" />
<isSummary value="false" />
<mapping>
<identity value="rim" />
<map value="n/a" />
</mapping>
</element>
<element id="DiagnosticReport.media.extension">
<path value="DiagnosticReport.media.extension" />
<short value="Additional content defined by implementations" />
<definition value="May be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension." />
<comment value="There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone." />
<alias value="extensions" />
<alias value="user content" />
<min value="0" />
<max value="*" />
<base>
<path value="Element.extension" />
<min value="0" />
<max value="*" />
</base>
<type>
<code value="Extension" />
</type>
<constraint>
<key value="ele-1" />
<severity value="error" />
<human value="All FHIR elements must have a @value or children" />
<expression value="hasValue() or (children().count() > id.count())" />
<xpath value="@value|f:*|h:div" />
<source value="http://hl7.org/fhir/StructureDefinition/Element" />
</constraint>
<constraint>
<key value="ext-1" />
<severity value="error" />
<human value="Must have either extensions or value[x], not both" />
<expression value="extension.exists() != value.exists()" />
<xpath value="exists(f:extension)!=exists(f:*[starts-with(local-name(.), "value")])" />
<source value="http://hl7.org/fhir/StructureDefinition/Extension" />
</constraint>
<isModifier value="false" />
<isSummary value="false" />
<mapping>
<identity value="rim" />
<map value="n/a" />
</mapping>
</element>
<element id="DiagnosticReport.media.modifierExtension">
<path value="DiagnosticReport.media.modifierExtension" />
<short value="Extensions that cannot be ignored even if unrecognized" />
<definition value="May be used to represent additional information that is not part of the basic definition of the element and that modifies the understanding of the element in which it is contained and/or the understanding of the containing element's descendants. Usually modifier elements provide negation or qualification. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions.\n\nModifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself)." />
<comment value="There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone." />
<requirements value="Modifier extensions allow for extensions that *cannot* be safely ignored to be clearly distinguished from the vast majority of extensions which can be safely ignored. This promotes interoperability by eliminating the need for implementers to prohibit the presence of extensions. For further information, see the [definition of modifier extensions](extensibility.html#modifierExtension)." />
<alias value="extensions" />
<alias value="user content" />
<alias value="modifiers" />
<min value="0" />
<max value="*" />
<base>
<path value="BackboneElement.modifierExtension" />
<min value="0" />
<max value="*" />
</base>
<type>
<code value="Extension" />
</type>
<constraint>
<key value="ele-1" />
<severity value="error" />
<human value="All FHIR elements must have a @value or children" />
<expression value="hasValue() or (children().count() > id.count())" />
<xpath value="@value|f:*|h:div" />
<source value="http://hl7.org/fhir/StructureDefinition/Element" />
</constraint>
<constraint>
<key value="ext-1" />
<severity value="error" />
<human value="Must have either extensions or value[x], not both" />
<expression value="extension.exists() != value.exists()" />
<xpath value="exists(f:extension)!=exists(f:*[starts-with(local-name(.), "value")])" />
<source value="http://hl7.org/fhir/StructureDefinition/Extension" />
</constraint>
<isModifier value="true" />
<isModifierReason value="Modifier extensions are expected to modify the meaning or interpretation of the element that contains them" />
<isSummary value="true" />
<mapping>
<identity value="rim" />
<map value="N/A" />
</mapping>
</element>
<element id="DiagnosticReport.media.comment">
<path value="DiagnosticReport.media.comment" />
<short value="Comment about the image (e.g. explanation)" />
<definition value="A comment about the image. Typically, this is used to provide an explanation for why the image is included, or to draw the viewer's attention to important features." />
<comment value="The comment should be displayed with the image. It would be common for the report to include additional discussion of the image contents in other sections such as the conclusion." />
<requirements value="The provider of the report should make a comment about each image included in the report." />
<min value="0" />
<max value="1" />
<base>
<path value="DiagnosticReport.media.comment" />
<min value="0" />
<max value="1" />
</base>
<type>
<code value="string" />
</type>
<constraint>
<key value="ele-1" />
<severity value="error" />
<human value="All FHIR elements must have a @value or children" />
<expression value="hasValue() or (children().count() > id.count())" />
<xpath value="@value|f:*|h:div" />
<source value="http://hl7.org/fhir/StructureDefinition/Element" />
</constraint>
<isModifier value="false" />
<isSummary value="false" />
<mapping>
<identity value="rim" />
<map value=".inboundRelationship[typeCode=COMP].source[classCode=OBS, moodCode=EVN, code="annotation"].value" />
</mapping>
</element>
<element id="DiagnosticReport.media.link">
<path value="DiagnosticReport.media.link" />
<short value="Reference to the image source" />
<definition value="Reference to the image source." />
<min value="1" />
<max value="1" />
<base>
<path value="DiagnosticReport.media.link" />
<min value="1" />
<max value="1" />
</base>
<type>
<code value="Reference" />
<targetProfile value="http://hl7.org/fhir/StructureDefinition/Media" />
</type>
<constraint>
<key value="ele-1" />
<severity value="error" />
<human value="All FHIR elements must have a @value or children" />
<expression value="hasValue() or (children().count() > id.count())" />
<xpath value="@value|f:*|h:div" />
<source value="http://hl7.org/fhir/StructureDefinition/Element" />
</constraint>
<isModifier value="false" />
<isSummary value="true" />
<mapping>
<identity value="rim" />
<map value=".value.reference" />
</mapping>
</element>
<element id="DiagnosticReport.conclusion">
<path value="DiagnosticReport.conclusion" />
<short value="Clinical conclusion (interpretation) of test results" />
<definition value="Concise and clinically contextualized summary conclusion (interpretation/impression) of the diagnostic report." />
<requirements value="Need to be able to provide a conclusion that is not lost among the basic result data." />
<alias value="Report" />
<min value="0" />
<max value="1" />
<base>
<path value="DiagnosticReport.conclusion" />
<min value="0" />
<max value="1" />
</base>
<type>
<code value="string" />
</type>
<constraint>
<key value="ele-1" />
<severity value="error" />
<human value="All FHIR elements must have a @value or children" />
<expression value="hasValue() or (children().count() > id.count())" />
<xpath value="@value|f:*|h:div" />
<source value="http://hl7.org/fhir/StructureDefinition/Element" />
</constraint>
<isModifier value="false" />
<isSummary value="false" />
<mapping>
<identity value="v2" />
<map value="OBX" />
</mapping>
<mapping>
<identity value="rim" />
<map value="inboundRelationship[typeCode="SPRT"].source[classCode=OBS, moodCode=EVN, code=LOINC:48767-8].value (type=ST)" />
</mapping>
</element>
<element id="DiagnosticReport.conclusionCode">
<path value="DiagnosticReport.conclusionCode" />
<short value="Codes for the clinical conclusion of test results" />
<definition value="One or more codes that represent the summary conclusion (interpretation/impression) of the diagnostic report." />
<min value="0" />
<max value="*" />
<base>
<path value="DiagnosticReport.conclusionCode" />
<min value="0" />
<max value="*" />
</base>
<type>
<code value="CodeableConcept" />
</type>
<constraint>
<key value="ele-1" />
<severity value="error" />
<human value="All FHIR elements must have a @value or children" />
<expression value="hasValue() or (children().count() > id.count())" />
<xpath value="@value|f:*|h:div" />
<source value="http://hl7.org/fhir/StructureDefinition/Element" />
</constraint>
<isModifier value="false" />
<isSummary value="false" />
<binding>
<extension url="http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName">
<valueString value="AdjunctDiagnosis" />
</extension>
<strength value="example" />
<description value="Diagnosis codes provided as adjuncts to the report." />
<valueSet value="http://hl7.org/fhir/ValueSet/clinical-findings" />
</binding>
<mapping>
<identity value="v2" />
<map value="OBX" />
</mapping>
<mapping>
<identity value="rim" />
<map value="inboundRelationship[typeCode=SPRT].source[classCode=OBS, moodCode=EVN, code=LOINC:54531-9].value (type=CD)" />
</mapping>
</element>
<element id="DiagnosticReport.presentedForm">
<path value="DiagnosticReport.presentedForm" />
<short value="Entire report as issued" />
<definition value="Rich text representation of the entire result as issued by the diagnostic service. Multiple formats are allowed but they SHALL be semantically equivalent." />
<comment value=""application/pdf" is recommended as the most reliable and interoperable in this context." />
<requirements value="Gives laboratory the ability to provide its own fully formatted report for clinical fidelity." />
<min value="0" />
<max value="*" />
<base>
<path value="DiagnosticReport.presentedForm" />
<min value="0" />
<max value="*" />
</base>
<type>
<code value="Attachment" />
</type>
<constraint>
<key value="ele-1" />
<severity value="error" />
<human value="All FHIR elements must have a @value or children" />
<expression value="hasValue() or (children().count() > id.count())" />
<xpath value="@value|f:*|h:div" />
<source value="http://hl7.org/fhir/StructureDefinition/Element" />
</constraint>
<isModifier value="false" />
<isSummary value="false" />
<mapping>
<identity value="v2" />
<map value="OBX" />
</mapping>
<mapping>
<identity value="rim" />
<map value="text (type=ED)" />
</mapping>
</element>
</snapshot>
<differential>
<element id="DiagnosticReport.basedOn">
<path value="DiagnosticReport.basedOn" />
<type>
<code value="Reference" />
<targetProfile value="http://hl7.org/fhir/StructureDefinition/CarePlan" />
<targetProfile value="http://hl7.org/fhir/StructureDefinition/ImmunizationRecommendation" />
<targetProfile value="http://fhir.infoway-inforoute.ca/cacore/StructureDefinition/medicationrequest-ca-core" />
<targetProfile value="http://hl7.org/fhir/StructureDefinition/NutritionOrder" />
<targetProfile value="http://fhir.infoway-inforoute.ca/cacore/StructureDefinition/servicerequest-ca-core" />
</type>
</element>
<element id="DiagnosticReport.category">
<path value="DiagnosticReport.category" />
<type>
<code value="CodeableConcept" />
<profile value="http://fhir.infoway-inforoute.ca/cacore/StructureDefinition/codeableconcept-ca-core" />
</type>
</element>
<element id="DiagnosticReport.code">
<path value="DiagnosticReport.code" />
<type>
<code value="CodeableConcept" />
<profile value="http://fhir.infoway-inforoute.ca/cacore/StructureDefinition/codeableconcept-ca-core" />
</type>
<binding>
<strength value="preferred" />
<valueSet value="https://fhir.infoway-inforoute.ca/ValueSet/pCLOCD" />
</binding>
</element>
<element id="DiagnosticReport.subject">
<extension url="http://hl7.org/fhir/StructureDefinition/obligation">
<extension url="code">
<valueCode value="SHALL:populate-if-known" />
</extension>
<extension url="actor">
<valueCanonical value="http://fhir.infoway-inforoute.ca/ca-core/ActorDefinition/producer" />
</extension>
</extension>
<extension url="http://hl7.org/fhir/StructureDefinition/obligation">
<extension url="code">
<valueCode value="SHALL:no-error" />
</extension>
<extension url="actor">
<valueCanonical value="http://fhir.infoway-inforoute.ca/ca-core/ActorDefinition/consumer" />
</extension>
</extension>
<path value="DiagnosticReport.subject" />
<type>
<code value="Reference" />
<targetProfile value="http://fhir.infoway-inforoute.ca/cacore/StructureDefinition/patient-ca-core" />
<targetProfile value="http://hl7.org/fhir/StructureDefinition/Group" />
<targetProfile value="http://hl7.org/fhir/StructureDefinition/Device" />
<targetProfile value="http://fhir.infoway-inforoute.ca/cacore/StructureDefinition/location-ca-core" />
</type>
<mustSupport value="true" />
<mapping>
<identity value="CACDI" />
<map value="Patient" />
</mapping>
</element>
<element id="DiagnosticReport.encounter">
<path value="DiagnosticReport.encounter" />
<type>
<code value="Reference" />
<targetProfile value="http://fhir.infoway-inforoute.ca/cacore/StructureDefinition/encounter-ca-core" />
</type>
</element>
<element id="DiagnosticReport.performer">
<path value="DiagnosticReport.performer" />
<type>
<code value="Reference" />
<targetProfile value="http://fhir.infoway-inforoute.ca/cacore/StructureDefinition/practitioner-ca-core" />
<targetProfile value="http://fhir.infoway-inforoute.ca/cacore/StructureDefinition/practitionerRole-ca-core" />
<targetProfile value="http://fhir.infoway-inforoute.ca/cacore/StructureDefinition/organization-ca-core" />
<targetProfile value="http://hl7.org/fhir/StructureDefinition/CareTeam" />
</type>
</element>
<element id="DiagnosticReport.resultsInterpreter">
<path value="DiagnosticReport.resultsInterpreter" />
<type>
<code value="Reference" />
<targetProfile value="http://fhir.infoway-inforoute.ca/cacore/StructureDefinition/practitioner-ca-core" />
<targetProfile value="http://fhir.infoway-inforoute.ca/cacore/StructureDefinition/practitionerRole-ca-core" />
<targetProfile value="http://fhir.infoway-inforoute.ca/cacore/StructureDefinition/organization-ca-core" />
<targetProfile value="http://hl7.org/fhir/StructureDefinition/CareTeam" />
</type>
</element>
<element id="DiagnosticReport.result">
<extension url="http://hl7.org/fhir/StructureDefinition/obligation">
<extension url="code">
<valueCode value="SHALL:populate-if-known" />
</extension>
<extension url="actor">
<valueCanonical value="http://fhir.infoway-inforoute.ca/ca-core/ActorDefinition/producer" />
</extension>
</extension>
<extension url="http://hl7.org/fhir/StructureDefinition/obligation">
<extension url="code">
<valueCode value="SHALL:no-error" />
</extension>
<extension url="actor">
<valueCanonical value="http://fhir.infoway-inforoute.ca/ca-core/ActorDefinition/consumer" />
</extension>
</extension>
<path value="DiagnosticReport.result" />
<mustSupport value="true" />
</element>
</differential>
</StructureDefinition>
{
"resourceType": "StructureDefinition",
"id": "diagnosticreport-ca-core",
"extension": [
{
"url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fmm",
"valueInteger": 2
}
],
"url": "http://fhir.infoway-inforoute.ca/cacore/StructureDefinition/diagnosticreport-ca-core",
"version": "1.1.0",
"name": "DiagnosticReportCACore",
"title": "DiagnosticReport (CA-Core)",
"status": "active",
"experimental": false,
"date": "2025-03-06",
"publisher": "Canada Health Infoway",
"contact": [
{
"name": "National Standards Release Centre",
"telecom": [
{
"system": "url",
"value": "http://www.infoway-inforoute.ca"
},
{
"system": "email",
"value": "standards@infoway-inforoute.ca"
}
]
}
],
"description": "This profile applies constraints to the DiagnosticReport resource for CA Core+ to support diagnostic summaries such as lab and imaging reports in the pan-Canadian context.",
"jurisdiction": [
{
"coding": [
{
"system": "urn:iso:std:iso:3166",
"code": "CA"
}
]
}
],
"copyright": "Copyright © 2025+ Canada Health Infoway. All rights reserved. [Terms of Use and License Agreements](https://ic.infoway-inforoute.ca/en/about/tou). [Privacy Policy](https://www.infoway-inforoute.ca/en/legal/privacy-policy).",
"fhirVersion": "4.0.1",
"mapping": [
{
"identity": "CACDI",
"name": "Canadian Core Data for Interoperability (CACDI)",
"comment": "Mapping for DiagnosticReportCACore to Canadian Core Data for Interoperability (CACDI)."
}
],
"kind": "resource",
"abstract": false,
"type": "DiagnosticReport",
"baseDefinition": "http://hl7.org/fhir/StructureDefinition/DiagnosticReport",
"derivation": "constraint",
"snapshot": {
"element": [
{
"id": "DiagnosticReport",
"path": "DiagnosticReport",
"short": "A Diagnostic report - a combination of request information, atomic results, images, interpretation, as well as formatted reports",
"definition": "The findings and interpretation of diagnostic tests performed on patients, groups of patients, devices, and locations, and/or specimens derived from these. The report includes clinical context such as requesting and provider information, and some mix of atomic results, images, textual and coded interpretations, and formatted representation of diagnostic reports.",
"comment": "This is intended to capture a single report and is not suitable for use in displaying summary information that covers multiple reports. For example, this resource has not been designed for laboratory cumulative reporting formats nor detailed structured reports for sequencing.",
"alias": [
"Report",
"Test",
"Result",
"Results",
"Labs",
"Laboratory"
],
"min": 0,
"max": "*",
"base": {
"path": "DiagnosticReport",
"min": 0,
"max": "*"
},
"constraint": [
{
"key": "dom-2",
"severity": "error",
"human": "If the resource is contained in another resource, it SHALL NOT contain nested Resources",
"expression": "contained.contained.empty()",
"xpath": "not(parent::f:contained and f:contained)",
"source": "http://hl7.org/fhir/StructureDefinition/DomainResource"
},
{
"key": "dom-3",
"severity": "error",
"human": "If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource",
"expression": "contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty()",
"xpath": "not(exists(for $id in f:contained/*/f:id/@value return $contained[not(parent::*/descendant::f:reference/@value=concat('#', $contained/*/id/@value) or descendant::f:reference[@value='#'])]))",
"source": "http://hl7.org/fhir/StructureDefinition/DomainResource"
},
{
"key": "dom-4",
"severity": "error",
"human": "If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated",
"expression": "contained.meta.versionId.empty() and contained.meta.lastUpdated.empty()",
"xpath": "not(exists(f:contained/*/f:meta/f:versionId)) and not(exists(f:contained/*/f:meta/f:lastUpdated))",
"source": "http://hl7.org/fhir/StructureDefinition/DomainResource"
},
{
"key": "dom-5",
"severity": "error",
"human": "If a resource is contained in another resource, it SHALL NOT have a security label",
"expression": "contained.meta.security.empty()",
"xpath": "not(exists(f:contained/*/f:meta/f:security))",
"source": "http://hl7.org/fhir/StructureDefinition/DomainResource"
},
{
"extension": [
{
"url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bestpractice",
"valueBoolean": true
},
{
"url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bestpractice-explanation",
"valueMarkdown": "When a resource has no narrative, only systems that fully understand the data can display the resource to a human safely. Including a human readable representation in the resource makes for a much more robust eco-system and cheaper handling of resources by intermediary systems. Some ecosystems restrict distribution of resources to only those systems that do fully understand the resources, and as a consequence implementers may believe that the narrative is superfluous. However experience shows that such eco-systems often open up to new participants over time."
}
],
"key": "dom-6",
"severity": "warning",
"human": "A resource should have narrative for robust management",
"expression": "text.`div`.exists()",
"xpath": "exists(f:text/h:div)",
"source": "http://hl7.org/fhir/StructureDefinition/DomainResource"
}
],
"isModifier": false,
"isSummary": false,
"mapping": [
{
"identity": "rim",
"map": "Entity. Role, or Act"
},
{
"identity": "workflow",
"map": "Event"
},
{
"identity": "v2",
"map": "ORU -> OBR"
},
{
"identity": "rim",
"map": "Observation[classCode=OBS, moodCode=EVN]"
}
]
},
{
"id": "DiagnosticReport.id",
"path": "DiagnosticReport.id",
"short": "Logical id of this artifact",
"definition": "The logical id of the resource, as used in the URL for the resource. Once assigned, this value never changes.",
"comment": "The only time that a resource does not have an id is when it is being submitted to the server using a create operation.",
"min": 0,
"max": "1",
"base": {
"path": "Resource.id",
"min": 0,
"max": "1"
},
"type": [
{
"extension": [
{
"url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type",
"valueUrl": "string"
}
],
"code": "http://hl7.org/fhirpath/System.String"
}
],
"isModifier": false,
"isSummary": true
},
{
"id": "DiagnosticReport.meta",
"path": "DiagnosticReport.meta",
"short": "Metadata about the resource",
"definition": "The metadata about the resource. This is content that is maintained by the infrastructure. Changes to the content might not always be associated with version changes to the resource.",
"min": 0,
"max": "1",
"base": {
"path": "Resource.meta",
"min": 0,
"max": "1"
},
"type": [
{
"code": "Meta"
}
],
"constraint": [
{
"key": "ele-1",
"severity": "error",
"human": "All FHIR elements must have a @value or children",
"expression": "hasValue() or (children().count() > id.count())",
"xpath": "@value|f:*|h:div",
"source": "http://hl7.org/fhir/StructureDefinition/Element"
}
],
"isModifier": false,
"isSummary": true
},
{
"id": "DiagnosticReport.implicitRules",
"path": "DiagnosticReport.implicitRules",
"short": "A set of rules under which this content was created",
"definition": "A reference to a set of rules that were followed when the resource was constructed, and which must be understood when processing the content. Often, this is a reference to an implementation guide that defines the special rules along with other profiles etc.",
"comment": "Asserting this rule set restricts the content to be only understood by a limited set of trading partners. This inherently limits the usefulness of the data in the long term. However, the existing health eco-system is highly fractured, and not yet ready to define, collect, and exchange data in a generally computable sense. Wherever possible, implementers and/or specification writers should avoid using this element. Often, when used, the URL is a reference to an implementation guide that defines these special rules as part of it's narrative along with other profiles, value sets, etc.",
"min": 0,
"max": "1",
"base": {
"path": "Resource.implicitRules",
"min": 0,
"max": "1"
},
"type": [
{
"code": "uri"
}
],
"constraint": [
{
"key": "ele-1",
"severity": "error",
"human": "All FHIR elements must have a @value or children",
"expression": "hasValue() or (children().count() > id.count())",
"xpath": "@value|f:*|h:div",
"source": "http://hl7.org/fhir/StructureDefinition/Element"
}
],
"isModifier": true,
"isModifierReason": "This element is labeled as a modifier because the implicit rules may provide additional knowledge about the resource that modifies it's meaning or interpretation",
"isSummary": true
},
{
"id": "DiagnosticReport.language",
"path": "DiagnosticReport.language",
"short": "Language of the resource content",
"definition": "The base language in which the resource is written.",
"comment": "Language is provided to support indexing and accessibility (typically, services such as text to speech use the language tag). The html language tag in the narrative applies to the narrative. The language tag on the resource may be used to specify the language of other presentations generated from the data in the resource. Not all the content has to be in the base language. The Resource.language should not be assumed to apply to the narrative automatically. If a language is specified, it should it also be specified on the div element in the html (see rules in HTML5 for information about the relationship between xml:lang and the html lang attribute).",
"min": 0,
"max": "1",
"base": {
"path": "Resource.language",
"min": 0,
"max": "1"
},
"type": [
{
"code": "code"
}
],
"constraint": [
{
"key": "ele-1",
"severity": "error",
"human": "All FHIR elements must have a @value or children",
"expression": "hasValue() or (children().count() > id.count())",
"xpath": "@value|f:*|h:div",
"source": "http://hl7.org/fhir/StructureDefinition/Element"
}
],
"isModifier": false,
"isSummary": false,
"binding": {
"extension": [
{
"url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-maxValueSet",
"valueCanonical": "http://hl7.org/fhir/ValueSet/all-languages"
},
{
"url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName",
"valueString": "Language"
},
{
"url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-isCommonBinding",
"valueBoolean": true
}
],
"strength": "preferred",
"description": "A human language.",
"valueSet": "http://hl7.org/fhir/ValueSet/languages"
}
},
{
"id": "DiagnosticReport.text",
"path": "DiagnosticReport.text",
"short": "Text summary of the resource, for human interpretation",
"definition": "A human-readable narrative that contains a summary of the resource and can be used to represent the content of the resource to a human. The narrative need not encode all the structured data, but is required to contain sufficient detail to make it \"clinically safe\" for a human to just read the narrative. Resource definitions may define what content should be represented in the narrative to ensure clinical safety.",
"comment": "Contained resources do not have narrative. Resources that are not contained SHOULD have a narrative. In some cases, a resource may only have text with little or no additional discrete data (as long as all minOccurs=1 elements are satisfied). This may be necessary for data from legacy systems where information is captured as a \"text blob\" or where text is additionally entered raw or narrated and encoded information is added later.",
"alias": [
"narrative",
"html",
"xhtml",
"display"
],
"min": 0,
"max": "1",
"base": {
"path": "DomainResource.text",
"min": 0,
"max": "1"
},
"type": [
{
"code": "Narrative"
}
],
"constraint": [
{
"key": "ele-1",
"severity": "error",
"human": "All FHIR elements must have a @value or children",
"expression": "hasValue() or (children().count() > id.count())",
"xpath": "@value|f:*|h:div",
"source": "http://hl7.org/fhir/StructureDefinition/Element"
}
],
"isModifier": false,
"isSummary": false,
"mapping": [
{
"identity": "rim",
"map": "Act.text?"
}
]
},
{
"id": "DiagnosticReport.contained",
"path": "DiagnosticReport.contained",
"short": "Contained, inline Resources",
"definition": "These resources do not have an independent existence apart from the resource that contains them - they cannot be identified independently, and nor can they have their own independent transaction scope.",
"comment": "This should never be done when the content can be identified properly, as once identification is lost, it is extremely difficult (and context dependent) to restore it again. Contained resources may have profiles and tags In their meta elements, but SHALL NOT have security labels.",
"alias": [
"inline resources",
"anonymous resources",
"contained resources"
],
"min": 0,
"max": "*",
"base": {
"path": "DomainResource.contained",
"min": 0,
"max": "*"
},
"type": [
{
"code": "Resource"
}
],
"isModifier": false,
"isSummary": false,
"mapping": [
{
"identity": "rim",
"map": "N/A"
}
]
},
{
"id": "DiagnosticReport.extension",
"path": "DiagnosticReport.extension",
"short": "Additional content defined by implementations",
"definition": "May be used to represent additional information that is not part of the basic definition of the resource. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.",
"comment": "There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.",
"alias": [
"extensions",
"user content"
],
"min": 0,
"max": "*",
"base": {
"path": "DomainResource.extension",
"min": 0,
"max": "*"
},
"type": [
{
"code": "Extension"
}
],
"constraint": [
{
"key": "ele-1",
"severity": "error",
"human": "All FHIR elements must have a @value or children",
"expression": "hasValue() or (children().count() > id.count())",
"xpath": "@value|f:*|h:div",
"source": "http://hl7.org/fhir/StructureDefinition/Element"
},
{
"key": "ext-1",
"severity": "error",
"human": "Must have either extensions or value[x], not both",
"expression": "extension.exists() != value.exists()",
"xpath": "exists(f:extension)!=exists(f:*[starts-with(local-name(.), \"value\")])",
"source": "http://hl7.org/fhir/StructureDefinition/Extension"
}
],
"isModifier": false,
"isSummary": false,
"mapping": [
{
"identity": "rim",
"map": "N/A"
}
]
},
{
"id": "DiagnosticReport.modifierExtension",
"path": "DiagnosticReport.modifierExtension",
"short": "Extensions that cannot be ignored",
"definition": "May be used to represent additional information that is not part of the basic definition of the resource and that modifies the understanding of the element that contains it and/or the understanding of the containing element's descendants. Usually modifier elements provide negation or qualification. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer is allowed to define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions.\n\nModifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself).",
"comment": "There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.",
"requirements": "Modifier extensions allow for extensions that *cannot* be safely ignored to be clearly distinguished from the vast majority of extensions which can be safely ignored. This promotes interoperability by eliminating the need for implementers to prohibit the presence of extensions. For further information, see the [definition of modifier extensions](extensibility.html#modifierExtension).",
"alias": [
"extensions",
"user content"
],
"min": 0,
"max": "*",
"base": {
"path": "DomainResource.modifierExtension",
"min": 0,
"max": "*"
},
"type": [
{
"code": "Extension"
}
],
"constraint": [
{
"key": "ele-1",
"severity": "error",
"human": "All FHIR elements must have a @value or children",
"expression": "hasValue() or (children().count() > id.count())",
"xpath": "@value|f:*|h:div",
"source": "http://hl7.org/fhir/StructureDefinition/Element"
},
{
"key": "ext-1",
"severity": "error",
"human": "Must have either extensions or value[x], not both",
"expression": "extension.exists() != value.exists()",
"xpath": "exists(f:extension)!=exists(f:*[starts-with(local-name(.), \"value\")])",
"source": "http://hl7.org/fhir/StructureDefinition/Extension"
}
],
"isModifier": true,
"isModifierReason": "Modifier extensions are expected to modify the meaning or interpretation of the resource that contains them",
"isSummary": false,
"mapping": [
{
"identity": "rim",
"map": "N/A"
}
]
},
{
"id": "DiagnosticReport.identifier",
"path": "DiagnosticReport.identifier",
"short": "Business identifier for report",
"definition": "Identifiers assigned to this report by the performer or other systems.",
"comment": "Usually assigned by the Information System of the diagnostic service provider (filler id).",
"requirements": "Need to know what identifier to use when making queries about this report from the source laboratory, and for linking to the report outside FHIR context.",
"alias": [
"ReportID",
"Filler ID",
"Placer ID"
],
"min": 0,
"max": "*",
"base": {
"path": "DiagnosticReport.identifier",
"min": 0,
"max": "*"
},
"type": [
{
"code": "Identifier"
}
],
"constraint": [
{
"key": "ele-1",
"severity": "error",
"human": "All FHIR elements must have a @value or children",
"expression": "hasValue() or (children().count() > id.count())",
"xpath": "@value|f:*|h:div",
"source": "http://hl7.org/fhir/StructureDefinition/Element"
}
],
"isModifier": false,
"isSummary": true,
"mapping": [
{
"identity": "workflow",
"map": "Event.identifier"
},
{
"identity": "w5",
"map": "FiveWs.identifier"
},
{
"identity": "v2",
"map": "OBR-51/ for globally unique filler ID - OBR-3 , For non-globally unique filler-id the flller/placer number must be combined with the universal service Id - OBR-2(if present)+OBR-3+OBR-4"
},
{
"identity": "rim",
"map": "id"
}
]
},
{
"id": "DiagnosticReport.basedOn",
"path": "DiagnosticReport.basedOn",
"short": "What was requested",
"definition": "Details concerning a service requested.",
"comment": "Note: Usually there is one test request for each result, however in some circumstances multiple test requests may be represented using a single test result resource. Note that there are also cases where one request leads to multiple reports.",
"requirements": "This allows tracing of authorization for the report and tracking whether proposals/recommendations were acted upon.",
"alias": [
"Request"
],
"min": 0,
"max": "*",
"base": {
"path": "DiagnosticReport.basedOn",
"min": 0,
"max": "*"
},
"type": [
{
"code": "Reference",
"targetProfile": [
"http://hl7.org/fhir/StructureDefinition/CarePlan",
"http://hl7.org/fhir/StructureDefinition/ImmunizationRecommendation",
"http://fhir.infoway-inforoute.ca/cacore/StructureDefinition/medicationrequest-ca-core",
"http://hl7.org/fhir/StructureDefinition/NutritionOrder",
"http://fhir.infoway-inforoute.ca/cacore/StructureDefinition/servicerequest-ca-core"
]
}
],
"constraint": [
{
"key": "ele-1",
"severity": "error",
"human": "All FHIR elements must have a @value or children",
"expression": "hasValue() or (children().count() > id.count())",
"xpath": "@value|f:*|h:div",
"source": "http://hl7.org/fhir/StructureDefinition/Element"
}
],
"isModifier": false,
"isSummary": false,
"mapping": [
{
"identity": "workflow",
"map": "Event.basedOn"
},
{
"identity": "v2",
"map": "ORC? OBR-2/3?"
},
{
"identity": "rim",
"map": "outboundRelationship[typeCode=FLFS].target"
}
]
},
{
"id": "DiagnosticReport.status",
"path": "DiagnosticReport.status",
"short": "registered | partial | preliminary | final +",
"definition": "The status of the diagnostic report.",
"requirements": "Diagnostic services routinely issue provisional/incomplete reports, and sometimes withdraw previously released reports.",
"min": 1,
"max": "1",
"base": {
"path": "DiagnosticReport.status",
"min": 1,
"max": "1"
},
"type": [
{
"code": "code"
}
],
"constraint": [
{
"key": "ele-1",
"severity": "error",
"human": "All FHIR elements must have a @value or children",
"expression": "hasValue() or (children().count() > id.count())",
"xpath": "@value|f:*|h:div",
"source": "http://hl7.org/fhir/StructureDefinition/Element"
}
],
"isModifier": true,
"isModifierReason": "This element is labeled as a modifier because it is a status element that contains status entered-in-error which means that the resource should not be treated as valid",
"isSummary": true,
"binding": {
"extension": [
{
"url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName",
"valueString": "DiagnosticReportStatus"
}
],
"strength": "required",
"description": "The status of the diagnostic report.",
"valueSet": "http://hl7.org/fhir/ValueSet/diagnostic-report-status|4.0.1"
},
"mapping": [
{
"identity": "workflow",
"map": "Event.status"
},
{
"identity": "w5",
"map": "FiveWs.status"
},
{
"identity": "v2",
"map": "OBR-25 (not 1:1 mapping)"
},
{
"identity": "rim",
"map": "statusCode Note: final and amended are distinguished by whether observation is the subject of a ControlAct event of type \"revise\""
}
]
},
{
"id": "DiagnosticReport.category",
"extension": [
{
"url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-standards-status",
"valueCode": "normative"
},
{
"url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-normative-version",
"valueCode": "4.0.0"
}
],
"path": "DiagnosticReport.category",
"short": "Concept - reference to a terminology or just text",
"definition": "A concept that may be defined by a formal reference to a terminology or ontology or may be provided by text.",
"comment": "Not all terminology uses fit this general pattern. In some cases, models should not use CodeableConcept and use Coding directly and provide their own structure for managing text, codings, translations and the relationship between elements and pre- and post-coordination.",
"alias": [
"Department",
"Sub-department",
"Service",
"Discipline"
],
"min": 0,
"max": "*",
"base": {
"path": "DiagnosticReport.category",
"min": 0,
"max": "*"
},
"type": [
{
"code": "CodeableConcept",
"profile": [
"http://fhir.infoway-inforoute.ca/cacore/StructureDefinition/codeableconcept-ca-core"
]
}
],
"condition": [
"ele-1"
],
"constraint": [
{
"key": "ele-1",
"severity": "error",
"human": "All FHIR elements must have a @value or children",
"expression": "hasValue() or (children().count() > id.count())",
"xpath": "@value|f:*|h:div",
"source": "http://hl7.org/fhir/StructureDefinition/Element"
}
],
"isModifier": false,
"isSummary": true,
"binding": {
"extension": [
{
"url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName",
"valueString": "DiagnosticServiceSection"
}
],
"strength": "example",
"description": "Codes for diagnostic service sections.",
"valueSet": "http://hl7.org/fhir/ValueSet/diagnostic-service-sections"
},
"mapping": [
{
"identity": "w5",
"map": "FiveWs.class"
},
{
"identity": "v2",
"map": "OBR-24"
},
{
"identity": "rim",
"map": "inboundRelationship[typeCode=COMP].source[classCode=LIST, moodCode=EVN, code < LabService].code"
},
{
"identity": "rim",
"map": "n/a"
},
{
"identity": "v2",
"map": "CE/CNE/CWE"
},
{
"identity": "rim",
"map": "CD"
},
{
"identity": "orim",
"map": "fhir:CodeableConcept rdfs:subClassOf dt:CD"
}
]
},
{
"id": "DiagnosticReport.code",
"extension": [
{
"url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-standards-status",
"valueCode": "normative"
},
{
"url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-normative-version",
"valueCode": "4.0.0"
}
],
"path": "DiagnosticReport.code",
"short": "Concept - reference to a terminology or just text",
"definition": "A concept that may be defined by a formal reference to a terminology or ontology or may be provided by text.",
"comment": "Not all terminology uses fit this general pattern. In some cases, models should not use CodeableConcept and use Coding directly and provide their own structure for managing text, codings, translations and the relationship between elements and pre- and post-coordination.",
"alias": [
"Type"
],
"min": 1,
"max": "1",
"base": {
"path": "DiagnosticReport.code",
"min": 1,
"max": "1"
},
"type": [
{
"code": "CodeableConcept",
"profile": [
"http://fhir.infoway-inforoute.ca/cacore/StructureDefinition/codeableconcept-ca-core"
]
}
],
"condition": [
"ele-1"
],
"constraint": [
{
"key": "ele-1",
"severity": "error",
"human": "All FHIR elements must have a @value or children",
"expression": "hasValue() or (children().count() > id.count())",
"xpath": "@value|f:*|h:div",
"source": "http://hl7.org/fhir/StructureDefinition/Element"
}
],
"isModifier": false,
"isSummary": true,
"binding": {
"extension": [
{
"url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName",
"valueString": "DiagnosticReportCodes"
}
],
"strength": "preferred",
"description": "Codes that describe Diagnostic Reports.",
"valueSet": "https://fhir.infoway-inforoute.ca/ValueSet/pCLOCD"
},
"mapping": [
{
"identity": "workflow",
"map": "Event.code"
},
{
"identity": "w5",
"map": "FiveWs.what[x]"
},
{
"identity": "v2",
"map": "OBR-4 (HL7 v2 doesn't provide an easy way to indicate both the ordered test and the performed panel)"
},
{
"identity": "rim",
"map": "code"
},
{
"identity": "rim",
"map": "n/a"
},
{
"identity": "v2",
"map": "CE/CNE/CWE"
},
{
"identity": "rim",
"map": "CD"
},
{
"identity": "orim",
"map": "fhir:CodeableConcept rdfs:subClassOf dt:CD"
}
]
},
{
"id": "DiagnosticReport.subject",
"extension": [
{
"extension": [
{
"url": "code",
"valueCode": "SHALL:populate-if-known"
},
{
"url": "actor",
"valueCanonical": "http://fhir.infoway-inforoute.ca/ca-core/ActorDefinition/producer"
}
],
"url": "http://hl7.org/fhir/StructureDefinition/obligation"
},
{
"extension": [
{
"url": "code",
"valueCode": "SHALL:no-error"
},
{
"url": "actor",
"valueCanonical": "http://fhir.infoway-inforoute.ca/ca-core/ActorDefinition/consumer"
}
],
"url": "http://hl7.org/fhir/StructureDefinition/obligation"
}
],
"path": "DiagnosticReport.subject",
"short": "The subject of the report - usually, but not always, the patient",
"definition": "The subject of the report. Usually, but not always, this is a patient. However, diagnostic services also perform analyses on specimens collected from a variety of other sources.",
"requirements": "SHALL know the subject context.",
"alias": [
"Patient"
],
"min": 0,
"max": "1",
"base": {
"path": "DiagnosticReport.subject",
"min": 0,
"max": "1"
},
"type": [
{
"code": "Reference",
"targetProfile": [
"http://fhir.infoway-inforoute.ca/cacore/StructureDefinition/patient-ca-core",
"http://hl7.org/fhir/StructureDefinition/Group",
"http://hl7.org/fhir/StructureDefinition/Device",
"http://fhir.infoway-inforoute.ca/cacore/StructureDefinition/location-ca-core"
]
}
],
"constraint": [
{
"key": "ele-1",
"severity": "error",
"human": "All FHIR elements must have a @value or children",
"expression": "hasValue() or (children().count() > id.count())",
"xpath": "@value|f:*|h:div",
"source": "http://hl7.org/fhir/StructureDefinition/Element"
}
],
"mustSupport": true,
"isModifier": false,
"isSummary": true,
"mapping": [
{
"identity": "workflow",
"map": "Event.subject"
},
{
"identity": "w5",
"map": "FiveWs.subject[x]"
},
{
"identity": "v2",
"map": "PID-3 (no HL7 v2 mapping for Group or Device)"
},
{
"identity": "rim",
"map": "participation[typeCode=SBJ]"
},
{
"identity": "w5",
"map": "FiveWs.subject"
},
{
"identity": "CACDI",
"map": "Patient"
}
]
},
{
"id": "DiagnosticReport.encounter",
"path": "DiagnosticReport.encounter",
"short": "Health care event when test ordered",
"definition": "The healthcare event (e.g. a patient and healthcare provider interaction) which this DiagnosticReport is about.",
"comment": "This will typically be the encounter the event occurred within, but some events may be initiated prior to or after the official completion of an encounter but still be tied to the context of the encounter (e.g. pre-admission laboratory tests).",
"requirements": "Links the request to the Encounter context.",
"alias": [
"Context"
],
"min": 0,
"max": "1",
"base": {
"path": "DiagnosticReport.encounter",
"min": 0,
"max": "1"
},
"type": [
{
"code": "Reference",
"targetProfile": [
"http://fhir.infoway-inforoute.ca/cacore/StructureDefinition/encounter-ca-core"
]
}
],
"constraint": [
{
"key": "ele-1",
"severity": "error",
"human": "All FHIR elements must have a @value or children",
"expression": "hasValue() or (children().count() > id.count())",
"xpath": "@value|f:*|h:div",
"source": "http://hl7.org/fhir/StructureDefinition/Element"
}
],
"isModifier": false,
"isSummary": true,
"mapping": [
{
"identity": "workflow",
"map": "Event.encounter"
},
{
"identity": "w5",
"map": "FiveWs.context"
},
{
"identity": "v2",
"map": "PV1-19"
},
{
"identity": "rim",
"map": "inboundRelationship[typeCode=COMP].source[classCode=ENC, moodCode=EVN]"
}
]
},
{
"id": "DiagnosticReport.effective[x]",
"path": "DiagnosticReport.effective[x]",
"short": "Clinically relevant time/time-period for report",
"definition": "The time or time-period the observed values are related to. When the subject of the report is a patient, this is usually either the time of the procedure or of specimen collection(s), but very often the source of the date/time is not known, only the date/time itself.",
"comment": "If the diagnostic procedure was performed on the patient, this is the time it was performed. If there are specimens, the diagnostically relevant time can be derived from the specimen collection times, but the specimen information is not always available, and the exact relationship between the specimens and the diagnostically relevant time is not always automatic.",
"requirements": "Need to know where in the patient history to file/present this report.",
"alias": [
"Observation time",
"Effective Time",
"Occurrence"
],
"min": 0,
"max": "1",
"base": {
"path": "DiagnosticReport.effective[x]",
"min": 0,
"max": "1"
},
"type": [
{
"code": "dateTime"
},
{
"code": "Period"
}
],
"constraint": [
{
"key": "ele-1",
"severity": "error",
"human": "All FHIR elements must have a @value or children",
"expression": "hasValue() or (children().count() > id.count())",
"xpath": "@value|f:*|h:div",
"source": "http://hl7.org/fhir/StructureDefinition/Element"
}
],
"isModifier": false,
"isSummary": true,
"mapping": [
{
"identity": "workflow",
"map": "Event.occurrence[x]"
},
{
"identity": "w5",
"map": "FiveWs.done[x]"
},
{
"identity": "v2",
"map": "OBR-7"
},
{
"identity": "rim",
"map": "effectiveTime"
}
]
},
{
"id": "DiagnosticReport.issued",
"path": "DiagnosticReport.issued",
"short": "DateTime this version was made",
"definition": "The date and time that this version of the report was made available to providers, typically after the report was reviewed and verified.",
"comment": "May be different from the update time of the resource itself, because that is the status of the record (potentially a secondary copy), not the actual release time of the report.",
"requirements": "Clinicians need to be able to check the date that the report was released.",
"alias": [
"Date published",
"Date Issued",
"Date Verified"
],
"min": 0,
"max": "1",
"base": {
"path": "DiagnosticReport.issued",
"min": 0,
"max": "1"
},
"type": [
{
"code": "instant"
}
],
"constraint": [
{
"key": "ele-1",
"severity": "error",
"human": "All FHIR elements must have a @value or children",
"expression": "hasValue() or (children().count() > id.count())",
"xpath": "@value|f:*|h:div",
"source": "http://hl7.org/fhir/StructureDefinition/Element"
}
],
"isModifier": false,
"isSummary": true,
"mapping": [
{
"identity": "w5",
"map": "FiveWs.recorded"
},
{
"identity": "v2",
"map": "OBR-22"
},
{
"identity": "rim",
"map": "participation[typeCode=VRF or AUT].time"
}
]
},
{
"id": "DiagnosticReport.performer",
"path": "DiagnosticReport.performer",
"short": "Responsible Diagnostic Service",
"definition": "The diagnostic service that is responsible for issuing the report.",
"comment": "This is not necessarily the source of the atomic data items or the entity that interpreted the results. It is the entity that takes responsibility for the clinical report.",
"requirements": "Need to know whom to contact if there are queries about the results. Also may need to track the source of reports for secondary data analysis.",
"alias": [
"Laboratory",
"Service",
"Practitioner",
"Department",
"Company",
"Authorized by",
"Director"
],
"min": 0,
"max": "*",
"base": {
"path": "DiagnosticReport.performer",
"min": 0,
"max": "*"
},
"type": [
{
"code": "Reference",
"targetProfile": [
"http://fhir.infoway-inforoute.ca/cacore/StructureDefinition/practitioner-ca-core",
"http://fhir.infoway-inforoute.ca/cacore/StructureDefinition/practitionerRole-ca-core",
"http://fhir.infoway-inforoute.ca/cacore/StructureDefinition/organization-ca-core",
"http://hl7.org/fhir/StructureDefinition/CareTeam"
]
}
],
"constraint": [
{
"key": "ele-1",
"severity": "error",
"human": "All FHIR elements must have a @value or children",
"expression": "hasValue() or (children().count() > id.count())",
"xpath": "@value|f:*|h:div",
"source": "http://hl7.org/fhir/StructureDefinition/Element"
}
],
"isModifier": false,
"isSummary": true,
"mapping": [
{
"identity": "workflow",
"map": "Event.performer.actor"
},
{
"identity": "w5",
"map": "FiveWs.actor"
},
{
"identity": "v2",
"map": "PRT-8 (where this PRT-4-Participation = \"PO\")"
},
{
"identity": "rim",
"map": ".participation[typeCode=PRF]"
}
]
},
{
"id": "DiagnosticReport.resultsInterpreter",
"path": "DiagnosticReport.resultsInterpreter",
"short": "Primary result interpreter",
"definition": "The practitioner or organization that is responsible for the report's conclusions and interpretations.",
"comment": "Might not be the same entity that takes responsibility for the clinical report.",
"requirements": "Need to know whom to contact if there are queries about the results. Also may need to track the source of reports for secondary data analysis.",
"alias": [
"Analyzed by",
"Reported by"
],
"min": 0,
"max": "*",
"base": {
"path": "DiagnosticReport.resultsInterpreter",
"min": 0,
"max": "*"
},
"type": [
{
"code": "Reference",
"targetProfile": [
"http://fhir.infoway-inforoute.ca/cacore/StructureDefinition/practitioner-ca-core",
"http://fhir.infoway-inforoute.ca/cacore/StructureDefinition/practitionerRole-ca-core",
"http://fhir.infoway-inforoute.ca/cacore/StructureDefinition/organization-ca-core",
"http://hl7.org/fhir/StructureDefinition/CareTeam"
]
}
],
"constraint": [
{
"key": "ele-1",
"severity": "error",
"human": "All FHIR elements must have a @value or children",
"expression": "hasValue() or (children().count() > id.count())",
"xpath": "@value|f:*|h:div",
"source": "http://hl7.org/fhir/StructureDefinition/Element"
}
],
"isModifier": false,
"isSummary": true,
"mapping": [
{
"identity": "workflow",
"map": "Event.performer.actor"
},
{
"identity": "w5",
"map": "FiveWs.actor"
},
{
"identity": "v2",
"map": "OBR-32, PRT-8 (where this PRT-4-Participation = \"PI\")"
},
{
"identity": "rim",
"map": ".participation[typeCode=PRF]"
}
]
},
{
"id": "DiagnosticReport.specimen",
"path": "DiagnosticReport.specimen",
"short": "Specimens this report is based on",
"definition": "Details about the specimens on which this diagnostic report is based.",
"comment": "If the specimen is sufficiently specified with a code in the test result name, then this additional data may be redundant. If there are multiple specimens, these may be represented per observation or group.",
"requirements": "Need to be able to report information about the collected specimens on which the report is based.",
"min": 0,
"max": "*",
"base": {
"path": "DiagnosticReport.specimen",
"min": 0,
"max": "*"
},
"type": [
{
"code": "Reference",
"targetProfile": [
"http://hl7.org/fhir/StructureDefinition/Specimen"
]
}
],
"constraint": [
{
"key": "ele-1",
"severity": "error",
"human": "All FHIR elements must have a @value or children",
"expression": "hasValue() or (children().count() > id.count())",
"xpath": "@value|f:*|h:div",
"source": "http://hl7.org/fhir/StructureDefinition/Element"
}
],
"isModifier": false,
"isSummary": false,
"mapping": [
{
"identity": "v2",
"map": "SPM"
},
{
"identity": "rim",
"map": "participation[typeCode=SBJ]"
}
]
},
{
"id": "DiagnosticReport.result",
"extension": [
{
"extension": [
{
"url": "code",
"valueCode": "SHALL:populate-if-known"
},
{
"url": "actor",
"valueCanonical": "http://fhir.infoway-inforoute.ca/ca-core/ActorDefinition/producer"
}
],
"url": "http://hl7.org/fhir/StructureDefinition/obligation"
},
{
"extension": [
{
"url": "code",
"valueCode": "SHALL:no-error"
},
{
"url": "actor",
"valueCanonical": "http://fhir.infoway-inforoute.ca/ca-core/ActorDefinition/consumer"
}
],
"url": "http://hl7.org/fhir/StructureDefinition/obligation"
}
],
"path": "DiagnosticReport.result",
"short": "Observations",
"definition": "[Observations](observation.html) that are part of this diagnostic report.",
"comment": "Observations can contain observations.",
"requirements": "Need to support individual results, or groups of results, where the result grouping is arbitrary, but meaningful.",
"alias": [
"Data",
"Atomic Value",
"Result",
"Atomic result",
"Data",
"Test",
"Analyte",
"Battery",
"Organizer"
],
"min": 0,
"max": "*",
"base": {
"path": "DiagnosticReport.result",
"min": 0,
"max": "*"
},
"type": [
{
"code": "Reference",
"targetProfile": [
"http://hl7.org/fhir/StructureDefinition/Observation"
]
}
],
"constraint": [
{
"key": "ele-1",
"severity": "error",
"human": "All FHIR elements must have a @value or children",
"expression": "hasValue() or (children().count() > id.count())",
"xpath": "@value|f:*|h:div",
"source": "http://hl7.org/fhir/StructureDefinition/Element"
}
],
"mustSupport": true,
"isModifier": false,
"isSummary": false,
"mapping": [
{
"identity": "v2",
"map": "OBXs"
},
{
"identity": "rim",
"map": "outboundRelationship[typeCode=COMP].target"
}
]
},
{
"id": "DiagnosticReport.imagingStudy",
"path": "DiagnosticReport.imagingStudy",
"short": "Reference to full details of imaging associated with the diagnostic report",
"definition": "One or more links to full details of any imaging performed during the diagnostic investigation. Typically, this is imaging performed by DICOM enabled modalities, but this is not required. A fully enabled PACS viewer can use this information to provide views of the source images.",
"comment": "ImagingStudy and the image element are somewhat overlapping - typically, the list of image references in the image element will also be found in one of the imaging study resources. However, each caters to different types of displays for different types of purposes. Neither, either, or both may be provided.",
"min": 0,
"max": "*",
"base": {
"path": "DiagnosticReport.imagingStudy",
"min": 0,
"max": "*"
},
"type": [
{
"code": "Reference",
"targetProfile": [
"http://hl7.org/fhir/StructureDefinition/ImagingStudy"
]
}
],
"constraint": [
{
"key": "ele-1",
"severity": "error",
"human": "All FHIR elements must have a @value or children",
"expression": "hasValue() or (children().count() > id.count())",
"xpath": "@value|f:*|h:div",
"source": "http://hl7.org/fhir/StructureDefinition/Element"
}
],
"isModifier": false,
"isSummary": false,
"mapping": [
{
"identity": "rim",
"map": "outboundRelationship[typeCode=COMP].target[classsCode=DGIMG, moodCode=EVN]"
}
]
},
{
"id": "DiagnosticReport.media",
"path": "DiagnosticReport.media",
"short": "Key images associated with this report",
"definition": "A list of key images associated with this report. The images are generally created during the diagnostic process, and may be directly of the patient, or of treated specimens (i.e. slides of interest).",
"requirements": "Many diagnostic services include images in the report as part of their service.",
"alias": [
"DICOM",
"Slides",
"Scans"
],
"min": 0,
"max": "*",
"base": {
"path": "DiagnosticReport.media",
"min": 0,
"max": "*"
},
"type": [
{
"code": "BackboneElement"
}
],
"constraint": [
{
"key": "ele-1",
"severity": "error",
"human": "All FHIR elements must have a @value or children",
"expression": "hasValue() or (children().count() > id.count())",
"xpath": "@value|f:*|h:div",
"source": "http://hl7.org/fhir/StructureDefinition/Element"
}
],
"isModifier": false,
"isSummary": true,
"mapping": [
{
"identity": "v2",
"map": "OBX?"
},
{
"identity": "rim",
"map": "outboundRelationship[typeCode=COMP].target"
}
]
},
{
"id": "DiagnosticReport.media.id",
"path": "DiagnosticReport.media.id",
"representation": [
"xmlAttr"
],
"short": "Unique id for inter-element referencing",
"definition": "Unique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.",
"min": 0,
"max": "1",
"base": {
"path": "Element.id",
"min": 0,
"max": "1"
},
"type": [
{
"extension": [
{
"url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type",
"valueUrl": "string"
}
],
"code": "http://hl7.org/fhirpath/System.String"
}
],
"isModifier": false,
"isSummary": false,
"mapping": [
{
"identity": "rim",
"map": "n/a"
}
]
},
{
"id": "DiagnosticReport.media.extension",
"path": "DiagnosticReport.media.extension",
"short": "Additional content defined by implementations",
"definition": "May be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.",
"comment": "There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.",
"alias": [
"extensions",
"user content"
],
"min": 0,
"max": "*",
"base": {
"path": "Element.extension",
"min": 0,
"max": "*"
},
"type": [
{
"code": "Extension"
}
],
"constraint": [
{
"key": "ele-1",
"severity": "error",
"human": "All FHIR elements must have a @value or children",
"expression": "hasValue() or (children().count() > id.count())",
"xpath": "@value|f:*|h:div",
"source": "http://hl7.org/fhir/StructureDefinition/Element"
},
{
"key": "ext-1",
"severity": "error",
"human": "Must have either extensions or value[x], not both",
"expression": "extension.exists() != value.exists()",
"xpath": "exists(f:extension)!=exists(f:*[starts-with(local-name(.), \"value\")])",
"source": "http://hl7.org/fhir/StructureDefinition/Extension"
}
],
"isModifier": false,
"isSummary": false,
"mapping": [
{
"identity": "rim",
"map": "n/a"
}
]
},
{
"id": "DiagnosticReport.media.modifierExtension",
"path": "DiagnosticReport.media.modifierExtension",
"short": "Extensions that cannot be ignored even if unrecognized",
"definition": "May be used to represent additional information that is not part of the basic definition of the element and that modifies the understanding of the element in which it is contained and/or the understanding of the containing element's descendants. Usually modifier elements provide negation or qualification. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions.\n\nModifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself).",
"comment": "There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.",
"requirements": "Modifier extensions allow for extensions that *cannot* be safely ignored to be clearly distinguished from the vast majority of extensions which can be safely ignored. This promotes interoperability by eliminating the need for implementers to prohibit the presence of extensions. For further information, see the [definition of modifier extensions](extensibility.html#modifierExtension).",
"alias": [
"extensions",
"user content",
"modifiers"
],
"min": 0,
"max": "*",
"base": {
"path": "BackboneElement.modifierExtension",
"min": 0,
"max": "*"
},
"type": [
{
"code": "Extension"
}
],
"constraint": [
{
"key": "ele-1",
"severity": "error",
"human": "All FHIR elements must have a @value or children",
"expression": "hasValue() or (children().count() > id.count())",
"xpath": "@value|f:*|h:div",
"source": "http://hl7.org/fhir/StructureDefinition/Element"
},
{
"key": "ext-1",
"severity": "error",
"human": "Must have either extensions or value[x], not both",
"expression": "extension.exists() != value.exists()",
"xpath": "exists(f:extension)!=exists(f:*[starts-with(local-name(.), \"value\")])",
"source": "http://hl7.org/fhir/StructureDefinition/Extension"
}
],
"isModifier": true,
"isModifierReason": "Modifier extensions are expected to modify the meaning or interpretation of the element that contains them",
"isSummary": true,
"mapping": [
{
"identity": "rim",
"map": "N/A"
}
]
},
{
"id": "DiagnosticReport.media.comment",
"path": "DiagnosticReport.media.comment",
"short": "Comment about the image (e.g. explanation)",
"definition": "A comment about the image. Typically, this is used to provide an explanation for why the image is included, or to draw the viewer's attention to important features.",
"comment": "The comment should be displayed with the image. It would be common for the report to include additional discussion of the image contents in other sections such as the conclusion.",
"requirements": "The provider of the report should make a comment about each image included in the report.",
"min": 0,
"max": "1",
"base": {
"path": "DiagnosticReport.media.comment",
"min": 0,
"max": "1"
},
"type": [
{
"code": "string"
}
],
"constraint": [
{
"key": "ele-1",
"severity": "error",
"human": "All FHIR elements must have a @value or children",
"expression": "hasValue() or (children().count() > id.count())",
"xpath": "@value|f:*|h:div",
"source": "http://hl7.org/fhir/StructureDefinition/Element"
}
],
"isModifier": false,
"isSummary": false,
"mapping": [
{
"identity": "rim",
"map": ".inboundRelationship[typeCode=COMP].source[classCode=OBS, moodCode=EVN, code=\"annotation\"].value"
}
]
},
{
"id": "DiagnosticReport.media.link",
"path": "DiagnosticReport.media.link",
"short": "Reference to the image source",
"definition": "Reference to the image source.",
"min": 1,
"max": "1",
"base": {
"path": "DiagnosticReport.media.link",
"min": 1,
"max": "1"
},
"type": [
{
"code": "Reference",
"targetProfile": [
"http://hl7.org/fhir/StructureDefinition/Media"
]
}
],
"constraint": [
{
"key": "ele-1",
"severity": "error",
"human": "All FHIR elements must have a @value or children",
"expression": "hasValue() or (children().count() > id.count())",
"xpath": "@value|f:*|h:div",
"source": "http://hl7.org/fhir/StructureDefinition/Element"
}
],
"isModifier": false,
"isSummary": true,
"mapping": [
{
"identity": "rim",
"map": ".value.reference"
}
]
},
{
"id": "DiagnosticReport.conclusion",
"path": "DiagnosticReport.conclusion",
"short": "Clinical conclusion (interpretation) of test results",
"definition": "Concise and clinically contextualized summary conclusion (interpretation/impression) of the diagnostic report.",
"requirements": "Need to be able to provide a conclusion that is not lost among the basic result data.",
"alias": [
"Report"
],
"min": 0,
"max": "1",
"base": {
"path": "DiagnosticReport.conclusion",
"min": 0,
"max": "1"
},
"type": [
{
"code": "string"
}
],
"constraint": [
{
"key": "ele-1",
"severity": "error",
"human": "All FHIR elements must have a @value or children",
"expression": "hasValue() or (children().count() > id.count())",
"xpath": "@value|f:*|h:div",
"source": "http://hl7.org/fhir/StructureDefinition/Element"
}
],
"isModifier": false,
"isSummary": false,
"mapping": [
{
"identity": "v2",
"map": "OBX"
},
{
"identity": "rim",
"map": "inboundRelationship[typeCode=\"SPRT\"].source[classCode=OBS, moodCode=EVN, code=LOINC:48767-8].value (type=ST)"
}
]
},
{
"id": "DiagnosticReport.conclusionCode",
"path": "DiagnosticReport.conclusionCode",
"short": "Codes for the clinical conclusion of test results",
"definition": "One or more codes that represent the summary conclusion (interpretation/impression) of the diagnostic report.",
"min": 0,
"max": "*",
"base": {
"path": "DiagnosticReport.conclusionCode",
"min": 0,
"max": "*"
},
"type": [
{
"code": "CodeableConcept"
}
],
"constraint": [
{
"key": "ele-1",
"severity": "error",
"human": "All FHIR elements must have a @value or children",
"expression": "hasValue() or (children().count() > id.count())",
"xpath": "@value|f:*|h:div",
"source": "http://hl7.org/fhir/StructureDefinition/Element"
}
],
"isModifier": false,
"isSummary": false,
"binding": {
"extension": [
{
"url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName",
"valueString": "AdjunctDiagnosis"
}
],
"strength": "example",
"description": "Diagnosis codes provided as adjuncts to the report.",
"valueSet": "http://hl7.org/fhir/ValueSet/clinical-findings"
},
"mapping": [
{
"identity": "v2",
"map": "OBX"
},
{
"identity": "rim",
"map": "inboundRelationship[typeCode=SPRT].source[classCode=OBS, moodCode=EVN, code=LOINC:54531-9].value (type=CD)"
}
]
},
{
"id": "DiagnosticReport.presentedForm",
"path": "DiagnosticReport.presentedForm",
"short": "Entire report as issued",
"definition": "Rich text representation of the entire result as issued by the diagnostic service. Multiple formats are allowed but they SHALL be semantically equivalent.",
"comment": "\"application/pdf\" is recommended as the most reliable and interoperable in this context.",
"requirements": "Gives laboratory the ability to provide its own fully formatted report for clinical fidelity.",
"min": 0,
"max": "*",
"base": {
"path": "DiagnosticReport.presentedForm",
"min": 0,
"max": "*"
},
"type": [
{
"code": "Attachment"
}
],
"constraint": [
{
"key": "ele-1",
"severity": "error",
"human": "All FHIR elements must have a @value or children",
"expression": "hasValue() or (children().count() > id.count())",
"xpath": "@value|f:*|h:div",
"source": "http://hl7.org/fhir/StructureDefinition/Element"
}
],
"isModifier": false,
"isSummary": false,
"mapping": [
{
"identity": "v2",
"map": "OBX"
},
{
"identity": "rim",
"map": "text (type=ED)"
}
]
}
]
},
"differential": {
"element": [
{
"id": "DiagnosticReport.basedOn",
"path": "DiagnosticReport.basedOn",
"type": [
{
"code": "Reference",
"targetProfile": [
"http://hl7.org/fhir/StructureDefinition/CarePlan",
"http://hl7.org/fhir/StructureDefinition/ImmunizationRecommendation",
"http://fhir.infoway-inforoute.ca/cacore/StructureDefinition/medicationrequest-ca-core",
"http://hl7.org/fhir/StructureDefinition/NutritionOrder",
"http://fhir.infoway-inforoute.ca/cacore/StructureDefinition/servicerequest-ca-core"
]
}
]
},
{
"id": "DiagnosticReport.category",
"path": "DiagnosticReport.category",
"type": [
{
"code": "CodeableConcept",
"profile": [
"http://fhir.infoway-inforoute.ca/cacore/StructureDefinition/codeableconcept-ca-core"
]
}
]
},
{
"id": "DiagnosticReport.code",
"path": "DiagnosticReport.code",
"type": [
{
"code": "CodeableConcept",
"profile": [
"http://fhir.infoway-inforoute.ca/cacore/StructureDefinition/codeableconcept-ca-core"
]
}
],
"binding": {
"strength": "preferred",
"valueSet": "https://fhir.infoway-inforoute.ca/ValueSet/pCLOCD"
}
},
{
"id": "DiagnosticReport.subject",
"extension": [
{
"extension": [
{
"url": "code",
"valueCode": "SHALL:populate-if-known"
},
{
"url": "actor",
"valueCanonical": "http://fhir.infoway-inforoute.ca/ca-core/ActorDefinition/producer"
}
],
"url": "http://hl7.org/fhir/StructureDefinition/obligation"
},
{
"extension": [
{
"url": "code",
"valueCode": "SHALL:no-error"
},
{
"url": "actor",
"valueCanonical": "http://fhir.infoway-inforoute.ca/ca-core/ActorDefinition/consumer"
}
],
"url": "http://hl7.org/fhir/StructureDefinition/obligation"
}
],
"path": "DiagnosticReport.subject",
"type": [
{
"code": "Reference",
"targetProfile": [
"http://fhir.infoway-inforoute.ca/cacore/StructureDefinition/patient-ca-core",
"http://hl7.org/fhir/StructureDefinition/Group",
"http://hl7.org/fhir/StructureDefinition/Device",
"http://fhir.infoway-inforoute.ca/cacore/StructureDefinition/location-ca-core"
]
}
],
"mustSupport": true,
"mapping": [
{
"identity": "CACDI",
"map": "Patient"
}
]
},
{
"id": "DiagnosticReport.encounter",
"path": "DiagnosticReport.encounter",
"type": [
{
"code": "Reference",
"targetProfile": [
"http://fhir.infoway-inforoute.ca/cacore/StructureDefinition/encounter-ca-core"
]
}
]
},
{
"id": "DiagnosticReport.performer",
"path": "DiagnosticReport.performer",
"type": [
{
"code": "Reference",
"targetProfile": [
"http://fhir.infoway-inforoute.ca/cacore/StructureDefinition/practitioner-ca-core",
"http://fhir.infoway-inforoute.ca/cacore/StructureDefinition/practitionerRole-ca-core",
"http://fhir.infoway-inforoute.ca/cacore/StructureDefinition/organization-ca-core",
"http://hl7.org/fhir/StructureDefinition/CareTeam"
]
}
]
},
{
"id": "DiagnosticReport.resultsInterpreter",
"path": "DiagnosticReport.resultsInterpreter",
"type": [
{
"code": "Reference",
"targetProfile": [
"http://fhir.infoway-inforoute.ca/cacore/StructureDefinition/practitioner-ca-core",
"http://fhir.infoway-inforoute.ca/cacore/StructureDefinition/practitionerRole-ca-core",
"http://fhir.infoway-inforoute.ca/cacore/StructureDefinition/organization-ca-core",
"http://hl7.org/fhir/StructureDefinition/CareTeam"
]
}
]
},
{
"id": "DiagnosticReport.result",
"extension": [
{
"extension": [
{
"url": "code",
"valueCode": "SHALL:populate-if-known"
},
{
"url": "actor",
"valueCanonical": "http://fhir.infoway-inforoute.ca/ca-core/ActorDefinition/producer"
}
],
"url": "http://hl7.org/fhir/StructureDefinition/obligation"
},
{
"extension": [
{
"url": "code",
"valueCode": "SHALL:no-error"
},
{
"url": "actor",
"valueCanonical": "http://fhir.infoway-inforoute.ca/ca-core/ActorDefinition/consumer"
}
],
"url": "http://hl7.org/fhir/StructureDefinition/obligation"
}
],
"path": "DiagnosticReport.result",
"mustSupport": true
}
]
}
}

Terminology bindings

PathConformanceValueSet
DiagnosticReport.codepreferredhttps://fhir.infoway-inforoute.ca/ValueSet/pCLOCD

Additional Terminology Bindings

These bindings may be used in lieu of the primary bindings in the table above.

Mappings to CACDI

The following tables list how the data elements from CA Core+ map to CACDI. For more information visit Mapping Logic.

FHIR Profile ElementCACDI Element(s)
DiagnosticReport.subjectPatient

IG © based on FHIR R4 | Package package:ca.infoway.io.core@1.1.0-dft-preballot
HL7® and FHIR® are the registered trademarks of Health Level Seven International