Configuration File

Example

Latest version of the psa_config.json file.

The GEOGEN configuration file is in JSON format. The top-level GEOGEN configuration JSON object must include the following members:

name (string)

Free-form descriptive name of the configuration file. For example:

"name": "PSA configuration for operational use"
targets (array)

List of target JSON objects, defining the targets digital shape model (and optionally its body-fixed reference frame) common to all defined missions.

applicable_targets (array)

List of applicable PDS target names to all missions. An applicable target name is superseded by a mission primary target defined in its corresponding mission JSON object (see Target Assignment for more information). For example:

"applicable_targets": [
  "SOLAR WIND",
  "SOLARWIND",
  "PLASMA"
]
req_product_props (array)

List of req_product_prop JSON objects, defining the required properties common to all PDS3 and PDS4 data products.

missions (array)

List of mission JSON objects, defining the missions, instruments and data product types for which geometry metadata can be generated.

target

JSON object defining a target surface digital shape model (DSK) (and optionally its body-fixed reference frame) common to all defined missions. It can contain the following members:

name (string)

NAIF body name of the target.

dsk_file (string)

SPICE target surface DSK file path relative to the addendum directory.

frame (string, optional)

SPICE target body-fixed reference frame.

For example:

{
  "name": "CHURY",
  "frame": "67P/C-G_CK",
  "dsk_file": "ROS_CG_K104_NSPCESA_N_V1.BDS"
}

req_product_prop

JSON object defining the required properties that are common to all PDS3 and PDS4 data products. These data product properties must always be provided in any input Product List File (PLF). Property names should be lower case. Currently defined required properties are: product_id, instrument_host_id, instrument_id, product_type, target_name, start_time, and stop_time. It must contain the following members:

name (string)

Name of the required common PDS data product property.

path (object)
PDS3 (string)

PDS3 label “path” to the required data product property.

PDS4 (string)

PDS4 XML label path to the required data product property.

For example:

{
  "name": "start_time",
  "path": {
    "PDS3": "START_TIME",
    "PDS4": "pds:Observation_Area/pds:Time_Coordinates/pds:start_date_time"
  }
}

mission

JSON object defining a mission instrument host, instruments and data product types for which geometry metadata can be generated. It must contain the following members:

id (string)

Mission’s spacecraft NAIF body name among allowed values, and synomys, are defined in PDS_NAIF_MAPPING. For example: MEX for Mars Express, ROSETTA for Rosetta, TGO for Trace Gas Orbiter, VEX for Venus Express, and S1 for SMART-1 mission.

primary_target (string)

NAIF body name of the primary target applicable to this mission. The primary target supersedes an input PLF target_name value that is not a SPICE-known natural solar system body and listed by the applicable_targets JSON member (see Target Assignment).

spice_kernels (array)

List of SPICE kernels paths applicable to this mission. Path to SPICE mission meta-kernel are absolute and can be specified using the $ESA_SPICE_KERNELS token. Paths to addendum kernels are relative to the addendum data directory. For example:

"spice_kernels": [
  "$ESA_SPICE_KERNELS/exomars2016/kernels/mk/em16_ops.tm",
  "tgo_addendum.ti"
]
pds_version (string)

PDS version applicable to this mission: can be either PDS3 or PDS4.

instruments (array)

List of instrument JSON objects, defining the instruments and data product types for which geometry metadata can be generated.

instrument

JSON object defining the instrument data product types for which geometry metadata can be generated. It must contain the following members:

id (string)

PDS instrument identifier matching input PLF instrument_id values. For example: ASPERA-3 for the Mars Express mission.

products (array)

List of product JSON objects, defining the instrument data products types for which geometry metadata can be generated for this instrument.

product

JSON object defining an instrument data product type for which geometry metadata can be generated. It must contain the following members:

type (string)

Data product type matching input PLF product_type values, for example: EDR, REDR, RDR, Raw or Calibrated.

py_class (string)

Name of the Python Product-child class to be used for deriving product properties required to generate corresponding observation geometry metadata (see Instrument Product classes).

req_props (array)

List of req_prop JSON objects, defining required data product properties for this product type.

req_prop

JSON object defining the data product properties for a given product type. It must contain the following members:

name (string)

Name of the required property. Property names should be lower case.

path (string)

PDS3 or PDS4 XML label path of the required property:

  • PDS3 label keyword path is specified by the names of encapsulated PDS objects it is contained within (if any), separated by the / symbol, and ending with the keyword name.

  • PDS4 label property path is specified by its XPath expression, where pds namespace is required.

For example:

{
  "name": "core_items",
  "path": "QUBE/CORE_ITEMS"
}
{
  "name": "filter",
  "path": "pds:Observation_Area/pds:Mission_Area/em16_tgo_cas:Cassis_Data/em16_tgo_cas:HK_Derived_Data/em16_tgo_cas:filter"
}