Créer des requêtes pour le serveur GeneWeb

From GeneWeb
Jump to: navigation, search
150px-Geographylogo svg.png Language: English • français

Le programme gwd est le serveur GeneWeb qui accepte les requêtes utilisateur et renvoie des résultats. Son interface est entièrement orientée web : il fonctionne comme un serveur HTTP.

Tous les paramètres de requête sont directement disponibles dans la fenêtre d’URL de votre navigateur web pour construire des liens vers des pages GeneWeb.

Elle s’adresse aussi bien aux utilisateurs de GeneWeb qu’à ceux qui, sans connaître GeneWeb, désirent mettre des liens directs vers des pages GeneWeb trouvées sur la toile.

Page d’accueil d’une base de données GeneWeb

La page d’accueil d’une base de données GeneWeb est la plupart du temps de la forme http://serveur:port/base où :

  • serveur est l’adresse IP ou le DNS de la machine hébergeant le serveur GeneWeb ;
  • port le port TCP du serveur, par défaut 2317 pour l’accès aux bases et 2316 pour gwsetup (ces deux paramètres sont configurables au lancement de gwd et gwsetup), et enfin
  • base le nom de la base de données GeneWeb.

Pour faciliter la navigation, gwd démarre en ouvrant la page d’accueil welcome.txt sur laquelle de multiples champs de textes et boutons cliquables fournissent un moyen pratique de construire des requêtes complexes.

Lancement du serveur gwd

Le serveur gwd de GeneWeb se comporte comme un serveur web qui reçoit des requêtes sur le port TCP 2317 par défault, de la même manière qu’un serveur web tel que Apache les reçoit sur le port 80 ou 8080. Gwd reçoit des URL qui suivent une syntaxe précise décrivant les commandes qui doivent être exécutées. Les résultats sont renvoyés sous la forme de texte, et si l’URL a été envoyée par un navigateur web ou n’importe quel programme respectant le protocole HTTP, celui-ci interprétera comme du code HTML.

Usage: gwd [options] where options are:
 -hd <dir>
      Directory where the directory lang is installed.
 -bd <dir>
      Directory where the databases are installed.
 -wd <dir>
      Directory for socket communication (Windows) and access count.
 -cgi
      Force CGI mode.
 -images_url <url>
      URL for GeneWeb images (default: gwd send them)
 -images_dir <dir>
      Same than previous but directory name relative to current
 -a <address>
      Select a specific address (default = any address of this computer)
 -p <number>
      Select a port number (default = 2317); > 1024 for normal users.
 -setup_link
      Display a link to local gwsetup in bottom of pages.
 -allowed_tags <file>
      HTML tags which are allowed to be displayed. One tag per line in file.
 -wizard <passwd>
      Set a wizard password: access to all dates and updating.
 -friend <passwd>
      Set a friend password: access to all dates.
 -wjf
      Wizard just friend (permanently)
 -lang <lang>
      Set a default language (default: fr).
 -blang
      Select the user browser language if any.
 -only <address>
      Only inet address accepted.
 -auth <file>
      Authorization file to restrict access. The file must hold lines
      of the form "user:password".
 -no_host_address
      Force no reverse host by address
 -digest
      Use Digest authorization scheme (more secure on passwords)
 -add_lexicon <lexicon>
      Add file as lexicon.
 -log <file>
      Redirect log trace to this file.
 -robot_xcl <cnt>,<sec>
      Exclude connections when more than <cnt> requests in <sec> seconds.
 -min_disp_req
      Minimum number of requests in robot trace (default: 6)
 -login_tmout <sec>
      Login timeout for entries with passwords in CGI mode (default 1800s)
 -redirect <addr>
      Send a message to say that this service has been redirected to <addr>
 -trace_failed_passwd
      Print the failed passwords in log (except if option -digest is set)
 -nolock
      Do not lock files before writing.
 -max_clients <num>
      Max number of clients treated at the same time (default: no limit)
      (not cgi).
 -conn_tmout <sec>
      Connection timeout (default 120s; 0 means no limit)
 -daemon
      Unix daemon mode.
 -chwd <comm>
      Call command when wdoc changed

