We propose a Semantic Web Service Discovery framework for finding semantically annotated Web services by using natural language processing techniques. The framework searches through a set of annotated Web services for matches with a user query, which consists of keywords, so that knowledge about semantic languages is not required. For matching keywords with Semantic Web service descriptions given in Web Service Modeling Ontology (WSMO), techniques like part-of-speech tagging, lemmatization, and word sense disambiguation are used. Three different matching algorithms are defined and evaluated for their ability to do exact matching and approximate matching between the user query and Web Service descriptions.