Overview

Imports time series data from the KNMI CSV files that are delivered to Dutch waterboards. The files contain both daily rainfall and evaporation.
The files have an extension of "*.dat". The files with evaporation data have recently been extended with an additional column with information about the status of the data O for and G

De additional column is called: STATUS.

G=gevalideerd / validated

O=ongevalideerd / unvalidated

When this column is present, the importtype KNMICSV cannot be used anymore, but instead you can use the generalCSV importtype.

Configuration (Example)

A complete import module configuration consists of an ID Mapping file and a Import Module Instance file.

ModuleConfigFiles/

The following example of an Import Module Instance will import the time series as equidistant daily series for timezone GMT+1 hour. Notice that FEWS should store the time at the end of the day. Therefore the import timezone should be -23:00 instead of +01:00.

ImportKNMI.xml
<?xml version="1.0" encoding="UTF-8"?>
<timeSeriesImportRun ......">
  <import>
    <general>
      <importType>KNMICSV</importType>
      <folder>$IMPORT_FOLDER_KNMI$</folder>
      <failedFolder>$IMPORT_FAILED_FOLDER_KNMI$</failedFolder>
      <backupFolder>$IMPORT_BACKUP_FOLDER_KNMI$</backupFolder>
      <idMapId>IdImportKNMI</idMapId>
      <unitConversionsId>ImportUnitConversions</unitConversionsId>
      <importTimeZone>
        <timeZoneOffset>-23:00</timeZoneOffset>
      </importTimeZone>
      <dataFeedId>KNMI</dataFeedId>
    </general>
    <timeSeriesSet>
      <moduleInstanceId>ImportKNMI</moduleInstanceId>
      <valueType>scalar</valueType>
      <parameterId>P.meting</parameterId>
      <locationSetId>KNMI_P.meting_dag</locationSetId>
      <timeSeriesType>external historical</timeSeriesType>
      <timeStep unit="second" multiplier="86400" timeZone="GMT+1"/>
      <readWriteMode>add originals</readWriteMode>
      <synchLevel>1</synchLevel>
    </timeSeriesSet>
    <timeSeriesSet>
      <moduleInstanceId>ImportKNMI</moduleInstanceId>
      <valueType>scalar</valueType>
      <parameterId>E.ref.Makkink</parameterId>
      <locationSetId>KNMI_E.ref.Makkink_dag</locationSetId>
      <timeSeriesType>external historical</timeSeriesType>
      <timeStep unit="second" multiplier="86400" timeZone="GMT+1"/>
      <readWriteMode>add originals</readWriteMode>
      <synchLevel>1</synchLevel>
    </timeSeriesSet>
  </import>
</timeSeriesImportRun>

IdMapFiles/

Defines mappings between KNMI and FEWS parameters and locations.

sample of MapIdKNMI.xml
  <map internalParameter="P.meting" internalLocation="KNMIAO" externalParameter="910" externalLocation="910"/>
  <map internalParameter="P.meting" internalLocation="KNMIDN" externalParameter="908" externalLocation="908"/>
  <map internalParameter="P.meting" internalLocation="KNMIDT" externalParameter="911" externalLocation="911"/>

Important in this configuration is the externalParameter and the externalLocation have the same identifier.

Example File/

ab0115a_aamaas.dat
  892,20070601,    42
  892,20070602,     0
  892,20070603,     0
  892,20070604,     0
  892,20070605,     0
  892,20070606,     0
  892,20070607,     0
  892,20070608,     0
  892,20070609,   216
  892,20070610,     6
  892,20070611,   154
  892,20070612,     0
  892,20070613,     0
  892,20070614,     0
  892,20070615,    83
  892,20070616,     5
  892,20070617,    30
........

Java source code

KnmiCsvTimeSeriesParser.java

  • No labels