In this paper, a new approach has been developed to recognize the CAD models through their face adjacency relations and attributes and to automatically assemble the recognized parts in a CAD environment. Adjacent faces and the face attributes belonging to each face of parts designed in a CAD platform are derived by using of standard for the exchange of product data (STEP) file. They are represented in a square matrix format named face oriented relation matrix (FORM). An expert system was developed and embedded within the system. A knowledge base of the expert system is generated using a text editor. Reasoning the face adjacency relations and the face attributes in the knowledge base and FORM, the parts are recognized. Then, a reference face belonging to recognized parts is determined and they are positioned and assembled in assembly file through their reference faces. Part recognition approach developed in this study is applied to a computer aided assembly system. But it may be useful and practical for different CAD/CAM applications such as process planning and group technology too. The algorithm has been applied to a diesel automobile engine which has complex parts to demonstrate its efficiency and capability. (C) 2007 Elsevier B.V. All rights reserved.