A structural tree for proteins and domains containing S-like [beta]-sheets has been constructed. An S-like [beta]-sheet is taken as a starting structure in modelling or as a root structure of the tree. Larger structures are obtained by a stepwise addition of [beta]-strands and/or [alpha]-helices to the root S-like [beta]-sheet in accordance with a restricted set of rules inferred from known principles of protein structure. Applications of the structural tree to structure comparison, protein classification and protein folding are described.