In this paper we investigate some classes of structures that are preserved by applying a (shifted) QR-step on a matrix A. We will handle two classes of such structures: the first we call polynomial structures, for example a matrix being Hermitian or Hermitian up to a rank one correction, and the second we call rank structures, which are encountered for example in all kinds of what we could call Hessenberg-like and lower semiseparable-like matrices. An advantage of our approach is that we define a structure by decomposing it as a collection of 'building stones' which we call structure blocks. This allows us to state the results in their natural, most general context. (c) 2005 Elsevier B.V. All rights reserved.