Person Entity
Overview
The Person entity represents an individual in the family archive. Person entities can be stored in any .glx file in the repository under the persons key.
File Format
All GENEALOGIX files use entity type keys at the top level:
yaml
# Any .glx file (commonly in persons/ directory)
persons:
person-john-smith-1850:
properties:
given_name: "John"
family_name: "Smith"Key Points:
- Entity ID is the map key (
person-john-smith-1850) - IDs can be descriptive or random, 1-64 alphanumeric/hyphens
Required Fields
Entity ID (map key)
- Format: Any alphanumeric string with hyphens, 1-64 characters
- Must be unique within the archive
- Recommended formats:
- Descriptive:
person-john-smith-1850,person-mary-jones - Random hex:
person-a1b2c3d4(for collaboration) - Sequential:
person-001,person-002
- Descriptive:
Optional Fields
properties
- Type: Object
- Required: No
- Description: Vocabulary-defined properties representing the concluded/accepted values for this person
Structure:
yaml
properties:
given_name: String # From person_properties vocabulary
family_name: String # From person_properties vocabulary
gender: String # From person_properties vocabulary
born_on: Date # From person_properties vocabulary
born_at: "place-id" # From person_properties vocabulary (reference)
died_on: Date # From person_properties vocabulary
died_at: "place-id" # From person_properties vocabulary (reference)
occupation: String # From person_properties vocabulary
residence: "place-id" # From person_properties vocabulary (reference)Example:
yaml
properties:
given_name: "John"
family_name: "Smith"
gender: "male"
born_on: "1850-01-15"
born_at: "place-leeds"
died_on: "1920-06-20"
died_at: "place-london"
occupation: "blacksmith"
residence:
- value: "place-leeds"
date: "1850-1900"
- value: "place-london"
date: "1900-1920"Key Points:
- All properties are optional
- Property names and types are validated against the
person_propertiesvocabulary - Properties can be temporal (change over time) - see Data Types
- Custom properties can be added by extending the vocabulary
- Living status is implied by the presence/absence of
died_on
Complete Example
yaml
# persons/person-margaret-smith.glx
persons:
person-margaret-smith-1825:
properties:
given_name: "Margaret Eleanor"
family_name: "Smith"
gender: "female"
born_on: "1825-04-10"
died_on: "1890-11-22"
notes: |
Family tradition says she was named after her grandmother.
Need to verify with census records.
tags:
- maternal-line
- smith-family
- ohio-branchSchema Reference
See person.schema.json for the complete JSON Schema definition.