Apple Data Detectors was designed in response to a set of ethnographic studies that identified an important class of problems that people have when doing their everyday work with computers. Documents frequently contain "triggers" for the next steps in work activities: an e-mail message will contain a URL for a web page, which will contain a phone number, and so on. Our goal was to provide a simple interface that would let the user carry out these steps with as little effort as possible.
To use Apple Data Detectors, the user selects a region of text in an application, and presses the right mouse button (or, with a single-button Macintosh mouse, holds down the control key while pressing the mouse button). This brings up the Mac OS contextual menu, which contains pieces of information that Data Detectors knows how to manipulate (here, an e-mail address and the date and time of a meeting. By pointing the mouse at one of these menu items, a submenu appears that shows the actions that Data Detectors can carry out on the selected piece of information. Here, Data Detectors is offering to place a reference to this meeting on the user's calendar, or mail the meeting announcement to a secretary. The patterns that Data Detectors can recognize are defined by grammars, interpreted by a simple parser added onto the operating system; new grammars for new kinds of information can be added to the system at any time. Similarly, the actions that Data Detectors can carry out on recognized information are implemented in small bits of scripting language, which can also be added to the system as the user wishes.