Fakir, mode d’emploi du moteur de Madits


Sur la page "Moteur" ci-contre, quatre méthodes de recherche vous sont accessibles : par mots, par sélections prédéfinies, par requête FAKIR, par requête MySQL.
A chaque méthode est attachée une boîte-menu spécifique.

Quelle que soit la méthode, chaque recherche produit une liste de Madits. Sur cette liste, en cliquant sur une date (en bleu) de Madit, vous accèderez à la liste des 50 Madits qui le précèdent ou qui le suivent, chronologiquement.





1.  La recherche par mots


Boîte recherche textuelle


C’est la méthode classique. Vous spécifiez d’abord le périmètre de votre recherche : sur TOUT le madit ou bien seulement sur les numéros, les titres, les questions et/ou les réponses. Si vous sélectionnez plusieurs cibles vous prendrez soin de préciser s’il convient de les relier par un "ET" ou bien par un "OU". En effet, rechercher la "LUMIERE" dans les questions ET les réponses ne donne pas les mêmes résultats qu’en la cherchant dans les questions OU les réponses !

Ensuite, vous entrerez de 1 à 3 "motifs" (ou "patterns") - des mots ou des fragments de texte quelconques - que vous associez entre eux par les opérateurs logiques : "AVEC", "SANS", "ET", "OU". Les trois listes déroulantes vous permettent de choisir ces derniers. Une fois vos choix validés (par un click sur le bouton "envoyer"), le moteur de recherche extraira de la base les Madits qui répondent à votre formule de recherche. Diverses options agréables vous sont proposées :


1.1.  Option "avec espaces"

Le Minitel insérait des espaces dans les textes saisis (typiquement : tous les 128 caractères). Par ailleurs, Max avait l’habitude de couper ses mots en fin de ligne par un tiret "-". L’option "avec espaces" permet que soient pris en compte tous les mots inopportunément coupés pour l'une ou l'autre de ces deux raisons.

Ainsi, lorsque cette option est activée, toute recherche sur le mot "CLE" portera sur l’ensemble des variantes suivantes :
   [CLEF], [C LE], [CL E], [C- LE], [CL- E]

Attention, elle fera aussi ressortir les Madits contenant (par exemple) :
   [...AVEC LEDECRYPTAGE...], [...DONC LEDEBUT...], [...UN VRAI MIRACLE...].


1.2.  Option "mots isolés"

Votre saisie sera considérée comme portant sur des mots isolés et non sur des suites de caractères.

Ainsi, si vous faites une recherche sur "AVANT" avec l’option "mots isolés", la recherche retiendra les Madits contenant :
   [AVANT  ] (donc placé en tête de réponse)  [  AVANT  ]  [  AVANT,]  [  AVANT;]  [  AVANT.]
(notez la présence de "blancs" ou de marques de ponctuation avant et après chaque résultat trouvé).

Et elle rejettera les Madits contenant (...par exemple) :
   [  AUPARAVANT  ]  [  AVANTAGE  ].


1.3 Option.  "avec rejet des Madits non-significatifs"

Elle exclut des résultats de la recherche toutes les réponses de MAX a priori sans intérêt et définies comme suit :
  • incluant les fragments du genre : "JE NE PEUX", "JE NE POUVAIS", "JE NE REPONDS", "IL M’EST IMPOSSIBLE"
  • et dont la longueur est inférieure ou égale à 120 caractères.
Vous pouvez régler dans le menu ce paramètre de longueur maximale des Madits rejetés ("lg maxi"). Plus ce paramètre est grand, plus élevé sera le nombre des Madits rejetés, avec un risque accru que certains contiennent des éléments intéressants, malgré la présence des fragments "négatifs" ci-dessus.


1.4.  Option "Rechercher dans les derniers résultats"

Cette option n’est activable qu’à l’issue d’une première recherche ayant produit des résultats. Comme son nom l’indique, elle fait porter la prochaine recherche sur l’ensemble des Madits issus de la recherche initiale et non sur la base entière.


1.5.  Sélection "Recherche sur les dates et numéros"

