Exemples de filtre

From Gramps
Revision as of 19:25, 6 April 2021 by Arverne73 (talk | contribs) (Mise à jour partielle filtres personnalisés)
Jump to: navigation, search

Une collection d'exemples de filtre.

Contents

Introduction

Pour plus d'information, voir Filtrer et le manuel sur les filtres. Quand vous créer des filtres personnalisés, vérifiez toujours que vous avez le Gramplet Filtre visible dans la barre latérale. Ceci permet de tester le filtre sur les données réelles avant de l'installer pour une utilisation plus générale. Tester chaque filtre individuellement… Ne mettez pas au point un filtre de 2nd niveau tant que le 1er niveau n'a pas été testé. Pour tester : dans l'onglet Filtre de la barre latérale, sélectionner le filtre personnalisé que vous avez élaboré, puis cliquez sur le bouton Trouver.

Pour accéder aux filtres :

  • Cliquez dans le menu Édition sur le dernier item
Éditeur de filtre sur ____ <nom de la catégorie> (la fenêtre des filtres n'affiche que ceux correspondant à la catégorie en cours dans la vue).
  • Le dialogue Filtre de ____ <nom de la catégorie> s'affiche. Cette fenêtre affiche différents boutons à la partie droite de la liste des filtres :
    • STOCK_ADD Ajouter un nouveau filtre
affiche le dialogue Définir le filtre.
    • STOCK_EDIT Éditer le filtre sélectionné
ouvre le dialogue Définir un filtre et charge votre filtre personnalisé existant pour le modifier.
    • Clone Dupliquer le filtre sélectionné
fait une copie exacte du filtre sélectionné
    • Test Tester le filtre sélectionné
ouvre la fenêtre de résultats Test du filtre contenant la liste des correspondances qui satisfont au test. Si le test du filtre est invalide, une erreur s'affiche.
    • STOCK_REMOVE Supprimer le filtre sélectionné
supprime le filtre sélectionné de l'ensemble des filtres personnalisés.

Créez un filtre personnalisé avec les étapes suivantes :

  • Cliquez sur STOCK_ADD Ajouter un nouveau filtre pour afficher le dialogue Définir le filtre
  • Donner au filtre un nom unique
  • Cliquez le bouton STOCK_ADD Ajouter une règle au filtre de la fenêtre Définir un filtre pour voir les règles (disponibles selon la catégorie en cours).
  • Sélectionner une règle appropriée.
  • Ajouter d'autres règles si nécessaire.
  • Sélectionner les Options appropriées dans la liste déroulante de la fenêtre Définir le filtre pour définir comment les règles interagissent. L'option Toutes les règles doivent correspondre est sélectionnée par défaut. Ceci n'est utile que s'il y a plusieurs règles.
  • Cliquer sur Valider de la fenêtre Définir un filtre
  • Cliquer sur Fermer de la fenêtre Filtres de ___ Noter que le nouveau filtre personnalisé (ou les modifications) ne prennent effet qu'après avoir fermé la fenêtre de liste des filtres.


Il y a des règles pour vous utiliser les filtres définis pour d'autres vues. Par ce moyen, vous pouvez concevoir un filtrage complexe intéressant plusieurs vues.

Gnome-important.png
Les filtres personnalisés sont consommateur de ressources !

De très grandes bases de données peuvent rencontrer des limitations quant aux ressources à l'utilisation de filtres complexes


La plupart des exemples suivants apparaissent dans la liste de diffusion des utilisateurs Gramps en réponse à des messages d'utilisateurs et correspondent aux versions 3.4.x à 4.1x



Construction of custom filter examples

      Please note these conventions for the construction of Filters:
                             <Viewname> Filter Editor.................Editor for this particular View

Filter <filtername>:...........................................................................................................Name of new filter

  <rule name> ........................................................Filter rule selected
  OR
  <rule group name> => 
       <selected rule name> ..........................................Filter rule selected from a drop-down group of rules

Option selected ................................................................................................................. All/At least one rule must be obeyed

Use regular expressions ................................................................................................. Blank if not required

<Run Filter <filtername> in <Viewname> View> .....................................................Where to run the new filter






1-stage FILTERS

Example 1. All sources that have no repository

                                          Source Filter Editor

Filter A:

General filters=> 
   Sources with <count> Repository references; Number of instances:="1"; Number must be:="lesser than"
OR
   Sources with a reference count of <count>; Reference count must be:= "lesser than"; Reference count:="1"

All rules must apply

<Run Filter A> in Source View




Example 2. All individuals with no name

Comment: In Person View, click on the Name column to get the names in alphabetical order. All blank surnames will be at the top of the list

                 The following filter will display only the blank given names and/or surnames
                                         Person Filter Editor

Filter A:

   General filters=>
         People with the <name>; Given Name:=^$; Full Family Name:=^$

Use regular expressions

All rules must apply

<Run Filter A> in Person View




Example 3. All female descendants of Joan Doe

                                          Person Filter Editor

Filter A:

Descendant filters=>
      Descendants of <person>: <here find the ID of Joan Doe> ; Include original person
General filters=>
      Females

All rules must apply

<Run Filter A> in Person View






2-stage FILTERS

Example 1. All people with only one parent recorded

                                          Person Filter Editor

Filter A:

   General filters=> 
         Persons with the <name>; Given name:="(^$|[uU]known)"; Full Family Name:="(^$|[uU]known)"

**Use regular expressions**

All rules must apply


Filter B:

   Family filters=>
         Children of <filter> match; Filter name:="B"

All rules must apply


THEN <Run Filter B> in Person View

Comment: If both parents are unknown you probably won't have any gramps ID assigned for them




Example 2. Individuals with siblings named “John”

                                          Person Filter Editor

Filter A:

   General filters=> 
         People with the <name>: Given Name:="John"

All rules must apply

Filter B:

   Family filter=> 
         Siblings of <filter> match: Filter name:="A”

All rules must apply


THEN <Run Filter B> in Person View




Example 3.“Timeline” of all people associated with a particular place

                                          Place Filter Editor

Filter A:

   General filters=>  
         Places matching the parameters ;Name : <here insert name of place>

All rules must apply

                                          Event Filter Editor

Filter B:

   General filters=>  
         Events matching the place filter: Place filter name:=”A”

All rules must apply


THEN <Run Filter B> in Events view

Configure the View to show columns for Type, Description, Date, Place. Order the items by Date to get a timeline.


OR Alternative 2:
                                           Event Filter Editor

Filter A:

   General filters=>  
         Events with data : Place:= <here insert placename>

Comment: if the Event type default is "Birth"., just delete it

All rules must apply


THEN <run Filter A> in Events View


For an ordered list of the people add the following filter:

                                           Person Filter Editor

Filter B:

   General filters=>   
         Persons with events matching the events filter: Events filter name:= "A".

All rules must apply


THEN <run Filter B> in Person View





Example 4. All marriage events on the ancestral tree dated after 1837 for a named individual

                                          Person Filter Editor

Filter A:

   Event filters=>
         People with the personal <event>; Personal event:= Marriage; Date:= after 1837
   Event filters=>
         People with the family <event>; Family event:= Marriage; Date:= after 1837 

**At least one rule applies**

Filter B:

   General filters=>   
         People with the name; <here insert name of individual>
   General filters=>
         People matching the <filter>; Filter name:=”A”.

All rules must apply


THEN <run Filter B> in Person View





Example 5. All persons called "serge" having some connection with London

                                          Event Filter Editor

Filter A:

   General filters=>
         Events with : Place:="London"

All rules must apply

                                          Person Filter Editor

Filter B:

   General filters=>
         Persons with events matching the <event filter>: Event filter name:= "A"
   People with the <name>: Given name:="serge"

All rules must apply


THEN <run Filter B> in Person View


Comment1: There is no way of going between people and places except by way of events they were involved in at those places

Comment2: What looks like a minor bug appears when Person filtering on names: a few extraneous individuals appear. They are spouses, included because their married name (or occasionally spouse) is recorded in the database as their Alternative Name





Example 6. Obtain a ‘focused’ descendant chart containing only a subset of the people

Select the subset by tagging manually in your direct ancestral line up from your living relative. Call the tag, say, LINE 1.

                                          Person Filter Editor

Filter A:

   General filters=>
         People with the <tag>; Tag:="LINE 1"

All rules must apply

Filter B:

   Family filters=>
         Children of <filter> match: Filter name:="A"
   Family filters=>
         Spouses of <filter> match: Filter name:="A"
   Family filters=>
         Siblings of <filter> match: Filter name:="A"

**At least one rule must apply**


THEN <run Filter B> in Person View to display the “focussed” tree

OR:

  Reports=> Graphs=> Relationship Graph=> Report Options=> Filter "B" to obtain a chart. Save as SVG for further manipulation

OR:

 Family Trees=> Export=> Forward=> select Gramps XML package=> Forward=> Person Filter. 
 Click the drop-down list and select filter B to save the filter results as another family tree. 
 Name and export that gpkg; then you can create a new family tree and import the gpkg back into it.





Example 7. All people related to me but not my wife

                                          Person Filter Editor

Filter A:

   Ancestral filters=>
         Ancestors of <person> ID:= <here find YOUR ID>; Inclusive:=0  i.e.note: don't include yourself

All rules must apply


Filter B:

   Descendant filters=>
         Descendant family members of <filter> match; Filter name:="Filter A"

All rules must apply


THEN <Run Filter B> in Person View

Comment: note the difference between the UP filter ("Ancestors") which is restrictive and the DOWN filter ("Descendant family members of filter) which is inclusive. The former keeps the line of relationship away from the wife; the latter brings in your own in-laws ("Matches people that are descendants or the spouse of anybody matched by the filter")

Comment 2: the filter falls down on people who are not strictly connected to you by marriage but only indirectly i.e. people who were married at some time to one of your in-laws, i.e.."in-laws of in-laws".

If you want to incorporate those links as well, add a further filter as follows:

Filter C:

   Descendant filters=>
       Descendant family members of <filter> match; Filter name:="Filter B"

**At least one rule must apply**


THEN <Run Filter C> in Person View

Comment 3: you can widen the reach of the links further by adding more filters in the same form as filter C - until your patience runs out




Example 8. All married males with family name containing rechter/richter

                                          Person Filter Editor

Filter A:

   Event filters=>
         People with the family <event>: Family event=> Family:= Marriage
   General filters=>
         Males

All rules must apply

<Run Filter A> in Person View to check

THEN in the Filter sidebar, enter r[ei]chter in the Name field, for the Custom filter select Filter A, check Use regular expressions. Click Find.




Example 9. All descendants of Joan Doe of female or unknown sex

                                          Person Filter Editor

Filter A:

   General filters=>
         Males


All rules must apply

**Return values that do *not* match the filter rules**


Filter B:

   Descendant filters=>
         Descendants of person:=<here find the ID of Joan Doe>; Include original person

All rules must apply

THEN <Run Filter B> in Person View






3-stage FILTERS

Example 1. All marriages where the event is a "Personal" event but not part of a Family

                                          Person Filter Editor

Filter A:

Event filters=> 
       People with the family <event>;  Family Event:="Marriage"

All rules must apply

**Return values that do *not* match the filter rules**


Filter B:

Event filters=> 
       People with the personal <event>; Personal Event:="Marriage"; Primary role:="1"

All rules must apply


Filter C:

 General filters=>
       People matching the <filter>; Filter name:= "A"
 General filters=>
       People matching the <filter>; Filter name:= "B"

All rules must apply


<Run Filter C> in Person View




Example 2. People with events with place, to show an ancestor's descendants with no known birthplace

                                          Place Filter Editor

Filter A:

Position filters=> 
       Places with no latitude or longitude given

All rules must apply


                                          Event Filter Editor

Filter B:

 General filters=>
        Events with the particular type:  Event type:="Birth"
 General filters=>
        Events of Places matching the <place filter>: Place filter name:=”A” 

All rules must apply


                                          Person Filter Editor

Filter C:

 Descendant filters=>
        Descendant family members of <person>:= <here select the particular ancestor ID> 
 General filters=> 
       Persons with events matching the <event filter>: Event Filter name:=”B”

All rules must apply


<run Filter C> in Person View





Example 3. All direct ancestors (and their siblings) of some person in set periods, e.g. 50 yrs

Comment: For example, to show when the migration from country to town took place

                                          Person Filter Editor

Filter A:

   Descendant filters=> 
           Descendant family members of <person>; select the person's ID; Include the original person

All rules must apply


                                          Event Filter Editor

Filter B:

  General filter => 
        Events of persons matching the <person filter>: Person filter name:= "A"
  General filter=>
        Events with : Event type:= "Birth"; Date:="between 1650 and 1750" (say)
All rules must apply


                                          Place Filter Editor

Filter C:

  General filters=>
        Places of events matching the <event filter>: Event filter name:=  "B"

All rules must apply


<run Filter C> in Place View




Example 4. End of the line ancestors from a particular person X (Jones)

Deal with the father's and mother's side separately.

[father's side]

                                          Person Filter Editor

Filter A:

   Family filters=>
         People missing parents

All rules must apply


Filter B:

   Ancestral filters=>
         Ancestors of <person>: ID := <here find ID of person X>
   General filters=> 
         Males
   General filters=>
         People with the <name>:Full Family Name:="Jones"

All rules must apply


Filter C:

   General filters=>  
         People matching the filter; Filter name:="A"
   General filters=>
         People matching the filter; Filter name:="B"

All rules must apply


<Run Filter C> in Person View.

[mother's side]

repeat A, B, C but in Filter B substitute the ID of the mother of X for the ID of X, and the family name of the mother of X for the name “Jones”.

Comment: if the spelling of the surname has changed over the generations, you'll need to use a regular expression for the Full Family Name in Filter B and enable “Use regular expressions”





Example 5. Show birthplaces of all people with the surname Whitesmith

                                          Person Filter Editor

Filter A:

    General filters=>
          People with the <name> : Full family name:="Whitesmith"
         

All rules must apply


                                          Events Filter Editor

Filter B:

    General filters=> 
          Events of persons matching the <person filter>: Filter name:="A" 
    General filters=> 
          Events with the particular type: Event type:="Birth"
         

All rules must apply


                                          Places Filter Editor

Filter C:

    General filters=>
          Places of events matching the <event filter>: Event filter name:="B"
         

All rules must apply

<Run Filter C> in Place View to check



These Places can be displayed in Geography View

Select All Known Places, but use Filter sidebar with Custom filter "C" to restrict the places shown to birthplaces of the Whitesmith family


[Acknowledgement: thanks to S. Noiraud for pointing out this very useful combination of filter and Geography View]

Example 6. People with a common ancestor with <person>, their spouses and their spouse's children

                                          Person Filter Editor


Filter A:

   Ancestral filters =>
       People with a common ancestor with <person>

All rules must apply

Filter B:

   Family filters =>
       Spouses of <filter> match: Filter name:="A" 

All rules must apply

Filter C:

   Family filters =>
       Children of <filter> match: Filter name:="B"
   General filters =>  
       People matching the <filter>: Filter name:="A"
   General filters =>  
       People matching the <filter>: Filter name:="B"

At least one rule must apply

<Run Filter C> in Person View

4-stage FILTERS

Example 1. People with surname Doe who lived in Illinois State

                                          Place Filter Editor

Comment: previous Filter A written for gramps 4.1 does not work in gramps 5 with the new Place hierarchy. It needs to be replaced by new Filter A:

   General filters=>
         Places enclosed by another place: Name:= "Illinois"; Place type:= "State"
         Inclusive:="1"  

[NOTE "Include selected Gramps ID" - this is important or the filter excludes events where "Illinois" is the first part of the place address title]

All rules must apply


                                          Event Filter Editor

Filter B:

   General filters=>
         Events of places matching the <place filter>: Place filter name:="A"   

All rules must apply



                                          Person Filter Editor

Filter C:

   Event filters=>
         People with the personal <event>: Personal event:="Residence"
   Event filters=>
         People with the personal <event>: Personal event:="Death"
   Event filters=>
         People with the personal <event>: Personal event:="Birth"

**At least one rule must apply**


Filter D:

   General filters=>
         People with events matching the <event filter>: Filter name:= "B"
   General filters=>
         People matching the <filter>: Filter name:= "C"
   General filters=>
         People with a name matching <text>: Text:= "Doe"


All rules must apply


<Run Filter D> in Person View.