Model 2.0IG 3.4Content 1.0.0Curated educational coverage

Synthetic example / AE

A date can be precise about uncertainty

Keep a complete date, a partial date and a missing end date distinct.

The second start value tells us a month but no day. Replacing it with February 1 would manufacture precision. Similarly, a null end value is not proof that an event is ongoing. Those interpretation decisions are intentionally outside this small transformation. A reliable pipeline can preserve the source faithfully while leaving an unsupported inference unmade.

01 / The collection

Original synthetic input · JSON
[
  {
    "id": "event-a",
    "study": "CLD-SYN-001",
    "subject": "SYN-001",
    "report": "Brief discomfort after walking",
    "start": "2025-02-03",
    "end": "2025-02-04"
  },
  {
    "id": "event-b",
    "study": "CLD-SYN-001",
    "subject": "SYN-002",
    "report": "Intermittent fictional symptom",
    "start": "2025-02",
    "end": null
  }
]

02 / The representation

2 records · all fields included
AE synthetic output
STUDYIDDOMAINUSUBJIDAESEQAETERMAESTDTCAEENDTCAESER
CLD-SYN-001AESYN-0011Brief discomfort after walking2025-02-032025-02-04null (missing)
CLD-SYN-001AESYN-0021Intermittent fictional symptom2025-02null (missing)null (missing)
Inspect output JSON and CSV
Output JSON
[
  {
    "STUDYID": "CLD-SYN-001",
    "DOMAIN": "AE",
    "USUBJID": "SYN-001",
    "AESEQ": 1,
    "AETERM": "Brief discomfort after walking",
    "AESTDTC": "2025-02-03",
    "AEENDTC": "2025-02-04",
    "AESER": null
  },
  {
    "STUDYID": "CLD-SYN-001",
    "DOMAIN": "AE",
    "USUBJID": "SYN-002",
    "AESEQ": 1,
    "AETERM": "Intermittent fictional symptom",
    "AESTDTC": "2025-02",
    "AEENDTC": null,
    "AESER": null
  }
]

Output CSV
STUDYID,DOMAIN,USUBJID,AESEQ,AETERM,AESTDTC,AEENDTC,AESER
CLD-SYN-001,AE,SYN-001,1,Brief discomfort after walking,2025-02-03,2025-02-04,
CLD-SYN-001,AE,SYN-002,1,Intermittent fictional symptom,2025-02,,

03 / The decisions between them

study → STUDYID
Copy study identity.
subject → USUBJID
Copy the fictional subject identity.
report → AETERM
Copy independently authored uncoded wording.
start → AESTDTC
Keep full or partial precision unchanged.
end → AEENDTC
Keep null distinct from a date; do not infer ongoing status.
(authored) → DOMAIN
Set constant AE for this teaching example.
(authored) → AESEQ
Assign fixed example sequence numbers within each subject; not a general sequencing rule.
(not collected) → AESER
Missing categorical values stay null; no controlled terminology lookup.

Trace each row

  • event-a → adverse-events-timing:1
  • event-b → adverse-events-timing:2

JSON null becomes an empty CSV cell. Empty CSV cells cannot distinguish absent from empty text; use JSON for that distinction.

Read the variable lessons

Follow the source

Original ClinDevLab explanations. Publisher material is linked, not reproduced. Reviewed 8 October 2026.

  • SDTM 2.0https://www.cdisc.org/standards/foundational/sdtm/sdtm-v2-0 · CDISC · 2.0 · accessed 2026-10-08
  • SDTMIG 3.4https://www.cdisc.org/standards/foundational/sdtmig/sdtmig-v3-4 · CDISC · 3.4 · accessed 2026-10-08