Jeśli w pliku XML są elementy typu złożonego, obsługa atrybutu
xsi:type w edytorze XML umożliwia wybranie jednego z różnych typów
złożonych pochodnych względem niego.
Specyfikacja
schematu XML umożliwia tworzenie typów pochodnych przez rozszerzenie.
Zapoznaj się z poniższymi przykładowymi krokami:
- Utwórz schemat XML, a następnie utwórz dla niego typ złożony o nazwie Adres.
- Dodaj kilka podstawowych elementów do typu Adres, na przykład elementy
nazwa_ulicy oraz miasto.
- Utwórz (przez rozszerzenie) dwa nowe typy złożone pochodzące z typu Adres: Adres_USA oraz Adres_PL.
- Do typu Adres_USA dodaj nowy element o nazwie stan. Do
typu Adres_PL dodaj natomiast nowy element o nazwie kod_pocztowy.
- Utwórz dwa kolejne elementy, adres_rachunku oraz adres_dostawy, będące
elementami typu Adres.
- Przy tworzeniu dokumentu instancji XML dla elementu takiego jak
adres_rachunku lub Adres, atrybut
xsi:type zostanie automatycznie do niego dodany. Na przykład:
<adres_rachunku xsi:type="ipo:Adres">
Atrybut xsi:type jest wykorzystywany do zidentyfikowania pochodnych typów złożonych (a także typów złożonych, z których zostały utworzone inne).
- W widoku Projekt edytora XML widoczna będzie lista, z której można wybrać odpowiednią definicję typu
(Adres, Adres_USA lub
Adres_PL). Wspomagana edycja modelu treści będzie realizowana w oparciu o wybraną definicję. Jeśli na przykład wybierzesz
Adres_USA, element adres_rachunku będzie mógł zawierać
element stan, ale nie będzie mógł zawierać elementu kod_pocztowy.
W przykładowym dokumencie XML o nazwie "Edytowanie i sprawdzanie
poprawności plików XML" przedstawiono obsługę xsi:type.
Więcej informacji na temat xsi:type zawiera sekcja Użycie typów pochodnych w dokumentach instancji (Using Derived Types in Instance Documents) w dokumencieXML Schema Część 0: Elementarz (XML Schema Part 0: Primer).
Więcej informacji o semantyce sprawdzania poprawności stosowanej wspólnie z xsi:type zawiera sekcja Język znaczników powiązany ze schematami w sprawdzanych dokumentach (Schema-Related Markup in Documents Being Validated) w dokumencie XML Schema Część 1: Struktury (XML Schema Part 1: Structures).