Jak korzystać z XML na Ruby
- Wklej reprezentatywny przykład XML, najlepiej z wypełnionymi wszystkimi opcjonalnymi polami.
- Podaj nazwę typu głównego i zdecyduj, czy chcesz też kod pomocniczy, czy tylko typy.
- Skopiuj wygenerowany kod Ruby do swojego projektu.
O narzędziu XML na Ruby
Ręczne pisanie klas modeli dla dużych danych XML jest żmudne i łatwo wtedy o literówki. Wklej tutaj przykład, a generator rozpozna strukturę: jakie pola występują, które są obiektami lub tablicami i jaki typ ma każda wartość. Wynikiem są klasy Dry::Struct z Dry::Types oraz funkcjami pomocniczymi from_dynamic i to_dynamic.
XML jest przekształcony w JSON w taki sam sposób, jak w naszym narzędziu XML do JSON: atrybuty otrzymują @_ Prefiks i zawartość tekstu obok atrybutów nazywa się #text. Typy Ruby są generowane na podstawie tego wyniku. Wygenerowany kod jest dość obszerny, bo sprawdza typy w czasie działania, czego Ruby sam nie robi.
Korzystanie z wygenerowanego kodu
Dodaj drzewą klejnotkę i wezwij Root.from_json!(text).
Atrybuty opcjonalne są deklarowane z typem optional i mogą mieć wartość nil.