TOON‑XML‑konverterare
Konvertera mellan TOON‑format (Token‑Oriented Object Notation) och XML. Omvandla token‑effektiv TOON‑data till XML‑markup och vice versa, med JSON som mellanformat för pålitlig konvertering.
Inmatning
Utdata
Readme
Vad är TOON-format?
TOON (Token-Oriented Object Notation) är ett kompakt, mänskligt läsbart dataserialiseringsformat som är speciellt utformat för Large Language Models (LLMs). Till skillnad från JSON, som upprepar fältnamn för varje objekt i en array, deklarerar TOON fältnamnen en gång och strömmar sedan data i rader – liknande CSV men med explicit struktur. Denna design minskar vanligtvis tokenanvändning med 30‑60 % jämfört med formaterad JSON, särskilt för enhetliga objektarrayer. TOON kombinerar YAML:s indenteringsbaserade struktur för nästlade objekt med CSV:s tabulära effektivitet, optimerad för LLM‑sammanhang där tokenkostnader är viktiga.
Vad är XML?
XML (eXtensible Markup Language) är ett allmänt använt märkspråk för att koda dokument i ett format som både är mänskligt läsbart och maskinellt läsbart. XML använder taggar för att definiera element och attribut, vilket skapar en hierarkisk trädstruktur. Det används ofta för konfigurationsfiler, datautbyte mellan system, webbtjänster (SOAP), dokumentformat (Office Open XML) och RSS‑flöden. Även om XML är verbost och explicit, erbjuder det starka valideringsmöjligheter och stödjer komplexa nästlade strukturer.
Verktygsbeskrivning
Denna konverterare omvandlar data tvåvägs mellan TOON- och XML-format med JSON som ett mellanliggande format. Konverteringsprocessen är: TOON ↔ JSON ↔ XML. Detta tillvägagångssätt säkerställer pålitlig konvertering genom att utnyttja väl etablerade bibliotek för varje transformationssteg. Konvertera token‑effektiv TOON‑data till standard‑XML‑markup för system som kräver XML‑inmatning, eller omvandla XML‑data till kompakt TOON‑format för att minska tokenanvändning i LLM‑applikationer.
Exempel
TOON till XML‑konvertering:
Inmatning (TOON):
users[2]{id,name,role}:
1,Alice,admin
2,Bob,user
Utdata (XML):
<?xml version="1.0" encoding="UTF-8"?>
<root>
<users>
<id>1</id>
<name>Alice</name>
<role>admin</role>
</users>
<users>
<id>2</id>
<name>Bob</name>
<role>user</role>
</users>
</root>
XML till TOON‑konvertering:
Inmatning (XML):
<?xml version="1.0" encoding="UTF-8"?>
<order>
<id>ORD-456</id>
<customer>John Doe</customer>
<total>99.99</total>
</order>
Utdata (TOON):
order:
id: ORD-456
customer: John Doe
total: 99.99
Funktioner
- Bidirektionell konvertering mellan TOON och XML med full databevarande
- JSON‑mellanformat säkerställer pålitlig konvertering med beprövade bibliotek
- Hantera komplexa strukturer inklusive nästlade element, attribut och arrayer
- Automatisk formatdetektering och optimal konverteringsstrategi
- Bevarar datahierarki och upprätthåller förälder‑barn‑relationer
- Typ‑medveten konvertering som behåller tal, booleska värden och strängar intakta
- Realtidskonvertering med omedelbara resultat
- Syntaxmarkering för både TOON‑ och XML‑format
Användningsområden
- Integration av äldre system – Konvertera modern TOON‑data till XML‑format för kompatibilitet med äldre företagsystem som kräver XML‑inmatning
- API‑datatransformation – Omvandla XML‑API‑svar till token‑effektiv TOON‑format innan de skickas till LLM‑er för bearbetning och analys
- Konvertering av konfigurationsfiler – Konvertera XML‑konfigurationsfiler till TOON‑format för att minska tokenanvändning när LLM‑er används för infrastrukturhantering
- Dokumentbehandling – Omvandla XML‑dokument (RSS‑flöden, SOAP‑svar, Office‑dokument) till TOON för effektiv LLM‑baserad analys
- Datamigrering – Konvertera data mellan system som använder olika format, där TOON fungerar som en token‑effektiv mellanrepresentation
Konverteringsprocess
TOON till XML:
- Analysera TOON‑format till JavaScript‑objekt (med
@toon-format/toondecode) - Konvertera JavaScript‑objekt till XML‑markup (med
xml2jsbuilder) - Generera formaterad XML med korrekt indentering
XML till TOON:
- Analysera XML‑markup till JavaScript‑objekt (med
xml2jsparser) - Konvertera JavaScript‑objekt till TOON‑format (med
@toon-format/toonencode) - Generera kompakt TOON‑representation
Noteringar om XML‑struktur
Vid konvertering från TOON till XML:
- Rotobjektets nycklar blir XML‑element
- Arrayer skapar flera element med samma taggnamn
- Tabulära TOON‑arrayer expanderas till individuella XML‑element
- Objektesgenskaper blir barn‑element
- Värden konverteras till textinnehåll
Vid konvertering från XML till TOON:
- XML‑element blir objekt‑nycklar
- Upprepade element blir arrayer
- Attribut slås samman med elementets innehåll
- Textinnehåll blir strängvärden
- Tomma element blir tomma strängar eller null
Formatöverväganden
XML‑verbositet:
- XML är i sig verbost med öppnings‑ och stängningstaggar
- Varje element kräver både start‑ och sluttagg
- Attribut lägger till extra tecken
- Väl lämpad för dokument‑markup och validering
TOON‑effektivitet:
- Betydligt mer kompakt för strukturerad data
- Idealisk för tabulär data med upprepade strukturer
- Minskar tokenanvändning med 30‑60 % jämfört med JSON
- Optimerad för LLM‑konsumtion
Avvägningar:
- XML stödjer attribut och blandat innehåll (text + element)
- TOON utmärker sig för enhetliga datastrukturer
- XML har starkare valideringsmöjligheter
- TOON har bättre token‑effektivitet för LLM‑er
Konverteringskvalitet
Det mellanliggande JSON‑formatet säkerställer:
- Dataintegritet – ingen dataförlust under konvertering
- Typbevarande – tal, booleska värden och null‑värden bevaras
- Strukturell konsistens – nästlade relationer bevaras
- Pålitlig transformation – med beprövade bibliotek (
xml2jsoch@toon-format/toon) - Felhantering – tydliga felmeddelanden för ogiltig inmatning