The ability to manage the evolution of logical structures in software artifacts is crucial to the success in developing software systems. However, many existing version control systems often manage artifacts as .les and have little or no knowledge of their logical structures. Therefore, the development and maintenance process of a system becomes less ef.cient. We have developed an object-oriented con- .guration management (SCM) infrastructure that can be used to build SCM services in any development environment. This paper will describe the application of that infrastructure to construct a multi-level SCM system for source code and structured documents. The key contribution is the structure-oriented product versioning model that enables .exible management of the evolution of .ne-grained logical units at any structural level in a software artifact.