Come usare XML to Ruby
- Incolla un esempio XML rappresentativo, idealmente uno con tutti i campi opzionali compilati.
- Imposta il nome del tipo radice e decidi se vuoi anche il codice di supporto o solo i tipi.
- Copia il codice Ruby generato nel tuo progetto.
Informazioni su XML to Ruby
Scrivere a mano le classi modello per un grande payload XML è noioso ed è lì che si insinuano gli errori di battitura. Incolla qui un esempio e il generatore ricava la struttura: quali campi esistono, quali sono oggetti, quali sono array e che tipo ha ogni valore. L'output è costituito da classi Dry::Struct con Dry::Types, con helper from_dynamic e to_dynamic.
L'XML viene prima convertito in JSON come nel nostro strumento XML to JSON: gli attributi ricevono il prefisso @_ e il contenuto testuale accanto agli attributi si chiama #text. I tipi Ruby vengono generati da quel risultato. Il codice generato è prolisso perché valida i tipi a runtime, cosa che Ruby stesso non fa.
Usare il codice generato
Aggiungi la gem dry-struct e chiama Root.from_json!(text).
Gli attributi opzionali sono dichiarati con il tipo optional e possono essere nil.