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 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 estar declarados por uma extensão. Essas informações são mantidas no registro de plug-in da plataforma. Os fornecedores do ponto de extensão consultam esses valores a partir do registro, por isso é importante garantir que o plug-in tenha fornecido as informações esperadas.
Na mais rudimentar da formas, uma declaração de ponto de extensão é muito simples. Ela define o id e o nome do ponto de extensão. Qualquer outra informação esperada pelo ponto de extensão é específica àquele ponto de extensão e é documentada em qualquer outro lugar. (Consulte aReferência do Ponto de Extensão da Plataforma para obter as definições do 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 somente um subconjunto de recursos do esquema XML. Cada esquema de 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 subconjunto pequeno de esquema XML. Utilizando o conjunto dos recursos do esquema XML completo seria uma grande destruição nesse caso. 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.