| Quick-Start Introduction to PDS Archiving |
 |
A Very Brief Introduction to ODL
Object Description Language (ODL) was developed for general use by NASA
projects to describe data structures. It has a very simple syntax - lines
of ODL are of the form:
<keyword> = <value>
The keywords defined and used by a project are collected
into a project data dictionary.
In the case of the PDS project, the keywords are defined in
the Planetary Science Data Dictionary, which is available for
interactive
search or may be downloaded as an ASCII text file from the same page.
The formal PSDD document,
containing templates for submitting new keyword
definitions and details of the PDS keyword definition process, is available
as a PDF file.
The PDS standards strongly encourage descriptive keyword names. Although
this sometimes means that single keywords can be rather long, the
readability of the resulting files is a definite benefit.
Objects
There are a small number of reserved keywords which have the
same meaning in every ODL application. The most important one for the
PDS is the OBJECT keyword, which is used to begin the
description of a data structure.
The ODL OBJECT definition may include both physical and logical attributes
of the data structure, depending on the application.
(The term "object" refers to a basic concept in object-oriented programming
in which a complex data structure is treated as a single logical entity.)
The general structure of an OBJECT definition is this:
OBJECT = object_type
keyword_1 = value
...
keyword_2 = value
END_OBJECT = object_type
OBJECTs may contain other OBJECTs, as in the PDS TABLE, which
contains one or more COLUMN OBJECTs.
PDS OBJECTs, however, may only contain objects specifically listed in
their PSDD definitions. So, for example, a TABLE object may contain
COLUMN objects, but a TABLE object may not contain IMAGE objects.
PDS Objects
OBJECTs are used in PDS file labels to define the
physical and logical format of
the data file. These OBJECTs will contain keywords describing:
- the data type and size of each datum;
- the location of the fields within the file record;
- the logical meaning of the fields; and
- any additional observational parameters or explanatory notes specific
to that object
|