Example filters

From Gramps
Revision as of 07:43, 7 June 2007 by Ggamauf (talk | contribs) (Simple implementation)
Jump to: navigation, search

A collection of examples of filters.

Introduction

For more info, see Filter. To test the filters, make sure you have the Filter sidebar visible (you can select this in the View menu), and select the custom filter you made, before clicking on Find.

Example: All female descendants of Joan Doe

Simple implementation

The following does exactly what is asked:

  • In the Edit view, go to Joan Doe, and note the GRAMPS ID.
  • In the View menu, select Person Filter Editor
  • Click on Add a New Filter. In the Define filter dialog, give the filter the name Female descendants of Joan Doe
  • Next to the rule list, click on Add another rule to the filter, which opens the Add Rule Dialog.
  • Go to Descendant filters, and select the rule Descendants of <person>. Give as value the GRAMPS ID, and select the box include original person
  • Click again on Add another rule, and now go to General filters, and select the rule females
  • In the options section of the Define filter dialog, make sure all rules must apply, is selected

A variation: also return unknown sex

You might want to add the people with unknown sex to the output. For this, you need to combine two filters:

  • Make a filter: female or unknown, consisting of one general filter: males, and in the options you select: return values that do not satisfy the filter rules
  • Make a second filter: female or unknown descendants of Joan Doe, with as rules Descendants of <person> where the value is the GRAMPS ID of Joand Doe, and as second rule the general filter People matching the <filter>, with as value for <filter> female or unknown
  • Again, in the Define filter dialog, all rules must apply must be checked

Slightly different: only female line

In this case, you only want to see the female line, so a female child of a male descendants of Joan Doe should not be present.

As far as I can tell, this is not possible in 2.2.6. You should do a feature request if you need this.


Example: All married males with family name containing rechter/richter

Three possibilities are given. Although one might be inclined to use one of the first two, the third filter, using the family object, is clearly the easiest, and most straightforward.

Use the Marriage event

  • With Person Filter Editor, create a custom filter with name MarriageFamEventMale. Add the rule 'People with Family <event>', event "Marriage". Next add the rule 'Males'
  • In the Filter dialog, make sure the option 'all rules must apply' is checked.
  • In the Filter sidebar, type in Name field: r[ei]chter, select Custom Filter: MarriageFamEventMale, and check the box 'User regular expressions'. Click Find.

Allow for relationship Married

We adopt the previous filter, by also looking at relationship Married, even if no event marriage is present.

  • With Person Filter Editor, create a custom filter with name MarriedRelMale. Add the rule People with the <relationships> to the filter, and select as value for relationship: Married. Next add the rule Males. Make sure the option all rules must apply is checked
  • With Person Filter Editor, create a custom filter, name MarriedMale. Add the rule People matching the <filter> twice, once with filter MarriageFamEventMale, once with filter MarriedRelMale.
  • Make sure that for this filter, the option at least one rule must apply is selected
  • In the Filter sidebar, type in Name field: r[ei]chter, set Gender: Male, Custom Filter: MarriedMale, and check the box Use regular expressions. Click Find.

Use a Family filter instead

Alternatively, one can find an answer to this query by looking in the Family list view at relationship Married, or event Marriage.

  • With Family Filter Editor, create custom filter, name MarriedFamily. Add the rule Families with the <event>, and set event to "Marriage". Next add the rule Family with relationship type, with value Married.
  • For the filter MarriedFamily select the option: at least one rule must apply
  • In the Family List view, go to the Filter Sidebar, and type for father name r[ei]chter, select as custom filter MarriedFamily, and select the Use regular expressions checkbox, and click find.
  • Set the columns of the family view to only view the father (in the edit menu, select column editor).
  • Optional: The name of the father can be added to the custom filter with the rule 'Families with father with the <name>', however, in that case the name of the custom filter is better changed to eg. MarriedRechterFamily, and in the rules with <name> no regular expressions can be used, making it not usefull to find variants like richter at the same time