Compte tenu de leur format spécifique dans la base de données (qui associe date et numéro sous la forme : "1997-04-02 QR 30"), un traitement particulier est appliqué aux dates que vous saisissez. Vous pouvez ainsi formuler votre recherche dans le format qui vous plaîra au sein de la liste suivante (exemple du premier jour dans la Base, le "1995-08-04") :

1995-08-04,   1995-8-04,   1995-08-4,   1995-8-4,
04-08-1995,   04-8-1995,   4-08-1995,   4-8-1995,
04 Août 1995,   4 Aout 1995,   4 aout 1995,

La recherche peut porter sur une partie de la date :

1995-08, 1995-8, 08-1995, 8-1995, août 1995   ...renvoient les madits du mois d'août 1995.
1995   ...tout court renvoie tous les madits de l'année 1995.

Dans tous les cas ci-dessus, le séparateur "-" peut être remplacé par "/".
Et les noms de mois peuvent être saisis avec ou sans Majuscule, de même qu'avec ou sans accents.

Les numéros sont associables aux dates. Ils peuvent être saisis sous trois formes :

"QR",  "No"  ou  "N°"
Ainsi :
1995-08-04 QR18  ou  "1995-08-04 N° 18"   ...renvoient le Madit n°18 du 4 août 1995 (les espaces sont tolérés).
Août 1995 QR 2   ...renverra tous les Madits n°2 du mois d'août 1995.
QR 33   ...tout seul donnera tous les madits n°33 de la base, mais... où est l'intérêt ?

Pour bénéficier de cette syntaxe, le champ "les dates" doit être impérativement coché sur la ligne "Recherche sur". Si vous omettez de le faire, c'est une recherche simple, littérale, qui sera exécutée sur votre saisie.

Enfin, si vous souhaîtez réaliser des recherches plus compliquées, vous devez utiliser le moteur de requêtes SQL (dernier onglet à droite).
A titre d'exemple :

(numero >= "2000-01-15") AND (numero <= "2000-02-15")  ...vous renverra tous les Madits publiés entre le 15 janvier et le 15 février 2000.




2.  Les sélections prédéfinies


Boîte recherche prédéfinie


Des recherches spécifiques vous sont ici directement accessible, via deux listes déroulantes distinctes.

Avec la première de ces deux listes ("Requêtes prédéfinies"), il s’agit de recherches dont la formulation informatique est trop compliquée pour être composée via l’interface mise en place. Pour l’instant cette liste est restreinte, mais elle est destinée a s’étoffer : si vous avez des demandes de recherches particulières, n’hésitez pas à me les soumettre en et je me ferai un plaisir de les ajouter.

Avec la seconde ("Requêtes thématiques"), vous accèderez à des sélections de madits autour d’une soixantaine de thèmes importants de la chasse. Ces madits sont ceux que j’ai repérés et que je crois importants. N’hésitez pas à m’en proposer de nouveaux, comme à me proposer d’autres thèmes.

Ces sélections étant prédéfinies, les options de recherche ne sont pas accessibles (elles sont inhibées).





3.  Les requêtes FAKIR


Boîte recherche libre


Cet outil vous permet de composer directement le "filtre" de la requête qui sera soumise à la base de données. Vous devrez composer ce filtre à l’intérieur de la boîte de saisie qui vous est proposée et que vous pouvez redimensionner à tout moment en déplaçant son coin inférieur droit.

Pour définir votre requête, vous utiliserez ici mon petit langage "FAKIR", à la syntaxe très simplifiée. Sa conception est assez proche de celle du langage qui était accessible; sur le site de Zarquos, tout en se montrant un brin plus sophistiquée. Supposons par exemple que vous vouliez trouver tous les Madits qui contiennent soit "COEUR" soit "FLECHE" mais surtout pas "OUVERTURE". Très simple, vous tapez : (<COEUR> OU <FLECHE>) ET NON <OUVERTURE>.