Requêtes au serveur gwd

Les requêtes au serveur gwd sont des URLs chargées de paramètres. Le point d’interrogation ? marque la séparation entre l’adresse de base et la requête au serveur : http://serveur:port/base?requête

Il est parfois nécessaire d’éditer l’URL manuellement pour obtenir l’effet souhaité parce que certains paramètres ne sont pas disponibles à la sélection ou au clic sur toutes les pages de l’interface.

La requête en elle-même est la somme de tous les paramètres de requête ajoutés à la fin de l’URL après le point d’interrogation. Le serveur gwd analyse les différents paramètres et renvoie une page spécifique. En fonction de la situation, le caractère délimitant les paramètres dans les URLs peut-être ; ou &. Les deux peuvent être utilisés en même temps.

Les résultats sont renvoyés sous forme de texte. Si vous envoyez l’URL depuis un navigateur (elle peut également être envoyée de n’importe quel programme compatible HTTP), alors le texte sera traité comme du code HTML.

Liens vers les individus, access_by_key et opt=no_index

Il y a deux façons d’identifier un individu, soit avec le prénom et nom, soit avec son numéro id dans la base :

  • p=prénom;n=nom trouve une personne avec prénom et nom (correspondance exacte) ;
  • p=prénom;n=nom;oc=1 en spécifiant le numéro d’occurrence pour les cas d’homonymies ;
  • i=1234 trouve l’individu avec le numéro id 1234 dans la base.

Les numéros d’id des individus sont modifiés par la commande gwc si vous faites un nettoyage de la base. Ils ne sont donc pas pérennes.

Pour obtenir des liens permanents, il y a deux solutions :

  • utiliser l’option access_by_key=yes dans le fichier de configuration de votre base (.gwf) de manière à remplacer les adresses courtes avec les numéros id par des adresses de type p=prénom;n=nom;(oc=#;). S’il est égal à 0, oc= n’est pas précisé.
  • en ajoutant le paramètre opt=no_index à une adresse, GeneWeb renvoie l’adresse à utiliser avec des clés uniques mais volumineuses des individus de type p=firstname;n=lastname;oc=occurrence à la place des numéros id.
Lien à utiliser sans numéros i=, obtenu en ajoutant opt=no_index dans l’URL.

Ces remarques s’appliquent à toutes les requêtes de GeneWeb, particulièrement à celles affichant les liens de parenté où il est fréquent de trouver plusieurs personnes codées par leur numéro.

Graphe acyclique orienté, implexes, dag=on

Arbre ascendants avec dag=on: les ancêtres en commun sont fusionnés.

dag=on (directed acyclic graph) sur les arbres ascendants et descendants permet de fusionner les implexes du graphe c’est-à-dire qu’il n’y aura plus de chemins redondants.

Origine d’un individu, opt=from

L’option opt=from permet de retrouver de quel fichier source l’individu provient. Voir à ce sujet l’article sur la fusion des bases. L’information apparait après la famille de cet individu, et n’est visible que pour les magiciens.

Annuler les liens GeneWeb, cgl=on

L’option cgl=on (cancel geneweb links) annule les liens GeneWeb existant sur la page ce qui peut être utile pour une impression ou pour masquer des liens vers des données privées.

Noms d’un individus, opt=misc

L’option opt=misc permet d’obtenir les différentes appellations par lesquelles un individu sera accessible par la recherche. L’information apparait à la fin de sa page personnelle.

Titres cachés all_titles

all_titles=on

Rafraichissement des pages modifiées, escache

escache=0


Manuel GeneWeb

Rembrandt Old Man Reading a Book.jpg

Utiliser et gérer une base généalogique

Annexe technique