profiles / StructureDefinition
OMOP-Convertible DiagnosticReport → note
A DiagnosticReport that carries free-text content (conclusion or presentedForm attachments) and produces a row in the OMOP `note` table to preserve the unstructured clinical narrative. Unlike the measurement/observation/procedure_occurrence edges, the code is NOT a routing key — note rows are unstructured. A single DiagnosticReport may produce both a domain-routed row and a note row.
| Path | Card | Type | Binding / Fixed | Comment |
|---|---|---|---|---|
| DiagnosticReport.status | fhir/diagnostic-report-status required | |||
| DiagnosticReport.code | 1..* MS | Required for note_title and traceability. No domain binding — notes are unstructured. | ||
| DiagnosticReport.subject | 1..* | Reference | Required for note.person_id. | |
| DiagnosticReport.effective[x] | 1..* MS | Required for note.note_date / note_datetime. | ||
| DiagnosticReport.conclusion | MS | Either conclusion or presentedForm[] must be present — enforced by the conclusion-or-presentedForm constraint. | ||
| DiagnosticReport.presentedForm | MS | Either conclusion or presentedForm[] must be present. |
Raw JSON
{
"resourceType": "StructureDefinition",
"id": "omop-diagnosticreport-note",
"url": "https://fhir2omop.health-samurai.io/StructureDefinition/omop-diagnosticreport-note",
"version": "0.1.0",
"name": "OmopDiagnosticReportNote",
"title": "OMOP-Convertible DiagnosticReport → note",
"status": "draft",
"experimental": true,
"description": "A DiagnosticReport that carries free-text content (conclusion or presentedForm attachments) and produces a row in the OMOP `note` table to preserve the unstructured clinical narrative. Unlike the measurement/observation/procedure_occurrence edges, the code is NOT a routing key — note rows are unstructured. A single DiagnosticReport may produce both a domain-routed row and a note row.",
"fhirVersion": "4.0.1",
"kind": "resource",
"abstract": false,
"type": "DiagnosticReport",
"baseDefinition": "http://hl7.org/fhir/StructureDefinition/DiagnosticReport",
"derivation": "constraint",
"extension": [
{
"url": "https://fhir2omop.health-samurai.io/StructureDefinition/omop-target-table",
"valueString": "note"
},
{
"url": "https://fhir2omop.health-samurai.io/StructureDefinition/omop-edge",
"valueString": "DiagnosticReport__note"
}
],
"differential": {
"element": [
{
"id": "DiagnosticReport.status",
"path": "DiagnosticReport.status",
"binding": {
"strength": "required",
"valueSet": "http://hl7.org/fhir/ValueSet/diagnostic-report-status",
"description": "final | amended | corrected"
}
},
{
"id": "DiagnosticReport.code",
"path": "DiagnosticReport.code",
"min": 1,
"mustSupport": true,
"comment": "Required for note_title and traceability. No domain binding — notes are unstructured."
},
{
"id": "DiagnosticReport.subject",
"path": "DiagnosticReport.subject",
"min": 1,
"type": [
{
"code": "Reference",
"targetProfile": [
"http://hl7.org/fhir/StructureDefinition/Patient"
]
}
],
"comment": "Required for note.person_id."
},
{
"id": "DiagnosticReport.effective[x]",
"path": "DiagnosticReport.effective[x]",
"min": 1,
"mustSupport": true,
"comment": "Required for note.note_date / note_datetime."
},
{
"id": "DiagnosticReport.conclusion",
"path": "DiagnosticReport.conclusion",
"mustSupport": true,
"comment": "Either conclusion or presentedForm[] must be present — enforced by the conclusion-or-presentedForm constraint."
},
{
"id": "DiagnosticReport.presentedForm",
"path": "DiagnosticReport.presentedForm",
"mustSupport": true,
"comment": "Either conclusion or presentedForm[] must be present."
}
],
"constraint": []
},
"constraint": [
{
"key": "omop-note-1",
"severity": "error",
"human": "Either conclusion or presentedForm must be present to create a note row.",
"expression": "conclusion.exists() or presentedForm.exists()"
}
],
"targetTable": "note",
"edgeKey": "DiagnosticReport__note"
}