Gramps 5.0 Wiki Manual - Tools

From Gramps
Revision as of 18:00, 10 April 2016 by Snoiraud (talk | contribs) (Find possible loop in the database)
Jump to: navigation, search
Gnome-important.png Special copyright notice: All edits to this page need to be under two different copyright licenses:

These licenses allow the Gramps project to maximally use this wiki manual as free content in future Gramps versions. If you do not agree with this dual license, then do not edit this page. You may only link to other pages within the wiki which fall only under the GFDL license via external links (using the syntax: []), not via internal links.
Also, only use the known Typographical conventions

Previous Index Next

This chapter describes the various tools available in Gramps.


Gramps tools allow you to perform various types of analysis of your genealogical data. Typically, the tools do not produce output in form of printouts or files. Instead, they produce screen output immediately available for the researcher. However, when appropriate, you can save the results of running a tool into a file. Tools present one of the major strengths of Gramps compared to the most genealogical software.

The tools can be accessed by choosing the menu Tools ->Tool Section ->Particular Tool . Alternatively, you can browse the complete selection of available tools along with their brief descriptions in a Tool Selection dialog invoked by clicking the Tools icon on the toolbar.

Additional Tools

Starting with Gramps version 3.2 a new system was implemented to have even more tools available. This system is controlled by the Plugin Manager. The Plugin Manager can get additional Addons for you.

Common Options

  • id: = ID

Gramps ID of a central person.

Analysis and Exploration

This section contains tools which analyze and explore the database, but do not alter it. The following analysis and exploration tools are currently available in Gramps:

Compare Individual Events...

This tool compares events across the selected group of people. The people for this comparison are chosen with the use of custom filters. The custom filters can be created in the Custom Filter Editor (see tools-util-cfe ) that can be invoked by clicking the Custom Filter Editor button. The resulting table produced by this tool can be saved as a spreadsheet.

Interactive Descendant Browser...

Fig. 12.1 Descendant Browser

First you have to select a person or you start with the current Active Person.

Select from the menu Tools->Analysis and Exploration->Interactive Descendant Browser....

This tool builds a tree with the Active Person being the root. Children branch from their parents in the usual manner.

You can click the down or > buttons to expand or collapse the nodes.

Use this tool for a quick glance of a person's descendants.


Double-clicking on tree node will bring up the Edit Person dialog allowing to view or modify the personal data.

The Help button will bring you to this page and with the Close you close the Descendant Browser window.

Family Tree Processing

This section contains tools which may modify your database. The tools from this section are used mostly for finding and correcting errors in the data. The following Family Tree Processing tools are currently available in Gramps:


The modifications will only be performed upon your explicit consent, except for the automatic fixes performed by Check and repair Database tool.

Edit Database Owner Information...

Fig. 12.2 Database Owner Information

Select the menu Tools->Family Tree Processing->Edit Database Owner information. This brings up the Database Owner Editor window, where you can fill in the needed info.

  • Name:
  • Street:
  • Locality:
  • City:
  • State/County:
  • Country:
  • ZIP/Postal Code:
  • Phone:
  • Email:

This information is family tree specific and will be used when exporting your data in GEDCOM format.

Extract Information from Names

This tool searches the entire database and attempts to extract titles and nicknames that may be embedded in a person's Given name field. If any information could be extracted, the candidates for fixing will be presented in the table. You may then decide which to repair as suggested and which not to.

Extract Place Data from a Place Title

Fig. 12.3 Extract Place Data

This tool attempts to extract city, state/province and zip code from a place title.

The tools operates on places where all fields in the main location are empty.

The description must match the following categories:

New York, NY 10000

Only available for :

  • USA
  • Canada
  • Sweden
Stockholm (A) 
  • France
Paris, IDF 75000, FRA or Paris, ILE DE FRANCE 75000, FRA

The dialog allows you to preview and confirm individual changes.

Extract Event Descriptions from Event Data

Extracts event descriptions from the event data by using a model :

{event type} of {Surname}, {Given name}

If event description is missing, then tool will use this event description field model.

Find Possible Duplicate People...

Fig. 12.4 Duplicate People

This tool searches the entire database, looking for the entries that may represent the same person.

You can access this tool via the menu Tool->Family Tree Processing->Find Possible Duplicate People....

Two options are available:

  • Match Threshold: choose between High, Medium and Low from the drop down menu.
  • Options: a check box to enable or disable the use of soundex codes for matching possible duplicate people.

Only three buttons are present: Help brings you to this page, a Cancel to stop processing and an OK button to start processing the data.

