Document
A structured representation of an official travel or identity document associated with a traveler. The document entity captures validated and extracted identity attributes from documents such as passports, ID cards, visas, or residence permits.
The document acts as a trusted source of biographic data within border control processes — enabling reuse of document data across enrollment, verification, and operational workflows while maintaining traceability to the original capture.
Attributes
| Field | Type | Optionality | Format / Length | Source | Notes |
|---|---|---|---|---|---|
documentId | UUID / string | Mandatory | 36 chars if UUID | System | Internal immutable identifier |
travellerId | UUID / string | Mandatory | 36 chars if UUID | System | Link to Traveler aggregate |
firstNames | string (Unicode) | Mandatory for named documents | 1..100 | ICAO | Document-fidelity name (better than separate first/middle for some scripts) |
middleName | string (Unicode) | Optional | 1..100 | TIS | Optional convenience split; not always reliably separable from ICAO naming |
lastName | string (Unicode) | Mandatory for named documents | 1..100 | ICAO | Document-native holder name, not only traveler-normalized name |
dateOfBirth | date | Recommended | YYYY-MM-DD | ICAO / EES | Common document field; normalize from MRZ where available |
address | structured / string | Optional | up to 250 if flat | TIS / national-doc | Not generic ICAO passport minimum; do not require for all document types |
nationality | ISO 3166-1 alpha-3 | Conditional | exactly 3 | ICAO | Standard in MRZ for passport / national document |
documentType | enum | Mandatory | see below | ICAO / TIS / EES | Distinguishes passport, visa, residence permit, ID card, other |
documentNumber | string | Mandatory | 1..20 uppercase alphanumeric | ICAO / EES | TIS identifier for border processes |
issuingCountry | ISO 3166-1 alpha-3 | Mandatory | exactly 3 | ICAO | ICAO MRZ uses 3-letter issuing State / organization codes |
issueDate | date | Conditional | YYYY-MM-DD | ICAO / TIS | Not always available in all capture contexts; highly useful when present |
expiryDate | date | Conditional | YYYY-MM-DD | ICAO / EES | Important operationally for validity checks |
documentStatus | enum | Mandatory | Valid, Expired, Revoked, Flagged | TIS | Lifecycle / operational status |
isPrimary | boolean | Recommended | true / false | TIS | At most one primary document per traveler |
mrzPayload | string / structured | Recommended where MRZ exists | raw + parsed | ICAO | Keep raw MRZ payload and the parsed fields |
storedModalities | object / references | Optional | n/a | ICAO eMRTD / EES / TIS | Reference biometric records — do not embed raw blobs in the document object |
Enum: documentType
Passport (Ordinary), Passport (Diplomatic), NationalID, Visa, ResidencePermit, Other
See also
- Data Model overview — full entity set, standards alignment, domain separation
- Traveler — the entity Documents are linked to
- Encounter — where Documents are used during border interactions
- Biometrics via Traveler Identity Service — how
storedModalitiesreferences biometric records