Semantic Web technology facilitates automatic processing of information on the Web by making up for the inadequacy of resources that are only human-readable. It also enables service discovery when services are described with OWL, a markup language for the Web based on Description Logic. Service searches and classifications are achieved via Description Logic inference mechanisms. The expressiveness of OWL, however, is restricted due to decidability concerns. This is complemented by SWRL, a combination of subsets of OWL and RuleML, which contributes the use of Horn-like rules in conjunction with ontologies. It also provides extra inference capabilities for the ontologies. We consider a practical approach that exploits reasoning services on ontologies and rules based on current Semantic Web standards, to provide a framework for service composition. In this framework one can build ontologies and rules for the application domain, and utilizes the inference services to accomplish service composition. We also present an application for this framework and discuss some implementation issues.