Publication de données au format JSON

Modifié

JSON est un format standard ouvert qui utilise un texte lisible par l'homme pour transmettre des objets de données constitués de paires clé-valeur. C'est le format de données le plus courant pour construire des API web.

Comme les documents JSON peuvent avoir de nombreuses formes différentes, la plateforme peut extraire des données à partir de fichiers JSON, de fichiers JSON Lines et de dictionnaires JSON.

Si la plateforme n'extrait pas complètement un document avec une structure complexe, utilisez l'un des processeurs JSON pour compléter l'extraction.

Fichier JSON

Vous pouvez utiliser un fichier JSON comme source. À partir de ce fichier, la plateforme extrait un document JSON valide (tableau ou objet) dans un jeu de données de plusieurs enregistrements :

  • Si le document est un tableau JSON, un enregistrement sera créé pour chaque objet à l'intérieur du tableau (les clés seront utilisées comme noms de colonnes).

  • Si le document est un objet JSON, le paramètre "racine JSON" doit contenir un chemin séparé par des points vers le tableau à l'intérieur de votre objet. S'il n'est pas fourni, la plateforme essaie items.

Pour chaque élément à l'intérieur du tableau, la plateforme peut suivre un autre chemin avant d'extraire les enregistrements avec le paramètre "objet JSON".

Types de champs pris en charge

  • Champs réguliers (décimal, booléen, chaîne)

  • Objet JSON : utilisé tel quel

  • Tableau :

    • Si le tableau contient des objets JSON, il est utilisé tel quel.

    • Si le tableau contient des chaînes, un champ multivalué est créé avec toutes les chaînes séparées par un point-virgule (;).

Configuration

Racine JSON

La racine JSON indique le chemin vers le tableau JSON qui contient les objets à extraire comme futurs enregistrements de votre jeu de données.

Si le tableau JSON contenant les futures données est à la racine du document, laissez la case racine JSON vide. Si le fichier JSON est un objet JSON, entrez le chemin ijson vers le tableau dans la case RACINE JSON.

Notez que ijson est une syntaxe pour naviguer à l'intérieur des objets JSON, consistant à séparer les noms d'attributs par des points.

Objet JSON

Dans la case objet JSON, indiquez le chemin relatif vers l'objet JSON à extraire.

Exemples

1. Dans ce premier exemple, le tableau JSON est situé à la racine du fichier. La case racine JSON doit donc être laissée vide.

[
 {
     "nom": "Agra Express",
     "origine": "Agra Cantt",
     "destination": "New Delhi"
 },
 {
     "nom": "Gour Express",
     "origine": "Balurghat",
     "destination": "Sealdah"
 }
]

Et le jeu de données résultant aura ce schéma :

nom

origine

destination

Agra Express

Agra Cantt

New Delhi

Gour Express

Balurghat

Sealdah

2. Dans ce deuxième exemple, le fichier JSON est plus complexe. La racine JSON correcte à indiquer est content.trains.

{
 "nom_fichier": "trains.json",
 "contenu": {
     "trains": [
         {
             "id": 123,
             "info": {
                 "nom": "Agra Express",
                 "origine": "Agra Cantt",
                 "destination": "New Delhi"
             }
         },
         {
             "id": 555,
             "info": {
                 "nom": "Gour Express",
                 "origine": "Balurghat",
                 "destination": "Sealdah"
             }
         }
     ]
 }
}

Si content.trains est défini comme la racine JSON, le jeu de données résultant sera :

id

info

123

{"origine": "Agra Cantt", "destination": "New Delhi", "nom": "Agra Express"}

555

{"origine": "Balurghat", "destination": "Sealdah", "nom": "Gour Express"}

Pour extraire uniquement les objets JSON info, et ignorer le numéro id, vous devez mettre l'objet info comme racine JSON. Ce n'est qu'alors que le jeu de données résultant sera :

nom

origine

destination

Agra Express

Agra Cantt

New Delhi

Gour Express

Balurghat

Sealdah