Displaying relationships

Chart and text representations of relationships between any two individuals

Displaying relationships

Introduction

From kiwitrees 3.2.3 onward displaying relationships between individuals can done on an easy to follow chart (the Relationship chart) and by text descriptions on each individual’s page. On the individual’s Families tab there is a description of relationships that exist between married couples (other than the marriage), including parents and / or spouse(s) of the individual.

This is a big improvement in speed over the previous system. First developed in webtrees then extended by webtrees’ user “ric2015” , it has now been adapted and improved for use in kiwitrees. At it’s core is a version of “Dijkstra’s algorithm“, adapted for genealogy use.

One of the main improvements currently only available in kiwitrees is an extended use of the term “default individual”. In this FAQ use of that term means whichever is the most appropriate from these:

  1. If you are not logged in, then the default individual is the person set on  Administration > Family trees > your family tree > General tab as the default individual for that tree.
  2. If that is not set, then no relationship is displayed.
  3. If you are logged in the default individual becomes the first of these that exists :
    1. The Individual record linked to your user ID (Administration > Users > Manage users > your user details). In most cases this would be you.
    2. The Default individual linked to your user ID (Administration > Users > Manage users > your user details). This might be one of your earlier ancestors.
    3. The Default individual for the family tree – the same as in 1. above. This option is also used as the relationship displayed when viewing your own record, or the record referred to in 3.1 above if it is not actually you.
    4. If none of those exist, then no relationship is displayed.

A second, currently unique to kiwitrees, improvement is the inclusion of the text “Relationship:” with each text relationship on the individual pages. This text provides a direct link to the Relationship chart displaying in graphical form the relationship described in the text.

displaying relationships 3

Relationship chart
click to enlarge

displaying relationships 1

Individual page
logged in

click to enlarge

displaying relationships 2

Individual page
not logged in

click to enlarge

Installation

As this is part of the core kiwitrees code it is automatically installed and enabled on any new kiwitrees installation.
If you are upgrading from a previous version of kiwitrees it will be installed automatically, but may require some additional set up.

In either case it is useful to check that everything is configured correctly by following these steps:

  1. Go to Administration > Modules > Manage modules and confirm that the chart module “Relations” is enabled.
  2. Either click the “tool” icon beside the module name in 1. or go to Administration > Tools > Relations to check or change the configuration options. If upgrading kiwitrees to 3.2.3 you may find these are all blank. In that case set them to the defaults shown in the image below (or the under “Configuration” below) by clicking “reset” at the bottom of the page. You can use this button anytime to reset all options to the default ones.
displaying relationships 4

Default Configuration settings
click to enlarge

Configuration options

The configuration page is located at Administration > Tools > Relations.

It can also be reached by clicking the “cog” icon by the Relationship chart title.display relationships 7

It has two main sections:

  1. Settings related to the relationship chart
  2. Settings related to the text displays on the individual pages

The second is further sub-divided into three parts:

2a. Relationships between the individual being viewed and the default individual

2b. Relationships between the individual’s parents, other than marriage

2c. Relationships between the individual and their spouse(s), other than marriage

1. Settings related to the relationship chart
There are seven possible versions of the relationship algorithm that can be applied to any pair of individuals on the relationship chart.

The options listed are simple yes/no choices. Setting “yes” for any of them includes that option on the relationship chart as a user option to find any more complex relationships that might exist. So this configuration simply lets you choose how many options to give your visitors.

The list is in order of increasing complexity. The more complex the algorithm, the more relationships you might find. But at the same time, more complexity equals more resources needed to compute the result. It is possible that extreme cases will not compute within the capacity of your web server, so use these options cautiously.

Here is a list of the seven choices, with their default options:

Option Default Description
Find a closest relationship via common ancestors Yes Determines the shortest path between two individuals via a LCA (lowest common ancestor), i.e. a common ancestor who only appears on the path once.
Find all smallest lowest common ancestors, show a closest connection for each No Each SLCA (smallest lowest common ancestor) essentially represents a part of the tree which both individuals share (as part of their ancestors). More technically, the SLCA set of two individuals is a subset of the LCA set (excluding all LCAs that are themselves ancestors of other LCAs).
Find all relationships via lowest common ancestors Yes All paths between the two individuals that contribute to the CoR (Coefficient of Relationship), as defined here: Coefficient of Relationship
Find the closest overall connections (preferably via common ancestors) Yes Prefers partial paths via common ancestors, even if there is no direct common ancestor.
Find a closest relationship via common ancestors, or fallback to the closest overall connection No For close relationships similar to the previous option, but faster.
Find the closest overall connections Yes
Find other/all overall connections No
By default there are four “yes” settings, which means four choices will be available to users viewing the Relationship chart.

The final option on this page is How much recursion to use when searching for relationships?

It can be set to none, 1, 2, 3, or unlimited. As described on the page this limits the number of times the algorithm is repeated to find the maximum number of relationships.
The choice here is between finding every possible relationship and being able to do it within a reasonable time (if at all).
The default is unlimited, which is suitable for most servers and small to medium family trees with only a few highly complex relationships.

2. Settings related to the text displays on the individual pages
This covers the relationship to the default individual displayed in the header area above all the tabs; and the two possible family relationships displayed on the Families tab.

In each section the first choice is Do not show any relationship. This simply allows you turn of each of these options completely of you do not want to use them, or find they make loading your page time too slow. Setting this option prevents any of the other choices from being selected.

In each case, if you choose to display the relationship it will only appear if one is found. In the second two cases (2b and 2c) there will be usually be no relationship (other than the couple’s marriage) so nothing will be displayed.

Also, these two displays are only available to logged in members of your site. This avoids the risk that random visitors and / ot robot’s etc. might trigger a calculation that exceeds your server’s capacity.

2a. Relationships between the individual being viewed and the default individual

The result of this section is displayed in the individuals header area, just below their various names and highlighted image.

There are seven choices here. They are the same seven as described in 1. above. However, in this case you can choose only one of them. The decision is the same as above – a choice between finding every possible relationship and being able to do it within a reasonable time (if at all).

The default for this section is to leave Do not show any relationship unchecked; and check the option: Find a closest relationship via common ancestors. This is the fastest algorithm, as it excludes relationships through marriage.

2b. Relationships between the individual’s parents, other than marriage

The result of this section is displayed on the Families tab, with the sub-title Family with parents.

The number of choices is similar to 2a. above, but limited to only the three that require a common ancestor. This excludes the obvious relationship of their marriage. A typical result would be a relationship such as marriage between cousins who share common grandparents.

The last option in this section: Show common ancestors allows you to exclude details showing who the common ancestor is. The choice will depend on page loading speed. or your preference to simplify the display. If common ancestors are included the result will look like this:

Relationship: Lucy May Waghorn is first cousin of Cecil Waghorn
(Common ancestor: James Waghorn & Maria Sands)

2c. Relationships between the individual and their spouse(s), other than marriage

The result of this final section is displayed on the Families tab, with the sub-title Family with xxxxxxx.
It only looks at the individual being viewed and their spouse(s).
All options and default settings are the same as 2b. above.

Other questions

Why is there no option to “Check relationships by marriage?”

This is no longer relevant as a specific option. Any of the seven available options that does not specifically require a common ancestor will always include relationships through marriage.

How are multiple relationships displayed?

If more than one relationship is found, they are all displayed on the same page following one below the other. An open/close icon is also displayed to allow you to temporarily hide any one relationship.

display relationships 6

Multiple relationships
click to enlarge



Have your say!

Have your say!