Vous pouvez en plus de ça restreindre le périmètre de recherche de chaque mot-cible (ou : "pattern"), en faisant précéder ce pattern du nom du champ sur lequel la recherche doit porter. Si vous vous abstenez de le faire, la recherche de ce pattern portera sur la totalité du Madit. Par exemple, pour chercher les Madits comportant le mot "COEUR" dans la partie "QUESTION" et le mot "FLECHE" dans la partie "REPONSE", vous entrerez : QUESTION:<COEUR> ET REPONSE:<FLECHE>.
Les composants de ce mini-langage sont les suivants :
  • les balises "<" et ">" servent à encadrer les mots-cibles (qui peuvent inclure des espaces) ;
  • les opérateurs logiques utilisables sont : ET, OU et NON et doivent être séparés de ce qui les suit et les précède par des blancs ; le "NON" doit toujours être précédé d’un "ET" ou d’un "OU", comme ci-dessus ; notez qu’à la place de "ET NON" vous pouvez utiliser "SANS", qui est un synonyme.
  • vous pouvez enfin utiliser les parenthèses autant que vous le voulez... à condition de toutes les refermer correctement !
Les noms des champs de recherche sont : NUMERO, TITRE, QUESTION, REPONSE. Pour chaque valeur recherchée placée entre crochets il faut placer le nom du champ immédiatement à sa gauche, sans espace et en insérant un caractère ":" (deux points). Par exemple : QUESTION:<OUVERTURE> ou bien : TITRE:<580>. Rappelons que si aucun champ n’est spécifié, la recherche du pattern se fera sur l’ensemble du Madit.





4. Les requêtes "MySQL"


Boîte recherche MySQL


Cette méthode est tout à fait semblable à celle qui précède. La seule différence réside dans le langage que vous allez utiliser. Ici, il s’agit non plus de ma petite syntaxe perso, mais de celle du fameux langage "MySQL", utilisé dans la plupart des sites Internet qui manipulent des données. Pour ce faire, vous devez évidemment connaître un peu ce langage, sachant qu’aucun contrôle ne sera effectué sur votre saisie.

A titre de simple diagnostic, le contenu final de la requête MySQL transmise à la base de données sera affiché en tête des résultats trouvés (ou bien une erreur signalée). Cette méthode, clairement plus technique, est réservée aux connaisseurs. Mais avec elle, il n’existe pratiquement aucune limite aux filtres que vous pourrez composer.

Notez que les filtres peuvent porter sur les 5 variables qui organisent la base des Madits : "numero", "titre", "question", "reponse", "theme".

Exemples de filtres (en syntaxe MySQL) :
  • Le filtre : (numero LIKE '%1995%') AND ((question LIKE '%FLECH%') OR (question LIKE '%COEUR%')) donnera les Madits 1995 dont les questions contiennent soit "FLECH" soit "COEUR" (ou les deux, mais aussi : "FLECHES", "COEURS", "ECOEURANT", etc.)
  • Le filtre : (numero LIKE '%200%') AND (question LIKE '%RELIQ%') AND (reponse LIKE 'JE LIS%') donnera les Madits des années 2000-2001 dont la question porte sur les RELIQUATS et qui comportent une suite (la réponse débutant par : "JE LIS LA SUITE").
  • Le filtre : ((question LIKE '% RELIQUATS %') OR (reponse LIKE '% RELIQUATS %')) AND (numero NOT LIKE '%1995%') donnera les Madits dont la question OU la réponse contient le mot " RELIQUATS ", encadré par deux espaces, sauf ceux de 1995.
Notez que dans ces exemples, le caractère-joker "%" signifie : "n’importe quelle suite de caractères". Ainsi :
  • Le filtre : reponse LIKE 'BONJOUR' retourne les Madits dont le champ "reponse" est strictement égal à "BONJOUR" - il n’y en a aucun.
  • Le filtre : reponse LIKE 'BONJOUR%' va retenir tous les Madits qui commencent par "BONJOUR" : il y en a 17.
  • Le filtre : reponse LIKE '%BONJOUR' va retenir tous les Madits qui se terminent par "BONJOUR" : il n’y en a évidemment aucun.
Notez que vous n’avez pas à entrer le "reste" de la requête MySQL (i.e. sa partie "commande" au début et l'ordre d'affichage à la fin), le logiciel le fera pour vous.


Enjoy !