The semantic characteristics related to the web services definition are weakly addressed in the original definition of the stack of web services. Web services languages like WSDL or composition languages like BPEL still have syntactic oriented definitions. Several research activities tend to use semantic based descriptions in order to describe approaches for automatically discovering services and for defining adaptive services. Our claim is that it is needed to proceed as for static data by providing on the one hand another level of abstraction that hides the WSDL descriptions of services and on the other hand a subsumption relationship capable to define a substitutability relationship between semantic web services. This paper proposes to use a semantic registry, to store semantic web services (SWS), equipped with an exploitation language that supports semantic based process discovery. Semantic web services are being described in an ontology of services, with a subsumption relationship. Their input and output parameters refer to concepts of a domain ontology.
I. CONTEXT OF OUR STUDYNowadays, thanks to the progress of networks and distributed computing, the web makes available a huge amount of web services disseminated all over the web. In order to reach their objectives, users access services and compose them. This usage of services leads to several applications like electronic commerce, concurrent engineering, scientific computations, grid computing, workflow definitions, and so on. However, such an activity requires the following functionalities 1) finding and discovering the right service capable to reach the suited goal. This step requires the availability of a search engine capable to return the suited service when requested; 2) defining correct services compositions when services are built by assembling (composing) other available services. This composition shall ensure that the obtained composite service reaches the expressed target goal, and 3) ensuring the availability and the quality of the discovered and/or composed service when it is invoked. By quality, we mean the satisfaction of properties like availability, safety, response time and so on. When the previous functionalities are available, it becomes possible to build safe and self healing complex services.Many languages supporting such functionalities have proposed and/or standardized. They offer resources for describing services, storing these descriptions in repositories and for attaching some characteristics that describe quality properties. Web services description languages like WSDL [1] or composition languages like BPEL [2] have syntactic oriented definitions. The services constructs they offer are syntactical and there is no possibility to understand what is the meaning of the function a service performs. For example, these languages do not offer resources to handle the signification of an integer service parameter.Indeed, the original definition of the stack of web services does not support any explicit semantic definition. The capability ...