What

Parameters.xml

Required

yes

Description

Definitions of all parameters used in DELFT-FEWS

schema location

https://fewsdocs.deltares.nl/schemas/version1.0/parameters.xsd


Overview

All time series data in DELFT-FEWS must be defined to be of one of the parameters supported. This configuration file defines the list of supported parameters, including the unit of the parameter.

Parameters are organised into ParameterGroups. All parameters within a group should have the same properties and the same units. Only parameters of the same group may be displayed in a single (sub) plot in the time series display, though this can be overruled if requested using a display template.

When available on the file system, the name of the XML file is for example:

Parameters 1.00 default.xml

Parameters                                 Fixed file name for the Parameters configuration

1.00                                            Version number

default                                       Flag to indicate the version is the default configuration (otherwise omitted).

Configuration


displayUnitConversionId

The unit conversions id to convert from the (internal) units to the display units. Only required when a displayUnit is specified for a parameter group

configUnitConversionId

The unit conversions id to convert from the units specified in config files to the internal units for this parameter.  Only required when a user unit is specified for a thresholdValuesSet, validationRuleSet or ratingCurve

ratingCurveStageParameterId

This parameter is used to resolve the internal stage unit and display stage unit and the name (label) that is used for the rating curve stage axis/column in the user interface

ratingCurveDischargeParameterId

This parameter is used to resolve the internal discharge unit and display discharge unit and the name (label) that is used for the rating curve discharge axis/column in the user interface

parameterGroup

Root element of each definition of a parameter group. Multiple entries may exist.

Attributes;

  • id: Id of the parameter group. The ID must be unique.
  • name: optional name for the parameter group. Used for reference only.


Figure 26 Elements of the ParameterGroup configuration in the parameter definition

description

Optional description of the parameter group. Used for reference purposes only.

parameterType

Definition of the parameters in the group if these are "instantaneous" parameters, "accumulative" parameters or "mean" parameters.

dimension

Optional. The dimension of the parameter used to indicate what quantity the values for this parameter represent. For example: time, mass, velocity, acceleration, discharge etc.

For certain features the dimension is checked to ensure the calculation performed by FEWS will make sense. For example, the calculate budget option in the spatial display.

The following dimensions are recognized by FEWS:

list of available dimensions
<dimension name="length" length="1"/>
<dimension name="mass" mass="1"/>
<dimension name="time" time="1"/>
<dimension name="temperature" temperature="1"/>
<dimension name="electricCurrent" electricCurrent="1"/>
<dimension name="amountOfSubstance" amountOfSubstance="1"/>
<dimension name="luminousIntensity" luminousIntensity="1"/>


<dimension name="velocity" length="1" time="-1"/>
<dimension name="frequency" time="-1"/>
<dimension name="acceleration" length="1" time="-2"/>
<dimension name="discharge" length="3" time="-1"/>
<dimension name="momentum" mass="1" length="1" time="-1"/>
<dimension name="force" mass="1" length="1" time="-2"/>
<dimension name="pressure" mass="1" length="-1" time="-2"/>
<dimension name="mass flux" mass="1" length="-2" time="-1"/>
<dimension name="volumetric flux" length="1" time="-1"/>
<dimension name="energy flux" mass="1" time="-3"/>
<dimension name="surface tension" mass="1" time="-2"/>
<dimension name="energy" mass="1" length="2" time="-2"/>
<dimension name="power" mass="1" length="2" time="-3"/>
<dimension name="mass density" mass="1" length="-3"/>
<dimension name="viscosity" mass="1" length="-1" time="-1"/>
<dimension name="area" length="2"/>
<dimension name="volume" length="3"/>
<dimension name="entropy" mass="1" length="2" time="-2" temperature="-1"/>
<dimension name="electric charge" electricCurrent="1" time="1"/>
<dimension name="electric field" mass="1" length="1" time="-3" electricCurrent="-1"/>
<dimension name="magnetic field" mass="1" time="-2" electricCurrent="-1"/>


<dimension name="dimensionless"/>


unit

Unit of the parameters defined in the group. The unit may be selected from a list of units supported by DELFT-FEWS. These are generally SI units. For an enumeration of supported units see Appendix B.

displayUnit

Specify when the unit seen by the user is not the same as the unit of the values internally stored in the data store. Also specify displayUnitConversionsId above. In this unit conversions the conversion from (internal) unit to display unit should be available

valueResolution

