GEDCOM X Representation of Names of Persons
Summary
The name of a person is one of the most significant elements of genealogical data. Because there are so many ways that names are used and given across cultural and historical boundaries, accurately capturing a name can be quite difficult.
This guide provides examples that illustrate how GEDCOM X can be used to exchange information about names of persons of different cultures and traditions. Many of the use cases covered in this guide were identified in Personal names around the world by Richard Ishida of the W3C. The examples in this guide include a basic western-style name, a Japanese name with multiple name forms, a Spanish name with multiple name parts, and an Icelandic patronymic name.
Basic Western-Style Name
A basic western-style name is typically pronounced and written with given name(s) followed by family name. For example, the name “John Fitzgerald Kennedy” consists of two given names (“John” and “Fitzgerald”) followed by a family name (“Kennedy”).
In GEDCOM X, such a name is represented using an instance of the
Name
data type.
The Name
has a single form, represented as an instance of
NameForm
. The name form
may capture the name as text, as separate parts, or both. The full text of the name (if available) is provided in the fullText
property of
the NameForm
. The parts of the name (if available) are provided using the parts
property of NameForm
which provides a list of instances of
the NamePart
data type.
The cultural context of the name form becomes an important component in order for users to be able to correctly interpret the name. The lang
property of NameForm
is processed according to BCP 47 and is used to capture the cultural context.
The full text of the name form is presumed to be provided as it would be represented in the specified cultural context. The list of name parts
(if provided) is assumed to be ordered according to the common order of the cultural context.
The following snippet demonstrates how the name “John Fitzgerald Kennedy” might be captured by GEDCOM X in both XML and JSON:
XML
<gedcomx xmlns="http://gedcomx.org/v1/"> <person> <name> <nameForm xml:lang="en"> <fullText>John Fitzgerald Kennedy</fullText> <part type="http://gedcomx.org/Given" value="John"/> <part type="http://gedcomx.org/Given" value="Fitzgerald"/> <part type="http://gedcomx.org/Surname" value="Kennedy"/> </nameForm> </name> </person> </gedcomx>
JSON
{ "persons" : [ { "names" : [ { "nameForms" : [ { "lang" : "en", "fullText" : "John Fitzgerald Kennedy", "parts" : [ { "value" : "John", "type" : "http://gedcomx.org/Given" }, { "value" : "Fitzgerald", "type" : "http://gedcomx.org/Given" }, { "value" : "Kennedy", "type" : "http://gedcomx.org/Surname" } ] } ] } ] } ] }
Multiple Name Forms and Name Part Order
It is common in some cultures to have multiple forms of the same name. For example, a Japanese name will often be written using ideographic characters (e.g., kanji) that can have multiple pronunciations. To provide additional clarity, a phonetic form of the name is sometimes provided using kana characters (e.g., katakana). Furthermore, in order for the name to be understood by western cultures, a romanized form of the same name may also be provided.
Note that it is important to understand the different between a single name with multiple forms and two distinct (alternate) names. For example, a person may be identified by both the name “Johnny” and the name “Johnathan”, but the two are separate and distinct names and are not different “forms” of the same name.
Many cultures commonly use a different order of name parts. For example, some cultures order the family name before the given name(s). This convention applies to cultures such as those in Japan, China, Korea, and Hungary.
In GEDCOM X, a name with multiple forms is provided using a single instance of the
Name
data type with multiple
NameForm
s. Each name form
should specify its script using the BCP 47 language tag.
The text of the name forms are assumed to be ordered by preference of the culture in which the name was provided. When name parts are provided, the parts are also assumed to be ordered by cultural preference.
The following snippet demonstrates how the Japanese name “山田太郎” might be captured along with its alternate forms (katakana: “ヤマダタロー”, romanized: “Yamada Tarō”) by GEDCOM X in both XML and JSON:
XML
<gedcomx xmlns="http://gedcomx.org/v1/"> <person> <name> <nameForm xml:lang="ja-Hani"> <fullText>山田太郎</fullText> <part type="http://gedcomx.org/Surname" value="山田"/> <part type="http://gedcomx.org/Given" value="太郎"/> </nameForm> <nameForm xml:lang="ja-Kana"> <fullText>ヤマダタロー</fullText> <part type="http://gedcomx.org/Surname" value="ヤマダ"/> <part type="http://gedcomx.org/Given" value="タロー"/> </nameForm> <nameForm xml:lang="ja-Latn"> <fullText>Yamada Tarō</fullText> <part type="http://gedcomx.org/Surname" value="Tarō"/> <part type="http://gedcomx.org/Given" value="Yamada"/> </nameForm> </name> </person> </gedcomx>
JSON
{ "persons" : [ { "names" : [ { "nameForms" : [ { "lang" : "ja-Hani", "fullText" : "山田太郎", "parts" : [ { "value" : "山田", "type" : "http://gedcomx.org/Surname" }, { "value" : "太郎", "type" : "http://gedcomx.org/Given" } ] }, { "lang" : "ja-Kana", "fullText" : "ヤマダタロー", "parts" : [ { "value" : "ヤマダ", "type" : "http://gedcomx.org/Surname" }, { "value" : "タロー", "type" : "http://gedcomx.org/Given" } ] }, { "lang" : "ja-Latn", "fullText" : "Yamada Tarō", "parts" : [ { "value" : "Tarō", "type" : "http://gedcomx.org/Surname" }, { "value" : "Yamada", "type" : "http://gedcomx.org/Given" } ] } ] } ] } ] }
Multiple Given Names, Multiples Family Names
It is very common for persons to have multiple given names. Some cultures commonly have multiple family names too. This is common in many areas of South America. For example, María-Jose Carreño Quiñones may be the daughter of Antonio Carreño Rodríguez and María Quiñones Marqués.
When providing multiple given names or multiple family names, GEDCOM X does not specify whether each given name or family name should
be separated into its own distinct instance of
NamePart
or whether
the value of a single name part should provide the entire sequence of given names or family names. Which alternative is selected generally
depends upon how the information is gathered from the user. Some applications may only provide a single text field for all family names
and another text field for all given names. Other applications might allow the user to break the name down into distinct parts, which
might enhance the searching/matching capabilities of the software.
The following snippet demonstrates the alternate ways that the name “José Eduardo Santos Tavares Melo Silva” might be provided by GEDCOM X in both XML and JSON:
XML (one part per part type)
<gedcomx xmlns="http://gedcomx.org/v1/"> <person> <name> <nameForm xml:lang="pt-BR"> <fullText>José Eduardo Santos Tavares Melo Silva</fullText> <part type="http://gedcomx.org/Given" value="José Eduardo"/> <part type="http://gedcomx.org/Surname" value="Santos Tavares Melo Silva"/> </nameForm> </name> </person> </gedcomx>
XML (multiple parts of same type)
<gedcomx xmlns="http://gedcomx.org/v1/"> <person> <name> <nameForm xml:lang="pt-BR"> <fullText>José Eduardo Santos Tavares Melo Silva</fullText> <part type="http://gedcomx.org/Given" value="José"/> <part type="http://gedcomx.org/Given" value="Eduardo"/> <part type="http://gedcomx.org/Surname" value="Santos"/> <part type="http://gedcomx.org/Surname" value="Tavares"/> <part type="http://gedcomx.org/Surname" value="Melo"/> <part type="http://gedcomx.org/Surname" value="Silva"/> </nameForm> </name> </person> </gedcomx>
JSON (one part per part type)
{ "persons" : [ { "names" : [ { "nameForms" : [ { "lang" : "pt-BR", "fullText" : "José Eduardo Santos Tavares Melo Silva", "parts" : [ { "value" : "José Eduardo", "type" : "http://gedcomx.org/Given" }, { "value" : "Santos Tavares Melo Silva", "type" : "http://gedcomx.org/Surname" } ] } ] } ] } ] }
JSON (multiple parts of same type)
{ "persons" : [ { "names" : [ { "nameForms" : [ { "lang" : "pt-BR", "fullText" : "José Eduardo Santos Tavares Melo Silva", "parts" : [ { "value" : "José", "type" : "http://gedcomx.org/Given" }, { "value" : "Eduardo", "type" : "http://gedcomx.org/Given" }, { "value" : "Santos", "type" : "http://gedcomx.org/Surname" }, { "value" : "Tavares", "type" : "http://gedcomx.org/Surname" }, { "value" : "Melo", "type" : "http://gedcomx.org/Surname" }, { "value" : "Silva", "type" : "http://gedcomx.org/Surname" } ] } ] } ] } ] }
Patronymic/Matronymic Names
Some cultures follow a patronymic naming convention such that the person’s name consists of a given name followed by the name of the father with a suffix indicating the relation. For example, in the Icelandic name Björk Guðmundsdóttir, Björk is the given name and Guðmundsdóttir is a patronymic indicating “daughter of Guðmund.” The name “Guðmundsdóttir” may or may not be considered a surname.
Because the patronymic (or matronymic) carries genealogical significance, GEDCOM X provides a way to “qualify” a name part to indicate the patronymic or matronymic nature of the name part.
The following snippet demonstrates how the name “Björk Guðmundsdóttir” might be captured with its patronymic designation by GEDCOM X in both XML and JSON:
XML
<gedcomx xmlns="http://gedcomx.org/v1/"> <person> <name> <nameForm xml:lang="is"> <fullText>Björk Guðmundsdóttir</fullText> <part type="http://gedcomx.org/Given" value="Björk"/> <part value="Guðmundsdóttir"> <qualifier name="http://gedcomx.org/Patronymic"/> </part> </nameForm> </name> </person> </gedcomx>
JSON
{ "persons" : [ { "names" : [ { "nameForms" : [ { "lang" : "is", "fullText" : "Björk Guðmundsdóttir", "parts" : [ { "value" : "Björk", "type" : "http://gedcomx.org/Given" }, { "value" : "Guðmundsdóttir", "qualifiers" : [ { "name" : "http://gedcomx.org/Patronymic" } ] } ] } ] } ] } ] }
Other Name Part Qualifiers
In addition to patronymic and matronymic qualifiers, GEDCOM X supplies other qualifiers that might be used to provide details about how persons use names. A name part can be qualified as a geographic name, a religious name, a maiden name, a title, an occupational name, etc. The current registry of name part qualifiers is provided by the GEDCOM X Name Part Qualifiers Specification and may be updated as need arises.
Code Examples
This Java code example,
found in the gedcomx-java
repository demonstrates how to produce the above results.