EMR-LIS Implementation Guide
0.2.0 - ci-build
EMR-LIS Implementation Guide - Local Development build (v0.2.0). See the Directory of published versions
Defining URL: | http://i-tech-uw.github.io/emr-lis-ig/StructureDefinition/emr-lab-diagnostic-report |
Version: | 0.2.0 |
Name: | EmrLisDiagnosticReport |
Title: | EMR-LIS Diagnostic Report |
Status: | Active as of 2021-07-27T07:51:26+00:00 |
Definition: | DiagnosticReport resource created by a LIS that representing results of an order submitted from an EMR System |
Publisher: | I-TECH-UW |
Source Resource: | XML / JSON / Turtle |
The official URL for this profile is:
http://i-tech-uw.github.io/emr-lis-ig/StructureDefinition/emr-lab-diagnostic-report
Description of Profiles, Differentials, Snapshots and how the different presentations work.
This structure is derived from DiagnosticReportUvIps
This structure is derived from DiagnosticReportUvIps
Name | Flags | Card. | Type | Description & Constraints |
---|---|---|---|---|
DiagnosticReport | 0..* | DiagnosticReportUvIps | A Diagnostic report - a combination of request information, atomic results, images, interpretation, as well as formatted reports | |
status | 1..1 | code | registered | partial | preliminary | final + Binding: EMR-LIS Diagnostic Report Status Flag (required) | |
code | ||||
coding | 1..* | CodingIPS | A reference to a code defined by a terminology system Binding: EMR Lab Order Code (required) | |
result | 0..* | Reference(EMR-LIS Observation) | Observation results included in the diagnostic report. | |
result:observation-results | 0..* | Reference(EMR-LIS Observation) | Observations | |
Documentation for this format |
Name | Flags | Card. | Type | Description & Constraints |
---|---|---|---|---|
DiagnosticReport | S | 0..* | DiagnosticReportUvIps | A Diagnostic report - a combination of request information, atomic results, images, interpretation, as well as formatted reports |
id | Σ | 0..1 | string | Logical id of this artifact |
meta | Σ | 0..1 | Meta | Metadata about the resource |
implicitRules | ?!Σ | 0..1 | uri | A set of rules under which this content was created |
language | 0..1 | code | Language of the resource content Binding: CommonLanguages (preferred) Max Binding: AllLanguages: A human language. | |
text | 0..1 | Narrative | Text summary of the resource, for human interpretation | |
contained | 0..* | Resource | Contained, inline Resources | |
extension | 0..* | Extension | Additional content defined by implementations | |
modifierExtension | ?! | 0..* | Extension | Extensions that cannot be ignored |
identifier | Σ | 0..* | Identifier | Business identifier for report |
basedOn | 0..* | Reference(CarePlan | ImmunizationRecommendation | MedicationRequest | NutritionOrder | ServiceRequest) | What was requested | |
status | ?!SΣ | 1..1 | code | registered | partial | preliminary | final + Binding: EMR-LIS Diagnostic Report Status Flag (required) Fixed Value: final |
category | S | 1..1 | CodeableConceptIPS | Concept - reference to a terminology or just text Binding: DiagnosticServiceSectionCodes (example): Codes for diagnostic service sections. |
code | S | 1..1 | CodeableConceptIPS | Concept - reference to a terminology or just text Binding: LOINCDiagnosticReportCodes (preferred): Codes that describe Diagnostic Reports. |
id | 0..1 | string | Unique id for inter-element referencing | |
Slices for extension | 0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url | |
coding | S | 1..* | CodingIPS | A reference to a code defined by a terminology system Binding: EMR Lab Order Code (required) |
text | SΣ | 0..1 | string | Plain text representation of the concept |
subject | SΣ | 1..1 | Reference(Patient (IPS) | Group) | The subject of the report - usually, but not always, the patient |
id | 0..1 | string | Unique id for inter-element referencing | |
Slices for extension | 0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url | |
reference | SΣI | 1..1 | string | Literal reference, Relative, internal or absolute URL |
type | Σ | 0..1 | uri | Type the reference refers to (e.g. "Patient") Binding: ResourceType (extensible): Aa resource (or, for logical models, the URI of the logical model). |
identifier | Σ | 0..1 | Identifier | Logical reference, when literal reference is not known |
display | Σ | 0..1 | string | Text alternative for the resource |
encounter | Σ | 0..1 | Reference(Encounter) | Health care event when test ordered |
effective[x] | SΣ | 1..1 | Clinically relevant time/time-period for report | |
effective[x]:All Types | Content/Rules for all Types | |||
id | 0..1 | string | Unique id for inter-element referencing | |
data-absent-reason | S | 0..1 | code | effective[x] absence reason URL: http://hl7.org/fhir/StructureDefinition/data-absent-reason Slice: Unordered, Open by value:url Binding: DataAbsentReason (required): Used to specify why the normally expected content of the data element is missing. |
effectiveDateTime | dateTime | |||
effectivePeriod | Period | |||
issued | Σ | 0..1 | instant | DateTime this version was made |
performer | SΣ | 0..* | Reference(Practitioner (IPS) | PractitionerRole (IPS) | Organization (IPS) | CareTeam) | Responsible Diagnostic Service |
resultsInterpreter | Σ | 0..* | Reference(Practitioner | PractitionerRole | Organization | CareTeam) | Primary result interpreter |
specimen | 0..* | Reference(Specimen (IPS)) | Specimens this report is based on | |
Slices for result | S | 0..* | Reference(EMR-LIS Observation) | Observation results included in the diagnostic report. Slice: Unordered, Open by profile:$this.resolve() |
result:observation-results | S | 0..* | Reference(EMR-LIS Observation) | Observations |
imagingStudy | 0..* | Reference(ImagingStudy) | Reference to full details of imaging associated with the diagnostic report | |
media | Σ | 0..* | BackboneElement | Key images associated with this report |
id | 0..1 | string | Unique id for inter-element referencing | |
extension | 0..* | Extension | Additional content defined by implementations | |
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized |
comment | 0..1 | string | Comment about the image (e.g. explanation) | |
link | Σ | 1..1 | Reference(Media) | Reference to the image source |
conclusion | 0..1 | string | Clinical conclusion (interpretation) of test results | |
conclusionCode | 0..* | CodeableConcept | Codes for the clinical conclusion of test results Binding: SNOMEDCTClinicalFindings (example): Diagnosis codes provided as adjuncts to the report. | |
presentedForm | 0..* | Attachment | Entire report as issued | |
Documentation for this format |
Name | Flags | Card. | Type | Description & Constraints |
---|---|---|---|---|
DiagnosticReport | 0..* | DiagnosticReportUvIps | A Diagnostic report - a combination of request information, atomic results, images, interpretation, as well as formatted reports | |
status | ?!Σ | 1..1 | code | registered | partial | preliminary | final + Binding: EMR-LIS Diagnostic Report Status Flag (required) Fixed Value: final |
category | 1..1 | CodeableConceptIPS | Concept - reference to a terminology or just text Binding: DiagnosticServiceSectionCodes (example): Codes for diagnostic service sections. | |
code | 1..1 | CodeableConceptIPS | Concept - reference to a terminology or just text Binding: LOINCDiagnosticReportCodes (preferred): Codes that describe Diagnostic Reports. | |
coding | 1..* | CodingIPS | A reference to a code defined by a terminology system Binding: EMR Lab Order Code (required) | |
text | Σ | 0..1 | string | Plain text representation of the concept |
subject | Σ | 1..1 | Reference(Patient (IPS) | Group) | The subject of the report - usually, but not always, the patient |
reference | ΣI | 1..1 | string | Literal reference, Relative, internal or absolute URL |
effective[x] | Σ | 1..1 | Clinically relevant time/time-period for report | |
effective[x]:All Types | Content/Rules for all Types | |||
data-absent-reason | 0..1 | code | effective[x] absence reason URL: http://hl7.org/fhir/StructureDefinition/data-absent-reason Slice: Unordered, Open by value:url Binding: DataAbsentReason (required): Used to specify why the normally expected content of the data element is missing. | |
effectiveDateTime | dateTime | |||
effectivePeriod | Period | |||
performer | Σ | 0..* | Reference(Practitioner (IPS) | PractitionerRole (IPS) | Organization (IPS) | CareTeam) | Responsible Diagnostic Service |
Slices for result | 0..* | Reference(EMR-LIS Observation) | Observation results included in the diagnostic report. Slice: Unordered, Open by profile:$this.resolve() | |
result:observation-results | 0..* | Reference(EMR-LIS Observation) | Observations | |
Documentation for this format |
This structure is derived from DiagnosticReportUvIps
Differential View
This structure is derived from DiagnosticReportUvIps
Name | Flags | Card. | Type | Description & Constraints |
---|---|---|---|---|
DiagnosticReport | 0..* | DiagnosticReportUvIps | A Diagnostic report - a combination of request information, atomic results, images, interpretation, as well as formatted reports | |
status | 1..1 | code | registered | partial | preliminary | final + Binding: EMR-LIS Diagnostic Report Status Flag (required) | |
code | ||||
coding | 1..* | CodingIPS | A reference to a code defined by a terminology system Binding: EMR Lab Order Code (required) | |
result | 0..* | Reference(EMR-LIS Observation) | Observation results included in the diagnostic report. | |
result:observation-results | 0..* | Reference(EMR-LIS Observation) | Observations | |
Documentation for this format |
Snapshot View
Name | Flags | Card. | Type | Description & Constraints |
---|---|---|---|---|
DiagnosticReport | S | 0..* | DiagnosticReportUvIps | A Diagnostic report - a combination of request information, atomic results, images, interpretation, as well as formatted reports |
id | Σ | 0..1 | string | Logical id of this artifact |
meta | Σ | 0..1 | Meta | Metadata about the resource |
implicitRules | ?!Σ | 0..1 | uri | A set of rules under which this content was created |
language | 0..1 | code | Language of the resource content Binding: CommonLanguages (preferred) Max Binding: AllLanguages: A human language. | |
text | 0..1 | Narrative | Text summary of the resource, for human interpretation | |
contained | 0..* | Resource | Contained, inline Resources | |
extension | 0..* | Extension | Additional content defined by implementations | |
modifierExtension | ?! | 0..* | Extension | Extensions that cannot be ignored |
identifier | Σ | 0..* | Identifier | Business identifier for report |
basedOn | 0..* | Reference(CarePlan | ImmunizationRecommendation | MedicationRequest | NutritionOrder | ServiceRequest) | What was requested | |
status | ?!SΣ | 1..1 | code | registered | partial | preliminary | final + Binding: EMR-LIS Diagnostic Report Status Flag (required) Fixed Value: final |
category | S | 1..1 | CodeableConceptIPS | Concept - reference to a terminology or just text Binding: DiagnosticServiceSectionCodes (example): Codes for diagnostic service sections. |
code | S | 1..1 | CodeableConceptIPS | Concept - reference to a terminology or just text Binding: LOINCDiagnosticReportCodes (preferred): Codes that describe Diagnostic Reports. |
id | 0..1 | string | Unique id for inter-element referencing | |
Slices for extension | 0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url | |
coding | S | 1..* | CodingIPS | A reference to a code defined by a terminology system Binding: EMR Lab Order Code (required) |
text | SΣ | 0..1 | string | Plain text representation of the concept |
subject | SΣ | 1..1 | Reference(Patient (IPS) | Group) | The subject of the report - usually, but not always, the patient |
id | 0..1 | string | Unique id for inter-element referencing | |
Slices for extension | 0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url | |
reference | SΣI | 1..1 | string | Literal reference, Relative, internal or absolute URL |
type | Σ | 0..1 | uri | Type the reference refers to (e.g. "Patient") Binding: ResourceType (extensible): Aa resource (or, for logical models, the URI of the logical model). |
identifier | Σ | 0..1 | Identifier | Logical reference, when literal reference is not known |
display | Σ | 0..1 | string | Text alternative for the resource |
encounter | Σ | 0..1 | Reference(Encounter) | Health care event when test ordered |
effective[x] | SΣ | 1..1 | Clinically relevant time/time-period for report | |
effective[x]:All Types | Content/Rules for all Types | |||
id | 0..1 | string | Unique id for inter-element referencing | |
data-absent-reason | S | 0..1 | code | effective[x] absence reason URL: http://hl7.org/fhir/StructureDefinition/data-absent-reason Slice: Unordered, Open by value:url Binding: DataAbsentReason (required): Used to specify why the normally expected content of the data element is missing. |
effectiveDateTime | dateTime | |||
effectivePeriod | Period | |||
issued | Σ | 0..1 | instant | DateTime this version was made |
performer | SΣ | 0..* | Reference(Practitioner (IPS) | PractitionerRole (IPS) | Organization (IPS) | CareTeam) | Responsible Diagnostic Service |
resultsInterpreter | Σ | 0..* | Reference(Practitioner | PractitionerRole | Organization | CareTeam) | Primary result interpreter |
specimen | 0..* | Reference(Specimen (IPS)) | Specimens this report is based on | |
Slices for result | S | 0..* | Reference(EMR-LIS Observation) | Observation results included in the diagnostic report. Slice: Unordered, Open by profile:$this.resolve() |
result:observation-results | S | 0..* | Reference(EMR-LIS Observation) | Observations |
imagingStudy | 0..* | Reference(ImagingStudy) | Reference to full details of imaging associated with the diagnostic report | |
media | Σ | 0..* | BackboneElement | Key images associated with this report |
id | 0..1 | string | Unique id for inter-element referencing | |
extension | 0..* | Extension | Additional content defined by implementations | |
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized |
comment | 0..1 | string | Comment about the image (e.g. explanation) | |
link | Σ | 1..1 | Reference(Media) | Reference to the image source |
conclusion | 0..1 | string | Clinical conclusion (interpretation) of test results | |
conclusionCode | 0..* | CodeableConcept | Codes for the clinical conclusion of test results Binding: SNOMEDCTClinicalFindings (example): Diagnosis codes provided as adjuncts to the report. | |
presentedForm | 0..* | Attachment | Entire report as issued | |
Documentation for this format |
Other representations of profile: CSV, Excel, Schematron
Path | Conformance | ValueSet / Code |
DiagnosticReport.language | preferred | CommonLanguages Max Binding: AllLanguages |
DiagnosticReport.status | required | Fixed Value: final |
DiagnosticReport.category | example | DiagnosticServiceSectionCodes |
DiagnosticReport.code | preferred | LOINCDiagnosticReportCodes |
DiagnosticReport.code.coding | required | EmrLisOrderCodeVS |
DiagnosticReport.subject.type | extensible | ResourceType |
DiagnosticReport.conclusionCode | example | SNOMEDCTClinicalFindings |
Id | Path | Details | Requirements |
dom-2 | DiagnosticReport | If the resource is contained in another resource, it SHALL NOT contain nested Resources : contained.contained.empty() | |
dom-3 | DiagnosticReport | 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 | DiagnosticReport | 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 | DiagnosticReport | If a resource is contained in another resource, it SHALL NOT have a security label : contained.meta.security.empty() | |
dom-6 | DiagnosticReport | A resource should have narrative for robust management : text.`div`.exists() | |
ele-1 | DiagnosticReport.meta | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | DiagnosticReport.implicitRules | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | DiagnosticReport.language | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | DiagnosticReport.text | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | DiagnosticReport.extension | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ext-1 | DiagnosticReport.extension | Must have either extensions or value[x], not both : extension.exists() != value.exists() | |
ele-1 | DiagnosticReport.modifierExtension | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ext-1 | DiagnosticReport.modifierExtension | Must have either extensions or value[x], not both : extension.exists() != value.exists() | |
ele-1 | DiagnosticReport.identifier | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | DiagnosticReport.basedOn | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | DiagnosticReport.status | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | DiagnosticReport.category | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | DiagnosticReport.code | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | DiagnosticReport.code.extension | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ext-1 | DiagnosticReport.code.extension | Must have either extensions or value[x], not both : extension.exists() != value.exists() | |
ele-1 | DiagnosticReport.code.coding | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | DiagnosticReport.code.text | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | DiagnosticReport.subject | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | DiagnosticReport.subject.extension | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ext-1 | DiagnosticReport.subject.extension | Must have either extensions or value[x], not both : extension.exists() != value.exists() | |
ele-1 | DiagnosticReport.subject.reference | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | DiagnosticReport.subject.type | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | DiagnosticReport.subject.identifier | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | DiagnosticReport.subject.display | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | DiagnosticReport.encounter | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | DiagnosticReport.effective[x] | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | DiagnosticReport.effective[x].extension | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ext-1 | DiagnosticReport.effective[x].extension | Must have either extensions or value[x], not both : extension.exists() != value.exists() | |
ele-1 | DiagnosticReport.issued | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | DiagnosticReport.performer | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | DiagnosticReport.resultsInterpreter | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | DiagnosticReport.specimen | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | DiagnosticReport.result | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | DiagnosticReport.result:observation-results | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | DiagnosticReport.imagingStudy | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | DiagnosticReport.media | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | DiagnosticReport.media.extension | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ext-1 | DiagnosticReport.media.extension | Must have either extensions or value[x], not both : extension.exists() != value.exists() | |
ele-1 | DiagnosticReport.media.modifierExtension | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ext-1 | DiagnosticReport.media.modifierExtension | Must have either extensions or value[x], not both : extension.exists() != value.exists() | |
ele-1 | DiagnosticReport.media.comment | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | DiagnosticReport.media.link | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | DiagnosticReport.conclusion | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | DiagnosticReport.conclusionCode | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | DiagnosticReport.presentedForm | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) |