HTML Tutorials |
|
XML Tutorials |
|
Browser Scripting |
|
Server Scripting |
|
.NET (dotnet) |
|
Multimedia |
|
Web Building |
|
Java Tutorials |
|
Programming Langauges |
|
Soft Skills |
|
Database Tutorials |
|
Operating System |
|
Software Testing |
|
SAP Module |
|
Networking Programming |
|
Microsoft Office |
|
Accounting |
|
|
XSD Komplex schreibt Indicators |
Wir k�nnen steuern, WIE Elemente in den Dokumenten mit Indicators verwendet werden sollen.
|
Indicators
|
Es gibt sieben Indicators, wie folgt:
Order indicators:
Occurrence indicators:
Group indicators:
- Group name
- attributeGroup name
|
Order Indicators
|
Order indicators werden benutzt, um den Auftrag des Elements zu definieren.
|
All Indicator
|
The <all> Indicator spezifizieren, da� die Kindelemente in jedem m�glichem Auftrag erscheinen k�nnen und da� jedes Kindelement nur einmal auftreten mu�:
|
<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>
|
|
Anmerkung: Wenn Sie die <all> Anzeige du kann die <minOccurs> Anzeige bis 0 oder 1 einstellen verwenden und die <maxOccurs> Anzeige kann bis 1 nur nur eingestellt werden (das <minOccurs> und das <maxOccurs> werden sp�ter beschrieben
|
Choice Indicator
|
Die <choice> Anzeige spezifizieren, da� entweder ein Kindelement oder -andere auftreten k�nnen:
|
<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>
|
|
Sequence Indicator
|
Die <sequence> Anzeige spezifizieren, da� die Kindelemente in einem spezifischen Auftrag erscheinen m�ssen:
|
<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>
|
|
Occurrence Indicators
|
Occurrence indicator are used to define how often an
element can occur. Note: For all "Order" and "Group"
indicators (any, all, sequence, choice, group name, and group
reference) the default value for maxOccurs and minOccurs is 1.
|
maxOccurs Indicator
|
The <maxOccurs> indicator specify the maximum number of times an element can occur:
|
<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>
|
|
The example above indicate that the "child_name" element can occur a minimum of one
time (the default value for minOccurs is 1) and a maximum of ten times in the "person" element.
|
minOccurs Indicator
|
The <minOccurs> indicator specify the minimum number of times an element can occur:
|
<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>
|
|
Das Beispiel oben zeigen an, da� das �child_name� Element auftreten kann ein Minimum nullzeiten und ein Maximum von 10mal im �Person� Element.
Spitze: Um ein Element erscheinen zu lassen verwenden eine unbegrenzte Anzahl von Zeiten, die maxOccurs= " unbegrenzte " Aussage wie gegeben im folgenden Beispiel:
|
Ein Arbeitsbeispiel:
|
Eine XML Akte genannt �Myfamily.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>
|
|
The XML file above contain a root element named "persons".
Inside this root element we have defined three "person"
element. Each "person" element must contains "full_name"
element and it can contain up to five "child_name" elements.
Here is the schema file called "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>
|
|
Group Indicators
|
Group indicators are used to define related set of elements.
|
Element Groups
|
Elementgruppen werden mit der Gruppe Erkl�rung definiert, wie folgt:
|
<xs:group name="groupname">
...
</xs:group>
|
|
Du mu�t alle, eine Wahl oder Reihenfolge Elemente innerhalb der Gruppe Erkl�rung definieren. Das folgende Beispiel definiert eine Gruppe, die �persongroup� genannt wird, das definiert eine Gruppe Elemente, die in einer genauen Reihenfolge auftreten m�ssen:
|
<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>
|
|
Nachdem du eine Gruppe definiert hast, kannst du sie in einer anderen Definition beziehen, wie folgt:
|
<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>
|
|
Attribute Groups
|
Attributgruppen werden mit der attributeGroup Erkl�rung definiert, wie folgt:
|
<xs:attributeGroup name="groupname">
...
</xs:attributeGroup>
|
|
Das folgende Beispiel definieren eine Attributgruppe, die �personattrgroup� genannt wird:
|
<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>
|
|
Nachdem du eine Attributgruppe definiert hast, kannst du sie in einer anderen Definition beziehen, wie folgt:
|
<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>
|
|
|
|
Keywords:
XSD complex types indicators,visual studio xsd,xsd tutorial,xsd attributes,cdata xsd,xsd xml,xsd namespace,xsd examples,xsd example,sample xsd,xsd attribute,xsd elements,xsd schema,xsd reference
|
|
HTML Quizes |
|
XML Quizes |
|
Browser Scripting Quizes |
|
Server Scripting Quizes |
|
.NET (dotnet) Quizes |
|
Multimedia Quizes |
|
Web Building Quizes |
|
Java Quizes |
|
Programming Langauges Quizes |
|
Soft Skills Quizes |
|
Database Quizes |
|
Operating System Quizes |
|
Software Testing Quizes |
|
SAP Module Quizes |
|
Networking Programming Quizes |
|
Microsoft Office Quizes |
|
Accounting Quizes |
|
|