If you select the OK button, the data will be processes in two passes.

  • Pass 1: Building preliminary lists
  • Pass 2: Calculating potential matches.

A progress bar will be shown and depending the speed of your computer and the amount of people in the database this can take some time.

Finally a Potential Merges window is presented. This window shows a list with three columns:

  • Rating: this gives you an idea of the resemblance between the two people. The higher the ranking, the higher the chance that the people are duplicates.
  • First Person
  • Second Person

If you select a row you can check the details with the Compare button or you can double-click on the selected row.

Three buttons are present: Help brings you to this page, a Close to close the window and a Compare button to which brings up a Compare People window which was explain in detail in the Merge People Dialog. Here you can select with the radio buttons one of the persons and eventually use the Merge and close button to merge the data if you find the two persons are duplicates.

Selecting the Cancel button brings you back to the list.

Fix Capitalization of Family Names...

Fig. 12.5 Fix Capitalization

This tool searches the entire database and attempts to fix the capitalization of family names.

The aim is to have conventional capitalization: capital first letter and lower case for the rest of the family name. If deviations from this rule are detected, the candidates for fixing will be presented in the table.

You may then decide which to repair as suggested and which not to.

You can use this tool via menu Tools->Family Tree Processing->Fix Capitalization of Family Names....

Undo history

Proceeding with this tool will erase the undo history for this session. In particular, you will not be able to revert the changes made by this tool or any changes made prior to it. It is recomended that you please stop here and backup your database; so that you can revert the process of running this tool.

You can choose Stop or Proceed with the tool.

If there where changes to Capitalization of Names you will be presented with the Capitalization changes window. The window shows a list of the family names that Gramps can convert to correct capitalization. In the list you will see a three columns: Select check box(es), Original Name and Capitalization Change.

Select the names you want to be changed, then hit the Accept changes and close button. Or use the Cancel button to abort changes.

Fix Capitalization of Given Names...

This option is a Addon tool and works almost identically to the above Surname tool.

Merge citations...

Rename Event Types

Fig. 12.6 Change type

This tool allows all the events of a certain name to be renamed to a new name.

Undo history

Proceeding with this tool will erase the undo history for this session. In particular, you will not be able to revert the changes made by this tool or any changes made prior to it. If you think you may want to revert running this tool, please stop here and backup your database.

The Change Event Types window is presented. This tool will rename all events of one type to a different type.

  • Original event type: fill in the text field or use the drop down menu and select an original event type
  • New event type: fill in the text field (you can create a complete new type here) or use the drop down menu and select a new type

The example shows a renaming of the Birth event to a Baptism event.

Finally use the Cancel or the OK button.

Renaming events

Once completed, this cannot be undone by the regular Undo function.


This tool Reorder GRAMPS ID will change all the elements in the database to conform to the scheme specified in the database's prefix id's.

You can change those settings in the menu Edit->Preferences... and then select the ID Formats tab.

You can use this tool via menu Tools->Family Tree Processing->Reorder Gramps IDs.

Undo history

Proceeding with this tool will erase the undo history for this session. In particular, you will not be able to revert the changes made by this tool or any changes made prior to it. If you think you may want to revert running this tool, please stop here and backup your database.

The window will show a progress bar.

In different steps following IDs' are reordered: Reordering People IDs', Reordering Family IDs', Reordering Event IDs', Reordering Media Object IDs', Reordering Source IDs', Reordering Citation IDs', Reordering Place IDs', Reordering Repository IDs' and finally Reordering Note IDs'.

In a next step unused IDs' are searched for and assigned.

Custom IDs'

If you customized your IDs', all those setting are replaced by the default setting. So take care before you use this tool!

Sort Events

Fig. 12.7 Sort Events

Events appearing on the Event tab on a Person or Family Editor are not sorted in any particular order other than the order that the events were added. The reason for not enforcing any particular ordering, particularly ordering by date, is to allow for the situation where an event was known to have happened but the exact chronology is not. Importing or merging data from an external source can lead to extra events being added to, but out of sequence with, the existing set of events of a person or family.

Events can be manually re-ordered by drag & drop or by use of the re-order buttons on the Events tab. Either way, an event can be moved up or down in the list of events and Gramps will remember the new order when the changes are saved. The new ordering will be used wherever events are shown elsewhere in Gramps, such as on a report.

The order of all events on a tab can also be changed by clicking a column title. For example, clicking the 'Date' column header will sort all the events in date order. However this way of sorting events is temporary and changes to the event order are not preserved when the window is closed.

