Keyword.java

  1. /* Copyright 2002-2018 CS Systèmes d'Information
  2.  * Licensed to CS Systèmes d'Information (CS) under one or more
  3.  * contributor license agreements.  See the NOTICE file distributed with
  4.  * this work for additional information regarding copyright ownership.
  5.  * CS licenses this file to You under the Apache License, Version 2.0
  6.  * (the "License"); you may not use this file except in compliance with
  7.  * the License.  You may obtain a copy of the License at
  8.  *
  9.  *   http://www.apache.org/licenses/LICENSE-2.0
  10.  *
  11.  * Unless required by applicable law or agreed to in writing, software
  12.  * distributed under the License is distributed on an "AS IS" BASIS,
  13.  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  14.  * See the License for the specific language governing permissions and
  15.  * limitations under the License.
  16.  */
  17. package org.orekit.files.ccsds;

  18. /** Keywords for CCSDS Navigation Data Messages.<p>
  19.  * Only these should be used.<p>
  20.  *  The enumeration is split in 3 parts:<p>
  21.  *  - Common NDM keywords;<p>
  22.  *  - Orbit Data Messages (ODM) specific keywords;<p>
  23.  *  - Tracking Data Messages (TDM) specific keywords.<p>
  24.  * References:<p>
  25.  * - <a href="https://public.ccsds.org/Pubs/502x0b2c1.pdf">CCSDS 502.0-B-2 recommended standard</a> ("Orbit Data Messages", Blue Book, Issue 2.0, November 2009).<p>
  26.  * - <a href="https://public.ccsds.org/Pubs/503x0b1c1.pdf">CCSDS 503.0-B-1 recommended standard</a> ("Tracking Data Message", Blue Book, Issue 1.0, November 2007).
  27.  * @author sports
  28.  * @author Maxime Journot
  29.  * @since 6.1
  30.  */
  31. public enum Keyword {

  32.     // ---------------------------------------------------
  33.     // Common NDM (Navigation Data Message) CCSDS keywords
  34.     // ---------------------------------------------------

  35.     /** Comments specific to a ODM file. */
  36.     COMMENT,
  37.     /** CCSDS OEM format version. */
  38.     CREATION_DATE,
  39.     /** Creating agency or operator. */
  40.     ORIGINATOR,
  41.     /** Time system used for state vector, maneuver, and covariance data. */
  42.     TIME_SYSTEM,
  43.     /** Epoch of state vector and optional Keplerian elements.
  44.      *  Or epoch of a TDM observation.
  45.      */
  46.     EPOCH,
  47.     /** Start of total time span covered by: <p>
  48.      * - Ephemerides data and covariance data;<p>
  49.      * - Tracking data session.
  50.      */
  51.     START_TIME,
  52.     /** End of total time span covered by: <p>
  53.      * - Ephemerides data and covariance data;<p>
  54.      * - Tracking data session.
  55.      */
  56.     STOP_TIME,
  57.     /** User defined parameter, where X is replaced by a variable length user specified character
  58.      *  string. Any number of user defined parameters may be included, if necessary to provide
  59.      *  essential information that cannot be conveyed in COMMENT statements. */
  60.     USER_DEFINED_X,
  61.     /** Keyword used to delineate the start of a Meta-data block. */
  62.     META_START,
  63.     /** Keyword used to delineate the end of a Meta-data block. */
  64.     META_STOP,

  65.     // -------------------------------------------
  66.     // Orbit Data Messages (ODM) specific keywords
  67.     // -------------------------------------------

  68.     /** CCSDS OPM format version. */
  69.     CCSDS_OPM_VERS,
  70.     /** CCSDS OMM format version. */
  71.     CCSDS_OMM_VERS,
  72.     /** File creation date in UTC. */
  73.     CCSDS_OEM_VERS,
  74.     /** Spacecraft name for which the orbit state is provided. */
  75.     OBJECT_NAME,
  76.     /** Object identifier of the object for which the orbit state is provided. */
  77.     OBJECT_ID,
  78.     /** Origin of reference frame. */
  79.     CENTER_NAME,
  80.     /** Name of the reference frame in which the state vector and optional Keplerian element data are given. */
  81.     REF_FRAME,
  82.     /** Epoch of reference frame, if not intrinsic to the definition of the reference frame. */
  83.     REF_FRAME_EPOCH,
  84.     /** Mean element theory. */
  85.     MEAN_ELEMENT_THEORY,
  86.     /** Position vector X-component. */
  87.     X,
  88.     /** Position vector Y-component. */
  89.     Y,
  90.     /** Position vector Z-component. */
  91.     Z,
  92.     /** Velocity vector X-component. */
  93.     X_DOT,
  94.     /** Velocity vector Y-component. */
  95.     Y_DOT,
  96.     /** Velocity vector Z-component. */
  97.     Z_DOT,
  98.     /** Orbit semi-major axis. */
  99.     SEMI_MAJOR_AXIS,
  100.     /** Mean Motion. */
  101.     MEAN_MOTION,
  102.     /** Orbit eccentricity. */
  103.     ECCENTRICITY,
  104.     /** Orbit inclination. */
  105.     INCLINATION,
  106.     /** Orbit right ascension of ascending node. */
  107.     RA_OF_ASC_NODE,
  108.     /** Orbit argument of pericenter. */
  109.     ARG_OF_PERICENTER,
  110.     /** Orbit true anomaly. */
  111.     TRUE_ANOMALY,
  112.     /** Orbit mean anomaly.*/
  113.     MEAN_ANOMALY,
  114.     /** Gravitational coefficient. */
  115.     GM,
  116.     /** Spacecraft mass. */
  117.     MASS,
  118.     /** Solar radiation pressure area. */
  119.     SOLAR_RAD_AREA,
  120.     /** Solar radiation pressure coefficient. */
  121.     SOLAR_RAD_COEFF,
  122.     /** Drag area. */
  123.     DRAG_AREA,
  124.     /** Drag coefficient. */
  125.     DRAG_COEFF,
  126.     /** Ephemeris type. */
  127.     EPHEMERIS_TYPE,
  128.     /** Classification type. */
  129.     CLASSIFICATION_TYPE,
  130.     /** NORAD catalogue number. */
  131.     NORAD_CAT_ID,
  132.     /** Element set number of the satellite. */
  133.     ELEMENT_SET_NO,
  134.     /** Revolution Number. */
  135.     REV_AT_EPOCH,
  136.     /** SGP/SGP4 drag-like coefficient. */
  137.     BSTAR,
  138.     /** First Time Derivative of the Mean Motion. */
  139.     MEAN_MOTION_DOT,
  140.     /** Second Time Derivative of the Mean Motion. */
  141.     MEAN_MOTION_DDOT,
  142.     /** Coordinate system for covariance matrix. Its value can either be RSW, RTN (both indicating
  143.     /* "Radial, Transverse, Normal") or TNW. */
  144.     COV_REF_FRAME,
  145.     /** Covariance matrix [1, 1] element. */
  146.     CX_X,
  147.     /** Covariance matrix [2, 1] element. */
  148.     CY_X,
  149.     /** Covariance matrix [2, 2] element. */
  150.     CY_Y,
  151.     /** Covariance matrix [3, 1] element. */
  152.     CZ_X,
  153.     /** Covariance matrix [3, 2] element. */
  154.     CZ_Y,
  155.     /** Covariance matrix [3, 3] element. */
  156.     CZ_Z,
  157.     /** Covariance matrix [4, 1] element. */
  158.     CX_DOT_X,
  159.     /** Covariance matrix [4, 2] element. */
  160.     CX_DOT_Y,
  161.     /** Covariance matrix [4, 3] element. */
  162.     CX_DOT_Z,
  163.     /** Covariance matrix [4, 4] element. */
  164.     CX_DOT_X_DOT,
  165.     /** Covariance matrix [5, 1] element. */
  166.     CY_DOT_X,
  167.     /** Covariance matrix [5, 2] element. */
  168.     CY_DOT_Y,
  169.     /** Covariance matrix [5, 3] element. */
  170.     CY_DOT_Z,
  171.     /** Covariance matrix [5, 4] element. */
  172.     CY_DOT_X_DOT,
  173.     /** Covariance matrix [5, 5] element. */
  174.     CY_DOT_Y_DOT,
  175.     /** Covariance matrix [6, 1] element. */
  176.     CZ_DOT_X,
  177.     /** Covariance matrix [6, 2] element. */
  178.     CZ_DOT_Y,
  179.     /** Covariance matrix [6, 3] element. */
  180.     CZ_DOT_Z,
  181.     /** Covariance matrix [6, 4] element. */
  182.     CZ_DOT_X_DOT,
  183.     /** Covariance matrix [6, 5] element. */
  184.     CZ_DOT_Y_DOT,
  185.     /** Covariance matrix [6, 6] element. */
  186.     CZ_DOT_Z_DOT,
  187.     /** Epoch of ignition. */
  188.     MAN_EPOCH_IGNITION,
  189.     /** Maneuver duration (If = 0, impulsive maneuver). */
  190.     MAN_DURATION,
  191.     /** Mass change during maneuver (value is &lt; 0). */
  192.     MAN_DELTA_MASS,
  193.     /** Coordinate system for velocity increment vector. Its value can either be RSW, RTN (both
  194.      * indicating "Radial, Transverse, Normal") or TNW. */
  195.     MAN_REF_FRAME,
  196.     /** First component of the velocity increment. */
  197.     MAN_DV_1,
  198.     /** Second component of the velocity increment. */
  199.     MAN_DV_2,
  200.     /** Third component of the velocity increment. */
  201.     MAN_DV_3,
  202.     /** This keyword must appear before the first line of the covariance matrix data. */
  203.     COVARIANCE_START,
  204.     /** Start of useable time span covered by ephemerides data, it may be
  205.      * necessary to allow for proper interpolation. */
  206.     USEABLE_START_TIME,
  207.     /** End of useable time span covered by ephemerides data, it may be
  208.      * necessary to allow for proper interpolation. */
  209.     USEABLE_STOP_TIME,
  210.     /** The interpolation method to be used. */
  211.     INTERPOLATION,
  212.     /** The interpolation degree. */
  213.     INTERPOLATION_DEGREE,
  214.     /** This keyword must appear after the last line of the covariance matrix data. */
  215.     COVARIANCE_STOP,


  216.     // ----------------------------------------------
  217.     // Tracking Data Messages (TDM) specific keywords
  218.     // ----------------------------------------------

  219.     // TDM Header section
  220.     // ------------------

  221.     /** Header: TDM format version in the form of ‘x.y’, where ‘y’ shall be incremented for
  222.      *  corrections and minor changes, and ‘x’ shall be incremented for major changes.
  223.      *  <p>Obligatory: YES
  224.      */
  225.     CCSDS_TDM_VERS,

  226.     // TDM meta-data section
  227.     // ---------------------

  228.     /** Meta-data: PARTICIPANT_n, n = {1, 2, 3, 4, 5}.<p>
  229.      *  Participants in a tracking data sessions (spacecraft(s), ground station(s)...)
  230.      * <p>Obligatory: YES (at least 1)
  231.      */
  232.     PARTICIPANT_1,
  233.     /** Participant 2. */
  234.     PARTICIPANT_2,
  235.     /** Participant 3. */
  236.     PARTICIPANT_3,
  237.     /** Participant 4. */
  238.     PARTICIPANT_4,
  239.     /** Participant 5. */
  240.     PARTICIPANT_5,
  241.     /** Meta-data: Tracking mode associated with data section of the segment.<p>
  242.      *  - SEQUENTIAL: Applies only for range, Doppler, angles, and LOS ionosphere calibrations.
  243.      *                The name implies a sequential signal path between tracking participants;<p>
  244.      *  - SINGLE_DIFF: Applies for differenced data;<p>
  245.      *  - In other cases, such as troposphere, weather, clocks, etc., use of the MODE keyword does not apply.
  246.      *  <p>Obligatory: NO
  247.      */
  248.     MODE,
  249.     /** Meta-data: The PATH keywords shall reflect the signal path by listing the index of each PARTICIPANT
  250.      * in order, separated by commas, with no inserted white space.<p>
  251.      * The first entry in the PATH shall be the transmit participant.<p>
  252.      * The non-indexed ‘PATH’ keyword shall be used if the MODE is SEQUENTIAL.<p>
  253.      * The indexed ‘PATH_1’ and ‘PATH_2’ keywords shall be used where the MODE is SINGLE_DIFF.<p>
  254.      * Examples:<p>
  255.      *  - 1,2 = one-way;<p>
  256.      *  - 2,1,2 = two-way;<p>
  257.      *  - 3,2,1 = three-way;<p>
  258.      *  - 1,2,3,4 = four-way;<p>
  259.      *  - 1,2,3,2,1 = turn-around range with 1=primary station, 2=satellite, 3=secondary station.
  260.      *  <p>Obligatory: NO
  261.      */
  262.     PATH,
  263.     /** Path 1. */
  264.     PATH_1,
  265.     /** Path 2. */
  266.     PATH_2,
  267.     /** Frequency band for transmitted frequencies.
  268.      * <p>Obligatory: NO
  269.      */
  270.     TRANSMIT_BAND,
  271.     /** Meta-data: Frequency band for received frequencies.
  272.      * <p>Obligatory: NO
  273.      */
  274.     RECEIVE_BAND,
  275.     /** Meta-data: Turn-around ratio numerator. <p>
  276.      *  Numerator of the turn-around ratio that is necessary to calculate the coherent downlink from the uplink frequency.
  277.      *  <p>Obligatory: NO
  278.      */
  279.     TURNAROUND_NUMERATOR,
  280.     /** Meta-data: Turn-around ratio denominator.
  281.      * <p>Obligatory: NO
  282.      */
  283.     TURNAROUND_DENOMINATOR,
  284.     /** Meta-data: Timetag reference.<p>
  285.      *  Provides a reference for time tags in the tracking data.<p>
  286.      *  It indicates whether the timetag associated with the data is the transmit time or the receive time.
  287.      *  <p>Obligatory: NO
  288.      */
  289.     TIMETAG_REF,
  290.     /** Meta-data: Integration interval.<p>
  291.      *  Provides the Doppler count time in seconds for Doppler data or for the creation
  292.      *  of normal points.
  293.      *  <p>Obligatory: NO
  294.      */
  295.     INTEGRATION_INTERVAL,
  296.     /** Meta-data: Integration reference.<p>
  297.      *  Used in conjunction with timetag reference and integration interval.<p>
  298.      *  Indicates whether the timetag represents the start, middle or end of the integration interval.
  299.      *  <p>Obligatory: NO
  300.      */
  301.     INTEGRATION_REF,

  302.     /** Meta-data: Frequency offset.<p>
  303.      *  A frequency in Hz that must be added to every RECEIVE_FREQ to reconstruct it.
  304.      *  <p>Obligatory: NO
  305.      */
  306.     FREQ_OFFSET,
  307.     /** Meta-data: Range mode.<p>
  308.      *  COHERENT, CONSTANT or ONE_WAY.
  309.      *  <p>Obligatory: NO
  310.      */
  311.     RANGE_MODE,
  312.     /** Meta-data: Range modulus.<p>
  313.      *  Modulus of the range observable in the units as specified by the RANGE_UNITS keyword.
  314.      *  <p>Obligatory: NO
  315.      */
  316.     RANGE_MODULUS,
  317.     /** Meta-data: The RANGE_UNITS keyword specifies the units for the range observable.<p>
  318.      * ‘km’ shall be used if the range is measured in kilometers.<p>
  319.      * ‘s’ shall be used if the range is measured in seconds.<p>
  320.      * 'RU' for "range units'
  321.      * <p>Obligatory: NO
  322.      */
  323.     RANGE_UNITS,
  324.     /** Meta-data: The ANGLE_TYPE keyword shall indicate the type of antenna geometry represented in the angle data (ANGLE_1 and ANGLE_2 keywords).<p>
  325.      * The value shall be one of the following:<p>
  326.      * - AZEL for azimuth, elevation (local horizontal);<p>
  327.      * - RADEC for right ascension, declination or hour angle, declination (needs to be referenced to an inertial frame);<p>
  328.      * - XEYN for x-east, y-north;<p>
  329.      * - XSYE for x-south, y-east.
  330.      * <p>Obligatory: NO
  331.      */
  332.     ANGLE_TYPE,
  333.     /** Reference frame in which data are given: used in combination with ANGLE_TYPE=RADEC.
  334.      * <p>Obligatory: NO
  335.      */
  336.     REFERENCE_FRAME,
  337.     /** Meta-data: Transmit delays list (up to 5).<p>
  338.      *  Specifies a fixed interval of time, in seconds, for the signal to travel from the transmitting
  339.      *  electronics to the transmit point. Each item in the list corresponds to the each participants.
  340.      *  <p>Obligatory: NO
  341.      */
  342.     TRANSMIT_DELAY_1,
  343.     /** Second. */
  344.     TRANSMIT_DELAY_2,
  345.     /** Second. */
  346.     TRANSMIT_DELAY_3,
  347.     /** Second. */
  348.     TRANSMIT_DELAY_4,
  349.     /** Second. */
  350.     TRANSMIT_DELAY_5,
  351.     /** Meta-data: Receive delays list.<p>
  352.      *  Specifies a fixed interval of time, in seconds, for the signal to travel from the tracking
  353.      *  point to the receiving electronics. Each item in the list corresponds to the each participants.
  354.      *  <p>Obligatory: NO
  355.      */
  356.     RECEIVE_DELAY_1,
  357.     /** Second. */
  358.     RECEIVE_DELAY_2,
  359.     /** Second. */
  360.     RECEIVE_DELAY_3,
  361.     /** Second. */
  362.     RECEIVE_DELAY_4,
  363.     /** Second. */
  364.     RECEIVE_DELAY_5,
  365.     /** Meta-data: Data quality.<p>
  366.      *  Estimate of the quality of the data: RAW, DEGRADED or VALIDATED.
  367.      *  <p>Obligatory: NO
  368.      */
  369.     DATA_QUALITY,
  370.     /** Meta-data: Correction angle 1.<p>
  371.      *  Angle correction that has been added or should be added to the ANGLE_1 data.
  372.      *  <p>Obligatory: NO
  373.      */
  374.     CORRECTION_ANGLE_1,
  375.     /** Meta-data: Correction angle 2.<p>
  376.      *  Angle correction that has been added or should be added to the ANGLE_2 data.
  377.      *  <p>Obligatory: NO
  378.      */
  379.     CORRECTION_ANGLE_2,
  380.     /** Meta-data: Correction Doppler.<p>
  381.      *  Doppler correction that has been added or should be added to the DOPPLER data.
  382.      *  <p>Obligatory: NO
  383.      */
  384.     CORRECTION_DOPPLER,
  385.     /** Meta-data: Correction Range.<p>
  386.      *  Range correction that has been added or should be added to the RANGE data.
  387.      *  <p>Obligatory: NO
  388.      */
  389.     CORRECTION_RANGE,
  390.     /** Meta-data: Correction receive.<p>
  391.      *  Receive correction that has been added or should be added to the RECEIVE data.
  392.      *  <p>Obligatory: NO
  393.      */
  394.     CORRECTION_RECEIVE,
  395.     /** Meta-data: Correction transmit.<p>
  396.      *  Transmit correction that has been added or should be added to the TRANSMIT data.
  397.      *  <p>Obligatory: NO
  398.      */
  399.     CORRECTION_TRANSMIT,
  400.     /** Meta-data: Correction applied ? YES/NO<p>
  401.      *  Indicate whethers or not the values associated with the CORRECTION_* keywords have been
  402.      *  applied to the tracking data.
  403.      *  <p>Obligatory: NO
  404.      */
  405.     CORRECTIONS_APPLIED,


  406.     // TDM Data section
  407.     // ----------------

  408.     // Signal related keywords.
  409.     /** Data: Carrier power [dBW].<p>
  410.      *  Strength of the radio signal transmitted by the spacecraft as received at the ground station or at another spacecraft.
  411.      */
  412.     CARRIER_POWER,
  413.     /** Data: Doppler instantaneous [km/s].<p>
  414.      *  Instantaneous range rate of the spacecraft.
  415.      */
  416.     DOPPLER_INSTANTANEOUS,
  417.     /** Data: Doppler integrated [km/s].<p>
  418.      *  Mean range rate of the spacecraft over the INTEGRATION_INTERVAL specified in the meta-data section.
  419.      */
  420.     DOPPLER_INTEGRATED,
  421.     /** Data: Carrier power to noise spectral density ratio (Pc/No) [dBHz]. */
  422.     PC_N0,
  423.     /** Data: Ranging power to noise spectral density ratio (Pr/No) [dBHz]. */
  424.     PR_N0,
  425.     /** Data: Range value [km, s or RU].
  426.      * @see #RANGE_UNITS
  427.      */
  428.     RANGE,
  429.     /** Data: Received frequencies [Hz].<p>
  430.      * The RECEIVE_FREQ keyword shall be used to indicate that the values represent measurements of the received frequency.<p>
  431.      * The keyword is indexed to accommodate a scenario in which multiple downlinks are used.<p>
  432.      * RECEIVE_FREQ_n (n = 1, 2, 3, 4, 5)
  433.      */
  434.     RECEIVE_FREQ_1,
  435.     /** Received frequency 2. */
  436.     RECEIVE_FREQ_2,
  437.     /** Received frequency 3. */
  438.     RECEIVE_FREQ_3,
  439.     /** Received frequency 4. */
  440.     RECEIVE_FREQ_4,
  441.     /** Received frequency 5. */
  442.     RECEIVE_FREQ_5,
  443.     /** Data: Received frequency [Hz].<p>
  444.      *  Case without an index; where the frequency cannot be associated with a particular participant.
  445.      */
  446.     RECEIVE_FREQ,
  447.     /** Data: Transmitted frequencies [Hz].<p>
  448.      * The TRANSMIT_FREQ keyword shall be used to indicate that the values represent measurements of a transmitted frequency, e.g., from an uplink operation.<p>
  449.      * The TRANSMIT_FREQ keyword is indexed to accommodate scenarios in which multiple transmitters are used.<p>
  450.      * TRANSMIT_FREQ_n (n = 1, 2, 3, 4, 5)
  451.      */
  452.     TRANSMIT_FREQ_1,
  453.     /** Transmitted frequency 2. */
  454.     TRANSMIT_FREQ_2,
  455.     /** Transmitted frequency 3. */
  456.     TRANSMIT_FREQ_3,
  457.     /** Transmitted frequency 4. */
  458.     TRANSMIT_FREQ_4,
  459.     /** Transmitted frequency 5. */
  460.     TRANSMIT_FREQ_5,
  461.     /** Data: Transmitted frequencies rates [Hz/s].<p>
  462.      * The value associated with the TRANSMIT_FREQ_RATE_n keyword is the linear rate of
  463.      * change of the frequency TRANSMIT_FREQ_n starting at the timetag and continuing
  464.      *  until the next TRANSMIT_FREQ_RATE_n timetag (or until the end of the data).<p>
  465.      * TRANSMIT_FREQ_RATE_n (n = 1, 2, 3, 4, 5)
  466.      */
  467.     TRANSMIT_FREQ_RATE_1,
  468.     /** Transmitted frequency rate 2. */
  469.     TRANSMIT_FREQ_RATE_2,
  470.     /** Transmitted frequency rate 3. */
  471.     TRANSMIT_FREQ_RATE_3,
  472.     /** Transmitted frequency rate 4. */
  473.     TRANSMIT_FREQ_RATE_4,
  474.     /** Transmitted frequency rate 5. */
  475.     TRANSMIT_FREQ_RATE_5,

  476.     // VLBI/Delta-DOR Related Keywords
  477.     /** Data: DOR [s].<p>
  478.      * the DOR keyword represents the range measured via PATH_2 minus the range measured via PATH_1.
  479.      */
  480.     DOR,
  481.     /** Data: VLBI delay [s].<p>
  482.      * The observable associated with the VLBI_DELAY keyword represents the time of signal
  483.      * arrival via PATH_2 minus the time of signal arrival via PATH_1.
  484.      */
  485.     VLBI_DELAY,

  486.     // Angle Related Keywords
  487.     /** Data: ANGLE_1 in degrees and in [-180, +360[ [deg].<p>
  488.      * The value assigned to the ANGLE_1 keyword represents the azimuth, right ascension, or ‘X’
  489.      * angle of the measurement, depending on the value of the ANGLE_TYPE keyword.<p>
  490.      * The angle measurement shall be a double precision value as follows: -180.0 <= ANGLE_1 < 360.0<p>
  491.      * Units shall be degrees.<p>
  492.      * See meta-data keyword ANGLE_TYPE for the definition of the angles.
  493.      */
  494.     ANGLE_1,
  495.     /** Data: ANGLE_2 in degrees and in [-180, +360[ [deg].<p>
  496.      * The value assigned to the ANGLE_2 keyword represents the elevation, declination, or ‘Y’
  497.      * angle of the measurement, depending on the value of the ANGLE_TYPE keyword.<p>
  498.      * The angle measurement shall be a double precision value as follows: -180.0 <= ANGLE_2 < 360.0.<p>
  499.      * Units shall be degrees.<p>
  500.      * See meta-data keyword ANGLE_TYPE for the definition of the angles.
  501.      */
  502.     ANGLE_2,

  503.     // Time Related Keywords
  504.     /** Data: Clock bias [s].<p>
  505.      * The CLOCK_BIAS keyword can be used by the message recipient to adjust timetag
  506.      * measurements by a specified amount with respect to a common reference.
  507.      */
  508.     CLOCK_BIAS,
  509.     /** Data: Clock drift [s/s].<p>
  510.      * The CLOCK_DRIFT keyword should be used to adjust timetag measurements by an amount that is a function of time with
  511.      * respect to a common reference, normally UTC (as opposed to the CLOCK_BIAS, which is meant to be a constant adjustment).
  512.      */
  513.     CLOCK_DRIFT,

  514.     // Media Related Keywords
  515.     /** Data: STEC - Slant Total Electron Count [TECU].
  516.      * The STEC keyword shall be used to convey the line of sight,
  517.      * one way charged particle delay or total electron count (TEC) at the timetag associated with a
  518.      * tracking measurement, which is calculated by integrating the electron density along the
  519.      * propagation path (electrons/m2).
  520.      */
  521.     STEC,
  522.     /** Data: TROPO DRY [m].<p>
  523.      * Dry zenith delay through the troposphere measured at the timetag.
  524.      */
  525.     TROPO_DRY,
  526.     /** Data: TROPO WET [m].<p>
  527.      * Wet zenith delay through the troposphere measured at the timetag.
  528.      */
  529.     TROPO_WET,

  530.     // Meteorological Related Keywords
  531.     /** Data: Pressure [hPa].<p>
  532.      * Atmospheric pressure observable as measured at the tracking participant.
  533.      */
  534.     PRESSURE,
  535.     /** Data: Relative humidity [%].<p>
  536.      * Relative humidity observable as measured at the tracking participant.
  537.      */
  538.     RHUMIDITY,
  539.     /** Data: Temperature [K].<p>
  540.      * Temperature observable as measured at the tracking participant.
  541.      */
  542.     TEMPERATURE,

  543.     // Miscellaneous KEYVALUE keywords
  544.     /** Keyword used to delineate the start of a Data block in Keyvalue files. */
  545.     DATA_START,
  546.     /** Keyword used to delineate the end of a Data block in Keyvalue files.. */
  547.     DATA_STOP,

  548.     // XML TDM start/end keywords
  549.     /** TDM first keyword. */
  550.     tdm,
  551.     /** Header keyword. */
  552.     header,
  553.     /** Body keyword. */
  554.     body,
  555.     /** Segment keyword. */
  556.     segment,
  557.     /** Meta-data keyword. */
  558.     metadata,
  559.     /** Data keyword. */
  560.     data,
  561.     /** Observation keyword. */
  562.     observation;
  563. }