Formatting Genealogy Reports: An Introduction

Ancestral Author Plus (AA Plus) gives you extensive control over how information is arranged in your genealogy documents. This article you will give you a working knowledge of how to change the ordering of almost any text in a PDF or ODT document created by AA Plus. Keep in mind that this is a very high level view of genealogy report formatting. For a more comprehensive discussion, select menu item Format -> Help, and read the subtopics, especially Tutorial Introduction to the Format of Output Document Format (ODF) Files.

To introduce the topic of genealogy report formatting, this article will discuss a change that was made in AA Plus release 3.1.10. This change caused the ordering of spousal notes in descendant reports to be different than it was in previous releases. This article will explain why it was changed, and how to change it back if you prefer the old formatting.

Categories of Text in a Genealogy Report

Fundamentally, a genealogy report is just a bunch of text in a document. The text can be broken down into certain categories, which consist of things like:

  • the names of individuals in the report,
  • vital events for people, e.g. birth, baptism, and death dates,
  • notes for individuals,
  • a list of spouses or partners for an individual,
  • a list of children for couples,
  • and so on.

By default AA Plus will put this text in a certain order in the genealogy report. Output Document Format files allow you to change the order.

Why the Output Ordering was Changed in 3.1.10

The treatment of Blended Families was overhauled in release 3.1.10. During this overhaul, the capability to include spousal marriages was added. In addition, all children of spouses can now be included in the output report.

To illustrate this, consider the case of John Doe. He married Mary Smith, with whom he had a few children before he died. Mary Smith had been married twice before she married John Doe. When John Doe died, she married again.

A descendant report for John Doe might look like this:

Descendant Report for John Doe (fictional)
 
1. John Doe was born on 6 Mar 1872, in Charlton, Worcester County, Massachusetts, died in 1908, in Charlton. He married as her third husband Mary Smith on 17 May 1904, in Charlton. Mary Smith was born on 3 Mar 1875, in Heath, Franklin County, Massachusetts, died on 18 Nov 1960, in Charlton, Worcester County, Massachusetts. Mary Smith married first Jacob Jones on 5 May 1893, in Heath. Jacob Jones was born on 3 Jul 1873, in Heath, died on 8 Aug 1897, in Heath. She married second Joshua Travis on 1 Jan 1898, in Heath. Joshua Travis was born on 7 Mar 1874, in Heath, died on 13 Dec 1903, in Heath. She married fourth Jeremy Travis on 17 Apr 1909, in Heath. Jeremy Travis was born on 8 Mar 1876, in Heath, died on 12 Sep 1948, in Heath.

Notes for John Doe.

Notes for Jacob Jones.

Children of Mary Smith and Jacob Jones:

i.  Jacob Jones was born on 2 Apr 1894.

ii. Michael Jones was born on 7 Aug 1896.

Notes for Joshua Travis.

Children of Mary Smith and Joshua Travis:

i.  Samuel Travis was born on 3 Feb 1899.

ii. Sarah Travis was born on 8 Sep 1902.

Notes for Mary Smith.

Children of John Doe and Mary Smith:

i. Lydia Doe was born on 3 Dec 1905.

ii. Hannah Doe was born on 8 Nov 1907.

Notes for Jeremy Travis.

Children of Mary Smith and Jeremy Travis:

i.  Sylvia Travis was born on 23 Jul 1910.


The red text is the list of spouses for John Doe – in this case, only one – Mary Smith. The blue text identifies all the other spouses for Mary Smith. This text is emitted by Ancestral Author Plus when the ‘Include Other Marriages for Spouses‘ box under Blended Families is checked (found in the Descendant Report dialog, press the ‘Options’ button, then select the ‘Output’ tab):

Blended Families Options

The green text consists of notes for each individual. In this example the notes are short. But if they were long, the children of one couple could be separated by multiple pages from the children of the next couple. This makes it difficult to scan for the children and stepchildren of John Doe. Many would prefer the children to be all together, and not separated by many paragraphs of notes.

To avoid separating children by long paragraphs of notes, the Output Document Format file for descendant reports was changed in release 3.1.10, so that all notes appear before any of the children, rather than between the lists of children. The result is that the descendant report shown above will now look like this:

Descendant Report with Notes Before the Children