Optional. Default accuracy (smallest increment between two values) of the calculated or measured values for all parameters in this group. Value resolution can also be specified for a single parameter (since stable build 2011.01). By default the resolution is dynamic and the values are stored as a 32 bit floating point with 6 significant digits. Floating points don't compress very well and are slow to decode. It is far more efficient to store a value as an integer with a scale factor (= value resolution). When an 8, 16, 24 or 32 bits integer is not big enough to achieve the value resolution the default 32 bit floating point is used as a fallback. E.g. when the accuracy of a water level is half a centimeter, specify 0.005. When the accuracy of a discharge is 10 m3/s, specify 10. Although an 32 bits integer can hold 9 digits the total number of significant digits can not be larger than 7 due the limitation of the 32 bits float. The integer value is always converted to a float when loaded from the database.

usesDatum

Indicates if the parameters in the group are to be converted when toggling between local and global datum. Value is either true or false. If the value is true, the elevation defined in the location is added to the time series in the database on conversion. See Locations

parameter

Definition of each parameter in a parameter group. Multiple parameters may be defined per group.

Attributes;

  • id: Id of the parameter. The ID must be unique.
  • name: optional name for the parameter. Used for reference only.
shortName

Short name for the parameter. This name will be used in the time series display and reports.

description

Optional description of the parameter (tool tip).

simulatedHistoricalParameterId

Optional. Only required when different parameters are used for the forecast and historical period. The simulated historical update run, current at the moment the forecast is created, will be used for data before the start of the forecast. It is also required to configure the simulatedHistoricalModuleInstance for the forecast module instances. When configured, this parameter can only be used for simulated forecast time series.

standardName

Optional standard name defined by the netcdf CF convention. This is currently only used for export to netcdf files. The standard name has to be valid according to the list of standard names, version 18, see http://cfconventions.org/Data/cf-standard-names/18/build/cf-standard-name-table.html

standardNameModifier

Optional standard name modifier defined by the netcdf CF convention. This is currently only used for export to netcdf files. See http://cfconventions.org/Data/cf-conventions/cf-conventions-1.6/build/cf-conventions.html#standard-name

allowMissing

Option to indicate if a time series of this parameter type is allowed to contain missing values when being used by a model or a transformation. When omitted this value will default to 'true'. If this is used for a transformation, then it is also required to set the option checkMissing in the inputVariable of the transformation to true.

cellMethod

Optional cell method (for time dimension) as defined in the netcdf CF convention. This is currently only used for export to netcdf files. See http://cfconventions.org/Data/cf-conventions/cf-conventions-1.6/build/cf-conventions.html#cell-methods

tideNumberParameterId

SINCE 2022.02. The parameter of a time series (set) is replaced (behind the screens) with this parameter to find the tide number



Configuring a hierarchical tree view for parameters in Fews Explorer

As of Fews 2010_01 there is a second root node parameters available in the parameters.xsd schema. This new element facilitates configurations of the parameters to be displayed in Fews Explorer in the form of a hierarchical tree. The parameters node embeds the parameterGroups element described above. The element parameterRootNode is of type ParameterNodeComplexType and represents the top node of the hierarchical tree structure that is to be displayed. Other parameterNodes can be nested within each instance of ParameterNodeComplexType. Each node has an id field and can have a name and description and multiple parameterIds. The parameterIds from parameterGroups that are not included in the hierarchical tree specified by parameterRootNode are added automatically at the root level.

id

This attribute is used as the identifier label which is displayed when ids are made visible within Fews Explorer.

name

This element is used as the name label which is displayed when names are made visible within Fews Explorer.

description

This element is used as the description label which is displayed when descriptions are made visible within Fews Explorer.

parameterId

This element must refer to the identifier of one of the parameters defined within the parameterGroups section.

NB. Each parameterId can only be used once and has to be defined within one of the parameterGroups.

parameterNode

This element is of type ParameterNodeComplexType and can be used similar to parameterRootNode.

Sample xml for hierarchical parameters
 
