![]() | |
|
PDS Label |
Previous Next |
|
The PDS label contains keywords for product identification. The label also contains descriptive information needed to interpret or process the data in the file.
PDS labels are written in Object Description Language (ODL). PDS label statements have the form of "keyword = value". Each label statement is terminated with a carriage return character (ASCII 13) and a line feed character (ASCII 10) sequence to allow the label to be read by many operating systems. Pointer statements with the following format are used to indicate the location of data objects in the file:
^object = location
where the carat character (^, also called a pointer) is followed by the name of the specific data object. The location is the 1-based starting record number for the data object within the file.
Keyword Length Limits
All PDS keywords are limited to 30 characters in length. Therefore, software that reads MER PDS labels must be able to ingest keywords up to 30 characters in length.
For RDR producing institutions wishing to accommodate the VICAR mapping of PDS keywords that use a <unit> tag after the value, such keywords must be limited to 26 characters in length. Otherwise, those keywords are not transcoded from the PDS label into a VICAR label.
Data Type Restrictions
In order to accommodate VICAR dual-labeled files, 16-bit data must be stored as signed data. Unsigned 16-bit data is not supported. 12-bit unsigned data from the cameras is stored in a 16-bit signed value.
Interpretation of N/A, UNK, and NULL
During the completion of data product labels or catalog files, one or more values may not be available for some set of required data elements. In this case PDS provides the symbolic literals "N/A", "UNK", and "NULL", each of which is appropriate under different circumstances. As a note, if any one of these three symbolic literals are used in place of a keyword value that is normally followed by a Unit Tag(s) (e.g., "<value>"), the Unit Tag(s) is removed from the label.
INSTRUMENT_ID = "N/A"
because this data set is not associated with a particular instrument. "N/A" may be used as needed for data elements of any type (e.g., text, date, numeric, etc.).
FILTER_NAME = "UNK"
if the observing log recording the filter name was lost or destroyed and the name of the filter is not otherwise recoverable. "UNK" may be used as needed for data elements of any type.
DATA_SET_RELEASE_DATE = "NULL"
might be used in a data set catalog file during the development and review process to indicate that the release date has not yet been determined. "NULL" may be used as needed for data elements of any type. Note that all "NULL" indicators should be replaced by their actual values prior to final archiving of the associated data.
PDS Label Constructs
The PDS has designed a set of formal and informal constructs for labeling data products. In the PDS realm, "formal" infers a standardized design or set of rules that provides a protocol across multiple data products (e.g., multiple flight missions) for PDS validation tools, and involves a rigorous approval process. "Informal" infers a less rigorous process by which the construct meets PDS approval. For both formal and informal constructs, the member keywords must be defined in the Planetary Science Data Dictionary (PSDD). In MER Camera EDRs and RDRs, the PDS Label includes the following "formal" and "informal" constructs:
/* comment string */ keyword = keyword value keyword = keyword value
OBJECT = Object identifier keyword = keyword value keyword = keyword value END_OBJECT = Object identifier
GROUP = Group identifier keyword = keyword value keyword = keyword value END_GROUP = Group identifier
|