Semantic based service discovery in ubiquitous computing