In 1995, I helped write the GEDCOM 5.5 standard. GEDCOM is the file format used to transfer genealogical data (family trees) from one system to another.

I was trying to write software to read a GEDCOM 5.4 file and found that the specification was ambiguous. I called the LDS Church in Salt Lake City (the authors of the standard) to get clarification. After a few transfers, I reached Bill Harten. Bill lead the team that wrote the GEDCOM standard. He said he was in the process of writing a new version that would be GEDCOM 5.5.

I explained that the syntax in the standard was ambiguous. In other words, software trying to read a GEDCOM file could interpret some types of records in more than one way, leading to possible errors in the transmission. I was using a program named YACC to generate part of my program (called the parser) and YACC complained of several errors in the GEDCOM grammar.

I offered to rewrite the syntax definition in BNF notation and use YACC to prove that it was unambiguous. Bill accepted my offer. I wrote most of Chapter 1 and parts of Chapter 2, especially the date syntax.

GEDCOM 5.5.1 is the current standard, which has only minor changes from 5.5. The biggest change is the addition of UTF-8 encoding.