PDS File Format Summary

Also Known As: Planetary Data System Format

Type General data format
Colors Unlimited
Compression None
Maximum Image Size Unlimited
Multiple Images Per File Yes
Numerical Format NA
Originator NASA
Platform All
Supporting Applications Many

PDS is used by NASA and other institutions to store planetary data.

PDS is an ODL-based format similar in form and use to FITS and VICAR2.

Code fragments are available for this format.

Sample images are available for this format.

The PDS (Planetary Data System) file format is a standard format devised by the Planetary branch of the National Aeronautics and Space Administration (NASA) for storing solar, lunar, and planetary data collected on Earth and by interplanetary spacecraft.

File Organization
File Details
For Further Information

PDS is actually a set of rules for the construction of labels to describe the structure of a variety of data files, including images. The basis for the labels is an Object Description Language (ODL), which describes each separate component of the data file as a distinct object. These labels have been designated for use by NASA's Planetary Data System.

A PDS image file could conceivably contain a number of different elements. The label might be a part of the data file, or it might be in a separate file. Each image row could have some leading and trailing information. There could be color palette or image histogram data before or after the image. There could even be multiple images in a single file. All of these possibilities can be handled with the PDS syntax.

This syntax has been used on the CD-ROMs of spacecraft data distributed by the PDS, such as the 12-disk "Voyagers To The Planets" set. A number of software packages also support PDS labels.

File Organization

A PDS data file consists of a header (called the label) and a set of data objects. The label and data objects may reside in the same file or in separate files.

A PDS label is usually a collection of ASCII text records. The label records can be fixed length or variable length, although fixed length is more portable. Records are usually delimited by a carriage return and a linefeed character to ensure readability on the widest possible variety of computers.

The label uses ODL to give information about the data objects. The ODL object description has the general form:

OBJECT = object_name Information about the object

Statements within an object description all have the form:

name = value

where name is a keyword, the name of a particular attribute associated with the object, and value is the value of the attribute. The attribute name can be up to 32 characters in length. The first character must be alphabetic, but the remaining characters can be alphabetic, numeric or the underscore character. The attribute values can be numeric (integer, real, or real with units), literal or enumerated values, strings, times, or object names. The values can also be arranged into arrays.

Direct access to data objects is possible by utilizing pointers to the objects in the label. A pointer is expressed with the notation:

^object_name = location

The location may be numeric, in which case it represents a starting record number for the object, or it may be a string giving the name of an external file.

The first record of a PDS label may be a Standard Format Data Unit (SFDU) ID in the format:

nnnnnnnnnnnnnnnnnnn = SFDU_LABEL

The ID is assigned by a central control authority (Consultative Committee for Space Data Systems), but it can be safely skipped by application software. Each PDS label must end with a statement of the form:


Comments may be embedded in the label, and a comment begins with the pair of characters /* (slash asterisk). The comment ends either at the end of the line or with the pair of characters */ (asterisk slash).

The PDS ODL is an evolving syntax, although downward compatibility is maintained. A number of new enhancements are supported under the second version of the syntax standard.

File Details

Here is a sample PDS version 1 label. The label is treated as a single byte stream of 203 bytes. Notice the (now obsolete) pointer syntax.

FILE_TYPE           = IMAGE
IMAGE_LINES         = 512
LINE_SAMPLES        = 512
SAMPLE_BITS         =   8

Here is sample PDS version 2 label. The image data starts at the tenth record in the file (that is, byte 2550).

FILE_RECORDS	= 223 /* 210 image records + 13 label */
/* This is a pointer to the file record where the image starts */
^IMAGE	= 10
	LINES	= 210

Here is another sample PDS version 2 label for an image with a detached label file:

CCSD3ZF0000100000001NJPL3IF0PDS200000001 = SFDU_LABEL
/*          File Format and Length                */
RECORD_BYTES               = 1024
FILE_RECORDS               = 512
/*          Record Pointers to Major Objects      */
^IMAGE                     = 'SAMPLE.IMG'
/*          Descriptions of Objects in File       */
 LINES	= 512

For Further Information

Because the PDS specifications are so lengthy, and because they are freely available, we have decided not to include them on the CD-ROM. For additional information about PDS, contact the JPL customer support facility:

National Aeronautics and Space Administration (NASA)
Planetary Branch
Jet Propulsion Laboratory
Mail Stop 525-3610
4800 Oak Grove Drive
Pasadena, CA 91109
Voice: 818-354-7587
Email: [email protected]
WWW: http://stardust.jpl.nasa.gov/pds_home.html

There is a set of several documents on PDS labels available from this facility:

Jet Propulsion Laboratory, Standards for the Preparation and Interchange of Data Sets, JPL Document D-4683, NASA, Pasadena, CA, 1988.

Jet Propulsion Laboratory, Data Preparation Workbook, JPL Document D-7669, NASA, Pasadena, CA, 1990.

Jet Propulsion Laboratory, Planetary Data System Standards Reference, JPL Document D-4683, NASA, Pasadena, CA, 1990.

Jet Propulsion Laboratory, Specification for the Object Description Language, NASA, Pasadena, CA, 1990.

This page is taken from the Encyclopedia of Graphics File Formats and is licensed by O'Reilly under the Creative Common/Attribution license.

More Resources