You are on page 1of 6

3rd International Conference on Electrical and Information Technologies ICEIT’2017

A multi-level approach for selecting and

recommending semantic web services
Amal Latrache, El habib Nfaoui
LIIAN laboratory ,Sidi Mohamed Ben Abdellah University,
Fez, Morocco;,

Abstract— Over the past few years, the number of web The second stage consists of filtering the selected services
services has grown rapidly and the task of selecting the relevant based on quality of services’ constraints and users’
service that satisfy the user request becomes more and more requirements e.g. no-functional requirements. Recommender
difficult. Most proposed approaches for web services selection systems techniques represents an adequate solution to achieve
focuses on functional characteristics of services, and those who the above goal and also to support the functional stage with
adopt the recommender system (RS) techniques to take into recommended items, several proposed approaches use
account the no-functional requirements give more importance to collaborative filtering recommender system which aims at
the user side. Thus, there is a need of an approach that combines eliciting the users feedback and finding other users who
the two above perspectives by focusing on the user side (explicit
provide similar feedback , and then services selected by similar
and implicit requirements) and the service side (services
capabilities). In this paper we propose a multi-level approach to
users will be recommended. The rationale is users who have
select and recommend Semantic web services, the first level the same interests tend to have the same or similar
assumes the semantic functional services selection. The second characteristics and evaluation criteria and by consequence, the
level aims at filtering and ranking the selected services based on current user benefits from his similar users recommendations.
quality of services criteria (i.e. no- functional requirements) while However, it is difficult to elicit users explicit feedback and
the third level is a collaborative filtering RS which aims to sometimes the accuracy of the ratings also cannot be
enhance and increase the accuracy of the selection process. The guaranteed.
experiment was performed using a test dataset and proves the
So far, there are only a limited number of research works
effectiveness of our approach.
using collaborative filtering RS with the necessary adaptation
Keywords— functional selection; no-functional selection; to the specifications of the web services domain. The most
semantic web services; collaborative filtering. relevant work in this area is [2], in which the authors focus on
the user side by using users behaviors and interactions instead
of users explicit feedback. Another alternative [3] that is based
I. INTRODUCTION on users’ feedback from previous usage and services’ feedback
Web services and Service Oriented Architecture (SOA) are from intelligent services’ communication ability.
emerging as a mainstream solution for deploying automated
interactions between heterogeneous and distributed The revealed problem in using recommender systems in the
applications thanks to their interoperability and reusability. For web services environment is the need to be extended before
that, businesses looks for sharing and using web services in they can be applied to service selection, because of the
public or private portals. However, the exponentially increasing differences in characteristics and specifications between web
number of web services and the possibility that several services services and products (the traditional domain of RS). Web
provide the same capabilities highlights the need of a tool to services are different in the ways that they are created,
support users in picking the adequate services. Some portals published and used.
such as XMethods, WebServiceList, WebServiceX.NET, There is a need for an approach that focuses in both the user
Baidu and Seekda [1] try to help users by providing interfaces and service side with an adequate adaptation to the web
for searching web services. The proposed solutions still services environment; the aim is to better support users in
immature and the user have to navigate between several portals selecting the adequate and relevant services. Dealing with this
to verify the accuracy and the reliability of the results. challenge is the main motivation of our approach; we proposed
There is a need for supporting service consumers in to use collaborative filtering RS to support the functional and
selecting service(s) that best matches their needs and no-functional stages of selection in a multi-level architecture.
expectations. This support must be performed during two In addition, we have worked on both the user and service side
stages the functional and no-functional selection, the fisrt stage by performing semantic matching between services and using
consists on selecting the services that satisfy the functional previous patterns of users ‘interactions.
requirements by matching the user request and the services The rest of this paper is organized as follows. In Section2,
description. we review the related works on services selection and
recommender systems, section 3 gives an overview of the
context and the scope of our proposed approach and the

978-1-5386-1516-4/17/$31.00 ©2017 IEEE

3rd International Conference on Electrical and Information Technologies ICEIT’2017