The drag and drop approach to sorting events is fine for moving a small number of events but is not practical for large scale changes. The Sort Events tool has been designed specifically for this purpose, re-sorting all events in the database or just those associated with a targeted selection of people chosen by using a filter.

The first option on the Sort Events dialog window is used to define the range of people who's events are to be sorted. The first choice in the list is to apply the sorting to all people in the database. Alternative choices are to apply sorting to ancestors and descendants of a chosen person or to a range of people selected by a custom built person filter. After choosing who the sort should apply to, the next thing to consider is how the events should be sorted. The first option is to sort by date. This is probably the most likely choice, but other event attributes can be chosen too. The final choices are whether to make the events sorted ascending or descending and whether to apply the sort to family events that the selected people belong to as well.

Undo history

Proceeding with this tool will erase the undo history for this session. In particular, you will not be able to revert the changes made by this tool or any changes made prior to it. If you think you may want to revert running this tool, please stop here and backup your database.

Sorting events

Once completed, this cannot be undone by the regular Undo function.

Database Repair

Check and repair database

This tool checks the database for integrity problems, fixing the problems it can. Specifically, the tool is checking for:

  • Broken family links. These are the cases when a person's record refers to a family while the family's record does not refer to that person, and vice versa.
  • Missing media objects. The missing media object is the object whose file is referenced in the database but does not exist. This can happen when the file is accidentally deleted, renamed, or moved to another location.
  • Empty families. These are the family entries which have no reference to any person as their member.
  • Parent relationship. This checks all families to ensure that father and mother are not mixed up. The check is also made that parents have different gender. If they have common gender then their relationship is renamed to "Partners".

Rebuild Reference Maps

This tool rebuilds reference map tables (References items on editors).

Rebuild Secondary Indices

This tool rebuilds secondary indices.

Remove Unused Objects...

This tool will search your database for pieces of information which are not connected to anything else, and then remove them.


This section contains tools allowing you to perform a simple operation on a portion of data. The results can be saved in your database, but they will not modify your existing data. The following utilities are currently available in Gramps:

Generate SoundEx codes

This utility generates Soundex codes for the names of people in the database. Please visit the NARA Soundex Indexing page to learn more about Soundex Indexing System.

Soundex what is this?

Soundex is the most widely known of all phonetic algorithms which allow indexing of words by their sound, as pronounced in English.

The Soundex is a coded surname (last name) index based on the way a surname sounds rather than the way it is spelled. Surnames that sound the same, but are spelled differently, like SMITH and SMYTH, have the same code and are filed together. The Soundex coding system was developed so that you can find a surname even though it may have been recorded under various spellings.

First applied to the 1880 census, Soundex is a phonetic index, not a strictly alphabetical one. Its key feature is that it codes surnames (last names) based on the way a name sounds rather than on how it is spelled. It was to help researchers find a surname quickly even though it may have received different spellings.

Those doing census lookups must use the same method to encode surnames as the census takers did when they generated the database.

To search for a particular surname, you must first work out its code.

  • Basic Soundex Coding Rule:

Every Soundex code consists of a letter and three numbers, such as W-252. The letter is always the first letter of the surname. The numbers are assigned to the remaining letters of the surname according to the Soundex guide shown below. Zeroes are added at the end if necessary to produce a four-character code. Additional letters are disregarded. Examples: Washington is coded W-252 (W, 2 for the S, 5 for the N, 2 for the G, remaining letters disregarded). Lee is coded L-000 (L, 000 added).

Number Represents the Letters
1 B, F, P, V
2 C, G, J, K, Q, S, X, Z
3 D, T
4 L
5 M, N
6 R

