GEDCOM


GEDCOM is an open de facto specification for exchanging genealogical data between different genealogy software. GEDCOM was developed by The Church of Jesus Christ of Latter-day Saints as an aid to genealogical research.
A GEDCOM file is plain text containing genealogical information about individuals, and meta data linking these records together. Most genealogy software supports importing from and exporting to GEDCOM format. However, some genealogy software programs incorporate the use of proprietary extensions to the format, which are not always recognized by other genealogy programs, such as the GEDCOM 5.5 EL specification.
While GEDCOM X and several other specifications have been suggested as replacements, the current 2019 version, based on the draft from 1999, remains the industry standard 20 years on.

GEDCOM model

GEDCOM uses a lineage-linked data model. This data model is based on the nuclear family and the individual. This contrasts with evidence-based models, where data is structured to reflect the supporting evidence. In the GEDCOM lineage-linked data model, all data is structured to reflect the believed reality, that is, actual nuclear families and individuals.

GEDCOM file structure

A GEDCOM file consists of a header section, records, and a trailer section. Within these sections, records represent people, families, sources of information, and other miscellaneous records, including notes. Every line of a GEDCOM file begins with a level number where all top-level records begin with a line with level 0, while other level numbers are positive integers.
Although it is theoretically possible to write a GEDCOM file by hand, the format was designed to be used with software and thus is not especially human-friendly. A GEDCOM validator that can be used to validate the structure of a GEDCOM file is included as part of PhpGedView project, though it is not meant to be a standalone validator. For standalone validation you can use "The Windows GEDCOM Validator" or the older unmaintained Gedcheck from The Church of Jesus Christ of Latter-day Saints.
During 2001, The GEDCOM TestBook Project evaluated how well four popular genealogy programs conformed to the GEDCOM 5.5 standard using the Gedcheck program. Findings showed that a number of problems existed and that "The most commonly found fault leading to data loss was the failure to read the NOTE tag at all the possible levels at which it may appear." In 2005, the Genealogical Software Report Card was evaluated and included testing the GEDCOM 5.5 standard using the Gedcheck program.

Example

The following is a sample GEDCOM file.
sample.ged

0 HEAD
1 SOUR PAF
2 NAME Personal Ancestral File
2 VERS 5.0
1 DATE 30 NOV 2000
1 GEDC
2 VERS 5.5
2 FORM LINEAGE-LINKED
1 CHAR ANSEL
1 SUBM @U1@
0 @I1@ INDI
1 NAME John /Smith/
1 SEX M
1 FAMS @F1@
0 @I2@ INDI
1 NAME Elizabeth /Stansfield/
1 SEX F
1 FAMS @F1@
0 @I3@ INDI
1 NAME James /Smith/
1 SEX M
1 FAMC @F1@
0 @F1@ FAM
1 HUSB @I1@
1 WIFE @I2@
1 MARR
1 CHIL @I3@
0 @U1@ SUBM
1 NAME Submitter
0 TRLR

The header includes the source program and version, the GEDCOM version, the character encoding, and a link to information about the submitter of the file.
The individual records define John Smith, Elizabeth Stansfield, and James Smith.
The family record links the husband, wife, and child by their ID numbers.

Versions

The current version of the specification is GEDCOM 5.5.1, which was released on 15 November 2019. The former draft GEDCOM 5.5.1 specification was issued in 1999, introducing nine new tags, including WWW, EMAIL and FACT, and adding UTF-8 as an approved character encoding. ANSEL is still defined as valid character encoding, but it is not very common and not needed any longer. The current release has only minor corrections to the draft. The draft was not formally approved, but its provisions have been adopted in some part by a number of genealogy programs and is used by FamilySearch.org. While PAF 5.2 does support GEDCOM 5.5, PAF 5.2 uses UTF-8 as its internal character set, a feature which was introduced in the GEDCOM 5.5.1 draft, and can output a UTF-8 GEDCOM.
On 23 January 2002, a draft version of GEDCOM 6.0 was released for developer study only, as it was not a complete specification, and developers were recommended to not begin implementation in their software. For example, descriptions of the meaning and expected contents of tags were not included. GEDCOM 6.0 was to be the first version to store data in XML format, and was to change the preferred character set from ANSEL to Unicode.
Lineage-linked GEDCOM is the deliberate de facto common denominator. Despite version 5.5 of the GEDCOM standard first being published in 1996, many genealogical software suppliers have yet to support the feature of multilingual Unicode text introduced with that version of the specification. Uniform use of Unicode would allow for the usage of international character sets. An example is the storage of East Asian names in their original Chinese, Japanese and Korean characters, without which they could be ambiguous and of little use for genealogical or historical research.

Release history

GEDCOM VersionRelease DateNotes
1.01984-
2.0Dec 1985PAF 2.0
2.1Feb 1987GEDCOM for PAF 2.1
2.3 Draft7 August 1985with PAF2.0 GEDCOM implementation conventions
2.4 Draft13 December 1985with PAF2.0 GEDCOM implementation conventions
3.0 Standard9 October 1987PAF 2.0 and 2.1 implementation of 3.0
4.0 StandardAugust 1989PAF 2.1 - 2.31
4.1 Draft--
4.2 Draft25 January 1990-
5.0 Draft31 December 1991lineage-linked structures were introduced.
5.1 Draft18 September 1992-
5.2 Draft22 January 1992-
5.3 Draft4 November 1993Unicode standard was introduced as an additional character set.
5.4 Draft21 August 1995-
5.5 Standard11 December 1995PAF 3, 4 and 5
2 January 1996PAF 3, 4 and 5 /
GEDCOM Draft1 May 1998"it used an entirely new data model"
5.5.1 Draft2 October 1999Used by FamilySearch.org UTF-8 added as an approved character encoding.
5.5.1 Release15 November 2019current standard, minor text modifications to 5.5.1 Draft.
5.6 Private Draft-"Jed Allen sent those two files to a few people only for sort of "private comments"
6.0 XML Draft28 December 2001Was not a complete specification, and not recommended to begin to software implementations.

Limitations

Support for multi-person events and sources

A GEDCOM file can contain information on events such as births, deaths, census records, ship's records, marriages, etc.; a rule of thumb is that an event is something that took place at a specific time, at a specific place. GEDCOM files can also contain attributes such as physical description, occupation, and total number of children; unlike events, attributes generally cannot be associated with a specific time or place.
The GEDCOM specification requires that each event or attribute is associated with exactly one individual or family. This causes redundancy for events such as census records where the actual census entry often contains information on multiple individuals. In the GEDCOM file, for census records a separate census "CENS" event must be added for each individual referenced. Some genealogy programs, such as Gramps and The Master Genealogist, have elaborate database structures for sources that are used, among other things, to represent multi-person events. When databases are exported from one of these programs to GEDCOM, these database structures cannot be represented in GEDCOM due to this limitation, with the result that the event or source information including all of the relevant citation reference information must be duplicated each place that it is used. This duplication makes it difficult for the user to maintain the information related to sources.
In the GEDCOM specification, events that are associated with a family such as marriage information is only stored in a GEDCOM once, as part of the family record, and then both spouses are linked to that single family record.

Ambiguity in the specification

The GEDCOM specification was made purposefully flexible to support many ways of encoding data, particularly in the area of sources. This flexibility has led to a great deal of ambiguity, and has produced the side effect that some genealogy programs which import GEDCOM do not import all of the data from a file.

Support for varying definitions of families and relationships

GEDCOM does not explicitly support data representation of many types of close interpersonal relationships, such as same-sex marriages, domestic partnerships, cohabitation, polyamory or polygamy. Such relationships can only be represented using the generic ASSO tag used for any type of relationship.

Ordering of events that do not have dates

The GEDCOM specification does not offer explicit support for keeping a known order of events. In particular, the order of relationships for a person and the order of the children within a relationship can be lost. In many cases the sequence of events can be derived from the associated dates. But dates are not always known, in particular when dealing with data from centuries ago. For example, in the case that a person has had two relationships, both with unknown dates, but from descriptions it is known that the second one is indeed the second one. The order in which these FAMS are recorded in GEDCOM's INDI record will depend on the exporting program. In Aldfaer for instance, the sequence depends on the ordering of the data by the user. The proposed XML GEDCOM standard does not address this issue either.

