The sqldb variable in the CONFIGURATION archive contains definitions of data export to an external relational SQL database.

The configuration is spit into profiles defining sets of output tables. Each profile contains a set of tables that are all updated with the same time range when the profile is used. The table definitions contain a list of columns that are updated with values from the CPD3 system.

For example, a common definition is to update hourly and minute data in two tables with the same profile.

General Settings

/Profiles
Description

Database output generation profile configuration

Keys

The keys immediately below this are profile names that are selected by the application. For example, aerosol is the commonly used default profile. However, any non-empty name is acceptable and can be used to create customized configurations that can be selected at run time. In general, profile names should be all lower case to preserve case insensitivity. In the paths listed <PROFILE> is used as a placeholder to real profile name (e.g. replace <PROFILE> with aerosol for the default profile).

/Profiles/<PROFILE>
Description

Table generation types

Keys

The keys immediately below this are unique names selected by the user. These names can be any non-empty text and are generally used to designate different components to be configured. In the paths listed <IDENTIFIER> is used as a placeholder to real name selected during configuration.

/Profiles/<PROFILE>/<IDENTIFIER>/Columns
Description

Table columns, keyed on the SQL column name

Keys

The keys immediately below this are unique names selected by the user. These names can be any non-empty text and are generally used to designate different components to be configured. In the paths listed <IDENTIFIER> is used as a placeholder to real name selected during configuration.

/Profiles/<PROFILE>/<IDENTIFIER>/Columns/<IDENTIFIER>/Key
Description

Indicate that this column is part of the table key and needs to be merged appropriately

Type

Boolean, values are TRUE or FALSE and defaults to FALSE

/Profiles/<PROFILE>/<IDENTIFIER>/Columns/<IDENTIFIER>/Type
Description

Column output type

Type

Enumeration

Values

This is an enumeration value. It accepts a single string (not case sensitive) from a list of possible choices. Possible values:

  • Value - Simple direct value output

  • Constant - Fill the column with a constant value

  • Generic or General - Automatic type conversion of values

  • Date - An SQL date of the incoming data

  • DateTime - An SQL datetime of the incoming data

  • DateTimeFormat - Date and/or time of the incoming data formatted to a string

  • DOY or DayOfYear - The day of year of the incoming data

  • Epoch - The Unix epoch time of data

  • FractionalYear or FYear - The fractional year of the incoming data

  • Hour or HourOfDay - The hour of day of the incoming data

  • Time - An SQL time of the incoming data

  • Year - The integer year of the incoming data

/Profiles/<PROFILE>/<IDENTIFIER>/Columns/<IDENTIFIER>/Value
Required conditions
  • /Profiles/<PROFILE>/<IDENTIFIER>/Columns/<IDENTIFIER>/Type = Constant

Description

Constant value to fill the column with

Keys

The keys below this one have an arbitrary structure. That is, the exact contents are not directly interpreted by the system so they are defined by conventions or subsequent usage.

/Profiles/<PROFILE>/<IDENTIFIER>/Columns/<IDENTIFIER>/MVC
Excluding conditions
  • /Profiles/<PROFILE>/<IDENTIFIER>/Columns/<IDENTIFIER>/Type = Constant

Description

Missing value code written to the column value when no valid value is available

Keys

The keys below this one have an arbitrary structure. That is, the exact contents are not directly interpreted by the system so they are defined by conventions or subsequent usage.

/Profiles/<PROFILE>/<IDENTIFIER>/Columns/<IDENTIFIER>/Path
Required conditions
  • /Profiles/<PROFILE>/<IDENTIFIER>/Columns/<IDENTIFIER>/Type = Generic

Description

Path within the input values

Type

Text

/Profiles/<PROFILE>/<IDENTIFIER>/Columns/<IDENTIFIER>/Value
Required conditions
  • /Profiles/<PROFILE>/<IDENTIFIER>/Columns/<IDENTIFIER>/Type = Generic

Description

Input value

Type