Disregard the letters A, E, I, O, U, H, W, and Y.

  • Additional Soundex Coding Rules:
    • Names With Double Letters: If the surname has any double letters, they should be treated as one letter. For example:
      • Gutierrez is coded G-362 (G, 3 for the T, 6 for the first R, second R ignored, 2 for the Z).
    • Names with Letters Side-by-Side that have the Same Soundex Code Number: If the surname has different letters side-by-side that have the same number in the Soundex coding guide, they should be treated as one letter. Examples:
      • Pfister is coded as P-236 (P, F ignored, 2 for the S, 3 for the T, 6 for the R).
      • Jackson is coded as J-250 (J, 2 for the C, K ignored, S ignored, 5 for the N, 0 added).
      • Tymczak is coded as T-522 (T, 5 for the M, 2 for the C, Z ignored, 2 for the K). Since the vowel "A" separates the Z and K, the K is coded.
    • Names with Prefixes: If a surname has a prefix, such as Van, Con, De, Di, La, or Le, code both with and without the prefix because the surname might be listed under either code. Note, however, that Mc and Mac are not considered prefixes.For example, VanDeusen might be coded two ways:V-532 (V, 5 for N, 3 for D, 2 for S) or D-250 (D, 2 for the S, 5 for the N, 0 added).
    • Consonant Separators: If a vowel (A, E, I, O, U) separates two consonants that have the same Soundex code, the consonant to the right of the vowel is coded. Example:Tymczak is coded as T-522 (T, 5 for the M, 2 for the C, Z ignored (see "Side-by-Side" rule above), 2 for the K). Since the vowel "A" separates the Z and K, the K is coded. If "H" or "W" separate two consonants that have the same Soundex code, the consonant to the right of the vowel is not coded. Example: Ashcraft is coded A-261 (A, 2 for the S, C ignored, 6 for the R, 1 for the F). It is not coded A-226.

Use of SoundEx module in GRAMPS

Fig. 12.8 SoundEx code generator

Select via the menu Tools->Utilities->Generate SoundEx Codes... the dialog for the SoundEx code generator window opens. In the Name text field you can type in a name or you could use the down arrow where you can choose a name from the drop down list.

The name you type in can be any name even a name not present in your Family Tree.

The result is shown automatically eg:The soundex code for James is J520

A Help button is available which brings you to this page. With the Close button (or using the keyboard shortcut Alt+C) you close the SoundEx code generator window.

Media Manager...

Fig. 12.9 Final confirmation window

This tool allows batch operations on media objects stored in Gramps. An important distinction must be made between a Gramps media object and its file.

The Gramps media object is a collection of data about the media object file: its filename and/or path, its description, its ID, notes, source references, etc. These data do not include the file itself.

The files containing image, sound, video, etc. exist separately on your hard drive. These files are not managed by Gramps and are not included in the Gramps database. The Gramps database only stores the path and file names.

This tool allows you to only modify the records within your Gramps database. If you want to move or rename the files then you need to do it on your own, outside of Gramps. Then you can adjust the paths using this tool so that the media objects store the correct file locations.

If you click the Forward button (or using the keyboard shortcut Alt+F) you will get a window with three radio buttons:

  • Replace substrings in the path: Selecting this radio button will bring up a Replace substring settings window where you can type in any string in the Replace text field and the With text field. At any time you can click on the Cancel button or the Back button. Clicking the Forward button will bring up the Final confirmation window.
  • Convert paths from relative to absolute
  • Convert paths from absolute to relative

Not Related

Fig. 12.10. Not related

This report will find people who are not related to the selected person.

You will get a Not related to '...' window which shows a list of all the people that are NOT related to the selected person.

This list gives you:

  • Name
  • ID
  • Parents
  • Marker

With the right arrow button and down arrow button you can collapse or expand the list. Double clicking on a person will bring up the detailed person edit window or family edit window.

If you select a person you can use the Marker text field: 3 choices are possible: blank (you can fill in whatever suits you), TODO, and NotRelated. With the Apply you can apply the selected marker to the person. This marker will then show up in the right hand side column.

Relationship calculator

Fig. 12.11 Relationship calculator

The Relationship Calculator when opened will list all people connected, but not necessarily related, to the person selected in the PEOPLE view. You simply select the individual you wish to relate and the relationship will be shown in the lower panel. Only blood relationships will display (except for husband-wife relationships). Currently "in-law" relationships cannot be displayed.

Basically, any two people are related if they have an ancestor in common. One of these individuals may actually be an ancestor of the other - such as a great grandparent. Even in the cases of aunts and uncles, you still can calculate the relationship by searching for the common ancestor. In this case, the father or mother of the aunt or uncle will be a grandparent to the nephew or niece.

Basically, siblings (brothers and sisters) are only one generation down from the common ancestor. Cousins (also called "first" cousins) are two generations down from the common ancestor. "Second" cousins are thus, three generations down from the common ancestor - and so on. But when the two people are in different generations, the relationship becomes an aunt or uncle, if that person is only one generation down from the common ancestor. The reverse of an aunt and uncle is a nephew and niece.

After that, everyone is considered a "cousin", but to indicate that they are not in the same generation we use the word "removed" to indicate the number of generations different between the two. For example, my father's "first" cousin is also my "first" cousin but "once removed" (one generation difference between us). My fathers "first" cousin is my own child's "first cousin twice removed" - two generations different.

