# XML-Schema: Beliebige Unterelemente zulassen



## JDad (27. Mrz 2007)

Hallo zusammen!

Ich habe folgendes Problem:
Gegeben ist eine XML-Datei:


```
<root>
	<Kopf>
		<foo>123</foo>
		<bar>myFooBar</bar>
	</Kopf>
	<Body>
                
	</Body>
</root>
```

Gesucht ist eine Schema-Datei. Mein Problem besteht nun darin, dass ich nicht weiss, wie ich den Teil im 'Body' in der Schema-Datei definieren kann. Wie im Kommentar zu sehen ist, sollen Elemente mit beliebigen Namen vorkommen dürfen, welche jedoch vom Typ 'String' sein müssen.
Der Ansatz meiner Schema-Datei ist wie folgt:


```
<?xml version="1.0" encoding="UTF-8"?>
<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema"> 
	<xsd:element name="root">
    	<xsd:complexType>
	       	<xsd:sequence>
	         	<xsd:element name="Kopf" type="kopfType"/>
				<xsd:element name="Body" type="bodyType"/>
	       </xsd:sequence>
    	</xsd:complexType>
	</xsd:element>
	
	<xsd:complexType name="kopfType"> 
      <xsd:sequence> 
         <xsd:element name="foo" type="xsd:int" /> 
         <xsd:element name="bar" type="xsd:string" /> 
      </xsd:sequence> 
   </xsd:complexType> 

	<xsd:complexType name="bodyType"> 
      <xsd:sequence> 
         
             
 
      </xsd:sequence> 
   </xsd:complexType> 
</xsd:schema>
```

Weiss jemand eine mögliche Lösung?


----------



## SlaterB (27. Mrz 2007)

geht
 <xsd:element type="xsd:string" /> 
nicht?

http://www.w3.org/TR/xmlschema-1/#Element_Declaration_details


----------



## JDad (27. Mrz 2007)

Hallo SlaterB!

Danke für die schnelle Antwort!

Das sieht gar nicht so schlecht aus! Ich werde es mal gleich testen.

Das Problem ist, dass in meinem Fall die Anzah derl im Body-Teil vofkommenden Elemente auch unbestimmt ist.

Wie kann ich es berücksichtigen?


----------



## SlaterB (27. Mrz 2007)

was hat das mit dem Namen zu tun?
da gibts doch auch Felder für min/ max,
und/ oder Strukturen wie Liste usw.


----------



## JDad (28. Mrz 2007)

Bei der Deklaration eines Elements muss doch das Attribut 'name' angegeben werden, oder sehe ich das falsch?


```
<element name="asdf" type="string"/>
```

Was tun, wenn dieser nicht bekannt ist?

Meine XML-Datei wird dynamisch erzeugt, wobei die Namen der Elemente nicht festgelegt sind.
Es können also unterschiedliche Elemente auftauchen, die alle vom Typ String sind!
Auch deren Anzahl ist unbestimmt. 

Die unbestimmte Anzahl kann durch die Angabe von maxOccurs="unbounded" definiert werden.


----------

