Dependency perl code

Auxiliary information

Auxiliary information is required if either

  • a parent file is from an earlier or later date to its child file, or
  • only a subset of a type is wanted.
Auxiliary information is added to the end of a parent filename and sandwiched between the character `[*' and '*]', e.g.
/tmp/rawYEAR-MONTH-MDAY.dat[*MINUS1DAY,YEAR=2009-2011*]
where the string MINUS1DAY indicates that this parent file is one day before its child file, and the string YEAR=2009-2011 indicates that only the years 2009 and 2011 are required. More information is given in the sections below.

Parent files from an earlier or later date

Specifying that a parent file is from an earlier time than its child is done with the MINUS string, and a later time with the PLUS string. This is then followed by an integer and then the units, where the units can be DAY, MONTH or YEAR and the integer specifies how many of these units. Here's some examples

  • PLUS2DAY: the parent file is 2 days later than the child file, so a child file from 22nd Jan 2009, say /home/data/raw2009-01-22.dat, requires the parent file from 24 Jan 2009, say /tmp/raw2009-01-24.dat.
  • MINUS1MONTH: the parent file is 1 month before the child file, so a child file from 22nd Jan 2009, say /home/data/raw2009-01-22.dat, requires the parent file from 22 Dec 2008, say /tmp/raw 2008-12-22.dat.

Specify a subset of time

Having created many members of a file type, sometimes only a subset of this file type is required for the creation of another file type. This can be specified by using the strings

  • YEAR=year, where year contains the wanted years
  • MONTH=month, where month contains the wanted months
  • MDAY=mday, where mday contains the wanted days of the month.
The arguments here, year, month and mday, can be one number or range with the number separated with a dash (09-21).

The reason for specifying a parent file as

$homeDir$/rawYEAR-MONTH-MDAY.dat[*YEAR=2009*]

rather than simply replacing the year with 2009, i.e.
$homeDir$/raw2009-MONTH-MDAY.dat

is when the file type $homeDir$/rawYEAR-MONTH-MDAY.dat should be created earlier. Members of $homeDir$/raw2009-MONTH-MDAY.dat will be not be recognised by the DPC as being of type $homeDir$/rawYEAR-MONTH-MDAY.dat, but members of $homeDir$/rawYEAR-MONTH-MDAY.dat[*YEAR=2009*] will. Hence the children of $homeDir$/raw2009-MONTH-MDAY.dat are likely to be inserted by the DPC at too early a level. In which case, the DPC would try to create the children of $homeDir$/raw2009-MONTH-MDAY.dat before creating the $homeDir$/rawYEAR-MONTH-MDAY.dat files.

Things to do now

Contact

Page navigation