Sequence Selection

Structure

A sequence selection is a means of selecting a sequence of values in the data. The specification consists of selections for the various components of the sequence name.

/Profiles/<PROFILE>/<IDENTIFIER>/Columns/<IDENTIFIER>/Position
Required conditions
  • /Profiles/<PROFILE>/<IDENTIFIER>/Columns/<IDENTIFIER>/Type = Epoch

Description

Time position of the segment/row to use

Type

Enumeration

Values

This is an enumeration value. It accepts a single string (not case sensitive) from a list of possible choices. Possible values:

  • Start - Start time of the segment of data

  • End - End time of the segment of data

  • Middle or Center - Central time of the segment of data

/Profiles/<PROFILE>/<IDENTIFIER>/Columns/<IDENTIFIER>/Position
Required conditions
  • /Profiles/<PROFILE>/<IDENTIFIER>/Columns/<IDENTIFIER>/Type = DateTime

Description

Time position of the segment/row to use

Type

Enumeration

Values

This is an enumeration value. It accepts a single string (not case sensitive) from a list of possible choices. Possible values:

  • Start - Start time of the segment of data

  • End - End time of the segment of data

  • Middle or Center - Central time of the segment of data

/Profiles/<PROFILE>/<IDENTIFIER>/Columns/<IDENTIFIER>/Position
Required conditions
  • /Profiles/<PROFILE>/<IDENTIFIER>/Columns/<IDENTIFIER>/Type = DateTimeFormat

Description

Time position of the segment/row to use

Type

Enumeration

Values

This is an enumeration value. It accepts a single string (not case sensitive) from a list of possible choices. Possible values:

  • Start - Start time of the segment of data

  • End - End time of the segment of data

  • Middle or Center - Central time of the segment of data

/Profiles/<PROFILE>/<IDENTIFIER>/Columns/<IDENTIFIER>/TimeFormat
Required conditions
  • /Profiles/<PROFILE>/<IDENTIFIER>/Columns/<IDENTIFIER>/Type = DateTimeFormat

Description

Time format string, refer to Qt documentation for available substitutions

Type

Text

/Profiles/<PROFILE>/<IDENTIFIER>/Columns/<IDENTIFIER>/Position
Required conditions
  • /Profiles/<PROFILE>/<IDENTIFIER>/Columns/<IDENTIFIER>/Type = Date

Description

Time position of the segment/row to use

Type

Enumeration

Values

This is an enumeration value. It accepts a single string (not case sensitive) from a list of possible choices. Possible values:

  • Start - Start time of the segment of data

  • End - End time of the segment of data

  • Middle or Center - Central time of the segment of data

/Profiles/<PROFILE>/<IDENTIFIER>/Columns/<IDENTIFIER>/Position
Required conditions
  • /Profiles/<PROFILE>/<IDENTIFIER>/Columns/<IDENTIFIER>/Type = Time

Description

Time position of the segment/row to use

Type

Enumeration

Values

This is an enumeration value. It accepts a single string (not case sensitive) from a list of possible choices. Possible values:

  • Start - Start time of the segment of data

  • End - End time of the segment of data

  • Middle or Center - Central time of the segment of data

/Profiles/<PROFILE>/<IDENTIFIER>/Columns/<IDENTIFIER>/Position
Required conditions
  • /Profiles/<PROFILE>/<IDENTIFIER>/Columns/<IDENTIFIER>/Type = Hour

Description

Time position of the segment/row to use

Type

Enumeration

Values

This is an enumeration value. It accepts a single string (not case sensitive) from a list of possible choices. Possible values:

  • Start - Start time of the segment of data

  • End - End time of the segment of data

  • Middle or Center - Central time of the segment of data

/Profiles/<PROFILE>/<IDENTIFIER>/Columns/<IDENTIFIER>/Position
Required conditions
  • /Profiles/<PROFILE>/<IDENTIFIER>/Columns/<IDENTIFIER>/Type = Year

Description

