YAML, che sta per "YAML Ain't Markup Language", è un linguaggio per la rappresentazione delle informazioni. Nasce come risposta, leggera e leggibile, a XML ed è molto utilizzato nel mondo Ruby soprattutto per la costruzione di file di configurazione. A differenza del XML, per definire delle strutture, non si utilizzano i tag annidati ma bensì gli spazi dell'indentazione. La libreria per la gestione del formato YAML è inserita nella distribuzione standard di Ruby quindi per utilizzarla basta un semplice
require 'yaml'
Uno dei punti di forza è la leggibilità dei file prodotti, ad esempio trasformando in YAML un nostro oggetto Cd otteniamo:
cd = Cd.new('Lepidoptera', 'Fursaxa', 2006) cd.to_yaml --- !ruby/object:Cd anno: 2006 autore: Fursaxa titolo: Lepidoptera
Nel nostro esempio, dovendo scrivere i dati su file, abbiamo utilizzato YAML::dump(). Anche per il parsing dei file YAML sono disponibili vari metodi oltre a load_documents
utilizzato nell'esempio. Per maggiori dettagli ed esempi rimando ad un prossimo capitolo interamente dedicato a XML e YAML.