This document discusses using machine learning techniques to automatically generate semantic metadata for web services. It explores supervised learning approaches for classifying domains, datatypes and categories of web services. It also examines unsupervised clustering algorithms for grouping web services into coherent categories. The techniques are evaluated on a collection of web services and forms, with results showing the machine learning approaches outperform simple baselines.