Computer Science Department
School of Computer Science, Carnegie Mellon University


Creating Dynamic World Wide Web Pages by Demonstration

Robert C. Miller, Brad A. Myers

May 1997

[Also appears as CMU-HCII-97-101]

Keywords: World wide web (www), end-user programming, programming-by-demonstration, Hypertext Markup Languages (HTML), client gateway interface (CGI), scripting languages

Turquoise is an intelligent browser and editor for the World Wide Web (WWW) that allows users to create dynamic pages by demonstration rather than by writing program code. With Turquoise, users without programming experience can create scripts that combine data from several Web pages, automate repetitive browsing or editing tasks, convert other data formats into Hypertext Markup Language (HTML), and process submitted forms. Scripts are demonstrated by familiar browsing and editing actions, which Turquoise records and generalizes into a program. In order to generalize the locations of the user's actions on a page, Turquoise includes a novel pattern matcher that finds locations within an HTML document. Turquoise infers patterns automatically by picking from a knowledge base of pattern templates, heuristically chosen to be robust and comprehensible to the user. With a good pattern knowledge base, Turquoise can often infer the correct script after only a single demonstration.

18 pages

Return to: SCS Technical Report Collection
School of Computer Science homepage

This page maintained by