From the q Markov and covariance parameters of a discrete-time system two data matrices are constructed. Using the Cholesky decomposition of the first data matrix, and the 'Hessenberg decomposition' of the second data matrix a recursive algorithm for generating partially nested q-Markov COVERs is developed. The QR algorithm plays a key role in recursively obtaining the Hessenberg decomposition. Using the partial nesting property it is shown how one can easily obtain q-Markov COVERs (reduced-order models) from high order models.