<?xml version="1.0" encoding="UTF-8"?>
<!--Delft FEWS (Copyright 2003 WL | Delft Hydraulics) -->
<schema xmlns:fews="http://www.wldelft.nl/fews" xmlns="http://www.w3.org/2001/XMLSchema" targetNamespace="http://www.wldelft.nl/fews" elementFormDefault="qualified" attributeFormDefault="unqualified"
		version="1.0">
	<!--    -->
	<complexType name="emptyElement"/>
	<simpleType name="positiveInteger">
		<restriction base="integer">
			<minInclusive value="1"/>
		</restriction>
	</simpleType>
	<simpleType name="positiveDouble">
		<restriction base="double">
			<minExclusive value="0"/>
		</restriction>
	</simpleType>
	<simpleType name="doubleBetweenZeroAndOne">
		<restriction base="double">
			<minInclusive value="0"/>
			<maxInclusive value="1"/>
		</restriction>
	</simpleType>
	<simpleType name="positiveFloat">
		<restriction base="float">
			<minExclusive value="0"/>
		</restriction>
	</simpleType>
	<simpleType name="idStringType">
		<restriction base="string">
			<minLength value="1"/>
			<maxLength value="64"/>
		</restriction>
	</simpleType>
	<simpleType name="longTermStatisticFunctionEnumStringType">
		<restriction base="string">
			<enumeration value="MIN"/>
			<enumeration value="MAX"/>
			<enumeration value="PERCENTILEEXCEEDENCE"/>
		</restriction>
	</simpleType>
	<simpleType name="nonEmptyStringType">
		<restriction base="string">
			<minLength value="1"/>
		</restriction>
	</simpleType>
	<complexType name="ColumnDisplayNameAnnotatedIdType">
		<simpleContent>
			<extension base="fews:idStringType">
				<attribute name="columnDisplayName" type="string" use="optional">
					<annotation>
						<documentation>Since 2023.02 Column name used in the tabular config file display</documentation>
					</annotation>
				</attribute>
			</extension>
		</simpleContent>
	</complexType>
	<simpleType name="maxLength64StringType">
		<restriction base="string">
			<maxLength value="64"/>
		</restriction>
	</simpleType>
	<simpleType name="columnSeparatorEnumStringType">
		<restriction base="string">
			<enumeration value=";"/>
			<enumeration value=","/>
			<enumeration value="|"/>
			<enumeration value="&#x20;">
				<annotation>
					<documentation>Represents space character</documentation>
				</annotation>
			</enumeration>
			<enumeration value="&#009;">
				<annotation>
					<documentation>Represents tab character</documentation>
				</annotation>
			</enumeration>
		</restriction>
	</simpleType>
	<simpleType name="decimalSeparatorEnumStringType">
		<restriction base="string">
			<enumeration value="."/>
			<enumeration value=","/>
		</restriction>
	</simpleType>
	<!-- -->
	<simpleType name="idIntType">
		<restriction base="int"/>
	</simpleType>
	<!--    -->
	<simpleType name="versionStringType">
		<restriction base="string">
			<minLength value="1"/>
			<maxLength value="64"/>
		</restriction>
	</simpleType>
	<simpleType name="piVersionString">
		<restriction base="string">
			<enumeration value="1.2">
				<annotation>
					<documentation>
						initial version.
					</documentation>
				</annotation>
			</enumeration>
			<enumeration value="1.3">
				<annotation>
					<documentation>
						comment added to pi_timeseries.xsd
					</documentation>
				</annotation>
			</enumeration>
			<enumeration value="1.4">
				<annotation>
					<documentation>
						qualifierId, ensembleId, ensembleMemberIndex added to pi_timeseries.xsd
					</documentation>
				</annotation>
			</enumeration>
			<enumeration value="1.5">
				<annotation>
					<documentation>
						forecastTime added to pi_timeseries.xsd
					</documentation>
				</annotation>
			</enumeration>
			<enumeration value="1.6">
				<annotation>
					<documentation>
						forecastTime added to pi_profiles.xsd
					</documentation>
				</annotation>
			</enumeration>
			<enumeration value="1.7">
				<annotation>
					<documentation>
						location coordinates added to pi_timeseries.xsd
					</documentation>
				</annotation>
			</enumeration>
			<enumeration value="1.8">
				<annotation>
					<documentation>
						log level to pi_run.xsd
					</documentation>
				</annotation>
			</enumeration>
			<enumeration value="1.9">
				<annotation>
					<documentation>
						added pi_timeseriesparameters.xsd, pi_filters.xsd included pi_locations.xsd in build. altered pi_locations.xsd
					</documentation>
				</annotation>
			</enumeration>
			<enumeration value="1.10">
				<annotation>
					<documentation>
						added user and ensembleMemberId to pi_timeseries.xsd
					</documentation>
				</annotation>
			</enumeration>
			<enumeration value="1.11">
				<annotation>
					<documentation>
						Since 2013.01. FEWS-8624. Added flag source to pi_timeseries.xsd
					</documentation>
				</annotation>
			</enumeration>
			<enumeration value="1.12">
				<annotation>
					<documentation>
						Since 2013.02. FEWS-8876/FEWS-8821 Added comments and flags to pi_ratingcurves.xsd
					</documentation>
				</annotation>
			</enumeration>
			<enumeration value="1.13">
				<annotation>
					<documentation>
						Since 2014.01 added header properties to pi_timeseries.xsd
					</documentation>
				</annotation>
			</enumeration>
			<enumeration value="1.14">
				<annotation>
					<documentation>
						Since 2014.02 added header threshold group info to pi_timeseries.xsd
					</documentation>
				</annotation>
			</enumeration>
			<enumeration value="1.15">
				<annotation>
					<documentation>Since 2015.01 added parent location id to pi_locations.xsd</documentation>
				</annotation>
			</enumeration>
			<enumeration value="1.16">
				<annotation>
					<documentation>Since 2015.01 added statistics to pi_timeseries.xsd</documentation>
				</annotation>
			</enumeration>
			<enumeration value="1.17">
				<annotation>
					<documentation>Since 2015.02 added moduleInstanceId to pi_timeseries.xsd</documentation>
				</annotation>
			</enumeration>
			<enumeration value="1.18">
				<annotation>
					<documentation>Since 2015.02 added times attribute to time step</documentation>
				</annotation>
			</enumeration>
			<enumeration value="1.19">
				<annotation>
					<documentation>Since version 1.19. Used for flag source column names and their custom flag source values. For example a flag source column named 'A' that has a custom flag source
						value 'OK' will result
						in an attribute:
						fs:A="OK"
					</documentation>
				</annotation>
			</enumeration>
			<enumeration value="1.20">
				<annotation>
					<documentation>Since 2015.02 added approved time to header</documentation>
				</annotation>
			</enumeration>
			<enumeration value="1.21">
				<annotation>
					<documentation>Since 2016.01 added samples support</documentation>
				</annotation>
			</enumeration>
			<enumeration value="1.22">
				<annotation>
					<documentation>Since 2016.02 added threshold labels to pi_timeseries.xsd</documentation>
				</annotation>
			</enumeration>
			<enumeration value="1.23">
				<annotation>
					<documentation>Since 2016.02 a time / value range to event to pi_timeseries.xsd</documentation>
				</annotation>
			</enumeration>
			<enumeration value="1.24">
				<annotation>
					<documentation>Since 2017.02 added minutes attribute to time step</documentation>
				</annotation>
			</enumeration>
		</restriction>
	</simpleType>
	<!--    -->
	<simpleType name="nameStringType">
		<restriction base="string">
			<minLength value="1"/>
		</restriction>
	</simpleType>
	<!--    -->
	<simpleType name="directoryStringType">
		<restriction base="string">
			<maxLength value="255"/>
			<pattern value="([^\s])|([^\s].*[^\s])"/>
		</restriction>
	</simpleType>
	<!--    -->
	<simpleType name="fileStringType">
		<restriction base="string">
			<maxLength value="255"/>
			<pattern value="([^\s])|([^\s].*[^\s])"/>
		</restriction>
	</simpleType>
	<simpleType name="nonNegativeDouble">
		<restriction base="double">
			<minInclusive value="0"/>
		</restriction>
	</simpleType>
	<simpleType name="nonNegativeIntType">
		<restriction base="int">
			<minInclusive value="0"/>
		</restriction>
	</simpleType>
	<simpleType name="twoOrMoreIntType">
		<restriction base="int">
			<minInclusive value="2"/>
		</restriction>
	</simpleType>
	<simpleType name="percentageType">
		<restriction base="integer">
			<minInclusive value="0"/>
			<maxInclusive value="100"/>
		</restriction>
	</simpleType>
	<simpleType name="floatPercentageType">
		<restriction base="float">
			<minInclusive value="0"/>
			<maxInclusive value="100"/>
		</restriction>
	</simpleType>
	<complexType name="percentileRangeComplexType">
		<sequence>
			<element name="min" type="fews:percentageType">
				<annotation>
					<documentation>This percentage of the lowest values will be removed. Should be smaller than max, set to 0 to remove none of the lowest values.</documentation>
				</annotation>
			</element>
			<element name="max" type="fews:percentageType">
				<annotation>
					<documentation>(100% - this percentage) of the highest values will be removed. Should be greater than min, set to 100 to remove none of the largest values.</documentation>
				</annotation>
			</element>
		</sequence>
	</complexType>
	<!-- -->
	<simpleType name="monthDayType">
		<restriction base="gMonthDay">
			<pattern value="--\d\d-\d\d"/>
		</restriction>
	</simpleType>
	<!-- -->
	<simpleType name="dateStringType">
		<union memberTypes="fews:dateType fews:propertyReferenceString"/>
	</simpleType>
	<simpleType name="dateType">
		<annotation>
			<documentation>yyyy-MM-dd</documentation>
		</annotation>
		<restriction base="date">
			<pattern value="\d\d\d\d-\d\d-\d\d"/>
		</restriction>
	</simpleType>
	<!-- -->
	<simpleType name="timeStringType">
		<union memberTypes="fews:timeType fews:propertyReferenceString"/>
	</simpleType>
	<simpleType name="timeType">
		<annotation>
			<documentation>HH:mm:ss</documentation>
		</annotation>
		<restriction base="time">
			<pattern value="\d\d:\d\d:\d\d"/>
		</restriction>
	</simpleType>
	<!--There is a bug in castor castor-0.9.5  when using xsd:list, for now we use strings-->
	<!--In castor-0.9.5.1, to  castor-0.9.5.4 is introducing new bugs and not solving this bug -->
	<!--In castor-1.1.2.1 this bug is fixed but this version can not handle sequences of sequences and sequences of choices properly-->
	<!--The generated source code is also different in 1.1.2.1 for nested choices and sequences-->
	<!--As a preparing step to upgrade to castor-1.1.3 (when hopefully the new bugs are fixed) the following things should be done-->
	<!--1) xsd:integer should replaced by xsd:int-->
	<!--2) nested sequences and choices should be explicit named by using a xsd:group-->
	<simpleType name="shortTimeListStringType">
		<union memberTypes="fews:shortTimeListType fews:propertyReferenceString"/>
	</simpleType>
	<simpleType name="shortTimeListType">
		<restriction base="string">
			<pattern value="(([0-1][0-9]|[2][0-4]):([0-5][0-9])(:([0-5][0-9]))? )*([0-1][0-9]|[2][0-4]):([0-5][0-9](:([0-5][0-9]))?)"/>
		</restriction>
	</simpleType>
	<simpleType name="shortTimeType">
		<restriction base="string">
			<pattern value="([0-1][0-9]|[2][0-4]):([0-5][0-9])(:([0-5][0-9]))?"/>
		</restriction>
	</simpleType>
	<simpleType name="shortMinutesListStringType">
		<annotation>
			<documentation>shortMinutesListType that allows (global) properties</documentation>
		</annotation>
		<union memberTypes="fews:shortMinutesListType fews:propertyReferenceString"/>
	</simpleType>
	<simpleType name="shortMinutesListType">
		<annotation>
			<documentation>00 to 59 (the minutes in a digital clock)</documentation>
		</annotation>
		<restriction base="string">
			<pattern value="(([0-5][0-9]) )*([0-5][0-9])"/>
		</restriction>
	</simpleType>
	<simpleType name="daysOfMonthListStringType">
		<union memberTypes="fews:daysOfMonthListType fews:propertyReferenceString"/>
	</simpleType>
	<simpleType name="daysOfMonthListType">
		<restriction base="string">
			<pattern value="(([0][1-9]|[1-2][0-9]|[3][0-1]) )*([0][1-9]|[1-2][0-9]|[3][0-1])"/>
		</restriction>
	</simpleType>
	<simpleType name="monthDayListStringType">
		<union memberTypes="fews:monthDayListType fews:propertyReferenceString"/>
	</simpleType>
	<simpleType name="daysOfYearListType">
		<annotation>
			<documentation>days of year are encoded as month*100 + the day of the month. For example: july the eleventh = 7*100 + 11 = 711</documentation>
		</annotation>
		<restriction base="string">
			<pattern value="([0-9][0-9][0-9][0-9]? )*([0-9][0-9][0-9][0-9]?)"/>
		</restriction>
	</simpleType>
	<simpleType name="monthDayListType">
		<restriction base="string">
			<pattern value="(--\d\d-\d\d )*(--\d\d-\d\d)"/>
		</restriction>
	</simpleType>
	<simpleType name="NonNegativeIntListType">
		<restriction base="string">
			<pattern value="([0-9]+ )*[0-9]+"/>
		</restriction>
	</simpleType>
	<simpleType name="FloatListType">
		<restriction base="string">
			<pattern value="([-+]?\d+(\.\d+)?)(,([-+]?\d+(\.\d+)?))*"/>
		</restriction>
	</simpleType>
	<complexType name="DateTimeStringComplexType">
		<attribute name="date" type="fews:dateStringType" use="required"/>
		<attribute name="time" type="fews:timeStringType" use="optional"/>
	</complexType>
	<complexType name="DateTimeComplexType">
		<attribute name="date" type="fews:dateType" use="required"/>
		<attribute name="time" type="fews:timeType" use="optional"/>
	</complexType>
	<!-- -->
	<complexType name="ConfigFileComplexType">
		<attribute name="name" type="fews:nameStringType" use="required"/>
		<attribute name="version" type="fews:versionStringType" use="required"/>
	</complexType>
	<!--    -->
	<simpleType name="variableStringType">
		<restriction base="string"/>
	</simpleType>
	<!--    -->
	<simpleType name="geoDatumEnumStringType">
		<restriction base="string">
			<enumeration value="WGS 1984"/>
			<enumeration value="WGS 1984 Radians"/>
			<enumeration value="Ordnance Survey Great Britain 1936"/>
			<enumeration value="TWD 1967"/>
			<enumeration value="TWD 1997"/>
			<enumeration value="Gauss Krueger Meridian2"/>
			<enumeration value="Gauss Krueger Meridian3"/>
			<enumeration value="Gauss Krueger Austria M34"/>
			<enumeration value="Gauss Krueger Austria M31"/>
			<enumeration value="Rijks Driehoekstelsel"/>
			<enumeration value="JRC"/>
			<enumeration value="DWD"/>
			<enumeration value="KNMI Radar"/>
			<enumeration value="CH1903"/>
			<enumeration value="PAK1"/>
			<enumeration value="PAK2"/>
			<enumeration value="SVY21"/>
			<enumeration value="GDA94"/>
			<enumeration value="GDA94 MGA Zone 48"/>
			<enumeration value="GDA94 MGA Zone 49"/>
			<enumeration value="GDA94 MGA Zone 50"/>
			<enumeration value="GDA94 MGA Zone 51"/>
			<enumeration value="GDA94 MGA Zone 52"/>
			<enumeration value="GDA94 MGA Zone 53"/>
			<enumeration value="GDA94 MGA Zone 54"/>
			<enumeration value="GDA94 MGA Zone 55"/>
			<enumeration value="GDA94 MGA Zone 56"/>
			<enumeration value="GDA94 MGA Zone 57"/>
			<enumeration value="GDA94 MGA Zone 58"/>
			<enumeration value="TM65"/>
			<enumeration value="ETRS 1989 UTM zone 29N"/>
			<enumeration value="ETRS 1989 UTM zone 32N"/>
			<enumeration value="ETRS 1989 LAEA"/>
			<enumeration value="Colombia West Zone"/>
			<enumeration value="Colombia West West Zone"/>
			<enumeration value="Colombia East Zone"/>
			<enumeration value="Colombia East Central Zone"/>
			<enumeration value="Colombia Bogota Zone"/>
			<enumeration value="VN2000">
				<annotation>
					<documentation>Since 2013.01. FEWS-7940. Vietnam</documentation>
				</annotation>
			</enumeration>
			<enumeration value="VN2000 UTM Zone 48N">
				<annotation>
					<documentation>Since 2013.01. FEWS-7940. Vietnam</documentation>
				</annotation>
			</enumeration>
			<enumeration value="VN2000 UTM Zone 49N">
				<annotation>
					<documentation>Since 2013.01. FEWS-7940. Vietnam</documentation>
				</annotation>
			</enumeration>
			<enumeration value="Indonesia TM-3 zone 46.2"/>
			<enumeration value="Indonesia TM-3 zone 47.1"/>
			<enumeration value="Indonesia TM-3 zone 47.2"/>
			<enumeration value="Indonesia TM-3 zone 48.1"/>
			<enumeration value="Indonesia TM-3 zone 48.2"/>
			<enumeration value="Indonesia TM-3 zone 49.1"/>
			<enumeration value="Indonesia TM-3 zone 49.2"/>
			<enumeration value="Indonesia TM-3 zone 50.1"/>
			<enumeration value="Indonesia TM-3 zone 50.2"/>
			<enumeration value="Indonesia TM-3 zone 51.1"/>
			<enumeration value="Indonesia TM-3 zone 51.2"/>
			<enumeration value="Indonesia TM-3 zone 52.1"/>
			<enumeration value="Indonesia TM-3 zone 52.2"/>
			<enumeration value="Indonesia TM-3 zone 53.1"/>
			<enumeration value="Indonesia TM-3 zone 53.2"/>
			<enumeration value="Indonesia TM-3 zone 54.1"/>
			<enumeration value="New Zealand Transverse Mercator 2000">
				<annotation>
					<documentation>Since 2014.01</documentation>
				</annotation>
			</enumeration>
			<enumeration value="Belgian Lambert 72">
				<annotation>
					<documentation>Since 2014.01</documentation>
				</annotation>
			</enumeration>
		</restriction>
	</simpleType>
	<simpleType name="utmGeoDatumStringType">
		<restriction base="string">
			<pattern value="UTM((0[1-9])|([1-5][0-9])|(UTM60))[NS]"/>
		</restriction>
	</simpleType>
	<simpleType name="epsgGeoDatumStringType">
		<restriction base="string">
			<pattern value="EPSG:[1-9]\d+"/>
		</restriction>
	</simpleType>
	<simpleType name="geoDatumStringType">
		<union memberTypes="fews:propertyReferenceString fews:geoDatumEnumStringType fews:utmGeoDatumStringType fews:epsgGeoDatumStringType"/>
	</simpleType>
	<!--    -->
	<complexType name="TimeSeriesFilterComplexType">
		<group ref="fews:TimeSeriesFilterGroup"/>
	</complexType>
	<group name="ModuleInstanceIdsChoice">
		<choice>
			<element name="moduleInstanceId" type="fews:idStringType" maxOccurs="unbounded"/>
			<group ref="fews:ModuleInstanceIdPatternSequence"/>
			<element name="moduleInstanceSetId" type="fews:idStringType"/>
		</choice>
	</group>
	<group name="TimeSeriesFilterGroup">
		<sequence>
			<group ref="fews:ModuleInstanceIdsChoice" minOccurs="0"/>
			<element name="valueType" type="fews:timeSeriesValueTypeStringType" minOccurs="0"/>
			<element name="parameterGroupId" type="fews:idStringType" minOccurs="0" maxOccurs="unbounded"/>
			<element name="parameterId" type="fews:idStringType" minOccurs="0" maxOccurs="unbounded"/>
			<element name="qualifierId" type="fews:idStringType" minOccurs="0" maxOccurs="unbounded">
				<annotation>
					<documentation>Id that references an qualifier listed in the regionConfigFiles/Qualifiers.xsd. All qualifiers of a time series must match all qualifiers of the filter
					</documentation>
				</annotation>
			</element>
			<choice minOccurs="0">
				<element name="locationId" type="fews:idStringType" maxOccurs="unbounded"/>
				<element name="locationSetId" type="fews:idStringType"/>
			</choice>
			<element name="timeSeriesType" type="fews:timeSeriesTypeStringType" minOccurs="0"/>
			<element name="timeStep" type="fews:TimeStepComplexType" minOccurs="0"/>
			<element name="aggregationPeriod" type="fews:RelativePeriodComplexType" minOccurs="0">
				<annotation>
					<documentation>The value at a time represents the aggregated value over the aggregation period
						e.g when the aggregation period is -6 to 0 hour the value at 13:00 represents
						an aggregation (e.g. moving average) from 7:00 till 13:00 (including)
					</documentation>
				</annotation>
			</element>
			<element name="cycle" type="fews:TimeSpanComplexType" minOccurs="0">
				<annotation>
					<documentation>If cycle specified, then the data is repeated periodically with this cycle as the
						period length. There is original data for only one cycle. After that cycle the data will be
						repeated periodically. In other words, when cycle is defined, then a missing value is filled up
						with a value from the last available cycle before the missing value.
					</documentation>
				</annotation>
			</element>
			<element name="ensembleId" type="fews:idStringType" minOccurs="0">
				<annotation>
					<documentation>Optional field for running ensembles.
					</documentation>
				</annotation>
			</element>
			<element name="ensembleMemberId" type="fews:nonEmptyStringType" minOccurs="0">
				<annotation>
					<documentation>Since 2019.01. Optional field for filtering on ensemble members.</documentation>
				</annotation>
			</element>
			<element name="not" type="fews:TimeSeriesFilterNotComplexType" minOccurs="0">
				<annotation>
					<documentation>Since 2015.01. To exclude module instances</documentation>
				</annotation>
			</element>
		</sequence>
	</group>
	<complexType name="TimeSeriesFilterNotComplexType">
		<sequence>
			<group ref="fews:ModuleInstanceIdPatternSequence"/>
		</sequence>
	</complexType>
	<group name="ModuleInstanceIdPatternSequence">
		<sequence>
			<element name="moduleInstanceIdPattern" type="fews:nonEmptyStringType" minOccurs="0" maxOccurs="unbounded">
				<annotation>
					<documentation>Since 2015.01. * and ? are allowed in the pattern</documentation>
				</annotation>
			</element>
		</sequence>
	</group>
	<complexType name="TimeSeriesSetComplexType">
		<sequence>
			<element name="description" type="string" minOccurs="0"/>
			<choice>
				<element name="moduleInstanceId" type="fews:idStringType" maxOccurs="unbounded"/>
				<element name="moduleInstanceSetId" type="fews:idStringType">
					<annotation>
						<documentation>Query a single module instance in the data store that is available for this time series set
						</documentation>
					</annotation>
				</element>
				<element name="filterModuleInstanceSetId" type="fews:idStringType">
					<annotation>
						<documentation>Query all module instances in the data store that are available for this time series set
						</documentation>
					</annotation>
				</element>
			</choice>
			<element name="valueType" type="fews:timeSeriesValueTypeStringType"/>
			<element name="parameterId" type="fews:idStringType"/>
			<element name="domainParameterId" type="fews:idStringType" minOccurs="0" maxOccurs="unbounded">
				<annotation>
					<documentation>For a spectrum specify the frequency / wave length parameter. For a directional spectrum specify first the frequency parameter and secondly the directional parameter
					</documentation>
				</annotation>
			</element>
			<element name="qualifierId" type="fews:idStringType" minOccurs="0" maxOccurs="unbounded">
				<annotation>
					<documentation>Id that references an qualifier listed in the regionConfigFiles/Qualifiers.xsd
					</documentation>
				</annotation>
			</element>
			<sequence minOccurs="0">
				<element name="locationRelationId" type="fews:idStringType">
					<annotation>
						<documentation>Relation id to map the time series set locations to related locations. Instead of the
							time series set locations the related locations are used to read/write the time series.
						</documentation>
					</annotation>
				</element>
				<element name="skipLocationsWithoutRelation" type="boolean" default="false" minOccurs="0">
					<annotation>
						<documentation>Since 2020.01 When true locations that do not have a related location will be skipped, when false all location must have a related location. Default is false
						</documentation>
					</annotation>
				</element>
			</sequence>
			<choice>
				<element name="locationId" type="fews:idStringType" maxOccurs="unbounded"/>
				<element name="locationSetId" type="fews:idStringType"/>
				<element name="chainageLocationSetId" type="fews:idStringType">
					<annotation>
						<documentation>Id of location set which represents a chainage of locations. This can only be used in combination with readWriteMode readOnly</documentation>
					</annotation>
				</element>
			</choice>
			<element name="timeSeriesType" type="fews:timeSeriesTypeStringType"/>
			<element name="timeStep" type="fews:TimeStepComplexType"/>
			<element name="aggregationPeriod" type="fews:RelativePeriodComplexType" minOccurs="0">
				<annotation>
					<documentation>The value at a time represents the aggregated value over the aggregation period
						e.g when the aggregation period is -6 to 0 hour the value at 13:00 represents
						an aggregation (e.g. moving average) from 7:00 till 13:00 (including)
					</documentation>
				</annotation>
			</element>
			<element name="cycle" type="fews:CalendarTimeSpanComplexType" minOccurs="0">
				<annotation>
					<documentation>If cycle specified, then the data is repeated periodically with this cycle as the period length. There is original data for only one cycle. After that cycle the data
						will be repeated periodically. In other words, when cycle is defined, then a missing value is filled up with a value from the last available cycle before the missing value.
					</documentation>
				</annotation>
			</element>
			<choice minOccurs="0">
				<element name="relativeViewPeriod" type="fews:TimeSeriesSetRelativePeriodComplexType" minOccurs="0">
					<annotation>
						<documentation>Period relative the time 0 of the workflow or the system time of the fews explorer</documentation>
					</annotation>
				</element>
				<element name="relativeForecastPeriod" type="fews:TimeSeriesSetRelativePeriodComplexType" minOccurs="0">
					<annotation>
						<documentation>Period relative to first time of a simulated or external forecast time series</documentation>
					</annotation>
				</element>
			</choice>
			<group ref="fews:ExternalForecastSearchChoice" minOccurs="0"/>
			<element name="externalForecastSearchTimeStep" type="fews:TimeStepComplexType" minOccurs="0">
				<annotation>
					<documentation>Since 2024.01. Only time series with an external forecast time that match this time step are visible while searching</documentation>
				</annotation>
			</element>
			<element name="externalForecastTimeCardinalTimeStep" type="fews:TimeStepComplexType" minOccurs="0">
				<annotation>
					<documentation>When no external forecast exists in the data store younger that the specified age a
						new external forecast is returned with a minimum age that applies to the specified cardinal time step
					</documentation>
				</annotation>
			</element>
			<element name="qualifierAggregation" type="fews:qualifierAggregationStringType" minOccurs="0">
				<annotation>
					<documentation>When specified all the time series that have ALL the specified qualifiers are aggregated to a single time series on read. Can not be specified when this time series
						set is meant for writing
					</documentation>
				</annotation>
			</element>
			<element name="readWriteMode" type="fews:timeSeriesReadWriteModeStringType">
				<annotation>
					<documentation>Note: this readWriteMode is only used in the TimeSeriesDisplay. Other modules ignore this readWriteMode.</documentation>
				</annotation>
			</element>
			<element name="synchLevel" type="fews:intStringType" minOccurs="0"/>
			<element name="expiryTime" type="fews:CalendarTimeSpanComplexType" minOccurs="0"/>
			<element name="delay" type="fews:TimeShiftComplexType" minOccurs="0"/>
			<element name="multiplier" type="fews:floatStringType" minOccurs="0"/>
			<element name="divider" type="fews:floatStringType" minOccurs="0"/>
			<element name="incrementer" type="fews:floatStringType" minOccurs="0"/>
			<element name="ensembleId" type="fews:idStringType" minOccurs="0">
				<annotation>
					<documentation>Optional field for running ensembles. Ensemble id's in a time series set will override
						ensemble id's defined in the workflow.
					</documentation>
				</annotation>
			</element>
			<choice minOccurs="0">
				<element name="ensembleMemberId" type="fews:nonEmptyStringType" maxOccurs="unbounded">
					<annotation>
						<documentation>Optional field used for reading or writing one or more particular ensemble member</documentation>
					</annotation>
				</element>
				<element name="ensembleMemberIndex" type="fews:nonNegativeIntegerStringType">
					<annotation>
						<documentation>Optional field used for reading or writing one particular ensemble member</documentation>
					</annotation>
				</element>
				<element name="ensembleMemberIndexRange" type="fews:EnsembleMemberIndexRangeComplexType">
					<annotation>
						<documentation>Optional field used for reading or writing one particular sub set of the ensemble</documentation>
					</annotation>
				</element>
			</choice>
			<element name="visibilityControllingFlagSourceColumnId" type="fews:idStringType" minOccurs="0">
				<annotation>
					<documentation>All values that not passed this validation step are removed on read. Set to missing for equidistant and removed for non-equidistant</documentation>
				</annotation>
			</element>
			<element name="onlyReliableFlagSourceColumnId" type="fews:idStringType" minOccurs="0">
				<annotation>
					<documentation>Since 2022.02. All values that passed this validation step and are reliable will be included other will be set to missing for equidistant and removed for
						non-equidistant. This will work as an "or" operation together with "visibilityControllingFlagSourceColumnId", so data should either have passed
						"visibilityControllingFlagSourceColumnId" or "onlyReliableFlagSourceColumnId".
					</documentation>
				</annotation>
			</element>
		</sequence>
		<attribute name="id" type="fews:idStringType"/>
		<attribute name="name" type="fews:nameStringType"/>
	</complexType>
	<!--    -->
	<group name="TimeSeriesSetsGroup">
		<sequence>
			<element name="timeSeriesSet" type="fews:TimeSeriesSetComplexType" maxOccurs="unbounded"/>
		</sequence>
	</group>
	<!--    -->
	<group name="ExternalForecastSearchChoice">
		<choice>
			<element name="relativeForecastSearchPeriod" type="fews:TimeSeriesSetRelativePeriodComplexType">
				<annotation>
					<documentation>Since 2015.02. The latest available external forecast in this period will be read. By default the latest before time0 is returned</documentation>
				</annotation>
			</element>
			<sequence>
				<element name="externalForecastMinAge" type="fews:TimeSpanComplexType" minOccurs="0">
					<annotation>
						<documentation>Since 2014.02. By default is there is no minimum age. All external forecasts after the time0 are ignored. The age of an external forecast is defined as the time
							span between the external forecast time and the time 0
						</documentation>
					</annotation>
				</element>
				<element name="externalForecastMaxAge" type="fews:TimeSpanComplexType" minOccurs="0">
					<annotation>
						<documentation>By default is there is no maximum age so the returned external forecast can be very old when there is no recent forecast available. All external forecasts after
							the time0 are ignored. The age of an external forecast is defined as the time span between the external forecast time and the time 0
						</documentation>
					</annotation>
				</element>
			</sequence>
			<element name="externalForecastTimeId" type="fews:idStringType">
				<annotation>
					<documentation>Since 2018.01. Forecast time reference id configured in the forecast length estimator config. Can only be used in workflows and only after the forecast length
						estimator.
					</documentation>
				</annotation>
			</element>
		</choice>
	</group>
	<!--    -->
	<complexType name="EnsembleMemberIndexRangeComplexType">
		<attribute name="start" type="fews:nonNegativeIntegerStringType" use="required"/>
		<attribute name="end" type="fews:nonNegativeIntegerStringType" use="optional"/>
	</complexType>
	<complexType name="VerticalSliderRangeComplexType">
		<attribute name="start" type="float" use="required"/>
		<attribute name="end" type="float" use="required"/>
		<attribute name="interval" type="fews:positiveFloat" use="optional">
			<annotation>
				<documentation>Since 2022.01, distance between two ticks on the vertical slider</documentation>
			</annotation>
		</attribute>
		<attribute name="ticks" type="fews:FloatListType" use="optional">
			<annotation>
				<documentation>Since 2024.01, list of ticks to display on the vertical slider</documentation>
			</annotation>
		</attribute>
	</complexType>
	<complexType name="RelativePeriodComplexType">
		<annotation>
			<documentation>Defines a moving period in time. The start and end time are relative time to a certain time.</documentation>
		</annotation>
		<sequence>
			<element name="description" type="string" minOccurs="0"/>
		</sequence>
		<attribute name="start" type="fews:intStringType" use="required"/>
		<attribute name="end" type="fews:intStringType" use="required"/>
		<attribute name="startOverrulable" type="fews:booleanStringType" use="optional" default="false">
			<annotation>
				<documentation>When the running module (e.g. general adaptor)
					has exported a state the state time is used instead of the specified start time.
					This option is only available during a (forecast) run.
				</documentation>
			</annotation>
		</attribute>
		<attribute name="endOverrulable" type="fews:booleanStringType" use="optional" default="false">
			<annotation>
				<documentation>When a forecast length is specified (e.g. in the manual forecast dialog)
					the time 0 + forecast length is used instead of the specified end time
					This option is only available during a (forecast) run.
				</documentation>
			</annotation>
		</attribute>
		<attribute name="unit" type="fews:timeUnitStringType" use="required"/>
	</complexType>
	<!--    -->
	<complexType name="RelativeTimeComplexType">
		<annotation>
			<documentation>Defines a time relative to T0.</documentation>
		</annotation>
		<sequence>
			<element name="description" type="string" minOccurs="0">
				<annotation>
					<documentation>Optional description with additional comments. This is never used in the code.</documentation>
				</annotation>
			</element>
		</sequence>
		<attribute name="value" type="fews:intStringType" use="required"/>
		<attribute name="unit" type="fews:timeUnitStringType" use="required"/>
	</complexType>
	<!--    -->
	<complexType name="TimeSeriesSetRelativePeriodComplexType">
		<annotation>
			<documentation>Defines a moving period in time. The start and end time are relative time to a certain time.
				When the start time is not specified it is determined by the start time of the state of the current
				run.
				When the start is overrulable the time is overruled by the start of search period or the start of cold
				state run when one of two is specified
				When the end is overrulable this time is overruled by the end of the forecast when
				specified
			</documentation>
		</annotation>
		<sequence>
			<element name="description" type="string" minOccurs="0"/>
		</sequence>
		<attribute name="unit" type="fews:timeUnitEnumStringType" use="required"/>
		<attribute name="start" type="fews:intStringType" use="optional">
			<annotation>
				<documentation>e.g. -1 hour means one before time 0
				</documentation>
			</annotation>
		</attribute>
		<attribute name="end" type="fews:intStringType" use="required">
			<annotation>
				<documentation>e.g. 1 hour means one hour after time 0
				</documentation>
			</annotation>
		</attribute>
		<attribute name="startOverrulable" type="fews:booleanStringType" default="false">
			<annotation>
				<documentation>When the running module (e.g. general adaptor)
					has exported a state the state time is used instead of the specified start time.
					This option is only available during a (forecast) run.
				</documentation>
			</annotation>
		</attribute>
		<attribute name="endOverrulable" type="fews:booleanStringType" default="false">
			<annotation>
				<documentation>When a forecast length is specified (e.g. in the manual forecast dialog)
					the time 0 + forecast length is used instead of the specified end time
					This option is only available during a (forecast) run.
				</documentation>
			</annotation>
		</attribute>
	</complexType>
	<simpleType name="qualifierAggregationStringType">
		<union memberTypes="fews:qualifierAggregationEnumStringType fews:propertyReferenceString"/>
	</simpleType>
	<!--    -->
	<simpleType name="qualifierAggregationEnumStringType">
		<restriction base="string">
			<enumeration value="sum"/>
			<enumeration value="mean"/>
			<enumeration value="min"/>
			<enumeration value="max"/>
		</restriction>
	</simpleType>
	<simpleType name="timeSeriesValueTypeStringType">
		<union memberTypes="fews:timeSeriesValueTypeEnumStringType fews:propertyReferenceString"/>
	</simpleType>
	<!--    -->
	<simpleType name="timeSeriesValueTypeEnumStringType">
		<restriction base="string">
			<enumeration value="scalar"/>
			<enumeration value="spectrum"/>
			<enumeration value="grid"/>
			<enumeration value="longitudinalprofile"/>
			<enumeration value="polygon"/>
			<enumeration value="sample"/>
		</restriction>
	</simpleType>
	<!--    -->
	<simpleType name="timeSeriesTypeStringType">
		<union memberTypes="fews:timeSeriesTypeEnumStringType fews:propertyReferenceString"/>
	</simpleType>
	<!--    -->
	<simpleType name="timeSeriesTypeEnumStringType">
		<restriction base="string">
			<enumeration value="external historical"/>
			<enumeration value="external forecasting"/>
			<enumeration value="simulated historical"/>
			<enumeration value="simulated forecasting"/>
			<enumeration value="temporary"/>
			<enumeration value="temporary external forecasting"/>
		</restriction>
		<!--        -->
	</simpleType>
	<!--    !-->
	<simpleType name="timeSeriesReadWriteModeStringType">
		<union memberTypes="fews:timeSeriesReadWriteModeEnumStringType fews:propertyReferenceString"/>
	</simpleType>
	<!--    !-->
	<simpleType name="timeSeriesReadWriteModeEnumStringType">
		<restriction base="string">
			<enumeration value="add originals"/>
			<enumeration value="read originals only"/>
			<enumeration value="editing only visible to current task run"/>
			<enumeration value="editing visible to all future task runs"/>
			<enumeration value="read only"/>
			<enumeration value="read complete forecast"/>
		</restriction>
		<!--        -->
	</simpleType>
	<!--    !-->
	<complexType name="TimeStepComplexType">
		<annotation>
			<documentation>Time step, There are 5 valid combinations of attributes. id, unit+[multiplier]+[divider]+[timeZone],
				times+[timeZone] + monthDays+[timeZone] ([]=optional)
			</documentation>
		</annotation>
		<sequence>
			<element name="description" type="string" minOccurs="0">
				<annotation>
					<documentation>Optional description of this timeStep. This is not used and is only present for convenience.</documentation>
				</annotation>
			</element>
		</sequence>
		<attribute name="id" type="string" use="optional">
			<annotation>
				<documentation>Id of the time step. You can reference time steps defined in the regionConfig/timeSteps.xml.
					Only specify the id attribute when referring to a predefined time step.
					In the regionConfig/timeSteps.xml the time steps list both the id and the attributes
					that define the time step
				</documentation>
			</annotation>
		</attribute>
		<attribute name="label" type="string" use="optional">
			<annotation>
				<documentation>Short name for the time step which is shown to the user when he can choose one from a list.</documentation>
			</annotation>
		</attribute>
		<attribute name="unit" type="fews:timeStepUnitStringType" use="optional"/>
		<attribute name="divider" type="fews:positiveIntegerStringType" use="optional"/>
		<attribute name="multiplier" type="fews:positiveIntegerStringType" use="optional"/>
		<attribute name="times" type="fews:shortTimeListStringType" use="optional">
			<annotation>
				<documentation>Defines the time step by a list of times without dates, e.g. "10:00 23:00"</documentation>
			</annotation>
		</attribute>
		<attribute name="minutes" type="fews:shortMinutesListStringType" use="optional">
			<annotation>
				<documentation>Since 2017.02. Defines the time step by a list of minutes (with prefix 0 for single digits), e.g. "05 25" which results in times 0:05, 0:25, 1:05, etc.</documentation>
			</annotation>
		</attribute>
		<attribute name="daysOfMonth" type="fews:daysOfMonthListStringType" use="optional">
			<annotation>
				<documentation>Defines the time step by a list of days of month, use "01 11 21" for a decade time step
				</documentation>
			</annotation>
		</attribute>
		<attribute name="monthDays" type="fews:monthDayListStringType" use="optional">
			<annotation>
				<documentation>Defines the time step by a list of dates, e.g. ""--03-01 --06-01 --09-01 --12-01" for
					the meteorological seasons
				</documentation>
			</annotation>
		</attribute>
		<attribute name="timeZone" type="fews:timeZoneStringType" use="optional"/>
	</complexType>
	<complexType name="TimeSpanComplexType">
		<attribute name="unit" type="fews:timeUnitStringType" use="required"/>
		<attribute name="divider" type="fews:positiveIntegerStringType" use="optional"/>
		<attribute name="multiplier" type="fews:nonNegativeIntegerStringType" use="optional"/>
	</complexType>
	<complexType name="CalendarTimeSpanComplexType">
		<attribute name="unit" type="fews:calendarTimeUnitStringType" use="required"/>
		<attribute name="divider" type="fews:positiveIntegerStringType" use="optional"/>
		<attribute name="multiplier" type="fews:nonNegativeIntegerStringType" use="optional"/>
	</complexType>
	<complexType name="SampleSpanComplexType">
		<attribute name="amount" type="fews:positiveInteger" use="required"/>
	</complexType>
	<!--    -->
	<complexType name="DelayComplexType">
		<attribute name="unit" type="fews:timeUnitEnumStringType" use="required"/>
		<attribute name="multiplier" type="fews:intStringType" use="optional"/>
		<attribute name="locationSetId" type="fews:idStringType" use="optional"/>
		<attribute name="locationId" type="fews:idStringType" use="optional"/>
		<attribute name="parameterId" type="fews:idStringType" use="required"/>
	</complexType>
	<complexType name="TimeShiftComplexType">
		<attribute name="unit" type="fews:timeUnitEnumStringType" use="required"/>
		<attribute name="divider" type="fews:positiveIntegerStringType" use="optional"/>
		<attribute name="multiplier" type="fews:intStringType" use="optional"/>
	</complexType>
	<!--    -->
	<simpleType name="timeStepUnitStringType">
		<union memberTypes="fews:timeStepUnitEnumStringType fews:propertyReferenceString"/>
	</simpleType>
	<!--    -->
	<simpleType name="timeStepUnitEnumStringType">
		<annotation>
			<documentation>Same as timeUnitEnumStringType plus the nonequidistant time step</documentation>
		</annotation>
		<restriction base="string">
			<enumeration value="second"/>
			<enumeration value="minute"/>
			<enumeration value="hour"/>
			<enumeration value="day"/>
			<enumeration value="week"/>
			<enumeration value="month"/>
			<enumeration value="year"/>
			<enumeration value="nonequidistant"/>
		</restriction>
	</simpleType>
	<!-- -->
	<simpleType name="timeUnitStringType">
		<union memberTypes="fews:timeUnitEnumStringType fews:propertyReferenceString"/>
	</simpleType>
	<simpleType name="timeUnitEnumStringType">
		<restriction base="string">
			<enumeration value="second"/>
			<enumeration value="minute"/>
			<enumeration value="hour"/>
			<enumeration value="day"/>
			<enumeration value="week"/>
		</restriction>
	</simpleType>
	<simpleType name="calendarTimeUnitStringType">
		<union memberTypes="fews:calendarTimeUnitEnumStringType fews:propertyReferenceString"/>
	</simpleType>
	<simpleType name="calendarTimeUnitEnumStringType">
		<restriction base="string">
			<enumeration value="second"/>
			<enumeration value="minute"/>
			<enumeration value="hour"/>
			<enumeration value="day"/>
			<enumeration value="week"/>
			<enumeration value="month"/>
			<enumeration value="year"/>
		</restriction>
	</simpleType>
	<!-- -->
	<complexType name="SeasonComplexType">
		<annotation>
			<documentation>A period that occurs every year.
			</documentation>
		</annotation>
		<attribute name="startMonthDay" type="fews:monthDayType" use="required"/>
		<attribute name="endMonthDay" type="fews:monthDayType" use="required"/>
		<attribute name="timeZone" type="fews:timeZoneStringType" use="optional" default="GMT"/>
		<attribute name="label" type="string" use="optional">
			<annotation>
				<documentation>Short name for the season which is shown to the user when he can choose one from a
					list.
				</documentation>
			</annotation>
		</attribute>
	</complexType>
	<!-- -->
	<complexType name="TimeStampToleranceComplexType">
		<annotation>
			<documentation>Tolerance limit for time stamps belonging to a given (FEWS) parameterId</documentation>
		</annotation>
		<attribute name="locationSetId" type="fews:idStringType" use="optional"/>
		<attribute name="locationId" type="fews:idStringType" use="optional"/>
		<attribute name="parameterId" type="fews:idStringType" use="required"/>
		<attribute name="timeUnit" type="fews:timeUnitEnumStringType" use="required"/>
		<attribute name="unitCount" type="int" use="required"/>
	</complexType>
	<!-- TimePeriodComplexType -->
	<complexType name="PeriodComplexType">
		<sequence>
			<element name="startDate" type="dateTime"/>
			<element name="endDate" type="dateTime"/>
		</sequence>
	</complexType>
	<!-- -->
	<complexType name="ValidPeriodComplexType">
		<annotation>
			<documentation>Period for which rating curve is valid.</documentation>
		</annotation>
		<sequence>
			<element name="startDate" type="dateTime" minOccurs="0">
				<annotation>
					<documentation>Start time of valid period. If missing rating curve is valid for entire period prior to 'endDate'.</documentation>
				</annotation>
			</element>
			<element name="endDate" type="dateTime" minOccurs="0">
				<annotation>
					<documentation>End time of valid period. If missing rating curve is valid for entire period after 'startDate'.</documentation>
				</annotation>
			</element>
		</sequence>
	</complexType>
	<!--following three types are used for utilities like transformation, lookup etc.-->
	<complexType name="VariableComplexType">
		<annotation>
			<documentation>input/output Data Set which can consist of TimeSeriesSet or defined data (so called - typical
				Profile) each identified with unique variable Id
			</documentation>
		</annotation>
		<choice>
			<element name="timeSeriesSet" type="fews:TimeSeriesSetComplexType">
				<annotation>
					<documentation>timeSeriesSet</documentation>
				</annotation>
			</element>
			<sequence>
				<element name="timeStep" type="fews:TimeStepComplexType" minOccurs="0"/>
				<element name="relativeViewPeriod" type="fews:TimeSeriesSetRelativePeriodComplexType" minOccurs="0"/>
				<element name="data" type="fews:TimeSeriesDataComplexType" maxOccurs="unbounded">
					<annotation>
						<documentation>defined time series data</documentation>
					</annotation>
				</element>
				<element name="timeZone" type="fews:TimeZoneComplexType" minOccurs="0"/>
			</sequence>
			<sequence>
				<element name="component" type="fews:HarmonicComponentComplexType" maxOccurs="unbounded"/>
			</sequence>
		</choice>
		<attribute name="variableId" type="fews:idStringType" use="optional">
			<annotation>
				<documentation>variableId which represents a timeSeries or an value (keep as short as possible)</documentation>
			</annotation>
		</attribute>
		<attribute name="variableType" type="fews:predefinedVariableEnumStringType" use="optional" default="any">
			<annotation>
				<documentation>variable Type (if given the VariableId is overwritten)</documentation>
			</annotation>
		</attribute>
		<attribute name="convertDatum" type="boolean" use="optional" default="false">
			<annotation>
				<documentation>Convert datum from Ordnance level during Import.
					Convert datum to Ordnance level during Export.
				</documentation>
			</annotation>
		</attribute>
	</complexType>
	<!-- -->
	<complexType name="TimeSeriesDataComplexType">
		<annotation>
			<documentation>defined data input as per time series format date time (defined either by dateTime or time or
				month day) and value
			</documentation>
		</annotation>
		<attribute name="monthDay" type="gMonthDay" use="optional"/>
		<attribute name="dayofWeek" type="fews:dayOfWeekType" use="optional"/>
		<attribute name="monthofYear" type="fews:monthOfYearType" use="optional"/>
		<attribute name="dateTime" type="dateTime" use="optional"/>
		<attribute name="time" type="time" use="optional"/>
		<attribute name="value" type="float" use="required"/>
		<attribute name="comment" type="string" use="optional"/>
	</complexType>
	<simpleType name="dayOfWeekType">
		<annotation>
			<documentation>all week days</documentation>
		</annotation>
		<restriction base="string">
			<enumeration value="Sunday"/>
			<enumeration value="Monday"/>
			<enumeration value="Tuesday"/>
			<enumeration value="Wednesday"/>
			<enumeration value="Thursday"/>
			<enumeration value="Friday"/>
			<enumeration value="Saturday"/>
		</restriction>
	</simpleType>
	<simpleType name="monthOfYearType">
		<annotation>
			<documentation>all week days</documentation>
		</annotation>
		<restriction base="string">
			<enumeration value="January"/>
			<enumeration value="February"/>
			<enumeration value="March"/>
			<enumeration value="April"/>
			<enumeration value="May"/>
			<enumeration value="June"/>
			<enumeration value="July"/>
			<enumeration value="August"/>
			<enumeration value="September"/>
			<enumeration value="October"/>
			<enumeration value="November"/>
			<enumeration value="December"/>
		</restriction>
	</simpleType>
	<simpleType name="syslogFacilityEnumStringType">
		<restriction base="string">
			<enumeration value="user"/>
			<enumeration value="daemon"/>
			<enumeration value="local0"/>
			<enumeration value="local1"/>
			<enumeration value="local2"/>
			<enumeration value="local3"/>
			<enumeration value="local4"/>
			<enumeration value="local5"/>
			<enumeration value="local6"/>
			<enumeration value="local7"/>
		</restriction>
	</simpleType>
	<!-- logLevelEnumStringType -->
	<simpleType name="logLevelEnumStringType">
		<annotation>
			<documentation>all possible logging levels</documentation>
		</annotation>
		<restriction base="string">
			<enumeration value="DEBUG"/>
			<enumeration value="INFO"/>
			<enumeration value="WARN"/>
			<enumeration value="ERROR"/>
			<enumeration value="FATAL"/>
		</restriction>
	</simpleType>
	<simpleType name="lowerLogLevelEnumStringType">
		<annotation>
			<documentation>The lower priority logging levels (WARN, INFO or DEBUG).</documentation>
		</annotation>
		<restriction base="string">
			<enumeration value="DEBUG"/>
			<enumeration value="INFO"/>
			<enumeration value="WARN"/>
		</restriction>
	</simpleType>
	<complexType name="EventCodeComplexType">
		<annotation>
			<documentation>Element to configure event codes of the log messages that are stored in the table LogEntries</documentation>
		</annotation>
		<sequence>
			<element name="expiryTime" type="fews:CalendarTimeSpanComplexType" minOccurs="0">
				<annotation>
					<documentation>Sinds 2015.02 Expiry time of all log message with this code</documentation>
				</annotation>
			</element>
		</sequence>
		<attribute name="id" type="fews:idStringType" use="required"/>
	</complexType>
	<simpleType name="logEventCodeStringType">
		<annotation>
			<documentation>An event code for a log message has to contain a dot, e.g. "TimeSeries.Check", because the log message is only visible to the master controller if the event code contains a
				dot.
			</documentation>
		</annotation>
		<restriction base="string">
			<pattern value=".+\..+"/>
		</restriction>
	</simpleType>
	<simpleType name="predefinedVariableEnumStringType">
		<annotation>
			<documentation>predefined variable types used to further identify the data in
				VariableComplexType
			</documentation>
		</annotation>
		<restriction base="string">
			<enumeration value="drybulbtemp"/>
			<enumeration value="wetbulbtemp"/>
			<enumeration value="netsolarradiation"/>
			<enumeration value="windrun"/>
			<enumeration value="typicalprofile"/>
			<enumeration value="mean"/>
			<enumeration value="standarddeviation"/>
			<enumeration value="min"/>
			<enumeration value="max"/>
			<enumeration value="upperpercentile"/>
			<enumeration value="lowerpercentile"/>
			<enumeration value="skewness"/>
			<enumeration value="kurtosis"/>
			<enumeration value="histogram"/>
			<enumeration value="eventshistogram"/>
			<enumeration value="movingaverage"/>
			<enumeration value="headlevel"/>
			<enumeration value="taillevel"/>
			<enumeration value="pressure"/>
			<enumeration value="surfaceTempVertical"/>
			<enumeration value="surfaceTempHorizontal"/>
			<enumeration value="soilTemperature"/>
			<enumeration value="soilMoisture"/>
			<enumeration value="index"/>
			<enumeration value="any"/>
			<enumeration value="typicalgridprofile"/>
			<enumeration value="typicalprofilefactor"/>
		</restriction>
	</simpleType>
	<simpleType name="colorEnumStringType">
		<annotation>
			<documentation>see http://www.columbia.edu/~sue/colors-on-white.html</documentation>
		</annotation>
		<restriction base="string">
			<enumeration value="alice blue"/>
			<enumeration value="white"/>
			<enumeration value="antique white"/>
			<enumeration value="antique white1"/>
			<enumeration value="antique white2"/>
			<enumeration value="antique white3"/>
			<enumeration value="antique white4"/>
			<enumeration value="aquamarine"/>
			<enumeration value="black"/>
			<enumeration value="blanched almond"/>
			<enumeration value="blue"/>
			<enumeration value="blue violet"/>
			<enumeration value="brown"/>
			<enumeration value="cadet blue"/>
			<enumeration value="cadet blue1"/>
			<enumeration value="cadet blue2"/>
			<enumeration value="cadet blue3"/>
			<enumeration value="cadet blue4"/>
			<enumeration value="coral"/>
			<enumeration value="cornflower blue"/>
			<enumeration value="cyan"/>
			<enumeration value="dark goldenrod"/>
			<enumeration value="dark goldenrod1"/>
			<enumeration value="dark goldenrod2"/>
			<enumeration value="dark goldenrod3"/>
			<enumeration value="dark goldenrod4"/>
			<enumeration value="dark green"/>
			<enumeration value="dark khaki"/>
			<enumeration value="dark olive green"/>
			<enumeration value="dark olive green1"/>
			<enumeration value="dark olive green2"/>
			<enumeration value="dark olive green3"/>
			<enumeration value="dark olive green4"/>
			<enumeration value="dark orange"/>
			<enumeration value="dark orange1"/>
			<enumeration value="dark orange2"/>
			<enumeration value="dark orange3"/>
			<enumeration value="dark orange4"/>
			<enumeration value="dark orchid"/>
			<enumeration value="dark orchid1"/>
			<enumeration value="dark orchid2"/>
			<enumeration value="dark orchid3"/>
			<enumeration value="dark orchid4"/>
			<enumeration value="dark salmon"/>
			<enumeration value="dark sea green"/>
			<enumeration value="dark sea green1"/>
			<enumeration value="dark sea green2"/>
			<enumeration value="dark sea green3"/>
			<enumeration value="dark sea green4"/>
			<enumeration value="dark slate blue"/>
			<enumeration value="dark slate gray"/>
			<enumeration value="dark slate gray1"/>
			<enumeration value="dark slate gray2"/>
			<enumeration value="dark slate gray3"/>
			<enumeration value="dark slate gray4"/>
			<enumeration value="dark turquoise"/>
			<enumeration value="dark violet"/>
			<enumeration value="deep pink"/>
			<enumeration value="deep pink2"/>
			<enumeration value="deep pink3"/>
			<enumeration value="deep pink4"/>
			<enumeration value="deep sky blue"/>
			<enumeration value="deep sky blue2"/>
			<enumeration value="deep sky blue3"/>
			<enumeration value="deep sky blue4"/>
			<enumeration value="dim gray"/>
			<enumeration value="dodger blue"/>
			<enumeration value="dodger blue2"/>
			<enumeration value="dodger blue3"/>
			<enumeration value="dodger blue4"/>
			<enumeration value="firebrick"/>
			<enumeration value="floral white"/>
			<enumeration value="forest green"/>
			<enumeration value="ghost white"/>
			<enumeration value="gold"/>
			<enumeration value="goldenrod"/>
			<enumeration value="gray"/>
			<enumeration value="gray0"/>
			<enumeration value="gray100"/>
			<enumeration value="gray18"/>
			<enumeration value="gray21"/>
			<enumeration value="gray23"/>
			<enumeration value="gray24"/>
			<enumeration value="gray25"/>
			<enumeration value="gray26"/>
			<enumeration value="gray27"/>
			<enumeration value="gray28"/>
			<enumeration value="gray29"/>
			<enumeration value="gray30"/>
			<enumeration value="gray31"/>
			<enumeration value="gray32"/>
			<enumeration value="gray34"/>
			<enumeration value="gray35"/>
			<enumeration value="gray36"/>
			<enumeration value="gray37"/>
			<enumeration value="gray38"/>
			<enumeration value="gray39"/>
			<enumeration value="gray40"/>
			<enumeration value="gray41"/>
			<enumeration value="gray42"/>
			<enumeration value="gray43"/>
			<enumeration value="gray44"/>
			<enumeration value="gray45"/>
			<enumeration value="gray46"/>
			<enumeration value="gray47"/>
			<enumeration value="gray48"/>
			<enumeration value="gray49"/>
			<enumeration value="gray50"/>
			<enumeration value="gray51"/>
			<enumeration value="gray52"/>
			<enumeration value="gray53"/>
			<enumeration value="gray54"/>
			<enumeration value="gray55"/>
			<enumeration value="gray56"/>
			<enumeration value="gray57"/>
			<enumeration value="gray58"/>
			<enumeration value="gray59"/>
			<enumeration value="gray60"/>
			<enumeration value="gray61"/>
			<enumeration value="gray62"/>
			<enumeration value="gray63"/>
			<enumeration value="gray64"/>
			<enumeration value="gray65"/>
			<enumeration value="gray66"/>
			<enumeration value="gray67"/>
			<enumeration value="gray68"/>
			<enumeration value="gray69"/>
			<enumeration value="gray70"/>
			<enumeration value="gray71"/>
			<enumeration value="gray72"/>
			<enumeration value="gray73"/>
			<enumeration value="gray74"/>
			<enumeration value="gray75"/>
			<enumeration value="gray76"/>
			<enumeration value="gray77"/>
			<enumeration value="gray78"/>
			<enumeration value="gray79"/>
			<enumeration value="gray80"/>
			<enumeration value="gray81"/>
			<enumeration value="gray82"/>
			<enumeration value="gray83"/>
			<enumeration value="gray84"/>
			<enumeration value="gray85"/>
			<enumeration value="gray86"/>
			<enumeration value="gray87"/>
			<enumeration value="gray88"/>
			<enumeration value="gray89"/>
			<enumeration value="gray90"/>
			<enumeration value="gray91"/>
			<enumeration value="gray92"/>
			<enumeration value="gray93"/>
			<enumeration value="gray94"/>
			<enumeration value="gray95"/>
			<enumeration value="gray96"/>
			<enumeration value="gray97"/>
			<enumeration value="gray98"/>
			<enumeration value="gray99"/>
			<enumeration value="green"/>
			<enumeration value="green yellow"/>
			<enumeration value="hot pink"/>
			<enumeration value="hot pink1"/>
			<enumeration value="hot pink2"/>
			<enumeration value="hot pink3"/>
			<enumeration value="hot pink4"/>
			<enumeration value="indian red"/>
			<enumeration value="indian red1"/>
			<enumeration value="indian red2"/>
			<enumeration value="indian red3"/>
			<enumeration value="indian red4"/>
			<enumeration value="khaki"/>
			<enumeration value="lavender blush"/>
			<enumeration value="lavender blush2"/>
			<enumeration value="lavender blush3"/>
			<enumeration value="lavender blush4"/>
			<enumeration value="lawn green"/>
			<enumeration value="lemon chiffon"/>
			<enumeration value="lemon chiffon2"/>
			<enumeration value="lemon chiffon3"/>
			<enumeration value="lemon chiffon4"/>
			<enumeration value="light blue"/>
			<enumeration value="light blue1"/>
			<enumeration value="light blue2"/>
			<enumeration value="light blue3"/>
			<enumeration value="light blue4"/>
			<enumeration value="light coral"/>
			<enumeration value="light cyan"/>
			<enumeration value="light cyan2"/>
			<enumeration value="light cyan3"/>
			<enumeration value="light cyan4"/>
			<enumeration value="light goldenrod"/>
			<enumeration value="light goldenrod1"/>
			<enumeration value="light goldenrod2"/>
			<enumeration value="light goldenrod3"/>
			<enumeration value="light goldenrod4"/>
			<enumeration value="light goldenrod yellow"/>
			<enumeration value="light pink"/>
			<enumeration value="light pink1"/>
			<enumeration value="light pink2"/>
			<enumeration value="light pink3"/>
			<enumeration value="light pink4"/>
			<enumeration value="light salmon"/>
			<enumeration value="light salmon2"/>
			<enumeration value="light salmon3"/>
			<enumeration value="light salmon4"/>
			<enumeration value="light sea green"/>
			<enumeration value="light sky blue"/>
			<enumeration value="light sky blue2"/>
			<enumeration value="light sky blue3"/>
			<enumeration value="light sky blue4"/>
			<enumeration value="light slate blue"/>
			<enumeration value="light slate gray"/>
			<enumeration value="light steel blue"/>
			<enumeration value="light steel blue1"/>
			<enumeration value="light steel blue2"/>
			<enumeration value="light steel blue3"/>
			<enumeration value="light steel blue4"/>
			<enumeration value="light yellow"/>
			<enumeration value="light yellow2"/>
			<enumeration value="light yellow3"/>
			<enumeration value="light yellow4"/>
			<enumeration value="lime green"/>
			<enumeration value="magenta"/>
			<enumeration value="maroon"/>
			<enumeration value="medium aquamarine"/>
			<enumeration value="medium blue"/>
			<enumeration value="medium forest green"/>
			<enumeration value="medium goldenrod"/>
			<enumeration value="medium orchid"/>
			<enumeration value="medium orchid1"/>
			<enumeration value="medium orchid2"/>
			<enumeration value="medium orchid3"/>
			<enumeration value="medium orchid4"/>
			<enumeration value="medium purple"/>
			<enumeration value="medium purple1"/>
			<enumeration value="medium purple2"/>
			<enumeration value="medium purple3"/>
			<enumeration value="medium purple4"/>
			<enumeration value="medium sea green"/>
			<enumeration value="medium slate blue"/>
			<enumeration value="medium spring green"/>
			<enumeration value="medium turquoise"/>
			<enumeration value="medium violet red"/>
			<enumeration value="midnight blue"/>
			<enumeration value="mint cream"/>
			<enumeration value="misty rose"/>
			<enumeration value="misty rose2"/>
			<enumeration value="misty rose3"/>
			<enumeration value="misty rose4"/>
			<enumeration value="navajo white"/>
			<enumeration value="navajo white2"/>
			<enumeration value="navajo white3"/>
			<enumeration value="navajo white4"/>
			<enumeration value="navy"/>
			<enumeration value="old lace"/>
			<enumeration value="olive drab"/>
			<enumeration value="olive drab1"/>
			<enumeration value="olive drab2"/>
			<enumeration value="olive drab3"/>
			<enumeration value="olive drab4"/>
			<enumeration value="orange"/>
			<enumeration value="orange red"/>
			<enumeration value="orange red2"/>
			<enumeration value="orange red3"/>
			<enumeration value="orange red4"/>
			<enumeration value="orchid"/>
			<enumeration value="pale goldenrod"/>
			<enumeration value="pale green"/>
			<enumeration value="pale green1"/>
			<enumeration value="pale green2"/>
			<enumeration value="pale green3"/>
			<enumeration value="pale green4"/>
			<enumeration value="pale turquoise"/>
			<enumeration value="pale turquoise1"/>
			<enumeration value="pale turquoise2"/>
			<enumeration value="pale turquoise3"/>
			<enumeration value="pale turquoise4"/>
			<enumeration value="pale violet red"/>
			<enumeration value="pale violet red1"/>
			<enumeration value="pale violet red2"/>
			<enumeration value="pale violet red3"/>
			<enumeration value="pale violet red4"/>
			<enumeration value="papaya whip"/>
			<enumeration value="peach puff"/>
			<enumeration value="peach puff2"/>
			<enumeration value="peach puff3"/>
			<enumeration value="peach puff4"/>
			<enumeration value="pink"/>
			<enumeration value="plum"/>
			<enumeration value="powder blue"/>
			<enumeration value="red"/>
			<enumeration value="rosy brown"/>
			<enumeration value="rosy brown1"/>
			<enumeration value="rosy brown2"/>
			<enumeration value="rosy brown3"/>
			<enumeration value="rosy brown4"/>
			<enumeration value="royal blue"/>
			<enumeration value="royal blue1"/>
			<enumeration value="royal blue2"/>
			<enumeration value="royal blue3"/>
			<enumeration value="royal blue4"/>
			<enumeration value="sandy brown"/>
			<enumeration value="sea green"/>
			<enumeration value="sea green1"/>
			<enumeration value="sea green2"/>
			<enumeration value="sea green3"/>
			<enumeration value="sea green4"/>
			<enumeration value="sienna"/>
			<enumeration value="sky blue"/>
			<enumeration value="sky blue1"/>
			<enumeration value="sky blue2"/>
			<enumeration value="sky blue3"/>
			<enumeration value="sky blue4"/>
			<enumeration value="slate blue"/>
			<enumeration value="slate blue1"/>
			<enumeration value="slate blue2"/>
			<enumeration value="slate blue3"/>
			<enumeration value="slate blue4"/>
			<enumeration value="slate gray"/>
			<enumeration value="slate gray1"/>
			<enumeration value="slate gray2"/>
			<enumeration value="slate gray3"/>
			<enumeration value="slate gray4"/>
			<enumeration value="spring green"/>
			<enumeration value="spring green1"/>
			<enumeration value="spring green2"/>
			<enumeration value="spring green3"/>
			<enumeration value="spring green4"/>
			<enumeration value="steel blue"/>
			<enumeration value="steel blue1"/>
			<enumeration value="steel blue2"/>
			<enumeration value="steel blue3"/>
			<enumeration value="steel blue4"/>
			<enumeration value="tan"/>
			<enumeration value="thistle"/>
			<enumeration value="turquoise"/>
			<enumeration value="violet"/>
			<enumeration value="violet red"/>
			<enumeration value="violet red1"/>
			<enumeration value="violet red2"/>
			<enumeration value="violet red3"/>
			<enumeration value="violet red4"/>
			<enumeration value="wheat"/>
			<enumeration value="yellow"/>
			<enumeration value="yellow green"/>
			<enumeration value="aquamarine1"/>
			<enumeration value="aquamarine2"/>
			<enumeration value="aquamarine3"/>
			<enumeration value="aquamarine4"/>
			<enumeration value="azure"/>
			<enumeration value="azure2"/>
			<enumeration value="azure3"/>
			<enumeration value="azure4"/>
			<enumeration value="beige"/>
			<enumeration value="bisque"/>
			<enumeration value="bisque2"/>
			<enumeration value="bisque3"/>
			<enumeration value="bisque4"/>
			<enumeration value="blue1"/>
			<enumeration value="blue2"/>
			<enumeration value="blue3"/>
			<enumeration value="blue4"/>
			<enumeration value="brown1"/>
			<enumeration value="brown2"/>
			<enumeration value="brown3"/>
			<enumeration value="burlywood1"/>
			<enumeration value="burlywood2"/>
			<enumeration value="burlywood3"/>
			<enumeration value="burlywood4"/>
			<enumeration value="chartreuse"/>
			<enumeration value="chartreuse2"/>
			<enumeration value="chartreuse3"/>
			<enumeration value="chartreuse4"/>
			<enumeration value="chocolate"/>
			<enumeration value="coral2"/>
			<enumeration value="coral3"/>
			<enumeration value="coral4"/>
			<enumeration value="cornsilk"/>
			<enumeration value="cornsilk2"/>
			<enumeration value="cornsilk3"/>
			<enumeration value="cornsilk4"/>
			<enumeration value="cyan1"/>
			<enumeration value="cyan2"/>
			<enumeration value="cyan3"/>
			<enumeration value="cyan4"/>
			<enumeration value="firebrick1"/>
			<enumeration value="firebrick2"/>
			<enumeration value="firebrick3"/>
			<enumeration value="gainsboro"/>
			<enumeration value="gold1"/>
			<enumeration value="gold2"/>
			<enumeration value="gold3"/>
			<enumeration value="gold4"/>
			<enumeration value="goldenrod1"/>
			<enumeration value="goldenrod2"/>
			<enumeration value="goldenrod3"/>
			<enumeration value="goldenrod4"/>
			<enumeration value="green1"/>
			<enumeration value="green2"/>
			<enumeration value="green3"/>
			<enumeration value="green4"/>
			<enumeration value="honeydew"/>
			<enumeration value="honeydew2"/>
			<enumeration value="honeydew3"/>
			<enumeration value="honeydew4"/>
			<enumeration value="ivory"/>
			<enumeration value="ivory2"/>
			<enumeration value="ivory3"/>
			<enumeration value="ivory4"/>
			<enumeration value="khaki1"/>
			<enumeration value="khaki2"/>
			<enumeration value="khaki3"/>
			<enumeration value="khaki4"/>
			<enumeration value="lavender"/>
			<enumeration value="linen"/>
			<enumeration value="magenta1"/>
			<enumeration value="magenta2"/>
			<enumeration value="magenta3"/>
			<enumeration value="maroon1"/>
			<enumeration value="maroon2"/>
			<enumeration value="maroon3"/>
			<enumeration value="maroon4"/>
			<enumeration value="moccasin"/>
			<enumeration value="orange1"/>
			<enumeration value="orange2"/>
			<enumeration value="orange3"/>
			<enumeration value="orange4"/>
			<enumeration value="orchid1"/>
			<enumeration value="orchid2"/>
			<enumeration value="orchid3"/>
			<enumeration value="orchid4"/>
			<enumeration value="peru"/>
			<enumeration value="pink2"/>
			<enumeration value="pink3"/>
			<enumeration value="pink4"/>
			<enumeration value="plum1"/>
			<enumeration value="plum2"/>
			<enumeration value="plum3"/>
			<enumeration value="plum4"/>
			<enumeration value="purple"/>
			<enumeration value="purple1"/>
			<enumeration value="purple2"/>
			<enumeration value="purple3"/>
			<enumeration value="purple4"/>
			<enumeration value="red1"/>
			<enumeration value="red2"/>
			<enumeration value="salmon1"/>
			<enumeration value="salmon2"/>
			<enumeration value="salmon3"/>
			<enumeration value="salmon4"/>
			<enumeration value="seashell"/>
			<enumeration value="seashell2"/>
			<enumeration value="seashell3"/>
			<enumeration value="seashell4"/>
			<enumeration value="sienna1"/>
			<enumeration value="sienna2"/>
			<enumeration value="sienna3"/>
			<enumeration value="sienna4"/>
			<enumeration value="snow"/>
			<enumeration value="snow2"/>
			<enumeration value="snow3"/>
			<enumeration value="snow4"/>
			<enumeration value="tan1"/>
			<enumeration value="tan2"/>
			<enumeration value="thistle1"/>
			<enumeration value="thistle2"/>
			<enumeration value="thistle3"/>
			<enumeration value="thistle4"/>
			<enumeration value="tomato"/>
			<enumeration value="tomato2"/>
			<enumeration value="tomato3"/>
			<enumeration value="turquoise1"/>
			<enumeration value="turquoise2"/>
			<enumeration value="turquoise3"/>
			<enumeration value="turquoise4"/>
			<enumeration value="wheat1"/>
			<enumeration value="wheat2"/>
			<enumeration value="wheat3"/>
			<enumeration value="wheat4"/>
			<enumeration value="yellow1"/>
		</restriction>
	</simpleType>
	<simpleType name="floatStringType">
		<annotation>
			<documentation>
				Float that allows (global) properties
			</documentation>
		</annotation>
		<union memberTypes="float fews:propertyReferenceString"/>
	</simpleType>
	<simpleType name="floatPercentageStringType">
		<annotation>
			<documentation>
				Float that allows (global) properties
			</documentation>
		</annotation>
		<union memberTypes="fews:floatPercentageType fews:propertyReferenceString"/>
	</simpleType>
	<simpleType name="floatPercentageLocationAttributeStringType">
		<annotation>
			<documentation>
				Float that allows (global) properties
			</documentation>
		</annotation>
		<union memberTypes="fews:floatPercentageType fews:attributeReferenceString fews:propertyReferenceString"/>
	</simpleType>
	<simpleType name="doubleStringType">
		<annotation>
			<documentation>
				Double that allows (global) properties
			</documentation>
		</annotation>
		<union memberTypes="double fews:propertyReferenceString"/>
	</simpleType>
	<simpleType name="positiveDoubleStringType">
		<annotation>
			<documentation>
				Positive Double that allows (global) properties
			</documentation>
		</annotation>
		<union memberTypes="fews:positiveDouble fews:propertyReferenceString"/>
	</simpleType>
	<simpleType name="doubleStringOrPropertyType">
		<annotation>
			<documentation>
				Type that allows for numbers, text and property references.
			</documentation>
		</annotation>
		<union memberTypes="double fews:nonEmptyStringType fews:propertyReferenceString"/>
	</simpleType>
	<complexType name="DateTimePropertyComplexType">
		<sequence>
			<element name="description" type="string" minOccurs="0"/>
		</sequence>
		<attribute name="key" type="string" use="required"/>
		<attribute name="date" type="fews:dateType" use="required"/>
		<attribute name="time" type="fews:timeType" use="required"/>
	</complexType>
	<simpleType name="intStringType">
		<annotation>
			<documentation>
				Integer that allows (global) properties
			</documentation>
		</annotation>
		<union memberTypes="int fews:propertyReferenceString"/>
	</simpleType>
	<simpleType name="twoOrMoreIntStringType">
		<annotation>
			<documentation>
				Integer that allows (global) properties
			</documentation>
		</annotation>
		<union memberTypes="fews:twoOrMoreIntType fews:propertyReferenceString"/>
	</simpleType>
	<simpleType name="positiveIntegerStringType">
		<annotation>
			<documentation>Integer that allows (global) properties</documentation>
		</annotation>
		<union memberTypes="positiveInteger fews:propertyReferenceString"/>
	</simpleType>
	<simpleType name="nonNegativeIntegerStringType">
		<annotation>
			<documentation>Integer that allows (global) properties</documentation>
		</annotation>
		<union memberTypes="nonNegativeInteger fews:propertyReferenceString"/>
	</simpleType>
	<simpleType name="positiveIntegerAttributeType">
		<annotation>
			<documentation>Positive integer that allows references to location attributes.</documentation>
		</annotation>
		<union memberTypes="positiveInteger fews:attributeReferenceString fews:propertyReferenceString"/>
	</simpleType>
	<simpleType name="intStringAttributeType">
		<annotation>
			<documentation>Integer that allows references to attributes</documentation>
		</annotation>
		<union memberTypes="int fews:attributeReferenceString"/>
	</simpleType>
	<simpleType name="intStringAttributeAndPropertyType">
		<annotation>
			<documentation>Integer that allows references to attributes and (global) properties</documentation>
		</annotation>
		<union memberTypes="int fews:attributeReferenceString fews:propertyReferenceString"/>
	</simpleType>
	<simpleType name="floatStringAttributeType">
		<annotation>
			<documentation>Since 2014.02. Float that allows references to attributes</documentation>
		</annotation>
		<union memberTypes="float fews:attributeReferenceString"/>
	</simpleType>
	<simpleType name="floatStringAttributeAndPropertyType">
		<annotation>
			<documentation>Float that allows references to attributes and (global) properties</documentation>
		</annotation>
		<union memberTypes="float fews:attributeReferenceString fews:propertyReferenceString"/>
	</simpleType>
	<simpleType name="booleanStringType">
		<annotation>
			<documentation>
				Boolean that allows (global) properties
			</documentation>
		</annotation>
		<union memberTypes="boolean fews:propertyReferenceString"/>
	</simpleType>
	<simpleType name="booleanStringAttributeType">
		<annotation>
			<documentation>Boolean that allows references to attributes</documentation>
		</annotation>
		<union memberTypes="boolean fews:attributeReferenceString"/>
	</simpleType>
	<simpleType name="booleanStringAttributeAndPropertyType">
		<annotation>
			<documentation>Boolean that allows references to attributes and (global) properties</documentation>
		</annotation>
		<union memberTypes="boolean fews:attributeReferenceString fews:propertyReferenceString"/>
	</simpleType>
	<simpleType name="propertyReferenceString">
		<restriction base="string">
			<pattern value=".*[\\$|%].*"/>
		</restriction>
	</simpleType>
	<simpleType name="attributeReferenceString">
		<restriction base="string">
			<pattern value=".*[\\@].*"/>
		</restriction>
	</simpleType>
	<simpleType name="columnReferenceString">
		<restriction base="string">
			<pattern value=".*[\\%].*"/>
		</restriction>
	</simpleType>
	<simpleType name="colorStringType">
		<union memberTypes="fews:nonReferenceColorStringType fews:customColorStringType"/>
	</simpleType>
	<simpleType name="nonReferenceColorStringType">
		<annotation>
			<documentation>You can specify a predefined color (see see http://public.deltares.nl/display/FEWSDOC/A+Colours+Available+in+DELFT-FEWS) or a hexadecimal RGB color e.g FF0000 is red. see
				http://www.squarebox.co.uk/users/rolf/download/ColourWheel/ or http://javaboutique.internet.com/ColorPicker/ to compose your own color
			</documentation>
		</annotation>
		<union memberTypes="fews:colorEnumStringType fews:rgbColorStringType"/>
	</simpleType>
	<simpleType name="rgbColorStringType">
		<restriction base="string">
			<pattern value="[0-9A-F][0-9A-F][0-9A-F][0-9A-F][0-9A-F][0-9A-F]"/>
		</restriction>
	</simpleType>
	<simpleType name="customColorStringType">
		<restriction base="string">
			<pattern value="\[[^\]]*\]"/>
		</restriction>
	</simpleType>
	<simpleType name="timeSliderColorType">
		<restriction base="string">
			<enumeration value="maximum"/>
			<enumeration value="minimum"/>
		</restriction>
	</simpleType>
	<!-- Time Zone Types -->
	<complexType name="TimeZoneComplexType">
		<choice>
			<element name="timeZoneOffset" type="fews:timeZoneOffsetStringType"/>
			<element name="timeZoneName" type="fews:timeZoneStringType"/>
		</choice>
	</complexType>
	<simpleType name="timeZoneOffsetStringType">
		<annotation>
			<documentation>Timezone type. Has following format +/-hh:mm (eg. +02:00)</documentation>
		</annotation>
		<restriction base="string">
			<pattern value="((\+|\-)([0-9]{2})(:)([0-9]{2}))|(.*[\\$|%].*)"/>
			<!-- allow referencing property -->
		</restriction>
	</simpleType>
	<simpleType name="timeZoneEnumStringType">
		<annotation>
			<documentation>Timezone Name : Has Enumerations like GMT,CET, EET, WET, IST</documentation>
		</annotation>
		<restriction base="string">
			<enumeration value="GMT"/>
			<enumeration value="MIT">
				<annotation>
					<documentation>West Samoa Time, winter and summer:GMT-11</documentation>
				</annotation>
			</enumeration>
			<enumeration value="HST">
				<annotation>
					<documentation>Hawaii Standard Time, winter and summer:GMT-10</documentation>
				</annotation>
			</enumeration>
			<enumeration value="AST">
				<annotation>
					<documentation>Alaska Standard Time, winter:GMT-9 summer:GMT-8</documentation>
				</annotation>
			</enumeration>
			<enumeration value="PST">
				<annotation>
					<documentation>Pacific Standard Time, winter:GMT-8 summer:GMT-7</documentation>
				</annotation>
			</enumeration>
			<enumeration value="MST">
				<annotation>
					<documentation>Mountain Standard Time, winter and summer:GMT-7</documentation>
				</annotation>
			</enumeration>
			<enumeration value="MST7MDT">
				<annotation>
					<documentation>Mountain Time with daylight saving, winter GMT-7 summer GMT-6</documentation>
				</annotation>
			</enumeration>
			<enumeration value="PNT">
				<annotation>
					<documentation>Mountain Standard Time, winter and summer:GMT-7</documentation>
				</annotation>
			</enumeration>
			<enumeration value="CST">
				<annotation>
					<documentation>Central Standard Time, winter:GMT-6 summer:GMT-5</documentation>
				</annotation>
			</enumeration>
			<enumeration value="EST">
				<annotation>
					<documentation>Eastern Standard Time, winter and summer:GMT-5</documentation>
				</annotation>
			</enumeration>
			<enumeration value="IET">
				<annotation>
					<documentation>Eastern Standard Time, winter:GMT-5 summer:GMT-4</documentation>
				</annotation>
			</enumeration>
			<enumeration value="PRT">
				<annotation>
					<documentation>Atlantic Standard Time, winter and summer:GMT-4</documentation>
				</annotation>
			</enumeration>
			<enumeration value="CNT">
				<annotation>
					<documentation>Newfoundland Standard Time, winter:GMT-3:30 summer:GMT-2:30</documentation>
				</annotation>
			</enumeration>
			<enumeration value="AGT">
				<annotation>
					<documentation>Argentine Time, winter:GMT-3 summer:GMT-2</documentation>
				</annotation>
			</enumeration>
			<enumeration value="BET">
				<annotation>
					<documentation>Brasilia Time, winter:GMT-3 summer:GMT-2</documentation>
				</annotation>
			</enumeration>
			<enumeration value="GMT/BST">
				<annotation>
					<documentation>GMT and British Summer Time, winter:GMT+0 summer:GMT+1</documentation>
				</annotation>
			</enumeration>
			<enumeration value="WET">
				<annotation>
					<documentation>Western European Time, winter:GMT+0 summer:GMT+1</documentation>
				</annotation>
			</enumeration>
			<enumeration value="CET">
				<annotation>
					<documentation>Central European Time, winter:GMT+1 summer:GMT+2</documentation>
				</annotation>
			</enumeration>
			<enumeration value="MET">
				<annotation>
					<documentation>Middle Europe Time, winter:GMT+1 summer:GMT+2</documentation>
				</annotation>
			</enumeration>
			<enumeration value="CAT">
				<annotation>
					<documentation>Central African Time, winter and summer:GMT+2</documentation>
				</annotation>
			</enumeration>
			<enumeration value="EET">
				<annotation>
					<documentation>Eastern European Time, winter:GMT+2 summer:GMT+3</documentation>
				</annotation>
			</enumeration>
			<enumeration value="EAT">
				<annotation>
					<documentation>Eastern African Time, winter and summer:GMT+3</documentation>
				</annotation>
			</enumeration>
			<enumeration value="AZT">
				<annotation>
					<documentation>Azerbaijan Time, winter:GMT+4 summer:GMT+5</documentation>
				</annotation>
			</enumeration>
			<enumeration value="NET">
				<annotation>
					<documentation>Armenia Time, winter:GMT+4 summer:GMT+5</documentation>
				</annotation>
			</enumeration>
			<enumeration value="PLT">
				<annotation>
					<documentation>Pakistan Time, winter and summer:GMT+5</documentation>
				</annotation>
			</enumeration>
			<enumeration value="IST">
				<annotation>
					<documentation>India Standard Time, winter and summer:GMT+5:30</documentation>
				</annotation>
			</enumeration>
			<enumeration value="BST">
				<annotation>
					<documentation>Bangladesh Time, winter and summer:GMT+6</documentation>
				</annotation>
			</enumeration>
			<enumeration value="VST">
				<annotation>
					<documentation>Indochina Time, winter and summer:GMT+7</documentation>
				</annotation>
			</enumeration>
			<enumeration value="PRC">
				<annotation>
					<documentation>China Standard Time, winter and summer:GMT+8</documentation>
				</annotation>
			</enumeration>
			<enumeration value="JST">
				<annotation>
					<documentation>Japan Standard Time, winter and summer:GMT+9</documentation>
				</annotation>
			</enumeration>
			<enumeration value="ROK">
				<annotation>
					<documentation>Korea Standard Time, winter and summer:GMT+9</documentation>
				</annotation>
			</enumeration>
			<enumeration value="ACT">
				<annotation>
					<documentation>Australia Central Time (Northern Territory), winter and summer:GMT+9:30
					</documentation>
				</annotation>
			</enumeration>
			<enumeration value="AET">
				<annotation>
					<documentation>Australia Eastern Time (New South Wales), winter:GMT+10 summer:GMT+11</documentation>
				</annotation>
			</enumeration>
			<enumeration value="AWT">
				<annotation>
					<documentation>Since 2013.01. Australia Western Time, winter:GMT+8 summer:GMT+9</documentation>
				</annotation>
			</enumeration>
			<enumeration value="ACST">
				<annotation>
					<documentation>Since 2013.01. Australia Central Standard Time, winter and summer GMT+9:30</documentation>
				</annotation>
			</enumeration>
			<enumeration value="AEST">
				<annotation>
					<documentation>Since 2013.01. Australia Eastern Standard Time, winter and summer GMT+10</documentation>
				</annotation>
			</enumeration>
			<enumeration value="AEDT">
				<annotation>
					<documentation>Since 2016.01. Australia Eastern Daylight Time, winter and summer GMT+11</documentation>
				</annotation>
			</enumeration>
			<enumeration value="SST">
				<annotation>
					<documentation>Solomon Is. Time, winter and summer:GMT+11</documentation>
				</annotation>
			</enumeration>
			<enumeration value="NST">
				<annotation>
					<documentation>New Zealand Standard Time, winter:GMT+12 summer:GMT+13</documentation>
				</annotation>
			</enumeration>
			<enumeration value="PYST">
				<annotation>
					<documentation>Paraguay Summer Time, winter: GMT-4 summer: GMT-3</documentation>
				</annotation>
			</enumeration>
		</restriction>
	</simpleType>
	<simpleType name="timeZoneGmtStringType">
		<restriction base="string">
			<pattern value="GMT[\+\-]([0-9]|(1[0-2]))(:[0-5][0-9])?"/>
		</restriction>
	</simpleType>
	<simpleType name="timeZoneStringType">
		<union memberTypes="fews:timeZoneEnumStringType fews:timeZoneGmtStringType fews:propertyReferenceString"/>
	</simpleType>
	<!-- -->
	<simpleType name="chartLineStyleEnumStringType">
		<restriction base="string">
			<enumeration value="none"/>
			<enumeration value="solid"/>
			<enumeration value="solid;thick"/>
			<enumeration value="dashed"/>
			<enumeration value="dashed;thick"/>
			<enumeration value="dotted"/>
			<enumeration value="dotted;thick"/>
			<enumeration value="dashdot"/>
			<enumeration value="dashdot;thick"/>
			<enumeration value="bar"/>
			<enumeration value="area"/>
			<enumeration value="constant"/>
			<enumeration value="verticalLine">
				<annotation>
					<documentation>Since 2014.02. FEWS-10303. This style shows vertical lines in plots on time step of time serie</documentation>
				</annotation>
			</enumeration>
			<enumeration value="verticalDotted"/>
			<enumeration value="verticalDotted;thick"/>
		</restriction>
	</simpleType>
	<simpleType name="gridLineStyleEnumStringType">
		<restriction base="string">
			<enumeration value="none"/>
			<enumeration value="solid"/>
			<enumeration value="solid;thick"/>
			<enumeration value="dashed"/>
			<enumeration value="dashed;thick"/>
			<enumeration value="dotted"/>
			<enumeration value="dotted;thick"/>
			<enumeration value="dashdot"/>
			<enumeration value="dashdot;thick"/>
		</restriction>
	</simpleType>
	<!--Enumeration for line styles-->
	<simpleType name="thresholdLabelAlignmentEnumStringType">
		<restriction base="string">
			<enumeration value="left"/>
			<enumeration value="right"/>
		</restriction>
	</simpleType>
	<!--Enumeration for threshold label alignments-->
	<simpleType name="markerStyleEnumStringType">
		<restriction base="string">
			<enumeration value="none"/>
			<enumeration value="square"/>
			<enumeration value="diamond"/>
			<enumeration value="triangleup"/>
			<enumeration value="triangledown"/>
			<enumeration value="circle"/>
			<enumeration value="x"/>
			<enumeration value="+"/>
			<enumeration value="rectangle"/>
		</restriction>
	</simpleType>
	<!--Enumeration for marker styles-->
	<simpleType name="markerSizeIntegerType">
		<restriction base="positiveInteger">
			<minInclusive value="2"/>
			<maxInclusive value="72"/>
		</restriction>
	</simpleType>
	<simpleType name="mapProjectionEnumStringType">
		<restriction base="string">
			<enumeration value="mercator"/>
			<enumeration value="web_mercator"/>
			<enumeration value="llxy"/>
			<enumeration value="gnomonic"/>
			<enumeration value="orthographic"/>
		</restriction>
	</simpleType>
	<!--    -->
	<complexType name="GeoMapComplexType">
		<sequence>
			<element name="description" type="string" minOccurs="0"/>
			<element name="geoDatum" type="fews:geoDatumStringType" minOccurs="0">
				<annotation>
					<documentation>Geo datum used for map extents and for layers that do not have a specified geo datum. When missing WGS 1984 is assumed. NB. For the reports, it is a required
						element. Since 2017.01 most EPSG codes listed at
						https://epsg.io are supported e.g. EPSG:4326
					</documentation>
				</annotation>
			</element>
			<element name="projection" type="fews:mapProjectionEnumStringType" minOccurs="0"/>
			<choice>
				<sequence>
					<element name="defaultExtent" type="fews:GeoMapExtentComplexType">
						<annotation>
							<documentation>Default visible area of the map</documentation>
						</annotation>
					</element>
					<element name="extraExtent" type="fews:GeoMapExtentComplexType" minOccurs="0" maxOccurs="unbounded">
						<annotation>
							<documentation>Extra visible areas the user can choose with the a drop down list in the map
								tool bar
							</documentation>
						</annotation>
					</element>
				</sequence>
				<element name="extents" type="fews:GeoMapExtentsComplexType">
					<annotation>
						<documentation>Deprecated, do not nest the extents</documentation>
					</annotation>
				</element>
			</choice>
			<group ref="fews:ScaleBarChoice" minOccurs="0">
				<annotation>
					<documentation>Scale Bar is not visible by default</documentation>
				</annotation>
			</group>
			<group ref="fews:NorthArrowChoice" minOccurs="0">
				<annotation>
					<documentation>North Arrow is not visible by default</documentation>
				</annotation>
			</group>
			<element name="labelsVisible" type="boolean" minOccurs="0">
				<annotation>
					<documentation>sets the default value for the location label toggle button in the map display. This button is used to show labels with the names of displayed time serie locations
						in the map
					</documentation>
				</annotation>
			</element>
			<element name="backgroundColor" type="fews:colorStringType" minOccurs="0">
				<annotation>
					<documentation>Default is white</documentation>
				</annotation>
			</element>
			<element name="backgroundOpaquenessPercentage" type="fews:percentageType" minOccurs="0">
				<annotation>
					<documentation>Controls the transparency / opaqueness of the background. 0% is completely transparent and 100% is completely opaque. Can be use in the spatial snapshot function in
						reports
					</documentation>
				</annotation>
			</element>
			<choice minOccurs="0" maxOccurs="unbounded">
				<element name="wfsConnection" type="fews:WfsConnectionComplexType">
					<annotation>
						<documentation>Defines a Web Feature Service (WFS) connection that can be referenced by a serverShapeLayer
						</documentation>
					</annotation>
				</element>
				<element name="wmsConnection" type="fews:WfsConnectionComplexType">
					<annotation>
						<documentation>Defines a Web Map Service (WMS) connection that can be referenced by a wmsLayer
						</documentation>
					</annotation>
				</element>
				<element name="arcSdeConnection" type="fews:ArcSdeConnectionComplexType">
					<annotation>
						<documentation>Defines an ArcSDE connection that can be referenced by a serverShapeLayer</documentation>
					</annotation>
				</element>
			</choice>
			<group ref="fews:layerChoice" maxOccurs="unbounded"/>
			<element name="toolbarButtonToolTipAvailable" type="boolean" minOccurs="0">
				<annotation>
					<documentation>Since 2014.02 FEWS-10778. Enable this button to add a tooltip button on the toolbar (for maps). This button allows a user to disable all tooltip on a map. If this
						option is disabled, the tooltip button will only appear for maps with optional tooltips where the optional tooltips can be disabled/enabled.
					</documentation>
				</annotation>
			</element>
		</sequence>
	</complexType>
	<!--    -->
	<complexType name="LayerGroupComplexType">
		<sequence>
			<element name="description" type="string" minOccurs="0"/>
			<group ref="fews:layerChoice" maxOccurs="unbounded"/>
		</sequence>
		<attribute name="id" type="fews:idStringType" use="required"/>
		<attribute name="name" type="fews:nameStringType" use="optional"/>
	</complexType>
	<group name="layerChoice">
		<choice>
			<element name="layerGroup" type="fews:LayerGroupComplexType">
				<annotation>
					<documentation>includes a group or sub group of layers</documentation>
				</annotation>
			</element>
			<element name="esriAsciiGridLayer" type="fews:EsriAsciiGridLayerComplexType">
				<annotation>
					<documentation>An esri ascii grid layer.</documentation>
				</annotation>
			</element>
			<element name="coverageTileArchiveLayer" type="fews:CoverageTileArchiveLayerComplexType">
				<annotation>
					<documentation>Since 2013.01 FEWS-8728. Displays pre-generated (elevation) tiles in an archive file. The tiles are compatible with open street map. Class breaks are required to
						render the tiles to an image
					</documentation>
				</annotation>
			</element>
			<element name="esriShapeLayer" type="fews:EsriShapeLayerComplexType">
				<annotation>
					<documentation>shp file is required, dbf and shx file are ignored, ssx file and lat long file are automatically generated</documentation>
				</annotation>
			</element>
			<element name="geoJsonLayer" type="fews:GeoJsonLayerComplexType">
				<annotation>
					<documentation>GeoJSON file. https://en.wikipedia.org/wiki/GeoJSON</documentation>
				</annotation>
			</element>
			<element name="geoPackageLayer" type="fews:GeoPackageLayerComplexType">
				<annotation>
					<documentation>GeoJSON file. https://en.wikipedia.org/wiki/GeoJSON</documentation>
				</annotation>
			</element>
			<element name="bitmapLayer" type="fews:BitmapLayerComplexType">
				<annotation>
					<documentation>A image layer with a world file: tif/tfw, jpg/jpw, bmp/bmw, gif/gwf are supported. Layers are listed from back to front.</documentation>
				</annotation>
			</element>
			<element name="gridGeometryLayer" type="fews:GridGeometryLayerComplexType">
				<annotation>
					<documentation>Show the grid lines of a grid defined in the grids.xml</documentation>
				</annotation>
			</element>
			<element name="openStreetMapLayer" type="fews:OpenStreetMapLayerComplexType">
				<annotation>
					<documentation>
						Used to connect to server that uses the open street map tile protocol
					</documentation>
				</annotation>
			</element>
			<element name="wmsLayer" type="fews:WmsLayerComplexType">
				<annotation>
					<documentation>
						Used to connect to WMS server
					</documentation>
				</annotation>
			</element>
			<element name="wmsLayers" type="fews:WmsLayersComplexType">
				<annotation>
					<documentation>
						Used to connect to WMS server. Add all layers provided by a wms server by default invisible
					</documentation>
				</annotation>
			</element>
			<element name="gridLayer" type="fews:GridLayerComplexType">
				<annotation>
					<documentation>The layer where the grids are displayed, when this layer is not specified the grid layer will be automatically added on top. Layers are listed from back to front.
						Lines from shape layers will always be on top when no grid layer is specified.
					</documentation>
				</annotation>
			</element>
			<element name="serverShapeLayer" type="fews:ServerShapeLayerComplexType">
				<annotation>
					<documentation>References a layer in one of the configured connections. GeoDatum is provided by the server
					</documentation>
				</annotation>
			</element>
			<element name="layer" type="fews:GeoMapLayerComplexType">
				<annotation>
					<documentation>Only for advanced users, with this layer you can specify the java class and
						properties of layers that are implemented by third parties. Layers are listed from back to
						front.
					</documentation>
				</annotation>
			</element>
		</choice>
	</group>
	<!--    -->
	<complexType name="EsriShapeLayerComplexType">
		<sequence>
			<element name="description" type="string" minOccurs="0"/>
			<element name="viewPermission" type="string" minOccurs="0">
				<annotation>
					<documentation>Set a permission to control who can view this layer</documentation>
				</annotation>
			</element>
			<element name="file" type="string">
				<annotation>
					<documentation>A name of the map layer or a full path to the shape file (*.shp). The dbf and shx files are not required for FEWS but are required if you want to open them with
						ArcView later. The shp file is not required when the sll file already exists.
					</documentation>
				</annotation>
			</element>
			<choice minOccurs="0">
				<element name="geoDatum" type="fews:geoDatumStringType"/>
				<element name="projectionFileAvailable" type="boolean">
					<annotation>
						<documentation>A projection file has the same name as the shp file, only the with extension .prj instead of .shp.
							A prj file can be used instead of specifying the geo datum in the layer or map.
							When false the geo datum of the map will be used
						</documentation>
					</annotation>
				</element>
			</choice>
			<group ref="fews:ShapeLayerElements"/>
		</sequence>
		<attribute name="id" type="fews:idStringType" use="required"/>
		<attribute name="name" type="fews:nameStringType" use="optional"/>
	</complexType>

	<complexType name="GeoJsonLayerComplexType">
		<sequence>
			<element name="description" type="string" minOccurs="0"/>
			<element name="viewPermission" type="string" minOccurs="0">
				<annotation>
					<documentation>Set a permission to control who can view this layer</documentation>
				</annotation>
			</element>
			<element name="file" type="string">
				<annotation>
					<documentation>A name of the map layer or a full path to the file (*.geojson).
					</documentation>
				</annotation>
			</element>
			<element name="shapeType" type="fews:shapeTypeEnumStringType">
				<annotation>
					<documentation>When the geojson file contains multiple shape types you can add the layer multiple times for each shape type</documentation>
				</annotation>
			</element>
			<group ref="fews:ShapeLayerElements"/>
		</sequence>
		<attribute name="id" type="fews:idStringType" use="required"/>
		<attribute name="name" type="fews:nameStringType" use="optional"/>
	</complexType>

	<complexType name="GeoPackageLayerComplexType">
		<sequence>
			<element name="description" type="string" minOccurs="0"/>
			<element name="viewPermission" type="string" minOccurs="0">
				<annotation>
					<documentation>Set a permission to control who can view this layer</documentation>
				</annotation>
			</element>
			<element name="file" type="string">
				<annotation>
					<documentation>A name of the map layer or a full path to the file (*.geojson).
					</documentation>
				</annotation>
			</element>
			<element name="layerName" type="string">
				<annotation>
					<documentation>Name of the layer, required when the file contains multiple layers</documentation>
				</annotation>
			</element>
			<group ref="fews:ShapeLayerElements"/>
		</sequence>
		<attribute name="id" type="fews:idStringType" use="required"/>
		<attribute name="name" type="fews:nameStringType" use="optional"/>
	</complexType>
	<complexType name="ServerShapeLayerComplexType">
		<sequence>
			<element name="description" type="string" minOccurs="0"/>
			<element name="viewPermission" type="string" minOccurs="0">
				<annotation>
					<documentation>Set a permission to control who can view this layer</documentation>
				</annotation>
			</element>
			<element name="connectionId" type="string">
				<annotation>
					<documentation>
						id of the connection, this connection should be defined in this map, just before the
						layers
					</documentation>
				</annotation>
			</element>
			<element name="layerId" type="string">
				<annotation>
					<documentation>id of the layer provided by the connection
					</documentation>
				</annotation>
			</element>
			<element name="shapeType" type="fews:shapeTypeEnumStringType" minOccurs="0">
				<annotation>
					<documentation>Some layers provide multiple shape types. Fews only supports one shape type per layer.
						Shape type is optional when all the shapes are of the same type.
					</documentation>
				</annotation>
			</element>
			<element name="attributeTextEqualsConstraint" type="fews:ShapeAttributeTextEqualsComplexType" minOccurs="0" maxOccurs="unbounded">
				<annotation>
					<documentation>To limit the shapes downloaded from the server you can filter for one or more shape/feature attributes. Only the shapes that have the listed attribute values are
						downloaded and displayed.
					</documentation>
				</annotation>
			</element>
			<group ref="fews:ShapeLayerElements"/>
		</sequence>
		<attribute name="id" type="fews:idStringType" use="required"/>
		<attribute name="name" type="fews:nameStringType" use="optional"/>
	</complexType>
	<complexType name="ShapeAttributeTextEqualsComplexType">
		<attribute name="id" type="fews:idStringType" use="required">
			<annotation>
				<documentation>
					Id of the shape/feature attribute
				</documentation>
			</annotation>
		</attribute>
		<attribute name="equals" type="string" use="required">
			<annotation>
				<documentation>
					The text the shape/feature attribute value should equals
				</documentation>
			</annotation>
		</attribute>
	</complexType>
	<group name="ShapeLayerElements">
		<sequence>
			<element name="charset" type="fews:charsetEnumStringType" minOccurs="0"/>
			<element name="visible" type="boolean" minOccurs="0">
				<annotation>
					<documentation>Controls if the layer is automatically visible. When false the user has to switch on the layer manually. By default the layer becomes automatically visible
					</documentation>
				</annotation>
			</element>
			<element name="hideGridDataLayers" type="boolean" minOccurs="0">
				<annotation>
					<documentation>When true this layer hides the parts of displayed grids that are covered by the polygons in this layer. Also works when this grid is invisible</documentation>
				</annotation>
			</element>
			<choice minOccurs="0">
				<element name="usedBySelectByMapItemTool" type="boolean">
					<annotation>
						<documentation>Controls if the layer is used by the "Select by map item tool" in the FEWS explorer to easily select all locations in a polygon.
						</documentation>
					</annotation>
				</element>
				<element name="selectByMapItemLocationRelation" type="fews:SelectByMapItemLocationRelationComplexType">
					<annotation>
						<documentation>When this element is specified an location relation is used to find locations at the map instead of the polygon border.
						</documentation>
					</annotation>
				</element>
				<element name="selectByMapItemAttributeEquals" type="fews:SelectByMapItemAttributeEqualsComplexType">
					<annotation>
						<documentation>When this element is specified a (multivalued) location attribute is used to find locations at the map instead of the polygon border.</documentation>
					</annotation>
				</element>
			</choice>
			<sequence minOccurs="0">
				<element name="label" type="string">
					<annotation>
						<documentation>Label that is displayed at the map. Labels are decluttered so not all labels will
							be visible when zooming out
						</documentation>
					</annotation>
				</element>
				<element name="labelFontSize" type="positiveInteger" minOccurs="0">
					<annotation>
						<documentation>Label font size
						</documentation>
					</annotation>
				</element>
				<element name="labelFontColor" type="fews:colorStringType" minOccurs="0">
					<annotation>
						<documentation>Since 2017.02. Label font color, regular text color by default.</documentation>
					</annotation>
				</element>
				<element name="labelBackgroundColor" type="fews:colorStringType" minOccurs="0">
					<annotation>
						<documentation>Since 2017.02. Color of the label background, white by default.</documentation>
					</annotation>
				</element>
				<element name="labelOpaqueness" type="fews:percentageType" minOccurs="0">
					<annotation>
						<documentation>Since 2017.02. Opaqueness percentage of the label background, 50 by default.</documentation>
					</annotation>
				</element>
				<element name="labelBorderColor" type="fews:colorStringType" minOccurs="0">
					<annotation>
						<documentation>Since 2017.02. Color of the border drawn around labels. When no border color is defined, no border will be drawn.</documentation>
					</annotation>
				</element>
				<choice minOccurs="0">
					<element name="labelAtLine" type="boolean">
						<annotation>
							<documentation>Since 2017.02. True by default. When true, labels for line shape files are drawn on the lines and will move along the line when the view window is adjusted.
								When false, the labels for lines are placed next to the line and the location is fixed. Should only be used for a line shape file.
							</documentation>
						</annotation>
					</element>
					<sequence>
						<element name="labelXAttribute" type="string">
							<annotation>
								<documentation>Since 2017.02. Name of the shape attribute which is to be used as the x-coordinate for the label. When specified, labelYAttribute must be specified as
									well.
									When no label coordinate attributes are given, the label is placed on the line for line shape files and in the centre for polygons.
								</documentation>
							</annotation>
						</element>
						<element name="labelYAttribute" type="string">
							<annotation>
								<documentation>Since 2017.02. Name of the shape attribute which is to be used as the y-coordinate for the label. When specified, labelXAttribute must be specified as
									well.
									When no label coordinate attributes are given, the label is placed on the line for line shape files and in the centre for polygons.
								</documentation>
							</annotation>
						</element>
					</sequence>
				</choice>
			</sequence>
			<element name="toolTip" type="string" minOccurs="0">
				<annotation>
					<documentation>Tool tip that is displayed when the user is moving the mouse cursor over a shape.
						You can insert a attribute by inserting the attribute name between % You can use \n for a new line mark.
						e.g id=%ID%\nName=%NAME%
					</documentation>
				</annotation>
			</element>
			<group ref="fews:ScaleRange"/>
			<choice minOccurs="0">
				<element name="lineColor" type="fews:colorStringType"/>
				<element name="lineRgbColor" type="fews:rgbColorStringType">
					<annotation>
						<documentation>Deprecated; you can specify a rgb color using the lineColor
							element
						</documentation>
					</annotation>
				</element>
			</choice>
			<choice minOccurs="0">
				<element name="fillColor" type="fews:colorStringType"/>
				<element name="fillRgbColor" type="fews:rgbColorStringType">
					<annotation>
						<documentation>Deprecated; you can specify a rgb color using the lineColor
							element
						</documentation>
					</annotation>
				</element>
			</choice>
			<element name="opaquenessPercentage" type="fews:percentageType" minOccurs="0">
				<annotation>
					<documentation>Controls the transparency / opaqueness of the layer.
						0% is completely transparent and 100% is completely opaque
					</documentation>
				</annotation>
			</element>
			<element name="linePattern" type="fews:linePatternEnumStringType" minOccurs="0"/>
			<element name="lineDashLength" type="positiveInteger" default="25" minOccurs="0"/>
			<element name="lineDotLength" type="positiveInteger" default="3" minOccurs="0"/>
			<element name="lineGapLength" type="positiveInteger" default="10" minOccurs="0"/>
			<element name="lineWidth" type="fews:LayerLineWidthComplexType" minOccurs="0" maxOccurs="unbounded">
				<annotation>
					<documentation>You can specify one or multiple line widths.
						The default line width is one pixel. The line width that is used depends on the map scale and
						the attribute max scale
					</documentation>
				</annotation>
			</element>
			<choice minOccurs="0">
				<element name="pointSize" type="positiveInteger" default="3"/>
				<element name="pointIconId" type="string"/>
			</choice>
			<sequence minOccurs="0">
				<element name="timeZoneOffset" type="fews:timeZoneOffsetStringType" minOccurs="0">
					<annotation>
						<documentation>Since 2014.02. This offset is always relative to GMT. For example "+02:00" means GMT+02:00. If no offset specified, then time zone GMT is used by default.
						</documentation>
					</annotation>
				</element>
				<element name="dateTimePattern" type="fews:nonEmptyStringType" minOccurs="0">
					<annotation>
						<documentation>Since 2014.02. Optional pattern for the dateTimes in the character column. Default is yyyyMMdd, this is the internal format a dbf file is using when the column
							is of type 'D'.
						</documentation>
					</annotation>
				</element>
				<element name="startDateTimeAttributeName" type="string" minOccurs="0">
					<annotation>
						<documentation>Since 2014.02. Name of a shape attribute (dbase column name). When the display time is before the start time this shape is invisible</documentation>
					</annotation>
				</element>
				<element name="endDateTimeAttributeName" type="string" minOccurs="0">
					<annotation>
						<documentation>Since 2014.02. Name of a shape attribute (dbase column name). When the display time is after the start time this shape is invisible</documentation>
					</annotation>
				</element>
			</sequence>
			<sequence minOccurs="0">
				<element name="classBreaksAttributeName" type="string">
					<annotation>
						<documentation>Name of a shape attribute (dbase column name).</documentation>
					</annotation>
				</element>
				<element name="classBreaks" type="fews:ClassBreaksComplexType">
					<annotation>
						<documentation>The shape fill color can depend on the value of a shape attribute.
							When the shape attribute is of type text, e.g country name, add a class break
							for every country with a label that equals the country name. For the lower values use 1, 2, 3... etc
						</documentation>
					</annotation>
				</element>
			</sequence>
		</sequence>
	</group>
	<complexType name="EsriAsciiGridLayerComplexType">
		<sequence>
			<element name="description" type="string" minOccurs="0"/>
			<element name="viewPermission" type="string" minOccurs="0">
				<annotation>
					<documentation>Set a permission to control who can view this layer</documentation>
				</annotation>
			</element>
			<element name="file" type="string">
				<annotation>
					<documentation>A FULL ABSOLUTE path to file (.asc)</documentation>
				</annotation>
			</element>
			<group ref="fews:GridProjection" minOccurs="0">
				<annotation>
					<documentation>By default the projection of the geo datum of the map is used,
						without any rotation or shift"
					</documentation>
				</annotation>
			</group>
			<element name="visible" type="boolean" minOccurs="0">
				<annotation>
					<documentation>Controls if the layer is automatically visible.
						When false the user has to switch on the layer manually. By default the layer becomes
						automatically visible
					</documentation>
				</annotation>
			</element>
			<element name="unit" type="string" minOccurs="0"/>
			<element name="useAsLocalDatumReference" type="boolean" minOccurs="0">
				<annotation>
					<documentation>Since 2013.01 FEWS-8081. Use this layer as local datum reference. When true grids for a parameter with usesDatum=true can be displayed in local datum</documentation>
				</annotation>
			</element>
			<element name="spatialSmoothingEnabled" type="boolean" minOccurs="0" default="true">
				<annotation>
					<documentation>Since 2025.02. By-default, up-scaling is enabled to enhance the spatial resolution</documentation>
				</annotation>
			</element>
			<element name="classBreaks" type="fews:ClassBreaksComplexType">
				<annotation>
					<documentation>The shape fill color can depend on the value of a shape attribute.
						When the shape attribute is of type text, e.g country name, add a class break
						for every country with a label that equals the country name. For the lower values use 1, 2, 3... etc
					</documentation>
				</annotation>
			</element>
		</sequence>
		<attribute name="id" type="fews:idStringType" use="required"/>
		<attribute name="name" type="fews:nameStringType" use="optional"/>
	</complexType>
	<complexType name="CoverageTileArchiveLayerComplexType">
		<sequence>
			<element name="description" type="string" minOccurs="0"/>
			<element name="viewPermission" type="string" minOccurs="0">
				<annotation>
					<documentation>Set a permission to control who can view this layer</documentation>
				</annotation>
			</element>
			<element name="file" type="string" maxOccurs="unbounded">
				<annotation>
					<documentation>A FULL ABSOLUTE path to file (.cta). Multiple files can be specified. When the file is uploaded by the config manager split the cta file into multiple cta files of
						about 10MB. This can be specified when converting an asc grid to cta
					</documentation>
				</annotation>
			</element>
			<element name="visible" type="boolean" minOccurs="0">
				<annotation>
					<documentation>Controls if the layer is automatically visible. When false the user has to switch on the layer manually. By default the layer becomes automatically visible
					</documentation>
				</annotation>
			</element>
			<element name="unit" type="string" minOccurs="0"/>
			<element name="useAsLocalDatumReference" type="boolean" minOccurs="0">
				<annotation>
					<documentation>Use this layer as local datum reference. When true grids for a parameter with usesDatum=true can be displayed in local datum</documentation>
				</annotation>
			</element>
			<element name="classBreaks" type="fews:ClassBreaksComplexType">
				<annotation>
					<documentation>The shape fill color can depend on the value of a shape attribute. When the shape attribute is of type text, e.g country name, add a class break for every country
						with a label that equals the country name. For the lower values use 1, 2, 3... etc
					</documentation>
				</annotation>
			</element>
		</sequence>
		<attribute name="id" type="fews:idStringType" use="required"/>
		<attribute name="name" type="fews:nameStringType" use="optional"/>
	</complexType>
	<!-- -->
	<complexType name="WfsConnectionComplexType">
		<sequence>
			<element name="url" type="fews:nonEmptyStringType">
				<annotation>
					<documentation><![CDATA[eg. http://sigma.openplans.org/geoserver/ows?service=WFS&request=GetCapabilities]]></documentation>
				</annotation>
			</element>
			<group ref="fews:UserAndPassword" minOccurs="0">
				<annotation>
					<documentation>User name and password used for http authentication</documentation>
				</annotation>
			</group>
		</sequence>
		<attribute name="id" type="fews:idStringType"/>
	</complexType>
	<!-- -->
	<complexType name="WmsConnectionComplexType">
		<sequence>
			<element name="url" type="fews:nonEmptyStringType">
				<annotation>
					<documentation><![CDATA[eg. http://sigma.openplans.org/geoserver/ows?service=WMS&request=GetCapabilities]]></documentation>
				</annotation>
			</element>
			<group ref="fews:UserAndPassword" minOccurs="0">
				<annotation>
					<documentation>User name and password used for http authentication</documentation>
				</annotation>
			</group>
		</sequence>
		<attribute name="id" type="fews:idStringType"/>
	</complexType>
	<!-- -->
	<complexType name="ArcSdeConnectionComplexType">
		<sequence>
			<element name="server" type="fews:nonEmptyStringType">
				<annotation>
					<documentation>
						The machine which the ArcSDE instance is running on.
					</documentation>
				</annotation>
			</element>
			<element name="port" type="fews:nonNegativeIntegerStringType" default="5151" minOccurs="0">
				<annotation>
					<documentation>
						The port the ArcSDE instance is running on. The default is 5151.
					</documentation>
				</annotation>
			</element>
			<element name="database" type="fews:nonEmptyStringType" minOccurs="0">
				<annotation>
					<documentation>
						Optional The ArcSDE instance name (generally "sde", or whatever you called the database).
					</documentation>
				</annotation>
			</element>
			<group ref="fews:UserAndPassword"/>
		</sequence>
		<attribute name="id" type="fews:idStringType"/>
	</complexType>
	<!-- -->
	<group name="UserAndPassword">
		<sequence>
			<element name="user" type="fews:nonEmptyStringType">
				<annotation>
					<documentation>User name used for authentication</documentation>
				</annotation>
			</element>
			<choice minOccurs="0">
				<element name="encryptedPassword" type="string">
					<annotation>
						<documentation>Encrypted user's password. Password is encrypted with clipboard utils in F12 menu in (any) SA/OC</documentation>
					</annotation>
				</element>
				<element name="password" type="string">
					<annotation>
						<documentation>The user's password. Error will be logged when used. Error message will contain the encrypted password to replace this element with the element
							encryptedPassword
						</documentation>
					</annotation>
				</element>
			</choice>
		</sequence>
	</group>
	<!-- -->
	<simpleType name="linePatternEnumStringType">
		<restriction base="string">
			<enumeration value="dashed"/>
			<enumeration value="dotted"/>
			<enumeration value="dot dashed"/>
			<enumeration value="dash dot dot"/>
		</restriction>
	</simpleType>
	<!--    -->
	<simpleType name="shapeTypeEnumStringType">
		<restriction base="string">
			<enumeration value="point"/>
			<enumeration value="line"/>
			<enumeration value="polygon"/>
		</restriction>
	</simpleType>
	<!--    -->
	<complexType name="LayerLineWidthComplexType">
		<attribute name="scale" type="fews:scaleType" use="optional">
			<annotation>
				<documentation>You can specify multiple line widths with different scale attributes.
					The actual line width will be calculated based on the two specified line widths with the scale closest to the actual scale
				</documentation>
			</annotation>
		</attribute>
		<attribute name="value" type="double" use="optional">
			<annotation>
				<documentation>The line width for the specified scale. The width for the actual scale is calculated by interpolation</documentation>
			</annotation>
		</attribute>
		<attribute name="maxScale" type="double" use="optional">
			<annotation>
				<documentation>Deprecated use scale</documentation>
			</annotation>
		</attribute>
	</complexType>
	<!--    -->
	<complexType name="GridLayerComplexType">
		<sequence>
			<element name="description" type="string" minOccurs="0"/>
			<element name="viewPermission" type="string" minOccurs="0">
				<annotation>
					<documentation>Set a permission to control who can view this layer</documentation>
				</annotation>
			</element>
		</sequence>
	</complexType>
	<group name="ClassBreaksChoice">
		<choice>
			<element name="classBreaksId" type="fews:idStringType">
				<annotation>
					<documentation>Reference to class breaks configured in TimeSeriesDisplayConfig.xml.</documentation>
				</annotation>
			</element>
			<element name="classBreaks" type="fews:ClassBreaksComplexType">
				<annotation>
					<documentation>Class breaks inlined</documentation>
				</annotation>
			</element>
		</choice>
	</group>
	<group name="ArrowClassBreaksChoice">
		<choice>
			<element name="arrowClassBreaksId" type="fews:idStringType">
				<annotation>
					<documentation>Reference to class breaks configured in TimeSeriesDisplayConfig.xml.</documentation>
				</annotation>
			</element>
			<element name="arrowClassBreaks" type="fews:ClassBreaksComplexType">
				<annotation>
					<documentation>Class breaks inlined</documentation>
				</annotation>
			</element>
		</choice>
	</group>
	<!--    -->
	<complexType name="ClassBreaksComplexType">
		<sequence>
			<group ref="fews:ClassBreaksGroup"/>
		</sequence>
	</complexType>
	<group name="ClassBreaksGroup">
		<sequence>
			<element name="description" type="string" minOccurs="0"/>
			<element name="missingValueColor" type="fews:colorStringType" minOccurs="0">
				<annotation>
					<documentation>Color that is used to display missing values (NaN values) for point locations and tracks. Default is fully transparent.</documentation>
				</annotation>
			</element>
			<element name="missingValueOpaquenessPercentage" type="fews:percentageType" minOccurs="0">
				<annotation>
					<documentation>Opaqueness percentage that is used to display missing values (NaN values) for point locations and tracks. This overrules the opaqueness of the configured
						missingValueColor. If missingValueOpaquenessPercentage is not configured, then opaqueness of missingValueColor is used.
					</documentation>
				</annotation>
			</element>
			<sequence minOccurs="0">
				<element name="belowRangeColor" type="fews:colorStringType">
					<annotation>
						<documentation>Since 2017.01.01. Color that is used to display values below the lowerValue of the first class break. Default is fully transparent.</documentation>
					</annotation>
				</element>
				<element name="belowRangeOpaquenessPercentage" type="fews:percentageType" minOccurs="0">
					<annotation>
						<documentation>Since 2017.01.01. Opaqueness that is used to display values below the lowerValue of the first class break. Default is fully opaque.</documentation>
					</annotation>
				</element>
			</sequence>
			<sequence minOccurs="0">
				<element name="aboveRangeColor" type="fews:colorStringType">
					<annotation>
						<documentation>Since 2017.01.01. Color that is used to display values above the lowerValue of the last class break. Default is fully transparent.</documentation>
					</annotation>
				</element>
				<element name="aboveRangeOpaquenessPercentage" type="fews:percentageType" minOccurs="0">
					<annotation>
						<documentation>Since 2017.01.01. Opaqueness that is used to display values above the lowerValue of the last class break. Default is fully opaque.</documentation>
					</annotation>
				</element>
			</sequence>
			<element name="unitVisible" type="boolean" default="false" minOccurs="0">
				<annotation>
					<documentation>Default is false. When true the display unit for the class break lowerValues is visible in the legend. The display unit can be configured in parameter group.
					</documentation>
				</annotation>
			</element>
			<element name="rescaleAroundOrdinalValue" type="float" minOccurs="0">
				<annotation>
					<documentation>
						When using the right mouse "rescale classification" option, the rescaling will be based on new Min-Max values from which the defaults are based on zoom extent, with new breaks based on relative widths between lowerValues. Ordinal Value is required if rescaling should keep a fixed origin (e.g.
						zero).

						Example 1: when rescaling without an ordinal value, then all lowerValues will be transformed so that the lowest lowerValue coincides with the minimum value in the zoom extent,
						and that the highest lowerValue coincides with the maximum value in the zoom extent.

						Example 2: when rescaling with an ordinal value of 100, then each lowerValue will be transformed as follows.
						newLowerValue = ( {oldLowerValue - 100} * scalingFactor ) + 100
						This means that values of 100 will stay in the same classBreak and keep the same color and symbolSize, while other values may not.

						The scalingFactor is changed to ensure that the lowest lowerValue below the ordinal value will be transformed to the min value in the zoom extent, while the highest lowerValue
						above the ordinal value will be transformed to the max value in the zoom extent.
					</documentation>
				</annotation>
			</element>
			<choice maxOccurs="unbounded">
				<sequence>
					<element name="lowerColor" type="fews:colorStringType"/>
					<element name="upperColor" type="fews:colorStringType"/>
					<element name="lowerOpaquenessPercentage" type="fews:percentageType" minOccurs="0"/>
					<element name="upperOpaquenessPercentage" type="fews:percentageType" minOccurs="0"/>
					<element name="lowerSymbolSize" type="positiveInteger" minOccurs="0"/>
					<element name="upperSymbolSize" type="positiveInteger" minOccurs="0"/>
					<element name="lowerValue" type="float" minOccurs="2" maxOccurs="unbounded"/>
				</sequence>
				<element name="color" type="fews:ClassBreakComplexType">
					<annotation>
						<documentation>Deprecated, use break</documentation>
					</annotation>
				</element>
				<element name="break" type="fews:ClassBreakComplexType"/>
			</choice>
		</sequence>
	</group>
	<!-- -->
	<complexType name="ClassBreakComplexType">
		<attribute name="color" type="fews:colorStringType" use="optional"/>
		<attribute name="opaquenessPercentage" type="fews:percentageType" use="optional"/>
		<attribute name="symbolSize" type="positiveInteger" use="optional"/>
		<attribute name="lowerValue" type="float" use="required"/>
		<attribute name="label" type="string" use="optional"/>
		<attribute name="colorSmoothingEnabled" type="boolean" use="optional"/>
		<attribute name="icon" type="fews:fileStringType" use="optional">
			<annotation>
				<documentation>Since 2014.02 implemented for Track Layer and since 2017.02 for esriShapeLayer with points.</documentation>
			</annotation>
		</attribute>
		<attribute name="hideValueLabels" type="boolean" default="false">
			<annotation>
				<documentation>Since 2020.01 If set to true, labels of values which fall into the classBreak will not be displayed.</documentation>
			</annotation>
		</attribute>
	</complexType>
	<!--    -->
	<complexType name="BitmapLayerComplexType">
		<sequence>
			<element name="description" type="string" minOccurs="0"/>
			<element name="viewPermission" type="string" minOccurs="0">
				<annotation>
					<documentation>Set a permission to control who can view this layer</documentation>
				</annotation>
			</element>
			<element name="file" type="string"/>
			<element name="geoDatum" type="fews:geoDatumStringType" minOccurs="0"/>
			<element name="visible" type="boolean" minOccurs="0"/>
			<group ref="fews:ScaleRange"/>
		</sequence>
		<attribute name="id" type="fews:idStringType" use="required"/>
		<attribute name="name" type="fews:nameStringType" use="optional"/>
	</complexType>
	<!--    -->
	<complexType name="GridGeometryLayerComplexType">
		<sequence>
			<element name="description" type="string" minOccurs="0"/>
			<element name="viewPermission" type="string" minOccurs="0">
				<annotation>
					<documentation>Set a permission to control who can view this layer</documentation>
				</annotation>
			</element>
			<element name="gridLocationId" type="fews:idStringType">
				<annotation>
					<documentation>Id of one of the grids in the grids.xml</documentation>
				</annotation>
			</element>
			<element name="visible" type="boolean" minOccurs="0"/>
			<element name="lineColor" type="fews:colorStringType">
				<annotation>
					<documentation>Color of the lines</documentation>
				</annotation>
			</element>
			<group ref="fews:ScaleRange"/>
		</sequence>
		<attribute name="id" type="fews:idStringType" use="required"/>
		<attribute name="name" type="fews:nameStringType" use="optional"/>
	</complexType>
	<!--    -->
	<group name="ScaleRange">
		<sequence>
			<element name="minScale" type="fews:scaleType" minOccurs="0">
				<annotation>
					<documentation>When the scale of the map is smaller then the minimum scale the layer is invisible. The scale is based on a normal monitor resolution. e.g. 1:100000 means 1 cm
						equals 1 km
					</documentation>
				</annotation>
			</element>
			<element name="maxScale" type="fews:scaleType" minOccurs="0">
				<annotation>
					<documentation>When the scale of the map is larger then the maximum scale the layer is invisible. The scale is based on a normal monitor resolution. e.g. 1:100000 means 1 cm equals
						1 km
					</documentation>
				</annotation>
			</element>
		</sequence>
	</group>
	<!--    -->
	<complexType name="OpenStreetMapLayerComplexType">
		<sequence>
			<element name="description" type="string" minOccurs="0"/>
			<element name="viewPermission" type="string" minOccurs="0">
				<annotation>
					<documentation>Set a permission to control who can view this layer</documentation>
				</annotation>
			</element>
			<element name="url" type="fews:nonEmptyStringType"/>
			<element name="visible" type="boolean" minOccurs="0"/>
			<element name="cacheDir" type="fews:directoryStringType">
				<annotation>
					<documentation>The directory where downloaded osm tiles are cached. Put the cache on a network drive so the cache can be shared among multiple OC / SA
					</documentation>
				</annotation>
			</element>
			<group ref="fews:ScaleRange"/>
		</sequence>
		<attribute name="id" type="fews:idStringType" use="required"/>
		<attribute name="name" type="fews:nameStringType" use="optional"/>
	</complexType>
	<!--    -->
	<complexType name="WmsLayerComplexType">
		<sequence>
			<element name="description" type="string" minOccurs="0"/>
			<element name="viewPermission" type="string" minOccurs="0">
				<annotation>
					<documentation>Set a permission to control who can view this layer</documentation>
				</annotation>
			</element>
			<choice>
				<sequence>
					<element name="url" type="fews:nonEmptyStringType">
						<annotation>
							<documentation>Base url for the wms server. This is everything before the text "VERSION=" in the url. Use &amp;amp; to include a &amp;</documentation>
						</annotation>
					</element>
					<group ref="fews:WmsVersionAndGeoDatumSequence"/>
					<element name="wmsLayerName" type="fews:nonEmptyStringType" maxOccurs="unbounded">
						<annotation>
							<documentation>Layer name to display. It's the part after the text "LAYERS=" till the next &amp; in the url. To find the layer names enter the url that ends withs
								"request=GetCapabilities" in a browser.
							</documentation>
						</annotation>
					</element>
					<group ref="fews:WmsImageOptionsGroup"/>
					<group ref="fews:WmsVendorParametersGroup"/>
					<element name="visible" type="boolean" minOccurs="0"/>
					<element name="toolTipAvailable" type="boolean" minOccurs="0">
						<annotation>
							<documentation>Only set to true when the WMS layer supports GetFeatureInfo. For performance reasons the server capabilities are not queried by FEWS.</documentation>
						</annotation>
					</element>
					<element name="cacheDir" type="fews:directoryStringType">
						<annotation>
							<documentation>
								Cache dir to store the downloaded tiles. Every layer needs its own cache dir. When specifying a connection id instead of a url the general map cache dir will be used.
							</documentation>
						</annotation>
					</element>
					<group ref="fews:ScaleRange"/>
				</sequence>
				<sequence>
					<element name="connectionId" type="string">
						<annotation>
							<documentation>
								id of the wms connection, this connection should be defined in this map, just before the layers
							</documentation>
						</annotation>
					</element>
					<group ref="fews:WmsVersionAndGeoDatumSequence"/>
					<element name="wmsLayerName" type="fews:nonEmptyStringType" maxOccurs="unbounded">
						<annotation>
							<documentation>Layer name to display. It's the part after the text "LAYERS=" till the next &amp; in the url. To find the layer names enter the url that ends withs
								"request=GetCapabilities" in a browser.
							</documentation>
						</annotation>
					</element>
					<group ref="fews:WmsImageOptionsGroup"/>
					<group ref="fews:WmsVendorParametersGroup"/>
					<element name="visible" type="boolean" minOccurs="0"/>
					<element name="toolTipAvailable" type="boolean" minOccurs="0">
						<annotation>
							<documentation>Only set to true when the WMS layer supports GetFeatureInfo. For performance reasons the connection capabilities are not queried by FEWS.</documentation>
						</annotation>
					</element>
					<group ref="fews:ScaleRange"/>
				</sequence>
			</choice>
			<element name="cacheExpiryTimeSpanMillis" type="fews:CalendarTimeSpanComplexType" minOccurs="0">
				<annotation>
					<documentation>Re-download tile when expired.</documentation>
				</annotation>
			</element>
		</sequence>
		<attribute name="id" type="fews:idStringType" use="required"/>
		<attribute name="name" type="fews:nameStringType" use="optional"/>
	</complexType>
	<complexType name="WmsLayersComplexType">
		<sequence>
			<element name="description" type="string" minOccurs="0"/>
			<element name="viewPermission" type="string" minOccurs="0">
				<annotation>
					<documentation>Set a permission to control who can view this layer</documentation>
				</annotation>
			</element>
			<choice>
				<sequence>
					<element name="url" type="fews:nonEmptyStringType">
						<annotation>
							<documentation>Base url for the wms server. This is everything before the text "VERSION=" in the url. Use &amp;amp; to include a &amp;</documentation>
						</annotation>
					</element>
					<group ref="fews:WmsVersionAndGeoDatumSequence"/>
					<group ref="fews:WmsImageOptionsGroup"/>
					<group ref="fews:WmsVendorParametersGroup"/>
					<element name="cacheDir" type="fews:directoryStringType">
						<annotation>
							<documentation>
								Cache dir to store the downloaded tiles. When specifying a connection id instead of a url the general map cache dir will be used
							</documentation>
						</annotation>
					</element>
				</sequence>
				<sequence>
					<element name="connectionId" type="string">
						<annotation>
							<documentation>
								id of the wms connection, this connection should be defined in this map, just before the layers
							</documentation>
						</annotation>
					</element>
					<group ref="fews:WmsVersionAndGeoDatumSequence"/>
					<group ref="fews:WmsImageOptionsGroup"/>
					<group ref="fews:WmsVendorParametersGroup"/>
				</sequence>
			</choice>
			<group ref="fews:ScaleRange"/>
		</sequence>
	</complexType>
	<!--    -->
	<simpleType name="wmsVersionEnumStringType">
		<restriction base="string">
			<enumeration value="1.1.1">
				<annotation>
					<documentation>
						Default
					</documentation>
				</annotation>
			</enumeration>
			<enumeration value="1.3.0">
				<annotation>
					<documentation>
						Changes with respect to version 1.1.1 are to use "CRS=EPSG:4326" instead of "SRS=EPSG:4326", and the order of the BBOX coordinates is flipped from xmin,ymin,xmax,ymax to
						ymin,xmin,ymax,xmax.
					</documentation>
				</annotation>
			</enumeration>
		</restriction>
	</simpleType>
	<!---->
	<group name="WmsVersionAndGeoDatumSequence">
		<sequence>
			<element name="wmsVersion" type="fews:wmsVersionEnumStringType" minOccurs="0">
				<annotation>
					<documentation>Since 2018.02, default 1.1.1. Version of the wms service. Please ensure the configured version is supported by the wms service you wish to use. The url used to get
						the layer will be formatted according to the specified wms version. For example, with version 1.1.1 the url will contain "SRS=EPSG:4326" while with version 1.3.0 this will be
						"CRS=EPSG:4326". The version is included in the url as the part after the text "version=" till the next &amp; in the url.
					</documentation>
				</annotation>
			</element>
			<element name="geoDatum" type="fews:wmsGeoDatumStringType" minOccurs="0">
				<annotation>
					<documentation>Since 2023.01. (2022.01 for animated wms). By default EPSG:4326 (wgs84). To connect to the FEWS webservice use EPSG:3857 (web mercator)</documentation>
				</annotation>
			</element>
		</sequence>
	</group>

	<simpleType name="wmsGeoDatumStringType">
		<union memberTypes="fews:propertyReferenceString fews:wmsGeoDatumEnumStringType"/>
	</simpleType>

	<simpleType name="wmsGeoDatumEnumStringType">
		<restriction base="string">
			<enumeration value="EPSG:4326"/>
			<enumeration value="EPSG:3857"/>
		</restriction>
	</simpleType>

	<!---->
	<group name="WmsImageOptionsGroup">
		<sequence>
			<element name="imageFormat" type="fews:wmsImageFormatStringType" minOccurs="0">
				<annotation>
					<documentation>
						Default is jpg
					</documentation>
				</annotation>
			</element>
			<element name="transparent" type="boolean" minOccurs="0">
				<annotation>
					<documentation>
						Only supported for png and gif
					</documentation>
				</annotation>
			</element>
		</sequence>
	</group>
	<!---->
	<group name="WmsVendorParametersGroup">
		<sequence>
			<element name="vendorParameter" type="fews:WmsVendorParameterComplexType" minOccurs="0" maxOccurs="unbounded">
				<annotation>
					<documentation>
						WMS vendor parameters are options that are not defined in the official WMS specification, but are allowed by it. For example geoserver supports a range of custom WMS
						parameters. see http://docs.geoserver.org/latest/en/user/services/wms/vendor.html
					</documentation>
				</annotation>
			</element>
		</sequence>
	</group>
	<!---->
	<group name="AnimatedWmsTimeParametersGroup">
		<sequence>
			<choice>
				<element name="timeIndexParameter" type="fews:WmsTimeIndexParameterComplexType">
					<annotation>
						<documentation>
							When the wms server required an index in the url instead of an date/time string
						</documentation>
					</annotation>
				</element>
				<element name="dateTimeParameter" type="fews:WmsDateTimeParameterComplexType">
					<annotation>
						<documentation>
						</documentation>
					</annotation>
				</element>
			</choice>
			<element name="timeStep" type="fews:TimeStepComplexType">
				<annotation>
					<documentation>Time between two wms frames</documentation>
				</annotation>
			</element>
			<element name="relativeViewPeriod" type="fews:RelativePeriodComplexType">
				<annotation>
					<documentation>Period relative to the time 0 of the workflow or the system time of the fews explorer</documentation>
				</annotation>
			</element>
		</sequence>
	</group>
	<!---->
	<complexType name="WmsVendorParameterComplexType">
		<sequence>
			<element name="description" type="string" minOccurs="0"/>
		</sequence>
		<attribute name="name" type="string" use="required"/>
		<attribute name="value" type="string" use="required"/>
	</complexType>
	<!---->
	<complexType name="WmsTimeIndexParameterComplexType">
		<sequence>
			<element name="description" type="string" minOccurs="0"/>
		</sequence>
		<attribute name="name" type="string" use="required"/>
		<attribute name="offset" type="int" use="required"/>
	</complexType>
	<!---->
	<complexType name="WmsDateTimeParameterComplexType">
		<sequence>
			<element name="description" type="string" minOccurs="0"/>
		</sequence>
		<attribute name="name" type="string" use="required"/>
		<attribute name="format" type="fews:dateTimeFormatType" use="required"/>
		<attribute name="timeZone" type="fews:timeZoneStringType" use="required"/>
	</complexType>
	<simpleType name="wmsImageFormatStringType">
		<restriction base="string">
			<enumeration value="jpg">
				<annotation>
					<documentation>
						Default, choose this format for photos
					</documentation>
				</annotation>
			</enumeration>
			<enumeration value="png">
				<annotation>
					<documentation>
						Format suitable for rendered maps with a distinct number of colors
					</documentation>
				</annotation>
			</enumeration>
			<enumeration value="gif">
				<annotation>
					<documentation>
						Format suitable for rendered maps with a distinct number of colors
					</documentation>
				</annotation>
			</enumeration>
		</restriction>
	</simpleType>
	<!--    -->
	<complexType name="GeoMapLayerComplexType">
		<sequence>
			<element name="description" type="string" minOccurs="0"/>
			<element name="viewPermission" type="string" minOccurs="0">
				<annotation>
					<documentation>Set a permission to control who can view this layer</documentation>
				</annotation>
			</element>
			<element name="className" type="string"/>
			<element name="visible" type="boolean"/>
			<element name="properties" type="fews:PropertiesComplexType"/>
		</sequence>
		<attribute name="id" type="fews:idStringType" use="required"/>
		<attribute name="name" type="fews:nameStringType" use="optional"/>
	</complexType>
	<simpleType name="scaleType">
		<restriction base="string">
			<pattern value="[1][:][1-9][0-9]+"/>
		</restriction>
	</simpleType>
	<!--    -->
	<complexType name="GeoMapExtentsComplexType">
		<annotation>
			<documentation>Deprecated, exists for backward compatibility</documentation>
		</annotation>
		<sequence>
			<element name="geoDatum" type="fews:geoDatumStringType"/>
			<element name="defaultExtent" type="fews:GeoMapExtentComplexType"/>
			<element name="extraExtent" type="fews:GeoMapExtentComplexType" minOccurs="0" maxOccurs="unbounded"/>
		</sequence>
	</complexType>
	<!--    -->
	<complexType name="GeoMapExtentComplexType">
		<annotation>
			<documentation>visible area of map</documentation>
		</annotation>
		<sequence>
			<element name="left" type="fews:doubleStringType">
				<annotation>
					<documentation>X (latitude) of the upper left corner</documentation>
				</annotation>
			</element>
			<element name="right" type="fews:doubleStringType">
				<annotation>
					<documentation>X (latitude) of the lower right corner</documentation>
				</annotation>
			</element>
			<element name="top" type="fews:doubleStringType">
				<annotation>
					<documentation>Y (longitude) of the upper left corner</documentation>
				</annotation>
			</element>
			<element name="bottom" type="fews:doubleStringType">
				<annotation>
					<documentation>Y (longitude) of the lower right corner</documentation>
				</annotation>
			</element>
			<element name="description" type="string" minOccurs="0"/>
		</sequence>
		<attribute name="id" type="fews:idStringType" use="optional"/>
		<attribute name="name" type="fews:nameStringType" use="optional"/>
	</complexType>
	<!-- -->
	<complexType name="PropertiesComplexType">
		<sequence>
			<element name="description" type="string" minOccurs="0">
				<annotation>
					<documentation>Optional description (this is never used in the code).</documentation>
				</annotation>
			</element>
			<group ref="fews:PropertiesChoice" maxOccurs="unbounded"/>
		</sequence>
	</complexType>
	<group name="PropertiesChoice">
		<choice>
			<element name="string" type="fews:StringPropertyComplexType"/>
			<element name="int" type="fews:IntPropertyComplexType"/>
			<element name="float" type="fews:FloatPropertyComplexType"/>
			<element name="double" type="fews:DoublePropertyComplexType">
				<annotation>
					<documentation>Since 2014.01</documentation>
				</annotation>
			</element>
			<element name="bool" type="fews:BoolPropertyComplexType"/>
			<element name="dateTime" type="fews:DateTimePropertyComplexType">
				<annotation>
					<documentation>Since 2014.01</documentation>
				</annotation>
			</element>
		</choice>
	</group>
	<complexType name="WorkflowPropertiesComplexType">
		<sequence>
			<element name="description" type="string" minOccurs="0">
				<annotation>
					<documentation>Optional description (this is never used in the code).</documentation>
				</annotation>
			</element>
			<group ref="fews:PropertiesChoice" minOccurs="0" maxOccurs="unbounded"/>
			<group ref="fews:WorkflowPropertiesAttributeChoice" minOccurs="0" maxOccurs="unbounded"/>
		</sequence>
	</complexType>

	<group name="WorkflowPropertiesAttributeChoice">
		<choice>
			<element name="locationAttribute" type="fews:LocationAttributePropertyComplexType"/>
			<element name="loopLocationAttribute" type="fews:LoopLocationPropertyComplexType"/>
			<element name="qualifierAttribute" type="fews:QualifierAttributePropertyComplexType"/>
			<element name="parameterAttribute" type="fews:ParameterAttributePropertyComplexType"/>
			<element name="moduleInstanceAttribute" type="fews:ModuleInstanceAttributePropertyComplexType"/>
			<element name="activityModuleInstanceAttribute" type="fews:ActivityModuleInstancePropertyComplexType"/>
		</choice>
	</group>

	<complexType name="ParameterAttributePropertyComplexType">
		<attribute name="key" type="fews:idStringType" use="required"/>
		<attribute name="parameterId" type="fews:idStringType" use="required"/>
		<attribute name="attributeId" type="fews:idStringType" use="required"/>
	</complexType>

	<complexType name="QualifierAttributePropertyComplexType">
		<attribute name="key" type="fews:idStringType" use="required"/>
		<attribute name="qualifierId" type="fews:idStringType" use="required"/>
		<attribute name="attributeId" type="fews:idStringType" use="required"/>
	</complexType>

	<complexType name="LocationAttributePropertyComplexType">
		<attribute name="key" type="fews:idStringType" use="required"/>
		<attribute name="locationId" type="fews:idStringType" use="required"/>
		<attribute name="attributeId" type="fews:idStringType" use="required"/>
	</complexType>

	<complexType name="LoopLocationPropertyComplexType">
		<attribute name="key" type="fews:idStringType" use="required"/>
		<attribute name="locationRelationId" type="fews:idStringType"/>
		<attribute name="attributeId" type="fews:idStringType" use="required"/>
		<attribute name="defaultValue" type="string"/>
	</complexType>

	<complexType name="ModuleInstanceAttributePropertyComplexType">
		<attribute name="key" type="fews:idStringType" use="required"/>
		<attribute name="moduleInstanceId" type="fews:idStringType" use="required"/>
		<attribute name="attributeId" type="fews:idStringType" use="required"/>
	</complexType>

	<complexType name="ActivityModuleInstancePropertyComplexType">
		<attribute name="key" type="fews:idStringType" use="required"/>
		<attribute name="attributeId" type="fews:idStringType" use="required"/>
	</complexType>

	<!--    -->
	<complexType name="StringPropertyComplexType">
		<sequence>
			<element name="description" type="string" minOccurs="0">
				<annotation>
					<documentation>Optional description (this is never used in the code).</documentation>
				</annotation>
			</element>
		</sequence>
		<attribute name="key" type="string" use="required"/>
		<attribute name="value" type="string" use="required"/>
	</complexType>
	<!-- -->
	<complexType name="IntPropertyComplexType">
		<sequence>
			<element name="description" type="string" minOccurs="0">
				<annotation>
					<documentation>Optional description (this is never used in the code).</documentation>
				</annotation>
			</element>
		</sequence>
		<attribute name="key" type="string" use="required"/>
		<attribute name="value" type="fews:intStringType" use="required"/>
	</complexType>
	<!-- -->
	<complexType name="FloatPropertyComplexType">
		<sequence>
			<element name="description" type="string" minOccurs="0">
				<annotation>
					<documentation>Optional description (this is never used in the code).</documentation>
				</annotation>
			</element>
		</sequence>
		<attribute name="key" type="string" use="required"/>
		<attribute name="value" type="fews:floatStringType" use="required"/>
	</complexType>
	<complexType name="DoublePropertyComplexType">
		<sequence>
			<element name="description" type="string" minOccurs="0">
				<annotation>
					<documentation>Optional description (this is never used in the code).</documentation>
				</annotation>
			</element>
		</sequence>
		<attribute name="key" type="string" use="required"/>
		<attribute name="value" type="fews:doubleStringType" use="required"/>
	</complexType>
	<complexType name="BoolPropertyComplexType">
		<sequence>
			<element name="description" type="string" minOccurs="0">
				<annotation>
					<documentation>Optional description (this is never used in the code).</documentation>
				</annotation>
			</element>
		</sequence>
		<attribute name="key" type="string" use="required"/>
		<attribute name="value" type="fews:booleanStringType" use="required"/>
	</complexType>
	<!--ArchiveTaskComplexType-->
	<complexType name="ArchiveTaskComplexType">
		<choice>
			<element name="importArchives" type="fews:ImportArchiveTaskComplexType"/>
			<element name="exportArchives" type="fews:ExportArchiveTaskComplexType"/>
		</choice>
	</complexType>
	<!--Describe which archives are to be exported-->
	<complexType name="ExportArchiveTaskComplexType">
		<sequence>
			<element name="taskRunId" type="fews:idStringType" minOccurs="0" maxOccurs="unbounded">
				<annotation>
					<documentation>TaskRunIds of the forecast runs that are to be exported to an
						archive.
					</documentation>
				</annotation>
			</element>
			<element name="exportFolder" type="fews:fileStringType" minOccurs="0">
				<annotation>
					<documentation>Folder to export archive files to.</documentation>
				</annotation>
			</element>
			<element name="exportToFile" type="boolean" default="false" minOccurs="0">
				<annotation>
					<documentation>Deprecated. Option to allow archives to be written to files in the export folder of the archive
						module.
					</documentation>
				</annotation>
			</element>
		</sequence>
	</complexType>
	<!--Describe which archives are to be imported-->
	<complexType name="ImportArchiveTaskComplexType">
		<sequence>
			<element name="taskRunId" type="fews:idStringType" minOccurs="0" maxOccurs="unbounded">
				<annotation>
					<documentation>List of forecast taskRunIds that are to be imported from archive.</documentation>
				</annotation>
			</element>
			<element name="importFile" type="fews:fileStringType" minOccurs="0" maxOccurs="unbounded">
				<annotation>
					<documentation>List of archive files to import.</documentation>
				</annotation>
			</element>
			<element name="importFromFile" type="boolean" default="false" minOccurs="0">
				<annotation>
					<documentation>Deprecated. Option to allow archives to be read from the import folder of the archives
						module.
					</documentation>
				</annotation>
			</element>
		</sequence>
	</complexType>
	<!--Regular grid definition-->
	<complexType name="GridDefinitionComplexType">
		<sequence>
			<element name="geoDatum" type="fews:geoDatumStringType">
				<annotation>
					<documentation>Type of coordinate system.</documentation>
				</annotation>
			</element>
			<element name="upperLeftCorner" type="fews:GeoPointComplexType">
				<annotation>
					<documentation>Coordinates of the upper left corner of the upper left grid cell.</documentation>
				</annotation>
			</element>
			<element name="rows" type="int">
				<annotation>
					<documentation>Number of rows in grid</documentation>
				</annotation>
			</element>
			<element name="columns" type="int">
				<annotation>
					<documentation>Number of columns in grid</documentation>
				</annotation>
			</element>
			<element name="cellwidth" type="float">
				<annotation>
					<documentation>Width of the grid cells</documentation>
				</annotation>
			</element>
			<element name="cellheight" type="float">
				<annotation>
					<documentation>Height of the grid cells</documentation>
				</annotation>
			</element>
		</sequence>
	</complexType>
	<!-- -->
	<complexType name="GeoPointComplexType">
		<sequence>
			<element name="x" type="double">
				<annotation>
					<documentation>X coordinate of the point (Easting)</documentation>
				</annotation>
			</element>
			<element name="y" type="double">
				<annotation>
					<documentation>Y coordinate of the point (Northing)</documentation>
				</annotation>
			</element>
			<element name="z" type="double" minOccurs="0">
				<annotation>
					<documentation>Z coordinate of the point (altitude)</documentation>
				</annotation>
			</element>
		</sequence>
	</complexType>
	<!-- ModuleInstanceRunComplexType -->
	<complexType name="ModuleInstanceRunKeyComplexType">
		<sequence>
			<element name="moduleInstanceId" type="fews:idStringType" maxOccurs="unbounded">
				<annotation>
					<documentation>The ID of the referenced module instance.</documentation>
				</annotation>
			</element>
		</sequence>
		<attribute name="taskRunId" type="fews:idStringType" use="required"/>
	</complexType>
	<!-- ModifierDescriptorComplexType -->
	<complexType name="ModifierDescriptorKeyComplexType">
		<attribute name="modifierId" type="int" use="required"/>
		<attribute name="taskRunId" type="fews:idStringType" use="required"/>
	</complexType>
	<!-- TimeSeriesBlobDescriptorComplexType -->
	<complexType name="TimeSeriesBlobKeyComplexType">
		<sequence>
			<element name="period" type="fews:PeriodComplexType">
				<annotation>
					<documentation>Overall time span of the task run.</documentation>
				</annotation>
			</element>
		</sequence>
		<attribute name="locationId" type="fews:idStringType" use="required"/>
		<attribute name="parameterId" type="fews:idStringType" use="required"/>
	</complexType>
	<!--WarmStatesComplexType-->
	<complexType name="WarmStateKeyComplexType">
		<sequence>
			<element name="stateId" type="fews:idStringType" maxOccurs="unbounded"/>
		</sequence>
		<attribute name="taskRunId" type="fews:idStringType" use="required"/>
	</complexType>
	<!--TaskRunDescriptorComplexType-->
	<complexType name="TaskRunKeyComplexType">
		<attribute name="taskRunId" type="fews:idStringType" use="required"/>
	</complexType>
	<!-- -->
	<complexType name="TaskKeyComplexType">
		<attribute name="taskId" type="fews:idStringType" use="required"/>
	</complexType>
	<!-- -->
	<complexType name="FewsSessionKeyComplexType">
		<attribute name="taskRunId" type="fews:idStringType" use="required"/>
	</complexType>
	<!-- -->
	<complexType name="WhatIfScenarioKeyComplexType">
		<attribute name="whatIfId" type="fews:idStringType" use="required"/>
	</complexType>
	<!-- -->
	<simpleType name="RatingCurveTypeEnumStringType">
		<annotation>
			<documentation>Type of rating curve</documentation>
		</annotation>
		<restriction base="string">
			<enumeration value="LevelToFlow"/>
			<enumeration value="FlowToLevel"/>
		</restriction>
	</simpleType>
	<!-- -->
	<complexType name="AdapterMappingComplexType">
		<annotation>
			<documentation>Contains information on the data that is present in the columns of either the input files
				(post-activity) or output files (pre-activity)
			</documentation>
		</annotation>
		<sequence>
			<element name="parameterId" type="fews:idStringType"/>
			<element name="locationId" type="fews:idStringType"/>
			<element name="column" type="int"/>
		</sequence>
	</complexType>
	<complexType name="ChartComplexType">
		<annotation>
			<documentation>In combination with a ChartFormatComplexType and the input variables it contains all the
				information to generate a chart
				used in reports and the chart layer in the fews explorer
			</documentation>
		</annotation>
		<sequence>
			<element name="title" type="string" minOccurs="0"/>
			<element name="backgroundColor" type="fews:colorStringType" minOccurs="0"/>
			<element name="backgroundOpaquenessPercentage" type="fews:percentageType" default="100" minOccurs="0"/>
			<sequence minOccurs="0">
				<element name="plotBackgroundColor" type="fews:colorStringType"/>
				<element name="plotBackgroundOpaquenessPercentage" type="fews:percentageType" minOccurs="0"/>
			</sequence>
			<element name="plotBackgroundReportImage" type="fews:fileStringType" minOccurs="0"/>
			<element name="plotForegroundReportImage" type="fews:fileStringType" minOccurs="0"/>
			<choice minOccurs="0">
				<annotation>
					<documentation>Deprecated. Use leftAxis to overrule tickUnit or ticks</documentation>
				</annotation>
				<element name="leftAxisTickUnit" type="double"/>
				<element name="leftAxisTick" type="fews:ChartAxisTickComplexType" maxOccurs="unbounded"/>
			</choice>
			<choice minOccurs="0">
				<annotation>
					<documentation>Deprecated. Use rightAxis to overrule tickUnit or ticks</documentation>
				</annotation>
				<element name="rightAxisTickUnit" type="double"/>
				<element name="rightAxisTick" type="fews:ChartAxisTickComplexType" maxOccurs="unbounded"/>
			</choice>
			<element name="leftAxisScaleUnit" type="double" minOccurs="0">
				<annotation>
					<documentation>Deprecated. Use leftAxis to overrule scaleUnit</documentation>
				</annotation>
			</element>
			<element name="rightAxisScaleUnit" type="double" minOccurs="0">
				<annotation>
					<documentation>Deprecated. Use rightAxis to overrule scaleUnit</documentation>
				</annotation>
			</element>
			<element name="leftAxis" type="fews:ChartAxisFormatComplexType" minOccurs="0">
				<annotation>
					<documentation>Use leftAxis to customize the left y-axis in the chart format. Note that the settings are only used if at least one time series is attached to the left axis
					</documentation>
				</annotation>
			</element>
			<group ref="fews:ChartRightAxisElements" minOccurs="0"/>
			<element name="forecastConfidenceTimeSpan1" type="fews:TimeSpanComplexType" minOccurs="0"/>
			<element name="forecastConfidenceTimeSpan2" type="fews:TimeSpanComplexType" minOccurs="0"/>
			<element name="forecastConfidenceTimeSpan3" type="fews:TimeSpanComplexType" minOccurs="0"/>
			<element name="thresholdGroupId" type="fews:idStringType" minOccurs="0">
				<annotation>
					<documentation>Optional. If specified, then only thresholds in the specified thresholdGroup are displayed in this chart. If not specified, then thresholds in all thresholdGroups
						can be displayed.
					</documentation>
				</annotation>
			</element>
			<element name="area" type="fews:ChartAreaComplexType" minOccurs="0" maxOccurs="unbounded">
				<annotation>
					<documentation>Displays the extent of multiple time series as a single area. The area between the max
						and min values for each time are filled with a single color. The areas are always displayed behind the other lines.
						The area is painted on top of areas already specified, so specify the largest areas first.
					</documentation>
				</annotation>
			</element>
			<element name="timeSeries" type="fews:ChartTimeSeriesComplexType" minOccurs="0" maxOccurs="unbounded"/>
		</sequence>
		<attribute name="id" type="fews:idStringType" use="required"/>
		<attribute name="formatId" type="fews:idStringType" use="required"/>
		<attribute name="width" type="int" use="required"/>
		<attribute name="height" type="int" use="required"/>
	</complexType>
	<complexType name="ChartAreaComplexType">
		<sequence>
			<group ref="fews:ChartAreaFillLineElements" minOccurs="0"/>
			<element name="color" type="fews:colorStringType" minOccurs="0"/>
			<element name="opaquenessPercentage" type="fews:percentageType" minOccurs="0"/>
			<element name="timeSeries" type="fews:ChartTimeSeriesComplexType" maxOccurs="unbounded"/>
		</sequence>
	</complexType>
	<group name="ChartAreaFillLineElements">
		<annotation>
			<documentation>The area is filled with vertical lines. The configured lineStyle is used. The line filled area is displayed always behind the other lines that do not belong to any areas.
			</documentation>
		</annotation>
		<sequence>
			<element name="lineStyle" type="fews:chartLineStyleEnumStringType"/>
			<element name="lineWidth" type="fews:nonNegativeDouble" minOccurs="0"/>
		</sequence>
	</group>
	<group name="ChartRightAxisElements">
		<choice>
			<element name="rightAxis" type="fews:ChartAxisFormatComplexType">
				<annotation>
					<documentation>Use rightAxis to customize the right y-axis in the chart format. Note that the settings are only used if at least one time series is attached to the right axis
					</documentation>
				</annotation>
			</element>
			<element name="datumAxis" type="fews:ChartDatumAxisComplexType">
				<annotation>
					<documentation>Since 2017.01 Datum axis is an axis on the right side of the chart, and it shows left axis ticks in global datum. To convert to global datum the location altitude
						(z) of the first location in the chart is used. Where relevant , datum axis uses the same axis settings as left axis
					</documentation>
				</annotation>
			</element>
		</choice>
	</group>
	<complexType name="ChartDatumAxisComplexType">
		<sequence>
			<element name="caption" type="fews:nonEmptyStringType" minOccurs="0">
				<annotation>
					<documentation>Datum axis caption. If no caption is configured, then datum axis shows left axis title with suffix “global datum”</documentation>
				</annotation>
			</element>
		</sequence>
	</complexType>
	<complexType name="ChartAxisRatingCurveComplexType">
		<annotation>
			<documentation>Obtain the tick values for the right chart axis by applying a rating curve to the values of the left axis. Note the opposite axis must exist</documentation>
		</annotation>
		<sequence>
			<element name="ratingCurveId" type="string">
				<annotation>
					<documentation>If deprecated rating curves are used , enter ratingCurveId available in deprecated ratingCurves.xml. Otherwise enter location Id here to select the PI rating curve
					</documentation>
				</annotation>
			</element>
			<element name="reverse" type="boolean" minOccurs="0">
				<annotation>
					<documentation>This option is applicable only to deprecated rating curves. Option to use the rating curve in reverse direction. Defaults to false. If rating curve is not reversible
						then error is thrown
					</documentation>
				</annotation>
			</element>
		</sequence>
	</complexType>
	<complexType name="ChartAxisTickComplexType">
		<annotation>
			<documentation>Instead of displaying the value as axis label a text is specified to display.
				Makes it possible to make a discharge and water level axis that share the same line.
				At one axis the the discharges (as text) are displayed corresponding to a water level
			</documentation>
		</annotation>
		<attribute name="value" type="double" use="required"/>
		<attribute name="label" type="string" use="required"/>
	</complexType>
	<complexType name="ChartFormatComplexType">
		<annotation>
			<documentation>A template for a chart. Contains the chart layout information that is location
				independent
			</documentation>
		</annotation>
		<sequence>
			<element name="includeTime0" type="boolean" default="false" minOccurs="0"/>
			<element name="leftAxis" type="fews:ChartAxisFormatComplexType" minOccurs="0">
				<annotation>
					<documentation>Use leftAxis to customize the left y-axis in the chart format. Note that the settings are only used if at least one time series is attached to the left axis
					</documentation>
				</annotation>
			</element>
			<group ref="fews:ChartRightAxisElements" minOccurs="0"/>
			<choice minOccurs="0">
				<annotation>
					<documentation>Default: legend wil be displayed at the bottom</documentation>
				</annotation>
				<element name="includeLegend" type="boolean">
					<annotation>
						<documentation>option includeLegend is Deprecated. For backward compatibility</documentation>
					</annotation>
				</element>
				<element name="legend" type="fews:LegendDisplayOptionsComplexType">
					<annotation>
						<documentation>options how to display legend.</documentation>
					</annotation>
				</element>
			</choice>
			<element name="thresholdAxisScaling" type="fews:thresholdAxisScalingEnumStringType" default="two thresholds" minOccurs="0"/>
			<element name="bottomAxis" type="fews:ChartTimeAxisFormatComplexType" minOccurs="0"/>
			<element name="footer" type="string" minOccurs="0">
				<annotation>
					<documentation>Since 2024.01. this footer will be added to the bottom of the chart. Tags (e.g. CURRENTTIME, USERNAME, ...) can be used</documentation>
				</annotation>
			</element>
			<choice minOccurs="0">
				<annotation>
					<documentation>Customize view period.</documentation>
				</annotation>
				<element name="relativeWholePeriod" type="fews:RelativePeriodComplexType">
					<annotation>
						<documentation>Use relativeWholePeriod to round the chart view period to whole days</documentation>
					</annotation>
				</element>
				<element name="season" type="fews:SeasonConditionComplexType">
					<annotation>
						<documentation>Use season to specify chart view period that overrules the relative view period as specified with TimeSerieSets</documentation>
					</annotation>
				</element>
			</choice>
			<element name="trimViewPeriodToLastNonMissingAfterTime0" type="boolean" default="false" minOccurs="0">
				<annotation>
					<documentation>Since 2015.02 If True then the time series view period will be first trimmed to the last non missing value after time0, and then the time series chart will be
						created
					</documentation>
				</annotation>
			</element>
			<element name="includeWorkflowId" type="boolean" default="false" minOccurs="0">
				<annotation>
					<documentation>If True and the chart shows simulated forecasting series, then the workflowId and T0 of that forecast will be displayed as the bottom title</documentation>
				</annotation>
			</element>
			<element name="titleFontSize" type="positiveInteger" default="12" minOccurs="0"/>
			<element name="footerFontSize" type="positiveInteger" default="12" minOccurs="0"/>
			<element name="thresholdLabelFontSize" type="positiveInteger" default="12" minOccurs="0"/>
			<element name="backgroundColor" type="fews:colorStringType" minOccurs="0"/>
			<element name="backgroundOpaquenessPercentage" type="fews:percentageType" default="100" minOccurs="0"/>
			<sequence minOccurs="0">
				<element name="plotBackgroundColor" type="fews:colorStringType"/>
				<element name="plotBackgroundOpaquenessPercentage" type="fews:percentageType" minOccurs="0"/>
			</sequence>
			<element name="plotBackgroundReportImage" type="fews:fileStringType" minOccurs="0">
				<annotation>
					<documentation>The image should be included in the config folder ReportImageFiles. The image is resized to fill the whole plot</documentation>
				</annotation>
			</element>
			<element name="plotForegroundReportImage" type="fews:fileStringType" minOccurs="0">
				<annotation>
					<documentation>The image should be included in the config folder ReportImageFiles and should be transparent. The image is resized to fill the whole plot</documentation>
				</annotation>
			</element>
		</sequence>
		<attribute name="id" type="fews:idStringType" use="required"/>
	</complexType>
	<!--Declaration for legend display options-->
	<complexType name="LegendDisplayOptionsComplexType">
		<sequence>
			<element name="placement" type="fews:placementEnumStringType"/>
			<element name="font" type="fews:FontComplexType" minOccurs="0"/>
			<element name="qualifiers" type="fews:legendQualifiersEnumStringType" minOccurs="0"/>
		</sequence>
	</complexType>
	<simpleType name="legendQualifiersEnumStringType">
		<restriction base="string">
			<enumeration value="hideCommon">
				<annotation>
					<documentation>Hide the qualifiers that all displayed time series have in common. Same is done for locations. This is the default</documentation>
				</annotation>
			</enumeration>
			<enumeration value="showAll">
				<annotation>
					<documentation>Show all the qualifiers of the displayed time series in the legend</documentation>
				</annotation>
			</enumeration>
		</restriction>
	</simpleType>
	<!--Enumeration for placement of the legend (and event. another elements)-->
	<simpleType name="placementEnumStringType">
		<restriction base="string">
			<enumeration value="right"/>
			<enumeration value="rightInside"/>
			<enumeration value="bottom"/>
			<enumeration value="none"/>
		</restriction>
	</simpleType>
	<simpleType name="thresholdAxisScalingEnumStringType">
		<restriction base="string">
			<enumeration value="no thresholds"/>
			<enumeration value="all thresholds"/>
			<enumeration value="two thresholds"/>
		</restriction>
	</simpleType>
	<complexType name="ChartAxisFormatComplexType">
		<sequence>
			<element name="min" type="float" minOccurs="0"/>
			<element name="max" type="float" minOccurs="0"/>
			<element name="lowerMarginPercentage" type="fews:percentageType" minOccurs="0"/>
			<element name="upperMarginPercentage" type="fews:percentageType" minOccurs="0"/>
			<choice minOccurs="0">
				<element name="tickUnit" type="double"/>
				<element name="tick" type="fews:ChartAxisTickComplexType" maxOccurs="unbounded"/>
				<element name="numberOfTicks" type="fews:positiveInteger">
					<annotation>
						<documentation>Fixed number of ticks. The tick values depend on the axis range, and can be rounded using scaleUnit.</documentation>
					</annotation>
				</element>
			</choice>
			<element name="scaleUnit" type="double" minOccurs="0"/>
			<element name="caption" type="string" minOccurs="0"/>
			<element name="format" type="string" minOccurs="0">
				<annotation>
					<documentation>Tick format</documentation>
				</annotation>
			</element>
			<element name="font" type="fews:FontComplexType" minOccurs="0">
				<annotation>
					<documentation>Overruling tick font. The default tick font is SansSerif, size 9. If only the font style and/or size is configured, the default font (=SansSerif) is used.
					</documentation>
				</annotation>
			</element>
			<element name="titleFont" type="fews:FontComplexType" minOccurs="0">
				<annotation>
					<documentation>Since 2016.01 Overruling axis title font. The default axis title font is SansSerif, size 10. If only the font style and/or size is configured, the default font
						(=SansSerif) is used.
					</documentation>
				</annotation>
			</element>
			<element name="ratingCurve" type="fews:ChartAxisRatingCurveComplexType" minOccurs="0"/>
		</sequence>
	</complexType>
	<complexType name="ChartTimeAxisFormatComplexType">
		<sequence>
			<element name="caption" type="string" minOccurs="0">
				<annotation>
					<documentation>Title displayed below the time axis. This title will be overruled with workflowId and T0 of the forecast if there is also 'includeWorkflowId' configured and the
						chart shows simulated forecasting series
					</documentation>
				</annotation>
			</element>
			<element name="titleFont" type="fews:FontComplexType" minOccurs="0">
				<annotation>
					<documentation>Since 2016.01 Font of the title (caption) displayed below the time axis.</documentation>
				</annotation>
			</element>
			<choice>
				<sequence>
					<element name="format" type="string" minOccurs="0">
						<annotation>
							<documentation>Date format</documentation>
						</annotation>
					</element>
					<element name="font" type="fews:FontComplexType" minOccurs="0">
						<annotation>
							<documentation>Tick font</documentation>
						</annotation>
					</element>
					<element name="tickUnit" type="fews:CalendarTimeSpanComplexType" minOccurs="0"/>
					<element name="minorTickUnit" type="fews:CalendarTimeSpanComplexType" minOccurs="0"/>
					<element name="centerLabelsBetweenTicks" type="boolean" minOccurs="0"/>
				</sequence>
				<element name="tick" type="fews:TimeAxisTickComplexType" maxOccurs="unbounded"/>
			</choice>
		</sequence>
	</complexType>
	<complexType name="TimeAxisTickComplexType">
		<sequence>
			<element name="timeStep" type="fews:TimeStepComplexType">
				<annotation>
					<documentation>Places you want a date/time label and/or tick and/or grid line</documentation>
				</annotation>
			</element>
			<element name="tickMarkVisible" type="boolean">
				<annotation>
					<documentation>Tick mark is a small mark on the time axis</documentation>
				</annotation>
			</element>
			<element name="gridLineStyle" type="fews:gridLineStyleEnumStringType">
				<annotation>
					<documentation>style of the grids lines . Use "none" if the grid lines should be not visible</documentation>
				</annotation>
			</element>
			<element name="labelVisible" type="boolean"/>
			<element name="format" type="string" minOccurs="0">
				<annotation>
					<documentation>Label date format</documentation>
				</annotation>
			</element>
			<element name="font" type="fews:FontComplexType" minOccurs="0">
				<annotation>
					<documentation>Label font</documentation>
				</annotation>
			</element>
		</sequence>
	</complexType>
	<complexType name="ChartTimeSeriesComplexType">
		<simpleContent>
			<extension base="fews:idStringType">
				<attribute name="preferredColor" type="fews:colorStringType" use="optional"/>
				<attribute name="lineStyle" type="fews:chartLineStyleEnumStringType" use="optional"/>
				<attribute name="markerStyle" type="fews:markerStyleEnumStringType" use="optional"/>
				<attribute name="markerSize" type="fews:markerSizeIntegerType" use="optional"/>
				<attribute name="min" type="double" use="optional"/>
				<attribute name="max" type="double" use="optional"/>
				<attribute name="precision" type="positiveInteger" use="optional" default="3"/>
				<attribute name="axis" type="fews:chartAxisEnumStringType" use="optional" default="left"/>
				<attribute name="visibleInLegend" type="boolean" use="optional" default="true"/>
				<attribute name="legendItemPerEnsembleMember" type="boolean" use="optional" default="false"/>
				<attribute name="forecastTimeMarkerVisible" type="boolean" use="optional" default="false"/>
				<attribute name="numberOfRecentForecasts" type="fews:positiveInteger" use="optional">
					<annotation>
						<documentation>Since 2013.02 Number of forecast at or before Time0 that should be shown in the chart</documentation>
					</annotation>
				</attribute>
				<attribute name="label" type="string" use="optional">
					<annotation>
						<documentation>time series label in legend that overrules the default label</documentation>
					</annotation>
				</attribute>
			</extension>
		</simpleContent>
	</complexType>
	<simpleType name="chartAxisEnumStringType">
		<restriction base="string">
			<enumeration value="left"/>
			<enumeration value="right"/>
			<enumeration value="both"/>
		</restriction>
	</simpleType>
	<complexType name="DisplayOptionsComplexType">
		<sequence>
			<element name="preferredColor" type="fews:colorStringType" minOccurs="0"/>
			<element name="lineStyle" type="fews:chartLineStyleEnumStringType" minOccurs="0"/>
			<element name="markerStyle" type="fews:markerStyleEnumStringType" minOccurs="0"/>
			<element name="markerSize" type="fews:markerSizeIntegerType" minOccurs="0"/>
			<element name="markerFilled" type="boolean" minOccurs="0"/>
		</sequence>
		<attribute name="key" type="string" use="optional"/>
	</complexType>
	<!-- CommandComplexType -->
	<complexType name="CommandComplexType">
		<choice>
			<element name="executable" type="fews:fileStringType">
				<annotation>
					<documentation>Absolute path plus file name of the executable.</documentation>
				</annotation>
			</element>
			<sequence>
				<element name="className" type="string">
					<annotation>
						<documentation>Fully qualified name of a Java class with method: public static void main(String [] args) throws Exception</documentation>
					</annotation>
				</element>
				<element name="binDir" type="string" minOccurs="0">
					<annotation>
						<documentation>Directory with jar files and optionally native dlls. When not specified the bin dir and class loader of FEWS is used. When specified the java class is executed
							in a private class loader, it will not use any jar in the FEWS bin dir. Only one class loader is created per binDir, adapters should still not use static variables.
						</documentation>
					</annotation>
				</element>
				<element name="moduleDataSetName" type="string" minOccurs="0">
					<annotation>
						<documentation>Name of dataset file containing the binaries located in the 'binDir'. Use this to update 'binDir' through configuration changes.
						</documentation>
					</annotation>
				</element>
				<sequence minOccurs="0">
					<element name="customJreDir" type="fews:directoryStringType">
						<annotation>
							<documentation>Since 2016.01 Directory of specific jre that should be used to run java class. This could be required for modules that are not compatible with the java
								version used by FEWS
							</documentation>
						</annotation>
					</element>
					<element name="jvmArg" type="fews:nonEmptyStringType" minOccurs="0" maxOccurs="unbounded">
						<annotation>
							<documentation>Since 2016.01 Specifies extra jvm arguments for instance -mx512m to give the jvm more memory than the -mx256m that FEWS uses by default for the custom jre
							</documentation>
						</annotation>
					</element>
				</sequence>
			</sequence>
		</choice>
	</complexType>
	<complexType name="ConsoleComplexType">
		<sequence>
			<element name="redirectToLogFile" type="fews:fileStringType" minOccurs="0">
				<annotation>
					<documentation>Since 2018.01. Copy console output of the executable to this log file.</documentation>
				</annotation>
			</element>
			<sequence minOccurs="0">
				<element name="restartWorkflowLinePattern" type="fews:nonEmptyStringType" maxOccurs="unbounded">
					<annotation>
						<documentation>Since 2018.01. As soon the executable writes a line, matching this pattern, to the console the complete workflow is restarted</documentation>
					</annotation>
				</element>
				<element name="maxRestartWorkflowCount" type="fews:positiveInteger" default="2">
					<annotation>
						<documentation>Since 2018.01. Max number of times the workflow is restarted. Default is 2</documentation>
					</annotation>
				</element>
			</sequence>
			<element name="progressPattern" type="fews:nonEmptyStringType" minOccurs="0">
				<annotation>
					<documentation>Since 2021.02. Pattern to extract a percentage number from a console log line, each line will be checked for the pattern when it comes through. The places of the
						question marks should contain the value. Will be read as double but written as integer rounded down. Question marks should be at the start or end of the pattern. For instance
						"progress: ???". The progress will be shown in the running tasks panel of the system monitor.
					</documentation>
				</annotation>
			</element>
		</sequence>
	</complexType>
	<!-- ArgumentsComplexType -->
	<complexType name="ArgumentsComplexType">
		<sequence>
			<element name="argument" type="string" minOccurs="0" maxOccurs="unbounded"/>
		</sequence>
	</complexType>
	<!-- EnvironmentVariablesComplexType -->
	<complexType name="EnvironmentVariablesComplexType">
		<sequence>
			<element name="environmentVariable" type="fews:EnvironmentVariableComplexType" minOccurs="0" maxOccurs="unbounded"/>
		</sequence>
	</complexType>
	<!-- EnvironmentVariableComplexType -->
	<complexType name="EnvironmentVariableComplexType">
		<sequence>
			<element name="name" type="string">
				<annotation>
					<documentation>Name of the environment variable.</documentation>
				</annotation>
			</element>
			<element name="value" type="string">
				<annotation>
					<documentation>Value of the environment variable.</documentation>
				</annotation>
			</element>
		</sequence>
	</complexType>
	<!-- ExecuteActivityComplexType -->
	<complexType name="ExecuteActivityComplexType">
		<sequence>
			<element name="description" type="string" minOccurs="0">
				<annotation>
					<documentation>Optional description of the execute activity.</documentation>
				</annotation>
			</element>
			<element name="command" type="fews:CommandComplexType">
				<annotation>
					<documentation>Command to execute. This can be either an executable or a Java class.</documentation>
				</annotation>
			</element>
			<element name="arguments" type="fews:ArgumentsComplexType" minOccurs="0">
				<annotation>
					<documentation>Arguments to be passed to the executable.</documentation>
				</annotation>
			</element>
			<element name="environmentVariables" type="fews:EnvironmentVariablesComplexType" minOccurs="0">
				<annotation>
					<documentation>Environment variables to be passed to the executable.</documentation>
				</annotation>
			</element>
			<element name="console" type="fews:ConsoleComplexType" minOccurs="0">
				<annotation>
					<documentation>Since 2018.01. Redirect output to log file and define trigger to restart the workflow. Doesn't work for java activities that don't run in their own jre</documentation>
				</annotation>
			</element>
			<element name="logFile" type="fews:LogFileComplexType" minOccurs="0" maxOccurs="unbounded">
				<annotation>
					<documentation>Since 2014.01. Optional. One or more text files that contain log information from the module that is executed. After the module has executed, the specified lines
						from these files will be imported in FEWS as log messages with the specified log level.
					</documentation>
				</annotation>
			</element>
			<element name="activityDurationWeight" type="fews:nonNegativeDouble" minOccurs="0">
				<annotation>
					<documentation>Weight of the activity compared to others, used for tracking progress percentage of the module. Can be any positive number, FEWS will compare the total weight
						configured in the module config file and compare it to the individual weights of the activities to calculate the progress percentage
					</documentation>
				</annotation>
			</element>
			<element name="timeOut" type="fews:nonNegativeIntegerStringType">
				<annotation>
					<documentation>Timeout for execute activity in milliseconds.</documentation>
				</annotation>
			</element>
			<choice minOccurs="0">
				<element name="maxNumberOfSimultaneousRuns" type="fews:positiveIntegerStringType">
					<annotation>
						<documentation>Since 2013.01. FEWS-8674. Some models only allow a limited number of runs simultaneously, sometimes limited by license server. maxNumberOfSimultaneousRuns = 1 is
							exactly the same as waitForOtherRun = true. By default the number of runs is limited by the workflow and runInLoopParallelProcessorCount in the global properties.
						</documentation>
					</annotation>
				</element>
				<element name="waitForOtherRun" type="boolean">
					<annotation>
						<documentation>Since 2009.02. When an adapter is using shared writable resources (e.g. common blocks in a linked fortran library or writable static java fields) it will not
							allow multiple runs of this java class at the same time. When waitForOtherRun is true it will wait until any other run of the specified class is finished. When the
							executable only allows one instance set this option to true. Some executables only allow one instance due to licensing issues or temporary files that are used.
						</documentation>
					</annotation>
				</element>
			</choice>
			<choice minOccurs="0">
				<element name="overrulingDiagnosticFile" type="fews:fileStringType">
					<annotation>
						<documentation>File containing diagnostic information about activity. This file always is located in the importDir and overrules the global diagnostic file.</documentation>
					</annotation>
				</element>
				<element name="ignoreDiagnostics" type="boolean" default="false">
					<annotation>
						<documentation>For this activity no check should be done whether the diagnostics file is present or not</documentation>
					</annotation>
				</element>
			</choice>
			<element name="ignoreExitCode" type="boolean" default="false" minOccurs="0">
				<annotation>
					<documentation>For this activity no check should be done whether the executable returns a non zero exit code. A non zero exit code can prevent the post adapter from running. When
						the post adapter parses a log file the exit code can be ignored. The error in the log file is more descriptive than the error code.
					</documentation>
				</annotation>
			</element>
		</sequence>
		<attribute name="executeOnPreviousError" type="boolean" use="optional" default="false">
			<annotation>
				<documentation>Since 2019.02 Execute even after error occurred, run will still fail, can be useful to still process (partial) output</documentation>
			</annotation>
		</attribute>
	</complexType>
	<!--defines the type  for the data in data string-->
	<simpleType name="dataTypeEnumStringType">
		<annotation>
			<documentation>to define the type of the data (double, float, string, logical etc</documentation>
		</annotation>
		<restriction base="string">
			<enumeration value="string"/>
			<enumeration value="double"/>
			<enumeration value="long"/>
			<enumeration value="int"/>
			<enumeration value="integer"/>
			<enumeration value="logical"/>
			<enumeration value="file"/>
			<enumeration value="mixed"/>
			<enumeration value="float"/>
			<enumeration value="expression"/>
		</restriction>
	</simpleType>
	<simpleType name="propertyTypeEnumStringType">
		<annotation>
			<documentation>To define the type of the property</documentation>
		</annotation>
		<restriction base="string">
			<enumeration value="string"/>
			<enumeration value="int"/>
			<enumeration value="float"/>
			<enumeration value="double"/>
			<enumeration value="boolean"/>
			<enumeration value="dateTime"/>
		</restriction>
	</simpleType>
	<simpleType name="charsetEnumStringType">
		<restriction base="string">
			<enumeration value="US-ASCII">
				<annotation>
					<documentation>American Standard Code for Information Interchange</documentation>
				</annotation>
			</enumeration>
			<enumeration value="windows-1250">
				<annotation>
					<documentation>Windows Eastern European</documentation>
				</annotation>
			</enumeration>
			<enumeration value="windows-1251">
				<annotation>
					<documentation>Windows Cyrillic</documentation>
				</annotation>
			</enumeration>
			<enumeration value="windows-1252">
				<annotation>
					<documentation>Windows Latin-1</documentation>
				</annotation>
			</enumeration>
			<enumeration value="windows-1253">
				<annotation>
					<documentation>Windows Greek</documentation>
				</annotation>
			</enumeration>
			<enumeration value="windows-1254">
				<annotation>
					<documentation>Windows Turkish</documentation>
				</annotation>
			</enumeration>
			<enumeration value="windows-1257">
				<annotation>
					<documentation>Windows Baltic</documentation>
				</annotation>
			</enumeration>
			<enumeration value="ISO-8859-1">
				<annotation>
					<documentation>ISO 8859-1, Latin Alphabet No. 1</documentation>
				</annotation>
			</enumeration>
			<enumeration value="ISO-8859-2">
				<annotation>
					<documentation>Latin Alphabet No. 2</documentation>
				</annotation>
			</enumeration>
			<enumeration value="ISO-8859-4">
				<annotation>
					<documentation>Latin Alphabet No. 4</documentation>
				</annotation>
			</enumeration>
			<enumeration value="ISO-8859-5">
				<annotation>
					<documentation>Latin/Cyrillic Alphabet</documentation>
				</annotation>
			</enumeration>
			<enumeration value="ISO-8859-7">
				<annotation>
					<documentation>Latin/Greek Alphabet</documentation>
				</annotation>
			</enumeration>
			<enumeration value="ISO-8859-9">
				<annotation>
					<documentation>Latin Alphabet No. 5</documentation>
				</annotation>
			</enumeration>
			<enumeration value="ISO-8859-13">
				<annotation>
					<documentation>Latin Alphabet No. 7</documentation>
				</annotation>
			</enumeration>
			<enumeration value="ISO-8859-15">
				<annotation>
					<documentation>Latin Alphabet No. 9</documentation>
				</annotation>
			</enumeration>
			<enumeration value="KOI8-R">
				<annotation>
					<documentation>KOI8-R, Russian</documentation>
				</annotation>
			</enumeration>
			<enumeration value="UTF-8">
				<annotation>
					<documentation>Eight-bit UCS Transformation Format</documentation>
				</annotation>
			</enumeration>
			<enumeration value="UTF-16">
				<annotation>
					<documentation>Sixteen-bit UCS Transformation Format, byte order identified by an optional
						byte-order mark
					</documentation>
				</annotation>
			</enumeration>
			<enumeration value="UTF-16BE">
				<annotation>
					<documentation>Sixteen-bit Unicode Transformation Format, big-endian byte order</documentation>
				</annotation>
			</enumeration>
			<enumeration value="UTF-16LE">
				<annotation>
					<documentation>Sixteen-bit Unicode Transformation Format, little-endian byte order</documentation>
				</annotation>
			</enumeration>
			<enumeration value="windows-1255">
				<annotation>
					<documentation>Windows Hebrew</documentation>
				</annotation>
			</enumeration>
			<enumeration value="windows-1256">
				<annotation>
					<documentation>Windows Arabic</documentation>
				</annotation>
			</enumeration>
			<enumeration value="windows-1258">
				<annotation>
					<documentation>Windows Vietnamese</documentation>
				</annotation>
			</enumeration>
			<enumeration value="ISO-8859-3">
				<annotation>
					<documentation>Latin Alphabet No. 3</documentation>
				</annotation>
			</enumeration>
			<enumeration value="ISO-8859-6">
				<annotation>
					<documentation>Latin/Arabic Alphabet</documentation>
				</annotation>
			</enumeration>
			<enumeration value="ISO-8859-8">
				<annotation>
					<documentation>Latin/Hebrew Alphabet</documentation>
				</annotation>
			</enumeration>
			<enumeration value="windows-31j">
				<annotation>
					<documentation>Windows Japanese</documentation>
				</annotation>
			</enumeration>
			<enumeration value="EUC-JP">
				<annotation>
					<documentation>JISX 0201, 0208 and 0212, EUC encoding Japanese</documentation>
				</annotation>
			</enumeration>
			<enumeration value="x-EUC-JP-LINUX">
				<annotation>
					<documentation>JISX 0201, 0208 , EUC encoding Japanese</documentation>
				</annotation>
			</enumeration>
			<enumeration value="Shift_JIS">
				<annotation>
					<documentation>Shift-JIS, Japanese</documentation>
				</annotation>
			</enumeration>
			<enumeration value="ISO-2022-JP">
				<annotation>
					<documentation>JIS X 0201, 0208, in ISO 2022 form, Japanese</documentation>
				</annotation>
			</enumeration>
			<enumeration value="x-mswin-936">
				<annotation>
					<documentation>Windows Simplified Chinese</documentation>
				</annotation>
			</enumeration>
			<enumeration value="GB18030">
				<annotation>
					<documentation>Simplified Chinese, PRC standard</documentation>
				</annotation>
			</enumeration>
			<enumeration value="x-EUC-CN">
				<annotation>
					<documentation>GB2312, EUC encoding, Simplified Chinese</documentation>
				</annotation>
			</enumeration>
			<enumeration value="GBK">
				<annotation>
					<documentation>GBK, Simplified Chinese</documentation>
				</annotation>
			</enumeration>
			<enumeration value="ISCII91">
				<annotation>
					<documentation>ISCII91 encoding of Indic scripts</documentation>
				</annotation>
			</enumeration>
			<enumeration value="x-windows-949">
				<annotation>
					<documentation>Windows Korean</documentation>
				</annotation>
			</enumeration>
			<enumeration value="EUC-KR">
				<annotation>
					<documentation>KS C 5601, EUC encoding, Korean</documentation>
				</annotation>
			</enumeration>
			<enumeration value="ISO-2022-KR">
				<annotation>
					<documentation>ISO 2022 KR, Korean</documentation>
				</annotation>
			</enumeration>
			<enumeration value="x-windows-950">
				<annotation>
					<documentation>Windows Traditional Chinese</documentation>
				</annotation>
			</enumeration>
			<enumeration value="x-MS950-HKSCS">
				<annotation>
					<documentation>Windows Traditional Chinese with Hong Kong extensions</documentation>
				</annotation>
			</enumeration>
			<enumeration value="x-EUC-TW">
				<annotation>
					<documentation>CNS11643 (Plane 1-3), EUC encoding, Traditional Chinese</documentation>
				</annotation>
			</enumeration>
			<enumeration value="Big5">
				<annotation>
					<documentation>Big5, Traditional Chinese</documentation>
				</annotation>
			</enumeration>
			<enumeration value="Big5-HKSCS">
				<annotation>
					<documentation>Big5 with Hong Kong extensions, Traditional Chinese</documentation>
				</annotation>
			</enumeration>
			<enumeration value="TIS-620">
				<annotation>
					<documentation>TIS620, Thai</documentation>
				</annotation>
			</enumeration>
			<enumeration value="Big5_Solaris">
				<annotation>
					<documentation>Big5 with seven additional Hanzi ideograph character mappings for the Solaris
						zh_TW.BIG5 locale
					</documentation>
				</annotation>
			</enumeration>
			<enumeration value="Cp037">
				<annotation>
					<documentation>USA, Canada (Bilingual, French), Netherlands, Portugal, Brazil,
						Australia
					</documentation>
				</annotation>
			</enumeration>
			<enumeration value="Cp273">
				<annotation>
					<documentation>IBM Austria, Germany</documentation>
				</annotation>
			</enumeration>
			<enumeration value="Cp277">
				<annotation>
					<documentation>IBM Denmark, Norway</documentation>
				</annotation>
			</enumeration>
			<enumeration value="Cp278">
				<annotation>
					<documentation>IBM Finland, Sweden</documentation>
				</annotation>
			</enumeration>
			<enumeration value="Cp280">
				<annotation>
					<documentation>IBM Italy</documentation>
				</annotation>
			</enumeration>
			<enumeration value="Cp284">
				<annotation>
					<documentation>IBM Catalan/Spain, Spanish Latin America</documentation>
				</annotation>
			</enumeration>
			<enumeration value="Cp285">
				<annotation>
					<documentation>IBM United Kingdom, Ireland</documentation>
				</annotation>
			</enumeration>
			<enumeration value="Cp297">
				<annotation>
					<documentation>IBM France</documentation>
				</annotation>
			</enumeration>
			<enumeration value="Cp420">
				<annotation>
					<documentation>IBM Arabic</documentation>
				</annotation>
			</enumeration>
			<enumeration value="Cp424">
				<annotation>
					<documentation>IBM Hebrew</documentation>
				</annotation>
			</enumeration>
			<enumeration value="Cp437">
				<annotation>
					<documentation>MS-DOS United States, Australia, New Zealand, South Africa</documentation>
				</annotation>
			</enumeration>
			<enumeration value="Cp500">
				<annotation>
					<documentation>EBCDIC 500V1</documentation>
				</annotation>
			</enumeration>
			<enumeration value="Cp737">
				<annotation>
					<documentation>PC Greek</documentation>
				</annotation>
			</enumeration>
			<enumeration value="Cp775">
				<annotation>
					<documentation>PC Baltic</documentation>
				</annotation>
			</enumeration>
			<enumeration value="Cp838">
				<annotation>
					<documentation>IBM Thailand extended SBCS</documentation>
				</annotation>
			</enumeration>
			<enumeration value="Cp850">
				<annotation>
					<documentation>MS-DOS Latin-1</documentation>
				</annotation>
			</enumeration>
			<enumeration value="Cp852">
				<annotation>
					<documentation>MS-DOS Latin-2</documentation>
				</annotation>
			</enumeration>
			<enumeration value="Cp855">
				<annotation>
					<documentation>IBM Cyrillic</documentation>
				</annotation>
			</enumeration>
			<enumeration value="Cp856">
				<annotation>
					<documentation>IBM Hebrew</documentation>
				</annotation>
			</enumeration>
			<enumeration value="Cp857">
				<annotation>
					<documentation>IBM Turkish</documentation>
				</annotation>
			</enumeration>
			<enumeration value="Cp858">
				<annotation>
					<documentation>Variant of Cp850 with Euro character</documentation>
				</annotation>
			</enumeration>
			<enumeration value="Cp860">
				<annotation>
					<documentation>MS-DOS Portuguese</documentation>
				</annotation>
			</enumeration>
			<enumeration value="Cp861">
				<annotation>
					<documentation>MS-DOS Icelandic</documentation>
				</annotation>
			</enumeration>
			<enumeration value="Cp862">
				<annotation>
					<documentation>PC Hebrew</documentation>
				</annotation>
			</enumeration>
			<enumeration value="Cp863">
				<annotation>
					<documentation>MS-DOS Canadian French</documentation>
				</annotation>
			</enumeration>
			<enumeration value="Cp864">
				<annotation>
					<documentation>PC Arabic</documentation>
				</annotation>
			</enumeration>
			<enumeration value="Cp865">
				<annotation>
					<documentation>MS-DOS Nordic</documentation>
				</annotation>
			</enumeration>
			<enumeration value="Cp866">
				<annotation>
					<documentation>MS-DOS Russian</documentation>
				</annotation>
			</enumeration>
			<enumeration value="Cp868">
				<annotation>
					<documentation>MS-DOS Pakistan</documentation>
				</annotation>
			</enumeration>
			<enumeration value="Cp869">
				<annotation>
					<documentation>IBM Modern Greek</documentation>
				</annotation>
			</enumeration>
			<enumeration value="Cp870">
				<annotation>
					<documentation>IBM Multilingual Latin-2</documentation>
				</annotation>
			</enumeration>
			<enumeration value="Cp871">
				<annotation>
					<documentation>IBM Iceland</documentation>
				</annotation>
			</enumeration>
			<enumeration value="Cp874">
				<annotation>
					<documentation>IBM Thai</documentation>
				</annotation>
			</enumeration>
			<enumeration value="Cp875">
				<annotation>
					<documentation>IBM Greek</documentation>
				</annotation>
			</enumeration>
			<enumeration value="Cp918">
				<annotation>
					<documentation>IBM Pakistan (Urdu)</documentation>
				</annotation>
			</enumeration>
			<enumeration value="Cp921">
				<annotation>
					<documentation>IBM Latvia, Lithuania (AIX, DOS)</documentation>
				</annotation>
			</enumeration>
			<enumeration value="Cp922">
				<annotation>
					<documentation>IBM Estonia (AIX, DOS)</documentation>
				</annotation>
			</enumeration>
			<enumeration value="Cp930">
				<annotation>
					<documentation>Japanese Katakana-Kanji mixed with 4370 UDC, superset of 5026</documentation>
				</annotation>
			</enumeration>
			<enumeration value="Cp933">
				<annotation>
					<documentation>Korean Mixed with 1880 UDC, superset of 5029</documentation>
				</annotation>
			</enumeration>
			<enumeration value="Cp935">
				<annotation>
					<documentation>Simplified Chinese Host mixed with 1880 UDC, superset of 5031</documentation>
				</annotation>
			</enumeration>
			<enumeration value="Cp937">
				<annotation>
					<documentation>Traditional Chinese Host miexed with 6204 UDC, superset of 5033</documentation>
				</annotation>
			</enumeration>
			<enumeration value="Cp939">
				<annotation>
					<documentation>Japanese Latin Kanji mixed with 4370 UDC, superset of 5035</documentation>
				</annotation>
			</enumeration>
			<enumeration value="Cp942">
				<annotation>
					<documentation>IBM OS/2 Japanese, superset of Cp932</documentation>
				</annotation>
			</enumeration>
			<enumeration value="Cp942C">
				<annotation>
					<documentation>Variant of Cp942</documentation>
				</annotation>
			</enumeration>
			<enumeration value="Cp943">
				<annotation>
					<documentation>IBM OS/2 Japanese, superset of Cp932 and Shift-JIS</documentation>
				</annotation>
			</enumeration>
			<enumeration value="Cp943C">
				<annotation>
					<documentation>Variant of Cp943</documentation>
				</annotation>
			</enumeration>
			<enumeration value="Cp948">
				<annotation>
					<documentation>OS/2 Chinese (Taiwan) superset of 938</documentation>
				</annotation>
			</enumeration>
			<enumeration value="Cp949">
				<annotation>
					<documentation>PC Korean</documentation>
				</annotation>
			</enumeration>
			<enumeration value="Cp949C">
				<annotation>
					<documentation>Variant of Cp949</documentation>
				</annotation>
			</enumeration>
			<enumeration value="Cp950">
				<annotation>
					<documentation>PC Chinese (Hong Kong, Taiwan)</documentation>
				</annotation>
			</enumeration>
			<enumeration value="Cp964">
				<annotation>
					<documentation>AIX Chinese (Taiwan)</documentation>
				</annotation>
			</enumeration>
			<enumeration value="Cp970">
				<annotation>
					<documentation>AIX Korean</documentation>
				</annotation>
			</enumeration>
			<enumeration value="Cp1006">
				<annotation>
					<documentation>IBM AIX Pakistan (Urdu)</documentation>
				</annotation>
			</enumeration>
			<enumeration value="Cp1025">
				<annotation>
					<documentation>IBM Multilingual Cyrillic: Bulgaria, Bosnia, Herzegovinia, Macedonia
						(FYR)
					</documentation>
				</annotation>
			</enumeration>
			<enumeration value="Cp1026">
				<annotation>
					<documentation>IBM Latin-5, Turkey</documentation>
				</annotation>
			</enumeration>
			<enumeration value="Cp1046">
				<annotation>
					<documentation>IBM Arabic - Windows</documentation>
				</annotation>
			</enumeration>
			<enumeration value="Cp1047">
				<annotation>
					<documentation>Latin-1 character set for EBCDIC hosts</documentation>
				</annotation>
			</enumeration>
			<enumeration value="Cp1097">
				<annotation>
					<documentation>IBM Iran (Farsi)/Persian</documentation>
				</annotation>
			</enumeration>
			<enumeration value="Cp1098">
				<annotation>
					<documentation>IBM Iran (Farsi)/Persian (PC)</documentation>
				</annotation>
			</enumeration>
			<enumeration value="Cp1112">
				<annotation>
					<documentation>IBM Latvia, Lithuania</documentation>
				</annotation>
			</enumeration>
			<enumeration value="Cp1122">
				<annotation>
					<documentation>IBM Estonia</documentation>
				</annotation>
			</enumeration>
			<enumeration value="Cp1123">
				<annotation>
					<documentation>IBM Ukraine</documentation>
				</annotation>
			</enumeration>
			<enumeration value="Cp1124">
				<annotation>
					<documentation>IBM AIX Ukraine</documentation>
				</annotation>
			</enumeration>
			<enumeration value="Cp1140">
				<annotation>
					<documentation>Variant of Cp037 with Euro character</documentation>
				</annotation>
			</enumeration>
			<enumeration value="Cp1141">
				<annotation>
					<documentation>Variant of Cp273 with Euro character</documentation>
				</annotation>
			</enumeration>
			<enumeration value="Cp1142">
				<annotation>
					<documentation>Variant of Cp277 with Euro character</documentation>
				</annotation>
			</enumeration>
			<enumeration value="Cp1143">
				<annotation>
					<documentation>Variant of Cp278 with Euro character</documentation>
				</annotation>
			</enumeration>
			<enumeration value="Cp1144">
				<annotation>
					<documentation>Variant of Cp280 with Euro character</documentation>
				</annotation>
			</enumeration>
			<enumeration value="Cp1145">
				<annotation>
					<documentation>Variant of Cp284 with Euro character</documentation>
				</annotation>
			</enumeration>
			<enumeration value="Cp1146">
				<annotation>
					<documentation>Variant of Cp285 with Euro character</documentation>
				</annotation>
			</enumeration>
			<enumeration value="Cp1147">
				<annotation>
					<documentation>Variant of Cp297 with Euro character</documentation>
				</annotation>
			</enumeration>
			<enumeration value="Cp1148">
				<annotation>
					<documentation>Variant of Cp500 with Euro character</documentation>
				</annotation>
			</enumeration>
			<enumeration value="Cp1149">
				<annotation>
					<documentation>Variant of Cp871 with Euro character</documentation>
				</annotation>
			</enumeration>
			<enumeration value="Cp1381">
				<annotation>
					<documentation>IBM OS/2, DOS People's Republic of China (PRC)</documentation>
				</annotation>
			</enumeration>
			<enumeration value="Cp1383">
				<annotation>
					<documentation>IBM AIX People's Republic of China (PRC)</documentation>
				</annotation>
			</enumeration>
			<enumeration value="Cp33722">
				<annotation>
					<documentation>IBM-eucJP - Japanese (superset of 5050)</documentation>
				</annotation>
			</enumeration>
			<enumeration value="ISO2022_CN_CNS">
				<annotation>
					<documentation>CNS11643 in ISO 2022 CN form, Traditional Chinese (conversion from Unicode
						only)
					</documentation>
				</annotation>
			</enumeration>
			<enumeration value="ISO2022_CN_GB">
				<annotation>
					<documentation>GB2312 in ISO 2022 CN form, Simplified Chinese (conversion from Unicode
						only)
					</documentation>
				</annotation>
			</enumeration>
			<enumeration value="JISAutoDetect">
				<annotation>
					<documentation>Detects and converts from Shift-JIS, EUC-JP, ISO 2022 JP (conversion to Unicode
						only)
					</documentation>
				</annotation>
			</enumeration>
			<enumeration value="MS874">
				<annotation>
					<documentation>Windows Thai</documentation>
				</annotation>
			</enumeration>
			<enumeration value="MacArabic">
				<annotation>
					<documentation>Macintosh Arabic</documentation>
				</annotation>
			</enumeration>
			<enumeration value="MacCentralEurope">
				<annotation>
					<documentation>Macintosh Latin-2</documentation>
				</annotation>
			</enumeration>
			<enumeration value="MacCroatian">
				<annotation>
					<documentation>Macintosh Croatian</documentation>
				</annotation>
			</enumeration>
			<enumeration value="MacCyrillic">
				<annotation>
					<documentation>Macintosh Cyrillic</documentation>
				</annotation>
			</enumeration>
			<enumeration value="MacDingbat">
				<annotation>
					<documentation>Macintosh Dingbat</documentation>
				</annotation>
			</enumeration>
			<enumeration value="MacGreek">
				<annotation>
					<documentation>Macintosh Greek</documentation>
				</annotation>
			</enumeration>
			<enumeration value="MacHebrew">
				<annotation>
					<documentation>Macintosh Hebrew</documentation>
				</annotation>
			</enumeration>
			<enumeration value="MacIceland">
				<annotation>
					<documentation>Macintosh Iceland</documentation>
				</annotation>
			</enumeration>
			<enumeration value="MacRoman">
				<annotation>
					<documentation>Macintosh Roman</documentation>
				</annotation>
			</enumeration>
			<enumeration value="MacRomania">
				<annotation>
					<documentation>Macintosh Romania</documentation>
				</annotation>
			</enumeration>
			<enumeration value="MacSymbol">
				<annotation>
					<documentation>Macintosh Symbol</documentation>
				</annotation>
			</enumeration>
			<enumeration value="MacThai">
				<annotation>
					<documentation>Macintosh Thai</documentation>
				</annotation>
			</enumeration>
			<enumeration value="MacTurkish">
				<annotation>
					<documentation>Macintosh Turkish</documentation>
				</annotation>
			</enumeration>
			<enumeration value="MacUkraine">
				<annotation>
					<documentation>Macintosh Ukraine</documentation>
				</annotation>
			</enumeration>
		</restriction>
	</simpleType>
	<complexType name="ElevationStorageTableComplexType">
		<attribute name="elevation" type="float" use="required"/>
		<attribute name="stage" type="float" use="optional"/>
		<attribute name="storage" type="float" use="required"/>
		<attribute name="area" type="float" use="optional"/>
		<attribute name="outflowDischarge" type="float" use="optional"/>
	</complexType>
	<complexType name="GridPlotComplexType">
		<sequence>
			<element name="description" type="string" minOccurs="0"/>
			<element name="mapExtentId" type="string" minOccurs="0">
				<annotation>
					<documentation>Since 2017.02. FEWS-17986. When this gridPlot is selected, the zoom extent will be changed to the given map extent. Can also be specified through defaults.
					</documentation>
				</annotation>
			</element>
			<element name="displayGroupPlotId" type="fews:idStringType" minOccurs="0">
				<annotation>
					<documentation>When double clicking on a location in the spatial display the the time dialog will be displayed with the display group for the specified plot and the double clicked
						location.
					</documentation>
				</annotation>
			</element>
			<element name="dataFeedId" type="fews:nonEmptyStringType" minOccurs="0">
				<annotation>
					<documentation>Since 2019.02. Supported only for external historical time series, in online systems only (no stand-alone). If configured, the spacial grid display will display in
						the footer when the latest import happened for the given dataFeedId.
					</documentation>
				</annotation>
			</element>
			<choice>
				<group ref="fews:ObsoleteTimeSeriesSetChoice"/>
				<group ref="fews:AnimatedLayerChoice" minOccurs="0" maxOccurs="unbounded">
					<annotation>
						<documentation>Since 2018.01. Omit the layers only if the grid plot is used as a template (format) . Then the time series should be injected by the responsible components.
						</documentation>
					</annotation>
				</group>
			</choice>
			<element name="logo" type="fews:LogoComplexType" minOccurs="0">
				<annotation>
					<documentation>Since 2016.02 #68240. (Copy right logo) visible in the map. Please note that the logo cannot be shown in the maps of the Report module
					</documentation>
				</annotation>
			</element>
			<choice minOccurs="0">
				<element name="showThumbnailsPanel" type="boolean" default="false">
					<annotation>
						<documentation>If this is true, then the grid display shows the spatial thumbnails panel when this grid plot is selected. Otherwise the grid display will not show the spatial
							thumbnails panel when this grid plot is selected. Default is false. After this grid plot has been selected, the user can still switch on/off the spatial thumbnails panel
							manually, using the toggle button in the grid display. If this element is never configured for any grid plot, the user settings will be used to decide whether the
							thumbnails panels is shown on start-up. If this element is configured for any grid plot, the thumbnails panel will always be hidden on start-up.
						</documentation>
					</annotation>
				</element>
				<element name="openEnsembleThumbnailsWindowWhenSelected" type="boolean" default="false">
					<annotation>
						<documentation>If this is true and the grid plot contains ensemble time series, then the ensemble thumbnails window will be opened directly after selecting the grid plot.
							Default is false.
						</documentation>
					</annotation>
				</element>
			</choice>
			<element name="numberOfRecentForecasts" default="1" minOccurs="0">
				<annotation>
					<documentation>The grid thumbnails panel in the grid display shows the specified number of most recent forecasts with a time0 before or at the display time. It shows one row of
						thumbnails for each forecast shown. This option is only used for gridPlots that show forecast time series. For gridPlots that do not show forecast time series, only one row of
						thumbnails is shown. Default is 1, i.e. by default thumbnails are only shown for the current forecast. In 2024.01 the max is increased from 10 to 50
					</documentation>
				</annotation>
				<simpleType>
					<restriction base="fews:positiveInteger">
						<maxInclusive value="50"/>
					</restriction>
				</simpleType>
			</element>
			<element name="gapBetweenThumbnails" type="fews:positiveInteger" default="1" minOccurs="0">
				<annotation>
					<documentation>The gap between two consecutive thumbnails in the grid thumbnails panel (in number of timeSteps). If this is 1, then a thumbnail is shown for every timeStep. If this
						is 2, then a thumbnail is shown for every other timeStep. If this is 3, then a thumbnail is shown for each third timeStep, etc. Default is 1. The first time in the displayed
						period is the reference time where the gaps "start counting", i.e. there is always a thumbnail for the first time in the displayed period.
					</documentation>
				</annotation>
			</element>
			<element name="movieFrameDurationMillis" type="positiveInteger" default="200" minOccurs="0">
				<annotation>
					<documentation>The number of milliseconds a frame / time step is visible before the next time step becomes visible.
						The default is 200 milliseconds.
						When the CPU is too slow to catch the specified frame rate a frame will be displayed longer than specified.
					</documentation>
				</annotation>
			</element>
			<choice minOccurs="0">
				<element name="movingAverageTimeSpan" type="fews:TimeSpanComplexType" maxOccurs="unbounded">
					<annotation>
						<documentation>When configured a slider is displayed with the configured time spans. If a time span is selected in the slider, then the data in the grid display is aggregated
							(moving average) using that time span. The start of a timeSpan is exclusive and the end of a timeSpan is inclusive. Configure a very large time span (eg 100000 days) to
							allow the user to see the total average of the loaded time series.
						</documentation>
					</annotation>
				</element>
				<element name="movingAccumulationTimeSpan" type="fews:TimeSpanComplexType" maxOccurs="unbounded">
					<annotation>
						<documentation>When configured an accumulation slider is displayed with the configured time spans. If a time span is selected in the slider, then the data in the grid display
							is aggregated (moving accumulation) using that time span. The start of a timeSpan is exclusive and the end of a timeSpan is inclusive. Configure a very large time span (eg
							100000 days) to allow the user to see the total sum of the loaded time series.
						</documentation>
					</annotation>
				</element>
				<element name="accumulationTimeSpan" type="fews:TimeSpanComplexType" maxOccurs="unbounded">
					<annotation>
						<documentation>Since 2014.02. When configured an accumulation slider is displayed with the configured time spans. When a time span is selected with the slider, the interval of
							the ticks in the time slider in the grid display is recalculated to the selected time step. Configure a very large time span (eg 100000 days) to allow the user to see the
							total sum of the loaded time series.
						</documentation>
					</annotation>
				</element>
				<element name="accumulationTimeStep" type="fews:TimeStepComplexType" maxOccurs="unbounded">
					<annotation>
						<documentation>Since 2016.02. When configured an accumulation slider is displayed with the configured time steps. When a time step is selected with the slider, the interval of
							the ticks in the time slider in the grid display is recalculated to the selected time step. Configure a very large time step (eg 100 years) to allow the user to see the
							total sum of the loaded time series.
						</documentation>
					</annotation>
				</element>
				<element name="hideLastValueCheckBox" type="boolean">
					<annotation>
						<documentation>Since 2017.02. Default false. When set to true, the "show last value" will be hidden. Note that if an accumulation slider is configured, the checkbox will be
							hidden by default.
						</documentation>
					</annotation>
				</element>
			</choice>
			<element name="locationFilterAttributeId" type="fews:nonEmptyStringType" minOccurs="0" maxOccurs="unbounded">
				<annotation>
					<documentation>Specify the location attributes the user can use to filter the locations/polygons/lines that are visible in the plot. When specified the filter by location attribute
						button will be enabled. If a attribute name besides the id in the locationsSets.xml is specified this will be used in the attribute filter tree.
					</documentation>
				</annotation>
			</element>
			<group ref="fews:GridPlotLegendChoice" minOccurs="0">
				<annotation>
					<documentation>Legend style</documentation>
				</annotation>
			</group>
			<element name="modifiedColor" type="fews:colorStringType" minOccurs="0">
				<annotation>
					<documentation>Since 2019.02. Color used to mark time periods where a spatial modifier is applied.</documentation>
				</annotation>
			</element>
			<element name="timeSliderColor" type="fews:timeSliderColorType" minOccurs="0" default="maximum">
				<annotation>
					<documentation>Since 2025.02. Timeslider color behaviour, default is maximum</documentation>
				</annotation>
			</element>
			<group ref="fews:ClassBreaksChoice" minOccurs="0" maxOccurs="unbounded">
				<annotation>
					<documentation>Optional when default class breaks are available for this plot group and parameter group. Note: the missingValueColor configured in this classBreaks element is also
						used to display missing values (NaN values) for point locations and tracks when the display is showing threshold warning level flags. Since 2017.01 it is possible to configure
						multiple class breaks. When multiple class breaks are configured the user can switch between different class breaks. This first one is the default. The configured class break
						description is listed in a drop down box above the class breaks
					</documentation>
				</annotation>
			</group>
			<group ref="fews:ArrowClassBreaksChoice" minOccurs="0">
				<annotation>
					<documentation>Use different class breaks for the arrows. Makes sense when you have an arrow layer on top.
					</documentation>
				</annotation>
			</group>
			<element name="absoluteDifferenceClassBreaksId" type="fews:idStringType" minOccurs="0">
				<annotation>
					<documentation>Since 2020.02. Class breaks that ares used to show the difference between two grids</documentation>
				</annotation>
			</element>
			<element name="relativeDifferenceClassBreaksId" type="fews:idStringType" minOccurs="0">
				<annotation>
					<documentation>Since 2020.02. Class breaks that ares used to show the relative difference between two grids</documentation>
				</annotation>
			</element>
			<element name="contourLinesColor" type="fews:colorStringType" minOccurs="0">
				<annotation>
					<documentation>When specified a contour line with the class break value is painted for every new class break.
						ONLY SUPPORTED FOR REGULAR GRIDS
					</documentation>
				</annotation>
			</element>
			<element name="verticalSliderRange" type="fews:VerticalSliderRangeComplexType" minOccurs="0">
				<annotation>
					<documentation>Since 2017.02. Min and max depth or levels</documentation>
				</annotation>
			</element>
			<element name="geoMap" type="fews:GeoMapComplexType" minOccurs="0">
				<annotation>
					<documentation>Optional when a default map is available for this plot group and parameter
						group
					</documentation>
				</annotation>
			</element>
			<element name="workflow" type="fews:GridPlotWorkflowComplexType" minOccurs="0"/>
			<element name="animatedVectors" type="fews:AnimatedVectorsType" minOccurs="0">
				<annotation>
					<documentation>
						Available in the WebOC since 2024.01. Configuration values for the animated vectors used in the spatial display.
					</documentation>
				</annotation>
			</element>
		</sequence>
		<attribute name="id" type="fews:idStringType" use="required"/>
		<attribute name="name" type="fews:nameStringType" use="optional"/>
	</complexType>
	<complexType name="AnimatedVectorsType">
		<sequence>
			<element name="numberOfParticles" type="int" default="1000" minOccurs="0">
				<annotation>
					<documentation>
						Available in the WebOC since 2023.02. Number of particles to use with animated vectors.
					</documentation>
				</annotation>
			</element>
			<element name="particleSize" type="int" default="4" minOccurs="0">
				<annotation>
					<documentation>
						Available in the WebOC since 2023.02. Size of particles used with animated vectors.
					</documentation>
				</annotation>
			</element>
			<element name="fadeAmount" type="float" default="3" minOccurs="0">
				<annotation>
					<documentation>
						Available in the WebOC since 2023.02. The amount particles should fade out per second.
					</documentation>
				</annotation>
			</element>
			<element name="particleColor" type="fews:colorStringType" default="FFFFFF" minOccurs="0">
				<annotation>
					<documentation>
						Available in the WebOC since 2023.02. Particle color, only relevant when "coloured particles" is false.
					</documentation>
				</annotation>
			</element>
			<element name="speedFactor" type="float" default="0.2" minOccurs="0">
				<annotation>
					<documentation>
						Available in the WebOC since 2023.02. Speed factor of particles.
					</documentation>
				</annotation>
			</element>
			<element name="speedExponent" type="float" default="1" minOccurs="0">
				<annotation>
					<documentation>
						Available in the WebOC since 2023.02. Speed exponent to optionally compress the speed of vectors.
					</documentation>
				</annotation>
			</element>
			<element name="coloredParticles" type="boolean" default="false" minOccurs="0">
				<annotation>
					<documentation>
						Available in the WebOC since 2023.02. When set to true the particles are coloured instead of the image background.
					</documentation>
				</annotation>
			</element>
			<element name="maximumParticleAge" type="float" minOccurs="0">
				<annotation>
					<documentation>
						Available in the WebOC since 2023.02. Maximum particle age
					</documentation>
				</annotation>
			</element>
			<element name="growthRate" type="float" minOccurs="0">
				<annotation>
					<documentation>
						Available in the WebOC since 2023.02. Growth rate
					</documentation>
				</annotation>
			</element>
			<element name="particleType" type="fews:particleTypeTypeEnumStringType" minOccurs="0">
				<annotation>
					<documentation>
						Available in the WebOC since 2023.02. Particle type
					</documentation>
				</annotation>
			</element>
		</sequence>
	</complexType>
	<simpleType name="particleTypeTypeEnumStringType">
		<restriction base="string">
			<enumeration value="simple"/>
			<enumeration value="wave-crest"/>
		</restriction>
	</simpleType>
	<complexType name="GridPlotWorkflowComplexType">
		<sequence>
			<element name="workflowId" type="fews:idStringType">
				<annotation>
					<documentation>id of the workflow</documentation>
				</annotation>
			</element>
			<element name="sketchType" type="fews:shapeTypeEnumStringType" minOccurs="0">
				<annotation>
					<documentation>Validates the drawn sketch. Only a polgyon sketch or a single point sketch is supported</documentation>
				</annotation>
			</element>
			<element name="properties" type="fews:PropertiesComplexType" minOccurs="0"/>
			<element name="roundDisplayedCoordinatesToCentimeters" type="boolean" minOccurs="0" default="true"/>
		</sequence>
	</complexType>
	<complexType name="GridPlotGroupComplexType">
		<sequence>
			<element name="description" type="string" minOccurs="0"/>
			<element name="viewPermission" type="string" minOccurs="0">
				<annotation>
					<documentation>
						set a permission to control who can view this plot group
					</documentation>
				</annotation>
			</element>
			<element name="highlight" type="boolean" default="false" minOccurs="0"/>
			<choice maxOccurs="unbounded">
				<element name="gridPlot" type="fews:GridPlotComplexType"/>
				<element name="singleLocationGridPlots" type="fews:GridPlotComplexType">
					<annotation>
						<documentation>Adds multiple plots nodes at once. Every plot will show only one location. Every z layers has it-s own location. The name and the id is postfixed with a space
							and the location short name. WARNING. This option is NOT recognized by the WMS service
						</documentation>
					</annotation>
				</element>
				<element name="gridPlotGroup" type="fews:GridPlotGroupComplexType"/>
			</choice>
		</sequence>
		<attribute name="id" type="fews:idStringType" use="required"/>
		<attribute name="name" type="fews:nameStringType" use="optional"/>
	</complexType>
	<complexType name="AnimationComplexType">
		<complexContent>
			<extension base="fews:GridPlotComplexType">
				<sequence>
					<element name="computeMapExtentToShowAllNonMissingTimeSeries" type="fews:ComputeMapExtentToShowAllNonMissingTimeSeriesComplexType" minOccurs="0">
						<annotation>
							<documentation>Since 2017.02. If this is configured, then the default map extent will be enlarged to show all locations with non-missing time series. The default map extent
								is the minimum extent
							</documentation>
						</annotation>
					</element>
					<element name="width" type="fews:positiveIntegerStringType">
						<annotation>
							<documentation>Width of the animation in pixels</documentation>
						</annotation>
					</element>
					<element name="height" type="fews:positiveIntegerStringType">
						<annotation>
							<documentation>Height of the animation in pixels</documentation>
						</annotation>
					</element>
					<element name="valueLabels" type="fews:ValueLabelsComplexType" minOccurs="0">
						<annotation>
							<documentation>Since 2016.02, optional. If this is configured, then labels will be drawn next to the locations on the map in the produced snapshot/animation. These labels
								will show the actual values of the corresponding locations and optionally also the units. Please note that labels will not be drawn if they would overlap other labels
								(decluttering), therefore some locations may not have a label on the map.
							</documentation>
						</annotation>
					</element>
					<element name="textLabels" type="fews:TextLabelsComplexType" minOccurs="0">
						<annotation>
							<documentation>Since 2018.01, optional. If configured then the location attribute will be drawn next to the locations on the map in the created snapshot/animation
							</documentation>
						</annotation>
					</element>
					<element name="labelFont" type="fews:FontComplexType" minOccurs="0">
						<annotation>
							<documentation>Since 2022.01, optional. The font of the valueLabels and textLabels that will be drawn next to the locations on the map in the created snapshot/animation
							</documentation>
						</annotation>
					</element>
				</sequence>
			</extension>
		</complexContent>
	</complexType>
	<complexType name="ValueLabelsComplexType">
		<sequence>
			<element name="showUnits" type="boolean" default="true">
				<annotation>
					<documentation>If this is true, then the units are shown next to the values in the labels. If this is false, then the units are not shown.</documentation>
				</annotation>
			</element>
		</sequence>
	</complexType>
	<complexType name="TextLabelsComplexType">
		<sequence>
			<element name="attributeId" type="fews:idStringType">
				<annotation>
					<documentation>Id of the location attribute that should be shown as a label</documentation>
				</annotation>
			</element>
			<element name="font" type="fews:FontComplexType" minOccurs="0">
				<annotation>
					<documentation>Deprecated; you can specify a font using the element labelFont. This textLabel font will be ignored if the labelFont is configured</documentation>
				</annotation>
			</element>
		</sequence>
	</complexType>
	<complexType name="SpatialPlotSnapshotsComplexType">
		<complexContent>
			<extension base="fews:AnimationComplexType">
				<sequence maxOccurs="unbounded">
					<element name="snapshot" type="fews:SpatialPlotSnapshotComplexType">
						<annotation>
							<documentation>Snapshot</documentation>
						</annotation>
					</element>
				</sequence>
			</extension>
		</complexContent>
	</complexType>
	<complexType name="SpatialPlotSnapshotComplexType">
		<sequence>
			<element name="relativeTime" type="fews:RelativeTimeComplexType" minOccurs="0">
				<annotation>
					<documentation>Time of the plot relative of time0 of the report run, when no times are specified the first time in the time series is used</documentation>
				</annotation>
			</element>
			<element name="fileName" type="fews:fileStringType" minOccurs="0">
				<annotation>
					<documentation>The file name under which the spatial snapshot (image) is stored on the file system can be optionally configured. When omitted a file name is generated.
					</documentation>
				</annotation>
			</element>
			<group ref="fews:DateTimeLabelChoice" minOccurs="0">
				<annotation>
					<documentation>date time label is visible by default</documentation>
				</annotation>
			</group>
			<element name="label" type="fews:SpatialPlotLabelComplexType" minOccurs="0" maxOccurs="4">
				<annotation>
					<documentation>Since 2024.02. This label will be added to the configured corner on the map</documentation>
				</annotation>
			</element>
		</sequence>
		<attribute name="id" type="fews:idStringType" use="required">
			<annotation>
				<documentation>Id referenced in the report template, $SPATIAL_PLOT_SNAPSHOT(id)$</documentation>
			</annotation>
		</attribute>
	</complexType>
	<simpleType name="equationEnumStringType">
		<restriction base="string">
			<enumeration value="polynomial"/>
			<enumeration value="simple_linear"/>
			<enumeration value="multiple_linear"/>
			<enumeration value="exponential_divide"/>
			<enumeration value="exponential_multiply"/>
			<enumeration value="power"/>
			<enumeration value="logarithmic"/>
			<enumeration value="hyperbolic"/>
		</restriction>
	</simpleType>
	<simpleType name="unitEnumStringType">
		<restriction base="string">
			<enumeration value="m"/>
			<enumeration value="m2"/>
			<enumeration value="m3"/>
			<enumeration value="mm"/>
			<enumeration value="m/s"/>
			<enumeration value="m2/s"/>
			<enumeration value="m3/s"/>
			<enumeration value="mm/hr"/>
			<enumeration value="K"/>
			<enumeration value="oC"/>
			<enumeration value="%"/>
			<enumeration value="g"/>
			<enumeration value="s"/>
			<enumeration value="degrees"/>
			<enumeration value="Bft"/>
			<enumeration value="-"/>
			<enumeration value="W/m2"/>
			<enumeration value="Pa"/>
			<enumeration value="N"/>
			<enumeration value="Hz"/>
			<enumeration value="kg/m3"/>
			<enumeration value="m3/kg"/>
			<enumeration value="1/m"/>
			<enumeration value="rad"/>
			<enumeration value="pH"/>
			<enumeration value="IN"/>
		</restriction>
	</simpleType>
	<complexType name="CorrelationEquationsComplexType">
		<annotation>
			<documentation>Type of regression equation</documentation>
		</annotation>
		<attribute name="equationType" type="fews:equationEnumStringType" use="required"/>
		<attribute name="polynomialOrder" use="optional">
			<simpleType>
				<restriction base="int">
					<minInclusive value="1"/>
					<maxInclusive value="9"/>
				</restriction>
			</simpleType>
		</attribute>
	</complexType>
	<!--Harmonic (Tidal) Components -->
	<complexType name="HarmonicComponentComplexType">
		<attribute name="name" type="fews:harmonicDataEnumStringType" use="required"/>
		<attribute name="amplitude" type="float" use="required"/>
		<attribute name="phase" type="float" use="required"/>
	</complexType>
	<!--Enumeration of harmonic component names -->
	<simpleType name="harmonicDataEnumStringType">
		<restriction base="string">
			<enumeration value="A0"/>
			<enumeration value="SA"/>
			<enumeration value="SSA"/>
			<enumeration value="MSM"/>
			<enumeration value="MM"/>
			<enumeration value="MSF"/>
			<enumeration value="MS0"/>
			<enumeration value="MF"/>
			<enumeration value="KO0"/>
			<enumeration value="MK0"/>
			<enumeration value="SNU"/>
			<enumeration value="SN"/>
			<enumeration value="MSTM"/>
			<enumeration value="MFM"/>
			<enumeration value="2SM"/>
			<enumeration value="MSQM"/>
			<enumeration value="MQM"/>
			<enumeration value="2SMN"/>
			<enumeration value="2OK1"/>
			<enumeration value="2Q1"/>
			<enumeration value="NJ1"/>
			<enumeration value="SIGMA1"/>
			<enumeration value="MUK1"/>
			<enumeration value="NUJ1"/>
			<enumeration value="Q1"/>
			<enumeration value="NK1"/>
			<enumeration value="RO1"/>
			<enumeration value="NUK1"/>
			<enumeration value="O1"/>
			<enumeration value="TAU1"/>
			<enumeration value="MP1"/>
			<enumeration value="M1B"/>
			<enumeration value="M1C"/>
			<enumeration value="M1A"/>
			<enumeration value="M1"/>
			<enumeration value="NO1"/>
			<enumeration value="CHI1"/>
			<enumeration value="LP1"/>
			<enumeration value="PI1"/>
			<enumeration value="TK1"/>
			<enumeration value="P1"/>
			<enumeration value="SK1"/>
			<enumeration value="S1"/>
			<enumeration value="K1"/>
			<enumeration value="MO1"/>
			<enumeration value="SP1"/>
			<enumeration value="PSI1"/>
			<enumeration value="RP1"/>
			<enumeration value="FI1"/>
			<enumeration value="KP1"/>
			<enumeration value="THETA1"/>
			<enumeration value="LABDAO1"/>
			<enumeration value="J1"/>
			<enumeration value="MQ1"/>
			<enumeration value="2PO1"/>
			<enumeration value="SO1"/>
			<enumeration value="OO1"/>
			<enumeration value="2KO1"/>
			<enumeration value="UPSILON1"/>
			<enumeration value="KQ1"/>
			<enumeration value="2MN2S2"/>
			<enumeration value="3MKS2"/>
			<enumeration value="2NS2"/>
			<enumeration value="3MS2"/>
			<enumeration value="OQ2"/>
			<enumeration value="MNK2"/>
			<enumeration value="EPSILON2"/>
			<enumeration value="MNS2"/>
			<enumeration value="2ML2S2"/>
			<enumeration value="MNUS2"/>
			<enumeration value="MNK2S2"/>
			<enumeration value="2MS2K2"/>
			<enumeration value="O2"/>
			<enumeration value="NLK2"/>
			<enumeration value="2MK2"/>
			<enumeration value="2N2"/>
			<enumeration value="MU2"/>
			<enumeration value="2MS2"/>
			<enumeration value="SNK2"/>
			<enumeration value="NA2"/>
			<enumeration value="N2"/>
			<enumeration value="KQ2"/>
			<enumeration value="NB2"/>
			<enumeration value="NU2"/>
			<enumeration value="3MSN2"/>
			<enumeration value="2KN2S2"/>
			<enumeration value="OP2"/>
			<enumeration value="MSK2"/>
			<enumeration value="GAMMA2"/>
			<enumeration value="ALFA2"/>
			<enumeration value="MPS2"/>
			<enumeration value="MA2"/>
			<enumeration value="M2"/>
			<enumeration value="KO2"/>
			<enumeration value="MSP2"/>
			<enumeration value="MB2"/>
			<enumeration value="DELTA2"/>
			<enumeration value="MKS2"/>
			<enumeration value="M2(KS)2"/>
			<enumeration value="2SN(MK)2"/>
			<enumeration value="LABDA2"/>
			<enumeration value="SNM2"/>
			<enumeration value="2MN2"/>
			<enumeration value="L2"/>
			<enumeration value="L2A"/>
			<enumeration value="L2B"/>
			<enumeration value="2SK2"/>
			<enumeration value="T2"/>
			<enumeration value="S2"/>
			<enumeration value="KP2"/>
			<enumeration value="R2"/>
			<enumeration value="K2"/>
			<enumeration value="MSNU2"/>
			<enumeration value="MSN2"/>
			<enumeration value="ZETA2"/>
			<enumeration value="ETA2"/>
			<enumeration value="KJ2"/>
			<enumeration value="MKN2"/>
			<enumeration value="2KM(SN)2"/>
			<enumeration value="2SM2"/>
			<enumeration value="SKM2"/>
			<enumeration value="2MS2N2"/>
			<enumeration value="2SNU2"/>
			<enumeration value="2SN2"/>
			<enumeration value="SKN2"/>
			<enumeration value="MQ3"/>
			<enumeration value="NO3"/>
			<enumeration value="MO3"/>
			<enumeration value="2MK3"/>
			<enumeration value="2MP3"/>
			<enumeration value="M3"/>
			<enumeration value="NK3"/>
			<enumeration value="SO3"/>
			<enumeration value="MP3"/>
			<enumeration value="MK3"/>
			<enumeration value="SP3"/>
			<enumeration value="2MQ3"/>
			<enumeration value="SK3"/>
			<enumeration value="2SO3"/>
			<enumeration value="K3"/>
			<enumeration value="4MS4"/>
			<enumeration value="2MNS4"/>
			<enumeration value="3MK4"/>
			<enumeration value="MNLK4"/>
			<enumeration value="3MS4"/>
			<enumeration value="MSNK4"/>
			<enumeration value="MN4"/>
			<enumeration value="MNU4"/>
			<enumeration value="2MLS4"/>
			<enumeration value="2MSK4"/>
			<enumeration value="M4"/>
			<enumeration value="2MKS4"/>
			<enumeration value="SN4"/>
			<enumeration value="3MN4"/>
			<enumeration value="2SMK4"/>
			<enumeration value="MS4"/>
			<enumeration value="MK4"/>
			<enumeration value="2SNM4"/>
			<enumeration value="2MSN4"/>
			<enumeration value="SL4"/>
			<enumeration value="S4"/>
			<enumeration value="SK4"/>
			<enumeration value="2SMN4"/>
			<enumeration value="3SM4"/>
			<enumeration value="2SKM4"/>
			<enumeration value="MNO5"/>
			<enumeration value="3MK5"/>
			<enumeration value="3MP5"/>
			<enumeration value="M5"/>
			<enumeration value="MNK5"/>
			<enumeration value="2MP5"/>
			<enumeration value="MSO5"/>
			<enumeration value="3MO5"/>
			<enumeration value="MSK5"/>
			<enumeration value="3KM5"/>
			<enumeration value="2(MN)S6"/>
			<enumeration value="3MNS6"/>
			<enumeration value="4MK6"/>
			<enumeration value="2NM6"/>
			<enumeration value="4MS6"/>
			<enumeration value="2MSNK6"/>
			<enumeration value="2MN6"/>
			<enumeration value="2MNU6"/>
			<enumeration value="3MSK6"/>
			<enumeration value="M6"/>
			<enumeration value="MSN6"/>
			<enumeration value="MNK6"/>
			<enumeration value="4MN6"/>
			<enumeration value="MKNU6"/>
			<enumeration value="2(MS)K6"/>
			<enumeration value="2MS6"/>
			<enumeration value="2MK6"/>
			<enumeration value="2SN6"/>
			<enumeration value="3MSN6"/>
			<enumeration value="MKL6"/>
			<enumeration value="2SM6"/>
			<enumeration value="MSK6"/>
			<enumeration value="S6"/>
			<enumeration value="2MNO7"/>
			<enumeration value="2NMK7"/>
			<enumeration value="M7"/>
			<enumeration value="2MSO7"/>
			<enumeration value="MSKO7"/>
			<enumeration value="2(MN)8"/>
			<enumeration value="3MN8"/>
			<enumeration value="3MNKS8"/>
			<enumeration value="M8"/>
			<enumeration value="2MSN8"/>
			<enumeration value="2MNK8"/>
			<enumeration value="3MS8"/>
			<enumeration value="3MK8"/>
			<enumeration value="2SNM8"/>
			<enumeration value="MSNK8"/>
			<enumeration value="2(MS)8"/>
			<enumeration value="2MSK8"/>
			<enumeration value="3SM8"/>
			<enumeration value="2SMK8"/>
			<enumeration value="S8"/>
			<enumeration value="2(MN)K9"/>
			<enumeration value="3MNK9"/>
			<enumeration value="4MK9"/>
			<enumeration value="3MSK9"/>
			<enumeration value="4MN10"/>
			<enumeration value="M10"/>
			<enumeration value="3MSN10"/>
			<enumeration value="4MS10"/>
			<enumeration value="2(MS)N10"/>
			<enumeration value="2MNSK10"/>
			<enumeration value="3M2S10"/>
			<enumeration value="4MSK11"/>
			<enumeration value="M12"/>
			<enumeration value="4MSN12"/>
			<enumeration value="5MS12"/>
			<enumeration value="3MNKS12"/>
			<enumeration value="4M2S12"/>
		</restriction>
	</simpleType>
	<!-- Enumeration for Flags-->
	<simpleType name="flagEnumStringType">
		<restriction base="string">
			<enumeration value="unreliable"/>
			<enumeration value="doubtful"/>
		</restriction>
	</simpleType>
	<!-- Enumeration for validation labels -->
	<simpleType name="validationLabelEnumStringType">
		<restriction base="string">
			<enumeration value="dried"/>
			<enumeration value="inundated"/>
			<enumeration value="ice"/>
			<enumeration value="above detection range"/>
			<enumeration value="below detection range"/>
			<enumeration value="varying"/>
		</restriction>
	</simpleType>
	<simpleType name="dateTimeFormatType">
		<restriction base="string"/>
	</simpleType>
	<complexType name="PixelPosition">
		<attribute name="x" type="nonNegativeInteger">
			<annotation>
				<documentation>Number of pixels from the left, the most left coordinate is 0</documentation>
			</annotation>
		</attribute>
		<attribute name="y" type="nonNegativeInteger">
			<annotation>
				<documentation>Number of pixels from the top, the most top coordinate is 0</documentation>
			</annotation>
		</attribute>
	</complexType>
	<complexType name="PixelDimension">
		<attribute name="width" type="nonNegativeInteger">
			<annotation>
				<documentation>Number of pixels</documentation>
			</annotation>
		</attribute>
		<attribute name="height" type="nonNegativeInteger">
			<annotation>
				<documentation>Number of pixels</documentation>
			</annotation>
		</attribute>
	</complexType>
	<!--Enumeration for aggregation rule-->
	<simpleType name="aggregationRuleEnumStringType">
		<restriction base="string">
			<enumeration value="instantaneous"/>
			<enumeration value="accumulative"/>
			<enumeration value="mean"/>
			<enumeration value="constant"/>
			<enumeration value="max"/>
		</restriction>
	</simpleType>
	<group name="GridProjection">
		<choice>
			<element name="geoDatum" type="fews:geoDatumStringType">
				<annotation>
					<documentation>Type of coordinate system.</documentation>
				</annotation>
			</element>
			<element name="projectionFile" type="fews:fileStringType">
				<annotation>
					<documentation>PRJ file from the MapLayerFiles</documentation>
				</annotation>
			</element>
			<element name="polarStereographic" type="fews:PolarStereographicGeoDatumComplexType">
				<annotation>
					<documentation>Define a custom stereoGraphic geo datum.</documentation>
				</annotation>
			</element>
			<element name="rotatedNorthPole" type="fews:LatLongComplexType">
				<annotation>
					<documentation>Define a custom rotated pole geo datum based on WGS 1984. The rotation of the latitude/longitude grid is such that the intersection of the "prime meridian" and the
						"equator" has been located at the central latitude and longitude of the area represented.
					</documentation>
				</annotation>
			</element>
			<element name="rotatedSouthPole" type="fews:LatLongComplexType">
				<annotation>
					<documentation>Define a custom rotated pole geo datum based on WGS 1984. The rotation of the latitude/longitude grid is such that the intersection of the "prime meridian" and the
						"equator" has been located at the central latitude and longitude of the area represented.
					</documentation>
				</annotation>
			</element>
			<element name="rotatedCartesian" type="fews:RotatedCartesianComplexType">
				<annotation>
					<documentation>Rotates an existing geo datum with a cartesian coordinate system counter clock wise around a specified point.</documentation>
				</annotation>
			</element>
			<element name="lambertConformalConic" type="fews:LambertConformalConicGeoDatumComplexType">
				<annotation>
					<documentation>Define a custom lambert conformal conic geo datum.</documentation>
				</annotation>
			</element>
			<element name="lambertAzimuthalEqualArea" type="fews:LambertAzimuthalEqualAreaGeoDatumComplexType">
				<annotation>
					<documentation>Lambert AzimuthalEqualArea Projection spherical earth.</documentation>
				</annotation>
			</element>
			<element name="azimuthalEquidistant" type="fews:AzimuthalEquidistantGeoDatumComplexType">
				<annotation>
					<documentation>Azimuthal equidistant projection</documentation>
				</annotation>
			</element>
			<element name="albersEqualArea" type="fews:AlbersEqualAreaGeoDatumComplexType">
				<annotation>
					<documentation>AlbersEqualArea Projection spherical earth.</documentation>
				</annotation>
			</element>
			<element name="mercator" type="fews:MercatorGeoDatumComplexType">
				<annotation>
					<documentation>does not support a latitude of natural origin other than the equator for now.</documentation>
				</annotation>
			</element>
			<element name="transverseMercator" type="fews:TransverseMercatorGeoDatumComplexType">
				<annotation>
					<documentation>Transverse Mercator</documentation>
				</annotation>
			</element>
			<element name="geostationarySatelliteView" type="fews:GeostationarySatelliteViewGeoDatumComplexType">
				<annotation>
					<documentation>Alias GEOS, Alias Normalized Geostationary Projection. Viewed from above the equator (latitude = zero, height = 35768 km). Only the central meridian parameter is
						required.
					</documentation>
				</annotation>
			</element>
		</choice>
	</group>
	<complexType name="PolarStereographicGeoDatumComplexType">
		<sequence>
			<element name="originLatitude" type="double"/>
			<element name="originLongitude" type="double"/>
			<choice>
				<element name="trueScalingLatitude" type="double"/>
				<element name="scaleAtOrigin" type="double"/>
			</choice>
			<element name="equatorRadius" type="double" default="6378137" minOccurs="0">
				<annotation>
					<documentation>Radius of equator in meters (approximate 6400000 meters)</documentation>
				</annotation>
			</element>
			<element name="poleRadius" type="double" default="6356752.314" minOccurs="0">
				<annotation>
					<documentation>Radius at pole in meters (approximate 6400000 meters)</documentation>
				</annotation>
			</element>
		</sequence>
	</complexType>
	<complexType name="LambertConformalConicGeoDatumComplexType">
		<sequence>
			<element name="originLatitude" type="double"/>
			<element name="originLongitude" type="double"/>
			<element name="firstStandardParallelLatitude" type="double"/>
			<element name="secondStandardParallelLatitude" type="double"/>
		</sequence>
	</complexType>
	<complexType name="LambertAzimuthalEqualAreaGeoDatumComplexType">
		<sequence>
			<element name="originLatitude" type="double"/>
			<element name="originLongitude" type="double"/>
			<element name="earthRadius" type="double" default="6371229" minOccurs="0">
				<annotation>
					<documentation>Radius of earth in meters (approximate 6400000 meters)</documentation>
				</annotation>
			</element>
		</sequence>
	</complexType>
	<complexType name="AzimuthalEquidistantGeoDatumComplexType">
		<sequence>
			<element name="originLatitude" type="double"/>
			<element name="originLongitude" type="double"/>
			<group ref="fews:EarthRadiusChoice"/>
		</sequence>
	</complexType>
	<complexType name="AlbersEqualAreaGeoDatumComplexType">
		<sequence>
			<element name="originLatitude" type="double"/>
			<element name="originLongitude" type="double"/>
			<element name="standardParallel1" type="double">
				<annotation>
					<documentation>First standard parallel</documentation>
				</annotation>
			</element>
			<element name="standardParallel2" type="double">
				<annotation>
					<documentation>Second standard parallel</documentation>
				</annotation>
			</element>
			<group ref="fews:EarthRadiusChoice"/>
		</sequence>
	</complexType>
	<complexType name="MercatorGeoDatumComplexType">
		<sequence>
			<element name="originLongitude" type="double"/>
			<element name="standardParallelLatitude" type="double"/>
		</sequence>
	</complexType>
	<complexType name="TransverseMercatorGeoDatumComplexType">
		<sequence>
			<element name="originLatitude" type="double">
				<annotation>
					<documentation>Latitude of natural origin,</documentation>
				</annotation>
			</element>
			<element name="originLongitude" type="double">
				<annotation>
					<documentation>Longitude of natural origin, longitude of central meridian, longitude that the cylinder is tangent at central meridian</documentation>
				</annotation>
			</element>
			<element name="scaleFactorAtOrigin" type="double">
				<annotation>
					<documentation>Scale factor at natural origin, scale factor along the central meridian</documentation>
				</annotation>
			</element>
		</sequence>
	</complexType>
	<complexType name="GeostationarySatelliteViewGeoDatumComplexType">
		<sequence>
			<element name="centralMeridian" type="double">
				<annotation>
					<documentation>Position (longitude) of the satellite at the equator</documentation>
				</annotation>
			</element>
		</sequence>
	</complexType>
	<complexType name="LatLongComplexType">
		<sequence>
			<element name="latitude" type="double"/>
			<element name="longitude" type="double"/>
		</sequence>
	</complexType>
	<complexType name="RotatedCartesianComplexType">
		<sequence>
			<element name="geoDatum" type="fews:geoDatumStringType">
				<annotation>
					<documentation>Unrotated cartesian coordinate system.</documentation>
				</annotation>
			</element>
			<element name="x" type="double">
				<annotation>
					<documentation>Rotation point x coordinate</documentation>
				</annotation>
			</element>
			<element name="y" type="double">
				<annotation>
					<documentation>Rotation point y coordinate</documentation>
				</annotation>
			</element>
			<element name="counterClockwiseAngle" type="double">
				<annotation>
					<documentation>Counter clockwise rotation in degrees</documentation>
				</annotation>
			</element>
		</sequence>
	</complexType>
	<!---->
	<group name="EarthRadiusChoice">
		<choice>
			<element name="earthRadius" type="double" default="6371229">
				<annotation>
					<documentation>Radius of earth in meters (approximate 6400000 meters)</documentation>
				</annotation>
			</element>
			<sequence>
				<element name="equatorRadius" type="double" default="63781370">
					<annotation>
						<documentation>Radius of earth at equator in meters (approximate 6400000 meters)</documentation>
					</annotation>
				</element>
				<element name="poleRadius" type="double" default="63567523 ">
					<annotation>
						<documentation>Radius of earth through poles in meters (approximate 6400000 meters)</documentation>
					</annotation>
				</element>
			</sequence>
		</choice>
	</group>
	<!-- PeriodConditionComplexType used in transformationModule.xsd and in transformationCoefficientSets.xsd -->
	<complexType name="PeriodConditionComplexType">
		<annotation>
			<documentation>A period condition</documentation>
		</annotation>
		<choice>
			<sequence>
				<element name="startDateTime" type="fews:DateTimeComplexType">
					<annotation>
						<documentation>Start date and time for this period.</documentation>
					</annotation>
				</element>
				<element name="endDateTime" type="fews:DateTimeComplexType">
					<annotation>
						<documentation>End date and time for this period.</documentation>
					</annotation>
				</element>
			</sequence>
			<element name="validBeforeDateTime" type="fews:DateTimeComplexType">
				<annotation>
					<documentation>Valid for entire period prior to this date and time.</documentation>
				</annotation>
			</element>
			<element name="validAfterDateTime" type="fews:DateTimeComplexType">
				<annotation>
					<documentation>Valid for entire period after this date and time.</documentation>
				</annotation>
			</element>
			<element name="season" type="fews:SeasonConditionComplexType">
				<annotation>
					<documentation>A seasonal period that is repeated every year.</documentation>
				</annotation>
			</element>
		</choice>
	</complexType>
	<!-- SeasonConditionComplexType used by PeriodConditionComplexType in sharedTypes.xsd and in transformationTypes.xsd -->
	<complexType name="SeasonConditionComplexType">
		<sequence>
			<element name="startMonthDay" type="fews:monthDayType">
				<annotation>
					<documentation>Start month and day of this season.</documentation>
				</annotation>
			</element>
			<element name="endMonthDay" type="fews:monthDayType">
				<annotation>
					<documentation>End month and day of this season.</documentation>
				</annotation>
			</element>
		</sequence>
	</complexType>
	<simpleType name="extrapolateDirectionEnumStringType">
		<annotation>
			<documentation>Direction of extrapolation</documentation>
		</annotation>
		<restriction base="string">
			<enumeration value="none"/>
			<enumeration value="start"/>
			<enumeration value="end"/>
			<enumeration value="both"/>
		</restriction>
	</simpleType>
	<simpleType name="gridPlotArrowSymbolEnumStringType">
		<annotation>
			<documentation>flow or wind. Flow arrow symbols (-->) start at the location corresponding to the data point (e.g. start at cell center). Wind arrow symbols (>) are centered at the location
				corresponding to the data point (e.g. centered at cell center).
			</documentation>
		</annotation>
		<restriction base="string">
			<enumeration value="flow"/>
			<enumeration value="wind"/>
		</restriction>
	</simpleType>
	<simpleType name="gridPlotDirectionTypeEnumStringType">
		<annotation>
			<documentation>to (used for flow) or from (used for wind)</documentation>
		</annotation>
		<restriction base="string">
			<enumeration value="to"/>
			<enumeration value="from"/>
		</restriction>
	</simpleType>
	<complexType name="TrackLayerComplexType">
		<sequence>
			<element name="displayCurrentTrackOnly" type="boolean" default="false" minOccurs="0">
				<annotation>
					<documentation>DEPRECATED use onlyShowDotForCurrentTime</documentation>
				</annotation>
			</element>
			<element name="lineColor" type="fews:colorStringType" minOccurs="0">
				<annotation>
					<documentation>Color of the track line behind the dots, by default no line is painted
					</documentation>
				</annotation>
			</element>
			<element name="lineWidth" type="positiveInteger" minOccurs="0">
				<annotation>
					<documentation>Since 2022.01. the width of the displayed line, by default two pixels</documentation>
				</annotation>
			</element>
			<element name="endTrackLineAtCurrentTime" type="boolean" minOccurs="0">
				<annotation>
					<documentation>Since 2022.01. by default the complete track is displayed and the current time dot is highlighted</documentation>
				</annotation>
			</element>
			<element name="dotBorderColor" type="fews:colorStringType" minOccurs="0">
				<annotation>
					<documentation>Since 2022.01. by default no border is displayed</documentation>
				</annotation>
			</element>
			<element name="dotFillColor" type="fews:colorStringType" minOccurs="0">
				<annotation>
					<documentation>Since 2022.01. Used insteadof the valueTimeSeries and classbreak colors</documentation>
				</annotation>
			</element>
			<element name="dotSize" type="positiveInteger" minOccurs="0">
				<annotation>
					<documentation>Since 2022.01. Used instead of the valueTimeSeries and classbreak symbol sizes</documentation>
				</annotation>
			</element>
			<element name="onlyShowDotForCurrentTime" type="boolean" minOccurs="0">
				<annotation>
					<documentation>Since 2022.01. by default the dots for all time steps are displayed and the current one is highlighted</documentation>
				</annotation>
			</element>
			<element name="geoDatum" type="fews:geoDatumStringType">
				<annotation>
					<documentation>geo datum of the x and y coordinate in the time series
					</documentation>
				</annotation>
			</element>
			<element name="xTimeSeriesSet" type="fews:TimeSeriesSetComplexType">
				<annotation>
					<documentation>TimeSeriesSet with single scalar time series for the x coordinate</documentation>
				</annotation>
			</element>
			<element name="yTimeSeriesSet" type="fews:TimeSeriesSetComplexType">
				<annotation>
					<documentation>TimeSeriesSet with single scalar time series for the y coordinate</documentation>
				</annotation>
			</element>
			<element name="valueTimeSeriesSet" type="fews:TimeSeriesSetComplexType" minOccurs="0">
				<annotation>
					<documentation>Optional since 2022.01. TimeSeriesSet with single scalar time series for the values. The class breaks are used for the size and color of the dots</documentation>
				</annotation>
			</element>
		</sequence>
	</complexType>
	<complexType name="GridPlotDataLayerComplexType">
		<sequence>
			<element name="visibleInTimeSeriesDisplay" type="boolean" default="true" minOccurs="0">
				<annotation>
					<documentation>Indicates if this timeseries is visible in a TimeSeriesDialog which is opened from the griddisplay
					</documentation>
				</annotation>
			</element>
			<element name="visibleInSpatialDisplay" type="boolean" default="true" minOccurs="0">
				<annotation>
					<documentation>Indicates if this timeSeries is visible in the griddisplay
					</documentation>
				</annotation>
			</element>
			<element name="primary" type="boolean" default="true" minOccurs="0">
				<annotation>
					<documentation>Web OC only. Gridplots can contain data from multiple sources, such as meteorological forecasts or results from multiple models. Sometimes these layers are dependent on each other. For example a oil spill scenario and the ocean currents that are used to compute the spill scenario. By default FEWS presents the current forecast of each dataLayer. However for dataLayers that are dependent on each other that can lead to a mismatch between the data that is shown. E.g. newer ocean currents than that were used to calculate your latest oil spill scenario. Since 2025.02 the default behaviour can be changed. When a dataLayer is set to primary="false" FEWS will visualise not automatically the current forecast, but the data that used by the taskrun that created the primary datalayer.</documentation>
				</annotation>
			</element>
			<choice>
				<element name="contourValues" type="fews:ContourValuesComplexType" minOccurs="0" maxOccurs="unbounded">
					<annotation>
						<documentation>Instead of coloring the grid using the class breaks only draw contour (iso) lines at the specified iso values. When multiple contourValues series are configured
							the best that fits the value range for the view period is selected
						</documentation>
					</annotation>
				</element>
				<element name="onlyContourLines" type="boolean" minOccurs="0">
					<annotation>
						<documentation>Instead of coloring the grid draw contour lines instead. By default the the line are painted at the class breaks. Explicit contour values can be configured in
							the default sections at the start of this configuration file.
						</documentation>
					</annotation>
				</element>
				<sequence minOccurs="0">
					<element name="redGreenBlueOpaquenessPercentage" type="fews:percentageType" minOccurs="0">
						<annotation>
							<documentation>Controls the transparency / opaqueness of the true color grids. 0% is completely transparent and 100% is completely opaque. Can be use in the spatial
								snapshot function in reports>
							</documentation>
						</annotation>
					</element>
					<element name="redGreenBlueVisibilityThreshold" type="nonNegativeInteger" minOccurs="0">
						<annotation>
							<documentation>Since 2020.02. When the red and green and blue channel are all below this threshold the grid cell is not painted. Value between 0 and 255
							</documentation>
						</annotation>
					</element>
				</sequence>
			</choice>
			<element name="onlyCircles" type="boolean" minOccurs="0">
				<annotation>
					<documentation>By default only a circle is used when no grid cell or polygon is available
					</documentation>
				</annotation>
			</element>
			<element name="circleSizeFunction" type="fews:nonEmptyStringType" minOccurs="0">
				<annotation>
					<documentation>Diameter of the circle symbols in pixels. Location attributes can be used in this function, eg 0.001*@CAPACITY@
					</documentation>
				</annotation>
			</element>
			<sequence minOccurs="0">
				<element name="circleBorderSize" type="nonNegativeInteger">
					<annotation>
						<documentation>Border size of the circles. To improve contrast with the background layers / grids By default no circle border is painted
						</documentation>
					</annotation>
				</element>
				<element name="circleBorderColor" type="fews:colorStringType" minOccurs="0">
					<annotation>
						<documentation>Border color of the circles. Default color is black
						</documentation>
					</annotation>
				</element>
			</sequence>
			<element name="symbolSvg" type="fews:nonEmptyStringType" minOccurs="0">
				<annotation>
					<documentation>Since 2024.02. SVG with the symbol to use instead of a circle.</documentation>
				</annotation>
			</element>
			<element name="arrowColor" type="fews:colorStringType" minOccurs="0">
				<annotation>
					<documentation>Optional item to specify a fixed color for arrows corresponding to u,v or directional data defined in this layer. If no arrowColor specified, then the color of each
						arrow will depend on the arrow's data value and follow the classBreak colors.
					</documentation>
				</annotation>
			</element>
			<element name="arrowSymbol" type="fews:gridPlotArrowSymbolEnumStringType" default="wind" minOccurs="0">
				<annotation>
					<documentation>Optional symbol to specify which symbol should be used to display vector data for this GridPlot. If not specified, then the wind symbol (>) will be used.
					</documentation>
				</annotation>
			</element>
			<element name="arrowDirection" type="fews:gridPlotDirectionTypeEnumStringType" default="from" minOccurs="0">
				<annotation>
					<documentation>Direction of the arrow (to or from), Default is from (wind). From creates arrows that point in the opposite direction with respect to the direction of the data
						vector. This is used e.g. for wind direction: wind blowing to the East is indicated with an arrow pointing to the West.
					</documentation>
				</annotation>
			</element>
			<element name="arrowOverlap" type="boolean" default="false" minOccurs="0">
				<annotation>
					<documentation>
						When false (default) and arrows overlap only draw the biggest one.
					</documentation>
				</annotation>
			</element>
			<element name="multipleArrowsPerValue" type="boolean" default="true" minOccurs="0">
				<annotation>
					<documentation>
						When true (default) extra arrows are painted to fill the complete area
					</documentation>
				</annotation>
			</element>
			<element name="arrowMinimumPixelDistanceBetweenTwoCellCenters" type="positiveInteger" minOccurs="0">
				<annotation>
					<documentation>
						Disables the automatic decluttering to prevent jumping arrows when playing movie. The same cell
						arrow will be displayed every time step as long the zoom extent kept unchanged. Disadvantage is
						that no longer larger arrows are preferred during the declutter process.
					</documentation>
				</annotation>
			</element>
			<choice>
				<sequence>
					<element name="showArrowsOnLines" type="boolean" default="false" minOccurs="0">
						<annotation>
							<documentation>Since 2018.01. Configure as true to show flow direction arrows on the lines for time series set on a location with an underlying shapefile containing lines.
								The direction of the lines is read from the shape file, where the first point in the file is the starting point and the second point the end point of the arrow. If the
								value in the time series is negative for a line, the flow arrow is inverted.
							</documentation>
						</annotation>
					</element>
					<element name="timeSeriesSet" type="fews:TimeSeriesSetComplexType">
						<annotation>
							<documentation>TimeSeriesSet for data to display in this layer.</documentation>
						</annotation>
					</element>
				</sequence>
				<sequence>
					<element name="valueTimeSeriesSet" type="fews:TimeSeriesSetComplexType">
						<annotation>
							<documentation>TimeSeriesSets for directional vector data to display in this layer.</documentation>
						</annotation>
					</element>
					<element name="directionTimeSeriesSet" type="fews:TimeSeriesSetComplexType"/>
				</sequence>
				<sequence>
					<element name="redTimeSeriesSet" type="fews:TimeSeriesSetComplexType">
						<annotation>
							<documentation>since 2019.02 time series set for the red component of the cell colo. Configure a time series set multiplier to convert the value to a range in 0..255
							</documentation>
						</annotation>
					</element>
					<element name="greenTimeSeriesSet" type="fews:TimeSeriesSetComplexType">
						<annotation>
							<documentation>since 2019.02 time series set for the green component of the cell colo. Configure a time series set multiplier to convert the value to a range in 0..255
							</documentation>
						</annotation>
					</element>
					<element name="blueTimeSeriesSet" type="fews:TimeSeriesSetComplexType">
						<annotation>
							<documentation>since 2019.02 time series set for the blue component of the cell colo. Configure a time series set multiplier to convert the value to a range in 0..255
							</documentation>
						</annotation>
					</element>
				</sequence>
				<sequence>
					<element name="uTimeSeriesSet" type="fews:TimeSeriesSetComplexType">
						<annotation>
							<documentation>TimeSeriesSets for u,v vector data to display in this layer.</documentation>
						</annotation>
					</element>
					<element name="vTimeSeriesSet" type="fews:TimeSeriesSetComplexType"/>
					<element name="uvAmplitudeParameterId" type="fews:idStringType" minOccurs="0">
						<annotation>
							<documentation>Since 2015.02 (FEWS-8186). Id of a parameter that corresponds to the amplitude of this u,v data (e.g. wind speed). If this amplitude parameter is configured
								and the user double clicks on a grid cell in the grid display, then the TimeSeriesDialog will only display the amplitude sqrt(u^2+v^2) of this u,v data. The displayed
								amplitude time series uses the configured amplitude parameter. If neither the uvAmplitudeParameterId nor the uvDirectionParameterId is configured, then the
								TimeSeriesDialog only displays the separate u and v time series.
							</documentation>
						</annotation>
					</element>
					<element name="uvDirectionParameterId" type="fews:idStringType" minOccurs="0">
						<annotation>
							<documentation>Since 2016.01 (FEWS-14003). Id of a parameter that corresponds to the direction of this u,v data (e.g. wind direction). If this direction parameter is
								configured and the user double clicks on a grid cell in the grid display, then the TimeSeriesDialog will only display the direction. The displayed wind direction time
								series uses the configured direction parameter.
								If neither the uvAmplitudeParameterId nor the uvDirectionParameterId is configured, then the TimeSeriesDialog displays the separate u and v time series.
							</documentation>
						</annotation>
					</element>
					<element name="uvDirectionParameterConvention" type="fews:gridPlotDirectionTypeEnumStringType" minOccurs="0">
						<annotation>
							<documentation>Since 2016.02. to (used for flow) or from (used for wind), default is wind</documentation>
						</annotation>
					</element>
				</sequence>
			</choice>
			<choice minOccurs="0">
				<element name="sigmaScaleReferenceTimeSeriesSet" type="fews:TimeSeriesSetComplexType">
					<annotation>
						<documentation>Since 2017.02 The cell depth, height, pressure when the sigma coordinate is 1.00. For the location of the grid a sigma coordinate should be configured in the
							region config
						</documentation>
					</annotation>
				</element>
				<element name="zParameterId" type="fews:idStringType">
					<annotation>
						<documentation>Since 2018.01. When configured a vertical slide is displayed to interpolate between the layers. Configure only the most important layer. The sibling layers are
							used automatically
						</documentation>
					</annotation>
				</element>
			</choice>
		</sequence>
	</complexType>
	<complexType name="AnimatedWmsLayerComplexType">
		<sequence>
			<element name="url" type="fews:nonEmptyStringType">
				<annotation>
					<documentation>Base url for the wms server. This is everything before the question mark '?' in the url, including the question mark '?' itself at the end. Do not put &amp; signs in
						this url, if required extra options can be configured below as vendorParameters.
					</documentation>
				</annotation>
			</element>
			<group ref="fews:WmsVersionAndGeoDatumSequence"/>
			<element name="wmsLayerName" type="fews:nonEmptyStringType" maxOccurs="unbounded">
				<annotation>
					<documentation>Layer name to display. It's the part after the text "LAYERS=" till the next &amp; in the url. To find the layer names enter the url that ends withs
						"request=GetCapabilities" in a browser.
					</documentation>
				</annotation>
			</element>
			<group ref="fews:WmsImageOptionsGroup"/>
			<group ref="fews:WmsVendorParametersGroup"/>
			<element name="toolTipAvailable" type="boolean" minOccurs="0">
				<annotation>
					<documentation>Only set to true when the WMS layer supports GetFeatureInfo. For performance reasons the server capabilities are not queried by FEWS.</documentation>
				</annotation>
			</element>
			<group ref="fews:AnimatedWmsTimeParametersGroup"/>
			<group ref="fews:UserAndPassword" minOccurs="0">
				<annotation>
					<documentation>Since 2014.02. User name and password used for http authentication</documentation>
				</annotation>
			</group>
		</sequence>
	</complexType>
	<complexType name="ContourValuesComplexType">
		<sequence>
			<element name="value" type="float" maxOccurs="unbounded">
				<annotation>
					<documentation>iso value of the contour line</documentation>
				</annotation>
			</element>
		</sequence>
	</complexType>
	<simpleType name="extrapolationType">
		<annotation>
			<documentation>type of extrapolation if outside the range:
				non = not allowed, critical stop
				maxmin = stays fixed at max (or) min level in table
				linear = linear extrapolation
			</documentation>
		</annotation>
		<restriction base="string">
			<enumeration value="non"/>
			<enumeration value="maxmin"/>
			<enumeration value="linear"/>
		</restriction>
	</simpleType>
	<!-- -->
	<simpleType name="interpolationType">
		<annotation>
			<documentation>type of interpolation:
				linear = linear extrapolation
				class = values snapped to the nearest class boundaries
			</documentation>
		</annotation>
		<restriction base="string">
			<enumeration value="linear"/>
			<enumeration value="class"/>
		</restriction>
	</simpleType>
	<complexType name="ConstraintComplexType">
		<sequence>
			<group ref="fews:ConstraintChoice"/>
		</sequence>
	</complexType>
	<complexType name="ConstraintsComplexType">
		<sequence>
			<group ref="fews:ConstraintChoice" maxOccurs="unbounded"/>
		</sequence>
	</complexType>
	<group name="ConstraintChoice">
		<choice>
			<element name="not" type="fews:ConstraintComplexType">
				<annotation>
					<documentation>
					</documentation>
				</annotation>
			</element>
			<element name="anyValid" type="fews:ConstraintsComplexType">
				<annotation>
					<documentation>
					</documentation>
				</annotation>
			</element>
			<element name="allValid" type="fews:ConstraintsComplexType">
				<annotation>
					<documentation>
					</documentation>
				</annotation>
			</element>
			<element name="idStartsWith" type="fews:IdStartsWithComplexType">
				<annotation>
					<documentation>
						Only the locations/parameters/qualifiers with an id that starts with the specified text will be included in the
						location set, other locations in the shape file or location sets are ignored
					</documentation>
				</annotation>
			</element>
			<element name="idEndsWith" type="fews:IdEndsWithComplexType">
				<annotation>
					<documentation>
						Only the locations/parameters/qualifiers with an id that ends with the specified text will be included in the
						location set, other locations in the shape file or location sets are ignored
					</documentation>
				</annotation>
			</element>
			<element name="idContains" type="fews:IdContainsComplexType">
				<annotation>
					<documentation>Only the locations/parameters/qualifiers with an id that contains the specified text will be included</documentation>
				</annotation>
			</element>
			<element name="relatedLocationExists" type="fews:RelatedLocationExistsComplexType">
				<annotation>
					<documentation>Only the locations where the related location for the specified location relation is not NULL (empty, only spaces or NaN) will be included.</documentation>
				</annotation>
			</element>
			<element name="attributeExists" type="fews:AttributeExistsComplexType">
				<annotation>
					<documentation>Only the locations/parameters/qualifiers where the attribute value is not NULL (empty, only spaces or NaN) will be included</documentation>
				</annotation>
			</element>
			<element name="attributeTextStartsWith" type="fews:AttributeTextStartsWithComplexType">
				<annotation>
					<documentation>Only the locations with attribute value start with the specified text will be included.</documentation>
				</annotation>
			</element>
			<element name="attributeTextEndsWith" type="fews:AttributeTextEndsWithComplexType">
				<annotation>
					<documentation>Only the locations/parameters/qualifiers with attribute value start with the specified text will be included.</documentation>
				</annotation>
			</element>
			<element name="attributeTextContains" type="fews:AttributeTextContainsComplexType">
				<annotation>
					<documentation>Only the locations/parameters/qualifiers with attribute value contains the specified text will be included.</documentation>
				</annotation>
			</element>
			<element name="attributeTextEquals" type="fews:AttributeTextEqualsComplexType">
				<annotation>
					<documentation>Only the locations/parameters/qualifiers with attribute value equals the specified text will be included in the location set, other locations in the shape file or
						location sets are ignored
					</documentation>
				</annotation>
			</element>
			<element name="attributeTrue" type="fews:AttributeTrueOrFalseComplexType">
				<annotation>
					<documentation>Only the locations/parameters/qualifiers with attribute value equals true will be included in the location set, other locations in the shape file or location sets
						are ignored.
					</documentation>
				</annotation>
			</element>
			<element name="attributeFalse" type="fews:AttributeTrueOrFalseComplexType">
				<annotation>
					<documentation>Only the locations/parameters/qualifiers with attribute value equals false will be included in the location set, other locations in the shape file or location sets
						are ignored.
					</documentation>
				</annotation>
			</element>
		</choice>
	</group>
	<complexType name="IdStartsWithComplexType">
		<simpleContent>
			<extension base="string">
				<attribute name="prefix" type="string" use="required">
					<annotation>
						<documentation>The the id should start with</documentation>
					</annotation>
				</attribute>
			</extension>
		</simpleContent>
	</complexType>
	<complexType name="IdEndsWithComplexType">
		<simpleContent>
			<extension base="string">
				<attribute name="postfix" type="string" use="required">
					<annotation>
						<documentation>The text the id should end with</documentation>
					</annotation>
				</attribute>
			</extension>
		</simpleContent>
	</complexType>
	<complexType name="IdContainsComplexType">
		<simpleContent>
			<extension base="string">
				<attribute name="contains" type="string" use="required">
					<annotation>
						<documentation>The text the id should contain</documentation>
					</annotation>
				</attribute>
			</extension>
		</simpleContent>
	</complexType>
	<complexType name="RelatedLocationExistsComplexType">
		<attribute name="locationRelationId" type="fews:idStringType" use="required">
			<annotation>
				<documentation>Id of the location relation (eg. UPSTREAM)</documentation>
			</annotation>
		</attribute>
	</complexType>
	<complexType name="AttributeExistsComplexType">
		<attribute name="id" type="fews:idStringType" use="required">
			<annotation>
				<documentation>Id of the attribute</documentation>
			</annotation>
		</attribute>
	</complexType>
	<complexType name="AttributeTextStartsWithComplexType">
		<attribute name="id" type="fews:idStringType" use="required">
			<annotation>
				<documentation>Id of the attribute</documentation>
			</annotation>
		</attribute>
		<attribute name="prefix" type="string" use="required">
			<annotation>
				<documentation>The text the attribute value should start with</documentation>
			</annotation>
		</attribute>
	</complexType>
	<complexType name="AttributeTextEndsWithComplexType">
		<attribute name="id" type="fews:idStringType" use="required">
			<annotation>
				<documentation>Id of the attribute</documentation>
			</annotation>
		</attribute>
		<attribute name="postfix" type="string" use="required">
			<annotation>
				<documentation>The text the attribute value should end with</documentation>
			</annotation>
		</attribute>
	</complexType>
	<complexType name="AttributeTextContainsComplexType">
		<attribute name="id" type="fews:idStringType" use="required">
			<annotation>
				<documentation>Id of the attribute</documentation>
			</annotation>
		</attribute>
		<attribute name="contains" type="string" use="required">
			<annotation>
				<documentation>The text the attribute value should contain</documentation>
			</annotation>
		</attribute>
	</complexType>
	<complexType name="AttributeTextEqualsComplexType">
		<attribute name="id" type="fews:idStringType" use="required">
			<annotation>
				<documentation>Id of the attribute</documentation>
			</annotation>
		</attribute>
		<attribute name="equals" type="string" use="required">
			<annotation>
				<documentation>The text the attribute value should match</documentation>
			</annotation>
		</attribute>
		<attribute name="modifierDependent" type="boolean">
			<annotation>
				<documentation>When true the location set can change dynamically when a attribute is changed by a modifier. Only allowed in workflows and in the modifiers display
				</documentation>
			</annotation>
		</attribute>
	</complexType>
	<complexType name="AttributeTrueOrFalseComplexType">
		<attribute name="id" type="fews:idStringType" use="required">
			<annotation>
				<documentation>Id of the attribute</documentation>
			</annotation>
		</attribute>
		<attribute name="modifierDependent" type="boolean">
			<annotation>
				<documentation>When true the location set can change dynamically when a attribute is changed by a modifier. Only allowed in workflows and in the modifiers display
				</documentation>
			</annotation>
		</attribute>
	</complexType>
	<complexType name="RatingCurveLocationQualifierComplexType">
		<sequence>
			<element name="locationId" type="fews:idStringType"/>
			<element name="qualifierId" type="fews:idStringType" minOccurs="0"/>
		</sequence>
	</complexType>
	<simpleType name="unitConversionStringType">
		<union memberTypes="fews:unitEnumStringType string"/>
	</simpleType>
	<!-- StateSelectionComplexType -->
	<complexType name="StateSelectionComplexType">
		<sequence>
			<choice>
				<element name="coldState" type="fews:ColdStateComplexType">
					<annotation>
						<documentation>Time independent default module instance state.</documentation>
					</annotation>
				</element>
				<sequence>
					<element name="warmState" type="fews:WarmStateComplexType">
						<annotation>
							<documentation>Module instance state for a particular timestamp.</documentation>
						</annotation>
					</element>
					<element name="backupWarmStateModuleInstanceId" type="fews:idStringType" minOccurs="0">
						<annotation>
							<documentation>Since 2019.01. Different module instance id used for finding warm state, when original warm state can't be found</documentation>
						</annotation>
					</element>
				</sequence>
			</choice>
			<element name="overrulingColdStateModuleInstanceId" type="fews:idStringType" minOccurs="0">
				<annotation>
					<documentation>Since 2017.02. Different module instance id used for finding cold state (when warm state is configured but can't be found, or always when cold state is configured)
					</documentation>
				</annotation>
			</element>
		</sequence>
	</complexType>
	<complexType name="ColdStateComplexType">
		<sequence>
			<element name="groupId" type="fews:idStringType" minOccurs="0">
				<annotation>
					<documentation>ID of the group of cold states to be used within the task run. If not specified default cold state will be used.
					</documentation>
				</annotation>
			</element>
			<choice>
				<element name="fixedStartTime" type="fews:DateTimeComplexType">
					<annotation>
						<documentation>Absolute start time of the coldstate. Since 2012_02, used via upload in Admin Interface.</documentation>
					</annotation>
				</element>
				<element name="startDate" type="fews:TimeSpanComplexType">
					<annotation>
						<documentation>Relative date of the cold state to the time0 of the taskrun.
						</documentation>
					</annotation>
				</element>
			</choice>
		</sequence>
	</complexType>
	<complexType name="WarmStateComplexType">
		<sequence>
			<element name="stateSearchPeriod" type="fews:RelativePeriodComplexType">
				<annotation>
					<documentation>Time window used to search for a warm state. If no warm module instance state could
						be found the default cold state will be used instead.
					</documentation>
				</annotation>
			</element>
			<element name="searchForTransientStates" type="boolean" minOccurs="0">
				<annotation>
					<documentation>
						A state run should not start with a transient state, default is true, set to false for state runs
					</documentation>
				</annotation>
			</element>
			<element name="transientStateExpiryTime" type="fews:CalendarTimeSpanComplexType" minOccurs="0">
				<annotation>
					<documentation>Expiry time of imported states with a time after the warm the state search period.
						These states should on be used by state runs.
					</documentation>
				</annotation>
			</element>
			<element name="coldStateTime" type="fews:RelativeTimeComplexType" minOccurs="0">
				<annotation>
					<documentation>When no warm state is found the default cold state is used. The time is a relative
						time against t0. By default the start time of the state search period is used.
					</documentation>
				</annotation>
			</element>
			<element name="insertColdState" type="boolean" minOccurs="0">
				<annotation>
					<documentation>Deprecated, for backward compatibility only.</documentation>
				</annotation>
			</element>
		</sequence>
	</complexType>
	<complexType name="JMSServerInstallComplexType">
		<annotation>
			<documentation>Contains information on the server providing the the JMS queues for the system.
			</documentation>
		</annotation>
		<sequence>
			<element name="appServerType" default="jboss">
				<annotation>
					<documentation>The JMS application server type (jboss (=jboss4), jboss4, jboss5, jboss7, activemq or weblogic).</documentation>
				</annotation>
				<simpleType>
					<restriction base="string">
						<enumeration value="jboss"/>
						<enumeration value="jboss4"/>
						<enumeration value="jboss5"/>
						<enumeration value="jboss7"/>
						<enumeration value="weblogic"/>
						<enumeration value="activemq">
							<annotation>
								<documentation>Since 2014.01</documentation>
							</annotation>
						</enumeration>
					</restriction>
				</simpleType>
			</element>
			<element name="appServerName" type="string" default="appserver01.deltares.nl">
				<annotation>
					<documentation>The server name or IP address of the JMS application server.</documentation>
				</annotation>
			</element>
			<element name="appServerPort" type="integer" minOccurs="0">
				<annotation>
					<documentation>Optional JNDI port if non-standard. Default is 4447 for jboss7, 61616 for activemq, 1099 for other types.</documentation>
				</annotation>
			</element>
			<element name="rootJNDI" type="string" default="/CUSTOMER/REGION/MC00/">
				<annotation>
					<documentation>The JNDI root prefix for the JMS queues.</documentation>
				</annotation>
			</element>
			<element name="appJavaHome" type="fews:fileStringType" default="/opt/fews/java/jre1.8/" minOccurs="0">
				<annotation>
					<documentation>Java home directory of JRE, directory is assumed to contain a bin/ sub-directory with the JRE executable.</documentation>
				</annotation>
			</element>
		</sequence>
	</complexType>
	<complexType name="DatabaseServerInstallComplexType">
		<annotation>
			<documentation>Contains information on the central database for the system.</documentation>
		</annotation>
		<sequence>
			<element name="dbServerType" default="postgresql">
				<annotation>
					<documentation>The central database server type (oracle, sqlserver or postgresql).</documentation>
				</annotation>
				<simpleType>
					<restriction base="string">
						<enumeration value="oracle"/>
						<enumeration value="sqlserver"/>
						<enumeration value="postgresql"/>
						<enumeration value="sqlserverms">
							<annotation>
								<documentation>Deprecated and obsolete since 2018.02</documentation>
							</annotation>
						</enumeration>
						<enumeration value="sqlserverjtds">
							<annotation>
								<documentation>Deprecated and obsolete since 2018.02</documentation>
							</annotation>
						</enumeration>
					</restriction>
				</simpleType>
			</element>
			<element name="dbServerName" type="string" default="dbserver01.deltares.nl">
				<annotation>
					<documentation>The server name or IP address of the central database server.</documentation>
				</annotation>
			</element>
			<element name="dbServerPort" type="integer" minOccurs="0">
				<annotation>
					<documentation>Optional database port if non-standard. Assumed are 1521 for Oracle, 5432 for
						PostgreSQL, 1433 for SQL Server.
					</documentation>
				</annotation>
			</element>
			<element name="dbInstanceName" type="string" default="fews00">
				<annotation>
					<documentation>The database instance ID.</documentation>
				</annotation>
			</element>
			<element name="dbInstanceUser" type="string" minOccurs="0">
				<annotation>
					<documentation>The database user name.</documentation>
				</annotation>
			</element>
			<element name="dbInstancePassword" type="string" minOccurs="0">
				<annotation>
					<documentation>The database user's password.</documentation>
				</annotation>
			</element>
			<element name="dbEncryptPassword" type="boolean" default="false" minOccurs="0">
				<annotation>
					<documentation>Option to produce an encrypted database password in the output configuration.</documentation>
				</annotation>
			</element>
		</sequence>
	</complexType>
	<!-- Same as databaseServerInstallComplexType but also allows encrypted password and vjdbc-->
	<group name="databaseChoice">
		<choice>
			<element name="databaseServer" type="fews:DatabaseServerClientConfigComplexType" minOccurs="0">
				<annotation>
					<documentation>oracle, sqlserver or postgresql database server</documentation>
				</annotation>
			</element>
			<element name="databaseFile" type="fews:fileStringType">
				<annotation>
					<documentation>Reference to .fdb (firebird) or .derby directory (derby) that contains the locations table. This is for testing purposes..
					</documentation>
				</annotation>
			</element>
		</choice>
	</group>
	<complexType name="DatabaseServerClientConfigComplexType">
		<annotation>
			<documentation>Contains information on the central database for the system.</documentation>
		</annotation>
		<choice>
			<group ref="fews:DatabaseServerSequence"/>
			<group ref="fews:ObsoleteDatabaseServerSequence"/>
		</choice>
	</complexType>
	<group name="DatabaseServerSequence">
		<sequence>
			<element name="url" type="fews:nonEmptyStringType">
				<annotation>
					<documentation>jdbc url. jdbc:postgresql://host:port/database OR jdbc:oracle:thin:@//host:port/service_name OR jdbc:oracle:thin:@host:port:SID OR jdbc:oracle:thin:@TNSName OR
						jdbc:sqlserver://host:port/database
					</documentation>
				</annotation>
			</element>
			<group ref="fews:UserAndPassword" minOccurs="0"/>
		</sequence>
	</group>
	<group name="ObsoleteDatabaseServerSequence">
		<sequence>
			<element name="dbServerType" type="fews:ClientConfigDbServerEnumStringType">
				<annotation>
					<documentation>Deprecated and obsolete since 2012.02. Use url, user, password</documentation>
				</annotation>
			</element>
			<element name="dbServerName" type="string">
				<annotation>
					<documentation>Deprecated and obsolete since 2012.02. Use url, user, password</documentation>
				</annotation>
			</element>
			<element name="dbServerPort" type="integer" minOccurs="0">
				<annotation>
					<documentation>Deprecated and obsolete since 2012.02. Use url, user, password</documentation>
				</annotation>
			</element>
			<element name="dbInstanceName" type="string">
				<annotation>
					<documentation>Deprecated and obsolete since 2012.02. Use url, user, password</documentation>
				</annotation>
			</element>
			<element name="dbInstanceUser" type="string">
				<annotation>
					<documentation>Deprecated and obsolete since 2012.02. Use url, user, password</documentation>
				</annotation>
			</element>
			<choice>
				<element name="dbInstanceEncryptedPassword" type="string">
					<annotation>
						<documentation>Deprecated and obsolete since 2012.02. Use url, user, password</documentation>
					</annotation>
				</element>
				<element name="dbInstancePassword" type="string">
					<annotation>
						<documentation>Deprecated and obsolete since 2012.02. Use url, user, password</documentation>
					</annotation>
				</element>
			</choice>
		</sequence>
	</group>
	<simpleType name="ClientConfigDbServerEnumStringType">
		<restriction base="string">
			<enumeration value="oracle"/>
			<enumeration value="sqlserver"/>
			<enumeration value="postgresql"/>
			<enumeration value="vjdbc">
				<annotation>
					<documentation>
						To share one DB among multiple SA. Connects to another FEWS SA that has VJDBC server running
					</documentation>
				</annotation>
			</enumeration>
		</restriction>
	</simpleType>
	<complexType name="SelectByMapItemLocationRelationComplexType">
		<sequence>
			<element name="description" type="fews:nonEmptyStringType" minOccurs="0">
				<annotation>
					<documentation>
						Describes where and why this location relation is used
					</documentation>
				</annotation>
			</element>
			<element name="relationId" type="fews:nonEmptyStringType">
				<annotation>
					<documentation>
						Id of a location relation. Should be defined in locations.xml or locationsets.xml
					</documentation>
				</annotation>
			</element>
			<element name="locationId" type="fews:nonEmptyStringType">
				<annotation>
					<documentation>
						eg. "H_%LOCATION_ID%, put the actual shape/dbase file column name between %%
					</documentation>
				</annotation>
			</element>
		</sequence>
	</complexType>
	<complexType name="SelectByMapItemAttributeEqualsComplexType">
		<sequence>
			<element name="description" type="fews:nonEmptyStringType" minOccurs="0">
				<annotation>
					<documentation>Since 2015.01. Describes where and why this location relation is used</documentation>
				</annotation>
			</element>
			<element name="attributeId" type="fews:nonEmptyStringType" maxOccurs="unbounded">
				<annotation>
					<documentation>Since 2015.01. Name of the attribute in the locations to select</documentation>
				</annotation>
			</element>
			<element name="textEquals" type="fews:nonEmptyStringType">
				<annotation>
					<documentation>Since 2015.01. Text of the attribute. For example the region name. Locations can belong to multiple regions by creation a multiple value attribute at the location to
						select eg. "H_%REGION%, put the actual shape/dbase file column name between %%
					</documentation>
				</annotation>
			</element>
		</sequence>
	</complexType>
	<complexType name="FontComplexType">
		<attribute name="name" type="fews:nameStringType">
			<annotation>
				<documentation>Font name, e.g. sansserif. If not specified or if an invalid name is given, a default font for the component concerned will be used.</documentation>
			</annotation>
		</attribute>
		<attribute name="size" type="fews:positiveInteger">
			<annotation>
				<documentation>Font size. If not specified, then a default font size for the component concerned will be used.</documentation>
			</annotation>
		</attribute>
		<attribute name="style" type="fews:fontStyleEnumStringType">
			<annotation>
				<documentation>Font style. If not specified, then a default style for the component concerned will be used.</documentation>
			</annotation>
		</attribute>
	</complexType>
	<group name="GridPlotLegendChoice">
		<choice>
			<element name="legendStyle" type="fews:GridPlotLegendStyleStringType">
				<annotation>
					<documentation>Table is default legend. Bar legend shows fluent scale bar on the right. If you wish more advanced bar legend, use element barLegend</documentation>
				</annotation>
			</element>
			<element name="barLegend" type="fews:GridPlotBarLegendComplexType"/>
		</choice>
	</group>
	<complexType name="GridPlotBarLegendComplexType">
		<sequence>
			<element name="position" type="fews:GridPlotLegendPlacementEnumStringType" minOccurs="0">
				<annotation>
					<documentation>Location of the bar on the grid plot</documentation>
				</annotation>
			</element>
			<element name="width" type="positiveInteger" minOccurs="0">
				<annotation>
					<documentation>Width of the bar in pixels</documentation>
				</annotation>
			</element>
			<element name="length" type="positiveInteger" minOccurs="0">
				<annotation>
					<documentation>Length of the bar in pixels</documentation>
				</annotation>
			</element>
			<element name="labelsInside" type="boolean" minOccurs="0">
				<annotation>
					<documentation>If true, the tick labels are drawn inside the bar. Default is outside the bar.</documentation>
				</annotation>
			</element>
			<element name="labelsColor" type="fews:colorStringType" minOccurs="0">
				<annotation>
					<documentation>Color of the tick labels. If omitted, then the outside labels are black and the inside labels are white</documentation>
				</annotation>
			</element>
			<element name="labelsBackgroundColor" type="fews:colorStringType" minOccurs="0">
				<annotation>
					<documentation>Background color of the tick labels. If omitted then white color is used. NOTE: this option is not implemented yet for inside ticks</documentation>
				</annotation>
			</element>
			<element name="labelsBackgroundOpaquenessPercentage" type="fews:percentageType" minOccurs="0">
				<annotation>
					<documentation>Transparency/opaqueness of the background of the tick labels. 0% is completely transparent and 100% is completely opaque. If omitted then the background is not
						transparent. NOTE: this option is not implemented yet for inside ticks
					</documentation>
				</annotation>
			</element>
			<element name="colorSmoothingEnabled" type="boolean" minOccurs="0">
				<annotation>
					<documentation>By default is uses the colorSmoothingEnabled configured for the class breaks</documentation>
				</annotation>
			</element>
			<element name="logarithmic" type="boolean" default="false" minOccurs="0">
				<annotation>
					<documentation>When set to true the legend will display the ticks and color logarithmically.</documentation>
				</annotation>
			</element>
		</sequence>
	</complexType>
	<group name="DescriptiveStatisticalFunctionGroupsGroup">
		<annotation>
			<documentation>Groups of Descriptive Statistics Functions: has at least one Descriptive Statistics Functions group. A separate statistics table will be created for each group.
			</documentation>
		</annotation>
		<sequence>
			<element name="descriptiveFunctionGroup" type="fews:DescriptiveStatisticalFunctionGroupComplexType" maxOccurs="unbounded"/>
		</sequence>
	</group>
	<complexType name="DescriptiveStatisticalFunctionGroupComplexType">
		<annotation>
			<documentation>Group of Descriptive Statistics Functions: has at least one Descriptive Statistics Function</documentation>
		</annotation>
		<sequence>
			<element name="descriptiveFunction" type="fews:DescriptiveStatisticalFunctionComplexType" maxOccurs="unbounded"/>
		</sequence>
		<attribute name="name" type="string" use="required"/>
	</complexType>
	<complexType name="DescriptiveStatisticalFunctionComplexType">
		<annotation>
			<documentation>Descriptive Statistical Function Complex Type: has a function name and optional parameter to be displayed in the feedback display.
				The ignore missings flag is optional and is false by default. True means that missing values will be ignored. Some functions are not affected by this flag. The functions 'min' and
				'max' for instance always ignore missing values, 'count' and 'missings' never do that.
			</documentation>
		</annotation>
		<sequence>
			<choice minOccurs="0">
				<element name="value" type="fews:percentageType" maxOccurs="unbounded">
					<annotation>
						<documentation>Used for the descriptive statistical function using a percentile to configure the different percentiles which are to be used.</documentation>
					</annotation>
				</element>
				<element name="timeSpan" type="fews:TimeSpanComplexType" maxOccurs="unbounded">
					<annotation>
						<documentation>Used for the movingAccumulationMax statistical function to configure the time spans for which the maximum accumulation is to be calculated.</documentation>
					</annotation>
				</element>
			</choice>
		</sequence>
		<attribute name="function" type="fews:descriptiveFunctionEnumStringType" use="required">
			<annotation>
				<documentation>completed = number of values that were missing and have been completed.
					corrected = number of values that were removed and have been corrected.
					count = number of values.
					doubtfuls = number of values that are doubtful due to validation limits.
					missings = number of values that are missing.
					reliables = number of values that are reliable.
					unreliables = number of values that are unreliable.
				</documentation>
			</annotation>
		</attribute>
		<attribute name="ignoreMissings" type="boolean" default="false"/>
	</complexType>
	<group name="ScaleBarChoice">
		<choice>
			<element name="scaleBarVisible" type="boolean">
				<annotation>
					<documentation>Deprecated, for backward compatibility only</documentation>
				</annotation>
			</element>
			<element name="scaleBar" type="fews:ScaleBarComplexType"/>
		</choice>
	</group>
	<group name="NorthArrowChoice">
		<choice>
			<element name="northArrowVisible" type="boolean">
				<annotation>
					<documentation>Deprecated, for backward compatibility only</documentation>
				</annotation>
			</element>
			<element name="northArrow" type="fews:NorthArrowComplexType"/>
		</choice>
	</group>
	<group name="DateTimeLabelChoice">
		<choice>
			<element name="dateTimeLabelVisible" type="boolean" default="true">
				<annotation>
					<documentation>Deprecated, for backward compatibility only. Configure 'true' if the time, the plot applies to, should be painted in the snapshot</documentation>
				</annotation>
			</element>
			<element name="dateTimeLabel" type="fews:DateTimeLabelComplexType">
				<annotation>
					<documentation>Since 2016.02. Use this option to specify if the dateTime label should be visible in the plot, and optionally the font of this label</documentation>
				</annotation>
			</element>
		</choice>
	</group>
	<complexType name="ScaleBarComplexType">
		<attribute name="position" type="fews:PositioningEnumStringType" use="required"/>
	</complexType>
	<complexType name="NorthArrowComplexType">
		<attribute name="position" type="fews:PositioningEnumStringType" use="required"/>
	</complexType>
	<complexType name="DateTimeLabelComplexType">
		<sequence minOccurs="0">
			<element name="font" type="fews:FontComplexType"/>
		</sequence>
		<attribute name="visible" type="boolean" use="required">
			<annotation>
				<documentation>true if the time, the plot applies to, should be painted in the snapshot</documentation>
			</annotation>
		</attribute>
	</complexType>
	<complexType name="ReferencePointsComplexType">
		<sequence>
			<choice>
				<element name="point" type="fews:ReferencePointComplexType" maxOccurs="unbounded"/>
				<sequence>
					<element name="xAttributeId" type="fews:nonEmptyStringType">
						<annotation>
							<documentation>Since 2023.02. Instead of predefined reference points, the x-coordinate of the points can be configured as values of a multi-value location attribute.
							</documentation>
						</annotation>
					</element>
					<element name="yAttributeId" type="fews:nonEmptyStringType">
						<annotation>
							<documentation>Since 2023.02. Instead of predefined reference points, the y-coordinate of the points can be configured as values of a multi-value location attribute.
							</documentation>
						</annotation>
					</element>
				</sequence>
			</choice>
		</sequence>
	</complexType>
	<complexType name="ReferencePointComplexType">
		<sequence>
			<element name="x" type="float"/>
			<element name="y" type="float"/>
		</sequence>
	</complexType>
	<simpleType name="fontStyleEnumStringType">
		<restriction base="string">
			<enumeration value="regular"/>
			<enumeration value="italic"/>
			<enumeration value="bold"/>
			<enumeration value="bold italic"/>
		</restriction>
	</simpleType>
	<simpleType name="lineSeparatorEnumStringType">
		<restriction base="string">
			<enumeration value="windows"/>
			<enumeration value="unix"/>
			<enumeration value="mac"/>
		</restriction>
	</simpleType>
	<simpleType name="GridPlotLegendStyleStringType">
		<restriction base="string">
			<enumeration value="table"/>
			<enumeration value="bar"/>
		</restriction>
	</simpleType>
	<simpleType name="GridPlotLegendPlacementEnumStringType">
		<restriction base="string">
			<enumeration value="right"/>
			<enumeration value="left"/>
			<enumeration value="bottom"/>
			<enumeration value="top"/>
		</restriction>
	</simpleType>
	<simpleType name="PositioningEnumStringType">
		<restriction base="string">
			<enumeration value="topLeft"/>
			<enumeration value="bottomLeft"/>
			<enumeration value="topRight"/>
			<enumeration value="bottomRight"/>
		</restriction>
	</simpleType>
	<simpleType name="unitSystemEnumStringType">
		<restriction base="string">
			<enumeration value="system"/>
			<enumeration value="user"/>
		</restriction>
	</simpleType>
	<complexType name="EnabledModifierGroups">
		<sequence>
			<element name="groupId" type="fews:idStringType" minOccurs="0" maxOccurs="unbounded"/>
		</sequence>
	</complexType>
	<simpleType name="descriptiveFunctionEnumStringType">
		<annotation>
			<documentation>Statistical Function Name: has enumerations like Percentiles, Mean</documentation>
		</annotation>
		<restriction base="string">
			<enumeration value="completed"/>
			<enumeration value="corrected"/>
			<enumeration value="count"/>
			<enumeration value="doubtfuls"/>
			<enumeration value="endTime"/>
			<enumeration value="info"/>
			<enumeration value="infoLocationId"/>
			<enumeration value="infoLocationName"/>
			<enumeration value="infoModuleinstance"/>
			<enumeration value="infoParameterId"/>
			<enumeration value="infoParameterName"/>
			<enumeration value="max"/>
			<enumeration value="mean"/>
			<enumeration value="min"/>
			<enumeration value="missings"/>
			<enumeration value="movingAccumulationMax"/>
			<enumeration value="percentile"/>
			<enumeration value="percentileExceedence"/>
			<enumeration value="percentileNonExceedence"/>
			<enumeration value="reliables"/>
			<enumeration value="standardDeviation"/>
			<enumeration value="startTime"/>
			<enumeration value="sum"/>
			<enumeration value="timeLength"/>
			<enumeration value="unreliables"/>
		</restriction>
		<!--todo remove typos-->
	</simpleType>
	<group name="MetadataGroup">
		<annotation>
			<documentation>Groups all metadata options.</documentation>
		</annotation>
		<sequence>
			<element name="title" type="fews:nonEmptyStringType" minOccurs="0">
				<annotation>
					<documentation>A short description of the dataset. Its value will be used by THREDDS opendap servers as the name of the dataset. It therefore should be human readable and
						reasonable to display in a list of such names.
					</documentation>
				</annotation>
			</element>
			<element name="institution" type="fews:nonEmptyStringType" minOccurs="0">
				<annotation>
					<documentation>Specifies where the original data was produced.</documentation>
				</annotation>
			</element>
			<element name="source" type="fews:nonEmptyStringType" minOccurs="0">
				<annotation>
					<documentation>The method of production of the original data. If it was model-generated, source should name the model and its version, as specifically as could be useful. If it is
						observational, source should characterize it (e.g. "surface observation" or "radiosonde").
					</documentation>
				</annotation>
			</element>
			<element name="history" type="fews:nonEmptyStringType" minOccurs="0">
				<annotation>
					<documentation>Provides an audit trail for modifications to the original data. It should contain a separate line for each modification with each line including a timestamp, user
						name, modification name, and modification arguments. Its value will be used by THREDDS opendap servers as a history-type documentation. It is recommended that each line begins
						with a timestamp indicating the date and time of day at which the modification was performed.
					</documentation>
				</annotation>
			</element>
			<element name="references" type="fews:nonEmptyStringType" minOccurs="0">
				<annotation>
					<documentation>Published or web-based references that describe the data or methods used to produce it.</documentation>
				</annotation>
			</element>
			<element name="comment" type="fews:nonEmptyStringType" minOccurs="0">
				<annotation>
					<documentation>Miscellaneous information about the data or methods used to produce it.</documentation>
				</annotation>
			</element>
			<element name="summary" type="fews:nonEmptyStringType" minOccurs="0">
				<annotation>
					<documentation>The "summary" attribute gives a longer description of the dataset. In many discovery systems, the title and the summary will be displayed in the results list from a
						search. It should therefore capture the essence of the dataset it describes. For instance, include information on the type of data contained in the dataset, how the data was
						created (e.g. instrument X or model X, run Y), the creator of the dataset, the project for which the data was created, the geospatial coverage of the data, and the temporal
						coverage of the data.
					</documentation>
				</annotation>
			</element>
			<element name="keyword" type="fews:nonEmptyStringType" minOccurs="0" maxOccurs="unbounded">
				<annotation>
					<documentation>Optional one or more key words or phrases that are relevant to the dataset. The values in this list may be taken from a controlled list of keywords (e.g. the AGU
						Index list or the GCMD Science Keywords).
					</documentation>
				</annotation>
			</element>
			<element name="customAttributes" type="fews:PropertiesComplexType" minOccurs="0">
				<annotation>
					<documentation>If you want to add an attribute that is not predefined in the schema, then you can add it as a custom attribute here.</documentation>
				</annotation>
			</element>
		</sequence>
	</group>
	<complexType name="LogFileComplexType">
		<sequence>
			<element name="file" type="fews:fileStringType">
				<annotation>
					<documentation>Path and name of a log file to be filtered for log entries. This should be either an absolute path or a path relative to the rootDir defined in the general
						section.
					</documentation>
				</annotation>
			</element>
			<group ref="fews:logLinePatternSequenceGroup"/>
		</sequence>
	</complexType>
	<group name="logLinePatternSequenceGroup">
		<sequence>
			<choice maxOccurs="unbounded">
				<element name="errorLinePattern" type="fews:nonEmptyStringType">
					<annotation>
						<documentation>Each line in the specified file that matches this pattern will be extracted as a FEWS error log message.</documentation>
					</annotation>
				</element>
				<element name="warningLinePattern" type="fews:nonEmptyStringType">
					<annotation>
						<documentation>Each line in the specified file that matches this pattern will be extracted as a FEWS warning log message.</documentation>
					</annotation>
				</element>
				<element name="infoLinePattern" type="fews:nonEmptyStringType">
					<annotation>
						<documentation>Each line in the specified file that matches this pattern will be extracted as a FEWS info log message.</documentation>
					</annotation>
				</element>
				<element name="debugLinePattern" type="fews:nonEmptyStringType">
					<annotation>
						<documentation>Each line in the specified file that matches this pattern will be extracted as a FEWS debug log message.</documentation>
					</annotation>
				</element>
			</choice>
		</sequence>
	</group>
	<complexType name="CustomColorKeyComplexType">
		<attribute name="key" type="string" use="required"/>
		<attribute name="color" type="fews:nonReferenceColorStringType"/>
	</complexType>
	<complexType name="ModuleDataSetMapComplexType">
		<attribute name="timeSeriesValue" type="int" use="required">
			<annotation>
				<documentation>Since 2014.02. FEWS-11097 When equal to the value at T0, this module data set with moduleDataSetName will be selected</documentation>
			</annotation>
		</attribute>
		<attribute name="moduleDataSetName" type="fews:idStringType" use="required">
			<annotation>
				<documentation>Since 2014.02. FEWS-11097 Module data set to select when value at T0 corresponds to timeSeriesValue</documentation>
			</annotation>
		</attribute>
	</complexType>
	<group name="AttributeChoice">
		<choice>
			<annotation>
				<documentation>
					Add custom attributes. eg numberAttribute:myA, textAttribute:myB or booleanAttributeC
				</documentation>
			</annotation>
			<sequence>
				<any namespace="http://www.wldelft.nl/fews/numberAttribute" processContents="skip"/>
			</sequence>
			<sequence>
				<any namespace="http://www.wldelft.nl/fews/textAttribute" processContents="skip"/>
			</sequence>
			<sequence>
				<any namespace="http://www.wldelft.nl/fews/booleanAttribute" processContents="skip"/>
			</sequence>
		</choice>
	</group>
	<group name="AttributesSequence">
		<sequence>
			<element name="attribute" type="fews:AttributeComplexType" minOccurs="0" maxOccurs="unbounded">
				<annotation>
					<documentation>Custom attribute that can be referenced from id maps, validation rules, thresholds, warning levels, transformations. e.g. "%EXTERNAL_ID%, put the actual column name
						between %%
					</documentation>
				</annotation>
			</element>
		</sequence>
	</group>
	<complexType name="AttributeComplexType">
		<sequence>
			<element name="description" type="fews:nonEmptyStringType" minOccurs="0">
				<annotation>
					<documentation>Describes where and why this attribute is used</documentation>
				</annotation>
			</element>
			<choice>
				<sequence>
					<element name="text" type="fews:nonEmptyStringType">
						<annotation>
							<documentation>Text that can be referenced from id maps, validation rules, thresholds, warning levels, transformations. e.g. "%EXTERNAL_ID%, put the actual column name
								between %% e.g. "%PARS%, when the PARS column in the dbf file lists the parameter. e.g "H Q.in" you can use the attributeTextContains constraint when defining a
								locations set to only include the locations that has Q.in
							</documentation>
						</annotation>
					</element>
					<choice minOccurs="0">
						<element name="enumerationValue" type="fews:nonEmptyStringType" maxOccurs="unbounded">
							<annotation>
								<documentation>When configured a config error will be logged when the attribute value do not equal one of the enumeration values. In the tabular config file viewer a
									dropdown list will appear when editable
								</documentation>
							</annotation>
						</element>
						<element name="regularExpression" type="fews:nonEmptyStringType">
							<annotation>
								<documentation>When configured a config error will be logged when the attribute value does not match the expression</documentation>
							</annotation>
						</element>
					</choice>
				</sequence>
				<element name="number" type="fews:nonEmptyStringType">
					<annotation>
						<documentation>Number that can be referenced from id maps, validation rules, thresholds, warning levels, transformations e.g. "%HARD_MAX% put the actual column name %%
							Expressions are allowed, eg %HARD_MAX%/1000 + %CONSTANT%
						</documentation>
					</annotation>
				</element>
				<element name="boolean" type="fews:nonEmptyStringType">
					<annotation>
						<documentation>Can be used in transformations. In transformations 0=false and 1=true. t, T, y, Y are recognized as true in dbf, f, F, n, M are recognized as false in dbf. 0 and
							1 is also allowed when you reference a number column instead of boolean column
						</documentation>
					</annotation>
				</element>
				<element name="dateTime" type="fews:nonEmptyStringType">
					<annotation>
						<documentation>Since 2018.01. Can be used in modifiers and reports. e.g. "%EXTERNAL_ID%, put the actual column name between %% e.g. "%PARS%, when the PARS column in the csv
							file lists the date and time. e.g "1992-07-09T17:00".
						</documentation>
					</annotation>
				</element>
			</choice>
			<element name="required" type="boolean" minOccurs="0">
				<annotation>
					<documentation>When there is no value for the referenced column are config error is logged</documentation>
				</annotation>
			</element>
		</sequence>
		<attribute name="id" type="fews:idStringType" use="optional">
			<annotation>
				<documentation>Id of the attribute, this id can be referenced from id maps, validation rules, thresholds, warning levels. An location/parameter/qualfier attribute is referenced from
					other config files by quoting the attribute id with @s, e.g. @HARD_MAX@.
				</documentation>
			</annotation>
		</attribute>
		<attribute name="name" type="string" use="optional">
			<annotation>
				<documentation>name of the attribute, the name will be used in the FEWS Gui. For example in the modifiers display</documentation>
			</annotation>
		</attribute>
	</complexType>
	<complexType name="ArchiveAttributeComplexType">
		<attribute name="id" type="string" use="required"/>
		<attribute name="name" type="string" use="required"/>
	</complexType>
	<complexType name="TableMetadataComplexType">
		<annotation>
			<documentation>
				Currently the generalCsv and Database import and generalCsv export require a table layout description configured by the user. Non-standard imports (plugins) can also required a table
				layout. See the documentation of the specific import. The order of the listed column is used to calculate the column indices when there is no column name information available. Add the
				columns that are not used as skipped columns so the column indices can be calculated correctly
			</documentation>
		</annotation>
		<sequence>
			<choice maxOccurs="unbounded">
				<element name="dateTimeColumn" type="fews:DateTimeColumnComplexType">
					<annotation>
						<documentation>
							Column that contains the date and time for the complete row.
						</documentation>
					</annotation>
				</element>
				<element name="dateColumn" type="fews:DateColumnComplexType">
					<annotation>
						<documentation>
							Column that only contains the date without time for the complete row. Time information is read from the timeColumn or from the fixed time attribute that can be specified
							separately for every value column. Day of month information can be overruled by the day of month attribute of the value column.
						</documentation>
					</annotation>
				</element>
				<element name="yearColumn" type="fews:ColumnComplexType">
					<annotation>
						<documentation>
							Column that only contains the year for the complete row. Do not use in combination with dateColumn or dateTimeColumn. When used, a month and day column must also be used.
							(Only available for GeneralCsv import)
						</documentation>
					</annotation>
				</element>
				<element name="monthColumn" type="fews:ColumnComplexType">
					<annotation>
						<documentation>
							Column that only contains the month for the complete row. Do not use in combination with dateColumn or dateTimeColumn. When used, a year and day column must also be used.
							(Only available for GeneralCsv import)
						</documentation>
					</annotation>
				</element>
				<element name="dayColumn" type="fews:ColumnComplexType">
					<annotation>
						<documentation>
							Column that only contains the day of the month for the complete row. Do not use in combination with the day of month attribute of the value column, or the dateColumn or
							dateTimeColumn. When used, a month and year column must also be used. (Only available for GeneralCsv import)
						</documentation>
					</annotation>
				</element>
				<element name="timeColumn" type="fews:TimeColumnComplexType">
					<annotation>
						<documentation>
							Column that only contains the time without date for the complete row. Time information of the column. Do not use in combination with time attribute of value column.
						</documentation>
					</annotation>
				</element>
				<element name="hourColumn" type="fews:ColumnComplexType">
					<annotation>
						<documentation>
							Column that only contains the hour for the complete row, using 24h notation, i.e., a number between 0 and 24 where 24 is interpreted as 0 the next day. Do not use in
							combination with time attribute of value column or timeColumn or dateTimeColumn. When no minute or no second column is used, the minutes and seconds are assumed to be 0.
							(Only available for GeneralCsv import)
						</documentation>
					</annotation>
				</element>
				<element name="minuteColumn" type="fews:ColumnComplexType">
					<annotation>
						<documentation>
							Column that only contains the minute for the complete row, i.e., a number between 0 and 59. Do not use in combination with time attribute of value column or timeColumn or
							dateTimeColumn. When used, an hour column must also be used. (Only available for GeneralCsv import)
						</documentation>
					</annotation>
				</element>
				<element name="secondColumn" type="fews:ColumnComplexType">
					<annotation>
						<documentation>
							Column that only contains the second for the complete row, i.e., a number between 0 and 59. Do not use in combination with time attribute of value column or timeColumn or
							dateTimeColumn. When used, an hour and minute column must also be used. (Only available for GeneralCsv import)
						</documentation>
					</annotation>
				</element>
				<element name="forecastDateTimeColumn" type="fews:DateTimeColumnComplexType">
					<annotation>
						<documentation>
							Column that contains the (external) forecast time. All rows that share the same external forecast are stored as a single forecast.
						</documentation>
					</annotation>
				</element>
				<element name="forecastDateColumn" type="fews:DateColumnComplexType">
					<annotation>
						<documentation>
							Column that contains the date part of the (external) forecast time. All rows that share the same external forecast date and time are stored as a single forecast.
						</documentation>
					</annotation>
				</element>
				<element name="forecastTimeColumn" type="fews:TimeColumnComplexType">
					<annotation>
						<documentation>
							Column that contains the time part (external) forecast date time. All rows that share the same external forecast date and time are stored as a single forecast.
						</documentation>
					</annotation>
				</element>
				<element name="startDateTimeColumn" type="fews:DateTimeColumnComplexType">
					<annotation>
						<documentation>Column that contains the start time. This start time will be used for a time range instead of a single time</documentation>
					</annotation>
				</element>
				<element name="endDateTimeColumn" type="fews:DateTimeColumnComplexType">
					<annotation>
						<documentation>Column that contains the end time. This end time will be used for a time range instead of a single time</documentation>
					</annotation>
				</element>
				<element name="locationColumn" type="fews:ColumnComplexType">
					<annotation>
						<documentation>
							Column that contains the (external) location id for the complete row. The location id can be converted with an id map. When the location id is different for each value
							column or there is no locationColumn, fill in the location id attribute of each value column.
						</documentation>
					</annotation>
				</element>
				<element name="parameterColumn" type="fews:ColumnComplexType">
					<annotation>
						<documentation>
							Column that contains the (external) parameter id for the complete row. The location id can be converted with an id map. When the parameter id is different for each value
							column or there is no parameterColumn, fill in the parameterId attribute of each value column.
						</documentation>
					</annotation>
				</element>
				<element name="qualifierColumn" type="fews:QualifierColumnComplexType">
					<annotation>
						<documentation>
							Column that contains the (external) qualifier id for the complete row. The qualifier id can be converted with an id map or can be used in the id map to map to a different
							location parameter. Multiple qualifier columns can be specified.
						</documentation>
					</annotation>
				</element>
				<element name="ensembleColumn" type="fews:ColumnComplexType"/>
				<element name="ensembleMemberColumn" type="fews:ColumnComplexType"/>
				<element name="commentColumn" type="fews:ColumnComplexType">
					<annotation>
						<documentation>
							Column that contains the comment for the complete row. The comment is attached to all values in the current row.
						</documentation>
					</annotation>
				</element>
				<element name="userColumn" type="fews:ColumnComplexType">
					<annotation>
						<documentation>
							Column that contains the user for the complete row. The user is attached to all values in the current row. (Only available for GeneralCsv and Database import)
						</documentation>
					</annotation>
				</element>
				<element name="flagColumn" type="fews:FlagColumnComplexType">
					<annotation>
						<documentation>
							Column that contains the flag for the complete row. The flag is attached to all values in the current row unless locationId or parameterId is specified.
						</documentation>
					</annotation>
				</element>
				<element name="flagSourceColumn" type="fews:FlagSourceColumnColumnComplexType">
					<annotation>
						<documentation>
							Column that contains the flag source id. Multiple columns are allowed. If no flagSourceColumn is specfied, the flagColumn is used. (Only available for GeneralCsv import and
							export.)
						</documentation>
					</annotation>
				</element>
				<element name="valueColumn" type="fews:ValueColumnComplexType">
					<annotation>
						<documentation>
							Column that contains the value. Multiple value columns are allowed
						</documentation>
					</annotation>
				</element>
				<element name="unitColumn" type="fews:ColumnComplexType">
					<annotation>
						<documentation>
							Column that contains the (external) unit. Only one unit column is allowed. Attribute unit for value column should not be specified when this column is available. When field
							is NULL, "-" is used as default unit.
						</documentation>
					</annotation>
				</element>
				<element name="skippedColumn" type="fews:ColumnComplexType">
					<annotation>
						<documentation>
							Column that contains information that can not be imported or exported. Required to calculate the correct column index of the non skipped columns It is not required to list
							the none used columns when the file format contains column name information (like a databases or a csv file with header).
						</documentation>
					</annotation>
				</element>
				<element name="sampleIdColumn" type="fews:SampleIdColumnComplexType">
					<annotation>
						<documentation>Column that contains sample id. (Only available for GeneralCsv import and export.)
						</documentation>
					</annotation>
				</element>
				<element name="propertyColumn" type="fews:PropertyColumnComplexType">
					<annotation>
						<documentation>Column that contains a property value. (Only available for GeneralCsv import and export)
						</documentation>
					</annotation>
				</element>
				<element name="attributeColumn" type="fews:AttributeColumnComplexType">
					<annotation>
						<documentation>Column that contains an attribute value (only available for GeneralCsv export since attributes can not be imported, only configured)
						</documentation>
					</annotation>
				</element>
				<element name="limitSymbolColumn" type="fews:ColumnComplexType">
					<annotation>
						<documentation>Since 2014.02 build 58201 Column that contains a limit symbol
						</documentation>
					</annotation>
				</element>
				<element name="lineNumberColumn" type="fews:ColumnComplexType">
					<annotation>
						<documentation>Since 2020.02
						</documentation>
					</annotation>
				</element>
			</choice>
		</sequence>
		<attribute name="name" type="string">
			<annotation>
				<documentation>
					Name of the table. Only required when file contains multiple tables. Always required for databases.
				</documentation>
			</annotation>
		</attribute>
	</complexType>
	<complexType name="ColumnComplexType">
		<attribute name="name" type="string">
			<annotation>
				<documentation>
					Column name. When the file format does not contain column name information the name is ignored. In this case add also the non used columns as skipped columns so the index of the
					column can be calculated
				</documentation>
			</annotation>
		</attribute>
	</complexType>
	<complexType name="DateTimeColumnComplexType">
		<complexContent>
			<extension base="fews:ColumnComplexType">
				<attribute name="pattern" type="string">
					<annotation>
						<documentation>
							Only required when the type of the column is text instead of timestamp
						</documentation>
					</annotation>
				</attribute>
			</extension>
		</complexContent>
	</complexType>
	<complexType name="DateColumnComplexType">
		<complexContent>
			<extension base="fews:ColumnComplexType">
				<attribute name="pattern" type="string">
					<annotation>
						<documentation>
							Only required when the type of the column is text instead of date
						</documentation>
					</annotation>
				</attribute>
			</extension>
		</complexContent>
	</complexType>
	<complexType name="TimeColumnComplexType">
		<complexContent>
			<extension base="fews:ColumnComplexType">
				<attribute name="pattern" type="string">
					<annotation>
						<documentation>
							Only required when the type of the column is text instead of time
						</documentation>
					</annotation>
				</attribute>
			</extension>
		</complexContent>
	</complexType>
	<complexType name="ValueColumnComplexType">
		<complexContent>
			<extension base="fews:ColumnComplexType">
				<attribute name="parser" type="string">
					<annotation>
						<documentation>
							Only required when the column type is blob/grid/file.
						</documentation>
					</annotation>
				</attribute>
				<attribute name="locationId" type="string">
					<annotation>
						<documentation>
							When there is no location id column for the location id
						</documentation>
					</annotation>
				</attribute>
				<attribute name="parameterId" type="string">
					<annotation>
						<documentation>
							When there is no parameter id column for the parameter id
						</documentation>
					</annotation>
				</attribute>
				<attribute name="ensembleMemberIndex" type="int">
					<annotation>
						<documentation>
							specify ensembleMemberIndex for this valueColumn
						</documentation>
					</annotation>
				</attribute>
				<attribute name="unit" type="string">
					<annotation>
						<documentation>
							Used for unit conversion. Unit should not be specified when unit column is available
						</documentation>
					</annotation>
				</attribute>
				<attribute name="time" type="string">
					<annotation>
						<documentation>
							This time is combined with the date from the specified date column
						</documentation>
					</annotation>
				</attribute>
				<attribute name="dayOfMonth" type="positiveInteger">
					<annotation>
						<documentation>
							The day is combined with the month from the specified date column.
						</documentation>
					</annotation>
				</attribute>
				<attribute name="ignoreForEnumerationParameters" type="boolean">
					<annotation>
						<documentation>Since 2017.01. When for the current parameter an enumeration is defined ignore the value. Skip the value when reading and replace by missing when writing
						</documentation>
					</annotation>
				</attribute>
				<attribute name="requireEnumerationParameters" type="boolean">
					<annotation>
						<documentation>Since 2021.02. When for the current parameter an enumeration is defined decline the value / sample when reading, do nothing for writing</documentation>
					</annotation>
				</attribute>
				<attribute name="ignoreForNumericalParameters" type="boolean">
					<annotation>
						<documentation>Since 2017.01. When for the current parameter no enumeration is defined ignore the value. Skip the value when reading and replace by missing when writing
						</documentation>
					</annotation>
				</attribute>
				<attribute name="requireNumericalParameters" type="boolean">
					<annotation>
						<documentation>Since 2021.02. When for the current parameter no enumeration is defined decline the value / sample when reading, do nothing for writing</documentation>
					</annotation>
				</attribute>
			</extension>
		</complexContent>
	</complexType>
	<complexType name="FlagColumnComplexType">
		<complexContent>
			<extension base="fews:ColumnComplexType">
				<attribute name="locationId" type="string" use="optional">
					<annotation>
						<documentation>
							Since 2017.01 When there is no location id column for the location id. Only implemented for GeneralTimeSeriesCsvParser.
						</documentation>
					</annotation>
				</attribute>
				<attribute name="parameterId" type="string" use="optional">
					<annotation>
						<documentation>
							Since 2017.01 When there is no parameter id column for the parameter id. Only implemented for GeneralTimeSeriesCsvParser.
						</documentation>
					</annotation>
				</attribute>
			</extension>
		</complexContent>
	</complexType>
	<complexType name="QualifierColumnComplexType">
		<complexContent>
			<extension base="fews:ColumnComplexType">
				<attribute name="prefix" type="string" use="optional">
					<annotation>
						<documentation>
							Optional. Used to add in front of the external qualifier id. Can be useful for id mapping.
						</documentation>
					</annotation>
				</attribute>
				<attribute name="defaultValue" type="string">
					<annotation>
						<documentation>
							Since 2020.02 if the qualifier is missing, use this default value instead.
						</documentation>
					</annotation>
				</attribute>
			</extension>
		</complexContent>
	</complexType>
	<complexType name="FlagSourceColumnColumnComplexType">
		<complexContent>
			<extension base="fews:ColumnComplexType">
				<attribute name="id" type="string">
					<annotation>
						<documentation>
							The id of the flag source column
						</documentation>
					</annotation>
				</attribute>
			</extension>
		</complexContent>
	</complexType>
	<complexType name="PropertyColumnComplexType">
		<complexContent>
			<extension base="fews:ColumnComplexType">
				<attribute name="key" type="string" use="required">
					<annotation>
						<documentation>
							The key for the found property value.
						</documentation>
					</annotation>
				</attribute>
				<attribute name="pattern" type="string">
					<annotation>
						<documentation>
							Only required when the attribute type is dateTime.
						</documentation>
					</annotation>
				</attribute>
			</extension>
		</complexContent>
	</complexType>
	<complexType name="AttributeColumnComplexType">
		<complexContent>
			<extension base="fews:ColumnComplexType">
				<attribute name="id" type="string" use="required">
					<annotation>
						<documentation>
							The id of the attribute.
						</documentation>
					</annotation>
				</attribute>
				<attribute name="pattern" type="string">
					<annotation>
						<documentation>
							Only required when the attribute type is dateTime.
						</documentation>
					</annotation>
				</attribute>
			</extension>
		</complexContent>
	</complexType>
	<complexType name="SampleIdColumnComplexType">
		<complexContent>
			<extension base="fews:ColumnComplexType">
				<attribute name="prefix" type="string" use="optional">
					<annotation>
						<documentation>
							Optional. Used to add in front of the external sample id. Can be useful to separate same sample imported from different sources.
						</documentation>
					</annotation>
				</attribute>
			</extension>
		</complexContent>
	</complexType>
	<complexType name="ClassNameComplexType">
		<annotation>
			<documentation>This complexType should be extended by all function complexTypes.</documentation>
		</annotation>
		<sequence>
			<element name="className" type="fews:nameStringType" minOccurs="0">
				<annotation>
					<documentation>Optional element to define the name of the class that should be executed to perform this transformation. Normally this element can be left out of the xml
						configuration, and the default class name will be used. This default class name is defined as the default value for this element in the xsd schema for this transformation. Only
						use this element if you need to use a custom class that is present in the program code.
					</documentation>
				</annotation>
			</element>
		</sequence>
	</complexType>
	<complexType name="TableBackgroundColorComplexType">
		<attribute name="dayOfWeek" type="fews:dayOfWeekType" use="required"/>
		<attribute name="startTime" type="fews:shortTimeType" use="required">
			<annotation>
				<documentation>The time the color starts appearing</documentation>
			</annotation>
		</attribute>
		<attribute name="endTime" type="fews:shortTimeType" use="required">
			<annotation>
				<documentation>After this time the default color will be used again.</documentation>
			</annotation>
		</attribute>
		<attribute name="color" type="fews:colorStringType" use="required"/>
	</complexType>
	<complexType name="TableBackgroundColorsComplexType">
		<sequence>
			<element name="timeZone" type="fews:timeZoneStringType"/>
			<element name="background" type="fews:TableBackgroundColorComplexType" maxOccurs="unbounded"/>
		</sequence>
	</complexType>
	<complexType name="DefaultTimeThresholdComplexType">
		<sequence>
			<element name="timeThreshold" type="fews:TimeThresholdComplexType" maxOccurs="unbounded"/>
		</sequence>
	</complexType>
	<complexType name="CatalogueCredentialsComplexType">
		<sequence>
			<element name="url" type="anyURI">
				<annotation>
					<documentation>Since 2015.01. URL of the geo network services. You can test if the url is correct by pasting in into your browswer. If you remove the csw part from the end of the
						url you should be able to access the gui. Login with the user and password to check that they are correct.
					</documentation>
				</annotation>
			</element>
			<group ref="fews:UserAndPassword">
				<annotation>
					<documentation>Since 2015.01. User name and password used for http authentication</documentation>
				</annotation>
			</group>
		</sequence>
	</complexType>
	<complexType name="ExportAttributeType">
		<attribute name="internalAttributeId" type="fews:idStringType">
			<annotation>
				<documentation>Since 2015.01. FEWS-11063</documentation>
			</annotation>
		</attribute>
		<attribute name="externalAttributeId" type="fews:idStringType">
			<annotation>
				<documentation>Since 2015.01. FEWS-11063</documentation>
			</annotation>
		</attribute>
	</complexType>
	<!--Deprecated, use TransferStatusDataFeedComplexType instead-->
	<complexType name="DeprecatedExtraTimeThresholdComplexType">
		<sequence>
			<element name="dataFeedId" type="fews:idStringType"/>
			<element name="timeThreshold" type="fews:TimeThresholdComplexType" maxOccurs="unbounded"/>
		</sequence>
	</complexType>
	<complexType name="TransferStatusDataFeedComplexType">
		<sequence>
			<element name="description" type="string" minOccurs="0"/>
			<element name="timeThreshold" type="fews:TimeThresholdComplexType" maxOccurs="unbounded"/>
		</sequence>
		<attribute name="id" type="fews:idStringType" use="required"/>
		<attribute name="name" type="fews:idStringType"/>
	</complexType>
	<!---->
	<complexType name="TimeThresholdComplexType">
		<sequence>
			<element name="periodLength" type="fews:RelativeTimeComplexType"/>
			<element name="color" type="fews:colorStringType"/>
			<sequence minOccurs="0">
				<element name="eventCode" type="fews:logEventCodeStringType">
					<annotation>
						<documentation>Since 2022.02. Event code used by the predefined Import Status Checker workflow module to log data feeds that did not receive data longer than the period
							length
						</documentation>
					</annotation>
				</element>
				<element name="logLevel" type="fews:logLevelEnumStringType">
					<annotation>
						<documentation>Log level used by the predefined Import Status Checker workflow module to log data feeds that did not receive data longer than the period length</documentation>
					</annotation>
				</element>
				<element name="graceTime" type="fews:TimeSpanComplexType" minOccurs="0">
					<annotation>
						<documentation>Available since 2025.02. If configured, log messages of missing data feed ids will only be logged once in the grace period.</documentation>
					</annotation>
				</element>
			</sequence>
		</sequence>
	</complexType>
	<complexType name="PersistentIdsCsvFileComplexType">
		<sequence>
			<element name="file" type="fews:nonEmptyStringType">
				<annotation>
					<documentation>name of layer in the map layer files or a full absolute path to the csv file (*.csv).</documentation>
				</annotation>
			</element>
			<element name="charset" type="fews:charsetEnumStringType" default="ISO-8859-1" minOccurs="0">
				<annotation>
					<documentation>Character set of the text in the csv file. Specify only when the csv file contains non western characters.
					</documentation>
				</annotation>
			</element>
			<element name="configId" type="fews:nonEmptyStringType">
				<annotation>
					<documentation>config ids in the csv file. e.g. "H_%ID%", put the actual csv column name between %%.
					</documentation>
				</annotation>
			</element>
			<element name="persistentId" type="fews:nonEmptyStringType">
				<annotation>
					<documentation>persistent ids in the csv file. e.g. "%DATABASE_ID%", put the actual csv column name between %%.</documentation>
				</annotation>
			</element>
		</sequence>
	</complexType>
	<group name="PersistentIdsCsvFilesGroup">
		<sequence>
			<element name="persistentIdsCsvFile" type="fews:PersistentIdsCsvFileComplexType" maxOccurs="unbounded">
				<annotation>
					<documentation>A file that maps config ids to database ids. Only locations where the config id is different from the database are listed. Config ids can be changed as long the
						database id stays the same.
					</documentation>
				</annotation>
			</element>
		</sequence>
	</group>
	<complexType name="AdditionalTimeSeriesFunctionEquals">
		<attribute name="selected" type="string" use="required"/>
		<attribute name="additional" type="string" use="required"/>
	</complexType>
	<!---->
	<complexType name="AdditionComplexType">
		<annotation>
			<documentation>Defines the possible prefixes and suffixes of the filename</documentation>
		</annotation>
		<choice>
			<element name="simpleString" type="string">
				<annotation>
					<documentation>Generally it is used when specifying a temporary prefix</documentation>
				</annotation>
			</element>
			<element name="timeZeroFormattingString" type="fews:dateTimeFormatType">
				<annotation>
					<documentation>Use timeZero of the task-run as prefix/suffix. Format it as specified with this element.</documentation>
				</annotation>
			</element>
			<element name="currentTimeFormattingString" type="fews:dateTimeFormatType">
				<annotation>
					<documentation>Use currentTime as prefix/suffix. Format it as specified with this element.</documentation>
				</annotation>
			</element>
		</choice>
	</complexType>
	<complexType name="LogoComplexType">
		<sequence>
			<element name="imageFile" type="fews:fileStringType">
				<annotation>
					<documentation>png, gif or jpg file from the map layers folder</documentation>
				</annotation>
			</element>
			<element name="position" type="fews:PositioningEnumStringType">
				<annotation>
					<documentation>corner of the map</documentation>
				</annotation>
			</element>
		</sequence>
	</complexType>
	<complexType name="SpatialPlotLabelComplexType">
		<sequence>
			<element name="text" type="fews:nonEmptyStringType">
				<annotation>
					<documentation>You can use \n and tags(e.g. CURRENTTIME, USERNAME, ...)</documentation>
				</annotation>
			</element>
			<element name="font" type="fews:FontComplexType" minOccurs="0"/>
			<element name="position" type="fews:PositioningEnumStringType">
				<annotation>
					<documentation>corner of the map</documentation>
				</annotation>
			</element>
		</sequence>
	</complexType>
	<group name="ObsoleteTimeSeriesSetChoice">
		<choice>
			<sequence maxOccurs="unbounded">
				<element name="timeSeriesSet" type="fews:TimeSeriesSetComplexType"/>
			</sequence>
			<sequence maxOccurs="unbounded">
				<element name="valueTimeSeriesSet" type="fews:TimeSeriesSetComplexType"/>
				<element name="directionTimeSeriesSet" type="fews:TimeSeriesSetComplexType"/>
			</sequence>
			<sequence maxOccurs="unbounded">
				<element name="uTimeSeriesSet" type="fews:TimeSeriesSetComplexType"/>
				<element name="vTimeSeriesSet" type="fews:TimeSeriesSetComplexType"/>
			</sequence>
			<sequence/>
		</choice>
	</group>
	<group name="AnimatedLayerChoice">
		<choice>
			<element name="dataLayer" type="fews:GridPlotDataLayerComplexType">
				<annotation>
					<documentation>Use this option to display multiple data grids. Each grid will be displayed in a separate data layer. The layer specified last, will be shown on top. If a layer
						contains
						a timeSeriesSet with scalar data (possibly with a locationSet with multiple locations), then this will be converted to a grid to display in that layer.
					</documentation>
				</annotation>
			</element>
			<group ref="fews:QuadTreeLayerSequence"/>
			<element name="trackLayer" type="fews:TrackLayerComplexType">
				<annotation>
					<documentation>Use this option to display a cyclone track. The whole track is always visible. The point for the time in the slider is highlighted.
					</documentation>
				</annotation>
			</element>
			<element name="wmsLayer" type="fews:AnimatedWmsLayerComplexType">
				<annotation>
					<documentation>Since 2013.01. FEWS-8875. Use this option to display an (animated) wms layer.
					</documentation>
				</annotation>
			</element>
		</choice>
	</group>
	<group name="QuadTreeLayerSequence">
		<sequence>
			<element name="quadtreeWaterLevelsLayer" type="fews:GridPlotDataLayerComplexType">
				<annotation>
					<documentation>Since 2013.01. FEWS-8729. Use this option to display water level data that is defined on a quadtree grid. The water levels will be shown using the colours configured
						in the classBreaks. This only works if a local datum reference layer (e.g. coverageTileArchiveLayer) has been defined in the corresponding geoMap with digital elevation model
						(DEM) data.
					</documentation>
				</annotation>
			</element>
			<element name="quadtreeSubgridVelocitiesLayer" type="fews:GridPlotDataLayerComplexType">
				<annotation>
					<documentation>Since 2013.01. FEWS-8729. Use this option to display flow velocity data that is defined on the flow links of a quadtree grid. The specified timeSeriesSet should
						contain speed values normal to the quadtree cell faces for each flowlink. A flowlink is the "connection" between two adjacent quadtree cells. This only works if the specified
						flow velocity data comes from the same quadtree grid as the corresponding quadtreeWaterLevelsLayer and if a local datum reference layer (e.g. coverageTileArchiveLayer) has been
						defined in the corresponding geoMap with digital elevation model (DEM) data. The velocities within the quadtree cells are computed from the velocities on the flowlinks using
						the subgrid method (see the paper "Quadtree flood simulations with sub-grid digital elevation models" by Guus S. Stelling that is available from
						http://www.3di.nu/wp-content/uploads/2013/02/Stelling_ice_2012.pdf). The velocities are shown using arrows that use the symbolSizes configured in the arrowClassBreaks.
					</documentation>
				</annotation>
			</element>
		</sequence>
	</group>
	<complexType name="SynchProfileComplexType">
		<sequence>
			<element name="description" type="string" minOccurs="0">
				<annotation>
					<documentation>Optional description of the profile.</documentation>
				</annotation>
			</element>
			<element name="xmlConfig" type="fews:AnyAgeChannelFilterComplexType" maxOccurs="unbounded">
				<annotation>
					<documentation>When disabled the config tables that are stored as xml are not synchronized. Normally enabled using synchLevel 11.</documentation>
				</annotation>
			</element>
			<element name="coldStates" type="fews:AnyAgeChannelFilterComplexType" maxOccurs="unbounded">
				<annotation>
					<documentation>When disabled the ColdStates are not synchronized. Normally enabled using synchLevel 11.</documentation>
				</annotation>
			</element>
			<element name="moduleDataSets" type="fews:AnyAgeChannelFilterComplexType" maxOccurs="unbounded">
				<annotation>
					<documentation>When disabled the moduleDataSets are not synchronized. Normally enabled only in synchProfile "Full" using synchLevel 11. Disabled in other synch profiles.
					</documentation>
				</annotation>
			</element>
			<element name="mapLayers" type="fews:AnyAgeChannelFilterComplexType" maxOccurs="unbounded">
				<annotation>
					<documentation>When disabled the MapLayers are not synchronized. Normally enabled using synchLevel 11.</documentation>
				</annotation>
			</element>
			<element name="icons" type="fews:AnyAgeChannelFilterComplexType" maxOccurs="unbounded">
				<annotation>
					<documentation>When disabled the Icons are not synchronized. Normally enabled using synchLevel 11.</documentation>
				</annotation>
			</element>
			<element name="reportTemplates" type="fews:AnyAgeChannelFilterComplexType" maxOccurs="unbounded">
				<annotation>
					<documentation>When disabled the ReportTemplates are not synchronized. Normally enabled only in synchProfile "Full" using synchLevel 11. Disabled in other synch profiles.
					</documentation>
				</annotation>
			</element>
			<element name="reportImages" type="fews:AnyAgeChannelFilterComplexType" maxOccurs="unbounded">
				<annotation>
					<documentation>When disabled the reportImages are not synchronized. Normally enabled only in synchProfile "Full" using synchLevel 11. Disabled in other synch profiles.
					</documentation>
				</annotation>
			</element>
			<element name="continuousTimeSeries" type="fews:MaxAgeSynchLevelRequiredChannelFilterComplexType" maxOccurs="unbounded">
				<annotation>
					<documentation>Controls which timeseries with what synchLevels are enabled to be synchronized to the Operator Client.</documentation>
				</annotation>
			</element>
			<element name="forecastTriggeredTimeSeries" type="fews:AnyAgeSynchLevelRequiredChannelFilterComplexType" minOccurs="0" maxOccurs="unbounded">
				<annotation>
					<documentation>Controls whether or not to synchronize the current and approved simulated forecast TimeSeries with the specified synchLevel and maximum age.</documentation>
				</annotation>
			</element>
			<element name="warmStates" type="fews:MaxAgeChannelFilterComplexType" maxOccurs="unbounded">
				<annotation>
					<documentation>When disabled the WarmStates records are not synchronized. Normally enabled only for the last 10 days in synchProfile "Full" using synchLevel 11. Disabled in other
						synch profiles.
					</documentation>
				</annotation>
			</element>
			<element name="logEntries" type="fews:MaxAgeChannelFilterComplexType" maxOccurs="unbounded">
				<annotation>
					<documentation>Controls whether and how old logentries can be when synchronized. Normally always enabled.</documentation>
				</annotation>
			</element>
			<element name="thresholdEvents" type="fews:MaxAgeNoSynchLevelChannelFilterComplexType" maxOccurs="unbounded"/>
		</sequence>
		<attribute name="id" type="fews:idStringType" use="required"/>
		<attribute name="name" type="fews:idStringType"/>
	</complexType>
	<complexType name="MaxAgeChannelFilterComplexType">
		<attribute name="name" type="fews:nonEmptyStringType" use="required">
			<annotation>
				<documentation>Name of the synch channel.</documentation>
			</annotation>
		</attribute>
		<attribute name="enabled" type="boolean" use="required">
			<annotation>
				<documentation>Boolean flag to disable this synchChannel.</documentation>
			</annotation>
		</attribute>
		<attribute name="synchLevel" type="nonNegativeInteger">
			<annotation>
				<documentation>Controls the synchLevel to synchronize.</documentation>
			</annotation>
		</attribute>
		<attribute name="maxAge" type="nonNegativeInteger" use="required">
			<annotation>
				<documentation>Controls how old records may be before they are synchronized.</documentation>
			</annotation>
		</attribute>
		<attribute name="unit" type="fews:timeUnitStringType" use="required">
			<annotation>
				<documentation>Time unit for the maxAge field.</documentation>
			</annotation>
		</attribute>
	</complexType>
	<complexType name="MaxAgeNoSynchLevelChannelFilterComplexType">
		<attribute name="name" type="fews:nonEmptyStringType" use="required">
			<annotation>
				<documentation>Name of the synch channel.</documentation>
			</annotation>
		</attribute>
		<attribute name="enabled" type="boolean" use="required">
			<annotation>
				<documentation>Boolean flag to disable this synchChannel.</documentation>
			</annotation>
		</attribute>
		<attribute name="maxAge" type="nonNegativeInteger" use="required">
			<annotation>
				<documentation>Controls how old records may be before they are synchronized.</documentation>
			</annotation>
		</attribute>
		<attribute name="unit" type="fews:timeUnitStringType" use="required">
			<annotation>
				<documentation>Time unit for the maxAge field.</documentation>
			</annotation>
		</attribute>
	</complexType>
	<complexType name="MaxAgeSynchLevelRequiredChannelFilterComplexType">
		<attribute name="name" type="fews:nonEmptyStringType" use="required">
			<annotation>
				<documentation>Name of the synch channel.</documentation>
			</annotation>
		</attribute>
		<attribute name="enabled" type="boolean" use="required">
			<annotation>
				<documentation>Boolean flag to disable this synchChannel.</documentation>
			</annotation>
		</attribute>
		<attribute name="synchLevel" type="nonNegativeInteger" use="required">
			<annotation>
				<documentation>Controls the synchLevel to synchronize.</documentation>
			</annotation>
		</attribute>
		<attribute name="maxAge" type="nonNegativeInteger" use="required">
			<annotation>
				<documentation>Controls how old records may be before they are synchronized.</documentation>
			</annotation>
		</attribute>
		<attribute name="unit" type="fews:timeUnitStringType" use="required">
			<annotation>
				<documentation>Time unit for the maxAge field.</documentation>
			</annotation>
		</attribute>
	</complexType>
	<complexType name="AnyAgeChannelFilterComplexType">
		<attribute name="name" type="fews:nonEmptyStringType" use="required">
			<annotation>
				<documentation>Name of the synch channel.</documentation>
			</annotation>
		</attribute>
		<attribute name="enabled" type="boolean" use="required">
			<annotation>
				<documentation>Boolean flag to disable this synchChannel.</documentation>
			</annotation>
		</attribute>
		<attribute name="synchLevel" type="nonNegativeInteger">
			<annotation>
				<documentation>Controls the synchLevel to synchronize.</documentation>
			</annotation>
		</attribute>
	</complexType>
	<complexType name="AnyAgeSynchLevelRequiredChannelFilterComplexType">
		<attribute name="name" type="fews:nonEmptyStringType" use="required"/>
		<attribute name="enabled" type="boolean" use="required"/>
		<attribute name="synchLevel" type="nonNegativeInteger">
			<annotation>
				<documentation>Controls the synchLevel to synchronize.</documentation>
			</annotation>
		</attribute>
	</complexType>
	<complexType name="ComputeMapExtentToShowAllNonMissingTimeSeriesComplexType">
		<attribute name="marginMeters" type="nonNegativeInteger" use="required"/>
	</complexType>
	<complexType name="DatabaseServerConnectionConfigComplexType">
		<annotation>
			<documentation>Contains information on the central database for the system.</documentation>
		</annotation>
		<sequence>
			<group ref="fews:DatabaseServerSequence"/>
		</sequence>
	</complexType>
	<simpleType name="mcIdType">
		<restriction base="string">
			<minLength value="1"/>
			<maxLength value="30"/>
			<pattern value="[a-zA-Z]{1}[a-zA-Z0-9_\-]*"/>
		</restriction>
	</simpleType>
	<simpleType name="mcIdStringType">
		<union memberTypes="fews:mcIdType fews:propertyReferenceString"/>
	</simpleType>
	<simpleType name="databaseIntType">
		<restriction base="integer">
			<minInclusive value="0"/>
			<maxInclusive value="97"/>
		</restriction>
	</simpleType>
	<simpleType name="databaseIntStringType">
		<union memberTypes="fews:databaseIntType fews:propertyReferenceString"/>
	</simpleType>
	<complexType name="ExportLocationAttributeAsNetCDFVariableComplexType">
		<sequence>
			<element name="ncVariable" type="fews:idStringType" minOccurs="1">
				<annotation>
					<documentation>Name of the variable in the NetCdf file.</documentation>
				</annotation>
			</element>
			<element name="attributeId" type="fews:idStringType">
				<annotation>
					<documentation>Attribute id to be used as attribute value.</documentation>
				</annotation>
			</element>
		</sequence>
	</complexType>
	<complexType name="SubLocationsStructureComplexType">
		<sequence>
			<element name="variableId" type="fews:idStringType"/>
			<element name="matchingSubLocationAttributeId" type="fews:idStringType"/>
			<element name="connectedSubLocationsStructureId" type="fews:idStringType" minOccurs="0"/>
			<element name="connectedSubLocationIdFunction" type="fews:nonEmptyStringType" minOccurs="0"/>
			<element name="forecastLocationsStructureId" type="fews:idStringType" minOccurs="0"/>
			<element name="forecastLocationIdFunction" type="fews:nonEmptyStringType" minOccurs="0"/>
			<element name="externalForecastLocationIdFunction" type="fews:nonEmptyStringType" minOccurs="0"/>
			<element name="observationVariableId" type="fews:idStringType" minOccurs="0"/>
			<element name="observationTendencyVariableId" type="fews:idStringType" minOccurs="0"/>
			<element name="observationPeakVariableId" type="fews:idStringType" minOccurs="0"/>
			<element name="observationLocationIdFunction" type="fews:nonEmptyStringType" minOccurs="0"/>
			<element name="externalObservationLocationIdFunction" type="fews:nonEmptyStringType" minOccurs="0"/>
			<element name="draftTemplateFile" type="fews:fileStringType" minOccurs="0">
				<annotation>
					<documentation>Template used in special tag for sub locations when exported as draft</documentation>
				</annotation>
			</element>
			<element name="templateFile" type="fews:fileStringType" minOccurs="0">
				<annotation>
					<documentation>Template used in special tag for sub locations</documentation>
				</annotation>
			</element>
		</sequence>
		<attribute name="id" type="fews:idStringType"/>
	</complexType>
	<complexType name="ForecastLocationsStructureComplexType">
		<sequence>
			<element name="variableId" type="fews:idStringType"/>
			<element name="datumAttributeFunction" type="fews:nonEmptyStringType" minOccurs="0"/>
			<element name="locationTypeAttributeFunction" type="fews:nonEmptyStringType" minOccurs="0"/>
			<element name="minorSeverityAttributeFunction" type="fews:nonEmptyStringType" minOccurs="0"/>
			<element name="moderateSeverityAttributeFunction" type="fews:nonEmptyStringType" minOccurs="0"/>
			<element name="majorSeverityAttributeFunction" type="fews:nonEmptyStringType" minOccurs="0"/>
		</sequence>
		<attribute name="id" type="fews:idStringType"/>
		<attribute name="convertDatum" type="boolean"/>
	</complexType>
</schema>
