...
Code Block |
---|
|
<?xml version="1.0" encoding="UTF-8"?>
<secondaryValidation xmlns="http://www.wldelft.nl/fews" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.wldelft.nl/fews http://fews.wldelft.nl/schemas/version1.0/secondaryValidation.xsd">
<variableDefinition>
<variableId>input1</variableId>
<timeSeriesSet>
<moduleInstanceId>MinReliableValuesCheckTest</moduleInstanceId>
<valueType>scalar</valueType>
<parameterId>H.obs</parameterId>
<locationId>location1</locationId>
<timeSeriesType>external historical</timeSeriesType>
<timeStep unit="minute" multiplier="15"/>
<!-- any relativeViewPeriod here will always be overruled by checkRelativePeriod in each check -->
<readWriteMode>read only</readWriteMode>
</timeSeriesSet>
</variableDefinition>
<variableDefinition>
<variableId>input2</variableId>
<timeSeriesSet>
<moduleInstanceId>MinReliableValuesCheckTest</moduleInstanceId>
<valueType>scalar</valueType>
<parameterId>H.obs</parameterId>
<locationId>location2</locationId>
<timeSeriesType>external historical</timeSeriesType>
<timeStep unit="minute" multiplier="15"/>
<!-- any relativeViewPeriod here will always be overruled by checkRelativePeriod in each check -->
<readWriteMode>read only</readWriteMode>
</timeSeriesSet>
</variableDefinition>
<minNonMissingValuesCheck id="MinNonMissingValuesCheck">
<variable>
<variableId>input1</variableId>
</variable>
<variable>
<variableId>input2</variableId>
</variable>
<checkRelativePeriod unit="hour" start="-12" end="0"/>
<minNumberOfValues>18</minNumberOfValues>
<logLevel>INFO</logLevel>
<logEventCode>TimeSeries.Check</logEventCode>
<logMessage>Not enough values available for time series %header%</logMessage>
</minNonMissingValuesCheck>
<minNumberOfValuesCheck id="MinNumberOfValuesCheck">
<variable>
<variableId>input1</variableId>
</variable>
<variable>
<variableId>input2</variableId>
</variable>
<checkRelativePeriod unit="hour" start="-12" end="0"/>
<minNumberOfValues>24</minNumberOfValues>
<logLevel>DEBUG</logLevel>
<logEventCode>TimeSeries.Check</logEventCode>
<logMessage>Not enough values available for time series %header%</logMessage>
</minNumberOfValuesCheck>
<minReliableOrDoubtfulValuesCheck id="MinReliableOrDoubtfulValuesCheck">
<variable>
<variableId>input1</variableId>
</variable>
<variable>
<variableId>input2</variableId>
</variable>
<checkRelativePeriod unit="hour" start="-12" end="0"/>
<minNumberOfValues>12</minNumberOfValues>
<logLevel>WARN</logLevel>
<logEventCode>TimeSeries.Check</logEventCode>
<logMessage>Not enough values available for time series %header%</logMessage>
</minReliableOrDoubtfulValuesCheck>
<minReliableValuesCheck id="MinReliableValuesCheck">
<variable>
<variableId>input1</variableId>
</variable>
<variable>
<variableId>input2</variableId>
</variable>
<checkRelativePeriod unit="hour" start="-12" end="0"/>
<minNumberOfValues>6</minNumberOfValues>
<logLevel>WARN</logLevel>
<logEventCode>TimeSeries.Check</logEventCode>
<logMessage>Not enough values available for time series %header%</logMessage>
</minReliableValuesCheck>
</secondaryValidation>
|
Configuration examples for checks for setting flags per time step
The expression is always an a comparison. The comparison operator is within XML is one of (.ne., .eq., .gt., .ge., .lt., .le.). Each variable has to be a single word without spaces. Mathematical symbols or functions like _e_, _pi_ or _cos_ cannot be used as variableId.
A simple configuration example for the seriesComparisonCheck is given below, it will check the values that are reliable or doubtful, and mark them as unreliable if they are smaller than thirteen:
Code Block |
---|
|
<?xml version="1.0" encoding="UTF-8"?>
<secondaryValidation xmlns="http://www.wldelft.nl/fews" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.wldelft.nl/fews http://fews.wldelft.nl/schemas/version1.0/secondaryValidation.xsd">
<!-- comparison between location variable and scalar, set to unreliable -->
<seriesComparisonCheck id="checkWithScalar">
<variableDefinition>
<variableId>H_obs_location1</variableId>
<timeSeriesSet>
<moduleInstanceId>SeriesComparisonCheck</moduleInstanceId>
<valueType>scalar</valueType>
<parameterId>H.obs</parameterId>
<locationId>location1</locationId>
<timeSeriesType>external historical</timeSeriesType>
<timeStep unit="minute" multiplier="15"/>
<readWriteMode>read only</readWriteMode>
</timeSeriesSet>
</variableDefinition>
<checkRelativePeriod unit="hour" start="-12" end="0"/>
<expression>H_obs_location1 .ge. 13</expression>
<validatingVariableId>H_obs_location1</validatingVariableId>
<outputFlag>unreliable</outputFlag>
</seriesComparisonCheck>
</secondaryValidation>
|
...
Code Block |
---|
|
<?xml version="1.0" encoding="UTF-8"?>
<secondaryValidation xmlns="http://www.wldelft.nl/fews" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.wldelft.nl/fews http://fews.wldelft.nl/schemas/version1.0/secondaryValidation.xsd">
<!-- comparison of variables with similar location sets, different parameters, does comparison per location -->
<seriesComparisonCheck id="similarLocationSetSeriesComparisonCheck">
<!-- referred to by locationset1 and locationset2-->
<variableDefinition>
<variableId>H_obs1_location1</variableId>
<timeSeriesSet>
<moduleInstanceId>SeriesComparisonCheckTest</moduleInstanceId>
<valueType>scalar</valueType>
<parameterId>H.obs1</parameterId>
<locationId>location1</locationId>
<timeSeriesType>external historical</timeSeriesType>
<timeStep unit="minute" multiplier="15"/>
<readWriteMode>read only</readWriteMode>
</timeSeriesSet>
</variableDefinition>
<!-- referred to by locationset1 and locationset2-->
<variableDefinition>
<variableId>H_obs1_location2</variableId>
<timeSeriesSet>
<moduleInstanceId>SeriesComparisonCheckTest</moduleInstanceId>
<valueType>scalar</valueType>
<parameterId>H.obs1</parameterId>
<locationId>location2</locationId>
<timeSeriesType>external historical</timeSeriesType>
<timeStep unit="minute" multiplier="15"/>
<readWriteMode>read only</readWriteMode>
</timeSeriesSet>
</variableDefinition>
<!-- referred to by locationset1 and locationset2-->
<variableDefinition>
<variableId>H_obs2_location1</variableId>
<timeSeriesSet>
<moduleInstanceId>SeriesComparisonCheckTest</moduleInstanceId>
<valueType>scalar</valueType>
<parameterId>H.obs2</parameterId>
<locationId>location1</locationId>
<timeSeriesType>external historical</timeSeriesType>
<timeStep unit="minute" multiplier="15"/>
<readWriteMode>read only</readWriteMode>
</timeSeriesSet>
</variableDefinition>
<!-- referred to by locationset1 and locationset2-->
<variableDefinition>
<variableId>H_obs2_location2</variableId>
<timeSeriesSet>
<moduleInstanceId>SeriesComparisonCheckTest</moduleInstanceId>
<valueType>scalar</valueType>
<parameterId>H.obs2</parameterId>
<locationId>location2</locationId>
<timeSeriesType>external historical</timeSeriesType>
<timeStep unit="minute" multiplier="15"/>
<readWriteMode>read only</readWriteMode>
</timeSeriesSet>
</variableDefinition>
<variableDefinition>
<variableId>locationSet1</variableId>
<timeSeriesSet>
<moduleInstanceId>SeriesComparisonCheckTest</moduleInstanceId>
<valueType>scalar</valueType>
<parameterId>H.obs</parameterId>
<locationSetId>locationset1</locationSetId>
<timeSeriesType>external historical</timeSeriesType>
<timeStep unit="minute" multiplier="15"/>
<readWriteMode>read only</readWriteMode>
</timeSeriesSet>
</variableDefinition>
<variableDefinition>
<variableId>locationSet2</variableId>
<timeSeriesSet>
<moduleInstanceId>SeriesComparisonCheckTest</moduleInstanceId>
<valueType>scalar</valueType>
<parameterId>H.obs</parameterId>
<locationSetId>locationset2</locationSetId>
<timeSeriesType>external historical</timeSeriesType>
<timeStep unit="minute" multiplier="15"/>
<readWriteMode>read only</readWriteMode>
</timeSeriesSet>
</variableDefinition>
<checkRelativePeriod unit="hour" start="-12" end="0"/>
<expression>locationSet1 .ne. locationSet2</expression>
<validatingVariableId>locationSet1</validatingVariableId>
<validatingVariableId>locationSet2</validatingVariableId>
<outputFlag>unreliable</outputFlag>
</seriesComparisonCheck>
</secondaryValidation>
|
...