Objective: MC approval of additional standard values for the PRODUCT_TYPE keyword. Date: 2003-08-19 Author: Steve Joy Background ========== The PDS has always acknowledged that data sets consist of a variety of products including: data, documentation, software, geometry information, calibration files, ancillary files, and other products. PDS catalog does not provide a mechanism for associating the various files and file types comprising a complete data set. In the past, the association was provided by collocation of non-data products with the data on archive volumes. As we move more and more towards an online data system, these associations by collocation break down. The PDS needs to be able to provide the associations within the documentation that it routinely provides for each product: the PDS label. At present, the PDS data dictionary includes the keyword PRODUCT_TYPE. This keyword could, and probably should, be used to define which of the various data set products is being described by the label. However, the data dictionary gives the definition as "the type or category of a data product within a data set." This definition would be more correctly applied to a keyword called DATA_PRODUCT_TYPE. Unfortunately, the keyword is already in use, as it is in imaging data sets. To further complicate the problem, the keyword has the standard value type of "static" where the only allowed values are {EDR, REDR, REFDR, UDR} The current need is to be able to use this keyword to distinguish between the various products associated with a data set. The new standard values for the keyword would include {DATA, SOFTWARE, DOCUMENT, CALIBRATION, GEOMETRY, ANCILLARY, BROWSE, GAZETTEER, INDEX, CATALOG, DICTIONARY}, plus incorporate the existing values. Alternatively, a new keyword could be added (DATASET_PRODUCT_TYPE) to perform this function. Current Urgency =============== PPI Needs to be able to distinguish different components of its various data sets within its online system now. PPI is currently using PRODUCT_TYPE with the standard value set listed above to perform this function (Galileo, Mars Odyssey). In addition, PPI has asked the Cassini MAPS teams and the Mars Express ASPERA team to use this keyword as described above. Recommendations =============== 1) Change the definition of PRODUCT_TYPE to: "The PRODUCT_TYPE data element identifies the type or category of a product within a data set. Examples: DATA, SOFTWARE, DOCUMENT, CALIBRATION, GEOMETRY, ANCILLARY, BROWSE. Previous versions of the PDS data dictionary used this keyword to specify data product types (i.e. EDR, REDR, UDR). While these values are still recognized and valid, the keyword DATA_PRODUCT_TYPE should be used to convey this information. 2) Change the STANDARD_VALUE_TYPE of PRODUCT_TYPE from STATIC to DYNAMIC. 3) Add DATA, SOFTWARE, DOCUMENT, CALIBRATION, GEOMETRY, ANCILLARY, BROWSE to the standard values list, leaving the existing list in place. 4) Add a new keyword DATA_PRODUCT_TYPE to the data dictionary with the definition: "The DATA_PRODUCT_TYPE data element identifies the type or category of a data product within a data set. Examples: EDR, UDR." This keyword should have a STANDARD_VALUE_TYPE of DYNAMIC and initial standard values of all existing data product types (EDR, REDR, REFDR, RDR, DDR, SEDR, SUMM, UDR, etc.). Impact ====== Minimal. The inclusion of the existing PRODUCT_TYPE standard values provides backward compatibility and allows data providers to continue using the keyword in current and future products. ----------------------------------------------------------------------------- PRODUCT_TYPE Data Dictionary Element Definition ----------------------------------------------------------------------------- OBJECT = ELEMENT_DEFINITION NAME = PRODUCT_TYPE STATUS_TYPE = APPROVED STATUS_NOTE = "V1.0 2003-08-19 SPJ Initial proposal presented for technical discussion." DESCRIPTION = " The PRODUCT_TYPE data element identifies the type or category of a product within a data set. Examples: DATA, SOFTWARE, DOCUMENT, CALIBRATION, GEOMETRY, ANCILLARY, BROWSE. Previous versions of the PDS data dictionary used this keyword to specify data product types (i.e. EDR, REDR, UDR). While these values are still recognized and valid, the keyword DATA_PRODUCT_TYPE should be used to convey this information." SOURCE_NAME = "PDS PPI/S.Joy" GENERAL_DATA_TYPE = IDENTIFIER UNIT = "N/A" VALID_MAXIMUM = "N/A" VALID_MINIMUM = "N/A" MAXIMUM_LENGTH = "30" MINIMUM_LENGTH = "N/A" STANDARD_VALUE_SET = {DATA, SOFTWARE, DOCUMENT, CALIBRATION, GEOMETRY, ANCILLARY, BROWSE, GAZETTEER, INDEX, CATALOG, DICTIONARY, EDR, REDR, REFDR, UDR} STANDARD_VALUE_TYPE = "DYNAMIC" DEFAULT = "N/A" FORMATION_RULE_DESC = "N/A" SYSTEM_CLASSIFICATION_ID = COMMON GENERAL_CLASSIFICATION_TYPE = DATASET OBJECT = ALIAS ALIAS_NAME = "N/A" OBJECT_NAME = "N/A" USAGE_NOTE = "N/A" END_OBJECT = ALIAS OBJECT = LOCAL_ENVIRONMENT SQL_FORMAT = "CHAR(30)" TERSE_NAME = "N/A" END_OBJECT = LOCAL_ENVIRONMENT END_OBJECT = ELEMENT_DEFINITION ----------------------------------------------------------------------------- DATA_PRODUCT_TYPE Data Dictionary Element Definition ----------------------------------------------------------------------------- OBJECT = ELEMENT_DEFINITION NAME = DATA_PRODUCT_TYPE STATUS_TYPE = PENDING STATUS_NOTE = "V1.0 2003-08-19 SPJ Initial proposal presented for technical discussion." DESCRIPTION = " The DATA_PRODUCT_TYPE data element identifies the type or category of a data product within a data set. Examples: EDR, REDR, REFDR, RDR, DDR, SEDR, SUMM, UDR, ODR, ATDF." SOURCE_NAME = "PDS PPI/S.Joy" GENERAL_DATA_TYPE = IDENTIFIER UNIT = "N/A" VALID_MAXIMUM = "N/A" VALID_MINIMUM = "N/A" MAXIMUM_LENGTH = "30" MINIMUM_LENGTH = "N/A" STANDARD_VALUE_SET = {ADR, ATDF, BIDR, CDR, CK, DDR, DIDR, DLC, EDC, EDR, EK, GDR, IDR, IK, LSK, MDR, MIDR, ODR, PCK, PGDR, PKT, RDR, REFDR, REDR, SDR, SEDR, SPK, SUMM, SAMP} STANDARD_VALUE_TYPE = "DYNAMIC" DEFAULT = "N/A" FORMATION_RULE_DESC = "N/A" SYSTEM_CLASSIFICATION_ID = COMMON GENERAL_CLASSIFICATION_TYPE = DATASET OBJECT = ALIAS ALIAS_NAME = "N/A" OBJECT_NAME = "N/A" USAGE_NOTE = "N/A" END_OBJECT = ALIAS OBJECT = LOCAL_ENVIRONMENT SQL_FORMAT = "CHAR(30)" TERSE_NAME = "N/A" END_OBJECT = LOCAL_ENVIRONMENT END_OBJECT = ELEMENT_DEFINITION