Time position of the segment/row to use

Type

Enumeration

Values

This is an enumeration value. It accepts a single string (not case sensitive) from a list of possible choices. Possible values:

  • Start - Start time of the segment of data

  • End - End time of the segment of data

  • Middle or Center - Central time of the segment of data

/Profiles/<PROFILE>/<IDENTIFIER>/Columns/<IDENTIFIER>/Position
Required conditions
  • /Profiles/<PROFILE>/<IDENTIFIER>/Columns/<IDENTIFIER>/Type = FractionalYear

Description

Time position of the segment/row to use

Type

Enumeration

Values

This is an enumeration value. It accepts a single string (not case sensitive) from a list of possible choices. Possible values:

  • Start - Start time of the segment of data

  • End - End time of the segment of data

  • Middle or Center - Central time of the segment of data

/Profiles/<PROFILE>/<IDENTIFIER>/Columns/<IDENTIFIER>/Position
Required conditions
  • /Profiles/<PROFILE>/<IDENTIFIER>/Columns/<IDENTIFIER>/Type = DOY

Description

Time position of the segment/row to use

Type

Enumeration

Values

This is an enumeration value. It accepts a single string (not case sensitive) from a list of possible choices. Possible values:

  • Start - Start time of the segment of data

  • End - End time of the segment of data

  • Middle or Center - Central time of the segment of data

/Profiles/<PROFILE>/<IDENTIFIER>/Columns/<IDENTIFIER>/Value
Required conditions
  • /Profiles/<PROFILE>/<IDENTIFIER>/Columns/<IDENTIFIER>/Type = Generic

Description

Column input value

Type

Dynamic Real Value Input

Structure

This is a specification of a single real valued input used in calculation. The specification generally takes the form of either a value from the data or a constant.

/Profiles/<PROFILE>/<IDENTIFIER>/Input
Description

Whole table data input selection

Type

Sequence Selection

Structure

A sequence selection is a means of selecting a sequence of values in the data. The specification consists of selections for the various components of the sequence name.

/Profiles/<PROFILE>/<IDENTIFIER>/Processing/Additional
Description

Additional inputs requested for processing

Type

Sequence Selection

Structure

A sequence selection is a means of selecting a sequence of values in the data. The specification consists of selections for the various components of the sequence name.

/Profiles/<PROFILE>/<IDENTIFIER>/Processing/Components
Description

Processing chain stages

Keys

The keys immediately below this are array indices. These are indexes into an ordered list, with the first element being zero. For example, #0 is the first element of the array. The paths represented here use #0 as a placeholder for all indices.

/Profiles/<PROFILE>/<IDENTIFIER>/Processing/Components/#0/Name
Description

Data generating component name

Type

Text

/Profiles/<PROFILE>/<IDENTIFIER>/Processing/Input/End
Description

The end time to invoke the generator with

Type

Real number

Units

s

Undefined values

Not permitted

/Profiles/<PROFILE>/<IDENTIFIER>/Processing/Input/End
Description

The end time to invoke the generator with

Structure

This is an absolute point in time specified as the number of seconds from the Unix epoch (1970-01-01T00:00:00Z).

/Profiles/<PROFILE>/<IDENTIFIER>/Processing/Input/File
Description

Input file name used with the generator

Type

Text

/Profiles/<PROFILE>/<IDENTIFIER>/Processing/Input/IgnoreTimes
Description

Do not provide times to the input generator

Type

Boolean, values are TRUE or FALSE and defaults to FALSE

/Profiles/<PROFILE>/<IDENTIFIER>/Processing/Input/Merge
Description

Allow merging of identical processing inputs

Type

Boolean, values are TRUE or FALSE and defaults to FALSE

/Profiles/<PROFILE>/<IDENTIFIER>/Processing/Input/Name
Description

Data generating component name

Type

Text

/Profiles/<PROFILE>/<IDENTIFIER>/Processing/Input/Start
Description

The start time to invoke the generator with

Type

Real number