1. John Doe was born on 6 Mar 1872, in Charlton, Worcester County, Massachusetts, died in 1908, in Charlton. He married as her third husband Mary Smith on 17 May 1904, in Charlton. Mary Smith was born on 3 Mar 1875, in Heath, Franklin County, Massachusetts, died on 18 Nov 1960, in Charlton, Worcester County, Massachusetts. Mary Smith married first Jacob Jones on 5 May 1893, in Heath. Jacob Jones was born on 3 Jul 1873, in Heath, died on 8 Aug 1897, in Heath. She married second Joshua Travis on 1 Jan 1898, in Heath. Joshua Travis was born on 7 Mar 1874, in Heath, died on 13 Dec 1903, in Heath. She married fourth Jeremy Travis on 17 Apr 1909, in Heath. Jeremy Travis was born on 8 Mar 1876, in Heath, died on 12 Sep 1948, in Heath.

Notes for John Doe.

Notes for Jacob Jones.

Notes for Joshua Travis.

Notes for Mary Smith.

Notes for Jeremy Travis.

Children of Mary Smith and Jacob Jones:

i.  Jacob Jones was born on 2 Apr 1894.

ii. Michael Jones was born on 7 Aug 1896.

Children of Mary Smith and Joshua Travis:

i.  Samuel Travis was born on 3 Feb 1899.

ii. Sarah Travis was born on 8 Sep 1902.

Children of John Doe and Mary Smith:

i. Lydia Doe was born on 3 Dec 1905.

ii. Hannah Doe was born on 8 Nov 1907.

Children of Mary Smith and Jeremy Travis:

i.  Sylvia Travis was born on 23 Jul 1910.


If you would prefer to restore the descendant report to the format it had prior to release 3.1.10, you can modify the Output Document Format file for descendant reports. The next section shows how to do this.

Modifying the Output Document Format (ODF) File

To change the ordering of text in a descendant report, select the Format -> Modify Descendant ODF menu item as shown below:

 

 

This will display a file that shows where each category of text appears in the output report:

indi_desc_name                  -- Name
indi_desc_list                  -- Descent List
indi_desc_vitals_predicate      -- Vital information (birth, death, etc)
indi_desc_alt_names_predicate   -- Alternate names (also went by John Doe, John Dow)
indi_desc_marriages_predicate   -- Marriage, spouse info
indi_desc_notes                 -- Notes
indi_desc_events                -- Events

-- Notes for the spouses are emitted before any children

foreach family                  -- Info after this repeated for each family
   spouse_desc_notes            -- Notes for spouse
   spouse_desc_events           -- Events for spouse-- Emit the children

foreach family                  -- Info after this repeated for each family
   fam_desc_notes               -- Notes for the family
   fam_desc_events              -- Events for the family
   fam_desc_children_header     -- "Children of John Doe and Jane Smith"
   offspring table              -- Tabular list of children
      short                     -- This info for children that appear elsewhere
        child_desc_name
        child_desc_short_vitals_predicate
      long                      -- This info for children that don't appear elsewhere
        child_desc_name
        child_desc_long_vitals_predicate
        child_desc_alt_names_predicate
        child_desc_marriages_predicate
        child_desc_notes
        child_desc_events

This may look formidable, but it is really quite straightforward. It shows the order in which text will appear in the output document. The following paragraphs will show how this correlates directly to the second sample descendant report text shown above.

The first item, indi_desc_name, is the name of the individual in the descendant report, in this case, John Doe. As you can see, the name “John Doe” is the first text (after the register number) in the descendant report. The item name (e.g. indi_desc_name) is meant to be descriptive, usually consisting of three parts. For example in this case the three parts are:

  • indi – referring to the person with the numbered entry in the report, in this case John Doe
  • desc – the type of report (descendant, ancestor, or every person), in this case descendant
  • name – the text for the person referenced in the first part, indi, in this case John Doe

The second item after that is the indi_desc_vitals_predicate. This item corresponds to the vital dates for the individual (John Doe) in the descendant report – and it comes after the name. For this discussion we’re going to ignore the ‘_predicate’ suffix on this item, because it is an unimportant detail. Read the help text for more information on predicates.

Appearing later is the indi_desc_marriages_predicate. This corresponds to the red text above which shows all the marriages for John Doe, and comes after the vital dates for John Doe. If the ‘Include Other Marriages for Spouses’ is checked under Blended Families, then the other marriages for Mary Smith are also included, shown in the blue text above.

Finally, let’s look at the spouse_desc_notes item. This corresponds to the notes for the spouse of John Doe (i.e., Mary Smith), shown in green above. When the Blended Families options are not checked, John Doe has only one family in the descendant report, namely the family he had with Mary Smith.

