Použití xsi:type

Obsahuje-li váš soubor XML prvky komplexního typu, umožní vám podpora xsi:type v editoru XML vybírat mezi daným komplexním typem a veškerými ostatními z tohoto typu odvozenými komplexními typy.

Specifikace schématu XML umožňuje odvozovat typy rozšiřováním. Například můžete mít určité schéma XML a vytvořit pro ně komplexní typ s názvem Address. Poté přidáte určité základní prvky do prvku Address, například streetName a city.

Poté z typu Address odvodíte (rozšířením) dva nové komplexní typy - USAddress a UKAddress. Přidáte nový prvek do typu USAddress s názvem state a dále do typu UKAddress přidáte nový prvek s názvem postcode.

Po provedení těchto úkonů vytvoříte dva další prvky - billTo a shipTo - s použitím typu Address.

Vytvoříte-li dokument instance XML pro určitý prvek, například billTo nebo Address, bude do něj automaticky přidán atribut xsi:type. Například:

<billTo xsi:type="ipo:Address">

Atribut xsi:type se používá k identifikaci odvozených komplexních typů (a rovněž komplexních typů, jež jsou zdrojem odvození).

V pohledu Návrh v editoru XML se zobrazí seznam, který vám umožní vybrat vhodnou definici typu (Address, USAddress nebo UKAddress). Řízená editace modelu obsahu zohlední vámi zvolenou definici typu. Pokud zvolíte například USAddress, váš prvek billTo může obsahovat prvek state, ale nesmí obsahovat prvek postcode.

Ukázka XML "Úprava a ověřování platnosti souborů XML" předvádí podporu xsi:type.

Další informace o prvku xsi:type viz sekce Použití odvozených typů v dokumentech instancí v Schéma XML - část 0: Základy.

Další informace o ověřování sémantiky při použití xsi:type viz sekce Markup související se schématem v dokumentech s ověřovanou platností v Schéma XML - část 1: Struktury