Druck-Version
Deutsch Nederlands English
Inhaltsverzeichnis
Teile: Teil: XML Teil: PHP Quellenverzeichnis
Pfad: > Teil: XML > XML-Schema > Element-Inhalte
Benachbarte Abschnitte: Komplexe Typen simplen Typs Gemischte Inhalte Leerer Inhalt anyType
1.3.5.2. Gemischte Inhalte

Folgendes Beispiel illustriert die Verwendung von Kindelementen gemischt mit Zeichendaten.

Beispiel 33: Gemischte Inhalte eines Elements
<letterBody> 
<salutation>Dear Mr.<name>Robert Smith</name>.</salutation> 
Your order of <quantity>1</quantity> <productName>Baby  
Monitor</productName> shipped from our warehouse on  
<shipDate>1999-05-21</shipDate>. <!-- u.s.w. -->  
</letterBody> 

Um diesen Auszug eines Instanzdokuments zu ermöglichen, müssen die verwendeten Elemente wie folgt deklariert werden.

Beispiel 34: Deklaration von Elementen mit gemischtem Inhalt
<xsd:element name="letterBody"> 
	<xsd:complexType mixed="true"> 
		<xsd:sequence> 
			<xsd:element name="salutation"> 
				<xsd:complexType mixed="true"> 
					<xsd:sequence> 
						<xsd:element name="name" type="xsd:string"/> 
					</xsd:sequence> 
				</xsd:complexType> 
			</xsd:element> 
			<xsd:element name="quantity" type="xsd:positiveInteger"/> 
			<xsd:element name="productName" type="xsd:string"/> 
			<xsd:element name="shipDate" type="xsd:date" 
														minOccurs="0"/> 
			<!-- u.s.w. --> 
		</xsd:sequence> 
	</xsd:complexType> 
</xsd:element>  

Sämtliche Elemente werden wie gewohnt deklariert. Um nun Zeichendaten innerhalb eines Elements zu ermöglichen, wird das Attribut mixed in der Typdefinition auf "true" gesetzt.

Das mixed-Modell in XML-Schema unterscheidet sich grundlegend vom mixed-Modell in DTD. In XML-Schema müssen die Reihenfolge und die Anzahl der Kindelementen in einem Instanzdokument übereinstimmen mit der entsprechenden Spezifizierung. Im XML 1.0 DTD-Modell jedoch, kann die Reihenfolge und die Anzahl der Kindelemente nicht vorgegeben werden.