
Formats de livraison
JSON Lines : lignes de catalogue, rejets et reprise d’un export
Un fichier JSON Lines facilite une lecture par valeur, mais ne définit ni le schéma des produits ni la stratégie de reprise. Le contrat de livraison doit expliquer ces points avant un import de catalogue.
Source et portée du repère
JSON Lines décrit un encodage UTF-8, une valeur JSON valide par ligne et un séparateur de lignes ; une ligne vide n’est pas une valeur valide.
JSON Lines : description du format — consultée le . Description du format, sans certification IETF du type MIME ni contrat d’import fournisseur imposé.
Les contrôles qui suivent constituent une méthode éditoriale de Performance Voyage. Ils ne rapportent aucune opération exécutée sur un compte fournisseur.
Séparer format de ligne et schéma du produit
La validation d’une valeur JSON ne prouve pas qu’elle représente un produit conforme au contrat. Définissez l’objet attendu, ses identifiants et sa version indépendamment du découpage en lignes. Le scénario fictif compare une valeur syntaxiquement valide mais incomplète pour le catalogue. Le destinataire doit savoir quel contrôle produit motive le rejet.
Conserver une localisation utile des erreurs
Préparez une référence de lot et un numéro de ligne pour retrouver le problème sans publier les données sensibles du fichier. Une valeur peut être rejetée tandis que d’autres sont acceptées si le contrat le prévoit. Cette décision de traitement appartient au circuit d’import ; elle n’est pas fournie automatiquement par le format. Le compte rendu garde résultat et périmètre réellement lu.
Définir la reprise avant de renvoyer le fichier
Le registre précise si la reprise utilise tout le lot ou les valeurs refusées et comment les identifiants sont rapprochés. Un renvoi ne doit pas être supposé sans doublon parce que le fichier porte une extension jsonl. Comparez lot initial, corrections et résultat attendu sur des fixtures privées. Aucun import réel ni donnée partenaire persistante n’est modifié.
Deux cas fictifs à faire rapprocher
Une ligne vide est prise pour un produit absent
Scénario fictif : le fichier contient un saut de ligne vide entre deux valeurs. Faites distinguer format invalide et produit métier manquant. La correction du découpage ne doit pas créer un produit avec des champs nuls.
Le lot entier est renvoyé sans règle de reprise
Scénario fictif : une seule valeur échoue et toutes sont envoyées de nouveau sans rapprochement. Préparez la décision de reprise et les références. Le format de ligne ne garantit pas l’idempotence du destinataire.
Conserver les preuves et la prochaine décision
| Point | Preuve à retrouver | Contrôle proposé |
|---|---|---|
| Lot | Référence et version du fichier | Identifier la livraison. |
| Encodage | UTF-8 attendu | Préserver les textes. |
| Ligne | Valeur JSON complète | Contrôler le découpage. |
| Schéma | Contrat du produit | Séparer format et métier. |
| Erreur | Ligne et motif non sensible | Localiser le rejet. |
| Traitement | Acceptation partielle ou globale | Retrouver la règle convenue. |
| Reprise | Lot ou valeurs corrigées | Éviter un renvoi supposé sûr. |
| Résultat | Identifiants et bilan lus | Rapprocher la livraison. |
La livraison distingue validation de ligne et validation de produit. Les rejets sont localisables et la reprise suit une règle explicite ; l’extension du fichier ne constitue pas une garantie contre les doublons.
Erreurs à éviter
- Confondre JSON valide et produit complet.
- Transformer une ligne vide en objet.
- Déduire l’idempotence de l’extension.
La fiche de contrôle permet de suivre les huit points. Le registre associé peut être préparé dans l’atelier avec des références fictives ou anonymisées.
Sources et périmètre des faits documentés
La date de consultation figure avec chaque référence. Les méthodes d’essai et recommandations de ce guide sont éditoriales ; les conditions d’accès et d’usage se vérifient dans la documentation actuelle.
- JSON Lines : description du format — Description du format, sans certification IETF du type MIME ni contrat d’import fournisseur imposé. (consultée le )
Questions fréquentes
Questions utiles avant de décider
Une valeur null est-elle une ligne JSON valide ?
Oui pour la syntaxe ; le contrat produit peut la refuser.
Le format impose-t-il une acceptation partielle ?
Le destinataire doit documenter cette décision.
Le type MIME application/jsonl est-il standardisé ici ?
La description consultée le présente comme non encore standardisé.