Najlepszy samouczek Wskaźnik XML Schema W 2024 r. W tym samouczku możesz dowiedzieć się
wskaźnik,wskaźnik Zamówienie,wskaźnik występowanie,wskaźnik Grupa,
Wskaźnik XML Schema
Wskaźnikiem może kontrolować stosowanie elementów w trybie dokumentu.
wskaźnik
Istnieje siedem wskaźników:
Wskaźniki zamówienie:
Wskaźnik Występowanie:
Wskaźnik Grupa:
- Nazwa grupy
- Nazwa attributeGroup
wskaźnik Zamówienie
Zamówienie wskaźniki służą do określenia kolejności elementów.
wszystko wskaźnik
<Wszystkie> wskaźnik zgodnie z postanowieniami podelementów może pojawić się w dowolnej kolejności, a każdy element dziecko musi pojawić się tylko raz:
<xs:element name="person">
<xs:complexType>
<xs:all>
<xs:element name="firstname" type="xs:string"/>
<xs:element name="lastname" type="xs:string"/>
</xs:all>
</xs:complexType>
</xs:element>
Uwaga: W przypadku korzystania z <wszystkie> wskaźnik, można umieścić <minOccurs> jest ustawiona na 0 lub 1, ale tylko wskaźnik <maxOccurs> jest ustawiona na 1 (później wyjaśnić <minOccurs> i <maxOccurs>).
dobór wskaźnika
<Choice> Wskaźnik przewiduje podelementu występują lub mogą wystąpić inny element podrzędny (lub drugi):
<xs:element name="person">
<xs:complexType>
<xs:choice>
<xs:element name="employee" type="employee"/>
<xs:element name="member" type="member"/>
</xs:choice>
</xs:complexType>
</xs:element>
Wskaźnik kolejności
<Sekwencja> Element dziecko musi być określone w określonej kolejności:
<xs:element name="person">
<xs:complexType>
<xs:sequence>
<xs:element name="firstname" type="xs:string"/>
<xs:element name="lastname" type="xs:string"/>
</xs:sequence>
</xs:complexType>
</xs:element>
wskaźnik występowanie
Wskaźniki występowania są używane do określania częstotliwości element występuje.
Uwaga: Dla wszystkich "Rozporządzenie" i wskaźnik "Group" (w ogóle, wszystko, wybór, sekwencja , nazwa grupy , a grupa odniesienia), które maxOccurs i minOccurs domyślne to 1.
wskaźnik maxOccurs
Wskaźnik <MaxOccurs> może określić maksymalną liczbę razy, może wystąpić element:
<xs:element name="person">
<xs:complexType>
<xs:sequence>
<xs:element name="full_name" type="xs:string"/>
<xs:element name="child_name" type="xs:string" maxOccurs="10"/>
</xs:sequence>
</xs:complexType>
</xs:element>
Powyższe przykłady pokazują, że element "child_name" dziecko może pojawić się w najmniej "osoba" elementu raz (gdy wartość domyślna minOccurs wynosi 1), pojawia się co najwyżej 10 razy.
wskaźnik minOccurs
<MinOccurs> wskaźnik może wymagać minimalną ilość razy mogą wystąpić element:
<xs:element name="person">
<xs:complexType>
<xs:sequence>
<xs:element name="full_name" type="xs:string"/>
<xs:element name="child_name" type="xs:string"
maxOccurs="10" minOccurs="0"/>
</xs:sequence>
</xs:complexType>
</xs:element>
Powyższe przykłady pokazują, że element "child_name" dziecko może wynosić co najmniej 0 w "osoba" element wydaje co najwyżej 10 razy.
Wskazówka: Aby dokonać liczbę wystąpień elementu nie jest ograniczona, skorzystaj z maxOccurs = "nieograniczony", to stwierdzenie:
Praktyczny przykład:
Nazywany "Myfamily.xml" plik XML:
<?xml version="1.0" encoding="ISO-8859-1"?>
<persons xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:noNamespaceSchemaLocation="family.xsd">
<person>
<full_name>Hege Refsnes</full_name>
<child_name>Cecilie</child_name>
</person>
<person>
<full_name>Tove Refsnes</full_name>
<child_name>Hege</child_name>
<child_name>Stale</child_name>
<child_name>Jim</child_name>
<child_name>Borge</child_name>
</person>
<person>
<full_name>Stale Refsnes</full_name>
</person>
</persons>
Powyżej tego pliku XML zawiera element główny o nazwie "osoby" z. Wewnątrz tego elementu głównego, zdefiniowaliśmy "osoba" elementu trzy. Każdy "osoba" Element musi zawierać "FULL_NAME" elementów, ale może zawierać do 5 "CHILD_NAME" elementu.
Jest to plik schematu "family.xsd":
<?xml version="1.0" encoding="ISO-8859-1"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
elementFormDefault="qualified">
<xs:element name="persons">
<xs:complexType>
<xs:sequence>
<xs:element name="person" maxOccurs="unbounded">
<xs:complexType>
<xs:sequence>
<xs:element name="full_name" type="xs:string"/>
<xs:element name="child_name" type="xs:string"
minOccurs="0" maxOccurs="5"/>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:schema>
wskaźnik Grupa
Wskaźnik grupy kilku porcjach elementy związane z tą definicją.
Element Grupa
Element grupy zdefiniowane przez grupę oświadczył:
<xs:group name="groupname">
pl.
</xs:group>
Należy zdefiniować oświadczenie w grupie wszystkich, wyboru lub elementy sekwencji. Poniższy przykład definiuje grupę o nazwie "persongroup", który definiuje zestaw elementów, które muszą być obecne w zależności od dokładnej kolejności:
<xs:group name="persongroup">
<xs:sequence>
<xs:element name="firstname" type="xs:string"/>
<xs:element name="lastname" type="xs:string"/>
<xs:element name="birthday" type="xs:date"/>
</xs:sequence>
</xs:group>
Po zdefiniowaniu grupy jest zakończona, można zwrócić się do niego w innej definicji:
<xs:group name="persongroup">
<xs:sequence>
<xs:element name="firstname" type="xs:string"/>
<xs:element name="lastname" type="xs:string"/>
<xs:element name="birthday" type="xs:date"/>
</xs:sequence>
</xs:group>
<xs:element name="person" type="personinfo"/>
<xs:complexType name="personinfo">
<xs:sequence>
<xs:group ref="persongroup"/>
<xs:element name="country" type="xs:string"/>
</xs:sequence>
</xs:complexType>
grupa nieruchomości
grupy zdefiniowane przez oświadczenie attributeGroup Atrybut:
<xs:attributeGroup name="groupname">
pl.
</xs:attributeGroup>
Poniższy przykład definiuje grupę właściwość o nazwie "personattrgroup" stanowi:
<xs:attributeGroup name="personattrgroup">
<xs:attribute name="firstname" type="xs:string"/>
<xs:attribute name="lastname" type="xs:string"/>
<xs:attribute name="birthday" type="xs:date"/>
</xs:attributeGroup>
Po zdefiniowaniu kompletny zestaw atrybutów, można odwoływać się do niej w innej definicji, tak jak poniżej:
<xs:attributeGroup name="personattrgroup">
<xs:attribute name="firstname" type="xs:string"/>
<xs:attribute name="lastname" type="xs:string"/>
<xs:attribute name="birthday" type="xs:date"/>
</xs:attributeGroup>
<xs:element name="person">
<xs:complexType>
<xs:attributeGroup ref="personattrgroup"/>
</xs:complexType>
</xs:element>