Units

s

Undefined values

Not permitted

/Profiles/<PROFILE>/<IDENTIFIER>/Processing/Input/Start
Description

The start time to invoke the generator with

Structure

This is an absolute point in time specified as the number of seconds from the Unix epoch (1970-01-01T00:00:00Z).

/Profiles/<PROFILE>/<IDENTIFIER>/Processing/Input/Station
Description

Input station used with the generator

Type

Text

/Profiles/<PROFILE>/<IDENTIFIER>/Processing/Merge
Description

Allow merging of identical processing chains

Type

Boolean, values are TRUE or FALSE and defaults to FALSE

/Profiles/<PROFILE>/<IDENTIFIER>/Processing/MergeKey
Description

The unique identifier that must match for chain merging

Type

Text

/Profiles/<PROFILE>/<IDENTIFIER>/Purge/Type
Description

Data removal type

Type

Enumeration

Values

This is an enumeration value. It accepts a single string (not case sensitive) from a list of possible choices. Possible values:

  • None, Disable, or Disabled - No data explicitly removed, only replaced or added

  • Date - Data removal keyed on a date (no time) column

  • DateAndHour - Data removal keyed on separate date and hour of day columns

  • DateAndTime - Data removal keyed on separate date and time columns

  • DateTime - Data removal keyed on a logical datetime column

  • Epoch - Data removal key on Unix epoch time (seconds since 1970-01-01T00:00:00Z)

  • FractionalYear or FYear - Data removal keyed on a fractional year column

  • YearAndDOY or YearDOY - Data removal keyed on year and day of year columns

/Profiles/<PROFILE>/<IDENTIFIER>/Purge/Epoch
Required conditions
  • /Profiles/<PROFILE>/<IDENTIFIER>/Purge/Type = Epoch

Description

Unix epoch column name

Type

Text

/Profiles/<PROFILE>/<IDENTIFIER>/Purge/DateTime
Required conditions
  • /Profiles/<PROFILE>/<IDENTIFIER>/Purge/Type = DateTime

Description

Datetime combined column name

Type

Text

/Profiles/<PROFILE>/<IDENTIFIER>/Purge/Date
Required conditions
  • /Profiles/<PROFILE>/<IDENTIFIER>/Purge/Type = Date

Description

Date column name

Type

Text

/Profiles/<PROFILE>/<IDENTIFIER>/Purge/Year
Required conditions
  • /Profiles/<PROFILE>/<IDENTIFIER>/Purge/Type = FractionalYear

Description

Year column name

Type

Text

/Profiles/<PROFILE>/<IDENTIFIER>/Purge/Date
Required conditions
  • /Profiles/<PROFILE>/<IDENTIFIER>/Purge/Type = DateAndTime

Description

Date column name

Type

Text

/Profiles/<PROFILE>/<IDENTIFIER>/Purge/Time
Required conditions
  • /Profiles/<PROFILE>/<IDENTIFIER>/Purge/Type = DateAndTime

Description

Time column name

Type

Text

/Profiles/<PROFILE>/<IDENTIFIER>/Purge/Date
Required conditions
  • /Profiles/<PROFILE>/<IDENTIFIER>/Purge/Type = DateAndHour

Description

Date column name

Type

Text

/Profiles/<PROFILE>/<IDENTIFIER>/Purge/Hour
Required conditions
  • /Profiles/<PROFILE>/<IDENTIFIER>/Purge/Type = DateAndHour

Description

Hour of day column name

Type

Text

/Profiles/<PROFILE>/<IDENTIFIER>/Purge/Date
Required conditions
  • /Profiles/<PROFILE>/<IDENTIFIER>/Purge/Type = YearAndDOY

Description

Year column name

Type

Text

/Profiles/<PROFILE>/<IDENTIFIER>/Purge/Hour
Required conditions
  • /Profiles/<PROFILE>/<IDENTIFIER>/Purge/Type = YearAndDOY

Description

Day of year column name

Type

Text