gedcomq Is A Query Language for GEDCOM Files

Image for post
Image for post
Photo by Johann Siemens on Unsplash

GEDCOM is the de facto standard for storing and transmitting genealogical data. Despite being around for decades and being supported by almost all online and offline software, many of the tools are proprietary, clunky or require technical knowledge that is beyond the average family tree investigator.

Welcoming gedomq. A command line tool and query language for GEDCOM files. It is heavily inspired by jq, in name and syntax. Here is a basic example:

The functionality provided from the gedcom package, possibly the most advanced GEDCOM library ever created.

If you are familiar with jq the above syntax will make sense to you. However, even if you have little to no technical experience, it should be easy to understand by learning the language basics.

Assuming file.ged from the previous example contains 2 individuals, the output might look like:

If this is too verbose for you, here is the same output using .Individuals | .Name | .String

The engine also supports functions and and a special feature called the question mark:

? is a special function that can be used to show all of the possible next functions and accessors. This is useful when exploring data by creating the query interactively. For example the following query:

Outputs (most items removed for brevity):

Of course, you can also refer to the full package documentation.

You can download latest gedcomqfrom the releases page.

It’s still very early in development, but I’m interested in targeting gedcomqto users with zero technical experience all the way up to software professionals. I’d love to know how you use it and how I can make it more useful and approachable for others.

Please don’t hesitate to open an issue on the github project or send me an email.

Happy researching!

Originally published at on November 9, 2018.

Written by

I’m a data nerd and TDD enthusiast originally from Sydney. Currently working for Uber in New York. My thoughts here are my own. 🤓

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store