Copyright Digital Equipment Corp. All rights reserved.

XABRDT

   The revision date and time XAB (XABRDT) complements the date and
   time XAB (XABDAT) by providing revision time and date input to
   the Close service when RMS closes a file that has been modified.
   Like the XABDAT, the XABRDT can be used as input to the Create
   Service or can be used to store revision data returned by the
   Open service or the Display service. The distinction is that
   XABDAT cannot be used to modify the revision data. Only the
   XABRDT can be used to update revision data when a file is closed
   after being modified. Typically, a process would use the two data
   structures when it wants to sense and set revision data within a
   single file operation.

   To change the revision data, the process must have Control access
   to the file and must have opened the file for modification using
   the Put, Update, Truncate, or Delete service.

   The two XABRDT fields that specify revision values are the XABQ_
   RDT (revision date and time) field and the XAB$W_RVN (revision
   number) field.

   o  The 64-bit XAB$Q_RDT binary field indicates the date and time
      when the file was last opened for modifications.

   o  The XAB$W_RVN field indicates how many times the file is
      opened for modifications.

   The following table indicates how RMS uses the XABRDT fields for
   various file-processing services.

   Service    Input/Output

   Close      Input
   Create     Input
   Display    Output
   Erase      Not used
   Extend     Not used
   Open       Output

   The Open service overwrites the XAB$Q_RDT and XAB$W_RVN fields
   with the file's existing revision values. If you do not change
   these values, the existing values are subsequently input to the
   Close service and the file's revision data is not updated.

   To change the revision data, you must set the fields between the
   time you open the file and the time you close the file. If you
   specify a revision date and time of 0 or if you do not include
   a XABRDT as input to the Close service, RMS uses the current
   date and time for the revision date and time and increments the
   revision number.

   To sense the contents of the XAB$Q_RDT and XAB$W_RVN fields
   before you specify new values with the XABRDT, examine the XAB$Q_
   RDT field and the XAB$W_RVN field in the XABDAT block.

   The following table lists the symbolic offset, the size in bytes,
   FDL equivalent, and a brief description of each field.

                       FDL
   Offset      Size    Equivalent    Description

   XAB$B_BLN   1       None          Block length
   XAB$B_COD   1       None          Type code
   XAB$L_NXT   4       None          Next XAB address
   XAB$Q_RDT   8       DATE          Revision date and time
                       REVISION
   XAB$W_RVN   2       FILE          Revision number
                       REVISION