Le estensioni costituiscono il meccanismo chiave utilizzato da un plug-in per aggiungere nuove funzioni alla piattaforma. Le estensioni non possono essere create arbitrariamente. Queste vengono dichiarate utilizzando una chiara specifica definita mediante un punto di estensione.
Ogni estensione deve essere conforme alla specifica del punto di estensione che estende. Ogni punto di estensione definisce attributi e valori previsti che devono essere dichiarati da un'estensione. Queste informazioni vengono conservate nel registro di plug-in della piattaforma. I provider dei punti di estensione effettuano la query di tali valori dal registro, quindi, è importante assicurarsi che il proprio plug-in abbia fornito le informazioni previste.
In un form rudimentale, una dichiarazione di punto di estensione è molto semplice. Definisce l'id e il nome del punto di estensione. Qualsiasi altra informazione prevista dal punto di estensione è specifica per tale punto di estensione ed è documentata in un altro punto. Per le definizioni dei punti di estensione della piattaforma, fare riferimento alla sezione Riferimento dei punti di estensione della piattaforma.
La documentazione di riferimento è utile, ma non fornisce alcun supporto in forma di programmazione per la convalida della specifica di un'estensione. Per questo motivo, il PDE introduce uno schema di punti di estensione che descrive i punti di estensione in un formato adatto per l'elaborazione automatizzata.
Lo schema di punti di estensione è un valido schema XML, come definito dalla specifica W3C. Tuttavia la specifica completa dello schema XML è molto complessa e, per la maggior parte, non necessaria per questo uso particolare. Per questo motivo, il PDE utilizza solo un sottoinsieme delle funzioni dello schema XML. Ogni schema di punti di estensione rappresenta un valido schema XML, ma il PDE non ne utilizzerà tutte le funzioni disponibili.
Ci sono molti vantaggi nella descrizione del proprio punto di estensione utilizzando lo schema XML dei punti di estensione del PDE:
Il PDE utilizza una piccola parte dello schema XML. L'utilizzo di tutte le funzioni dello schema XML completo sarebbe eccessivo in questo particolare caso. Il sottoinsieme consente quasi un mapping 1->1 da DTD a schemi, senza limitazioni DTD. Di seguito sono riportate le principali limitazioni dello schema dei punti di estensione del PDE:
Se si scrive uno schema XML utilizzando queste restrizioni, si noterà che il file risultante assomiglierà molto a una DTD equivalente che definisce la stessa grammatica. Il vantaggio dello schema è nelle annotazioni (documentazione e metadati). Un ulteriore vantaggio consiste nel fatto che lo schema XML è a sua volta scritto in codice XML, rendendone molto più semplice l'elaborazione e la consultazione.
L'elenco precedente è solo di riferimento. Probabilmente l'utente definirà uno schema XML utilizzando l'editor di schema PDE, che garantirà la creazione del file corretto.