Welcome. This developers guide is intended to help you get started using GEDCOM X in your development.
GEDCOM X is actually a set of specifications, so the first thing you have to do is identify which ones you care about. Here's how it's laid out:
- The GEDCOM X Date Format specifies how to represent genealogical dates.
- The GEDCOM X Conceptual Model specifies an abstract conceptual model for genealogical data, independent of any serialization format.
- The GEDCOM X XML Serialization Format specifies how to represent the conceptual model in XML.
- The GEDCOM X JSON Serialization Format specifies how to represent the conceptual model in JSON.
- The GEDCOM X Standard Header Set specifies a standard set of "headers" which can be used to provide genealogical metadata for resources.
- The GEDCOM X File Format specifies how to bundle up genealogical data into a file.
The Conceptual Model
The first place you'll probably want to start is with an understanding of the (GEDCOM X conceptual model)[https://github.com/FamilySearch/gedcomx/blob/master/specifications/conceptual-model-specification.md], which defines the GEDCOM X data types (e.g. person, relationship, etc.) and how they relate to each other. The following is a UML diagram of the data model. To see it closer, click on the image.
The Media Types
GEDCOM X defines both an XML media type and a JSON media type for the conceptual model, and there may be definitions provided in the future for other media types. For the formal descriptions of these media types, see their respective specifications:
- The GEDCOM X XML Serialization Format (application/x-gedcom-v1+xml)
- The GEDCOM X JSON Serialization Format (application/x-gedcom-v1+json)
There is also some non-normative reference documentation provided.
There might be some code that you could use to start development. And as you develop, we'd love you to contribute your tools and libraries back to the community. Visit Code for more information.