This paper describes an approach for a composition of web services based on their semantic descriptions. The process section of OWL-S service descriptions is built with references to ontology concepts which represent service input and output data types. We present a engine that receives a request containing a concept (OC) corresponding to a service output and a set of concepts (ICs) corresponding to a service inputs. The engine produces a sequence of services whose first element has ICs as inputs and whose last element has OC as output. The result of the composition is described as a BPEL process.