Schéma bodu rozšíření

Rozšíření představují klíčový mechanizmus, který modul plug-in používá k přidání nových funkcí do platformy. Rozšíření nelze libovolně vytvářet.  Rozšíření jsou deklarována pomocí jasných specifikací definovaných bodem rozšíření.

Jednotlivá rozšíření musí být v souladu se specifikacemi bodů rozšíření, které rozšiřuje.  Jednotlivé body rozšíření definují atributy a očekávané hodnoty musí být deklarovány rozšířením.  Tato informace je udržována v registru modulu plug-in platformy.  Poskytovatelé bodů rozšíření odesílají z registru dotazy na tyto hodnoty, takže je třeba zajistit, aby modul plug-in poskytl požadované informace.

V nejzákladnějším formuláři je deklarace bodu rozšíření velmi jednoduchá.  Definuje ID a název bodu rozšíření.  Všechny ostatní informace očekávané bodem rozšíření jsou specifické pro daný bod rozšíření a jsou zdokumentovány v jiné části.  (Definice bodů rozšíření platformy naleznete v tématu Referenční příručka bodů rozšíření platformy.)

Referenční dokumentace je užitečná, ale neumožňuje žádnou programovou nápovědu pro ověření specifikace rozšíření. Z tohoto důvodu zavádí prostředí PDE schéma bodu rozšíření, které popisuje body rozšíření ve formátu vyhovujícím automatickému zpracování.

Schéma bodu rozšíření je platné schéma XML, jak je definováno specifikací W3C. Úplná specifikace schématu XML je velmi složitá a pro tento účel z větší části není nutná. Z tohoto důvodu používá prostředí PDE pouze podmnožinu funkcí schématu XML.  Každé schéma bodu rozšíření je platné schéma XML, ale prostředí PDE nepoužívá všechny dostupné funkce.

Výhody schémat bodů rozšíření

Existuje mnoho výhod popisu bodu rozšíření pomocí schématu XML bodu rozšíření prostředí PDE:

  1. Gramatika bodu rozšíření používá prvky, atributy a typy, které mají být formálně vyjádřeny. Tyto informace jsou využívány nástroji pro ověření rozšíření nebo nástroji, které poskytují pomoc při vytváření rozšíření.
  2. Schéma XML poskytuje možnost vložit do dokumentace poznámky, což je podobná funkce jako dokumentace Javadoc ve zdroji v jazyce Java. Tento mechanizmus úzce svazuje text platných prvků a atributů s deklarací těchto prvků a atributů. Díky tomu je udržování synchronizované dokumentace snazší, protože odebráním atributu odeberete také veškerou dokumentaci daného atributu.  Referenční dokument není třeba aktualizovat.
  3. Referenční dokumentaci je možné vygenerovat.  Prostředí PDE poskytuje nástroj, který sleduje změny ve schématech bodů rozšíření a aktualizuje okamžitě referenční dokumentaci.
  4. Můžete poskytnout další metadata pro bod rozšíření, která mohou být použita nástroji zpracovávajícími schéma.  Prostředí PDE používá tento mechanizmus pro přidání dalších informací o prvcích a atributech. Jestliže je například atribut označen jako "Java", může prostředí PDE poskytovat pomoc při nastavování hodnoty tohoto atributu prostřednictvím interaktivní spolupráce s funkcemi platformy Java.

Omezení podpory schématu XML prostředí PDE

Prostředí PDE používá malou podmnožinu schématu XML.  Použité celé sady funkcí schématu XML by bylo v tomto konkrétním případě zcela nadbytečné. Podmnožina umožňuje mapování definic DTD ke schématům téměř v poměru 1->1, ale bez omezení, která platí pro definice DTD. Zde jsou uvedeny hlavní omezení schématu bodu rozšíření prostředí PDE:

  1. Jsou povoleny pouze globální deklarace prvků.
  2. Jsou povoleny pouze lokální deklarace atributů.  Globální atributy nelze deklarovat.
  3. Podporovány jsou následující kompozitory: vše, posloupnost, volba a skupina.
  4. Neexistuje podpora globálního typu.  Typy musí být deklarovány a okamžitě použity.
  5. Atributy mohou obsahovat pouze typy řetězec a logický typ.
  6. Jestliže je atributu typu řetězec, je podporováno pouze omezení výčtu.

Jestliže vytvoříte schéma XML pomocí těchto omezení, bude výsledný soubor překvapivě velmi podobný ekvivalentní definici DTD, která definuje stejnou gramatiku. Výhodou schématu jsou anotace (jak dokumentace, tak i metadata). Další výhoda spočívá v tom, že schéma XML samotné je napsáno ve formátu XML, což umožňuje snazší zpracování a načtení.

Výše uvedený seznam slouží pouze pro referenci. S největší pravděpodobností budete definovat schéma XML pomocí editoru schémat prostředí PDE, který zajistí vygenerování správného souboru.