Linguaggio di descrizione generico
Il linguaggio GDL (Generic Description Language) definisce una sintassi con cui esprimere dati strutturati gerarchicamente. GDL consente anche ai produttori e ai consumer di definire in modo cooperativo uno schema che può essere usato per standardizzare il modo in cui vengono espressi i dati. Questo schema può essere usato per convalidare la struttura e il formato dei dati e per guidare la trasformazione dei dati in un altro formato, ad esempio XML.
Microsoft fornisce il parser GDL e i filtri parser associati, che accedono ed elaborano i dati da un file di dati di origine e li converteno in dati gerarchici definiti dalla sintassi GDL . GDL supporta set di dati complessi, schemi orientati agli oggetti che definiscono la struttura e l'elaborazione di questi dati e un meccanismo per semplificare l'estensione da parte dei fornitori.
GDL è progettato come superset del linguaggio Generic Printer Description (GPD), usato per descrivere le funzionalità della stampante per minidriver Unidrv.
GDL presenta le funzionalità principali seguenti:
GDL è compatibile con le versioni precedenti con il formato legacy GPD.
GDL è arbitrariamente estendibile. Vale a dire, chiunque può aggiungere attributi e costrutti personalizzati.
GDL usa modelli per fornire strutture di dati.
GDL usa direttive del preprocessore e configurazione basata su parametri per fornire collegamenti e condizioni flessibili.
GDL analizza l'input dei dati e restituisce un flusso XML al client.
Quando i dati in un file di origine GDL vengono analizzati dal parser GDL, il parser gestisce una struttura di dati gerarchica. Il client accede indirettamente alla struttura dei dati analizzata tramite uno snapshot. Lo snapshot è una rappresentazione dei dati in uno stato specifico. Questo stato viene specificato tramite una configurazione. Nell'implementazione corrente del parser GDL, lo snapshot viene espresso come XML ed è possibile accedere ai dati nello snapshot usando gli strumenti XML.
Oltre alle voci di dati, il parser GDL riconosce le parole chiave (denominate direttive). Le direttive includono categorie quali preprocessori, macro, spazi dei nomi, modelli e configurazioni.
Le sezioni seguenti forniscono altre informazioni su GDL: