GPS data is either points or tracks. A point has a longitude, latitude, altitude and metadata (icon symbol, comment on some units, etc.). A track is a list of individual points taken in a time sequence, so each point has a date/time associated with it, in addition to the lon/lat/alt data.
Here is what my GPS data looks like when saved as a text file: there are waypoints, saved tracks, and the active (track) log. My GPS lets me save intermediate tracks and give each a unique name, so at the end of the day it is possible to have multiple saved tracks as well as the active track log in memory (kind of like HD and RAM).
Each waypoint has a name, which is 6 (uppercase or numeric) characters long. Tracks have a track name, followed by a list of waypoints. If there is a break (loss of contact with the satellite, turned off GPS) it is marked with !TS on an empty line, after which the next point will also have a jump in the time or date. The memory is treated as a special track, with the name ACTIVE LOG and a different display code.
!W:
018 N10 00 34.7 W84 12 31.7 symbol=flag alt=938.8 …
MIGRCN N9 57 23.5 W84 06 50.2 symbol=flag alt=1078.2 …
PRCSMH N9 58 56.7 W84 06 28.2 symbol=flag alt=1118.6 …
!T: SB-MIGRA width=2 colour=#000000 mapbak= GD310:display=|c!
10-Apr-2008 16:39:08 N10 02 09.8 W84 09 33.2 1178.71362305
10-Apr-2008 16:39:27 N10 02 08.2 W84 09 33.0 1177.27172852
10-Apr-2008 16:39:45 N10 02 07.2 W84 09 35.4 1170.06176758
…
…
…
!T: ACTIVE LOG width=2 colour=#8b0000 mapbak= GD310:display=|c”
10-Apr-2008 18:06:19 N9 57 23.4 W84 06 50.1 1078.25585938
10-Apr-2008 18:06:59 N9 57 23.5 W84 06 50.2 1082.58178711
!TS:
12-Apr-2008 20:34:16 N10 02 12.9 W84 09 38.8 1157.08398438
…
…
…
Why is this useful? For two reasons. First, it allows us to consolidate waypoints from multiple sources, simply by combining and editing the files. It also allows us to edit data more easily than on the GPS unit. We can then upload the points to a GPS unit when we need to.
Second, tracks can be manipulated in the same way. It is possible to edit the track name, but what is even more handy, we can make any track become the active log by simply replacing the !T line.
Since the active track is the one displayed on the screen, if you want to take the same exact trip, you simply load the active log into memory, turn it on, and follow the track on the GPS display.
Note: I use a Garmin Geko 201, and use GPSMan on Linux to move data to/from my GPS and save/export it to my hard drive. If you have another GPS, your data may look different, and this may not apply to you. I would love to hear from people using similar tool with different GPS units