But if the Blended Families options are checked (as they are in this example), more families will be added to the report – specifically an additional family for each spouse of Mary Smith.

This is why the spouse_desc_notes item appears under the foreach family item. Notes are printed for each blended family spouse.

-- Notes for the spouses are emitted before any children

foreach family                  -- Info after this repeated for each family
   spouse_desc_notes            -- Notes for spouse
   spouse_desc_events           -- Events for spouse

This means “for each family of John Doe, output the notes for the spouse in that family, followed by the events for the spouse.” The resulting text corresponds to the green text in the example above. Since there are no GEDCOM events for the spouses (census, residences, etc), we can ignore the spouse_desc_events item.

Note also, that there is another foreach family loop later in the Output Document Format file, reproduced below:

-- Emit the children

foreach family                  -- Info after this repeated for each family
   fam_desc_notes               -- Notes for the family
   fam_desc_events              -- Events for the family
   fam_desc_children_header     -- "Children of John Doe and Jane Smith"
   offspring table              -- Tabular list of children
      short                     -- This info for children that appear elsewhere
        child_desc_name
        child_desc_short_vitals_predicate
      long                      -- This info for children that don't appear elsewhere
        child_desc_name
        child_desc_long_vitals_predicate
        child_desc_alt_names_predicate
        child_desc_marriages_predicate
        child_desc_notes
        child_desc_events

This foreach family has items underneath it corresponding to the notes, events, and children for each family of John Doe. We can ignore all the red items, because the GEDCOM we are using for this example has no notes or events associated with the families, none of the children have alternate names, notes, or events, and none are married. So let’s focus on the remaining items.

-- Emit the children

foreach family                  -- Info after this repeated for each family
   fam_desc_children_header     -- "Children of John Doe and Jane Smith"
   offspring table              -- Tabular list of children
      short                     -- This info for children that appear elsewhere
        child_desc_name
        child_desc_short_vitals_predicate
      long                      -- This info for children that don't appear elsewhere
        child_desc_name
        child_desc_long_vitals_predicate

The function of these items translated to English is:

for each family and step family of John Doe, print out a heading of the form “Children of <spouse 1> and <spouse 2>:”, then print out a list (sometimes called an offspring table) of the children for that couple.

This corresponds exactly to what is shown in the second descendant report shown above.

The information for each child comes in two forms: a short format, and a long format. The short form is for children who appear elsewhere in the descendant report. For example, if Lydia Doe, the first child of John Doe and Mary Smith, had children, then she would have her own numbered entry in the descendant report, and the information about her marriage(s) and children would appear there. Consequently, there is no need to duplicate all this information in her offspring table entry. For more details about the difference between short and long forms, see the Tutorial Introduction to the Format of ODF Files in the help.

Changing the Descendant Output Document Format (ODF) File Back to the AA Plus 3.1.9 Format

Armed with this knowledge, how would we change the ODF file shown above to include the notes for spouses just before the list of children for that spouse? In other words, how do we get the output shown in the first descendant report above?

The answer is this: move the items highlited in red under the first foreach family loop to the top of the second foreach family loop, then delete the first foreach family loop, as shown below:

foreach family                  -- Info after this repeated for each family (deleted)
   spouse_desc_notes            -- Notes for spouse (moved)
   spouse_desc_events           -- Events for spouse (moved)

-- Emit the children

foreach family                  -- Info after this repeated for each family
   spouse_desc_notes            -- Notes for spouse
   spouse_desc_events           -- Events for spouse
   fam_desc_notes               -- Notes for the family
   fam_desc_events              -- Events for the family
   fam_desc_children_header     -- "Children of John Doe and Jane Smith"
   offspring table              -- Tabular list of children
      short                     -- This info for children that appear elsewhere
        child_desc_name
        child_desc_short_vitals_predicate
      long                      -- This info for children that don't appear elsewhere
        child_desc_name
        child_desc_long_vitals_predicate
        child_desc_alt_names_predicate
        child_desc_marriages_predicate
        child_desc_notes
        child_desc_events

This will cause the spousal notes to be printed just before the list of children for each spouse. Each list of children will be preceded by spousal notes, as shown in the first descendant report above.

Further Reading

Output Document Format files give AA Plus users nearly unlimited control over the formatting of Descendant, Ancestor, and Every Person reports. To learn more about ODF files, select menu item Format -> Help.