Comment rédiger un bon schéma d'extraction en langage courant
Le schéma n'est qu'une description de ce que vous voulez extraire d'un document. Pas besoin d'apprendre une syntaxe pour en écrire un — mais quelques bonnes habitudes font toute la différence entre un résultat fiable et un résultat qu'il faut surveiller. Voici comment décrire ce que vous attendez pour que le moteur vise juste du premier coup.
- tutorial
- schema design
La première chose que font la plupart des gens dans Ztract, c’est créer un projet. La deuxième — celle qui décide de la qualité de vos résultats — c’est de nous dire ce qu’il faut en extraire. Cette description, c’est votre schéma.
Voici ce qui surprend les gens : vous ne l’écrivez pas en code. Aucune syntaxe à apprendre, aucun type de champ à déclarer, aucun modèle à dessiner sur la page. Vous décrivez ce que vous voulez comme vous l’expliqueriez à un nouveau collègue : « Pour chaque facture, donne-moi le fournisseur, le total et chaque ligne de détail. » Le moteur s’occupe du reste.
Cette liberté, c’est tout l’intérêt — mais cela veut aussi dire que la qualité de votre résultat suit la qualité de votre description. Une demande floue donne des résultats flous. Une demande précise donne des données propres, fiables dès le premier passage. Cet article porte sur la poignée d’habitudes qui rendent votre schéma en langage courant précis, quel que soit le type de document que vous traitez.
À quoi ressemble un bon schéma
Avant les règles, voici l’allure d’une description qui fonctionne bien. Imaginons que vous extrayiez des factures :
« Pour chaque facture, extrais le numéro de facture, la date d’émission, le nom du fournisseur et le montant total à payer. Extrais aussi chaque ligne de détail avec sa description, sa quantité, son prix unitaire et son total de ligne. Si un champ n’apparaît pas sur le document, laisse-le vide plutôt que de deviner. »
Remarquez ce que cela fait. Cela nomme des champs précis, pas « les trucs importants ». Cela sépare ce dont il n’y a qu’un seul exemplaire par document (numéro de facture, total) de ce qu’il y a en plusieurs exemplaires (les lignes de détail). Et cela dit quoi faire quand une information manque. Rien de tout cela n’est technique — c’est simplement précis. Les cinq habitudes ci-dessous vous y mènent.
Cinq habitudes qui rendent un schéma précis
1. Soyez précis sur la valeur que vous visez
Les documents regorgent de chiffres et de dates qui se ressemblent. « Le montant » sur une facture peut être le sous-total, la TVA, le total avant remise ou le montant final à payer. Si vous écrivez « extrais le montant », vous laissez le choix au hasard.
Nommez celui que vous voulez exactement :
- ❌ « la date » → ✅ « la date d’émission de la facture (pas la date d’échéance) »
- ❌ « le montant » → ✅ « le montant total à payer, après TVA et remises »
- ❌ « le nom » → ✅ « la raison sociale du fournisseur (pas la personne de contact) »
Plus un document comporte de champs qui se ressemblent, plus cela compte.
2. Précisez le format que vous voulez
Le moteur lit ce qui figure sur la page, mais vous voulez souvent que ce soit normalisé sous une forme cohérente — surtout pour les dates, les nombres et les montants. Si le format vous importe, demandez-le :
- « Formate toutes les dates en YYYY-MM-DD. »
- « Exprime les montants en nombres simples, sans symbole monétaire ni séparateur de milliers. »
- « Saisis les débits en nombres négatifs. »
- « Indique le code de la devise (USD, EUR, etc.) dans un champ à part. »
Sans cela, vous obtenez ce que montre le document — $1,250.00,
1.250,00, (1,250.00) — et vous passerez du temps à nettoyer tout
ça dans le tableur ensuite. Une phrase en amont vous évite ce travail.
3. Distinguez « un par document » de « un par ligne »
C’est la chose qui fait le plus trébucher les gens, et elle mérite qu’on s’y attarde. Certains champs n’apparaissent qu’une fois par document — un numéro de facture, la période d’un relevé bancaire, un titulaire de compte. D’autres se répètent — chaque ligne de détail, chaque transaction, chaque passager sur un billet.
Si vous ne les distinguez pas, vous risquez de vous retrouver avec une seule valeur là où vous vouliez une liste, ou avec un fouillis aplati là où vous vouliez une structure. La solution, c’est de le dire à voix haute :
« Extrais une seule fois les champs au niveau du relevé : titulaire du compte, numéro de compte, solde d’ouverture, solde de clôture. Puis extrais chaque transaction sur sa propre ligne, avec la date, la description et le montant. »
Les mots « pour chaque » sont vos amis. « Pour chaque ligne de détail… », « pour chaque transaction… » — ils indiquent au moteur qu’il faut s’attendre à une liste et vous rendent des lignes propres et répétées au lieu d’un amas.
4. Ajoutez un mot de désambiguïsation pour les champs qui prêtent à confusion
Certains champs sont réellement ambigus et aucune lecture de la page ne les départage — seule votre intention le fait. Un document de douane peut porter à la fois un numéro de facture et un numéro de bon de commande, à la fois une adresse de livraison et une adresse de facturation, à la fois un poids brut et un poids net.
Quand deux champs peuvent être confondus, ajoutez une courte précision :
- « le numéro de facture (celui du vendeur, étiqueté « INV » — pas le numéro de PO) »
- « l’adresse de livraison (où les marchandises sont livrées, pas l’adresse de facturation) »
Vous savez lequel il vous faut vraiment. Le dire élimine les suppositions.
5. Décidez ce qui se passe quand un champ manque
Les vrais documents sont irréguliers. Une facture a un numéro de PO, la suivante non. Si vous ne dites pas quoi faire, vous laissez la question ouverte — et pour l’extraction, le réglage par défaut sûr que vous voulez presque toujours, c’est ne rien inventer :
« Si un champ n’apparaît pas sur le document, laisse-le vide. Ne devine jamais et n’insère aucune valeur de remplacement. »
Cette seule phrase vaut particulièrement le coup pour les documents financiers, juridiques et médicaux, où une valeur fausse mais affirmée avec assurance est bien plus dangereuse qu’une case vide que vous pouvez voir et vérifier ensuite.
Trois façons de créer un schéma — et quand utiliser chacune
Ztract vous offre trois points de départ. Les habitudes ci-dessus s’appliquent à toutes les trois ; la seule question, c’est par où vous commencez.
- Partir d’un schéma prêt à l’emploi. Pour les documents courants — factures, reçus, relevés bancaires, pièces d’identité, CV, contrats, comptes rendus d’analyses, documents de douane — il existe un modèle qui connaît déjà les champs habituels. Idéal quand votre document est d’un type standard et que vous voulez démarrer vite, puis ajuster.
- Décrire vous-même les champs. Rédigez la description en langage courant à partir de zéro. Idéal quand votre document est inhabituel, ou quand vous voulez exactement ces champs-là et rien d’autre. C’est là que les cinq habitudes prennent toute leur valeur.
- Déduire à partir d’un échantillon. Déposez un document représentatif et laissez le moteur vous proposer un schéma à partir de ce qu’il voit. Idéal quand vous ne savez pas encore quels champs contient un document tant que vous n’en avez pas examiné un — puis affinez la proposition en langage courant.
La plupart des gens finissent par les combiner : partir d’un modèle ou d’un échantillon, puis affiner la description à la main grâce aux habitudes ci-dessus.
Vous pouvez consulter notre page de documentation conception de votre schéma pour en savoir plus.
Un petit tableau de dépannage
Quand le résultat n’est pas celui que vous attendiez, la cause se trouve généralement dans la description. Les cas les plus fréquents :
| Ce que vous voyez | Cause probable | La solution |
|---|---|---|
| Mauvais nombre extrait pour « le montant » | Le champ n’était pas assez précis | Nommez la valeur exacte : « total à payer après TVA » |
| Dates dans des formats mélangés | Aucun format demandé | Ajoutez « formate toutes les dates en YYYY-MM-DD » |
| Une seule valeur là où vous vouliez une liste | Champ répété non signalé | Utilisez « pour chaque … extrais … » |
| Liste aplatie dans une seule case | Même chose que ci-dessus | Pareil — nommez explicitement les champs de chaque ligne |
| Un champ inventé de toutes pièces | Aucune règle pour les champs manquants | Ajoutez « laisse vide si absent, ne devine jamais » |
| Deux champs similaires intervertis | Aucune désambiguïsation | Ajoutez une précision : « le numéro de PO, pas le numéro de facture » |
Le schéma n’est que la moitié de la boucle
Même un schéma bien rédigé gagne à être relu, et Ztract est conçu autour de cette idée. Chaque valeur extraite est ancrée à sa position sur le document source — cliquez sur une valeur et vous voyez exactement d’où elle vient. Vous repérez celles qui ont l’air bancales, vous les corrigez en un clic, et c’est terminé. Les corrections ne coûtent rien ; seule l’extraction est décomptée de vos pages, pas la retouche qui suit.
L’objectif d’un bon schéma n’est donc pas la perfection du premier coup — c’est de s’en approcher assez pour que l’étape de relecture soit un coup d’œil rapide plutôt qu’à refaire. Les cinq habitudes ci-dessus sont ce qui vous y amène.
Essayez sur un vrai document
La façon la plus rapide de prendre la main, c’est de rédiger une description pour un document que vous utilisez vraiment et de voir ce qui revient. Les nouveaux comptes reçoivent 30 pages gratuites, sans carte bancaire — de quoi largement ébaucher un schéma, l’affiner et regarder le résultat se resserrer au fur et à mesure.
Et si un type de document ou un schéma que vous avez tenté de décrire vous a fait trébucher — si vous n’avez pas trouvé les mots pour obtenir le résultat voulu — c’est exactement le retour que nous cherchons. Dites-le-nous ; rendre la conception de schéma évidente pour les gens qui ne sont pas ingénieurs, c’est la partie du produit que nous tenons le plus à réussir.