Each compiler writes a flat file of encounter records corresponding to valid input lines describing encounters such as new band, recap, lost band, and so on.
However, we must support two encounter records: the 1998
MAPS version and the 2004 version (which suffices for
both MAPS and MAWS output). Again we create a base class
named BaseEncounter that defines an object
that can be “flattened,” that is, it can be
converted to a flat-file record, represented as a single
string, that can be written to the output file.
For the details of this class, see Section 74, “class BaseEncounter: General output
record”.