What is inside an XER file
An XER is a plain text export of a project from professional CPM scheduling software. It is a set of tables, each declared with its field names and followed by one row per record: the project with its data date, the WBS, the activities, the relationships between them, the calendars, activity codes and their assignments, resources and resource assignments, and the scheduling options the file was calculated with.
Durations, lags and float are stored in hours, and each activity points at its own calendar for the hours in a day. A PDF of the Gantt shows none of this. Two of the details that most often trip a manual review are hidden in exactly these tables: the calendar behind an activity, and the scheduling options behind every date.
How Pathizer keeps an update history straight
Each upload is filed under the data date the file carries, and the original is kept exactly as uploaded. There is one active XER per data date. Uploading a replacement for a date supersedes the old file and marks the comparisons on either side of it stale, so nothing is silently compared against a file that is no longer the record.
Analyzing one row runs that update, the comparison with the update before it and the comparison with the update after it. Analyze All runs every active update and every adjacent pair. The same engine path does both, so a row analyzed alone and the full history agree.
XER files are often not written in UTF-8. Pathizer decodes strictly as UTF-8 first and falls back to a legacy Windows code page, Western by default, instead of silently replacing characters it cannot read, so an accented contractor name in a Western export comes through intact. Besides XER, Pathizer reads .XML schedule exports, Microsoft Project XML and SDEF files.