Case Based Surveillance Implementation Guide
0.2.1 - ci-build
Case Based Surveillance Implementation Guide - Local Development build (v0.2.1). See the Directory of published versions
Official URL: http://cbsig.chai.gatech.edu/StructureDefinition/us-cbs-lab-diagnosticreport | Version: 0.2.1 | |||
Active as of 2021-01-01 | Computable Name: USCaseBasedSurveillanceLabDiagnosticReport |
This profile sets minimum expectations for the Observation resource to represent data requested as part of the U.S. Public Health Case Based Surveillance messaging guides. It identifies which core elements, extensions, vocabularies and value sets SHALL be present in the resource when using this profile. This profile is built on top of the [US Core Laboratory Result Observation] profile.
Example Usage Scenarios:
The following are example usage scenarios for the US CBS Lab Observation profile:
The Center for Disease Control’s (CDC) Message Mapping Guides (MMGs) provide guidance on the transmission of records from jurisdictions to case based surveillance programs. MMG documents are publicly available through the CDC’s website. Lab data is typically captured in one of two ways:
The following data-elements must always be present (Mandatory definition]) or must be supported if the data is present in the sending system (Must Support definition). They are presented below in a simple human-readable explanation. Profile specific guidance and examples are provided as well. The Formal Profile Definition below provides the formal summary, definitions, and terminology requirements.
Each Observation must have:
Each Observation must support:
Profile specific implementation guidance:
Description of Profiles, Differentials, Snapshots and how the different presentations work.
This structure is derived from USCoreDiagnosticReportProfileLaboratoryReporting
Summary
Must-Support: 2 elements
Structures
This structure refers to these other structures:
Extensions
This structure refers to these extensions:
This structure is derived from USCoreDiagnosticReportProfileLaboratoryReporting
Name | Flags | Card. | Type | Description & Constraints |
---|---|---|---|---|
DiagnosticReport | 0..* | USCoreDiagnosticReportProfileLaboratoryReporting | 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: DiagnosticReportStatus (required) |
Slices for category | SΣ | 1..* | CodeableConcept | Service category Slice: Unordered, Open by pattern:$this Binding: DiagnosticServiceSectionCodes (example): Codes for diagnostic service sections. |
category:LaboratorySlice | SΣ | 1..1 | CodeableConcept | Service category Binding: DiagnosticServiceSectionCodes (example): Codes for diagnostic service sections. Required Pattern: At least the following |
id | 0..1 | string | Unique id for inter-element referencing | |
extension | 0..* | Extension | Additional content defined by implementations | |
coding | 1..* | Coding | Code defined by a terminology system Fixed Value: (complex) | |
id | 0..1 | string | Unique id for inter-element referencing | |
extension | 0..* | Extension | Additional content defined by implementations | |
system | 1..1 | uri | Identity of the terminology system Fixed Value: http://terminology.hl7.org/CodeSystem/v2-0074 | |
version | 0..1 | string | Version of the system - if relevant | |
code | 1..1 | code | Symbol in syntax defined by the system Fixed Value: LAB | |
display | 0..1 | string | Representation defined by the system | |
userSelected | 0..1 | boolean | If this coding was chosen directly by the user | |
text | 0..1 | string | Plain text representation of the concept | |
code | SΣ | 1..1 | CodeableConcept | US Core Laboratory Report Order Code Binding: Combined ValueSet for Lab DiagnosticReport Code. (extensible) |
subject | SΣ | 1..1 | Reference(US Case Based Surveillance Patient Profile) | The subject of the report - usually, but not always, the patient |
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 | |
Slices for extension | 0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url | |
data-absent-reason | S | 0..1 | code | unknown | asked | temp | notasked | masked | unsupported | astext | error URL: http://hl7.org/fhir/StructureDefinition/data-absent-reason Binding: DataAbsentReason (required): Used to specify why the normally expected content of the data element is missing. |
effectiveDateTime | dateTime S | |||
effectivePeriod | Period | |||
issued | SΣ | 1..1 | instant | DateTime this version was made |
performer | SΣ | 0..1 | Reference(US Case Based Surveillance Performing Laboratory Profile) | Responsible Diagnostic Service |
resultsInterpreter | Σ | 0..* | Reference(Practitioner | PractitionerRole | Organization | CareTeam) | Primary result interpreter |
specimen | S | 0..* | Reference(Case Based Surveillance Specimen Profile) | Specimens this report is based on |
result | S | 0..* | Reference(US Case Based Surveillance Lab 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..* | USCoreDiagnosticReportProfileLaboratoryReporting | 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: DiagnosticReportStatus (required) |
Slices for category | Σ | 1..* | CodeableConcept | Service category Slice: Unordered, Open by pattern:$this Binding: DiagnosticServiceSectionCodes (example): Codes for diagnostic service sections. |
category:LaboratorySlice | Σ | 1..1 | CodeableConcept | Service category Binding: DiagnosticServiceSectionCodes (example): Codes for diagnostic service sections. Required Pattern: At least the following |
coding | 1..* | Coding | Code defined by a terminology system Fixed Value: (complex) | |
system | 1..1 | uri | Identity of the terminology system Fixed Value: http://terminology.hl7.org/CodeSystem/v2-0074 | |
code | 1..1 | code | Symbol in syntax defined by the system Fixed Value: LAB | |
code | Σ | 1..1 | CodeableConcept | US Core Laboratory Report Order Code Binding: Combined ValueSet for Lab DiagnosticReport Code. (extensible) |
subject | Σ | 1..1 | Reference(US Case Based Surveillance Patient Profile) | The subject of the report - usually, but not always, the patient |
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 | unknown | asked | temp | notasked | masked | unsupported | astext | error URL: http://hl7.org/fhir/StructureDefinition/data-absent-reason Binding: DataAbsentReason (required): Used to specify why the normally expected content of the data element is missing. | |
effectiveDateTime | dateTime | |||
issued | Σ | 1..1 | instant | DateTime this version was made |
performer | Σ | 0..1 | Reference(US Case Based Surveillance Performing Laboratory Profile) | Responsible Diagnostic Service |
specimen | 0..* | Reference(Case Based Surveillance Specimen Profile) | Specimens this report is based on | |
result | 0..* | Reference(US Case Based Surveillance Lab Observation) | Observations | |
Documentation for this format |
This structure is derived from USCoreDiagnosticReportProfileLaboratoryReporting
Summary
Must-Support: 2 elements
Structures
This structure refers to these other structures:
Extensions
This structure refers to these extensions:
Differential View
This structure is derived from USCoreDiagnosticReportProfileLaboratoryReporting
Snapshot View
Name | Flags | Card. | Type | Description & Constraints |
---|---|---|---|---|
DiagnosticReport | 0..* | USCoreDiagnosticReportProfileLaboratoryReporting | 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: DiagnosticReportStatus (required) |
Slices for category | SΣ | 1..* | CodeableConcept | Service category Slice: Unordered, Open by pattern:$this Binding: DiagnosticServiceSectionCodes (example): Codes for diagnostic service sections. |
category:LaboratorySlice | SΣ | 1..1 | CodeableConcept | Service category Binding: DiagnosticServiceSectionCodes (example): Codes for diagnostic service sections. Required Pattern: At least the following |
id | 0..1 | string | Unique id for inter-element referencing | |
extension | 0..* | Extension | Additional content defined by implementations | |
coding | 1..* | Coding | Code defined by a terminology system Fixed Value: (complex) | |
id | 0..1 | string | Unique id for inter-element referencing | |
extension | 0..* | Extension | Additional content defined by implementations | |
system | 1..1 | uri | Identity of the terminology system Fixed Value: http://terminology.hl7.org/CodeSystem/v2-0074 | |
version | 0..1 | string | Version of the system - if relevant | |
code | 1..1 | code | Symbol in syntax defined by the system Fixed Value: LAB | |
display | 0..1 | string | Representation defined by the system | |
userSelected | 0..1 | boolean | If this coding was chosen directly by the user | |
text | 0..1 | string | Plain text representation of the concept | |
code | SΣ | 1..1 | CodeableConcept | US Core Laboratory Report Order Code Binding: Combined ValueSet for Lab DiagnosticReport Code. (extensible) |
subject | SΣ | 1..1 | Reference(US Case Based Surveillance Patient Profile) | The subject of the report - usually, but not always, the patient |
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 | |
Slices for extension | 0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url | |
data-absent-reason | S | 0..1 | code | unknown | asked | temp | notasked | masked | unsupported | astext | error URL: http://hl7.org/fhir/StructureDefinition/data-absent-reason Binding: DataAbsentReason (required): Used to specify why the normally expected content of the data element is missing. |
effectiveDateTime | dateTime S | |||
effectivePeriod | Period | |||
issued | SΣ | 1..1 | instant | DateTime this version was made |
performer | SΣ | 0..1 | Reference(US Case Based Surveillance Performing Laboratory Profile) | Responsible Diagnostic Service |
resultsInterpreter | Σ | 0..* | Reference(Practitioner | PractitionerRole | Organization | CareTeam) | Primary result interpreter |
specimen | S | 0..* | Reference(Case Based Surveillance Specimen Profile) | Specimens this report is based on |
result | S | 0..* | Reference(US Case Based Surveillance Lab 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 | DiagnosticReportStatus |
DiagnosticReport.category | example | DiagnosticServiceSectionCodes |
DiagnosticReport.category:LaboratorySlice | example | Pattern: LAB |
DiagnosticReport.code | extensible | CBSLabDiagnosticReportVS |
DiagnosticReport.conclusionCode | example | SNOMEDCTClinicalFindings |
Id | Grade | Path | Details | Requirements |
dom-2 | error | DiagnosticReport | If the resource is contained in another resource, it SHALL NOT contain nested Resources : contained.contained.empty() | |
dom-3 | error | 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 | error | 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 | error | DiagnosticReport | If a resource is contained in another resource, it SHALL NOT have a security label : contained.meta.security.empty() | |
dom-6 | Best Practice | DiagnosticReport | A resource should have narrative for robust management : text.`div`.exists() | |
ele-1 | error | DiagnosticReport.meta | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | error | DiagnosticReport.implicitRules | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | error | DiagnosticReport.language | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | error | DiagnosticReport.text | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | error | DiagnosticReport.extension | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ext-1 | error | DiagnosticReport.extension | Must have either extensions or value[x], not both : extension.exists() != value.exists() | |
ele-1 | error | DiagnosticReport.modifierExtension | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ext-1 | error | DiagnosticReport.modifierExtension | Must have either extensions or value[x], not both : extension.exists() != value.exists() | |
ele-1 | error | DiagnosticReport.identifier | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | error | DiagnosticReport.basedOn | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | error | DiagnosticReport.status | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | error | DiagnosticReport.category | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | error | DiagnosticReport.category:LaboratorySlice | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | error | DiagnosticReport.code | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | error | DiagnosticReport.subject | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | error | DiagnosticReport.encounter | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | error | DiagnosticReport.effective[x] | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | error | DiagnosticReport.effective[x].extension | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ext-1 | error | DiagnosticReport.effective[x].extension | Must have either extensions or value[x], not both : extension.exists() != value.exists() | |
ele-1 | error | DiagnosticReport.effective[x].extension:dataAbsentReason | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ext-1 | error | DiagnosticReport.effective[x].extension:dataAbsentReason | Must have either extensions or value[x], not both : extension.exists() != value.exists() | |
ele-1 | error | DiagnosticReport.issued | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | error | DiagnosticReport.performer | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | error | DiagnosticReport.resultsInterpreter | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | error | DiagnosticReport.specimen | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | error | DiagnosticReport.result | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | error | DiagnosticReport.imagingStudy | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | error | DiagnosticReport.media | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | error | DiagnosticReport.media.extension | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ext-1 | error | DiagnosticReport.media.extension | Must have either extensions or value[x], not both : extension.exists() != value.exists() | |
ele-1 | error | DiagnosticReport.media.modifierExtension | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ext-1 | error | DiagnosticReport.media.modifierExtension | Must have either extensions or value[x], not both : extension.exists() != value.exists() | |
ele-1 | error | DiagnosticReport.media.comment | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | error | DiagnosticReport.media.link | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | error | DiagnosticReport.conclusion | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | error | DiagnosticReport.conclusionCode | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | error | DiagnosticReport.presentedForm | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) |