Konwerter TOON XML
Konwertuj między formatami TOON (Token-Oriented Object Notation) a XML. Przekształcaj tokenowo wydajne dane TOON na znacznik XML i odwrotnie, używając JSON jako formatu pośredniego dla niezawodnej konwersji.
Wejście
Wyjście
Instrukcja
Co to jest format TOON?
TOON (Token-Oriented Object Notation) jest zwartym, czytelnym dla człowieka formatem serializacji danych, zaprojektowanym specjalnie dla dużych modeli językowych (LLM). W przeciwieństwie do JSON, który powtarza nazwy pól dla każdego obiektu w tablicy, TOON deklaruje nazwy pól raz, a następnie przesyła dane w wierszach — podobnie jak CSV, ale ze wyraźną strukturą. Projekt ten zazwyczaj zmniejsza zużycie tokenów o 30‑60 % w porównaniu do sformatowanego JSON, szczególnie przy jednorodnych tablicach obiektów. TOON łączy strukturę opartą na wcięciach znaną z YAML dla zagnieżdżonych obiektów z efektywnością tabelaryczną CSV, zoptymalizowaną pod kątem kontekstów LLM, w których koszt tokenów ma znaczenie.
Co to jest XML?
XML (eXtensible Markup Language) jest powszechnie używanym językiem znaczników do kodowania dokumentów w formacie czytelnym zarówno dla ludzi, jak i maszyn. XML używa znaczników do definiowania elementów i atrybutów, tworząc hierarchiczną strukturę drzewa. Jest często wykorzystywany w plikach konfiguracyjnych, wymianie danych między systemami, usługach internetowych (SOAP), formatach dokumentów (Office Open XML) oraz kanałach RSS. Choć XML jest rozbudowany i explicite opisowy, zapewnia silne możliwości walidacji i obsługuje złożone, zagnieżdżone struktury.
Opis narzędzia
Ten konwerter przekształca dane dwukierunkowo między formatami TOON i XML, używając JSON jako formatu pośredniego. Proces konwersji wygląda następująco: TOON ↔ JSON ↔ XML. Takie podejście zapewnia niezawodną konwersję dzięki wykorzystaniu dobrze znanych bibliotek dla każdego etapu przekształcenia. Konwertuj tokenowo wydajne dane TOON na standardowy znacznik XML dla systemów wymagających wejścia w formacie XML lub przekształcaj dane XML do zwartego formatu TOON, aby zmniejszyć zużycie tokenów w aplikacjach LLM.
Przykłady
Konwersja TOON do XML:
Wejście (TOON):
users[2]{id,name,role}:
1,Alice,admin
2,Bob,user
Wyjście (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>
Konwersja XML do TOON:
Wejście (XML):
<?xml version="1.0" encoding="UTF-8"?>
<order>
<id>ORD-456</id>
<customer>John Doe</customer>
<total>99.99</total>
</order>
Wyjście (TOON):
order:
id: ORD-456
customer: John Doe
total: 99.99
Funkcje
- Dwukierunkowa konwersja między TOON a XML z pełnym zachowaniem danych
- Format pośredni JSON zapewnia niezawodną konwersję przy użyciu sprawdzonych bibliotek
- Obsługa złożonych struktur w tym zagnieżdżonych elementów, atrybutów i tablic
- Automatyczne wykrywanie formatu i optymalna strategia konwersji
- Zachowuje hierarchię danych utrzymując relacje rodzic‑dziecko
- Konwersja świadoma typów zachowująca liczby, wartości logiczne i ciągi znaków
- Konwersja w czasie rzeczywistym z natychmiastowymi wynikami
- Podświetlanie składni dla formatów TOON i XML
Przypadki użycia
- Integracja z systemami legacy – Konwertuj nowoczesne dane TOON do formatu XML w celu kompatybilności ze starszymi systemami korporacyjnymi, które wymagają wejścia w formacie XML
- Transformacja danych API – Przekształcaj odpowiedzi API w formacie XML do tokenowo wydajnego formatu TOON przed wysłaniem do LLM w celu przetwarzania i analizy
- Konwersja plików konfiguracyjnych – Konwertuj pliki konfiguracyjne XML do formatu TOON, aby zmniejszyć zużycie tokenów przy użyciu LLM do zarządzania infrastrukturą
- Przetwarzanie dokumentów – Przekształcaj dokumenty XML (kanały RSS, odpowiedzi SOAP, dokumenty Office) do TOON w celu efektywnej analizy opartej na LLM
- Migracja danych – Konwertuj dane między systemami używającymi różnych formatów, przy czym TOON pełni rolę tokenowo wydajnej reprezentacji pośredniej
Proces konwersji
TOON do XML:
- Parsuj format TOON do obiektu JavaScript (przy użyciu dekodowania
@toon-format/toon) - Konwertuj obiekt JavaScript do znaczników XML (przy użyciu budowniczego
xml2js) - Wyświetl sformatowany XML z odpowiednim wcięciem
XML do TOON:
- Parsuj znaczniki XML do obiektu JavaScript (przy użyciu parsera
xml2js) - Konwertuj obiekt JavaScript do formatu TOON (przy użyciu kodowania
@toon-format/toon) - Wyświetl zwartą reprezentację TOON
Uwagi dotyczące struktury XML
Podczas konwersji z TOON do XML:
- Klucze obiektu głównego stają się elementami XML
- Tablice tworzą wiele elementów o tej samej nazwie znacznika
- Tablicowe tablice TOON rozwijają się do poszczególnych elementów XML
- Właściwości obiektu stają się elementami potomnymi
- Wartości są konwertowane na treść tekstową
Podczas konwersji z XML do TOON:
- Elementy XML stają się kluczami obiektu
- Powtarzające się elementy stają się tablicami
- Atrybuty są łączone z zawartością elementu
- Zawartość tekstowa staje się wartościami typu string
- Puste elementy stają się pustymi ciągami znaków lub null
Rozważania dotyczące formatu
Rozbudowanie XML:
- XML jest z natury rozbudowany, wymaga tagów otwierających i zamykających
- Każdy element wymaga zarówno tagu początkowego, jak i końcowego
- Atrybuty dodają dodatkowe znaki
- Dobrze nadaje się do znaczników dokumentów i walidacji
Efektywność TOON:
- Znacznie bardziej zwarty dla danych strukturalnych
- Idealny dla danych tabelarycznych z powtarzającymi się strukturami
- Zmniejsza zużycie tokenów o 30‑60 % w porównaniu do JSON
- Zoptymalizowany pod kątem konsumpcji przez LLM
Kompromisy:
- XML obsługuje atrybuty i mieszane treści (tekst + elementy)
- TOON wyróżnia się przy jednolitych strukturach danych
- XML posiada silniejsze możliwości walidacji
- TOON ma lepszą efektywność tokenową dla LLM
Jakość konwersji
Format pośredni JSON zapewnia:
- Integralność danych – brak utraty danych podczas konwersji
- Zachowanie typów – liczby, wartości logiczne i null są zachowane
- Spójność struktury – zagnieżdżone relacje zachowane
- Niezawodna transformacja – przy użyciu sprawdzonych bibliotek (
xml2jsi@toon-format/toon) - Obsługa błędów – czytelne komunikaty o błędach przy nieprawidłowym wejściu