/* /* This is a sample PDS label file, with running commentary. /* /* Syntax remarks: /* o Comments begin with '/*' and run until the end of the line /* o It is not required that the '=' align; that was done for /* readability /* o There can be only one assignment statement on a line, but a /* single assignment statement can run over more than one line /* o The entire label is written in ODL (Object Definition Language) /* which is case-insensitive (except within double-quoted strings). /* Note, however, that PDS requires labels and catalog files to be /* all in upper-case, except for description fields within double /* quotes. /* /* /* This file has also been padded out to 80-byte fixed-length records with /* carriage-return + linefeed record delimiters /* /* /* First, the standards identifiers. The required PDS_VERSION_ID indicates /* which version of the PDS standards was used to create the label and data /* files. /* PDS_VERSION_ID = PDS3 /* /* Next come the file characteristics. /* RECORD_TYPE = FIXED_LENGTH RECORD_BYTES = 150 FILE_RECORDS = 80 /* /* Now the pointer to the actual data, which is not contained in this /* file. It is also possible to point into the middle of a data file /* This is useful when there is some other attached header on the data /* which is not to be incorporated into the official PDS file set (an /* attached FITS header, for example). /* /* In this case there is only one pointer because only one data structure /* is being described. Sometimes one label will point to several objects /* and contain an equal number of OBJECT definitions. There might. for /* example, be both an image and a flat field in the same data file. /* ^IMAGE = "HMC01805.IMG" /* /* Identification fields. The first is the DATA_SET_ID which is used to /* tie together various files from the same mission. The format for the /* DATA_SET_ID value is described in the "PDS Standard Reference", /* Chapter 6. /* DATA_SET_ID = "GIO-C-HMC-3-RDR-HALLEY-V1.0" OBSERVATION_ID = "033495" TARGET_NAME = "HALLEY" START_TIME = 1986-03-14T00:02:02.958Z DATA_SET_PARAMETER_NAME = DATA_NUMBER /* This indicates which type of /* data comprise the image; in /* this case, a count. /* /* Observation parameters germane to this file only. This label lists /* both the START_TIME (the time observation began for the night) and /* the OBSERVATION_TIME (the time corresponding to the beginning of /* the data actually included in the file). These are the same for this /* file. /* OBSERVATION_TIME = 1986-03-14T00:02:02.958Z /* /* Finally, the data structure definition. This is a very simple image, /* so the data structure is correspondingly simple. It would also have /* been possible to greatly expand the number of descriptive keywords /* included in this label. /* OBJECT = IMAGE LINES = 80 LINE_SAMPLES = 75 SAMPLE_TYPE = MSB_INTEGER /* MSB = most significant byte first SAMPLE_BITS = 16 NOTE = "HMC IMAGE" OFFSET = 0.000000E+00 SCALING_FACTOR = 1.000000E+00 /* These keywords indicate that the (0,0) byte should map to the upper /* left-hand corner of the display: LINE_DISPLAY_DIRECTION = "DOWN" SAMPLE_DISPLAY_DIRECTION = "RIGHT" /* And this keyword indicates that rows are stored contiguously (i.e., /* byte (0,0) is followed by (0,1), then (0,2), etc.): AXIS_ORDER_TYPE = "LAST_INDEX_FASTEST" /* In the case of FITS images, which are stored in column-major order - /* (0,0) is followed by (1,0), (2,0), etc. - the AXIS_ORDER_TYPE would /* be "FIRST_INDEX_FASTEST". END_OBJECT = IMAGE END