G5 Person

This page describes how the notion of person is handled in g5 database.
The structure of a person is given by src/model/Person.yml
Table definition in src/model/db-create
create table person (
    id              serial primary key,
    slug            varchar(255) unique not null,
    ids_in_sources  jsonb not null,
    ids_partial     jsonb not null,
    name            jsonb not null,
    gender          char(1),
    birth           jsonb not null,
    death           jsonb not null,
    occus           jsonb not null,
    trust           jsonb not null,
    acts            jsonb not null,
    history         jsonb not null,
    issues          jsonb not null,
    eminence        jsonb not null,
    notes           jsonb not null

Person ids

Unique ids

Every person of the database has at least 2 unique ids:
  • Person slug, its g5 unique id.
  • Id generated by the database (serial in postgresql, equivalent of autoincrement in mysql).
    These are used to associate person to groups.

Ids in sources

Field ids_in_sources is a jsonb key value map giving the local id of a person within a source.
As a person is ALWAYS related to at least one information source, this field is never empty.

For example, Georges Dumas is present in files A1, A6 and Müller's 1083 physicians:
select ids_in_sources from person where slug='dumas-georges-1866-03-06';
{"a2": "241", "a6": "282", "afd5": "325"}

Partial ids

While fields ids_in_sources represents the local ids of a person within precise sources, field ids_partials permits to express the different ids defined by g5:
select ids_partial from person where slug='dumas-georges-1866-03-06';
{"lerrcp": "A2-241", "muller": "M5-325"}
SlugPartial id
lerrcpGauquelin id
mullerMüller id
ertelErtel id
wdWikidata id


This field permits to keep a trace of the transformations done on a person.


Array of strings describing the potential problems existing on some values of the field.

Links with other entities

Person name

  official:         # As written in the birth certificate
  nobl:             # nobiliary-particle: de d' di del von...
  fame:             # stage, scene
    full:           # ex Mistinguett or Stromae
  alter: []         # alternative names, like nicknames, or author names