Extensões são o mecanismo-chave que um plug-in utiliza para incluir novos recursos à plataforma. As extensões não podem ser criadas arbitrariamente. Elas são declaradas utilizando uma especificação clara definida por um ponto de extensão.
Cada extensão deve estar em conformidade com a especificação do ponto de extensão que está estendendo Cada ponto de extensão define atributos e valores esperados que devem ser declarados por uma extensão. Essas informações são mantidas no registro de plug-in da plataforma. Os provedores de ponto de extensão consultam esses valores do registro, portanto é importante assegurar que o plug-in tenha fornecido as informações esperadas.
Na forma mais rudimentar, uma declaração de ponto de extensão é muito simples. Ela defina o ID e nome do ponto de extensão. Quaisquer outras informações esperadas pelo ponto de extensão são específicas desse ponto de extensão e são documentadas em outra parte. (Consulte a Referência de Pontos de Extensão da Plataforma para as definições de ponto de extensão da plataforma.)
A documentação de referência é útil, mas não ativa qualquer ajuda programática para validar a especificação de uma extensão. Por essa razão, o PDE apresenta um esquema de ponto de extensão que descreve os pontos de extensão em um formato que corresponde ao processamento automático.
O esquema do ponto de extensão é um esquema XML válido como definido pela especificação W3C. Entretanto, a especificação do esquema XML completo é muito complexa e, na maioria das vezes, desnecessária para essa utilização em particular. Por essa razão, o PDE utiliza apenas um subconjunto dos recursos do esquema XML. Cada esquema do ponto de extensão é um esquema XML válido, mas o PDE não utiliza todos os recursos disponíveis.
Há vários benefícios para descrever o ponto de extensão utilizando o esquema XML do ponto de extensão do PDE:
O PDE utiliza um pequeno subconjunto do esquema XML. Utilizar os recursos completos do esquema XML seria um excesso nesse caso específico. O subconjunto permite quase mapeamento 1->1 dos DTDs para os esquemas, mas sem limitações de DTD. A seguir estão as limitações principais do esquema do ponto de extensão PDE:
Se você gravar um esquema XML utilizando essas restrições, você observará que o arquivo de resultado parece muito com um DTD equivalente que define a mesma gramática. A vantagem do esquema está nas anotações (da documentação e metadados). Uma vantagem adicional é que o esquema XML é gravado por ele mesmo em XML, que faz com que seu processamento e leitura seja muito mais fácil.
A lista acima é somente para referência. Você é muito mais capaz de definir um esquema XML utilizando o editor de esquema PDE que cuidará da geração do arquivo correto.