Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

This functionality is available from Delft-FEWS version 2015.02 onwards.

For background of validation functionality and quality flags within Delft-FEWS, please see this presentation.

Use Cases

Validation Status should support the users in their specific validation practices and allow the users to confirm that the data has been adequately validated. The following use cases will be supported:

...

The flagSourceColumns can only contain the existing flagSources. Also see D Time Series Flags. These flagSources will automatically be set to the flagSource Column when a flag is changed in the respective validation step 


Primary Validation

 FlagSource

soft min.

SN

hard min.

HN

soft max.

SX

hard max.

HX

rate of rise

ROR

rate of fall

ROF

same reading

SR

temporary shift

TS

oscillationOSC

...

Secondary Validation

FlagSource

spatialHomogeneityCheck

SH

seriesComparisonCheck

SC

minReliableValuesCheck

RV

minReliableOrDoubtfulValuesCheck

RDV

minNumberOfValuesCheck

NV

minNonMissingValuesCheck

NM

mannKendallCheck

KT

flagsComparisonCheck

FC

flagPersistencyCheck

FP

...


To support transformation and visual validation steps, custom flagSources can be configured in the customFlagSources configuration file, see 27 CustomFlagSources.

 


Tranformation/Manual

 Custom FlagSource

default validation (success)

OK

Interpolation small gapSG
Interpolation large gapLG

...

An option 'Validation Steps' is available in the table view options (when flagSource Columns are configured). When this option is activated, all flagSource Columns that are either filled (the validation step has been performed) or are configured 'editable' will be shown next to the value column. The header of the flagSource Columns is equal to the configured 'shortName' and when the user hoovers above the header, a configured tooltip for the flagSource Column is shown.

 


The order in which the flagSourceColumns are configured should reflect the sequence of the respective validation steps in the validation process. This order is also used in the timeseriesDisplay - tableview, when the 'Validation Steps' are visualized. Note that the order in the configuration file is from top (first validation step) to bottom (last validation step), in the interface the order is from right (first) to left (last). 

...

When a data value is deleted (either by the user or by a different action), the flagSources for that timestep will remain. For an individual value in the time series table, the history of that value can be shown using the right-mouse menu - Show history (CTRL+H). This menu also shows the 'state' of the flagSourceColumns for each time the value was changed in the datastore.

 


Anchor
ValidationStatus_timeOfValidity
ValidationStatus_timeOfValidity
Time of Validity

Since 2016.01 it is possible to open up 'Time of Validity' (Tv) related functionality in the timeSeries display, by configuring a timeOfValidity element in the flagSourceColumns.xml configuration file.  


Activating Time of Validity 'mode'

...

Besides the functionality as described below, when the Tv button from the toolbar is activated, the time series display will be set to 'edit mode' automatically. 


Definition Time of Validity

...

It is noted that the this automatic ordering of the display nodes within a (sub)directory will only be executed at the moment the Tv button is selected. When a validator wants to update the sorting, the Tv button can be de-activated and activated again. 


View period and cursor behaviour

...

Note: the cursor will update to the last time step for which data is available 


Update Tv flagSource column

...

The update will only take place for the view period of the display. When this update function is used when Tv is outside the view period of the display, a pop up will be displayed warning the user that a validation gap would be created. The update action will not be performed in this case. This might for example happen when the validator updates the flagSourceColumns using the functionality described above - without saving. Delft FEWS does not know in that case that the Tv should be updated, as the Time of Validity is only recalculated after the timeSeries have been saved. 


 


Export of flagSourceColumns

...

Code Block
xml
xml
<?xml version="1.0" encoding="UTF-8"?>
<timeSeriesImportRun 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/timeSeriesImportRun.xsd">
	<import>
		<general>
			<importType>generalCSV</importType>
			<folder>../junit_test_output/nl/wldelft/fews/system/plugin/dataImport/TimeSeriesImportTestData/import/generalcsv</folder>
			<table>
				<dateTimeColumn name="DATE" pattern="dd-MM-yy HH:mm"/>
				<locationColumn name="LOC"/>
				<unitColumn name="UNIT"/>
				<parameterColumn name="PARAM"/>
				<flagSourceColumn id="A" name="FS_A"/>
				<!-- column with name fs a will be mapped to the flag source column with identifier A -->
				<flagSourceColumn id="B" name="FS_B"/>
				<flagSourceColumn id="C" name="FS_C"/>
				<flagSourceColumn id="D" name="FS_D"/>
				<flagSourceColumn id="E" name="FS_E"/>
				<valueColumn name="VALUE"/>
			</table>
			<logWarningsForUnmappableLocations>true</logWarningsForUnmappableLocations>
			<logWarningsForUnmappableParameters>true</logWarningsForUnmappableParameters>
			<logWarningsForUnmappableQualifiers>true</logWarningsForUnmappableQualifiers>
			<maxLogWarnings>1000</maxLogWarnings>
			<missingValue>-999</missingValue>
			<importTimeZone>
				<timeZoneOffset>+01:00</timeZoneOffset>
			</importTimeZone>
			<dataFeedId>generalCSV</dataFeedId>
		</general>
	</import>
</timeSeriesImportRun>

...


The CSV file for this example could look like this: 


Code Block
none
none
DATE,LOC,VALUE,UNIT,PARAM,FS_A,FS_B,FS_C,FS_D,FS_E
01-01-81 00:00,H-2001,2.3,m,P.m,OK,OK,OK,OK,OK

Note that during import, the mapping goes from 'name' to 'id'. When importing the data, the flagSourceColumnId's should be configured in the flagSourceColumns configuration file.

...

It is not possible to copy flagSource columns in a transformation to another timeseries.