motivating challenges behind this work. Section 4 is a detailed work [20]), the lack of training dataset with users votes to
explanation of the different components of our solution to perform the testing process, also the effort is investigated on
select and recommend semantic web services. Finally, section the user side without giving much concerns to the service
5 concludes the paper and lists the future works. functional side.
Obviously, approaches based on services functional
II. BACKGROUND REVIEW selection could ‘not completely satisfy users’ needs and
The increased number of web services exposed in the approaches based on focusing on the users’ side by eliciting
internet highlights the need for a tool to support users to pick their feedback are not enough. There is a need of an approach
the relevant services. This need motivates researches to multi-level that combines the two above perspectives by
propose several approaches in this area according to several focusing on the user side and the service side and benefiting
perspectives. from the RS and semantic technologies advantages.
Some approaches focuses on the syntactic perspective such
as [4][5], they proposed a service web engine based on III. SCOPE AND CONTEXT OF THE APPROACH
matching the user request and the web service description Thanks to their interoperability and reusability, Web
(WSDL files). Due to the limited information shared in services provides a common way for communication and
syntactic description, Other approaches [6][7] focuses on easiness of programming .It represents an efficient way for
semantic web services by analyzing their semantic descriptions businesses to communicate with each other and with clients as
(wsdl-s, owl-s and so on). Both perspectives, can be enhanced well. For that, the importance of using web services have
by other quality of services (QoS) metrics to improve the increased widely and several businesses looks for publishing
accuracy of the result as discussed in [8][9]. their services as a set web services in private or public portals.
In the other side, web services’ consumers suffers from the
To better satisfy the user implicit and explicit requirements, large amount of available web services and picking a web
the Recommender system (RS) techniques has been adopted in
service that satisfy their needs and expectations is not a
the web services area. There are basically two type of straightforward task for them.
recommender systems: collaborative filtering and content
based filtering [10]. Content-based technique assumes that the The aim of our approach is to support the web services’
user tends to like the items he liked before, user preferences are consumers in selecting the adequate web services not just by
gathered from his history through either explicit feedback by satisfying their functional needs but also by satisfying the no-
rating items, or implicitly by analyzing user’s interactions with functional requirements. The combination of web services and
items. While the CF consist to predict and recommend semantic technology, in order to create semantic web services,
potential favorite items for a particular user based on rating allows us to perform a semantic matching of web services and
items collected from similar users [11]. The main idea is users by consequence improving the reliability and accuracy of the
who have similar preferences in the past, tend to have the same services’ functional selection.
decision-making and opinions in the future.
In the other hand, selecting a web service that fit exactly
Collaborative filtering techniques are widely used in web the functional needs but with a wide execution time is not
services selection compared to the content-based approach appreciated by consumers. Thus, satisfying the no-functional
[12]. The rationale is users in web services domain change their requirements (quality of services constraints) is a crucial factor
preferences according to their actual need, so there is no to improve the consumers’ satisfaction. Recommender systems
guarantee that they will like services they liked before, contrary techniques are also used in this area, they represents the best
to the RS traditional domain where users who like science way to satisfy the consumers’ explicit and implicit
books still like this kind in the future. expectations.
The CF techniques are divided into two categories: The effort investigated by researches in the area of
memory-based algorithms and model-based algorithms. The recommending web services can be divided into two axes, the
approaches proposed in the first category predict the rating of first one focuses on the web service side by analyzing the query
users based on the items similarities [13] [14], or they predict strings and the web services description. However, the text-
the rating of items based on similar users rating [15]. While the based analysis depends on the user languages and annotation
second category is based on extracting useful information from that decreases the recommendation accuracy. The second axe
the dataset of rating, and use that as a model to make focuses on the user side by adopting the collaborative filtering
recommendations; it can be performed based on clustering techniques while its efficiency is based mainly of the users
models [16] or latent semantic models [17]. explicit feedback(votes) and similar users recommendations,
the efficient approach that overcome this issue is proposed by
The CF recommender systems have also their own gaps [2] which elicit the users implicit feedback by focusing on the
such as how to make recommendation for new users who users’ interactions. Thus, we propose to combines users
haven’t enough rating to perform the similarities comparison, it
explicit feedback (votes) and implicit feedback (services use)
is called the cold-start problem [18]. Another gap is the sparsity into a collaborative filtering RS. In the case of the new users
problem [19] which refers to a situation that transactional data and lack of implicit and explicit feedback , this process
are lacking or are insufficient. In web services domain , other recommend the n-top used services by the users who shares the
gaps are revealed such as the focus on the syntactic approaches same community as the current user.
and neglecting semantic web services ( expect one research
3rd International Conference on Electrical and Information Technologies ICEIT’2017

IV. THE PROPOSED APPROACH FUNCTION Englobe ( E1 : concept, E2 : concept):boolean

Web Service selection is the process of choosing a best web VARIABLES ActualNode : the actual node
service for a consumer’s requirements, this process can be Parents : a set of previous nodes to E2
divided into two phases: matching based on functional
requirements, and then filtering and ranking based on non- A: the ontology (tree form)
functional e.g. the quality of services and the users ‘implicit BEGIN
requirements .The main components of our proposed approach
are illustrated in the following figure. Parents ‫׎‬
If E2 = racine (A) then
Parents ‫׎‬
Parents Previous(E2)
While (ActualNode <>Racine(A)) do
ActualNode Previous (ActualNode)
Parents Parents+ActualNode
End while
End if
Englobe (E1 Parents)
Then a score is assigned for each mode of matching: Exact
(score = 3), Plugin (score = 2), Subsume (score = 1), Fail
(score = 0), the following Equation generalizes the comparison
Fig. 1. Multi-level approach for selecting and recommending SWS between the concept of the service offer CO (Offer) and CD
(Demand) corresponding to the query concept:
A. Level 1: Functional selection process 3 if CiD = CiO
The explicit semantic description of web services allows to Match (CiD, CiO) = 2 if CiD  CiO
interpreting their functionalities by software agents as well as
by human users, and a correct interpretation of information sent 1 if CiD Š CiO
and received. Thus, adding semantics to web services can 0 else
improve the functional selection process but it also reveals the
need of a tool to exploit these semantics and perform the Suppose we have m concepts in the description of the
semantic matchmaking between the requested service and the service offering and m corresponding concepts in the
available services. description of the application, the similarity or the overall
match between the demand (request) D and O supply can be
To respond to the above need, we propose the use of a derived by taking the sum score of the pair of concepts, so the
matchmaking semantic algorithm based on our work[21]. Its requested service is the one that have the highest score of
aim is to perform a semantic matching between the functional match:
parameters of the user’ request and the web services’ functional
attributes (WS operation, WS input, WS output). The main key
concept in the matching algorithm is the concept of degree of
match; it describes the degree of matching between two
concepts. More precisely, the matching between two concepts The result of this step is a set of selected web services
is not syntactic, but it is based on the relation between these ordered according to their matching similarity’ degree with the
concepts in their OWL ontologies. user request.
The matching algorithm recognizes four degrees of B. Level 2: No-functional selection process
matching between two concepts (exact matching, subsume
matching, plug-in matching, fail matching). The aim of the Several services may have the same functional similarity
main function in this algorithm is to verify the concepts’ degree and in consequence offers similar functionalities. Thus,
semantic relation and determine the matching degree, a the functional matching is not enough and the challenging task
prototype of this summarized as follows: here is how to choose –among the founded services- the
relevant ones that may satisfy the user request. Another
selection’ criteria is used to respond to this challenge is the no-
functional requirements (quality of services QoS).
3rd International Conference on Electrical and Information Technologies ICEIT’2017

In order to select services that meets the no-functional the same characteristics and preferences so in consequence
requirements of users, we perform a QoS matching based on they will share similar decision patterns.
[22]. The QoS constraints used at this level are the cost, the
response time, the availability and the throughput. The aim of this phase is to help the user to pick the
adequate service, by reordering the proposed services and
S1 S2 S3 Sn recommending new services that may interest him. The main
A1 V1,1 V 2,1 V 3,1 V n,1
step is to finding similar users based on the profile and past
. interaction analysis
A2 V 1,2 V 2,2 V 3,2 . V n,2
¾ User profile
A3 V 1,3 V 2,3 V 3,3 . V n,3
Once the user is authentified, a set of related information is
. . . . . stored in his profile. It’s divided into two categories, personal
information such as the name, the location and so on. The other
Am V 1,m V 2,m V 3,m . V n,m
category is the information related to his interaction with the
system, such as his area of interest, his requests and past
Fig. 2. Matrix of QoS attributes and web services
services interaction. Also, a set of users who shares the same
The fisrt step is establishing the QoS-services matrix as interests belongs to a specific user-group (community). These
shown in figure 2, S is a set of services that are selected by the information are useful in finding similar users.
functional matching process, A is a set of QoS attributes while ¾ Similar users analysis
V is the values of the QoS attributes according to the selected
services. Then, these values will be compared to pick the In reality, users who had common interests and
services with the better quality of services attributes. For the characteristics in the past tend to have similar preferences and
cost attribute, the services with the lowest cost are selected decision making in the future. Thus, the current user can
while for the availability services with the highest value are benefit from his similar users’ feedback. To elicit these
selected. Thus, the interval and the representation unit are feedbacks we ask users to rank services after invocation
different for each attribute value.We need to normalizing these process (the explicit technique), or we extract the past users-
values before to perform the comparison. services interactions and we elaborate a range of ranking based
on the service-use (the implicit technique). Then, we establish
The second step is to normalizing the QoS matrix values the user-service matrix based on these information.
figure into the same scale (between 0 et1). To calculate the
normalized value Ni,j we calculate the maximum of each After gathering the users’ feedbacks. The similarity between a
attribute Aj as shown on equation (a). target customer and the frequent customers is calculated based
on Pearson's correlation coefficient (PCC). To calculate the
The last step is calculating the QoS scores (equation b) by similarity between a user A and B,
giving a weighted value to the attributes based on users
priorities. If a user looks for a service with the lowest cost, a
highest weight is giving to the cost attribute. Then, for each
service we sum up the QoS scores for their attributes as shown
in equation (c). Where j: services evaluated by A and B
: evaluation value of j by A
: average evaluation by A
Positive PCC value indicates that two users have similar
(c) Web service usage experiences, while negative PCC value
means that the Web service usage experiences are opposite.
Web services with the highest QoS ranking scores are the Sim(a,b) = null when two users have no commonly invoked
best candidates to satisfying no-functional requirements and by Web service.
consequence will be recommended to the users.
¾ Service recommendation for the target user
C. Level 3: Recommendation phase After identifying similar users of the target user, we can
In some cases, the result of the previous processes is a set predict the feedback of the target user and by consequence
of web services that satisfy the functional and no-functional reordering the selected list (obtained from the functional and
requirements at the same degree. Thus, the user will be no-functional processes).
confused about which service to choose and he will spend more For each service in the selected services list, we calculate
time to make a decision. To help the user at this level, we the predicted rating of the target user A for a service i based on
propose the use of the collaborative filtering recommender the weighted average as follows:
system; if we know what was the choice of his similar users in
similar situation, we can predict his choice since they shares
3rd International Conference on Electrical and Information Technologies ICEIT’2017

Where : average evaluation value by A 

: average evaluation values by user u

On the basis of these results, the selected services are

reordering according to the predicted feedback of the target
user, and also recommending new services that may interest the
target user (based on the N-top services used by similar users).
If the target user is a new users, we don’t have enough
information to find similar users and by consequence we can’t
predict the user feedback. Thus, we focus on users who belongs
to the same community (user-group) as the target user, and we
enhance the selected list by their N-top used services.
Fig. 4. Precision of two approaches
D. Results and discussion
The obtained services are the result of an accurate process The use of simulated dataset case study may influence the
that covers three aspect: the functional selection, the QoS approach performance (negatively or positively) .for that, we
selection and the recommendation. And for the best of our opt for a functional comparison based on our proposed system
knowledge, the only approach that shares the maximum features compared to the up-to-date similar systems as
similarities with our approach and based on SWS is [20]. For summarized in the following table.
that we will perform a comparison between our approach and
[20]. Therfore, Due to the lack of available training dataset for TABLE1 : FUNCTIONAL COMPARISON OF APPROACHES
semantic web services, we used a simulated dataset of semantic
web services and users’ profile. We selected 100 services Approach features Advantages/gaps
according to 10 categories from SWSCollection1, and then a F.R: Semantic matching to perform - it Combines
wide effort has investigated to determine the relevant services
similarities analysis between several
for each request-case.
services and users’ request. techniques and
More the approach select relevant services more its N.F.R: A quality of services perform several
efficiency is increased. Thus, the comparison is based on the constraints (QoS) are taking into analysis to
recall which is used for the ratio of relevant services selected to account guarantee the
the total number of relevant services available. As we can see R.P: Collaborative filtering based accuracy of the
in figure 3, our approach offers more accuracy than [20] in the on explicit and implicit users result/
maximum services categories, however the decreased recall in feedback+ using similar users to -the time
category 4 is obtained due to the lack of QoS constraints in the predict the current user feedback+ consuming gab
services descriptions. Also, our approach still offers relevant users community to address the when the number
recommendation even if in the case of new users who has
cold start problem of services is high
invoked the category 6.
F.R: no standard DL reasoning -It covers the 3
How many relevant items are selected are not enough to technique used to infer the aspects of
test the accuracy of our system. We must answer also the comparison of service descriptions. services selection
question of how many selected items are relevant. For this aim N.F.R: Using QoS constraints as - adding complex
we calculate the precision measure (see fig4) which the ratio criteria of services to find the phases to already
selected services from the recommended top-N services. Our requested services complex concept
approach gives a good precision compared to [20] also in the R.P: combines semantic Content- (SWS+ RS)+
case of stable community behavior as in category 2 and 10. based reasoning and context- decreased
dependent Collaborative Filtering. efficiency in the
large scale
F.R: ignore services functional Efficient results
analysis, it is based just on users’ in the case of
evaluation credible users
N.F.R: The Qos constraints are - the result
used to determine the similar users depends only on
[23] who shares similar QoS preferences the explicit users’
and not to compare services. evaluation, poor
R.P : The selected list are based on results if the
the similar users recommendations selected users are
combined with the prediction from not credible.
Fig. 3. Recall of two approaches service regions and user regions
F.R: functional requirements R.P: recommendation phase
3rd International Conference on Electrical and Information Technologies ICEIT’2017

N.F.R: no-functional requirements [6] D. Canturk and P. Senkul, “Using semantic information for distributed
web service discovery,”in International Journal of Web Science,PP 21-
35, 2011.
V. CONCLUSION [7] A. Cuzzocrea and M. Fisichella, “Discovering Semantic Web Services
In this paper, we propose a multi-level approach for via Advanced Graph-based Systems,” Cybernetics (SMC),
DOI : 10.1109/ICSMC.2011.6083778 , 2011.
selecting and recommending semantic web services, the focus
is both on the user side and the service side. A semantic [8] P. Harshavardhanan, J. Akilandeswari and R. Sarathkumar, “Dynamic
Web Services discovery and selection using QoS-Broker architecture,”
matchmaking algorithm that analyzes the semantic descriptions Computer Communication and Informatics (ICCCI), 2012 .
of services and the users’ request performs the functional [9] H. Luis, V. Nakamura, Pedro F. do Prado, Rafael M. de O. Libardi
services selection’ process, while the no-functional selection “Efficient web services selection based on QoS through a distributed
process filters the selected services based on the quality of parallel semantic approach,” New Technologies, Mobility and Security
services attributes that can better meet the users expectations. (NTMS), 2015.
To support the above processes, we propose collaborative [10] F. Hdioud, B , Frikh, and B. Ouhbi, ”A comparison study of some
filtering RS to generate relevant recommendations. algorithms in Recommender Systems,” Colloquium in Information
Science and Technology (CIST), 2012.
Most of the drawbacks of web services selection [11] F. Y. Zhang and P. Andreae, “Iterative Neighbourhood Similarity
‘approaches are investing the effort on the user side or the Computation for Collaborative Filtering,” IEEE/WIC/ACM Web
service side or they don’t give much concerns about the Intelligence and Intelligent Agent Technology, 2008.
implicit user’ preferences. In addition, those who propose the [12] J. B. Schafer, D. Frankowski, J. Herlocker and S. Sen , “Collaborative
Filtering Recommender Systems,” The Adaptive Web Volume, DOI
use of the recommender system in this area don’t propose (in 10.1007/978-3-540-72079-9_9 , pp 291-324c, 2007.
some cases) the adequate adaptation of the RS to the Services [13] L. Ren, J. Gu and W. Xia,“An Item-Based Collaborative Filtering
environment specifications. We tried in this paper to overcome Algorithm Utilizing the Average Rating for Items,” Processing and
these drawbacks but we have also suffers from some gaps, for Multimedia Signal, Vol 123, 2010 .
example with the increasing number of services the [14] X. g. Yang,“Collaborative Filtering Algorithm Based on Preference of
specification of web service ontology is a time consuming. Item Properties, Foundations of Intelligent Systems,” series Advances
in Intelligent Systems and Computing , 2014.
Our future works will focus on using clustering and [15] H. Luo, C. Niu, R. Shen, and C. Ullrich, “Collaborative Filtering
replication techniques to minimize the time consuming. Also, a Framework Based on Both Local User Similarity and Global User
single service is not always the requested solution by the users, Similarity,” Machine Learning and Knowledge Discovery in Databases,
for that we will extend our approach to recommending Vol 5211,2008.
composite web services. [16] F. Hdioud, B , Frikh, A. Benghabrit and B. Ouhbi, “Collaborative
Filtering with Hybrid Clustering Integrated Method to Address New-
Item Cold-Start Problem,” In Intelligent Distributed Computing IX (pp.
285-296). Springer International Publishing, 2016.
REFERENCES [17] T. Hofmann, “Latent semantic models for collaborative filtering,”
JournalACM Transactions on Information Systems (TOIS), Vol 22 Issue
1, 2004 .
[1] B. Daniel, S. Katharina, L. Holger, and D. Fensel, “Web
[18] L. H. Son, “Dealing with the new user cold-start problem in
service discovery ? a reality check,” 3rd European Semantic
recommender systems: A comparative review,” journal of Information
Web Conference, Budva, Montenegro, 2006.
Systems, Vol 58, 2014.
[2] N. N. Chan, W. Gaaloul, S. Tata, “Web Services Recommendation
[19] G. Guo, “Resolving Data Sparsity and Cold Start in Recommender
Based on User's Behavior,” 7th International Conference on e-Business
Systems,” User Modeling, Adaptation, and Personalization, DOI
Engineering (ICEBE), 2011.
10.1007/978-3-642-31454-4_36, 2012.
[3] L. Liu, C. A. Marín, and N. Mehandjiev, “Using Recommender
[20] L. Liu, F. Lecue and N. Mehandjiev “A Hybrid Approach to
Systems to Assist in Intelligent Service Composition,” International Recommending Semantic Services,” Web Services (ICWS), 2011.
Conference on Services Computing (SCC), 2014.
[21] A. latrache, E. H. Nfaoui, J. boumhidi , “A mobile agent based approach
[4] M. Li, J. Zhao and L.Wang, “CoWS: An Internetenriched and quality-
for automating "discover-compose" process of semantic web services”,
aware Web services search engine,” in Web Services (ICWS), DOI: journal of computer science,2014.
10.1109/ICWS.2011.49, 2011.
[22] S. Y. Lin, C.H. Lai, C. H. Wu, “A trustworthy QoS-based mechanism
[5] Y. Zhang, Z. Zheng, and M. R. Lyu “WSExpress: A QoS-Aware Search
for web service discovery based on collaborative filtering,” Ubiquitous
Engine for Web Services,” Web Services (ICWS), DOI : and Future Networks (ICUFN), 2013.
10.1109/ICWS.2010.20, 2010.
[23] X. Chen, Z. Zheng, “Web Service Recommendation via Exploiting
Location and QoS Information,” Journal IEEE Transactions on Parallel
and Distributed Systems, 2014 .