TGC55CLFGedcom.java :  » Log » aracagenedb » uk » org » aspellclark » gedcom » parser » Android Open Source

Android Open Source » Log » aracagenedb 
aracagenedb » uk » org » aspellclark » gedcom » parser » TGC55CLFGedcom.java
package uk.org.aspellclark.gedcom.parser;

public class TGC55CLFGedcom {
  public static String getGedcom() {
    String gedcomStr = "";

    gedcomStr += "0 HEAD";
    gedcomStr += "1 SOUR GEDitCOM";
    gedcomStr += "2 NAME GEDitCOM";
    gedcomStr += "2 VERS 2.9.4";
    gedcomStr += "2 CORP RSAC Software";
    gedcomStr += "3 ADDR 7108 South Pine Cone Street";
    gedcomStr += "4 CONT Salt Lake City, UT 84121";
    gedcomStr += "4 CONT USA";
    gedcomStr += "4 ADR1 RSAC Software";
    gedcomStr += "4 ADR2 7108 South Pine Cone Street";
    gedcomStr += "4 CITY Salt Lake City";
    gedcomStr += "4 STAE UT";
    gedcomStr += "4 POST 84121";
    gedcomStr += "4 CTRY USA";
    gedcomStr += "3 PHON +1-801-942-7768";
    gedcomStr += "3 PHON +1-801-555-1212";
    gedcomStr += "3 PHON +1-801-942-1148 (FAX) (last one!)";
    gedcomStr += "2 DATA Name of source data";
    gedcomStr += "3 DATE 1 JAN 1998";
    gedcomStr += "3 COPR Copyright of source data";
    gedcomStr += "1 SUBM @SUBMITTER@";
    gedcomStr += "1 SUBN @SUBMISSION@";
    gedcomStr += "1 _HME @PERSON1@";
    gedcomStr += "1 DEST ANSTFILE";
    gedcomStr += "1 DATE 1 JAN 1998";
    gedcomStr += "2 TIME 13:57:24.80";
    gedcomStr += "1 FILE TGC55C.ged";
    gedcomStr += "1 COPR  1997 by H. Eichmann, parts  1999-2000 by J. A. Nairn.";
    gedcomStr += "1 GEDC";
    gedcomStr += "2 VERS 5.5";
    gedcomStr += "2 FORM LINEAGE-LINKED";
    gedcomStr += "1 LANG English";
    gedcomStr += "1 CHAR ANSEL";
    gedcomStr += "2 VERS ANSI Z39.47-1985";
    gedcomStr += "1 PLAC";
    gedcomStr += "2 FORM City, County, State, Country";
    gedcomStr += "1 NOTE This file demonstrates all tags that are allowed in GEDCOM 5.5. Here are some comments about the HEADER record ";
    gedcomStr += "2 CONC and comments about where to look for information on the other 9 types of GEDCOM records. Most other records will ";
    gedcomStr += "2 CONC have their own notes that describe what to look for in that record and what to hope the importing software will find.";
    gedcomStr += "2 CONT ";
    gedcomStr += "2 CONT Many applications will fail to import these notes. The notes are therefore also provided with the files as a plain-text ";
    gedcomStr += "2 CONC \"Read-Me\" file.";
    gedcomStr += "2 CONT ";
    gedcomStr += "2 CONT --------------------------";
    gedcomStr += "2 CONT The HEADER Record:";
    gedcomStr += "2 CONT      This record has all possible tags for a HEADER record. In uses one custom tag (\"_HME\") to see what the software ";
    gedcomStr += "2 CONC will say about custom tags.";
    gedcomStr += "2 CONT ";
    gedcomStr += "2 CONT --------------------------";
    gedcomStr += "2 CONT INDIVIDUAL Records:";
    gedcomStr += "2 CONT      This file has a small number of INDIVIDUAL records. The record named \"Joseph final Tag Torture\" has all possible ";
    gedcomStr += "2 CONC tags for an INDIVIDUAL record. All remaining  individuals have less tags. Some test specific features; for example:";
    gedcomStr += "2 CONT ";
    gedcomStr += "2 CONT      Name: Standard GEDCOM Filelinks";
    gedcomStr += "2 CONT      Name: Nonstandard Multimedia Filelinks";
    gedcomStr += "2 CONT      Name: General Custom Filelinks";
    gedcomStr += "2 CONT      Name: Extra URL Filelinks";
    gedcomStr += "2 CONT           These records link to multimedia files mentioned by the GEDCOM standard and to a variety of other types of ";
    gedcomStr += "2 CONC multimedia files, general files, or URL names.";
    gedcomStr += "2 CONT ";
    gedcomStr += "2 CONT      Name: Chris Locked Torture";
    gedcomStr += "2 CONT           Has a \"locked\" restriction (RESN) tag - should not be able to edit this record it. This record has one set of notes ";
    gedcomStr += "2 CONC that is used to test line breaking in notes and a few other text-parsing features of the GEDCOM software. Read those ";
    gedcomStr += "2 CONC notes to see what they are testing.";
    gedcomStr += "2 CONT ";
    gedcomStr += "2 CONT      Name: Sandy Privacy Torture";
    gedcomStr += "2 CONT           Has a \"privacy\" restriction (RESN) tag. Is the tag recognized and how is the record displayed and/or printed?";
    gedcomStr += "2 CONT ";
    gedcomStr += "2 CONT      Name: Chris Locked Torture";
    gedcomStr += "2 CONT      Name: Sandy Privacy Torture";
    gedcomStr += "2 CONT      Name: Pat Smith Torture";
    gedcomStr += "2 CONT           The three children in this file have unknown sex (no SEX tag). An ancestor tree from each should give five ";
    gedcomStr += "2 CONC generations of ancestors.";
    gedcomStr += "2 CONT ";
    gedcomStr += "2 CONT      Name: Charlie Accented ANSEL";
    gedcomStr += "2 CONT      Name: Lucy Special ANSEL";
    gedcomStr += "2 CONT           The notes in these records use all possible special characters in the ANSEL character set. The header of this file ";
    gedcomStr += "2 CONC denotes this file as using the ANSEL character set. The importing software should handle these special characters in a ";
    gedcomStr += "2 CONC reasonable way.";
    gedcomStr += "2 CONT ";
    gedcomStr += "2 CONT      Name: Torture GEDCOM Matriarch";
    gedcomStr += "2 CONT            All individuals in this file are related and all are descendants (or spouses of descendants) of Torture GEDCOM ";
    gedcomStr += "2 CONC Matriarch. A descendant tree or report from this individual should show five generations of descendants.";
    gedcomStr += "2 CONT ";
    gedcomStr += "2 CONT --------------------------";
    gedcomStr += "2 CONT FAMILY Records:";
    gedcomStr += "2 CONT      The FAMILY record for \"Joseph final Tag Torture\" (husband) and \"final Mary First Jones\" (wife) has all tags allowed in ";
    gedcomStr += "2 CONC family records. All other family records use only a few tags and are used to provide records for extra family links in ";
    gedcomStr += "2 CONC other records.";
    gedcomStr += "2 CONT ";
    gedcomStr += "2 CONT --------------------------";
    gedcomStr += "2 CONT SOURCE Records:";
    gedcomStr += "2 CONT      There are two SOURCE records in this file. The \"Everything final You Every Wanted final to Know about final GEDCOM Tags\" ";
    gedcomStr += "2 CONC source has all possible GEDCOM tags for a SOURCE record. The other source only has only a few tags.";
    gedcomStr += "2 CONT ";
    gedcomStr += "2 CONT --------------------------";
    gedcomStr += "2 CONT REPOSITORY Record:";
    gedcomStr += "2 CONT      There is just one REPOSITORY record and it uses all possible tags for such a record.";
    gedcomStr += "2 CONT ";
    gedcomStr += "2 CONT --------------------------";
    gedcomStr += "2 CONT SUBMITTER Records:";
    gedcomStr += "2 CONT      This file has three SUBMITTER records. The \"John A. Nairn\" record has all tags allowed in such records. The ";
    gedcomStr += "2 CONC second and third submitter are to test how programs input files with multiple submitters. The GEDCOM standard does ";
    gedcomStr += "2 CONC not allow for notes in SUBMITTER records. Look in the \"final Main Submitter\" to verify all address data comes through, ";
    gedcomStr += "2 CONC that all three phone numbers appear, and that the multimedia file link is preserved.";
    gedcomStr += "2 CONT ";
    gedcomStr += "2 CONT --------------------------";
    gedcomStr += "2 CONT MULTIMEDIA OBJECT Record:";
    gedcomStr += "2 CONT      The one MULTIMEDIA record has all possible tags and even has encoded data for a small image of a flower. There ";
    gedcomStr += "2 CONC are no known GEDCOM programs that can read or write such records. The record is included here to test how ";
    gedcomStr += "2 CONC programs might respond to finding multimedia records present. There are possible plans to eliminate encoded ";
    gedcomStr += "2 CONC multimedia objects in the next version of GEDCOM. In the future all multimedia will be included by links to other files. ";
    gedcomStr += "2 CONC To test current file links and extended file links, see the \"Filelinks\" family records described above.";
    gedcomStr += "2 CONT ";
    gedcomStr += "2 CONT --------------------------";
    gedcomStr += "2 CONT SUBMISSION Record:";
    gedcomStr += "2 CONT      The one (maximum allowed) SUBMISSION record in this file has all possible tags for such a record.";
    gedcomStr += "2 CONT ";
    gedcomStr += "2 CONT --------------------------";
    gedcomStr += "2 CONT NOTE Records:";
    gedcomStr += "2 CONT      This file has many NOTE records. These are all linked to other records.";
    gedcomStr += "2 CONT ";
    gedcomStr += "2 CONT --------------------------";
    gedcomStr += "2 CONT TRLR Records:";
    gedcomStr += "2 CONT      This file ends in the standard TRLR record.";
    gedcomStr += "2 CONT ";
    gedcomStr += "2 CONT --------------------------";
    gedcomStr += "2 CONT ADDITIONAL NOTES";
    gedcomStr += "2 CONT      This file was originally created by H. Eichmann at <h.eichmann@@mbox.iqo.uni-hannover.de> and posted on the ";
    gedcomStr += "2 CONC Internet.";
    gedcomStr += "2 CONT ";
    gedcomStr += "2 CONT (NOTE: email addresses are listed here with double \"at\" signs. A rule of GEDCOM parsing is that these should be ";
    gedcomStr += "2 CONC converted to single \"at\" at signs, but not many programs follow that rule. In addition, that rule is not needed and may be ";
    gedcomStr += "2 CONC abandoned in a future version of GEDCOM).";
    gedcomStr += "2 CONT ";
    gedcomStr += "2 CONT This original file was extensively modified by J. A. Nairn using GEDitCOM 2.9.4 (1999-2001) at ";
    gedcomStr += "2 CONC <support@@geditcom.com> and posted on the Internet at <http://www.geditcom.com>. Some changes included many ";
    gedcomStr += "2 CONC more notes, the use or more tags, extensive testing of multimedia file links, and some notes to test all special ANSEL ";
    gedcomStr += "2 CONC characters.";
    gedcomStr += "2 CONT ";
    gedcomStr += "2 CONT Feel free to copy and use this GEDCOM file for any  non-commercial purpose.";
    gedcomStr += "2 CONT ";
    gedcomStr += "2 CONT For selecting the allowed tags, the GEDCOM standard Release 5.5 (2 JAN 1996) was used. Copyright: The Church of ";
    gedcomStr += "2 CONC Jesus Christ of Latter-Day Saints, <gedcom@@gedcom.org>.";
    gedcomStr += "2 CONT ";
    gedcomStr += "2 CONT You can download the GEDCOM 5.5 specs from: <ftp.gedcom.com/pub/genealogy/gedcom>. You can read the ";
    gedcomStr += "2 CONC GEDCOM 5.5 specs on the Internet at <http://homepages.rootsweb.com/~pmcbride/gedcom/55gctoc.htm>.";
    gedcomStr += "0 @SUBMISSION@ SUBN";
    gedcomStr += "1 SUBM @SUBMITTER@";
    gedcomStr += "1 FAMF NameOfFamilyFile";
    gedcomStr += "1 TEMP Abbreviated Temple Code";
    gedcomStr += "1 ANCE 1";
    gedcomStr += "1 DESC 1";
    gedcomStr += "1 ORDI yes";
    gedcomStr += "1 RIN 1";
    gedcomStr += "0 @SUBMITTER@ SUBM";
    gedcomStr += "1 NAME John A. Nairn";
    gedcomStr += "1 ADDR Submitter address line 1";
    gedcomStr += "2 CONT Submitter address line 2";
    gedcomStr += "2 CONT Submitter address line 3";
    gedcomStr += "2 CONT Submitter address line 4";
    gedcomStr += "2 ADR1 Submitter address line 1";
    gedcomStr += "2 ADR2 Submitter address line 2";
    gedcomStr += "2 CITY Submitter address city";
    gedcomStr += "2 STAE Submitter address state";
    gedcomStr += "2 POST Submitter address ZIP code";
    gedcomStr += "2 CTRY Submitter address country";
    gedcomStr += "1 PHON Submitter phone number 1";
    gedcomStr += "1 PHON Submitter phone number 2";
    gedcomStr += "1 PHON Submitter phone number 3 (last one!)";
    gedcomStr += "1 LANG English";
    gedcomStr += "1 OBJE";
    gedcomStr += "2 FORM jpeg";
    gedcomStr += "2 TITL Submitter Multimedia File";
    gedcomStr += "2 FILE ImgFile.JPG";
    gedcomStr += "2 NOTE @N1@";
    gedcomStr += "1 RFN Submitter Registered RFN";
    gedcomStr += "1 RIN 1";
    gedcomStr += "1 CHAN";
    gedcomStr += "2 DATE 7 Sep 2000";
    gedcomStr += "3 TIME 8:35:36";
    gedcomStr += "0 @SM2@ SUBM";
    gedcomStr += "1 NAME Secondary Submitter";
    gedcomStr += "1 ADDR Secondary Submitter Address 1";
    gedcomStr += "2 CONT Secondary Submitter Address 2";
    gedcomStr += "1 LANG English";
    gedcomStr += "1 CHAN";
    gedcomStr += "2 DATE 12 Mar 2000";
    gedcomStr += "3 TIME 10:38:33";
    gedcomStr += "1 RIN 2";
    gedcomStr += "0 @SM3@ SUBM";
    gedcomStr += "1 NAME H. Eichmann";
    gedcomStr += "1 ADDR email: h.eichmann@@mbox.iqo.uni-hannover.de";
    gedcomStr += "2 CONT or: heiner_eichmann@@h.maus.de (no more than 16k!!!!)";
    gedcomStr += "1 CHAN";
    gedcomStr += "2 DATE 13 Jun 2000";
    gedcomStr += "3 TIME 17:07:32";
    gedcomStr += "1 RIN 3";
    gedcomStr += "0 @I14@ INDI";
    gedcomStr += "1 NAME Charlie Accented /ANSEL/";
    gedcomStr += "1 SEX M";
    gedcomStr += "1 BIRT";
    gedcomStr += "2 DATE 15 JUN 1900";
    gedcomStr += "1 DEAT";
    gedcomStr += "2 DATE 5 JUL 1974";
    gedcomStr += "1 FAMS @F6@";
    gedcomStr += "1 FAMC @F7@";
    gedcomStr += "1 NOTE @N24@";
    gedcomStr += "1 CHAN";
    gedcomStr += "2 DATE 11 Jan 2001";
    gedcomStr += "3 TIME 16:00:06";
    gedcomStr += "1 RIN 1";
    gedcomStr += "0 @I13@ INDI";
    gedcomStr += "1 NAME Lucy Special /ANSEL/";
    gedcomStr += "1 SEX F";
    gedcomStr += "1 BIRT";
    gedcomStr += "2 DATE 12 AUG 1905";
    gedcomStr += "1 DEAT";
    gedcomStr += "2 DATE 31 DEC 1990";
    gedcomStr += "1 FAMS @F6@";
    gedcomStr += "1 NOTE @N25@";
    gedcomStr += "1 CHAN";
    gedcomStr += "2 DATE 11 Jan 2001";
    gedcomStr += "3 TIME 16:00:23";
    gedcomStr += "1 RIN 2";
    gedcomStr += "0 @PERSON6@ INDI";
    gedcomStr += "1 NAME Teresa Mary /Caregiver/";
    gedcomStr += "1 SEX F";
    gedcomStr += "1 BIRT";
    gedcomStr += "2 DATE 6 JUN 1944";
    gedcomStr += "1 FAMS @ADOPTIVE_PARENTS@";
    gedcomStr += "1 NOTE @N27@";
    gedcomStr += "1 CHAN";
    gedcomStr += "2 DATE 11 Jan 2001";
    gedcomStr += "3 TIME 16:03:05";
    gedcomStr += "1 RIN 3";
    gedcomStr += "0 @I12@ INDI";
    gedcomStr += "1 NAME Extra URL /Filelinks/";
    gedcomStr += "1 SEX F";
    gedcomStr += "1 BIRT";
    gedcomStr += "2 DATE 1875";
    gedcomStr += "1 FAMC @F5@";
    gedcomStr += "1 NOTE @N23@";
    gedcomStr += "1 OBJE";
    gedcomStr += "2 FORM URL";
    gedcomStr += "2 TITL GEDCOM 5.5 documentation web site";
    gedcomStr += "2 FILE http://homepages.rootsweb.com/~pmcbride/gedcom/55gctoc.htm";
    gedcomStr += "1 OBJE";
    gedcomStr += "2 FORM URL";
    gedcomStr += "2 TITL FTP site with many GEDCOM files";
    gedcomStr += "2 FILE ftp://ftp.genealogy.org/genealogy/GEDCOM/";
    gedcomStr += "1 OBJE";
    gedcomStr += "2 FORM URL";
    gedcomStr += "2 TITL GEDitCOM Macintosh genealogy software home page";
    gedcomStr += "2 FILE http://www.geditcom.com";
    gedcomStr += "1 OBJE";
    gedcomStr += "2 FORM URL";
    gedcomStr += "2 TITL Email comments on this GEDCOM file to here";
    gedcomStr += "2 FILE mailto:support@geditcom.com";
    gedcomStr += "1 CHAN";
    gedcomStr += "2 DATE 11 Jan 2001";
    gedcomStr += "3 TIME 16:01:19";
    gedcomStr += "1 RIN 4";
    gedcomStr += "0 @I11@ INDI";
    gedcomStr += "1 NAME General Custom /Filelinks/";
    gedcomStr += "1 SEX M";
    gedcomStr += "1 BIRT";
    gedcomStr += "2 DATE 1872";
    gedcomStr += "1 DEAT";
    gedcomStr += "2 DATE 7 DEC 1941";
    gedcomStr += "1 FAMC @F5@";
    gedcomStr += "1 NOTE @N22@";
    gedcomStr += "1 OBJE";
    gedcomStr += "2 FORM TEXT";
    gedcomStr += "2 TITL Plain TEXT document";
    gedcomStr += "2 FILE Document.tex";
    gedcomStr += "1 OBJE";
    gedcomStr += "2 FORM W8BN";
    gedcomStr += "2 TITL Microsoft Word document";
    gedcomStr += "2 FILE Document.DOC";
    gedcomStr += "1 OBJE";
    gedcomStr += "2 FORM RTF";
    gedcomStr += "2 TITL Rich text format document";
    gedcomStr += "2 FILE Document.RTF";
    gedcomStr += "1 OBJE";
    gedcomStr += "2 FORM PDF";
    gedcomStr += "2 TITL Portable document format file";
    gedcomStr += "2 FILE Document.pdf";
    gedcomStr += "1 CHAN";
    gedcomStr += "2 DATE 11 Jan 2001";
    gedcomStr += "3 TIME 16:01:03";
    gedcomStr += "1 RIN 5";
    gedcomStr += "0 @I10@ INDI";
    gedcomStr += "1 NAME Nonstandard Multimedia /Filelinks/";
    gedcomStr += "1 SEX F";
    gedcomStr += "1 BIRT";
    gedcomStr += "2 DATE 1870";
    gedcomStr += "1 DEAT Y";
    gedcomStr += "1 FAMS @F7@";
    gedcomStr += "1 FAMC @F5@";
    gedcomStr += "1 NOTE @N21@";
    gedcomStr += "1 OBJE";
    gedcomStr += "2 FORM PICT";
    gedcomStr += "2 TITL Macintosh PICT file";
    gedcomStr += "2 FILE ImgFile.PIC";
    gedcomStr += "1 OBJE";
    gedcomStr += "2 FORM PNTG";
    gedcomStr += "2 TITL Macintosh MacPaint file";
    gedcomStr += "2 FILE ImgFile.MAC";
    gedcomStr += "1 OBJE";
    gedcomStr += "2 FORM TPIC";
    gedcomStr += "2 TITL TGA image file";
    gedcomStr += "2 FILE ImgFile.TGA";
    gedcomStr += "1 OBJE";
    gedcomStr += "2 FORM aiff";
    gedcomStr += "2 TITL Macintosh sound file";
    gedcomStr += "2 FILE enthist.aif";
    gedcomStr += "1 OBJE";
    gedcomStr += "2 FORM mov";
    gedcomStr += "2 TITL QuickTime movie file";
    gedcomStr += "2 FILE suntun.mov";
    gedcomStr += "1 OBJE";
    gedcomStr += "2 TITL Adobe Photoshop file";
    gedcomStr += "2 FORM 8BPS";
    gedcomStr += "2 FILE ImgFile.PSD";
    gedcomStr += "1 OBJE";
    gedcomStr += "2 FORM mpeg";
    gedcomStr += "2 TITL Mpeg Movie File";
    gedcomStr += "2 FILE top.mpg";
    gedcomStr += "1 CHAN";
    gedcomStr += "2 DATE 11 Jan 2001";
    gedcomStr += "3 TIME 16:00:39";
    gedcomStr += "1 RIN 6";
    gedcomStr += "0 @I9@ INDI";
    gedcomStr += "1 NAME Standard GEDCOM /Filelinks/";
    gedcomStr += "1 SEX M";
    gedcomStr += "1 BIRT";
    gedcomStr += "2 DATE 1835";
    gedcomStr += "1 FAMS @F5@";
    gedcomStr += "1 NOTE @N18@";
    gedcomStr += "1 OBJE";
    gedcomStr += "2 TITL Windows bit mapped image file";
    gedcomStr += "2 FORM bmp";
    gedcomStr += "2 FILE ImgFile.BMP";
    gedcomStr += "1 OBJE";
    gedcomStr += "2 TITL GIF image file";
    gedcomStr += "2 FORM gif";
    gedcomStr += "2 FILE ImgFile.GIF";
    gedcomStr += "1 OBJE";
    gedcomStr += "2 TITL JPEG image file";
    gedcomStr += "2 FORM jpeg";
    gedcomStr += "2 FILE ImgFile.JPG";
    gedcomStr += "1 OBJE";
    gedcomStr += "2 TITL Tagged image format file";
    gedcomStr += "2 FORM tiff";
    gedcomStr += "2 FILE ImgFile.TIF";
    gedcomStr += "1 OBJE";
    gedcomStr += "2 FORM pcx";
    gedcomStr += "2 TITL Windows paint brush file";
    gedcomStr += "2 FILE ImgFile.PCX";
    gedcomStr += "1 OBJE";
    gedcomStr += "2 TITL Windows sound File";
    gedcomStr += "2 FORM wav";
    gedcomStr += "2 FILE force.wav";
    gedcomStr += "1 OBJE @M1@";
    gedcomStr += "1 CHAN";
    gedcomStr += "2 DATE 11 Jan 2001";
    gedcomStr += "3 TIME 16:02:06";
    gedcomStr += "1 RIN 7";
    gedcomStr += "0 @PERSON2@ INDI";
    gedcomStr += "1 NAME Mary First /Jones/";
    gedcomStr += "1 SEX F";
    gedcomStr += "1 BIRT";
    gedcomStr += "2 DATE BEF 1970";
    gedcomStr += "1 DEAT";
    gedcomStr += "2 DATE AFT 2000";
    gedcomStr += "1 FAMS @FAMILY1@";
    gedcomStr += "1 NOTE @N31@";
    gedcomStr += "1 CHAN";
    gedcomStr += "2 DATE 11 Jan 2001";
    gedcomStr += "3 TIME 15:58:16";
    gedcomStr += "1 RIN 8";
    gedcomStr += "0 @I15@ INDI";
    gedcomStr += "1 NAME Torture GEDCOM /Matriarch/";
    gedcomStr += "1 SEX F";
    gedcomStr += "1 BIRT";
    gedcomStr += "2 DATE 12 FEB 1840";
    gedcomStr += "1 DEAT";
    gedcomStr += "2 DATE 15 JUN 1915";
    gedcomStr += "1 FAMS @F5@";
    gedcomStr += "1 CHAN";
    gedcomStr += "2 DATE 11 Jan 2001";
    gedcomStr += "3 TIME 16:01:59";
    gedcomStr += "1 RIN 9";
    gedcomStr += "0 @PERSON8@ INDI";
    gedcomStr += "1 NAME Elizabeth Second /Smith/";
    gedcomStr += "1 SEX F";
    gedcomStr += "1 BIRT";
    gedcomStr += "2 DATE BET MAY 1979 AND AUG 1979";
    gedcomStr += "1 DEAT";
    gedcomStr += "2 DATE FROM APR 2000 TO 5 MAR 2001";
    gedcomStr += "1 FAMS @FAMILY2@";
    gedcomStr += "1 NOTE @N32@";
    gedcomStr += "1 CHAN";
    gedcomStr += "2 DATE 11 Jan 2001";
    gedcomStr += "3 TIME 15:58:58";
    gedcomStr += "1 RIN 10";
    gedcomStr += "0 @PERSON3@ INDI";
    gedcomStr += "1 NAME Chris Locked /Torture/";
    gedcomStr += "1 BIRT";
    gedcomStr += "2 DATE MAR 1999";
    gedcomStr += "2 PLAC Las Vegas, Nevada USA";
    gedcomStr += "1 FAMC @FAMILY1@";
    gedcomStr += "1 NOTE @N20@";
    gedcomStr += "1 CHAN";
    gedcomStr += "2 DATE 11 Jan 2001";
    gedcomStr += "3 TIME 15:55:43";
    gedcomStr += "2 NOTE This date is the last time this record was changed";
    gedcomStr += "1 RESN locked";
    gedcomStr += "1 RIN 11";
    gedcomStr += "0 @PERSON1@ INDI";
    gedcomStr += "1 NAME Joseph Tag /Torture/";
    gedcomStr += "2 NPFX Prof.";
    gedcomStr += "2 GIVN Joseph";
    gedcomStr += "2 NICK Joe";
    gedcomStr += "2 SPFX Le";
    gedcomStr += "2 SURN Torture";
    gedcomStr += "2 NSFX Jr.";
    gedcomStr += "2 SOUR @SOURCE1@";
    gedcomStr += "3 PAGE 42";
    gedcomStr += "2 NOTE These are notes about the first NAME structure in this record. These notes are ";
    gedcomStr += "3 CONC embedded in the INDIVIDUAL record itself.";
    gedcomStr += "3 CONT ";
    gedcomStr += "3 CONT The second name structure in this record uses all possible tags for a personal name ";
    gedcomStr += "3 CONC structure.";
    gedcomStr += "3 CONT ";
    gedcomStr += "3 CONT NOTE: many applications are confused by two NAME structures.";
    gedcomStr += "1 SEX M";
    gedcomStr += "1 NAME William John /Smith/";
    gedcomStr += "2 SOUR @SOURCE1@";
    gedcomStr += "3 PAGE 55";
    gedcomStr += "3 EVEN Event type cited in source";
    gedcomStr += "4 ROLE Role in cited event";
    gedcomStr += "3 DATA";
    gedcomStr += "4 DATE 1 JAN 1900";
    gedcomStr += "4 TEXT Here is some text from the source specific to this source ";
    gedcomStr += "5 CONC citation.";
    gedcomStr += "5 CONT Here is more text but on a new line.";
    gedcomStr += "3 QUAY 0";
    gedcomStr += "3 OBJE";
    gedcomStr += "4 TITL Multimedia link about this source";
    gedcomStr += "4 FORM jpeg";
    gedcomStr += "4 NOTE @N26@";
    gedcomStr += "4 FILE ImgFile.JPG";
    gedcomStr += "3 NOTE @N7@";
    gedcomStr += "2 NOTE This is a second personal NAME structure in a single INDIVIDUAL record ";
    gedcomStr += "3 CONC which is allowed in GEDCOM. This second NAME structure has all possible ";
    gedcomStr += "3 CONC fields for a NAME structure.";
    gedcomStr += "3 CONT ";
    gedcomStr += "3 CONT These notes are embedded in the INDIVIDUAL record.";
    gedcomStr += "1 BIRT";
    gedcomStr += "2 DATE 31 DEC 1965";
    gedcomStr += "2 PLAC Salt Lake City, UT, USA";
    gedcomStr += "2 TYPE Normal";
    gedcomStr += "2 ADDR St. Marks Hospital";
    gedcomStr += "3 CONT Salt Lake City, UT";
    gedcomStr += "3 CONT USA";
    gedcomStr += "2 AGNC none";
    gedcomStr += "2 OBJE";
    gedcomStr += "3 TITL Link to multimedia file";
    gedcomStr += "3 FORM tiff";
    gedcomStr += "3 FILE ImgFile.TIF";
    gedcomStr += "2 SOUR @SOURCE1@";
    gedcomStr += "3 PAGE 42";
    gedcomStr += "3 QUAY 2";
    gedcomStr += "3 NOTE Some notes about this birth source citation which are embedded in the citation ";
    gedcomStr += "4 CONC structure itself.";
    gedcomStr += "2 NOTE @N8@";
    gedcomStr += "2 FAMC @PARENTS@";
    gedcomStr += "1 DEAT";
    gedcomStr += "2 DATE ABT 15 JAN 2001";
    gedcomStr += "2 PLAC New York, New York, USA";
    gedcomStr += "3 FORM city, state, country";
    gedcomStr += "3 NOTE The place structure has more detail than usually used for places";
    gedcomStr += "3 SOUR @SOURCE1@";
    gedcomStr += "2 AGE 76";
    gedcomStr += "2 TYPE slow";
    gedcomStr += "2 ADDR at Home";
    gedcomStr += "2 CAUS Cancer";
    gedcomStr += "2 AGNC none";
    gedcomStr += "2 OBJE";
    gedcomStr += "3 FORM jpeg";
    gedcomStr += "3 TITL Multimedia link about the death event";
    gedcomStr += "3 FILE ImgFile.JPG";
    gedcomStr += "2 SOUR @SOURCE1@";
    gedcomStr += "3 PAGE 42";
    gedcomStr += "3 DATA";
    gedcomStr += "4 DATE 31 DEC 1900";
    gedcomStr += "4 TEXT Some death source text.";
    gedcomStr += "3 QUAY 3";
    gedcomStr += "3 NOTE A death source note.";
    gedcomStr += "2 NOTE A death event note.";
    gedcomStr += "1 FAMS @FAMILY1@";
    gedcomStr += "2 NOTE Note about the link to the family record with his first spouse.";
    gedcomStr += "2 NOTE Another note about the link to the family record with his first spouse.";
    gedcomStr += "1 FAMS @FAMILY2@";
    gedcomStr += "1 FAMC @PARENTS@";
    gedcomStr += "2 NOTE Note about this link to his parents family record.";
    gedcomStr += "2 NOTE Another note about this link to his parents family record";
    gedcomStr += "1 FAMC @ADOPTIVE_PARENTS@";
    gedcomStr += "2 PEDI adopted";
    gedcomStr += "2 NOTE Note about the link to his adoptive parents family record.";
    gedcomStr += "1 BAPM Y";
    gedcomStr += "2 DATE ABT 31 DEC 1997";
    gedcomStr += "2 PLAC The place";
    gedcomStr += "2 AGE 3 months";
    gedcomStr += "2 TYPE BAPM";
    gedcomStr += "2 ADDR Church Name";
    gedcomStr += "3 CONT Street Address";
    gedcomStr += "3 CONT City Name, zip";
    gedcomStr += "3 CONT Country";
    gedcomStr += "2 CAUS Birth";
    gedcomStr += "2 AGNC The Church";
    gedcomStr += "2 OBJE";
    gedcomStr += "3 FORM jpeg";
    gedcomStr += "3 TITL JPEG File Link";
    gedcomStr += "3 FILE ImgFile.JPG";
    gedcomStr += "2 SOUR @SOURCE1@";
    gedcomStr += "3 PAGE 42";
    gedcomStr += "3 DATA";
    gedcomStr += "4 DATE 31 DEC 1900";
    gedcomStr += "4 TEXT Sample baptism Source text.";
    gedcomStr += "3 QUAY 3";
    gedcomStr += "3 NOTE A baptism source note.";
    gedcomStr += "2 NOTE A baptism event note (the event of baptism (not LDS), performed in infancy or later. See also BAPL and CHR).";
    gedcomStr += "1 CHR";
    gedcomStr += "2 DATE CAL 31 DEC 1997";
    gedcomStr += "2 PLAC The place";
    gedcomStr += "2 TYPE CHR";
    gedcomStr += "2 SOUR @SOURCE1@";
    gedcomStr += "3 PAGE 42";
    gedcomStr += "3 DATA";
    gedcomStr += "4 DATE 31 DEC 1900";
    gedcomStr += "4 TEXT Sample CHR Source text.";
    gedcomStr += "3 QUAY 3";
    gedcomStr += "3 NOTE A christening Source note.";
    gedcomStr += "2 NOTE Christening event note (the religious event (not LDS) of baptizing and/or naming a ";
    gedcomStr += "3 CONC child).";
    gedcomStr += "2 FAMC @ADOPTIVE_PARENTS@";
    gedcomStr += "1 CHR";
    gedcomStr += "2 DATE EST 30 DEC 1997";
    gedcomStr += "2 PLAC The place";
    gedcomStr += "2 TYPE CHR";
    gedcomStr += "2 SOUR @SOURCE1@";
    gedcomStr += "3 PAGE 42";
    gedcomStr += "3 DATA";
    gedcomStr += "4 DATE 31 DEC 1900";
    gedcomStr += "4 TEXT Some christening source text.";
    gedcomStr += "5 CONT This is the second christening structure.";
    gedcomStr += "3 QUAY 3";
    gedcomStr += "3 NOTE A christening Source note.";
    gedcomStr += "2 NOTE Alternative christening event note. GEDOM allows more than one of the same type ";
    gedcomStr += "3 CONC of event.";
    gedcomStr += "1 BLES";
    gedcomStr += "2 DATE BEF 31 DEC 1997";
    gedcomStr += "2 PLAC The place";
    gedcomStr += "2 TYPE BLES";
    gedcomStr += "2 SOUR @SOURCE1@";
    gedcomStr += "3 PAGE 42";
    gedcomStr += "3 DATA";
    gedcomStr += "4 DATE 31 DEC 1900";
    gedcomStr += "4 TEXT Some blessing source text.";
    gedcomStr += "3 QUAY 3";
    gedcomStr += "3 NOTE A blessing source note.";
    gedcomStr += "2 NOTE Blessing event note (a religious event of bestowing divine care or intercession. ";
    gedcomStr += "3 CONC Sometimes given in connection with a naming ceremony)";
    gedcomStr += "1 BARM";
    gedcomStr += "2 DATE AFT 31 DEC 1997";
    gedcomStr += "2 PLAC The place";
    gedcomStr += "2 TYPE BARM";
    gedcomStr += "2 SOUR @SOURCE1@";
    gedcomStr += "3 PAGE 42";
    gedcomStr += "3 DATA";
    gedcomStr += "4 DATE 31 DEC 1900";
    gedcomStr += "4 TEXT Some Bar Mitzvah source text.";
    gedcomStr += "3 QUAY 3";
    gedcomStr += "3 NOTE A Bar Mitzvah source note.";
    gedcomStr += "2 NOTE Bar Mitzvah event note (the ceremonial event held when a Jewish boy reaches age ";
    gedcomStr += "3 CONC 13).";
    gedcomStr += "1 BASM";
    gedcomStr += "2 DATE FROM 31 DEC 1997";
    gedcomStr += "2 PLAC The place";
    gedcomStr += "2 TYPE BASM";
    gedcomStr += "2 SOUR @SOURCE1@";
    gedcomStr += "3 PAGE 42";
    gedcomStr += "3 DATA";
    gedcomStr += "4 DATE 31 DEC 1900";
    gedcomStr += "4 TEXT Some Bas Mitzvah source text.";
    gedcomStr += "3 QUAY 3";
    gedcomStr += "3 NOTE A Bas Mitzvah source note.";
    gedcomStr += "2 NOTE Bas Mitzvah event note (the ceremonial event held when a Jewish girl reaches age 13, ";
    gedcomStr += "3 CONC also known as \"Bat Mitzvah\").";
    gedcomStr += "1 ADOP Y";
    gedcomStr += "2 DATE TO 31 DEC 1997";
    gedcomStr += "2 PLAC The place";
    gedcomStr += "2 TYPE ADOP";
    gedcomStr += "2 SOUR @SOURCE1@";
    gedcomStr += "3 PAGE 42";
    gedcomStr += "3 DATA";
    gedcomStr += "4 DATE 31 DEC 1900";
    gedcomStr += "4 TEXT Some adoption source text.";
    gedcomStr += "3 QUAY 3";
    gedcomStr += "3 NOTE An adoption source note.";
    gedcomStr += "2 NOTE Adoption event note (pertaining to creation of a child-parent relationship that does ";
    gedcomStr += "3 CONC not exist biologically).";
    gedcomStr += "2 FAMC @ADOPTIVE_PARENTS@";
    gedcomStr += "3 ADOP BOTH";
    gedcomStr += "1 CHRA";
    gedcomStr += "2 DATE BET 31 DEC 1997 AND 1 FEB 1998";
    gedcomStr += "2 PLAC The place";
    gedcomStr += "2 TYPE CHRA";
    gedcomStr += "2 SOUR @SOURCE1@";
    gedcomStr += "3 PAGE 42";
    gedcomStr += "3 DATA";
    gedcomStr += "4 DATE 31 DEC 1900";
    gedcomStr += "4 TEXT Some christening source text.";
    gedcomStr += "3 QUAY 3";
    gedcomStr += "3 NOTE A christening source note.";
    gedcomStr += "2 NOTE Adult christening event note (the religious event (not LDS) of baptizing and/or ";
    gedcomStr += "3 CONC naming an adult person).";
    gedcomStr += "1 CONF";
    gedcomStr += "2 DATE FROM 31 DEC 1997 TO 2 JAN 1998";
    gedcomStr += "2 PLAC The place";
    gedcomStr += "2 TYPE CONF";
    gedcomStr += "2 SOUR @SOURCE1@";
    gedcomStr += "3 PAGE 42";
    gedcomStr += "3 DATA";
    gedcomStr += "4 DATE 31 DEC 1900";
    gedcomStr += "4 TEXT Some CONF Source text.";
    gedcomStr += "3 QUAY 3";
    gedcomStr += "3 NOTE A CONF Source note.";
    gedcomStr += "2 NOTE CONFIRMATION event note (the religious event (not LDS) of conferring the gift of the Holy Ghost and, among protestants, full church membership).";
    gedcomStr += "1 FCOM";
    gedcomStr += "2 DATE INT 31 DEC 1997 (a test)";
    gedcomStr += "2 PLAC The place";
    gedcomStr += "2 TYPE FCOM";
    gedcomStr += "2 SOUR @SOURCE1@";
    gedcomStr += "3 PAGE 42";
    gedcomStr += "3 DATA";
    gedcomStr += "4 DATE 31 DEC 1900";
    gedcomStr += "4 TEXT Some first communion source text.";
    gedcomStr += "3 QUAY 3";
    gedcomStr += "3 NOTE An first communion source note.";
    gedcomStr += "2 NOTE First communion event note (a religious rite, the first act of sharing in the Lord's ";
    gedcomStr += "3 CONC supper as part of church worship).";
    gedcomStr += "1 ORDN";
    gedcomStr += "2 DATE (No idea of the date)";
    gedcomStr += "2 PLAC The place";
    gedcomStr += "2 TYPE ORDN";
    gedcomStr += "2 SOUR @SOURCE1@";
    gedcomStr += "3 PAGE 42";
    gedcomStr += "3 DATA";
    gedcomStr += "4 DATE 31 DEC 1900";
    gedcomStr += "4 TEXT Some ordination source text.";
    gedcomStr += "3 QUAY 3";
    gedcomStr += "3 NOTE An ordination source note.";
    gedcomStr += "2 NOTE Ordination event note (a religious event of receiving authority to act in religious ";
    gedcomStr += "3 CONC matters).";
    gedcomStr += "1 GRAD";
    gedcomStr += "2 DATE 31 DEC 1997";
    gedcomStr += "2 PLAC The place";
    gedcomStr += "2 TYPE GRAD";
    gedcomStr += "2 SOUR @SOURCE1@";
    gedcomStr += "3 PAGE 42";
    gedcomStr += "3 DATA";
    gedcomStr += "4 DATE 31 DEC 1900";
    gedcomStr += "4 TEXT Some graduation source text.";
    gedcomStr += "3 QUAY 3";
    gedcomStr += "3 NOTE A graduation source note.";
    gedcomStr += "2 NOTE Graduation event note (an event of awarding educational diplomas or degrees to ";
    gedcomStr += "3 CONC individuals).";
    gedcomStr += "1 EMIG";
    gedcomStr += "2 DATE 1997";
    gedcomStr += "2 PLAC The place";
    gedcomStr += "2 TYPE EMIG";
    gedcomStr += "2 SOUR @SOURCE1@";
    gedcomStr += "3 PAGE 42";
    gedcomStr += "3 DATA";
    gedcomStr += "4 DATE 31 DEC 1900";
    gedcomStr += "4 TEXT Some emigration source text.";
    gedcomStr += "3 QUAY 3";
    gedcomStr += "3 NOTE An emigration source note.";
    gedcomStr += "2 NOTE Emigration event note (an event of leaving one's homeland with the intent of residing ";
    gedcomStr += "3 CONC elsewhere).";
    gedcomStr += "1 IMMI";
    gedcomStr += "2 DATE DEC 1997";
    gedcomStr += "2 PLAC The place";
    gedcomStr += "2 TYPE IMMI";
    gedcomStr += "2 SOUR @SOURCE1@";
    gedcomStr += "3 PAGE 42";
    gedcomStr += "3 DATA";
    gedcomStr += "4 DATE 31 DEC 1900";
    gedcomStr += "4 TEXT Some immigration source text.";
    gedcomStr += "3 QUAY 3";
    gedcomStr += "3 NOTE An immigration source note.";
    gedcomStr += "2 NOTE Immigration event note (an event of entering into a new locality with the intent of ";
    gedcomStr += "3 CONC residing there).";
    gedcomStr += "1 NATU";
    gedcomStr += "2 DATE 5 AUG 1100 B.C.";
    gedcomStr += "2 PLAC The place";
    gedcomStr += "2 TYPE NATU";
    gedcomStr += "2 SOUR @SOURCE1@";
    gedcomStr += "3 PAGE 42";
    gedcomStr += "3 DATA";
    gedcomStr += "4 DATE 31 DEC 1900";
    gedcomStr += "4 TEXT Some naturalization source text.";
    gedcomStr += "3 QUAY 3";
    gedcomStr += "3 NOTE A naturalization source note.";
    gedcomStr += "2 NOTE Naturalization event note (the event of obtaining citizenship).";
    gedcomStr += "1 CENS";
    gedcomStr += "2 DATE 2 TVT 5758";
    gedcomStr += "2 PLAC The place";
    gedcomStr += "2 TYPE CENS";
    gedcomStr += "2 SOUR @SOURCE1@";
    gedcomStr += "3 PAGE 42";
    gedcomStr += "3 DATA";
    gedcomStr += "4 DATE 31 DEC 1900";
    gedcomStr += "4 TEXT Some census source text.";
    gedcomStr += "3 QUAY 3";
    gedcomStr += "3 NOTE A census source note.";
    gedcomStr += "2 NOTE Census event note (the event of the periodic count of the population for a designated ";
    gedcomStr += "3 CONC locality, such as a national or state Census).";
    gedcomStr += "1 RETI";
    gedcomStr += "2 DATE 11 NIVO 0006";
    gedcomStr += "2 PLAC The place";
    gedcomStr += "2 TYPE RETI";
    gedcomStr += "2 SOUR @SOURCE1@";
    gedcomStr += "3 PAGE 42";
    gedcomStr += "3 DATA";
    gedcomStr += "4 DATE 31 DEC 1900";
    gedcomStr += "4 TEXT Some retirement source text.";
    gedcomStr += "3 QUAY 3";
    gedcomStr += "3 NOTE A retirement source note.";
    gedcomStr += "2 NOTE Retirement event note (an event of exiting an occupational relationship with an ";
    gedcomStr += "3 CONC employer after a qualifying time period).";
    gedcomStr += "1 PROB";
    gedcomStr += "2 DATE FROM 25 SVN 5757 TO 26 IYR 5757";
    gedcomStr += "2 PLAC The place";
    gedcomStr += "2 TYPE PROB";
    gedcomStr += "2 SOUR @SOURCE1@";
    gedcomStr += "3 PAGE 42";
    gedcomStr += "3 DATA";
    gedcomStr += "4 DATE 31 DEC 1900";
    gedcomStr += "4 TEXT Some probate source text.";
    gedcomStr += "3 QUAY 3";
    gedcomStr += "3 NOTE A probate source note.";
    gedcomStr += "2 NOTE Probate event note (an event of judicial determination of the validity of a will. May ";
    gedcomStr += "3 CONC indicate several related court activities over several dates).";
    gedcomStr += "1 BURI";
    gedcomStr += "2 DATE 5 VEND 0010";
    gedcomStr += "2 PLAC The place";
    gedcomStr += "2 TYPE BURI";
    gedcomStr += "2 SOUR @SOURCE1@";
    gedcomStr += "3 PAGE 42";
    gedcomStr += "3 DATA";
    gedcomStr += "4 DATE 31 DEC 1900";
    gedcomStr += "4 TEXT Some burial source text.";
    gedcomStr += "3 QUAY 3";
    gedcomStr += "3 NOTE A burial source note.";
    gedcomStr += "2 NOTE Burial event note (the event of the proper disposing of the mortal remains of a ";
    gedcomStr += "3 CONC deceased person).";
    gedcomStr += "1 WILL";
    gedcomStr += "2 DATE INT 2 TVT 5758 (interpreted Hebrew date)";
    gedcomStr += "2 PLAC The place";
    gedcomStr += "2 TYPE WILL";
    gedcomStr += "2 SOUR @SOURCE1@";
    gedcomStr += "3 PAGE 42";
    gedcomStr += "3 DATA";
    gedcomStr += "4 DATE 31 DEC 1900";
    gedcomStr += "4 TEXT Some will source text.";
    gedcomStr += "3 QUAY 3";
    gedcomStr += "3 NOTE A will source note.";
    gedcomStr += "2 NOTE Will event note (a legal document treated as an event, by which a person disposes of ";
    gedcomStr += "3 CONC his or her estate, to take effect after death. The event date is the date the will was ";
    gedcomStr += "3 CONC signed while the person was alive. See also Probate).";
    gedcomStr += "1 CREM Y";
    gedcomStr += "1 EVEN";
    gedcomStr += "2 DATE 5 MAY 0005";
    gedcomStr += "2 PLAC The place";
    gedcomStr += "2 TYPE EVEN";
    gedcomStr += "2 SOUR @SOURCE1@";
    gedcomStr += "3 PAGE 42";
    gedcomStr += "3 DATA";
    gedcomStr += "4 DATE 31 DEC 1900";
    gedcomStr += "4 TEXT Some generic event source text.";
    gedcomStr += "3 QUAY 3";
    gedcomStr += "3 NOTE A generic event source note.";
    gedcomStr += "2 NOTE Generic event note (a noteworthy happening related to an individual, a group, or an ";
    gedcomStr += "3 CONC organization). The TYPE tag specifies the type of event.";
    gedcomStr += "1 BAPL";
    gedcomStr += "2 DATE 5 MAY 0005 B.C.";
    gedcomStr += "2 PLAC Salt Lake City";
    gedcomStr += "2 STAT Cleared";
    gedcomStr += "2 TEMP Mormon Temple";
    gedcomStr += "2 SOUR @SOURCE1@";
    gedcomStr += "2 NOTE @N5@";
    gedcomStr += "1 CONL Y";
    gedcomStr += "1 ENDL";
    gedcomStr += "2 DATE BET 5 APR 1712/13 AND 28 SEP 1714/15";
    gedcomStr += "1 SLGC";
    gedcomStr += "2 DATE 27 OCT 1699/00";
    gedcomStr += "2 FAMC @PARENTS@";
    gedcomStr += "1 RESI";
    gedcomStr += "2 DATE 31 DEC 1997";
    gedcomStr += "2 PLAC The place";
    gedcomStr += "2 AGE 35";
    gedcomStr += "2 TYPE RESI";
    gedcomStr += "2 ADDR Address in Free Form Line 1";
    gedcomStr += "3 CONT Address in Free Form Line 2";
    gedcomStr += "3 CONT Address in Free Form Line 3";
    gedcomStr += "3 ADR1 Special Address Line 1";
    gedcomStr += "3 ADR2 Special Address Line 2";
    gedcomStr += "3 CITY City Name";
    gedcomStr += "3 STAE State name";
    gedcomStr += "3 POST Postal Code";
    gedcomStr += "3 CTRY USA";
    gedcomStr += "2 PHON +1-800-555-5555";
    gedcomStr += "2 CAUS Needed housing";
    gedcomStr += "2 AGNC None";
    gedcomStr += "2 SOUR @SOURCE1@";
    gedcomStr += "3 PAGE 42";
    gedcomStr += "3 DATA";
    gedcomStr += "4 DATE 31 DEC 1900";
    gedcomStr += "4 TEXT Some residence source text.";
    gedcomStr += "3 QUAY 3";
    gedcomStr += "3 NOTE A residence source note.";
    gedcomStr += "2 NOTE Residence attribute note (the act of dwelling at an address for a period of time).";
    gedcomStr += "1 OCCU Occupation";
    gedcomStr += "2 DATE 31 DEC 1997";
    gedcomStr += "2 AGE 40";
    gedcomStr += "2 PLAC The place";
    gedcomStr += "2 TYPE OCCU";
    gedcomStr += "2 ADDR Work address line 1";
    gedcomStr += "3 CONT Work address line 2";
    gedcomStr += "3 CONT Work address line 3";
    gedcomStr += "2 CAUS Need for money";
    gedcomStr += "2 AGNC Employer";
    gedcomStr += "2 OBJE";
    gedcomStr += "3 FORM gif";
    gedcomStr += "3 TITL GIF Image File";
    gedcomStr += "3 FILE ImgFile.GIF";
    gedcomStr += "2 SOUR @SOURCE1@";
    gedcomStr += "3 PAGE 42";
    gedcomStr += "3 DATA";
    gedcomStr += "4 DATE 31 DEC 1900";
    gedcomStr += "4 TEXT Some occupation source text.";
    gedcomStr += "3 QUAY 3";
    gedcomStr += "3 NOTE An occupation source note.";
    gedcomStr += "2 NOTE Occupation attribute note (the type of work or profession of an individual).";
    gedcomStr += "1 OCCU Another occupation";
    gedcomStr += "2 DATE 31 DEC 1998";
    gedcomStr += "2 PLAC The place";
    gedcomStr += "2 TYPE OCCU";
    gedcomStr += "2 SOUR @SOURCE1@";
    gedcomStr += "3 PAGE 42";
    gedcomStr += "3 DATA";
    gedcomStr += "4 DATE 31 DEC 1900";
    gedcomStr += "4 TEXT Some occupation source text.";
    gedcomStr += "3 QUAY 3";
    gedcomStr += "3 NOTE An occupation source note.";
    gedcomStr += "2 NOTE Occupation attribute note. This is the second occupation attribute in the record.";
    gedcomStr += "1 EDUC Education";
    gedcomStr += "2 DATE 31 DEC 1997";
    gedcomStr += "2 PLAC The place";
    gedcomStr += "2 TYPE EDUC";
    gedcomStr += "2 SOUR @SOURCE1@";
    gedcomStr += "3 PAGE 42";
    gedcomStr += "3 DATA";
    gedcomStr += "4 DATE 31 DEC 1900";
    gedcomStr += "4 TEXT Some education source text.";
    gedcomStr += "3 QUAY 3";
    gedcomStr += "3 NOTE An education source note.";
    gedcomStr += "2 NOTE Education attribute note (indicator of a level of education attained).";
    gedcomStr += "1 DSCR Physical description";
    gedcomStr += "2 DATE 31 DEC 1997";
    gedcomStr += "2 PLAC The place";
    gedcomStr += "2 TYPE PHYS";
    gedcomStr += "2 SOUR @SOURCE1@";
    gedcomStr += "3 PAGE 42";
    gedcomStr += "3 DATA";
    gedcomStr += "4 DATE 31 DEC 1900";
    gedcomStr += "4 TEXT Some physical description source text.";
    gedcomStr += "3 QUAY 3";
    gedcomStr += "3 NOTE A physical description source note.";
    gedcomStr += "2 NOTE Physical description attribute note (the physical characteristics of a person, place, or ";
    gedcomStr += "3 CONC thing).";
    gedcomStr += "1 RELI Religion";
    gedcomStr += "2 DATE 31 DEC 1997";
    gedcomStr += "2 PLAC The place";
    gedcomStr += "2 TYPE RELI";
    gedcomStr += "2 SOUR @SOURCE1@";
    gedcomStr += "3 PAGE 42";
    gedcomStr += "3 DATA";
    gedcomStr += "4 DATE 31 DEC 1900";
    gedcomStr += "4 TEXT Some religion source text.";
    gedcomStr += "3 QUAY 3";
    gedcomStr += "3 NOTE A religion source note.";
    gedcomStr += "2 NOTE Religion attribute note (a religious denomination to which a person is affiliated or for ";
    gedcomStr += "3 CONC which a record applies).";
    gedcomStr += "1 SSN 6942";
    gedcomStr += "2 DATE 31 DEC 1997";
    gedcomStr += "2 PLAC The place";
    gedcomStr += "2 TYPE SSN";
    gedcomStr += "2 SOUR @SOURCE1@";
    gedcomStr += "3 PAGE 42";
    gedcomStr += "3 DATA";
    gedcomStr += "4 DATE 31 DEC 1900";
    gedcomStr += "4 TEXT Some Social security number source text.";
    gedcomStr += "3 QUAY 3";
    gedcomStr += "3 NOTE An Social security number source note.";
    gedcomStr += "2 NOTE Social security number attribute note (a number assigned by the United States Social ";
    gedcomStr += "3 CONC Security Administration. Used for tax identification purposes).";
    gedcomStr += "1 IDNO 6942";
    gedcomStr += "2 DATE 31 DEC 1997";
    gedcomStr += "2 PLAC The place";
    gedcomStr += "2 TYPE IDNO";
    gedcomStr += "2 SOUR @SOURCE1@";
    gedcomStr += "3 PAGE 42";
    gedcomStr += "3 DATA";
    gedcomStr += "4 DATE 31 DEC 1900";
    gedcomStr += "4 TEXT Some national identification number source text.";
    gedcomStr += "3 QUAY 3";
    gedcomStr += "3 NOTE An national identification number source note.";
    gedcomStr += "2 NOTE National identification number attribute note (a number assigned to identify a person ";
    gedcomStr += "3 CONC within some significant external system).";
    gedcomStr += "1 PROP Possessions";
    gedcomStr += "2 DATE 31 DEC 1997";
    gedcomStr += "2 PLAC The place";
    gedcomStr += "2 TYPE PROP";
    gedcomStr += "2 SOUR @SOURCE1@";
    gedcomStr += "3 PAGE 42";
    gedcomStr += "3 DATA";
    gedcomStr += "4 DATE 31 DEC 1900";
    gedcomStr += "4 TEXT Some possessions source text.";
    gedcomStr += "3 QUAY 3";
    gedcomStr += "3 NOTE @N11@";
    gedcomStr += "2 NOTE Possessions or property attribute note (pertaining to possessions such as real estate ";
    gedcomStr += "3 CONC or other property of interest).";
    gedcomStr += "1 CAST Cast name";
    gedcomStr += "2 DATE 31 DEC 1997";
    gedcomStr += "2 PLAC The place";
    gedcomStr += "2 TYPE CAST";
    gedcomStr += "2 SOUR @SOURCE1@";
    gedcomStr += "3 PAGE 42";
    gedcomStr += "3 DATA";
    gedcomStr += "4 DATE 31 DEC 1900";
    gedcomStr += "4 TEXT Some caste name source text.";
    gedcomStr += "3 QUAY 3";
    gedcomStr += "3 NOTE A caste name source note.";
    gedcomStr += "2 NOTE Caste name attribute note (the name of an individual's rank or status in society, based ";
    gedcomStr += "3 CONC on racial or religious differences, or differences in wealth, inherited rank, profession, ";
    gedcomStr += "3 CONC occupation, etc).";
    gedcomStr += "1 NCHI 42";
    gedcomStr += "2 DATE 31 DEC 1997";
    gedcomStr += "2 PLAC The place";
    gedcomStr += "2 TYPE NCHI";
    gedcomStr += "2 SOUR @SOURCE1@";
    gedcomStr += "3 PAGE 42";
    gedcomStr += "3 DATA";
    gedcomStr += "4 DATE 31 DEC 1900";
    gedcomStr += "4 TEXT Some number of children source text.";
    gedcomStr += "3 QUAY 3";
    gedcomStr += "3 NOTE Am number of children source note.";
    gedcomStr += "2 NOTE Number of children attribute note.";
    gedcomStr += "1 NMR 42";
    gedcomStr += "2 DATE 31 DEC 1997";
    gedcomStr += "2 PLAC The place";
    gedcomStr += "2 TYPE NMR";
    gedcomStr += "2 SOUR @SOURCE1@";
    gedcomStr += "3 PAGE 42";
    gedcomStr += "3 DATA";
    gedcomStr += "4 DATE 31 DEC 1900";
    gedcomStr += "4 TEXT Some number of marriages source text.";
    gedcomStr += "3 QUAY 3";
    gedcomStr += "3 NOTE An number of marriages source note.";
    gedcomStr += "2 NOTE Number of marriages attribute note.";
    gedcomStr += "1 TITL Nobility title";
    gedcomStr += "2 DATE 31 DEC 1997";
    gedcomStr += "2 PLAC The place";
    gedcomStr += "2 TYPE TITL";
    gedcomStr += "2 SOUR @SOURCE1@";
    gedcomStr += "3 PAGE 42";
    gedcomStr += "3 DATA";
    gedcomStr += "4 DATE 31 DEC 1900";
    gedcomStr += "4 TEXT Some title source text.";
    gedcomStr += "3 QUAY 3";
    gedcomStr += "3 NOTE A title source note.";
    gedcomStr += "2 NOTE Title attribute note (a description of a specific writing or other work, such as the title ";
    gedcomStr += "3 CONC of a book when used in a source context, or a formal designation used by an ";
    gedcomStr += "3 CONC individual in connection with positions of royalty or other social status, ";
    gedcomStr += "3 CONT such as Grand Duke).";
    gedcomStr += "1 NATI National or tribe origin";
    gedcomStr += "2 DATE 31 DEC 1997";
    gedcomStr += "2 PLAC The place";
    gedcomStr += "2 TYPE NATI";
    gedcomStr += "2 SOUR @SOURCE1@";
    gedcomStr += "3 PAGE 42";
    gedcomStr += "3 DATA";
    gedcomStr += "4 DATE 31 DEC 1900";
    gedcomStr += "4 TEXT Some nationality source text.";
    gedcomStr += "3 QUAY 3";
    gedcomStr += "3 NOTE An nationality source note.";
    gedcomStr += "2 NOTE Nationality attribute note (the national heritage of an individual).";
    gedcomStr += "1 NOTE @N4@";
    gedcomStr += "2 SOUR @SOURCE1@";
    gedcomStr += "1 NOTE This is a second set of notes for this single individual record. It is embedded in the ";
    gedcomStr += "2 CONC INDIVIDUAL record instead of being in a separate NOTE record.";
    gedcomStr += "2 CONT ";
    gedcomStr += "2 CONT These notes also have a source citation to a SOURCE record. In GEDCOM ";
    gedcomStr += "2 CONC this source can only be a single line and links to a SOURCE record.";
    gedcomStr += "2 SOUR @SOURCE1@";
    gedcomStr += "1 SOUR @SOURCE1@";
    gedcomStr += "2 PAGE 42";
    gedcomStr += "2 DATA";
    gedcomStr += "3 DATE 31 DEC 1900";
    gedcomStr += "3 TEXT Some sample text from the first source on this record.";
    gedcomStr += "2 QUAY 0";
    gedcomStr += "2 NOTE A source note.";
    gedcomStr += "1 SOUR @SR2@";
    gedcomStr += "2 NOTE @N12@";
    gedcomStr += "1 SOUR This source is embedded in the record instead of being a link to a ";
    gedcomStr += "2 CONC separate SOURCE record.";
    gedcomStr += "2 CONT The source description can use any number of lines";
    gedcomStr += "2 TEXT Text from a source. The preferred approach is to cite sources by ";
    gedcomStr += "3 CONC links to SOURCE records.";
    gedcomStr += "3 CONT Here is a new line of text from the source.";
    gedcomStr += "2 NOTE @N17@";
    gedcomStr += "1 OBJE";
    gedcomStr += "2 FORM gif";
    gedcomStr += "2 TITL GIF Image File";
    gedcomStr += "2 FILE ImgFile.GIF";
    gedcomStr += "1 ALIA @I9@";
    gedcomStr += "1 ASSO @I9@";
    gedcomStr += "2 RELA Has multimedia links";
    gedcomStr += "2 SOUR @SOURCE1@";
    gedcomStr += "3 PAGE 42";
    gedcomStr += "3 DATA";
    gedcomStr += "4 DATE 31 DEC 1900";
    gedcomStr += "4 TEXT Sample text about this source on an association.";
    gedcomStr += "2 NOTE Note on association link.";
    gedcomStr += "1 ASSO @PERSON5@";
    gedcomStr += "2 RELA Father";
    gedcomStr += "1 SUBM @SUBMITTER@";
    gedcomStr += "1 ANCI @SUBMITTER@";
    gedcomStr += "1 DESI @SUBMITTER@";
    gedcomStr += "1 REFN User reference number";
    gedcomStr += "2 TYPE Type of user number";
    gedcomStr += "1 RIN 12";
    gedcomStr += "1 RFN Record File Number";
    gedcomStr += "1 AFN Ancestral File Number";
    gedcomStr += "1 CHAN";
    gedcomStr += "2 DATE 12 Feb 2001";
    gedcomStr += "3 TIME 19:16:42";
    gedcomStr += "0 @PERSON7@ INDI";
    gedcomStr += "1 NAME Pat Smith /Torture/";
    gedcomStr += "1 BIRT";
    gedcomStr += "2 DATE 1 JAN 2001";
    gedcomStr += "2 PLAC London, UK";
    gedcomStr += "1 FAMC @FAMILY2@";
    gedcomStr += "1 NOTE @N30@";
    gedcomStr += "1 CHAN";
    gedcomStr += "2 DATE 11 Jan 2001";
    gedcomStr += "3 TIME 15:56:49";
    gedcomStr += "1 RIN 13";
    gedcomStr += "0 @PERSON4@ INDI";
    gedcomStr += "1 NAME Sandy Privacy /Torture/";
    gedcomStr += "1 RESN privacy";
    gedcomStr += "1 BIRT";
    gedcomStr += "2 DATE 15 FEB 2000";
    gedcomStr += "2 PLAC Chicago, IL, USA";
    gedcomStr += "1 FAMC @FAMILY1@";
    gedcomStr += "1 NOTE @N29@";
    gedcomStr += "1 CHAN";
    gedcomStr += "2 DATE 11 Jan 2001";
    gedcomStr += "3 TIME 15:56:15";
    gedcomStr += "1 RIN 14";
    gedcomStr += "0 @PERSON5@ INDI";
    gedcomStr += "1 NAME William Joseph /Torture/";
    gedcomStr += "1 SEX M";
    gedcomStr += "1 BIRT";
    gedcomStr += "2 DATE ABT 1930";
    gedcomStr += "1 DEAT Y";
    gedcomStr += "2 DATE INT 1995 (from estimated age)";
    gedcomStr += "2 AGE 65";
    gedcomStr += "2 CAUS Old age";
    gedcomStr += "1 FAMS @PARENTS@";
    gedcomStr += "1 FAMC @F6@";
    gedcomStr += "1 NOTE @N28@";
    gedcomStr += "1 CHAN";
    gedcomStr += "2 DATE 11 Jan 2001";
    gedcomStr += "3 TIME 15:59:40";
    gedcomStr += "1 RIN 15";
    gedcomStr += "0 @FAMILY1@ FAM";
    gedcomStr += "1 HUSB @PERSON1@";
    gedcomStr += "1 WIFE @PERSON2@";
    gedcomStr += "1 MARR";
    gedcomStr += "2 DATE 31 DEC 1997";
    gedcomStr += "2 PLAC The place";
    gedcomStr += "2 TYPE Man and Wife";
    gedcomStr += "2 ADDR A Church";
    gedcomStr += "3 CONT Main Street, USA";
    gedcomStr += "2 CAUS Love";
    gedcomStr += "2 AGNC Catholic Church";
    gedcomStr += "2 HUSB";
    gedcomStr += "3 AGE 42y";
    gedcomStr += "2 WIFE";
    gedcomStr += "3 AGE 42y 6m";
    gedcomStr += "2 OBJE";
    gedcomStr += "3 FORM jpeg";
    gedcomStr += "3 TITL Multimedia link about the marriage event";
    gedcomStr += "3 FILE ImgFile.JPG";
    gedcomStr += "2 SOUR @SOURCE1@";
    gedcomStr += "3 PAGE 42";
    gedcomStr += "3 DATA";
    gedcomStr += "4 DATE 31 DEC 1900";
    gedcomStr += "4 TEXT Text from marriage source.";
    gedcomStr += "3 QUAY 3";
    gedcomStr += "3 NOTE A note about the marriage source.";
    gedcomStr += "2 NOTE Marriage event note (a legal, common-law, or customary event of creating a family ";
    gedcomStr += "3 CONC unit of a man and a woman as husband and wife).";
    gedcomStr += "1 CHIL @PERSON3@";
    gedcomStr += "1 CHIL @PERSON4@";
    gedcomStr += "1 NCHI 42";
    gedcomStr += "1 ENGA Y";
    gedcomStr += "2 DATE 31 DEC 1997";
    gedcomStr += "2 PLAC The place";
    gedcomStr += "2 AGE 42";
    gedcomStr += "2 TYPE ENGA";
    gedcomStr += "2 ADDR The house";
    gedcomStr += "3 CONT Anytown, USA";
    gedcomStr += "2 CAUS Desire";
    gedcomStr += "2 AGNC None";
    gedcomStr += "2 HUSB";
    gedcomStr += "3 AGE 42y";
    gedcomStr += "2 WIFE";
    gedcomStr += "3 AGE STILLBORN";
    gedcomStr += "2 OBJE";
    gedcomStr += "3 FORM bmp";
    gedcomStr += "3 TITL BMP Image File";
    gedcomStr += "3 FILE ImgFile.BMP";
    gedcomStr += "2 SOUR @SOURCE1@";
    gedcomStr += "3 PAGE 42";
    gedcomStr += "3 DATA";
    gedcomStr += "4 DATE 31 DEC 1900";
    gedcomStr += "4 TEXT Sample text from engagement source.";
    gedcomStr += "3 QUAY 3";
    gedcomStr += "3 NOTE A note about this engagement source.";
    gedcomStr += "2 NOTE Engagement event note (an event of recording or announcing an agreement between ";
    gedcomStr += "3 CONC two people to become married).";
    gedcomStr += "1 MARB";
    gedcomStr += "2 DATE 31 DEC 1997";
    gedcomStr += "2 PLAC The place";
    gedcomStr += "2 TYPE MARB";
    gedcomStr += "2 HUSB";
    gedcomStr += "3 AGE 42y";
    gedcomStr += "2 WIFE";
    gedcomStr += "3 AGE 42y 6m";
    gedcomStr += "2 SOUR @SOURCE1@";
    gedcomStr += "3 PAGE 42";
    gedcomStr += "3 DATA";
    gedcomStr += "4 DATE 31 DEC 1900";
    gedcomStr += "4 TEXT Sample text from marriage banns source.";
    gedcomStr += "3 QUAY 3";
    gedcomStr += "3 NOTE A note about this marriage banns source.";
    gedcomStr += "2 NOTE Marriage banns event note (an event of an official public notice given that two people ";
    gedcomStr += "3 CONC intend to marry).";
    gedcomStr += "1 MARC";
    gedcomStr += "2 DATE 31 DEC 1997";
    gedcomStr += "2 PLAC The place";
    gedcomStr += "2 TYPE MARC";
    gedcomStr += "2 HUSB";
    gedcomStr += "3 AGE 42y";
    gedcomStr += "2 WIFE";
    gedcomStr += "3 AGE >42y 6m";
    gedcomStr += "2 SOUR @SOURCE1@";
    gedcomStr += "3 PAGE 42";
    gedcomStr += "3 DATA";
    gedcomStr += "4 DATE 31 DEC 1900";
    gedcomStr += "4 TEXT Sample text from marriage contract source.";
    gedcomStr += "3 QUAY 3";
    gedcomStr += "3 NOTE A note about this marriage contract source.";
    gedcomStr += "2 NOTE Marriage contract event note (an event of recording a formal agreement of marriage, ";
    gedcomStr += "3 CONC including the prenuptial agreement in which marriage partners reach agreement about ";
    gedcomStr += "3 CONC the property rights of one or both, securing property to their children).";
    gedcomStr += "1 MARL";
    gedcomStr += "2 DATE 31 DEC 1997";
    gedcomStr += "2 PLAC The place";
    gedcomStr += "2 TYPE MARL";
    gedcomStr += "2 HUSB";
    gedcomStr += "3 AGE 42y";
    gedcomStr += "2 WIFE";
    gedcomStr += "3 AGE <42y 6m";
    gedcomStr += "2 SOUR @SOURCE1@";
    gedcomStr += "3 PAGE 42";
    gedcomStr += "3 DATA";
    gedcomStr += "4 DATE 31 DEC 1900";
    gedcomStr += "4 TEXT Sample text from marriage license source.";
    gedcomStr += "3 QUAY 3";
    gedcomStr += "3 NOTE A note about this marriage license source.";
    gedcomStr += "2 NOTE Marriage license event note (an event of obtaining a legal license to marry).";
    gedcomStr += "1 MARS";
    gedcomStr += "2 DATE 31 DEC 1997";
    gedcomStr += "2 PLAC The place";
    gedcomStr += "2 TYPE MARS";
    gedcomStr += "2 HUSB";
    gedcomStr += "3 AGE 42y";
    gedcomStr += "2 WIFE";
    gedcomStr += "3 AGE INFANT";
    gedcomStr += "2 SOUR @SOURCE1@";
    gedcomStr += "3 PAGE 42";
    gedcomStr += "3 DATA";
    gedcomStr += "4 DATE 31 DEC 1900";
    gedcomStr += "4 TEXT Sample text from marriage settlement source.";
    gedcomStr += "3 QUAY 3";
    gedcomStr += "3 NOTE A note about this marriage settlement source.";
    gedcomStr += "2 NOTE Marriage settlement event note (an event of creating an agreement between two ";
    gedcomStr += "3 CONC people contemplating marriage, at which time they agree to release or modify ";
    gedcomStr += "3 CONC property rights that would otherwise arise from the marriage).";
    gedcomStr += "1 DIV";
    gedcomStr += "2 DATE 31 DEC 1997";
    gedcomStr += "2 PLAC The place";
    gedcomStr += "2 TYPE DIV";
    gedcomStr += "2 HUSB";
    gedcomStr += "3 AGE 42y 3d";
    gedcomStr += "2 WIFE";
    gedcomStr += "3 AGE 42m";
    gedcomStr += "2 SOUR @SOURCE1@";
    gedcomStr += "3 PAGE 42";
    gedcomStr += "3 DATA";
    gedcomStr += "4 DATE 31 DEC 1900";
    gedcomStr += "4 TEXT Sample text from divorce source.";
    gedcomStr += "3 QUAY 3";
    gedcomStr += "3 NOTE A note about this divorce source.";
    gedcomStr += "2 NOTE Divorce event note (an event of dissolving a marriage through civil action).";
    gedcomStr += "1 DIVF";
    gedcomStr += "2 DATE 31 DEC 1997";
    gedcomStr += "2 PLAC The place";
    gedcomStr += "2 HUSB";
    gedcomStr += "3 AGE 42d";
    gedcomStr += "2 WIFE";
    gedcomStr += "3 AGE CHILD";
    gedcomStr += "2 SOUR @SOURCE1@";
    gedcomStr += "3 PAGE 42";
    gedcomStr += "3 DATA";
    gedcomStr += "4 DATE 31 DEC 1900";
    gedcomStr += "4 TEXT Sample text from divorce filing source.";
    gedcomStr += "3 QUAY 3";
    gedcomStr += "3 NOTE A note about this divorce filing source.";
    gedcomStr += "2 NOTE DIVORCE_FILED event note (an event of filing for a divorce by a spouse).";
    gedcomStr += "1 ANUL Y";
    gedcomStr += "2 DATE 31 DEC 1997";
    gedcomStr += "1 CENS";
    gedcomStr += "2 DATE 31 DEC 1997";
    gedcomStr += "2 PLAC The place";
    gedcomStr += "2 TYPE CENS";
    gedcomStr += "2 HUSB";
    gedcomStr += "3 AGE 42y 6m 9d";
    gedcomStr += "2 WIFE";
    gedcomStr += "3 AGE 6m 9d";
    gedcomStr += "2 SOUR @SOURCE1@";
    gedcomStr += "3 PAGE 42";
    gedcomStr += "3 DATA";
    gedcomStr += "4 DATE 31 DEC 1900";
    gedcomStr += "4 TEXT Sample text from census source.";
    gedcomStr += "3 QUAY 3";
    gedcomStr += "3 NOTE A note about this census source.";
    gedcomStr += "2 NOTE Census event note (the event of the periodic count of the population for a designated ";
    gedcomStr += "3 CONC locality, such as a national or state Census).";
    gedcomStr += "1 EVEN";
    gedcomStr += "2 DATE 31 DEC 1997";
    gedcomStr += "2 PLAC The place";
    gedcomStr += "2 TYPE EVEN";
    gedcomStr += "2 HUSB";
    gedcomStr += "3 AGE 42y";
    gedcomStr += "2 WIFE";
    gedcomStr += "3 AGE 42y 6m";
    gedcomStr += "2 SOUR @SOURCE1@";
    gedcomStr += "3 PAGE 42";
    gedcomStr += "3 DATA";
    gedcomStr += "4 DATE 31 DEC 1900";
    gedcomStr += "4 TEXT Sample text from generic family event source.";
    gedcomStr += "3 QUAY 3";
    gedcomStr += "3 NOTE A note about this generic family event source.";
    gedcomStr += "2 NOTE Generic family vent note (a noteworthy happening related to an individual, a group, or ";
    gedcomStr += "3 CONC an organization).";
    gedcomStr += "1 SLGS";
    gedcomStr += "2 DATE 12 DEC 1976";
    gedcomStr += "2 PLAC Temple";
    gedcomStr += "2 STAT Child";
    gedcomStr += "2 TEMP Temple Code";
    gedcomStr += "2 SOUR @SOURCE1@";
    gedcomStr += "3 DATA";
    gedcomStr += "4 TEXT Sample text from LDS spouse sealing source.";
    gedcomStr += "3 NOTE @N19@";
    gedcomStr += "2 NOTE @N6@";
    gedcomStr += "1 NOTE Comments on \"Joseph final Tag Torture-final Mary First Jones\" FAMILY Record.";
    gedcomStr += "2 CONT ";
    gedcomStr += "2 CONT This record contains all possible types of data that can be stored in a FAMILY ";
    gedcomStr += "2 CONC (FAM) GEDCOM record. Here are some comments on the data tested here and ";
    gedcomStr += "2 CONC things to look for when this file is imported into any GEDCOM application:";
    gedcomStr += "2 CONT ";
    gedcomStr += "2 CONT 1. The marriage event (MARR) uses all possible tags for such a structure including ";
    gedcomStr += "2 CONC notes, sources, and a link to a multimedia file.";
    gedcomStr += "2 CONT ";
    gedcomStr += "2 CONT 2. This family has two children.";
    gedcomStr += "2 CONT ";
    gedcomStr += "2 CONT 3. This family has all possible family events (including a generic event or EVEN ";
    gedcomStr += "2 CONC structure). Some notes are:";
    gedcomStr += "2 CONT      a. The engaged structure has all possible tags for event detail.";
    gedcomStr += "2 CONT      b. The annulment event (ANUL) has no data except a \"Y\" in the first line to ";
    gedcomStr += "2 CONC indicate that the event has occurred. The importing software should keep this event in ";
    gedcomStr += "2 CONC this record even though it contains no data.";
    gedcomStr += "2 CONT      c. The LDS Spouse Sealing event tests all possible detail tags for an LDS.";
    gedcomStr += "2 CONT      d. The TYPE tag of each event has the name of the GEDCOM tag for that event. ";
    gedcomStr += "2 CONC There is no TYPE tag in the annulment event because that structure is empty.";
    gedcomStr += "2 CONT ";
    gedcomStr += "2 CONT 4. This record has this one note structure which is to a set of embedded notes (and ";
    gedcomStr += "2 CONC which you are reading now).";
    gedcomStr += "2 CONT ";
    gedcomStr += "2 CONT 5. This record has one source citation.";
    gedcomStr += "2 CONT ";
    gedcomStr += "2 CONT 6. This record is linked a submitter.";
    gedcomStr += "2 CONT ";
    gedcomStr += "2 CONT 7. This record has all remaining tags allowed in FAMILY records for user reference ";
    gedcomStr += "2 CONC number, record ID, and the changed date.";
    gedcomStr += "1 SOUR @SOURCE1@";
    gedcomStr += "2 PAGE 42";
    gedcomStr += "2 DATA";
    gedcomStr += "3 DATE 31 DEC 1900";
    gedcomStr += "3 TEXT A sample text from a source of this family";
    gedcomStr += "2 QUAY 0";
    gedcomStr += "2 NOTE A note this source on the FAMILY record.";
    gedcomStr += "1 OBJE";
    gedcomStr += "2 FORM bmp";
    gedcomStr += "2 TITL BMP Image File";
    gedcomStr += "2 FILE ImgFile.BMP";
    gedcomStr += "1 SUBM @SUBMITTER@";
    gedcomStr += "1 REFN User Reference Number";
    gedcomStr += "2 TYPE Type of user number";
    gedcomStr += "1 RIN 1";
    gedcomStr += "1 CHAN";
    gedcomStr += "2 DATE 11 Jan 2001";
    gedcomStr += "3 TIME 16:18:40";
    gedcomStr += "0 @PARENTS@ FAM";
    gedcomStr += "1 HUSB @PERSON5@";
    gedcomStr += "1 CHIL @PERSON1@";
    gedcomStr += "1 NOTE @N33@";
    gedcomStr += "1 CHAN";
    gedcomStr += "2 DATE 13 Jun 2000";
    gedcomStr += "3 TIME 17:00:35";
    gedcomStr += "1 RIN 2";
    gedcomStr += "0 @ADOPTIVE_PARENTS@ FAM";
    gedcomStr += "1 WIFE @PERSON6@";
    gedcomStr += "1 CHIL @PERSON1@";
    gedcomStr += "1 NOTE @N34@";
    gedcomStr += "1 CHAN";
    gedcomStr += "2 DATE 13 Jun 2000";
    gedcomStr += "3 TIME 17:01:18";
    gedcomStr += "1 RIN 3";
    gedcomStr += "0 @FAMILY2@ FAM";
    gedcomStr += "1 HUSB @PERSON1@";
    gedcomStr += "1 WIFE @PERSON8@";
    gedcomStr += "1 CHIL @PERSON7@";
    gedcomStr += "1 NOTE @N35@";
    gedcomStr += "1 CHAN";
    gedcomStr += "2 DATE 13 Jun 2000";
    gedcomStr += "3 TIME 17:01:46";
    gedcomStr += "1 RIN 4";
    gedcomStr += "0 @F5@ FAM";
    gedcomStr += "1 HUSB @I9@";
    gedcomStr += "1 WIFE @I15@";
    gedcomStr += "1 CHIL @I10@";
    gedcomStr += "1 CHIL @I11@";
    gedcomStr += "1 CHIL @I12@";
    gedcomStr += "1 NOTE @N36@";
    gedcomStr += "1 RIN 5";
    gedcomStr += "1 CHAN";
    gedcomStr += "2 DATE 11 Jan 2001";
    gedcomStr += "3 TIME 16:50:37";
    gedcomStr += "0 @F6@ FAM";
    gedcomStr += "1 HUSB @I14@";
    gedcomStr += "1 WIFE @I13@";
    gedcomStr += "1 CHIL @PERSON5@";
    gedcomStr += "1 NOTE @N37@";
    gedcomStr += "1 RIN 6";
    gedcomStr += "1 CHAN";
    gedcomStr += "2 DATE 11 Jan 2001";
    gedcomStr += "3 TIME 16:51:48";
    gedcomStr += "0 @F7@ FAM";
    gedcomStr += "1 WIFE @I10@";
    gedcomStr += "1 CHIL @I14@";
    gedcomStr += "1 NOTE @N38@";
    gedcomStr += "1 RIN 7";
    gedcomStr += "1 CHAN";
    gedcomStr += "2 DATE 11 Jan 2001";
    gedcomStr += "3 TIME 16:52:53";
    gedcomStr += "0 @SOURCE1@ SOUR";
    gedcomStr += "1 TITL Everything You Every Wanted to Know about GEDCOM Tags, But ";
    gedcomStr += "2 CONC Were Afraid to Ask!";
    gedcomStr += "2 CONT You can start new lines in this field too.";
    gedcomStr += "1 ABBR All About GEDCOM Tags";
    gedcomStr += "1 AUTH Author or Authorss of this Source using multiple lines if ";
    gedcomStr += "2 CONC necessary.";
    gedcomStr += "2 CONT Here is a new line in this field";
    gedcomStr += "1 PUBL Details of the publisher of this source using multiple lines ";
    gedcomStr += "2 CONC if necessary.";
    gedcomStr += "2 CONT Here is a new line in this field";
    gedcomStr += "1 REPO @R1@";
    gedcomStr += "2 CALN 920.23";
    gedcomStr += "3 MEDI Book (or other description of this source)";
    gedcomStr += "2 NOTE A short note about the repository link. This note is about the repository (if more ";
    gedcomStr += "3 CONC information is needed other than call number and simple description). Notes about ";
    gedcomStr += "3 CONC the Source itself are usually entered elsewhere.";
    gedcomStr += "1 TEXT This section is used to generic text from the course. It will usually be a ";
    gedcomStr += "2 CONC quote from the text that is relevant to the use of this source in the current ";
    gedcomStr += "2 CONC GEDCOM file.";
    gedcomStr += "2 CONT ";
    gedcomStr += "2 CONT It may use as many lines as needed.";
    gedcomStr += "1 DATA";
    gedcomStr += "2 EVEN BIRT, CHR";
    gedcomStr += "3 DATE FROM 1 JAN 1980 TO 1 FEB 1982";
    gedcomStr += "3 PLAC Anytown, Anycounty, USA";
    gedcomStr += "2 EVEN DEAT";
    gedcomStr += "3 DATE FROM 1 JAN 1980 TO 1 FEB 1982";
    gedcomStr += "3 PLAC County Some, Ireland";
    gedcomStr += "2 AGNC Responsible agency for data in this source";
    gedcomStr += "2 NOTE A note about data in source.";
    gedcomStr += "3 CONT ";
    gedcomStr += "3 CONT This note includes a blank line before this text. These notes are used to describe the ";
    gedcomStr += "3 CONC data in this source. Notes about the source itself are usually entered in a different set ";
    gedcomStr += "3 CONC of notes.";
    gedcomStr += "1 NOTE @N15@";
    gedcomStr += "1 NOTE These are notes embedded in the SOURCE Record instead of in a separate NOTE ";
    gedcomStr += "2 CONC RECORD.";
    gedcomStr += "1 OBJE";
    gedcomStr += "2 TITL JPEG image file link";
    gedcomStr += "2 FORM jpeg";
    gedcomStr += "2 NOTE @N14@";
    gedcomStr += "2 FILE ImgFile.JPG";
    gedcomStr += "1 REFN User Reference Number";
    gedcomStr += "2 TYPE User Reference Type";
    gedcomStr += "1 RIN 1";
    gedcomStr += "1 CHAN";
    gedcomStr += "2 DATE 14 Jan 2001";
    gedcomStr += "3 TIME 14:29:25";
    gedcomStr += "0 @SR2@ SOUR";
    gedcomStr += "1 TITL All I Know About GEDCOM, I Learned on the Internet";
    gedcomStr += "1 ABBR What I Know About GEDCOM";
    gedcomStr += "1 AUTH Second Source Author";
    gedcomStr += "1 NOTE @N16@";
    gedcomStr += "1 CHAN";
    gedcomStr += "2 DATE 11 Jan 2001";
    gedcomStr += "3 TIME 16:21:39";
    gedcomStr += "1 RIN 2";
    gedcomStr += "0 @R1@ REPO";
    gedcomStr += "1 NAME Family History Library";
    gedcomStr += "1 ADDR 35 North West Temple";
    gedcomStr += "2 CONT Salt Lake City, UT 84111";
    gedcomStr += "2 CONT USA";
    gedcomStr += "2 ADR1 35 North West Temple";
    gedcomStr += "2 ADR2 Across the street from Temple Square";
    gedcomStr += "2 CITY Salt Lake City";
    gedcomStr += "2 STAE Utah";
    gedcomStr += "2 POST 84111";
    gedcomStr += "2 CTRY USA";
    gedcomStr += "1 PHON +1-801-240-2331 (information)";
    gedcomStr += "1 PHON +1-801-240-1278 (gifts & donations)";
    gedcomStr += "1 PHON +1-801-240-2584 (support)";
    gedcomStr += "1 NOTE @N2@";
    gedcomStr += "1 REFN User Ref Number";
    gedcomStr += "2 TYPE Sample";
    gedcomStr += "1 RIN 1";
    gedcomStr += "1 CHAN";
    gedcomStr += "2 DATE 12 Mar 2000";
    gedcomStr += "3 TIME 10:36:02";
    gedcomStr += "0 @N1@ NOTE";
    gedcomStr += "1 CONC Test link to a graphics file about the main Submitter of this file.";
    gedcomStr += "1 CHAN";
    gedcomStr += "2 DATE 24 May 1999";
    gedcomStr += "3 TIME 16:39:55";
    gedcomStr += "0 @N2@ NOTE";
    gedcomStr += "1 CONC Comments on \"Family final History Library\" REPOSITORY Record.";
    gedcomStr += "1 CONT ";
    gedcomStr += "1 CONT This record uses all possible GEDCOM tags for a REPOSITORY record. Some ";
    gedcomStr += "1 CONC things to look for are:";
    gedcomStr += "1 CONT ";
    gedcomStr += "1 CONT 1. The address is specified twice. Once in a multi-line address record and once in ";
    gedcomStr += "1 CONC separate lines. The first method is usually enough. The second method is to be more ";
    gedcomStr += "1 CONC specific about parts of the address. Is everything imported?";
    gedcomStr += "1 CONT ";
    gedcomStr += "1 CONT 2. There are multiple phone numbers. Are they all imported?";
    gedcomStr += "1 SOUR @SOURCE1@";
    gedcomStr += "2 PAGE 1";
    gedcomStr += "2 DATA";
    gedcomStr += "3 DATE 1 MAY 1999";
    gedcomStr += "3 TEXT Text from the source about this repository.";
    gedcomStr += "2 QUAY 3";
    gedcomStr += "1 CHAN";
    gedcomStr += "2 DATE 12 Mar 2000";
    gedcomStr += "3 TIME 11:44:05";
    gedcomStr += "0 @N4@ NOTE";
    gedcomStr += "1 CONC Comments on \"Joseph Tag Torture\" INDIVIDUAL Record.";
    gedcomStr += "1 CONT ";
    gedcomStr += "1 CONT This record contains all possible types of data that can be stored in an INDIVIDUAL (INDI) ";
    gedcomStr += "1 CONC GEDCOM record. Here are some comments on the data tested here and things to look for ";
    gedcomStr += "1 CONC when this file is imported into any GEDCOM application:";
    gedcomStr += "1 CONT ";
    gedcomStr += "1 CONT 1. This record has two NAME structures. How will a program handle this type of data which ";
    gedcomStr += "1 CONC is allowed in GEDCOM? (Because some GEDCOM files get very bothered by a second ";
    gedcomStr += "1 CONC name, the files TGC551.ged and TGC551LF files are identical to the TGC55.ged and ";
    gedcomStr += "1 CONC TGC55LF.ged files except only one name structure is used for this individual - hence the \"1\" ";
    gedcomStr += "1 CONC in their names).";
    gedcomStr += "1 CONT ";
    gedcomStr += "1 CONT 2. The first NAME structure has all possible subordinate tags for a NAME structure ";
    gedcomStr += "1 CONC including source and notes a source citation and some notes. The second NAME structure ";
    gedcomStr += "1 CONC (when used) has a source citation and some notes. Are these all imported?";
    gedcomStr += "1 CONT ";
    gedcomStr += "1 CONT 3. The Birth and Death events use all possible fields including subordinate tags, sources, ";
    gedcomStr += "1 CONC multimedia links (in Birth), and notes. The birth data has an attached family link which is ";
    gedcomStr += "1 CONC sometimes needed in case of ambiguous parentage.";
    gedcomStr += "1 CONT ";
    gedcomStr += "1 CONT 4. This individual has two spouses. The links to the spouses have attached notes.";
    gedcomStr += "1 CONT ";
    gedcomStr += "1 CONT 5. This individual has two sets of parents - natural parents and adoptive parents. Each parent ";
    gedcomStr += "1 CONC link has attached notes. The adoptive parents has a subordinate pedigree (PEDI) tag.";
    gedcomStr += "1 CONT ";
    gedcomStr += "1 CONT 6. This individual has all possible events (including a generic event or EVEN structure). The ";
    gedcomStr += "1 CONC GEDCOM tags for the events are given in the TYPE tag of each event. Some comments are:";
    gedcomStr += "1 CONT      a. The baptism record has all possible tags for event detail.";
    gedcomStr += "1 CONT      b. There are 2 christening records to see how programs react to duplicate events (which ";
    gedcomStr += "1 CONC are allowed).";
    gedcomStr += "1 CONT      c. The adoption event has a family link to give more information about adoptive parentage.";
    gedcomStr += "1 CONT      d. The cremation event (CREM) has no data except a \"Y\" in the first line to indicate that ";
    gedcomStr += "1 CONC the event has occurred. The importing software should keep this event in this record even ";
    gedcomStr += "1 CONC though it contains no data (The GEDCOM tag is not in this TYPE tag).";
    gedcomStr += "1 CONT      e. The LDS Baptism event tests all possible detail tags for an LDS ordinance.";
    gedcomStr += "1 CONT      f. The LDS confirmation has no data except a \"Y\" in the first line to indicate that the event ";
    gedcomStr += "1 CONC has occurred. The importing software should keep this event in this record even though it ";
    gedcomStr += "1 CONC contains no data.";
    gedcomStr += "1 CONT      g. The date fields in the various events test the possible GEDCOM methods for ";
    gedcomStr += "1 CONC expressing dates, approximate dates, date ranges, and interpreted dates. There are also a few ";
    gedcomStr += "1 CONC Hebrew dates, French Republic dates. and \"B.C\" dates.";
    gedcomStr += "1 CONT ";
    gedcomStr += "1 CONT 7. The residence structure use all possible subordinate tags in the address part of the ";
    gedcomStr += "1 CONC residence.";
    gedcomStr += "1 CONT ";
    gedcomStr += "1 CONT 8. This individual has all possible attributes. The GEDCOM tags for the attributes are given ";
    gedcomStr += "1 CONC in the TYPE tag of each attribute. Some notes are:";
    gedcomStr += "1 CONT      a. There are 2 occupation attributes to test how programs handle multiple tags of the same ";
    gedcomStr += "1 CONC type (which is allowed).";
    gedcomStr += "1 CONT      b. The first OCCU attribute uses all possible subordinate tags for an attribute.";
    gedcomStr += "1 CONT ";
    gedcomStr += "1 CONT 9. This record has three note structures. The first is this set of notes which is in a separate ";
    gedcomStr += "1 CONC NOTE record. The other two are NOTE structures embedded in the record. Are all imported ";
    gedcomStr += "1 CONC and kept separate? Furthermore, the two embedded note structures have subordinate source ";
    gedcomStr += "1 CONC citations. The second set of notes has a source citation to a SOURCE record and the third set ";
    gedcomStr += "1 CONC of notes has an embedded source citation.";
    gedcomStr += "1 CONT ";
    gedcomStr += "1 CONT 10. This record has three source citations. Two are citations to a SOURCE record; one is an ";
    gedcomStr += "1 CONC embedded source citation (used in older GEDCOM files).";
    gedcomStr += "1 CONT ";
    gedcomStr += "1 CONT 11. This record has one link to a multimedia file. For more testing of multimedia links, see ";
    gedcomStr += "1 CONC the \"Standard GEDCOM Filelinks,\" \"Nonstandard Multimedia Filelinks,\" \"General Custom ";
    gedcomStr += "1 CONC Filelinks,\" and \"Extra URL Filelinks\" INDIVIDUAL records.";
    gedcomStr += "1 CONT ";
    gedcomStr += "1 CONT 12. This individual has one alias and two associations. All possible tags in the first ";
    gedcomStr += "1 CONC association link are used.";
    gedcomStr += "1 CONT ";
    gedcomStr += "1 CONT 13. This record is linked to a submitter and to two submitters with interest in the ancestors ";
    gedcomStr += "1 CONC and descendants of this individual.";
    gedcomStr += "1 CONT ";
    gedcomStr += "1 CONT 14. This record has all remaining tags allowed in individual records for user reference ";
    gedcomStr += "1 CONC number, record ID, record file number, ancestral file number, and the changed date.";
    gedcomStr += "1 CHAN";
    gedcomStr += "2 DATE 12 Jan 2001";
    gedcomStr += "3 TIME 0:36:39";
    gedcomStr += "0 @N5@ NOTE";
    gedcomStr += "1 CONC Notes on this LDS event. All possible LDS ordinance detail tags are used in ";
    gedcomStr += "1 CONC this event.";
    gedcomStr += "1 CHAN";
    gedcomStr += "2 DATE 6 Mar 2000";
    gedcomStr += "3 TIME 22:05:42";
    gedcomStr += "0 @N6@ NOTE";
    gedcomStr += "1 CONC Notes on this LDS Spouse Sealing Event.";
    gedcomStr += "1 SOUR @SOURCE1@";
    gedcomStr += "1 CHAN";
    gedcomStr += "2 DATE 26 May 1999";
    gedcomStr += "3 TIME 22:38:25";
    gedcomStr += "0 @N7@ NOTE";
    gedcomStr += "1 CONC This source citation has all fields possible in a source citation to a separate SOURCE ";
    gedcomStr += "1 CONC record. Besides the link to the SOURCE record there are possible fields about this ";
    gedcomStr += "1 CONC citation (e.g., PAGE, TEXT, etc.)";
    gedcomStr += "1 CONT ";
    gedcomStr += "1 CONT These notes on the source citation are in a separate NOTE record.";
    gedcomStr += "1 CHAN";
    gedcomStr += "2 DATE 13 Jun 2000";
    gedcomStr += "3 TIME 16:02:33";
    gedcomStr += "0 @N8@ NOTE";
    gedcomStr += "1 CONC Some specific note about the birth event.";
    gedcomStr += "1 CONT ";
    gedcomStr += "1 CONT These notes are in a separate NOTE record. These notes also have their own source ";
    gedcomStr += "1 CONC citation structure.";
    gedcomStr += "1 SOUR @SR2@";
    gedcomStr += "2 DATA";
    gedcomStr += "3 DATE 1 JUN 1945";
    gedcomStr += "3 TEXT Here is some text from the source. The source is about the notes ";
    gedcomStr += "4 CONC for the birth event.";
    gedcomStr += "2 QUAY 3";
    gedcomStr += "2 NOTE @N9@";
    gedcomStr += "2 PAGE 102";
    gedcomStr += "2 EVEN Event type cited in source";
    gedcomStr += "3 ROLE Role in cited event";
    gedcomStr += "1 CHAN";
    gedcomStr += "2 DATE 18 Jun 2000";
    gedcomStr += "3 TIME 1:09:46";
    gedcomStr += "0 @N9@ NOTE";
    gedcomStr += "1 CONC These are notes in a NOTE record. It is a bit redundant, but you can add source ";
    gedcomStr += "1 CONC citations directly to NOTE records in addition to adding source citations to the ";
    gedcomStr += "1 CONC initial GEDCOM structure that the notes are about.";
    gedcomStr += "1 CONT ";
    gedcomStr += "1 CONT This example source citation in a NOTE record has all possible source citation ";
    gedcomStr += "1 CONC fields filled in.";
    gedcomStr += "1 CHAN";
    gedcomStr += "2 DATE 9 Jun 1999";
    gedcomStr += "3 TIME 13:16:57";
    gedcomStr += "0 @N11@ NOTE";
    gedcomStr += "1 CONC A possessions source note.";
    gedcomStr += "1 CHAN";
    gedcomStr += "2 DATE 18 Jun 2000";
    gedcomStr += "3 TIME 1:37:42";
    gedcomStr += "0 @N12@ NOTE";
    gedcomStr += "1 CONC This is a second source citation in this record.";
    gedcomStr += "1 CHAN";
    gedcomStr += "2 DATE 6 Mar 2000";
    gedcomStr += "3 TIME 22:18:51";
    gedcomStr += "0 @N14@ NOTE";
    gedcomStr += "1 CONC These notes can be used to add more information about the multimedia file linked to ";
    gedcomStr += "1 CONC this SOURCE record.";
    gedcomStr += "1 CHAN";
    gedcomStr += "2 DATE 12 Mar 2000";
    gedcomStr += "3 TIME 9:49:23";
    gedcomStr += "0 @N15@ NOTE";
    gedcomStr += "1 CONC Comments on \"Everything You Every Wanted to Know about GEDCOM Tags\" SOURCE Record.";
    gedcomStr += "1 CONT ";
    gedcomStr += "1 CONT This is a set of notes about this SOURCE record. These notes are for anything else ";
    gedcomStr += "1 CONC needed. There are other places to enter notes about the storage of the source (in the ";
    gedcomStr += "1 CONC Repository link) and about the data in the source (in the DATA structure).";
    gedcomStr += "1 CONT ";
    gedcomStr += "1 CONT This particular SOURCE record uses all possible GEDCOM tags for a SOURCE ";
    gedcomStr += "1 CONC record. Some things to check are:";
    gedcomStr += "1 CONT ";
    gedcomStr += "1 CONT 1. Are the separate notes structures in the Repository link and the DATA structure ";
    gedcomStr += "1 CONC preserved on importing?";
    gedcomStr += "1 CONT ";
    gedcomStr += "1 CONT 2. Does the software recognize two sets of event types in the DATA structure?";
    gedcomStr += "1 CONT ";
    gedcomStr += "1 CONT 3. Are the multimedia links preserved?";
    gedcomStr += "1 CONT ";
    gedcomStr += "1 CONT 4. This record as two sets of notes - this one in a separate record and a second one ";
    gedcomStr += "1 CONC embedded in the SOURCE record. Are they both imported and kept separate?";
    gedcomStr += "1 CHAN";
    gedcomStr += "2 DATE 13 Jun 2000";
    gedcomStr += "3 TIME 17:04:24";
    gedcomStr += "0 @N16@ NOTE";
    gedcomStr += "1 CONC Comments on \"All I Know About GEDCOM, I Learned on the Internet\" SOURCE record.";
    gedcomStr += "1 CONT ";
    gedcomStr += "1 CONT This is another SOURCE record. How does the importing software handle multiple ";
    gedcomStr += "1 CONC sources in the GEDCOM file? This source only fills a few GEDCOM structures.";
    gedcomStr += "1 CHAN";
    gedcomStr += "2 DATE 12 Mar 2000";
    gedcomStr += "3 TIME 12:46:21";
    gedcomStr += "0 @N17@ NOTE";
    gedcomStr += "1 CONC How does software handle embedded SOURCE records on import? Such source ";
    gedcomStr += "1 CONC citations are common in old GEDCOM files. More modern GEDCOM files should ";
    gedcomStr += "1 CONC use source citations to SOURCE records.";
    gedcomStr += "1 CHAN";
    gedcomStr += "2 DATE 12 Mar 2000";
    gedcomStr += "3 TIME 10:56:56";
    gedcomStr += "0 @N18@ NOTE";
    gedcomStr += "1 CONC Comments on \"Standard GEDCOM Filelinks\" INDIVIDUAL Record.";
    gedcomStr += "1 CONT ";
    gedcomStr += "1 CONT The GEDCOM standard lets you link records to multimedia objects kept in separate ";
    gedcomStr += "1 CONC files. When GEDCOM 5.5 was released, it only mentioned allowing links to a small ";
    gedcomStr += "1 CONC number of multimedia files types and some of them are Windows-only file types. ";
    gedcomStr += "1 CONC The recommended list is";
    gedcomStr += "1 CONT ";
    gedcomStr += "1 CONT      bmp - Windows but map file";
    gedcomStr += "1 CONT      gif - Bit map, 256 color GIF files (common on the Internet)";
    gedcomStr += "1 CONT      jpeg - Bit-mapped files developed for photographs (also common on the Internet)";
    gedcomStr += "1 CONT      ole - Linked object";
    gedcomStr += "1 CONT      pcx - Windows paintbrush file";
    gedcomStr += "1 CONT      tiff - Tagged image format file";
    gedcomStr += "1 CONT      wav - Windows sound file";
    gedcomStr += "1 CONT ";
    gedcomStr += "1 CONT This INDIVIDUAL record has links to this limited set of multimedia files (except ";
    gedcomStr += "1 CONC for ole). These links are created by having an OBJE structure with the path name to ";
    gedcomStr += "1 CONC the file in a subordinate FILE tag and the format of the file in a subordinate FORM ";
    gedcomStr += "1 CONC tag.";
    gedcomStr += "1 CONT ";
    gedcomStr += "1 CONT It does not make sense to limit files links to this small set of file types. It does not ";
    gedcomStr += "1 CONC allow for future file types and, for example, it ignores movie files types. You can visit ";
    gedcomStr += "1 CONC the \"Nonstandard Multimedia Filelinks\" record to see links to other types of multimedia files. ";
    gedcomStr += "1 CONC You can visit the \"General Custom Filelinks\" and the \"Extra URL Filelinks\" records to see links to ";
    gedcomStr += "1 CONC any file type and to universal resource locators.";
    gedcomStr += "1 CONT ";
    gedcomStr += "1 CONT NOTE: The path names for the linked files here are just the file names. A good ";
    gedcomStr += "1 CONC GEDCOM program should search for the files and might look first in the same ";
    gedcomStr += "1 CONC folder as this test GEDCOM file. A weaker program might be unable to locate these ";
    gedcomStr += "1 CONC files and you will have to enter the full path names.";
    gedcomStr += "1 CONT ";
    gedcomStr += "1 CONT EMBEDDED Multimedia Object:";
    gedcomStr += "1 CONT      GEDCOM 5.5 has a method for encoding multimedia objects and storing them in ";
    gedcomStr += "1 CONC MULTIMEDIA Records. This INDIVIDUAL has a link to such an embedded ";
    gedcomStr += "1 CONC object. The object has encoded data, written using the GEDCOM 5.5 encoding ";
    gedcomStr += "1 CONC algorithm, for the image of a small flower. To my knowledge, there are no genealogy ";
    gedcomStr += "1 CONC programs that can actually read and decode such objects. The main reason for ";
    gedcomStr += "1 CONC inclusion of the object here is to see how programs will treat this record. Good ";
    gedcomStr += "1 CONC programs will leave them in the file (it is bad manners to delete someone's data). Bad ";
    gedcomStr += "1 CONC programs will simple delete the object from the file.";
    gedcomStr += "1 REFN User Reference Number";
    gedcomStr += "2 TYPE User Reference Type";
    gedcomStr += "1 RIN 1";
    gedcomStr += "1 CHAN";
    gedcomStr += "2 DATE 11 Jan 2001";
    gedcomStr += "3 TIME 15:41:51";
    gedcomStr += "0 @N19@ NOTE";
    gedcomStr += "1 CONC A note about this LDS spouse sealing source.";
    gedcomStr += "1 CHAN";
    gedcomStr += "2 DATE 12 Mar 2000";
    gedcomStr += "3 TIME 12:32:13";
    gedcomStr += "0 @N20@ NOTE";
    gedcomStr += "1 CONC Comments on \"Chris Locked Torture\" record.";
    gedcomStr += "1 CONT ";
    gedcomStr += "1 CONT These notes test line breaking in note records with multiple lines. These notes are for ";
    gedcomStr += "1 CONC a locked individual and thus you should not be able to edit them.";
    gedcomStr += "1 CONT ";
    gedcomStr += "1 CONT TEST #1: Line breaks in the middle of a word";
    gedcomStr += "1 CONT      These lines appear together. The word TE";
    gedcomStr += "1 CONC ST should appear as a single word and ";
    gedcomStr += "1 CONC not be broken onto two lines.";
    gedcomStr += "1 CONT ";
    gedcomStr += "1 CONT TEST #2: Translation of \"at\" signs";
    gedcomStr += "1 CONT      The GEDCOM standard says the \"@@\" sign should appear in any text in the file ";
    gedcomStr += "1 CONC as double \"@@@@\" signs. This recommendation is superfluous, because there is ";
    gedcomStr += "1 CONC never a case when an \"@@\" sign in data can be confused with other GEDCOM uses ";
    gedcomStr += "1 CONC of the \"@@\" sign. The question here is how does the software import:";
    gedcomStr += "1 CONT ";
    gedcomStr += "1 CONT      A single @@ sign in some notes entered by using two characters.";
    gedcomStr += "1 CONT ";
    gedcomStr += "1 CONT If all \"at\" signs above appear above as 2 or 4 at signs, that GEDCOM software is not ";
    gedcomStr += "1 CONC converting double at signs to single at signs.";
    gedcomStr += "1 CONT ";
    gedcomStr += "1 CONT TEST #3: Bad line breaks between word but a forgotten space";
    gedcomStr += "1 CONT      A little below, the words \"End\" and \"Start\" are on two lines in the note record. ";
    gedcomStr += "1 CONC The line with \"End,\" however, forgot the required trailing blank. Thus, a proper ";
    gedcomStr += "1 CONC importing of these bad notes should combine the two words with no space between ";
    gedcomStr += "1 CONC \"End\" and \"Start\". Here is End";
    gedcomStr += "1 CONC Start as described above. They should appear as one ";
    gedcomStr += "1 CONC word.";
    gedcomStr += "1 CONT ";
    gedcomStr += "1 CONT TEST #4: Blank lines";
    gedcomStr += "1 CONT      The above paragraphs should have blank lines between them.";
    gedcomStr += "1 CHAN";
    gedcomStr += "2 DATE 11 Jan 2001";
    gedcomStr += "3 TIME 15:35:25";
    gedcomStr += "0 @N21@ NOTE";
    gedcomStr += "1 CONC Comments on \"Nonstandard Multimedia Filelinks\" INDIVIDUAL Record.";
    gedcomStr += "1 CONT ";
    gedcomStr += "1 CONT File links in GEDCOM are created by having an OBJE structure with the path name ";
    gedcomStr += "1 CONC to the file in a subordinate FILE tag and the format of the file in a subordinate ";
    gedcomStr += "1 CONC FORM tag. It does not make sense to limit file links to the small set of file types ";
    gedcomStr += "1 CONC mentioned in the GEDCOM standard (see INDIVIDUAL record \"Standard GEDCOM Filelinks\"  ";
    gedcomStr += "1 CONC for those file types). This INDIVIDUAL record has links to ";
    gedcomStr += "1 CONC other types of multimedia files including movie files, other image file types, and some ";
    gedcomStr += "1 CONC Macintosh file types.";
    gedcomStr += "1 CONT ";
    gedcomStr += "1 CONT What will a genealogy program do when in encounters to logical extensions to ";
    gedcomStr += "1 CONC GEDCOM file links? Good programs will follow the links. Weaker programs will ";
    gedcomStr += "1 CONC simply delete them from your file (it is bad manners to delete someone's data).";
    gedcomStr += "1 CONT ";
    gedcomStr += "1 CONT Some other possible multimedia file type not yet linked to this record are:";
    gedcomStr += "1 CONT    avi - Microsoft movie file";
    gedcomStr += "1 CONT    midi - sound file";
    gedcomStr += "1 CONT    mp3 - music file";
    gedcomStr += "1 CHAN";
    gedcomStr += "2 DATE 11 Jan 2001";
    gedcomStr += "3 TIME 15:43:04";
    gedcomStr += "0 @N22@ NOTE";
    gedcomStr += "1 CONC Comments on \"General Custom Filelinks\" INDIVIDUAL Record.";
    gedcomStr += "1 CONT ";
    gedcomStr += "1 CONT File links in GEDCOM are created by having an OBJE structure with the path name ";
    gedcomStr += "1 CONC to the file in a subordinate FILE tag and the format of the file in a subordinate ";
    gedcomStr += "1 CONC FORM tag. It does not make sense to limit file links to the small set of multimedia ";
    gedcomStr += "1 CONC file types mentioned in the GEDCOM standard (see INDIVIDUAL record ";
    gedcomStr += "1 CONC \"Standard GEDCOM Filelinks\" for those file types). The INDIVIDUAL record ";
    gedcomStr += "1 CONC \"Nonstandard Multimedia Filelinks\" has sample links to other types of multimedia files not ";
    gedcomStr += "1 CONC included in the standard GEDCOM list. This INDIVIDUAL record has links to ";
    gedcomStr += "1 CONC some non-multimedia files types.";
    gedcomStr += "1 CONT ";
    gedcomStr += "1 CONT What will a genealogy program do when it encounters such logical extensions to ";
    gedcomStr += "1 CONC GEDCOM file links? Good programs will follow the links. Weaker programs will ";
    gedcomStr += "1 CONC simply delete them from your file (it is bad manners to delete someone's data).";
    gedcomStr += "1 CHAN";
    gedcomStr += "2 DATE 20 Jun 2000";
    gedcomStr += "3 TIME 1:06:34";
    gedcomStr += "0 @N23@ NOTE";
    gedcomStr += "1 CONC Comments on \"Extra URL Filelinks\" INDIVIDUAL Record.";
    gedcomStr += "1 CONT ";
    gedcomStr += "1 CONT File links in GEDCOM are created by having an OBJE structure with the path name ";
    gedcomStr += "1 CONC to the file in a subordinate FILE tag and the format of the file in a subordinate ";
    gedcomStr += "1 CONC FORM tag. It does not make sense to limit file links to the small set of multimedia ";
    gedcomStr += "1 CONC file types mentioned in the GEDCOM standard (see INDIVIDUAL record ";
    gedcomStr += "1 CONC \"Standard GEDCOM Filelinks\" for those file types) or even to limit them to local ";
    gedcomStr += "1 CONC files. This INDIVIDUAL record has a series of links with universal resource ";
    gedcomStr += "1 CONC locators (URL) in the FILE tag and the file \"URL\" in the FORM tag.";
    gedcomStr += "1 CONT ";
    gedcomStr += "1 CONT The sample URL links include links to a web sites, a link to an FTP site, and a link to ";
    gedcomStr += "1 CONC send email.";
    gedcomStr += "1 CONT ";
    gedcomStr += "1 CONT This extension of file links to URL links is non-standard GEDCOM. What will a ";
    gedcomStr += "1 CONC genealogy program do when in encounters URL file links? Cleaver programs will ";
    gedcomStr += "1 CONC find the file on the Internet using your default browser, FTP program, or email ";
    gedcomStr += "1 CONC program. Weaker programs will simply delete them from your file (it is bad manners ";
    gedcomStr += "1 CONC to delete someone's data).";
    gedcomStr += "1 CHAN";
    gedcomStr += "2 DATE 20 Jun 2000";
    gedcomStr += "3 TIME 1:09:48";
    gedcomStr += "0 @N24@ NOTE";
    gedcomStr += "1 CONC Comments on \"Charlie Accented ANSEL\" INDIVIDUAL Record.";
    gedcomStr += "1 CONT ";
    gedcomStr += "1 CONT To represent accented characters, the ANSEL character set uses two-byte codes. The ";
    gedcomStr += "1 CONC first byte is E0 to FB or FE (hexadecimal); the second byte is the letter to be ";
    gedcomStr += "1 CONC accented.";
    gedcomStr += "1 CONT ";
    gedcomStr += "1 CONT These notes have all possible accented characters. How many of the characters are ";
    gedcomStr += "1 CONC represented correctly? Even programs that fully support ANSEL will not draw all ";
    gedcomStr += "1 CONC these accented characters correctly. Many of them correspond to accents that can not ";
    gedcomStr += "1 CONC be found in any langauge and therefore do not correspond to any computer fonts.";
    gedcomStr += "1 CONT ";
    gedcomStr += "1 CONT code: E0 (Unicode: hook above, 0309) low rising tone mark";
    gedcomStr += "1 CONT      ABCDEFGHIJKLM";
    gedcomStr += "1 CONT      NOPQRSTUVWXYZ";
    gedcomStr += "1 CONT      abcdefghijklm";
    gedcomStr += "1 CONT      nopqrstuvwxyz";
    gedcomStr += "1 CONT ";
    gedcomStr += "1 CONT code: E1 (Unicode: grave, 0300) grave accent";
    gedcomStr += "1 CONT      ABCDEFGHIJKLM";
    gedcomStr += "1 CONT      NOPQRSTUVWXYZ";
    gedcomStr += "1 CONT      abcdefghijklm";
    gedcomStr += "1 CONT      nopqrstuvwxyz";
    gedcomStr += "1 CONT ";
    gedcomStr += "1 CONT code: E2 (Unicode: acute, 0301) acute accent:";
    gedcomStr += "1 CONT      ABCDEFGHIJKLM";
    gedcomStr += "1 CONT      NOPQRSTUVWXYZ";
    gedcomStr += "1 CONT      abcdefghijklm";
    gedcomStr += "1 CONT      nipqrstuvwxyz";
    gedcomStr += "1 CONT ";
    gedcomStr += "1 CONT code: E3 (Unicode: circumflex, 0302) circumflex accent";
    gedcomStr += "1 CONT      ABCDEFGHIJKLM";
    gedcomStr += "1 CONT      NOPQRSTUVWXYZ";
    gedcomStr += "1 CONT      abcdefghijklm";
    gedcomStr += "1 CONT      nopqrstuvwxyz";
    gedcomStr += "1 CONT ";
    gedcomStr += "1 CONT code: E4 (Unicode: tilde, 0303) tilde";
    gedcomStr += "1 CONT      ABCDEFGHIJKLM";
    gedcomStr += "1 CONT      NOPQRSTUVWXYZ";
    gedcomStr += "1 CONT      Nbcdefghijklm";
    gedcomStr += "1 CONT      nopqrstuvwxyz";
    gedcomStr += "1 CONT ";
    gedcomStr += "1 CONT code: E5 (Unicode: macron, 0304) macron";
    gedcomStr += "1 CONT      ABCDEFGHIJKLM";
    gedcomStr += "1 CONT      NOPQRSTUVWXYZ";
    gedcomStr += "1 CONT      abcdefghijklm";
    gedcomStr += "1 CONT      nopqrstuvwxyz";
    gedcomStr += "1 CONT ";
    gedcomStr += "1 CONT code: E6 (Unicode: breve, 0306) breve";
    gedcomStr += "1 CONT      ABCDEFGHIJKLM";
    gedcomStr += "1 CONT      NOPQRSTUVWXYZ";
    gedcomStr += "1 CONT      abcdefghijklm";
    gedcomStr += "1 CONT      nopqrstuvwxyz";
    gedcomStr += "1 CONT ";
    gedcomStr += "1 CONT code: E7 (Unicode: dot above, 0307) dot above";
    gedcomStr += "1 CONT      ABCDEFGHIJKLM";
    gedcomStr += "1 CONT      NOPQRSTUVWXYZ";
    gedcomStr += "1 CONT      abcdefghijklm";
    gedcomStr += "1 CONT      nopqrstuvwxyz";
    gedcomStr += "1 CONT ";
    gedcomStr += "1 CONT code: E8 (Unicode: diaeresis, 0308) umlaut (dieresis)";
    gedcomStr += "1 CONT      ABCDEFGHIJKLM";
    gedcomStr += "1 CONT      NOPQRSTUVWXYZ";
    gedcomStr += "1 CONT      abcdefghijklm";
    gedcomStr += "1 CONT      nopqrstuvwxyz";
    gedcomStr += "1 CONT ";
    gedcomStr += "1 CONT code: E9 (Unicode: caron, 030C) hacek";
    gedcomStr += "1 CONT      ABCDEFGHIJKLM";
    gedcomStr += "1 CONT      NOPQRSTUVWXYZ";
    gedcomStr += "1 CONT      abcdefghijklm";
    gedcomStr += "1 CONT      nopqrstuvwxyz";
    gedcomStr += "1 CONT ";
    gedcomStr += "1 CONT code: EA (Unicode: ring above, 030A) circle above (angstrom)";
    gedcomStr += "1 CONT      ABCDEFGHIJKLM";
    gedcomStr += "1 CONT      NOPQRSTUVWXYZ";
    gedcomStr += "1 CONT      abcdefghijklm";
    gedcomStr += "1 CONT      nopqrstuvwxyz";
    gedcomStr += "1 CONT ";
    gedcomStr += "1 CONT code: EB (Unicode: ligature left half, FE20) ligature, left half";
    gedcomStr += "1 CONT      ABCDEFGHIJKLM";
    gedcomStr += "1 CONT      NOPQRSTUVWXYZ";
    gedcomStr += "1 CONT      abcdefghijklm";
    gedcomStr += "1 CONT      nopqrstuvwxyz";
    gedcomStr += "1 CONT ";
    gedcomStr += "1 CONT code: EC (Unicode: ligature right half, FE21) ligature, right half";
    gedcomStr += "1 CONT      ABCDEFGHIJKLM";
    gedcomStr += "1 CONT      NOPQRSTUVWXYZ";
    gedcomStr += "1 CONT      abcdefghijklm";
    gedcomStr += "1 CONT      nopqrstuvwxyz";
    gedcomStr += "1 CONT ";
    gedcomStr += "1 CONT code: ED (Unicode: comma above right, 0315) high comma, off center";
    gedcomStr += "1 CONT      ABCDEFGHIJKLM";
    gedcomStr += "1 CONT      NOPQRSTUVWXYZ";
    gedcomStr += "1 CONT      abcdefghijklm";
    gedcomStr += "1 CONT      nopqrstuvwxyz";
    gedcomStr += "1 CONT ";
    gedcomStr += "1 CONT code: EE (Unicode: double acute, 030B) double acute accent";
    gedcomStr += "1 CONT      ABCDEFGHIJKLM";
    gedcomStr += "1 CONT      NOPQRSTUVWXYZ";
    gedcomStr += "1 CONT      abcdefghijklm";
    gedcomStr += "1 CONT      nopqrstuvwxyz";
    gedcomStr += "1 CONT ";
    gedcomStr += "1 CONT code: EF (Unicode: candrabindu, 0310) candrabindu";
    gedcomStr += "1 CONT      ABCDEFGHIJKLM";
    gedcomStr += "1 CONT      NOPQRSTUVWXYZ";
    gedcomStr += "1 CONT      abcdefghijklm";
    gedcomStr += "1 CONT      nopqrstuvwxyz";
    gedcomStr += "1 CONT ";
    gedcomStr += "1 CONT code: F0 (Unicode: cedilla, 0327) cedilla";
    gedcomStr += "1 CONT      ABCDEFGHIJKLM";
    gedcomStr += "1 CONT      NOPQRSTUVWXYZ";
    gedcomStr += "1 CONT      abcdefghijklm";
    gedcomStr += "1 CONT      nopqrstuvwxyz";
    gedcomStr += "1 CONT ";
    gedcomStr += "1 CONT code: F1 (Unicode: ogonek, 0328) right hook";
    gedcomStr += "1 CONT      ABCDEFGHIJKLM";
    gedcomStr += "1 CONT      NOPQRSTUVWXYZ";
    gedcomStr += "1 CONT      abcdefghijklm";
    gedcomStr += "1 CONT      nopqrstuvwxyz";
    gedcomStr += "1 CONT ";
    gedcomStr += "1 CONT code: F2 (Unicode: dot below, 0323) dot below";
    gedcomStr += "1 CONT      ABCDEFGHIJKLM";
    gedcomStr += "1 CONT      NOPQRSTUVWXYZ";
    gedcomStr += "1 CONT      abcdefghijklm";
    gedcomStr += "1 CONT      nopqrstuvwxyz";
    gedcomStr += "1 CONT ";
    gedcomStr += "1 CONT code: F3 (Unicode: diaeresis below, 0324) double dot below";
    gedcomStr += "1 CONT      ABCDEFGHIJKLM";
    gedcomStr += "1 CONT      NOPQRSTUVWXYZ";
    gedcomStr += "1 CONT      abcdefghijklm";
    gedcomStr += "1 CONT      nopqrstuvwxyz";
    gedcomStr += "1 CONT ";
    gedcomStr += "1 CONT code: F4 (Unicode: ring below, 0325) circle below";
    gedcomStr += "1 CONT      ABCDEFGHIJKLM";
    gedcomStr += "1 CONT      NOPQRSTUVWXYZ";
    gedcomStr += "1 CONT      abcdefghijklm";
    gedcomStr += "1 CONT      nopqrstuvwxyz";
    gedcomStr += "1 CONT ";
    gedcomStr += "1 CONT code: F5 (Unicode: double low line, 0333) double underscore";
    gedcomStr += "1 CONT      ABCDEFGHIJKLM";
    gedcomStr += "1 CONT      NOPQRSTUVWXYZ";
    gedcomStr += "1 CONT      abcdefghijklm";
    gedcomStr += "1 CONT      nopqrstuvwxyz";
    gedcomStr += "1 CONT ";
    gedcomStr += "1 CONT code: F6 (Unicode: line below, 0332) underscore";
    gedcomStr += "1 CONT      ABCDEFGHIJKLM";
    gedcomStr += "1 CONT      NOPQRSTUVWXYZ";
    gedcomStr += "1 CONT      abcdefghijklm";
    gedcomStr += "1 CONT      nopqrstuvwxyz";
    gedcomStr += "1 CONT ";
    gedcomStr += "1 CONT code: F7 (Unicode: comma below, 0326) left hook";
    gedcomStr += "1 CONT      ABCDEFGHIJKLM";
    gedcomStr += "1 CONT      NOPQRSTUVWXYZ";
    gedcomStr += "1 CONT      abcdefghijklm";
    gedcomStr += "1 CONT      nopqrstuvwxyz";
    gedcomStr += "1 CONT ";
    gedcomStr += "1 CONT code: F8 (Unicode: left half ring below, 031C) right cedilla";
    gedcomStr += "1 CONT      ABCDEFGHIJKLM";
    gedcomStr += "1 CONT      NOPQRSTUVWXYZ";
    gedcomStr += "1 CONT      abcdefghijklm";
    gedcomStr += "1 CONT      nopqrstuvwxyz";
    gedcomStr += "1 CONT ";
    gedcomStr += "1 CONT code: F9 (Unicode: breve below, 032E) half circle below";
    gedcomStr += "1 CONT      ABCDEFGHIJKLM";
    gedcomStr += "1 CONT      NOPQRSTUVWXYZ";
    gedcomStr += "1 CONT      abcdefghijklm";
    gedcomStr += "1 CONT      nopqrstuvwxyz";
    gedcomStr += "1 CONT ";
    gedcomStr += "1 CONT code: FA (Unicode: double tilde left half, FE22) double tilde, left half";
    gedcomStr += "1 CONT      ABCDEFGHIJKLM";
    gedcomStr += "1 CONT      NOPQRSTUVWXYZ";
    gedcomStr += "1 CONT      abcdefghijklm";
    gedcomStr += "1 CONT      nopqrstuvwxyz";
    gedcomStr += "1 CONT ";
    gedcomStr += "1 CONT code: FB (Unicode: double tilde right half, FE23) double tilde, right half";
    gedcomStr += "1 CONT      ABCDEFGHIJKLM";
    gedcomStr += "1 CONT      NOPQRSTUVWXYZ";
    gedcomStr += "1 CONT      abcdefghijklm";
    gedcomStr += "1 CONT      nopqrstuvwxyz";
    gedcomStr += "1 CONT ";
    gedcomStr += "1 CONT code: FE (Unicode: comma above, 0313) high comma, centered";
    gedcomStr += "1 CONT      ABCDEFGHIJKLM";
    gedcomStr += "1 CONT      NOPQRSTUVWXYZ";
    gedcomStr += "1 CONT      abcdefghijklm";
    gedcomStr += "1 CONT      nopqrstuvwxyz";
    gedcomStr += "1 CHAN";
    gedcomStr += "2 DATE 12 Jan 2001";
    gedcomStr += "3 TIME 0:32:24";
    gedcomStr += "0 @N25@ NOTE";
    gedcomStr += "1 CONC Comments on \"Lucy Special ANSEL\" INDIVIDUAL Record.";
    gedcomStr += "1 CONT ";
    gedcomStr += "1 CONT The following are the special characters supported by the ANSEL character set. The first two letters ";
    gedcomStr += "1 CONC are the Hex code. The following text describes the character. ";
    gedcomStr += "1 CONC Finally, that character, or a character as close as possible to that ";
    gedcomStr += "1 CONC character, should appear in the parentheses.";
    gedcomStr += "1 CONT ";
    gedcomStr += "1 CONT A1 slash l - uppercase ()";
    gedcomStr += "1 CONT A2 slash o - uppercase ()";
    gedcomStr += "1 CONT A3 slash d - uppercase ()";
    gedcomStr += "1 CONT A4 thorn - uppercase ()";
    gedcomStr += "1 CONT A5 ligature ae - uppercase ()";
    gedcomStr += "1 CONT A6 ligature oe - uppercase ()";
    gedcomStr += "1 CONT A7 single prime ()";
    gedcomStr += "1 CONT A8 middle dot ()";
    gedcomStr += "1 CONT A9 musical flat ()";
    gedcomStr += "1 CONT AA registered sign ()";
    gedcomStr += "1 CONT AB plus-or-minus ()";
    gedcomStr += "1 CONT AC hook o - uppercase ()";
    gedcomStr += "1 CONT AD hook u - uppercase ()";
    gedcomStr += "1 CONT AE left half ring ()";
    gedcomStr += "1 CONT BO right half ring ()";
    gedcomStr += "1 CONT B1 slash l - lowercase ()";
    gedcomStr += "1 CONT B2 slash o - lowercase ()";
    gedcomStr += "1 CONT B3 slash d - lowercase ()";
    gedcomStr += "1 CONT B4 thorn - lowercase ()";
    gedcomStr += "1 CONT B5 ligature ae - lowercase ()";
    gedcomStr += "1 CONT B6 ligature oe - lowercase ()";
    gedcomStr += "1 CONT B7 double prime ()";
    gedcomStr += "1 CONT B8 dotless i - lowercase ()";
    gedcomStr += "1 CONT B9 british pound ()";
    gedcomStr += "1 CONT BA eth ()";
    gedcomStr += "1 CONT BC hook o - lowercase ()";
    gedcomStr += "1 CONT BD hook u - lowercase ()";
    gedcomStr += "1 CONT BE empty box - LDS extension ()";
    gedcomStr += "1 CONT BF black box - LDS extensions ()";
    gedcomStr += "1 CONT CO degree sign ()";
    gedcomStr += "1 CONT C1 script l ()";
    gedcomStr += "1 CONT C2 phonograph copyright mark ()";
    gedcomStr += "1 CONT C3 copyright symbol ()";
    gedcomStr += "1 CONT C4 musical sharp ()";
    gedcomStr += "1 CONT C5 inverted question mark ()";
    gedcomStr += "1 CONT C6 inverted exclamation mark ()";
    gedcomStr += "1 CONT CD midline e - LDS extension ()";
    gedcomStr += "1 CONT CE midline o - LDS extension ()";
    gedcomStr += "1 CONT CF es zet ()";
    gedcomStr += "1 CHAN";
    gedcomStr += "2 DATE 13 Jun 2000";
    gedcomStr += "3 TIME 16:28:45";
    gedcomStr += "0 @N26@ NOTE";
    gedcomStr += "1 CONC These are some notes of this multimedia link in the NAME structure.";
    gedcomStr += "1 CHAN";
    gedcomStr += "2 DATE 16 Jun 2000";
    gedcomStr += "3 TIME 1:20:11";
    gedcomStr += "0 @N27@ NOTE";
    gedcomStr += "1 CONC Comments on \"Teresa Mary Caregiver\" INDIVIDUAL Record.";
    gedcomStr += "1 CONT ";
    gedcomStr += "1 CONT This record is the adoptive mother of \"Joseph Tag Torture\". She is linked to a family ";
    gedcomStr += "1 CONC record, but there is no husband in that record.";
    gedcomStr += "1 CHAN";
    gedcomStr += "2 DATE 13 Jun 2000";
    gedcomStr += "3 TIME 17:14:28";
    gedcomStr += "0 @N28@ NOTE";
    gedcomStr += "1 CONC Comments on \"William Joseph Torture\" INDIVIDUAL Record.";
    gedcomStr += "1 CONT ";
    gedcomStr += "1 CONT This record is the natural father of \"Joseph Tag Torture\". He is linked to a family ";
    gedcomStr += "1 CONC record, but there is no wife in that record.";
    gedcomStr += "1 CHAN";
    gedcomStr += "2 DATE 11 Jan 2001";
    gedcomStr += "3 TIME 15:31:12";
    gedcomStr += "0 @N29@ NOTE";
    gedcomStr += "1 CONC Comments on \"Sandy Privacy Torture\" INDIVIDUAL Record.";
    gedcomStr += "1 CONT ";
    gedcomStr += "1 CONT This record has a restriction setting of \"privacy.\" In public applications of ";
    gedcomStr += "1 CONC GEDCOM files, \"privacy\" records should be hidden from all viewing and printing. It ";
    gedcomStr += "1 CONC is less clear how GEDCOM software on your own PC reading your own copies of ";
    gedcomStr += "1 CONC GEDCOM files should treat \"privacy\" records. At a minimum, it should import and ";
    gedcomStr += "1 CONC preserve the \"privacy\" setting.";
    gedcomStr += "1 CHAN";
    gedcomStr += "2 DATE 11 Jan 2001";
    gedcomStr += "3 TIME 15:36:50";
    gedcomStr += "0 @N30@ NOTE";
    gedcomStr += "1 CONC Comments on \"Pat Smith Torture\" INDIVIDUAL Record.";
    gedcomStr += "1 CONT ";
    gedcomStr += "1 CONT The record simply provides a child to \"Joseph Tag Torture\" in his family with \"Mary First ";
    gedcomStr += "1 CONC Jones\" as his spouse.";
    gedcomStr += "1 CHAN";
    gedcomStr += "2 DATE 11 Jan 2001";
    gedcomStr += "3 TIME 15:40:04";
    gedcomStr += "0 @N31@ NOTE";
    gedcomStr += "1 CONC Comments on \"Mary First Jones\" INDIVIDUAL Record.";
    gedcomStr += "1 CONT ";
    gedcomStr += "1 CONT This record is used to provide the first wife to \"Joseph Tag Torture.\" Not many other ";
    gedcomStr += "1 CONC tags are used.";
    gedcomStr += "1 CHAN";
    gedcomStr += "2 DATE 11 Jan 2001";
    gedcomStr += "3 TIME 15:38:17";
    gedcomStr += "0 @N32@ NOTE";
    gedcomStr += "1 CONC Comments on \"Elizabeth Second Smith\" INDIVIDUAL Record.";
    gedcomStr += "1 CONT ";
    gedcomStr += "1 CONT This record is used to provide a second wife to \"Joseph Tag Torture.\" Not many ";
    gedcomStr += "1 CONC other tags are used.";
    gedcomStr += "1 CHAN";
    gedcomStr += "2 DATE 11 Jan 2001";
    gedcomStr += "3 TIME 15:38:55";
    gedcomStr += "0 @N33@ NOTE";
    gedcomStr += "1 CONC Comments on \"William Joseph Torture-<unknown>\" FAMILY Record.";
    gedcomStr += "1 CONT ";
    gedcomStr += "1 CONT This record has the natural father of \"Joseph Tag Torture.\" The wife is not known.";
    gedcomStr += "1 CHAN";
    gedcomStr += "2 DATE 11 Jan 2001";
    gedcomStr += "3 TIME 16:49:33";
    gedcomStr += "0 @N34@ NOTE";
    gedcomStr += "1 CONC Comments on \"<unknown>-Teresa Mary Caregiver\" FAMILY Record.";
    gedcomStr += "1 CONT ";
    gedcomStr += "1 CONT This record has the adoptive mother of \"Joseph Tag Torture.\" The husband is not ";
    gedcomStr += "1 CONC known.";
    gedcomStr += "1 CHAN";
    gedcomStr += "2 DATE 11 Jan 2001";
    gedcomStr += "3 TIME 16:50:06";
    gedcomStr += "0 @N35@ NOTE";
    gedcomStr += "1 CONC Comments on \"Joseph Tag Torture-Elizabeth Second Smith\" FAMILY Record.";
    gedcomStr += "1 CONT ";
    gedcomStr += "1 CONT This record has a second marriage for \"Joseph Tag Torture\" and the family has one ";
    gedcomStr += "1 CONC child.";
    gedcomStr += "1 CHAN";
    gedcomStr += "2 DATE 11 Jan 2001";
    gedcomStr += "3 TIME 16:50:21";
    gedcomStr += "0 @N36@ NOTE";
    gedcomStr += "1 CONC Comments on \"Standard GEDCOM Filelinks-Torture GEDCOM Matriarch\" ";
    gedcomStr += "1 CONC FAMILY record.";
    gedcomStr += "1 CONT ";
    gedcomStr += "1 CONT The children in this family test logical extensions to the GEDCOM method for ";
    gedcomStr += "1 CONC linking to a multimedia file.";
    gedcomStr += "1 CHAN";
    gedcomStr += "2 DATE 11 Jan 2001";
    gedcomStr += "3 TIME 16:51:33";
    gedcomStr += "0 @N37@ NOTE";
    gedcomStr += "1 CONC Comments on \"Charlie Accented ANSEL-Lucy Special ANSEL\" FAMILY Record.";
    gedcomStr += "1 CONT ";
    gedcomStr += "1 CONT The two spouses in this family test reading of the ANSEL character set.";
    gedcomStr += "1 CHAN";
    gedcomStr += "2 DATE 11 Jan 2001";
    gedcomStr += "3 TIME 16:52:38";
    gedcomStr += "0 @N38@ NOTE";
    gedcomStr += "1 CONC Comments on \"<unknown>-Nonstandard Multimedia Filelinks\" FAMILY Record.";
    gedcomStr += "1 CONT ";
    gedcomStr += "1 CONT The record is simply used to make family connections between records in this file.";
    gedcomStr += "1 CHAN";
    gedcomStr += "2 DATE 11 Jan 2001";
    gedcomStr += "3 TIME 16:53:38";
    gedcomStr += "0 @M1@ OBJE";
    gedcomStr += "1 TITL Dummy Multimedia Object";
    gedcomStr += "1 FORM PICT";
    gedcomStr += "1 BLOB";
    gedcomStr += "2 CONT .HM.......k.1..F.jwA.Dzzzzw............A....1.........0U.66..E.8";
    gedcomStr += "2 CONT .......A..k.a6.A.......A..k.........../6....G.......0../..U.....";
    gedcomStr += "2 CONT .w1/m........HC0..../...zzzzzzzz..5zzk..AnA..U..W6U....2rRrRrRrR";
    gedcomStr += "2 CONT .Dw...............k.1.......1..A...5ykE/zzzx/.g//.Hxzk6/.Tzy/.k1";
    gedcomStr += "2 CONT /Dw/.Tvz.E5zzUE9/kHz.Tw2/DzzzEEA.kE2zk5yzk2/zzs21.U2/Dw/.Tw/.Tzy";
    gedcomStr += "2 CONT /.fy/.HzzkHzzzo21Ds00.E2.UE2.U62/.k./Ds0.UE0/Do0..E8/UE2.U62.U9w";
    gedcomStr += "2 CONT /.Tx/.20.jg2/jo2..9u/.0U.6A.zk";
    gedcomStr += "1 NOTE Here are some notes on this multimedia object.";
    gedcomStr += "2 CONT If decoded it should be an image of a flower.";
    gedcomStr += "1 REFN User Reference Number";
    gedcomStr += "2 TYPE User Reference Type";
    gedcomStr += "1 RIN 1";
    gedcomStr += "1 CHAN";
    gedcomStr += "2 DATE 14 Jan 2001";
    gedcomStr += "3 TIME 14:10:31";
    gedcomStr += "0 TRLR";
    return gedcomStr;
  }
}
java2s.com  | Contact Us | Privacy Policy
Copyright 2009 - 12 Demo Source and Support. All rights reserved.
All other trademarks are property of their respective owners.