GEDitCOM 1.0 for the Power Macintosh
by John A. Nairn
Two of my hobbies are genealogy and computer programming, but I am better
at computer programming than I am at genealogy. Because of my
dissatisfaction with commercial genealogy applications (more about that
later), I decided to combine my hobbies and write my own genealogy
application. Sometimes I regretted that decision; writing a full-featured
and well-documented Macintosh application is a big job. It has taken nearly
two years, but version 1.0 of my program, which is called GEDitCOM, is
finally done. Here is my brief description of how I think GEDitCOM can
improve electronic genealogy. You can download GEDitCOM on the internet at
http://www.mse.utah.edu/~nairn/geditcom.html; parts of GEDitCOM are free
and parts require a modest shareware fee.
The Myth of GEDCOM Applications
My dissatisfaction with commercial genealogy programs started when I found
the definition of the GEDCOM 5.5 standard on the internet at
55gctoc.htm. GEDCOM is a
genealogical data base standard maintained by the Church of Jesus Christ of
Latter Day Saints (LDS or Mormons). I knew that many applications claim to
be "GEDCOM Compatible," but when I read the GEDCOM documentation I found
that GEDCOM provides an enormous amount of flexibility that can not be
found in any commercial application. For example, GEDCOM can document
numerous types of individual and family attributes and events; it provides
robust methods for documenting your research with source citations,
information about repositories, data-specific text notes, multimedia
objects, and much more.
How can programs that do not provide the many features of GEDCOM call
themselves GEDCOM compatible? The answer is they really only provide
limited GEDCOM support; they should not be called GEDCOM applications. The
processing of becoming a registered GEDCOM product involves having the
output of your program certified as a valid GEDCOM file. Valid output is an
important prerequisite to GEDCOM compatibility, but GEDCOM registration
does not mean the application can actually import GEDCOM files correctly.
In fact many, if not all, commercial applications do a poor job of
importing GEDCOM files. I tried creating a simple GEDCOM file, admittedly
with a wide variety of GEDCOM data objects, and importing it into several
commercial genealogy programs. None of them imported the data well. Some
complained of numerous errors in the file (there were no GEDCOM errors),
most deleted data it did not understand (a nightmare for genealogists is to
lose data), one could not even understand the standard GEDCOM method for
specify approximate dates (such as "BET 3 Jun 1912 AND 10 Jun 1912"), and
one changed all the birth dates of individuals to the date the record was
last changed (a standard GEDCOM structure lets you mark each data record
with a last-changed date).
The Philosophy of GEDitCOM
I had two goals in mind when I started GEDitCOM that would hopefully make
it a new type of genealogy application. First, I wanted an application that
was 100% compatible with GEDCOM and therefore could tap all the features of
GEDCOM. GEDitCOM accomplishes this goal. In fact, GEDitCOM uses GEDCOM as
its internal data base. There is never a need to "import" a GEDCOM file.
You simply read the file and view and edit it with GEDitCOM. This direct
reading feature makes GEDitCOM an ideal helper application when browsing
GEDCOM files on the internet. You can quickly open and view any GEDCOM file
without any file conversion steps.
Second, I wanted GEDitCOM to be completely customizable by the user.
GEDitCOM is best viewed as a customizable viewer/editor for GEDCOM files.
Customization is accomplished by the user writing templates that tell
GEDitCOM how to display and edit any type of GEDCOM data. Remember, I like
computer programming; by writing templates, any user can "program" GEDitCOM
to be exactly the type of genealogy application he or she wants. You can
even customize GEDCOM to hide various types of GEDCOM data objects. They
will remain in the file (thus no genealogy data ever gets lost when using
GEDitCOM) but will be hidden from view. If you hide enough data you can
make GEDitCOM as limiting as typical commercial applications. I think it is
better to use GEDitCOM to tap all the genealogy features of the GEDCOM
The Default GEDitCOM Format
Customizing GEDitCOM by writing templates is fairly easy, but not every
genealogist will want to program GEDitCOM. I wrote therefore wrote a
complete set of templates that comes with GEDitCOM and provides virtually
100% access to all of GEDCOM. This set of templates is called the "Default
The "Default GEDitCOM Format" is very different in philosophy, from typical
genealogy software. Most genealogy applications design screen layouts which
are nothing more than blank forms. All you can do is type data into the
forms. If something does not logically it into any form cell you must shove
it off to miscellaneous notes. To avoid having tremendously long forms with
many empty cells, the possible data options are usually limited to the most
common ones such as birth information, death information, and perhaps a few
events. In contrast, the default GEDitCOM format is much more flexible. It
formats the screen layout on the fly depending on what data is present in a
particular GEDCOM record. If you have lots of information about an
individual's attributes and events, that data will show up on the screen.
If you do not have much data, you will see just the data you have and not
an endless display of empty form cells. As you learn more about any
individual, you can use standard GEDitCOM methods to attach new data fields
to the data record.
I think the flexible-format-on-the-fly approach to the display and editing
of genealogical data is far superior to the rigid-form method in most other
applications. It very neatly solves the problem displaying files where you
may have much information about some individuals, but very little about
others. But remember, GEDitCOM is completely customizable. If you want
rigid forms you can easily create them by writing your own templates. In
fact, you can do a good job of having GEDitCOM mimic any other genealogy
application. The real power of GEDitCOM is that you can make it better than
any other genealogy application --- if not better for everyone, at least
you can make it better for you.
What Format is Best?
Another problem with commercial software is you are stuck with their
interface forever. In contrast, not only can you customize GEDitCOM, but
you can save all your templates in a file called a GEDitCOM Format. You can
swap formats at will and thus edit and view any GEDCOM file by any method
you choose that day. You never have to convert the data (which can be
dangerous), you only have to give GEDitCOM new instructions. You can even
switch formats in the middle of viewing a file.
For example, while writing GEDitCOM. I wanted it to be able to print nice
four-generation pedigree charts. I soon realized I did not actually need to
hard code anything for such charts. Instead, I wrote a new set of templates
called the "Pedigree Format." I simply load this format into GEDitCOM and
then view any GEDCOM file directly on pedigree charts. All printing options
of GEDitCOM are also customizable. The "Pedigree Format," for example,
prints out nice four-generation pedigree charts while the "Default GEDitCOM
Format" prints out a comprehensive list of all known information on an
individual or family group.
I have completed version 1.0 of GEDitCOM. I think it is already one of the
most powerful genealogy applications available, but I have many ideas for
future enhancements. Some ideas are to have GEDCOM file manipulation
options, to add more customization options in the ancestor and descendent
family trees, to invent new ways to display data from GEDCOM files on the
internet, and many more little ideas. By posting version 1.0 on the
internet, I hope some people will use GEDitCOM and submit other ideas.
Another contribution users can make is to write GEDitCOM Formats. Maybe I
did not design the best templates for editing GEDCOM files. Perhaps more
clever genealogists or better artists will write a variety of templates
that can customize GEDitCOM in ways I have not been able to imagine.
Writing a GEDitCOM Format has much in common with designing web pages.
GEDitCOM reads the templates you write and formats the GEDCOM data it finds
much like your internet browser reads HTML documents and formats them for
display on your computer screen. There are a growing number of web
designers; perhaps some web designer/genealogist will write a nice GEDitCOM
Format complete with pretty graphics. GEDitCOM Formats are saved as plain
text files. It is easy to share new formats with other GEDitCOM users by
email or by posting them on the internet.
If you have any questions on GEDitCOM, would like to submit suggestions for
features, or are writing a GEDitCOM Format, you can contact me by email at
Copyright © 1998 by John A. Nairn. All Rights Reserved. Any republication of articles contained in the Journal requires the express consent of the author and publisher and must include notice that the work was first published in the Journal of Online Genealogy. The Journal of Online Genealogy is a trademark of Toolbox Internet Marketing Services, Inc.
Journal of Online Genealogy, Volume 3, Number 5, December 1998
Software Year in Review I | Software Year in Review II
GEDitCOM 1.0 | New Genelines Genealogy Software
GHP What's Really New |
GMW Captured Stories