A full text list of all blood relations and their spouses can be viewed using a Kinship Report.

Verify the Data...

Fig. 12.12 Verify the Data

This utility allows you to verify the database based on the set of criteria specified by you.

For example, you may want to make sure that nobody in your database had children at the age of 98. Based on common sense, such a record would indicate an error. However, it is not a consistency error in the database. Besides, someone might have a child at the age of 98 (although this rarely happens). The Verify tool will display everything that violates your criteria so that you can check whether the record is erroneous or not. The ultimate decision is yours.

Select this via the menu Tools->Utilities->Verify the Data... you will get a Data Verify Tool window. The window has four tabs; General, Women, Men, Families. Those tabs show a list with criteria and a input field where you can alter the criteria value. In the lists below I show some workable values.

  • General:
    • maximum age: 95
    • minimum age to marry: 16
    • maximum age to marry: 60
    • maximum spouses for a person: 4
    • maximum number of consecutive years of widowhood before next marriage: 30
    • maximum age for an unmarried person: 99

There is a check box: estimate missing dates. This causes the tool to accept a baptism date if a birth date is not known, and to accept a burial date if a death date is not known. In addition, starting in Gramps version 4.0.0, it also causes the tool to accept "inexact" dates (i.e., any "legal" Gramps date which is not a fully-specified one (with an explicit day and month and year)).

  • Women:
    • minimum age to bear a child 16
    • maximum age to bear a child 51
    • maximum number of children 15
  • Men
    • minimum age to father a child 18
    • maximum age to father a child 65
    • maximum number of children 15
  • Families
    • maximum husband-wife age difference 41
    • maximum number of years between children 11
    • maximum span of years for all children 32

If you are OK with the criteria click the Run button (or hit Alt+R and you will be presented with a Data Verification Results window.

Depending on your criteria and your data a list will be shown. Some possibilities of findings are listed below. But there are others.

  • Disconnected individuals (ones with no parent or spouse or child or sibling)
  • old/dead father
  • marriage after death/ before birth
  • large year span for all children
  • early/late marriage
  • young/unborn mother
  • husband and wife with the same surname
  • same sex marriage/ female husband
  • ...

To show how handy this Utility is, here two examples from real data:

The warning showed 'female husband': checking the data I found a family with father : Anna Roelants. Luckily in the Description I read: The marriage of Adam Roelants and Cornelia Crabbe. It was clearly a typo: Anna i.s.o. Adam. Without this Tool it would be very hard to find.
The warning showed 'late marriage': checking the data: male person °1738 female person °1756 : marriage X 1804 [Gregorian Calender] : Everything seemed to be OK: so they (re)married at the age of 66 and 48 years! The warning showed up because the General criteria was set to 60.

On the bottom of the window four check boxes are available to make a selection easier. Those are Mark All, Unmark All, Invert Marks, and Hide Marked.

Double-clicking on a row will give you a possibility to view and or edit the data.

With the Close button (or select the keyboard shortcut Alt+C) you close the Results window.

With the Help button (or select the keyboard shortcut Alt+H) you will get to this page.

Difference between Verify tool and previously described Check tool

The Check tool detects inconsistencies in the database structure. The Verify tool,however, is detecting the records that do not satisfy your particular criteria.

Find possible loop in the database

Work in progress

Work in progress. Need to create a case in the example.gramps to make the image.

Fig. 12.13 Find possible loop

This utility allows you to verify if you have loops in the database.

Select this via the menu Tools->Utilities->Find possible loop... you will get a Find possible loop window. The window has five tabs; Gramps_ID,Ancestor, Gramps_ID, Descendant, Family ID.

  1. First Gramps_ID is a reference to the ancestor.
  2. Ancestor is the person we are looking for a loop.
  3. Second Gramps_ID is a reference to the descendant.
  4. Descendant is the origin of the loop.
  5. Family_ID is a reference to the associated family

Fig. 12.14 Find possible loop in a complex example

In the following complex example, we have multiple loops :

If we look at the second line, we have :

  1. First Gramps_ID : I0002
  2. Ancestor is : Father, Child2
  3. Second Gramps_ID : I0001
  4. Descendant is : Father, Father
  5. Family_ID is : F0000

To understand what happens :

  1. we start at [I0002] Father, Child2.
  2. We continue with his son [I0003] Father, Child3.
  3. We continue with his son : [I0000] Child, Child.
  4. We continue with his son : [I0001] Father, Father.
  5. We continue with his son : [I0002] Father, Child2 ==> HERE, we have a loop.
Previous Index Next