10.2.3 Maintaining Structured Data

Consider the following entry from file /etc/passwd on my laptop.

aster:KoUxwQ2:501:100:Aster Labrador:/home/aster:/bin/bash

File /etc/passwd is a simple instance of a text file that stores structured data records as a series of fields delimited by a special character. Each item in the file acquires meaning from the position in which it occurs for example, the fifth field contains the user name, Aster Labrador. More generally, structured data where each field in a record has meaning is found throughout the desktop in applications ranging from entries in a rolodex to rows in a spreadsheet.

Typically, users do not directly edit the stored representation of the data. Instead, application front-ends provide a more human-centric (and hopefully less error prone) user interface for modifying and maintaining the data. Thus, spreadsheet applications present the data as a two dimensional table that is automatically updated to reflect changes in the underlying data. The two dimensional table is perhaps the most commonly found visual front-end to structured data tables with row and column headers prove a succinct way of implicitly displaying the meaning along with the value of the fields making up each data record.