Semi-structured data is the name given to a relatively recent attempt to bridge the gap between relational and object-oriented approaches to database design. It has been suggested that it might also help bridge the gap between databases and XML (Goldman et al. 1999, Buneman et al. 1999). In the first instance it is a way of abstracting away from implementation detail in the presentation of database contents. But in at least some cases it supports step-wise refinement via Data Guides (Goldman and Widom 1997). These can be seen as a summary of the access paths available with respect to a particular collection of semi-structured data to a class-based schema which is much closer to an Entity-Relation data model (Chen 1976), related via simulation to the original dataset, but also standing as a hypothesis about its underlying structure.