Patient
People from Synthea with demographics, location, visits, care plans, and provenance.
11,313 records · 22 data fields · 10 relationships
Relationship map — Patient highlighted
Click any node to explore its schema. Highlighted relationships connect to or from Patient.
Field definitions
searched as a name searched as an address searched as an identifier searched as prose feeds the semantic embedding
| Field | Type | Description |
|---|---|---|
first
folded into this row’s embedding
|
string |
First name of the patient. |
last
folded into this row’s embedding
|
string |
Last or surname of the patient. |
birth_date
|
datetime |
The date the patient was born. |
death_date
|
option<datetime> |
The date the patient died. |
prefix
|
string |
Name prefix, such as Mr., Mrs., Dr., etc. |
middle
|
option<string> |
Middle name of the patient. |
name_search_text
|
string |
Computed at import time from the name fields — the single column the proper-noun name search index reads. Not a Synthea column. |
suffix
|
option<string> |
Name suffix, such as PhD, MD, JD, etc. |
maiden
|
option<string> |
Maiden name of the patient. |
marital
folded into this row’s embedding
|
option<string> |
Marital status. M is married, S is single. |
race
folded into this row’s embedding
|
string |
Description of the patient's primary race. |
ethnicity
folded into this row’s embedding
|
string |
Description of the patient's primary ethnicity. |
gender
folded into this row’s embedding
|
string |
Gender. M is male, F is female. |
birthplace
|
string |
Name of the town where the patient was born. |
address
Folded into this row’s embedding as the street only — city, county and state are left out because every patient lives in Minneapolis, so they would make all patients look alike
|
string |
Patient's street address without commas or newlines. |
city
|
string |
Patient's address city. |
state
|
string |
Patient's address state. |
county
|
string |
Patient's address county. |
fips
|
string |
Patient's FIPS county code. |
zip
|
string |
Patient's zip code. |
location
|
option<geometry<point>> |
Latitude and longitude of the patient's address, collapsed into one point. |
record_id
|
string |
This patient's source id, stored verbatim — the record's identity. Not a search term — find patients by name. Not shown on the record's own page: the page's address already carries this id. |
Referenced by
Records that hold this record’s id, or are linked through an edge table
-
Visit
foreign key
encounter.patient_idon each visit -
Care plan
foreign key
careplan.patient_idon each care plan -
Diagnosis concept
edge table
has_condition— one row per patient and diagnosis concept -
Medication concept
edge table
has_medication— one row per patient and medication concept -
Procedure concept
edge table
has_procedure— one row per patient and procedure concept -
Claim
foreign key
claim.patient_idon each claim -
Expense year
foreign key
patient_expense.patient_idon each expense year -
Diagnosis
foreign key
diagnosis.patient_idon each diagnosis -
Medication
foreign key
prescription.patient_idon each medication -
Procedure
foreign key
procedure_record.patient_idon each procedure
Semantic search
Each patient stores embedding: a vector of 384 numbers computed at import from first, last, gender, address, race, ethnicity and marital — the fields marked as folded into the embedding above. Search’s Vector and Hybrid tabs match a query against it by meaning, through the index hnsw_patient.
Provenance where this row came from · 7 fields
| Field | Type | Description |
|---|---|---|
source_table |
string |
Synthea CSV this row was read from. |
source_snapshot_id |
string |
Corpus generation this row belongs to. |
ingest_run_id |
string |
Import run that wrote the row. |
generation_run_id |
string |
Synthea run that produced the source CSV. |
load_timestamp |
datetime |
When the row was written. |
source_role |
string |
Role this source played for the record. |
contributing_sources |
option<array<string>> |
Other rows that contributed to this record. |
Collapsed here because a reader came for what patient means, not where one row came from — that question is the substance of every patient record's own Provenance page, reachable from any patient record.
Types are SurrealDB's own: option<T> means
the value may be absent. Full reference:
SurrealDB data types.
Try asking
Real values from Patient records. Click to search.
Beyond text search
Answering this means walking patient → has diagnosis concept → condition. The three shipped search arms — BM25, HNSW, RRF fusion — match text inside one table, so none can.