Lesser-known features

GEDCOM has many features that are not commonly used, and hence are unknown to some people. Some software packages do not support all the features that the GEDCOM standard allows.

Multimedia

The GEDCOM standard supports the inclusion of multimedia objects. Such multimedia objects can be either included in the GEDCOM file itself or in an external file where the name of the external file is specified in the GEDCOM file. Embedding multimedia directly in the GEDCOM file makes transmission of data easier, in that all of the information is in one file, but the resulting file can be enormous. Linking multimedia keeps the size of the GEDCOM file under control, but then when transmitting the file, the multimedia objects must either be transmitted separately or archived together with the GEDCOM into one larger file. Support for embedding media directly was dropped in the draft 5.5.1 standard.

Conflicting information

The GEDCOM standard allows for the specification of multiple opinions or conflicting data, simply by specifying multiple records of the same type. For example, if an individual's birth date was recorded as 10 January 1800 on the birth certificate, but 11 January 1800 on the death certificate, two BIRT records for that individual would be included, the first with the 10 January 1800 date and giving the birth certificate as the source, and the second with the 11 January 1800 date and giving the death certificate as the source. The preferred record is usually listed first.
This example encoded in GEDCOM might look like this:
0 @I1@ INDI
1 NAME John /Doe/
1 BIRT
2 DATE 10 JAN 1800
2 SOUR @S1@
3 DATA
4 TEXT Transcription from birth certificate would go here
3 NOTE This birth record is preferred because it comes from the birth certificate
3 QUAY 2
1 BIRT
2 DATE 11 JAN 1800
2 SOUR @S2@
3 DATA
4 TEXT Transcription from death certificate would go here
3 QUAY 2
Conflicting data may also be the result of user errors. The standard does not specify in any way that the contents must be consistent. A birth date like "10 APR 1819" might mistakenly have been recorded as "10 APR 1918" long after the person's death. The only way to reveal such inconsistencies is by rigorous validation of the content data.

Internationalization

The GEDCOM standard supports internationalization in several ways. First, newer versions of the standard allow data to be stored in Unicode, so text in any language can be stored. Secondly, in the same way that you can have multiple events on a person, GEDCOM allows you to have multiple names for a person, so names can be stored in multiple languages. Finally, in the latest draft version, the NAME field also supports a phonetic variation and a romanized variation of the name.

GEDCOM X

In February 2012 at the RootsTech 2012 conference, FamilySearch outlined a major new project around genealogical standards called GEDCOM X, and invited collaboration.
It will include software developed under the Apache open source license. It includes data formats that facilitate basing family trees on sources and records, support for sharing and linking data online, and an API.
In August 2012 FamilySearch employee and GEDCOM X project leader Ryan Heaton dropped the claim that GEDCOM X is the new industry standard, and repositioned GEDCOM X as another FamilySearch open source project.

Alternatives to GEDCOM

Commsoft, the authors of the Roots series of genealogy software and Ultimate Family Tree, defined a version called Event-Oriented GEDCOM, which included events as first class items. Although it is event based, it is still a model built on assumed reality rather than evidence. Event GEDCOM was more flexible, as it allowed some separation between believed events and the participants. However, Event GEDCOM was not widely adopted by other developers due to its semantic differences. With Roots and Ultimate Family Tree no longer available, very few people today are using Event GEDCOM.
Gramps XML is an XML-based open format created by the open source genealogy project Gramps and used also by PhpGedView.
The Family History Information Standards Organisation was established in 2012 with the aim of developing international standards for family history and genealogical information. One of their standards is a continuance of GEDCOM, called Extended Legacy Format, that will begin with compatibility with GEDCOM 5.5 but include an extensibility mechanism. This is designed to assist software with a financial commitment to GEDCOM and prevent it getting left behind as further standards evolve.