Just what is a GUID?
UUID is an acronym for Universally Unique IDentifier. The term is further defined in a document published by a group called Network Working Group. They defined it this way:
“A UUID is 128 bits long, and can guarantee uniqueness across space and time. UUIDs were originally used in the Apollo Network Computing System and later in the Open Software Foundation’s (OSF) Distributed Computing Environment (DCE), and then in Microsoft Windows platforms.” (Network Working Group)
The document in the link above contains a Copyright header file and six files of C code, for those of you who dabble in that language. (The Copyright is actually a Copyleft.)
In the genealogy world a UUID is usually referred to as a GUID, Globally Unique IDentifier. The biggest difference between the UUID in the specs and the one used by Ancestral Quest, Legacy and Roots Magic is the four hexadecimal character checksum added onto the end.
These three programs, and some others, create a GUID for every individual record which they create.
So just what does “Globally Unique” mean?
If every person in the world who was living at the beginning of the year 2014 were to create 600 million individual records using one of these programs, there is only a 50% probability of any one of those records having a duplicate GUID among the others. To see the generation of GUIDs, click on this LINK.
These programs each have their own file formats, and they are not interchangeable. None of the programs can open a file created by one of the others. Information can, however, be passed among users of different programs. This is done by exporting and importing that information through a GEDCOM file. When we look at a line in a GEDCOM file we see distinct fields. The first field is a number which shows grouping of information within the file. A zero denotes the start of a new record. Numbers higher than zero are somewhat like levels of indentation. The second field in the line is the GEDCOM Tag. This identifies what type of information is on this line and immediately following lines with higher level numbers. There are Standard Tags, but the _UID Tag is considered proprietary. Even though it is considered proprietary, it is used by several software vendors, including Ancestral Quest, Legacy and Roots Magic. To demonstrate the use of the _UID Tag in these three products, I created a record for John Jones using each product. I next exported this one record from each program with GEDCOM.
This is the GEDCOM from the Ancestral Quest file.
This is the GEDCOM produced by Legacy. Note that it is not exactly like the one from Ancestral Quest.
This GEDCOM was produced by Roots Magic. It is very unlike the other two. The zero level TRLR Tag is on line 728 of the file.
I started the Roots Magic program, opened its file and imported the GEDCOM records from Ancestral Quest and Legacy. I then merged these two new records into the original Roots Magic version of John Jones. I created another GEDCOM file showing the resulting merged record.
This is the GEDCOM file showing the new record.
I started Legacy, opened its file, and imported the GEDCOM records from Ancestral Quest and Roots Magic. I merged the two new records into the original John Jones record, and made a new GEDCOM file to show the results.
This is the resulting GEDCOM file from Legacy.
I opened the AQ file in Ancestral Quest, and imported the Legacy and Roots Magic GEDCOM files. I merged the two new records into the original John Jones record, and created a new GEDCOM file to show the results.
This is that GEDCOM file. Note that only Ancestral Quest maintained the integrity of the process by keeping all three _UID Tags.
Just suppose that I created a file containing a record for Jack Smith. Next suppose that I sent this file as a GEDCOM to a relative. Now suppose that my relative merged my file into his, which also contains a record of Jack Smith, which he merges into his file. If he is using Ancestral Quest, his version will contain both his own GUID and also my GUID. If he sends that file back to me, I can find the matching record using an Auto Merge on GUID. If my relative used one of the other products, my version of the GUID would be filtered out when he did his merge. When he returned the file to me, my Auto Merge on GUID would not find the match. Oops!
Suggestions/Questions about AQ Will Do or Subjects discussed here? Leave a Comment Below. I would like to hear from you!