Version identification function for DPM formats

The MFS DOF defines how data is formatted for presentation to the remote program so the remote program can efficiently locate and process the data. The MFS DIF defines how data is presented to IMS from the remote program.

To ensure proper formatting and to present and interpret the data correctly the MFS DOFs and DIFs and the remote program communication blocks of the data formats must be at the same level. The current level of the MFS control block is a unique 2-byte field called the version identification (version ID). The version ID is either user-supplied on the DEV statement or, if not specified, it is created by the MFS Language utility at the time the source definition is stored in the IMS.REFERRAL library in an ITB format. The version ID is printed in the information messages DFS1048I and DFS1011I of the MFS Language utility for the DOF or DIF, and must be included in the remote program if verification is to be performed.

The version ID of the DOF used in mapping the output message is provided in the output message header and must be used by the remote program to verify that the control block in the remote program is at the same level as the DOF's version ID.

The version ID of the control block used in mapping the input message to IMS must be provided by the remote program in the input message header. It is used to verify that the correct level of the DIF is provided to map the data for presentation to the IMS application program. If the version ID sent on input does not match the version ID in the DIF, the input data is not accepted and an error message is sent to the remote program. If the verification is not desired, the version ID can be sent with hexadecimal zeros (X'0000') or it can be omitted from the input message header. In this case, both the remote program and MFS assume that the DIF can be used to map the data correctly.