Egy JSON-objektumot (vagy objektumok tömbjét) futtatásra kész
SQL INSERT-utasításokká, vagy egy TOML-dokumentummá alakít.
Minden feldolgozás helyben történik a böngészőben — semmi nem kerül feltöltésre.
JSON → SQLJSON → TOML
Azonosítók idézése:
Az oszlopnevek az objektumkulcsokból származnak (az összes sor uniója). Az oszloptípusok kikövetkeztetésre kerülnek: egész számok → INTEGER, tizedes törtek → REAL, logikai értékek → BOOLEAN, minden más → TEXT. A beágyazott objektumok/tömbök JSON-szövegként kerülnek tárolásra.
Egyirányú JSON → TOML (TOML 1.0). Az objektumok [táblázatokká], az objektumok tömbjei [[táblázatok tömbjévé]] válnak, a skalártömbök soron belül maradnak. A JSON null értéknek nincs TOML-megfelelője, megjegyzéssel együtt kihagyásra kerül. A bemenetnek objektumnak kell lennie — a legfelső szintű tömbök nem érvényes TOML-ek.
Bemenet (JSON)
Kimenet
Gépelés közben automatikusan átalakít.
A bal oldalon megadott JSON a jobb oldalon SQL / TOML alakban jelenik meg.
SQL megjegyzések: a karakterláncok egyszeres idézőjelbe kerülnek, az '' escape-eléssel; a hiányzó értékek NULL lesznek; a logikai értékek TRUE/FALSE.
TOML megjegyzések: a karakterláncok dupla idézőjelet használnak, a \n stb. escape-ekkel; azok a kulcsok, amelyek idézőjel nélkül nem biztonságosak, idézőjelbe kerülnek.
Mi az a TOML? A TOML a Tom's Obvious, Minimal Language rövidítése. Ember által is könnyen olvasható konfigurációs fájlformátum, amely az INI-re hasonlít, de egyértelmű szabályokat ad a beágyazott táblázatokhoz, a táblázatok tömbjeihez, a soron belüli tömbökhöz, a karakterláncokhoz, számokhoz, logikai értékekhez és dátumokhoz. A JSON a gépek közötti kommunikációra jó; a TOML az emberek által szerkesztett beállításokra készült. Az átalakító a JSON-objektumot TOML-dokumentummá alakítja: a legfelső szintű kulcsok kulcs = érték sorokká, a beágyazott objektumok [táblázat] szakaszokká, az objektumok tömbjei pedig [[táblázatok tömbje]] bejegyzésekké válnak. Például a {"server":{"host":"localhost","port":8080},"debug":true} JSON így alakul:
debug = true
[server]
host = "localhost"
port = 8080
Megjegyzés: a bemenetnek JSON-objektumnak kell lennie; a legfelső szintű tömb nem érvényes TOML-dokumentum. A null értékek megjegyzéssel kihagyásra kerülnek, mert a TOML-ben nincs null típus.