Les extensions constituent le mécanisme qu'utilise un plug-in pour ajouter de nouvelles fonctions à la plateforme. Les extensions ne peuvent être créées arbitrairement. Elles sont en effet déclarées à l'aide d'une spécification claire définie par un point d'extension.
Chaque extension doit se conformer à la spécification du point d'extension qu'elle étend. Chaque point d'extension définit des attributs et des valeurs attendues qui doivent être déclarés par une extension. Ces informations sont enregistrées dans le registre des plug-in de la plateforme. Les fournisseurs de points d'extension interrogent ces valeurs dans le registre. Aussi est-il essentiel de s'assurer que le plug-in a fourni les informations attendues.
Dans sa forme la plus simple, la déclaration d'un point d'extension se résume à quelques lignes. Elle définit l'id et le nom du point d'extension. Toute autre information attendue par le point d'extension est spécifique à celui-ci et documentée ailleurs. (Pour en savoir plus sur les définitions de point d'extension de plateforme, voir Référence de points d'extension de plateforme.)
La documentation de référence est pratique, mais ne se révèle d'aucune aide pour la validation de la spécification d'une extension. C'est pourquoi PDE introduit un schéma des points d'extension décrivant les points d'extension dans un format exploitable pour un traitement automatisé.
Le schéma des points d'extension est un schéma XML valide conforme à la spécification du W3C. Cependant, la spécification complète des schémas XML est très complexe et pratiquement sans objet pour cette utilisation particulière. Pour cette raison, PDE n'utilise qu'un sous-ensemble des fonctions du schéma XML. Chaque schéma de points d'extension est un schéma XML valide, mais PDE n'emploie pas toutes les fonctions disponibles.
La description du point d'extension à l'aide du schéma XML des points d'extension PDE offre les avantages suivants :
PDE emploie un petit sous-ensemble du schéma XML. L'utilisation de l'ensemble des fonctions XML serait en l'occurrence tout bonnement impossible. Le sous-ensemble permet d'établir des relations un à un entre les DTD et les schémas, mais sans les limites des DTD. Voici les principales limitations du schéma des points d'extension PDE :
Si vous écrivez un schéma XML en respectant ces restrictions, vous constaterez que le fichier obtenu ressemble étrangement à une DTD équivalente définissant la même grammaire. L'avantage du schéma réside dans les annotations (documentation et métadonnées). Un autre avantage est que le schéma XML est écrit en XML, ce qui facilité son traitement et sa lecture.
La liste ci-dessus est fournie à titre indicatif. Vous définirez probablement vos schémas xml à l'aide de l'éditeur de schéma PDE qui se chargera de générer le fichier adéquat.