AnpherosAnpheros PlatformDevelopers

FHIR R4 DiagnosticReport example: lab panel

DiagnosticReport is the report as a whole: what was ordered, who issued it and when. The individual values are Observations listed in result; the report does not repeat them.

The DiagnosticReport in JSON

{
  "resourceType": "DiagnosticReport",
  "id": "lipid-panel",
  "status": "final",
  "category": [
    {
      "coding": [
        {
          "system": "http://terminology.hl7.org/CodeSystem/v2-0074",
          "code": "LAB",
          "display": "Laboratory"
        }
      ]
    }
  ],
  "code": {
    "coding": [
      {
        "system": "http://loinc.org",
        "code": "24331-1",
        "display": "Lipid 1996 panel - Serum or Plasma"
      }
    ],
    "text": "Lipid panel"
  },
  "subject": {
    "reference": "Patient/example",
    "display": "Jane Doe"
  },
  "effectiveDateTime": "2026-10-02T07:45:00-05:00",
  "issued": "2026-10-02T13:10:00-05:00",
  "performer": [
    {
      "reference": "Organization/lab",
      "display": "Springfield Clinical Laboratory"
    }
  ],
  "result": [
    {
      "reference": "Observation/cholesterol",
      "display": "Cholesterol"
    },
    {
      "reference": "Observation/triglyceride",
      "display": "Triglyceride"
    },
    {
      "reference": "Observation/hdl",
      "display": "HDL cholesterol"
    },
    {
      "reference": "Observation/ldl",
      "display": "LDL cholesterol (calculated)"
    }
  ],
  "conclusion": "Results reviewed."
}

Validator result: raw JSON ยท open the validator

The elements that matter

ElementCardinalityNotes
status1..1final, preliminary, amended and others.
code1..1The panel or test: LOINC 24331-1 for a lipid panel.
result0..*References to the Observations; each one is a separate resource.
issued0..1When this version of the report was released.
presentedForm0..*The original PDF, if you keep it, as an Attachment.

To send the report and its results together, put them in one transaction Bundle so the references resolve on the server.

The full definition is in the FHIR R4 DiagnosticReport specification.

Common mistakes and the errors they cause

References as strings

A Reference is an object with a reference element, not a bare string.

Missing code

DiagnosticReport.code is 1..1.

Status outside the value set

completed belongs to other resources; reports use final.

Store it in a real FHIR R4 serverA free sandbox key gives you 30 synthetic patients and the full API, including POST /fhir/R4/DiagnosticReport and $validate.
Get a free API key

More examples

Related guides