The Web services paradigm is believed to substantially alter the way business processes cooperate. It follows an XML-based interfacing standard so that existing services can be composed by a suitable choreographic language. However, the composition and related discovery and matching tasks mostly have to be done manually. Though UDDI has become a de facto standard for service discovery and matching, it does not provide adequate semantic and can only support limited keyword search. Lack of semantic descriptions about services renders UDDI incapable of providing inference ability which is essential for supporting more sophisticated search constraints. In this thesis, we propose an ontology-based scheme for service matching and composition. The scheme consists of a service registry and a matching procedure and is parameterized by domain ontologies and rules. We assume that all services have their capabilities characterized by OWL and described in their service descriptions. The service registry verifies the consistency of service descriptions and stores their capabilities in the knowledge base. Upon receiving a service requirement, our matching procedure reduces the service matching problem to Description Logic inference problems, which can be solved by existing inference engines. The matching procedure applies domain rules on top of the domain ontologies to provide domain specific inference services. We have developed a prototype matching system with tourism-related ontologies to show how services about transportation and hotel can be inferred accurately and e±ciently.