<?xml version="1.0" encoding="utf-8"?>
<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema">
	<xsd:element name="Universitaet" type="UniInfoTyp" />
	<!-- Definition des Universitaets-Typs -->
	<xsd:complexType name="UniInfoTyp">
		<xsd:sequence>
			<xsd:element name="UniLeitung" maxOccurs="1" minOccurs="1">
				<xsd:complexType>
					<xsd:sequence>
						<xsd:element name="Rektor" type="xsd:string" />
						<xsd:element name="Kanzler" type="xsd:string" />
					</xsd:sequence>
				</xsd:complexType>
			</xsd:element>
			<!-- enthaelt eine Liste der Fakultaeten ... -->
			<xsd:element name="Fakultaeten" maxOccurs="1" minOccurs="1">
				<xsd:complexType>
					<xsd:sequence>
						<xsd:element name="Fakultaet" minOccurs="0" maxOccurs="unbounded" type="FakultaetenTyp" />
					</xsd:sequence>
				</xsd:complexType>
			</xsd:element>
			<!-- ... und eine Uebersicht der Studenten -->
			<xsd:element name="Studenten" maxOccurs="1" minOccurs="1">
				<xsd:complexType>
					<xsd:sequence>
						<xsd:element name="Student" minOccurs="0" maxOccurs="unbounded" type="StudentenTyp" />
					</xsd:sequence>
				</xsd:complexType>
			</xsd:element>
		</xsd:sequence>
		<xsd:attribute name="UnivName" type="xsd:string" />
	</xsd:complexType>
	<!-- Typdefinition fuer Fakultaeten -->
	<xsd:complexType name="FakultaetenTyp">
		<xsd:sequence>
			<xsd:element name="FakName" type="xsd:string" />
			<xsd:element name="ProfessorIn" minOccurs="0" maxOccurs="unbounded">
				<xsd:complexType>
					<xsd:sequence>
						<xsd:element name="Name" type="xsd:string" />
						<xsd:element name="Rang" type="xsd:string" />
						<xsd:element name="Raum" type="xsd:integer" />
						<xsd:element name="Vorlesungen" minOccurs="0" type="VorlInfo" />
						<xsd:element name="Assistenten" maxOccurs="1" minOccurs="0">
							<xsd:complexType>
								<xsd:sequence>
									<xsd:element name="Assistent" minOccurs="0" maxOccurs="unbounded" type="AssistentenTyp" />
								</xsd:sequence>
							</xsd:complexType>
						</xsd:element>
					</xsd:sequence>
					<xsd:attribute name="PersNr" type="xsd:ID" />
				</xsd:complexType>
			</xsd:element>
		</xsd:sequence>
	</xsd:complexType>
	<!-- Typdefinition fuer Vorlesungen -->
	<xsd:complexType name="VorlInfo">
		<xsd:sequence>
			<xsd:element name="Vorlesung" minOccurs="1" maxOccurs="unbounded">
				<xsd:complexType>
					<xsd:sequence>
						<xsd:element name="Titel" type="xsd:string" />
						<xsd:element name="SWS" type="xsd:integer" />
					</xsd:sequence>
					<xsd:attribute name="VorlNr" type="xsd:ID" />
					<xsd:attribute name="Voraussetzungen" type="xsd:IDREFS" />
				</xsd:complexType>
			</xsd:element>
		</xsd:sequence>
	</xsd:complexType>
	<!-- Typdefinition fuer Studenten -->
	<xsd:complexType name="StudentenTyp">
		<xsd:all>
			<xsd:element name="Name" type="xsd:string" maxOccurs="1" minOccurs="1" />
			<xsd:element name="Semester" type="xsd:int" maxOccurs="1" minOccurs="1" />
			<xsd:element name="hoert" minOccurs="0" maxOccurs="1">
				<xsd:complexType>
					<xsd:attribute name="Vorlesungen" type="xsd:IDREFS" />
				</xsd:complexType>
			</xsd:element>
			<xsd:element name="Pruefungen" maxOccurs="1" minOccurs="0">
				<xsd:complexType>
					<xsd:sequence>
						<xsd:element name="Pruefung" minOccurs="1" maxOccurs="unbounded" type="PruefungenTyp" />
					</xsd:sequence>
				</xsd:complexType>
			</xsd:element>
		</xsd:all>
		<xsd:attribute name="MatrNr" type="xsd:ID" />
	</xsd:complexType>
	<!-- Typdefinition fuer Pruefungen -->
	<xsd:complexType name="PruefungenTyp">
		<xsd:attribute name="Pruefer" type="xsd:IDREF" />
		<xsd:attribute name="Vorlesung" type="xsd:IDREF" />
		<xsd:attribute name="Note" type="xsd:decimal" />
	</xsd:complexType>
	<!-- Typdefinition fuer Assistenten -->
	<xsd:complexType name="AssistentenTyp">
		<xsd:sequence>
			<xsd:element name="Name" type="xsd:string" />
			<xsd:element name="Fachgebiet" type="xsd:string" />
		</xsd:sequence>
		<xsd:attribute name="PersNr" type="xsd:string" />
	</xsd:complexType>
</xsd:schema>
