<?xml version="1.0" encoding="UTF-8"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
	<!-- Editor: Gregor L{\"a}mmel, VSP, Berlin Institute of Technology -->
	<!-- Description of grips config -->


	<!-- root element -->
	<xs:element name="grips_config" type="grips_config_type"></xs:element>
	<!-- root element definition -->
	<xs:complexType name="grips_config_type">
		<xs:sequence>
			<xs:element name="networkFile" type="fileType" minOccurs="1"
				maxOccurs="1" />
			<xs:element name="mainTrafficType" type="mainTrafficTypeType" default="vehicular"></xs:element>
			<xs:element name="evacuationAreaFile" type="fileType"
				minOccurs="1" maxOccurs="1" />
			<xs:element name="populationFile" type="fileType"
				minOccurs="1" maxOccurs="1" />
			<xs:element name="outputDir" type="fileType" minOccurs="1"
				maxOccurs="1" />
			<xs:element name="sampleSize" type="sampleSizeType"
				minOccurs="1" maxOccurs="1">
			</xs:element>
			<xs:element name="departureTimeDistribution" type="departureTimeDistributionType"
				minOccurs="1" maxOccurs="1">
			</xs:element>
		</xs:sequence>

	</xs:complexType>

	<xs:simpleType name="mainTrafficTypeType">
		<xs:restriction base="xs:string">
			<xs:enumeration value="vehicular" />
			<xs:enumeration value="pedestrian" />
			<xs:enumeration value="mixed" />
		</xs:restriction>
	</xs:simpleType>

	<xs:complexType name="departureTimeDistributionType">
		<xs:sequence>
			<xs:element name="distribution" type="distributionType"></xs:element>
			<xs:element name="sigma" type="xs:double"></xs:element>
			<xs:element name="mu" type="xs:double"></xs:element>
			<xs:element name="earliest" type="xs:double"></xs:element>
			<xs:element name="latest" type="xs:double"></xs:element>
		</xs:sequence>

	</xs:complexType>

	<xs:simpleType name="distributionType">
		<xs:restriction base="xs:string">
			<xs:enumeration value="normal"></xs:enumeration>
			<xs:enumeration value="log-normal"></xs:enumeration>
			<xs:enumeration value="dirac-delta"></xs:enumeration>
		</xs:restriction>
	</xs:simpleType>

	<xs:simpleType name="sampleSizeType">
		<xs:restriction base="xs:double">
			<xs:minExclusive value='0' />
			<xs:maxInclusive value='1' />
		</xs:restriction>

	</xs:simpleType>

	<xs:complexType name="fileType">
		<xs:sequence>
			<xs:element name="inputFile" type="xs:token" />
		</xs:sequence>
	</xs:complexType>


</xs:schema>
