Overview

This import is available in DELFT-FEWS versions after 28-10-2008

Imports time series data in ASCII format from MATROOS Forecast databases. The import reader creaters PhP URL's for direct data retrieving from Matroos. There are three types of NOOS URL's supported by the NOOS import function:

  1. get_series.php for direct retrieval of scalar time series.
  2. get_maps1d_series.php for retrieval of scalar time series from the Matroos maps1d database.
  3. get_map2series.php for retrieval of scalar time series from the Matroos map data, interpolated in space

More information on the retrieval of time series from Matroos can be found on: http://matroos.deltares.nl/direct/index.html

For the three types of series retrieval URL's three import readers have been made in FEWS:

  1. noos_timeseries
  2. noos_1dmapseries
  3. noos_mapseries

Configuring the Import

An example of the noos_timeseries configuration will be given here. The reader is named noos_timeseries which should be configured in the general section of the import. The general section must also contain the server URL and a correct username and password if you need to log-in. The relativeViewPeriod in the general section is used to select the period to retrieve data for.
Special attention should be given to the timezone; FEWS retrieves all Noos data from the Matroos database in GMT.

An example import configuration is shown below:

<?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>noos_timeseries</importType>
		<serverUrl>http://matroos.deltares.nl/direct</serverUrl>
		<user>dummy_username</user>
		<password>dummy_password</password>
		<relativeViewPeriod unit="hour" start="-12" end="36" startOverrulable="true" endOverrulable="true"/>
		<idMapId>IdImportMatroos</idMapId>
		<unitConversionsId>ImportUnitConversions</unitConversionsId>
		<importTimeZone>
			<timeZoneOffset>+00:00</timeZoneOffset>
		</importTimeZone>
		<dataFeedId>Matroos</dataFeedId>
	</general>
	<timeSeriesSet>
		<moduleInstanceId>ImportMatroos</moduleInstanceId>
		<valueType>scalar</valueType>
		<parameterId>H.astronomisch</parameterId>
		<locationId>hoekvanholland</locationId>
		<timeSeriesType>external historical</timeSeriesType>
		<timeStep unit="minute" multiplier="10"/>
		<readWriteMode>add originals</readWriteMode>
		<synchLevel>1</synchLevel>
	</timeSeriesSet>
  </import>
</timeSeriesImportRun>

Configuring locationSet

When a locationSet or multiple time series sets are configured in the import module instance, the Noos readers will construct URL's for each time series and retreive the data from the Matroos database sequentially. An improvement of the import readers could be to construct a more complex URL and retreive the data for multiple time series in one URL query.

Configuring ID mapping

The IdMapping configuration is very important because this maps the internal FEWS Id's to the Matroos Id's. In the IdMapping the following FEWS and Matroos elements are mapped:

  • the FEWS externalLocation is used to map the Matroos loc or node element
  • the FEWS externalParameter is used to map the Matroos unit element
  • the FEWS externalParameterQualifier is used to map the Matroos source element

In case the noos_mapseries reader is used, the FEWS externalLocation is used to map a fews Matroos loc elements, namely coordsys, x and y.

An example IdMapping file for the noos_timeseries and noos_1dmapseries readers is shown below:

<?xml version="1.0" encoding="UTF-8"?>
<idMap version="1.1" 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/idMap.xsd">
  <map internalParameter="H.astronomisch" internalLocation="hoekvanholland" externalLocation="hoekvanholland" 
           externalParameter="waterlevel_astro" externalParameterQualifier="observed"/>
</idMap>

An example IdMapping file for the noos_mapseries reader is shown below:

<?xml version="1.0" encoding="UTF-8"?>
<idMap version="1.1" 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/idMap.xsd">
  <map internalParameter="H.astronomisch" internalLocation="hoekvanholland" externalLocation="&amp;coordsys=RD&amp;x=52670&amp;y=449847" 
           externalParameter="waterlevel_astro" externalParameterQualifier="observed"/>
</idMap>


Configuring Properties

For maps1d_series it is possible to configure further properties. Example:

maps1d_series example
<?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>noos_1dmapseries</importType>
         <serverUrl>http://matroos.deltares.nl/direct</serverUrl>
         <user>dummy_username</user>
         <password>dummy_password</password>
         <relativeViewPeriod unit="day" start="-6" end="3" startOverrulable="true" endOverrulable="true"/>
         <importTimeZone>
            <timeZoneOffset>+00:00</timeZoneOffset>
         </importTimeZone>
      </general>
      <properties>
         <bool key="ignore_ensemble" value="false"/>
		 <bool key="add_current_time" value="true"/>
		 <bool key="last_analysis" value="true"/>
		 <bool key="use_node_id" value="false"/>
      </properties>
      <timeSeriesSet>
         <moduleInstanceId>NoosImport</moduleInstanceId>
         <valueType>scalar</valueType>
         <parameterId>discharge</parameterId>
         <qualifierId>fews_riv_ecmwf_ens_ext_hbv_rijn</qualifierId>
         <locationId>Lobith</locationId>
         <timeSeriesType>external historical</timeSeriesType>
         <timeStep unit="hour" multiplier="1"/>
         <readWriteMode>add originals</readWriteMode>
         <ensembleId>Mogyi</ensembleId>
         <ensembleMemberIndexRange start="2" end="47" />

      </timeSeriesSet>
   </import>
</timeSeriesImportRun>

last_analysis is default false. If it is set to true, it adds the last analyses to the request url.
add_current_time is default false. If it is set to true, it adds the current time to the request url.

ignore_ensemble is default true. If it is set to false, it will fetch the specified realizations from the database. If it is set to false, the time series configurations need to contain an <ensembleId> (can be anything, except main), and an <ensembleMemberIndex> or <ensembleMemberIndexRange>.
use_node_id is default false. Set it to true if you wish to configure that the query contains node_id instead of node. The value of the node id should be the external location id.

 

The NOOS file format

#------------------------------------------------------
# Timeseries retrieved from the MATROOS maps1d database
# Created at Tue Oct 28 20:33:51 CET 2008
#------------------------------------------------------
# Location    : MAMO001_0
# Position    : (64040,444970)
# Source      : sobek_hmr
# Unit        : waterlevel
# Analyse time: 200709020100
# Timezone    : MET
#------------------------------------------------------
200709010000   -0.387653201818466
200709010010   -0.395031750202179
200709010020   -0.407451331615448
200709010030   -0.414252400398254
200709010040   -0.425763547420502
200709010050   -0.43956795334816
200709010100   -0.309808939695358
200709010110   -0.297703713178635
200709010120   -0.289261430501938
200709010130   -0.256232291460037
  • No labels