<parameters version="1.0" xmlns="http://www.wldelft.nl/fews" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
         xsi:schemaLocation="http://www.wldelft.nl/fews https://fewsdocs.deltares.nl/schemas/version1.0/parameters.xsd">
         <parameterGroups>
                <parameterGroup id="Discharge">
                     ...as before ...
                </parameterGroup>
         </parameterGroups>
         <parameterRootNode id="Parameters">
                <parameterNode id="Discharge">
                        <parameterId>Q.obs</parameterId>
                        <parameterId>Q.rated</parameterId>
                        <parameterId>Q.simulated</parameterId>
                        <parameterId>Q.simulated.historical</parameterId>
                        <parameterId>Q.simulated.forecast</parameterId>
                        <parameterId>Q.simulated.event</parameterId>
                        <parameterId>Q.updated</parameterId>
                        <parameterId>Q.correlated</parameterId>
                        <parameterId>Q.updated.historical</parameterId>
                        <parameterId>Q.updated.forecast</parameterId>
                        <parameterId>Q.generated</parameterId>
                        <parameterId>Q.merged</parameterId>
                        <parameterId>Q.profile</parameterId>
                        <parameterId>Q.target</parameterId>
                        <parameterId>Q.peak</parameterId>
                        <parameterId>Q.simulated.inflow</parameterId>
                </parameterNode>
                <parameterNode id="Water Level">
                        <name>Water level</name>
                        <parameterId>H.obs</parameterId>
                        <parameterId>H.obs.upstream</parameterId>
                        <parameterId>H.obs.downstream</parameterId>
                        <parameterId>H.obs.head</parameterId>
                        <parameterId>H.obs.tail</parameterId>
                        <parameterId>H.obs.crest</parameterId>
                        <parameterId>H.simulated</parameterId>
                        <parameterId>H.simulated.historical</parameterId>
                        <parameterId>H.simulated.forecast</parameterId>
                        <parameterId>H.simulated.event</parameterId>
...
                </parameterNode>	
         </parameterRootNode>
</parameters>
Sample parameters tree view in Fews Explorer

In case there is no timeseriesset for the combination of parameter and location, the nodes will be grayed out:

Enumerations

Parameters can also be defined as enumerations. Then there will be a set number of possible values with a specific label. The value will be stored in the database, the label will be shown in the GUI. 

<parameters version="1.0" xmlns="http://www.wldelft.nl/fews" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.wldelft.nl/fews https://fewsdocs.deltares.nl/schemas/version1.0/parameters.xsd">
	<displayUnitConversionsId>ImportUnitConversions_IMmetingen</displayUnitConversionsId>
	<enumerations>
		<enumeration id="GATE">
			<value code="0" label="Closed"/>
			<value code="1" label="Half Open"/>
			<value code="2" label="Open"/>
		</enumeration>
		<enumeration id="SMELL">
			<value code="0" label="None"/>
			<value code="1" label="Weak"/>
			<value code="2" label="Strong"/>
		</enumeration>

Parameters in csv format

It is possible to define parameters in a csv file. By using %% can be referred to the content of the columns in the csv file. For example:

<?xml version="1.0" encoding="UTF-8"?>
<parameters version="1.0" xmlns="http://www.wldelft.nl/fews" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.wldelft.nl/fews https://fewsdocs.deltares.nl/schemas/version1.0/parameters.xsd">
	<displayUnitConversionsId>ImportUnitConversions</displayUnitConversionsId>
	<ratingCurveStageParameterId>H.obs</ratingCurveStageParameterId>
	<ratingCurveDischargeParameterId>Q.rated</ratingCurveDischargeParameterId>
	<parametersCsvFile>
		<file>parametersALL.csv</file>
		<id>%ID%</id>
		<name>%NAME%</name>
		<shortName>%SHORT_NAME%</shortName>
		<group>%GROUP%</group>
    	<groupName>%GROUP_NAME%</groupName> <!--optional-->
	    <enumerationId>%ENUMERATION_ID%</enumerationId> <!--optional-->
		<parameterType>%TYPE%</parameterType>
		<unit>%UNIT%</unit>
		<valueResolution>%VALUE_RESOLUTION%</valueResolution>
		<allowMissing>%ALLOW_MISSING%</allowMissing> <!--optional-->
		<attribute id="InternalParameterId">
			<text>%ID%</text>
		</attribute>
	</parametersCsvFile>
</parameters>

parametersALL.csv located in MapLayerFiles config directory

ID;NAME;SHORT_NAME;GROUP;TYPE;UNIT;VALUE_RESOLUTION;ALLOW_MISSING
WATHTE;Waterhoogte;;Hoogte;instantaneous;m;0.001;TRUE
WATDTE;Waterdiepte;;Hoogte;instantaneous;m;0.001;TRUE
pH;Zuurgraad;;Dimensieloos;instantaneous;-;0.001;TRUE
OLE;Olie;Olie;Dimensieloos;instantaneous;-;0.001;TRUE
SO4;Sulfaat;Sulfaat;Concentratie mg/l;instantaneous;mg/l;;TRUE
Cl;Chloride;Chloride;Concentratie mg/l;instantaneous;mg/l;;TRUE
  • No labels