| # GeneWeb - The GW format

The GW format is a text file format that can be output by GeneWeb using the gwu command. It contains all the GeneWeb database information in a way that can be easily parsed by other programs, or manually changed in your favorite text editor. You can then rebuild a database using the gwc command. The GW format is also a convenient way to make backup files of your database, exchange your data with other programs, etc.

- 1. Styles Guide
- 2. Dates
- 3. Strings
- 4. Person referencing
- 5. The main structure : the Family
- 6. Person Information
- 7. Titles
- 8. Notes
- 9. Relations

This chapter has been written by Yann Corno.

### 1. Styles Guide

- Text that should appear ‘as is’ is written in bold typeface.
- Words in italic should be replaced by their actual value. Such names are capitalized, e.g. HusbandLastName
- Things enclosed in [brackets] are optional : they can be omitted.

- Words separated by vertical bars ‘|’ mean choices : one of the item is to be used.

Example :

> fam

> HusbandLastName FirstName[.Number] + [WeddingDate] [#mp WeddingPlace] WifeLastName FirstName[.Number]

can give the following valid lines :

    fam CORNO Joseph_Marie_Vincent + THOMAS Marie_Julienne

    fam CORNO Alain.1 +25/11/1728 #mp Ile-aux-Moines CAUZIC Marie

### 2. Dates

Dates can be in the following formats : dd/mm/yyyy, yyyy, mm/yyyy. Sometimes, when you really need to give a date, but do not have one, just give 0.

Date modifiers use special prefix characters to specify "about", "before", etc.

Type of date | Special Character | Example
About | ~ | ~10/5/1990
Maybe | ? | ?10/5/1990
Before | < | <10/5/1990
After | > | >10/5/1990
<-Or-> | | | 10/5/1990|1991
<-Between-> | .. | 10/5/1990..1991

Type of calendar is Gregorian by default. For Julian, append ‘J’ to the date, for French Republican use ‘F’, and for Hebrew, use ‘H’. Example : 10/9/5750H

For a free ‘text’ date, put 0 and use parenthesis this way :

    0(5th_May_1990)

### 3. Strings

Spaces in strings are replaced by ‘_’ underscores (except in notes and in some comments) : Marie_Julienne

High ASCII follow the iso-8859-1 character set.

### 4. Person referencing

A person can be referenced several times in a file : as a parent, as a child, or in a note. Last Name, First Name and number (if any) must match exactly, or the software will not link the pieces together.

### 5. The main structure : the Family

The file format is based on Families. A family describes the husband and wife, and lists the children. The personal information (DoB, etc.) is located at the children level. If someone does not have any parents, then its personal information is inserted directly after his/her name in the family line.

Note that a consequence of this is that people that are all alone in the GeneWeb database will not be exported to the GW file. This is how deleted persons are purged during a gwu/gwc sequence : they are simply not exported in the first place.

1st case :

both husband and wife are listed somewhere else as children of their parents families.

fam HusbandLastName FirstName[.Number] +[WeddingDate] [#sep | - DivorceDate] [#nm | #eng] [#mp WeddingPlace] [#ms WeddingSource] WifeLastName FirstName[.Number]
[src Family source]
[comm Family comments in free format]
[wit: Witness (use Person format, see Person Information section) ]
beg
- [h | f | ] Person (see detailed description at the next section)
end

- If the parents are not married (relationship), insert the #nm tag. If they are engaged, use #eng.
- If the parents are separated, use #sep. Or if they are divorced, use '-' instead and optionally add the divorce date just after.
- If the ChildLastName is omitted, the Last Name of the father will be used.
- The src, comm and wit:: tags come in separate lines, after the fam tag. They are optional.
- If the child gender is unknown, do not put anything (no ‘h’ nor ‘f’) after the ‘-‘ dash.

If a family has no children, you can skip the whole beg/end tags sequence :

    fam HEYDENREICH Gaspard +1719 TRESCH Rosine_Catherine

2nd case :

the husband or the wife is not listed as a child of another family. Simply stick all his/her personal information just like you would do it with a child. See the Person Information section below for all details on personal information.

Example : John Corno (o 1935 at Soisy, +1997) information is put directly in the family line, because he appears nowhere else :

    fam Corno John 1935 #bp Soisy 1997 + Rempp Zabeth

If you really have no information on a person but his/her name, then just append 0 to his/her name, which will serve as a blank DoB and as an indicator that the person is not described anywhere else :

    fam Diemer Patrick 0 + Heidenreich Sylvie 0

### 6. Person Information

Personal information can appear either on a child line in a family, or in a family line if the person is not listed as a child somewhere else.

The very minimum information for a parent is his/her Last Name and First Name, with a 0 Date of Birth (DoB) :

    Corno Yann 0

For children, the DoB is not compulsory (the Last Name can also be omitted : the one from the father will be used).

So in other words, the DoB is compulsory only if the person is a Parent, or if the person has a Date of Death (DoD). In the last case, if the DoB is unknown, simply give 0.

Example : Maurice, unknown DoB, died in 1935 in Caen :

    Corno Maurice 0 1935 #dp Caen

The complete format for a person goes as follows :

LastName FirstName [{FirstNameAlias}] [#salias SurnameAlias] [(PublicName)] [#image ImageFilePath] [#nick Qualifier] [#alias Alias] [Titles (see Title section)] [#apubl | #apriv] [#occu Occupation] [#src PersonSource] DateOfBirth [#bs BirthSource] [#bp PlaceOfBirth] [!BaptizeDate] [#pp BaptizePlace] [#ps BaptizeSource] [DateOfDeath] [#dp PlaceOfDeath] [#ds DeathSource] [#buri | #crem [BurialDate]] [#rp BurialPlace] [#rs BurialSource]

- See the notes above about the need to provide the DoB or not.
- If you don’t know if the person is still living ("don’t know" item in the Death section), put a ‘?’ for the DoD.
- If you do know that the person is dead, but don’t know the date, use ‘0’ as the DoD.
- If the person died young, use the ‘mj’ tag as a DoD.
- #apubl and #apriv control the access : Public or Private. Default is nothing, which means "If Titles".

To specify the different types of death, use a prefix character before the DoD :

Type of Death | Special Character | Example
Killed | k | k10/5/1990
Murdered | m | m10/5/1990
Executed | e | e10/5/1990
Disappeared | s | s10/5/1990

Use #buri to specify a buried person, or #crem for a cremation. The corresponding date is optional.

### 7. Titles

Although titles appear as just another tag in the Person line, they are described separately in this section for better clarity. Titles are enclosed in brackets [] (Ooops, so much for using brackets as a formatting descriptor…). If there are several titles, they are just appended one after the other, repeating the brackets pairs.

> [

> TitleName:Title:TitlePlace:StartDate:EndDate:Nth]

- Each item is separated by a ‘:’ character. If no information is available, the item should be empty.
- The Main Title is marked by using a ‘*’ character as the Title Name.

### 8. Notes

Notes are stored separately in the file, between notes ... end notes tokens :

> notes

> LastName FirstName[.Number]
> beg
> Notes go here in a free format
> end notes

### 9. Relations

Relations are stored separately, just like notes. They reference people in a similar way as children in a family. In the following list, all tokens are listed alltogether, which in fact never happens of course.

> rel

> LastName FirstName[.Number]
> beg
> - adop: AdoptiveFather + AdoptiveMother
> - adop fath : AdoptiveFather
> - adop moth : AdoptiveMother
> - reco: RecognizingFather + RecognizingMother
> - reco fath : RecognizingFather
> - reco moth : RecognizingMother
> - cand: CandidateFather + CandidateMother
> - cand fath : CandidateFather
> - cand moth : CandidateMother
> - godp: GodFather + GodMother
> - godp fath : GodFather
> - godp moth : GodMother
> - fost: FosterFather + FosterMother
> - fost fath : FosterFather
> - fost moth : FosterMother
> end

Return to Directions for Use

Copyright (c) 1998-2005 INRIA - GeneWeb