TOP / Clinical Research / Top-Level Object Hierarchy / v0.1 strawman
May 2026 · derived from OOUX v0.2 (78 flat objects) · for Bo's markup
Eight top-level objects, OOUX-style. Sub-objects nested where they compose. Cross-cutting horizontals shown below as ribs that any top-level can reference. The four scenarios v0.1 has to demonstrate are tagged on the cards they touch, so coverage is visible without a separate matrix. Status (2026-05-07): all seven boundary decisions resolved. The hierarchy is stable.
Scenarios
1 · Blood-draw evidentiary chain
2 · AE pattern → device-line owner
3 · Deviation found on monitoring visit
4 · Query (discrepancy) lifecycle
Sponsor
runs the trial
- Sponsor identity and type
- Parent organization
- Regulatory and finance contacts
- Sponsor is mostly an apex reference. The Contracts, Budgets, Payments, Submissions it signs and authors live as horizontals.
Study
trial design and definition (USDM-aligned)
- Protocol
- Schedule of Assessments
- Arm
- Endpoint
- Inclusion / Exclusion Criteria
- Amendment
- Plan (SAP, DMP, recruitment, comms)
- Milestone, Study Timeline
- Enrollment Forecast, Performance Metric
- Study Startup Package
Site
where conduct happens
- Investigator
- Site Staff (delegated)
- Site Network membership
- Equipment (site-bound)
- Storage Location (site-bound)
- Site Performance Metric
- Sites can exist independently of any single Study; they enter Studies through CTAs.
Participant (Subject)
the person being studied
- Informed Consent (and reconsent envelope)
- Enrollment (event-typed)
- Screen Fail
- Medical History
- Concomitant Medication
- Person ≠ Participant. Person is a horizontal; Participant carries the trial-bound subject identity.
Visit
unit of trial conduct in time
- Activity (the verb-level act)
- Task
- Assessment
- CRF
- Lab Result
- Questionnaire
- Other Clinical Event (boundary; see decisions)
- The blood-draw chain lives here as a Visit Activity that generates a Sample.
Investigational Product
what is being tested
- Drug / Biologic / Cell / Gene / Vaccine
- Investigational Device (sub-type)
- Lot, batch, label, blinding
- Lots, devices, and components are the anchor for the AE-pattern → device-line scenario.
Oversight Body
governance and compliance apex
- Audit (commissioned)
- Monitoring Visit
- Finding
- CAPA
- Risk Assessment
- Regulatory Submission
- Interim Analysis (DSMB)
- IRB, EC, DSMB, IBC, scientific review board live here. Audit Trail Entry is a horizontal.
Event
things that happen and have to be reported
- Adverse Event
- Serious Adverse Event (specialization of AE)
- Deviation
- Discrepancy / Query
- Safety Signal
- Safety Report (DSUR, PBRER, IND safety)
- This is the container that makes the deviation, AE-pattern, and query scenarios all walk the same shape.
Cross-cutting horizontals · referenced by any top-level
These are the ribs that connect the spines. Each can be referenced from any of the eight top-levels and carries its own NGSI-LD entity type. None of them carry a top-level operator mental model on their own.
Records
DocumentReportAudit Trail EntryCommunication LogLog
Money
ContractBudgetBudget ForecastPayment
Systems
SystemSystem ConfigurationServiceService ConfigurationData Transfer
People
PersonPerson RoleUser RoleCredentialTraining Record
Material
SampleShipmentStorage LocationEquipment (vendor-owned)
Work
Action ItemData Quality Metric
Classifiers
TagTherapeutic AreaRegionCountryRegulatory AuthorityDate (object form)
Boundary decisions · Bo's calls (2026-05-07)
- Visit as top-level vs sub of Study. Locked: top-level. Operators carry "today's visits" as a primary mental anchor; folding under Study would force a Schedule-of-Assessments traversal for the most common operator query.
- Event as one container vs split. Locked: one container. Event is a single top-level holding AE, SAE, Deviation, Discrepancy, Safety Signal, Safety Report, and related occurrences. Discrimination by sub-type (eventCategory enum) rather than by class split. Operators do not mentally separate "safety event" from "conduct event" until they are filing a report.
- IP as top-level vs sub of Study. Locked: top-level. Lots, devices, and components anchor the AE-pattern scenario independently of the protocol. The USDM InvestigationalIntervention shape projects forward at emission time.
- Sample as horizontal vs ninth top-level. Locked: horizontal for v0.1, with future-promotion note. Sample stays under horizontals (generated by Visit Activities). Lab and biobank workflows where Sample is the central operator anchor may justify promotion in v0.2 or in domain-specific reference graphs (e.g., a cell-therapy graph). Tracked.
- Other Clinical Event placement. Locked: Path C, both with disambiguation. Visit gets a new sub-object Visit Observation (routine, non-reportable, per-Visit). Event gets Other Clinical Event (reportable, lives in the Event lifecycle). A 0..N derivedFrom relationship from Other Clinical Event back to Visit Observation preserves the audit chain when something noticed today becomes a categorized Event tomorrow. Reportability handoff is a categorical CRA action ("Promote Visit Observation to Event"), not a status flag transition. Tracked open: the operational boundary between "routine observation" and "reportable event" is a UX/workflow design problem; the model gives the entities, the UI determines the clarity of the handoff.
- Action Item placement. Locked: horizontal. Every top-level produces and assigns Action Items, so it lives across the spine, not under one top-level.
- Equipment placement. Locked: all horizontal. Bo's lean accepted. Site-bound vs vendor-owned vs participant-loaned distinction lives on an Equipment attribute (equipmentBinding enum: SITE_BOUND, VENDOR_OWNED, PARTICIPANT_LOANED) rather than a structural split. Site binding carries through a Relationship rather than hierarchical placement.
- The "ninth" question. Locked: Path Z, eight is the cap for the clinical-trials reference graph; specialty graphs elevate what they need. The trials commons (top:) stays at exactly eight top-levels: Sponsor, Study, Site, Participant, Visit, Investigational Product, Oversight Body, Event. Specialty reference graphs (a future cell-therapy graph at topct:, a future rare-disease graph at toprd:, etc.) import the same horizontals and elevate domain-specific anchors (Sample, Supply/Logistics, etc.) to top-level in their own contexts. This honors KISS for the trials commons, honors the federation pattern for specialty domains, and keeps the Sample-horizontal-with-future-promotion-note (locked above) consistent rather than arbitrary.
All seven boundary decisions are resolved. The OOUX hierarchy is now stable at eight top-levels for the clinical-trials reference graph. Sub-objects locked: Visit Observation (under Visit), Other Clinical Event (under Event), derivedFrom audit-chain link from Other Clinical Event back to Visit Observation. Equipment fully promoted to horizontal with equipmentBinding enum carrying the SITE_BOUND / VENDOR_OWNED / PARTICIPANT_LOANED distinction. Sample remains horizontal in the trials commons; specialty reference graphs may elevate it.