DMCA
Personalised Graph-based Selection of Web APIs (2012)
Venue: | In Proceedings of the 11th International Semantic Web Conference (ISWC). Lecture Notes in Computer Science |
Citations: | 1 - 0 self |
Citations
430 |
Maximal flow through a network
- Ford, Fulkerson
- 1956
(Show Context)
Citation Context ...ed at the same time along with all its edges that connect it to other nodes in the graph. For all other edges it holds that A(ei,t) = 1. 3.2 Algorithm We calculate the Maximum Activation according to the following algorithm. Inputs: – Graph G = (V, E , I) constructed from the Web Linked APIs dataset. – A user profile P = {p1, p2, ..., pn}. – Web API candidates W = {w1, w2, ..., wm}. – A user preference function S(ei). Output: – A set of maximum activations {ai} evaluated for each wi ∈W . Uses: – A set C = {e1, e2, ..., ek}, ei ∈ E . – A function FF that represents the Ford-Fulkerson algorithm [8]. Algorithm: 1: // create a virtual source node p′ 2: add node p′ to V 3: for all pi ∈ P do 4: add edge e(p′, pi) to E , S(e)← 100000, A(e)← 1 5: end for 6: // calculate a maximum activation ai from 6 7: // a virtual node p′ to every Web API candidate wi 8: for all wi ∈W do 9: C ← FF (p′, wi,G) 10: ai ← ∑ ei∈C(I(ei)) 11: end for In lines 2–5, the algorithm first creates a virtual node representing a single source node with links connecting the virtual node and all other nodes from the user profile. Any edge that connects the virtual node with any other node in the graph has a capacity set to a... |
268 |
A spreading activation theory of memory
- Anderson
- 1983
(Show Context)
Citation Context ...n [2] propose service selection based on previously captured user preferences using the “Follow the Leader” model. In [14] the authors construct collaboration network of APIs and propose a social API Rank based on the past APIs’ utilisations. Other approaches that rank services based on results from social network-based analyses in social API networks can be found in [17] and [13]. A particular method that relates to our work is the already mentioned spreading activation. It is a graph-based technique, originally proposed as a model of the way how associative reasoning works in the human mind [4]. The spreading activation requires directed semantic network, e.g. an RDF graph [5,9,7]. The inputs of the basic spreading activation algorithm are number of nodes with an initial activation which represent a query or interests of a user. In sequence of iterations initial (active) nodes pass some activation to connected nodes, usually with some weighting of connections determining how much spread gets to each. This is then iterated until some termination condition is met. The termination conditions is usually represented as a maximum number of activated nodes or a number of iterations. After ... |
170 | Application of spreading activation techniques in information retrieval.
- Crestani
- 1997
(Show Context)
Citation Context ... iterated until some termination condition is met. The termination conditions is usually represented as a maximum number of activated nodes or a number of iterations. After the algorithm terminates, activated nodes represent a similar nodes to the initial set of nodes. Compared to our maximum activation method, the spreading activation does not guarantee an activation of a particular node while our method always assigns an activation if there exists an improving path between source and target nodes. Although there exist constrained spreading activation methods which utilise semantics of edges [6], no version of the spreading activation takes into account the “age” of edges as our method does. The maximum activation is better suited for the Web API selection mainly due to following reasons: 1) it is not known at which nodes the spreading activation terminates while the Web API selection problem uses Web API candidates as an input (target nodes), 2) the spreading activation has a local meaning of activations that indicates a measure that can be used for recommendations on data whereas maximum activation uses the value as a global measure of connectivity from source to target nodes. Ther... |
56 |
SAWSDL: Semantic Annotations for WSDL and XML Schema.
- Kopecky, Vitvar, et al.
- 2007
(Show Context)
Citation Context ...plan to do this in our future work, the Linked Web APIs dataset that we present here already provides the sufficient information for our Web API selection method. The Linked Web API dataset uses several well-known ontologies. Concepts from FOAF5 ontology (prefix foaf) represent mashup developers as foaf:person concepts with their social links, concepts from the WSMO-lite [15] ontology (prefix wl) represent Web APIs as wl:service concepts and their functional category descriptions. We also use the Dublin Core6 vocabulary (prefix dc) for properties such as title, creator and date, and the SAWSDL[12] property sawsdl:modelReference. Further, we create new concepts and properties for which we use the ls prefix. We define the ls:mashup concept that represents a mashup and the ls:category concept that represents a functional Web API/mashup category. There are following types of edges in the Linked Web APIs: 5 http://xmlns.com/foaf/0.1/ 6 http://dublincore.org/documents/dcmi-terms/ 4 1. User—User: an edge between two user nodes represented with the foaf:knows property indicating a social link. 2. User—Mashup: an edge between a user and a mashup represented with the dc:creator property. 3. Mash... |
52 | WSMO-Lite Annotations for Web Services, in:
- Vitvar, Kopecky, et al.
- 2008
(Show Context)
Citation Context ... APIs richer such as various technical information about protocols and data formats. Also, we could better associate the data with other datasets in the Link Data cloud and publish it to the Linked Data community. Although we plan to do this in our future work, the Linked Web APIs dataset that we present here already provides the sufficient information for our Web API selection method. The Linked Web API dataset uses several well-known ontologies. Concepts from FOAF5 ontology (prefix foaf) represent mashup developers as foaf:person concepts with their social links, concepts from the WSMO-lite [15] ontology (prefix wl) represent Web APIs as wl:service concepts and their functional category descriptions. We also use the Dublin Core6 vocabulary (prefix dc) for properties such as title, creator and date, and the SAWSDL[12] property sawsdl:modelReference. Further, we create new concepts and properties for which we use the ls prefix. We define the ls:mashup concept that represents a mashup and the ls:category concept that represents a functional Web API/mashup category. There are following types of edges in the Linked Web APIs: 5 http://xmlns.com/foaf/0.1/ 6 http://dublincore.org/documents/d... |
22 | H.: WSRec: A Collaborative Filtering Based Web Service Recommender System.
- Ma
- 2009
(Show Context)
Citation Context ...PI selection mainly due to following reasons: 1) it is not known at which nodes the spreading activation terminates while the Web API selection problem uses Web API candidates as an input (target nodes), 2) the spreading activation has a local meaning of activations that indicates a measure that can be used for recommendations on data whereas maximum activation uses the value as a global measure of connectivity from source to target nodes. There are other works in the area of Web Service discovery and selection including QoS selection [10,18], collaborative and content-based filtering methods [3,20,11,19] which are less relevant. 14 6 Conclusion and Future Work A popularity and a growing number of Web APIs and mashups require new methods that users can use for more precise selection of Web APIs. Current approaches for searching and selecting Web APIs utilize rankings based on Web APIs popularity either explicitly expressed by users or a number of Web APIs used in mashups. Such metrics works well for the large, widely-known and wellestablished APIs such as Google APIs, however, they impede adoption of more recent, newly created APIs. In order to address this problem we proposed a novel activati... |
13 | Querying linked data using semantic relatedness: a vocabulary independent approach.
- Freitas
- 2011
(Show Context)
Citation Context ...the “Follow the Leader” model. In [14] the authors construct collaboration network of APIs and propose a social API Rank based on the past APIs’ utilisations. Other approaches that rank services based on results from social network-based analyses in social API networks can be found in [17] and [13]. A particular method that relates to our work is the already mentioned spreading activation. It is a graph-based technique, originally proposed as a model of the way how associative reasoning works in the human mind [4]. The spreading activation requires directed semantic network, e.g. an RDF graph [5,9,7]. The inputs of the basic spreading activation algorithm are number of nodes with an initial activation which represent a query or interests of a user. In sequence of iterations initial (active) nodes pass some activation to connected nodes, usually with some weighting of connections determining how much spread gets to each. This is then iterated until some termination condition is met. The termination conditions is usually represented as a maximum number of activated nodes or a number of iterations. After the algorithm terminates, activated nodes represent a similar nodes to the initial set o... |
9 |
Qos-based service ranking and selection for service-based systems.
- Yau, Yin
- 2011
(Show Context)
Citation Context ...does. The maximum activation is better suited for the Web API selection mainly due to following reasons: 1) it is not known at which nodes the spreading activation terminates while the Web API selection problem uses Web API candidates as an input (target nodes), 2) the spreading activation has a local meaning of activations that indicates a measure that can be used for recommendations on data whereas maximum activation uses the value as a global measure of connectivity from source to target nodes. There are other works in the area of Web Service discovery and selection including QoS selection [10,18], collaborative and content-based filtering methods [3,20,11,19] which are less relevant. 14 6 Conclusion and Future Work A popularity and a growing number of Web APIs and mashups require new methods that users can use for more precise selection of Web APIs. Current approaches for searching and selecting Web APIs utilize rankings based on Web APIs popularity either explicitly expressed by users or a number of Web APIs used in mashups. Such metrics works well for the large, widely-known and wellestablished APIs such as Google APIs, however, they impede adoption of more recent, newly created API... |
8 | Enrichment and ranking of the youtube tag space and integration with the linked data cloud. The Semantic Web-ISWC
- Choudhury, Breslin, et al.
- 2009
(Show Context)
Citation Context ...the “Follow the Leader” model. In [14] the authors construct collaboration network of APIs and propose a social API Rank based on the past APIs’ utilisations. Other approaches that rank services based on results from social network-based analyses in social API networks can be found in [17] and [13]. A particular method that relates to our work is the already mentioned spreading activation. It is a graph-based technique, originally proposed as a model of the way how associative reasoning works in the human mind [4]. The spreading activation requires directed semantic network, e.g. an RDF graph [5,9,7]. The inputs of the basic spreading activation algorithm are number of nodes with an initial activation which represent a query or interests of a user. In sequence of iterations initial (active) nodes pass some activation to connected nodes, usually with some weighting of connections determining how much spread gets to each. This is then iterated until some termination condition is met. The termination conditions is usually represented as a maximum number of activated nodes or a number of iterations. After the algorithm terminates, activated nodes represent a similar nodes to the initial set o... |
5 |
An effective web service recommendation method based on personalized collaborative filtering.
- Jiang, Liu, et al.
- 2011
(Show Context)
Citation Context ...PI selection mainly due to following reasons: 1) it is not known at which nodes the spreading activation terminates while the Web API selection problem uses Web API candidates as an input (target nodes), 2) the spreading activation has a local meaning of activations that indicates a measure that can be used for recommendations on data whereas maximum activation uses the value as a global measure of connectivity from source to target nodes. There are other works in the area of Web Service discovery and selection including QoS selection [10,18], collaborative and content-based filtering methods [3,20,11,19] which are less relevant. 14 6 Conclusion and Future Work A popularity and a growing number of Web APIs and mashups require new methods that users can use for more precise selection of Web APIs. Current approaches for searching and selecting Web APIs utilize rankings based on Web APIs popularity either explicitly expressed by users or a number of Web APIs used in mashups. Such metrics works well for the large, widely-known and wellestablished APIs such as Google APIs, however, they impede adoption of more recent, newly created APIs. In order to address this problem we proposed a novel activati... |
2 |
Spreading activation over ontology-based resources: from personal context to web scale reasoning.
- Dix
- 2010
(Show Context)
Citation Context ...the “Follow the Leader” model. In [14] the authors construct collaboration network of APIs and propose a social API Rank based on the past APIs’ utilisations. Other approaches that rank services based on results from social network-based analyses in social API networks can be found in [17] and [13]. A particular method that relates to our work is the already mentioned spreading activation. It is a graph-based technique, originally proposed as a model of the way how associative reasoning works in the human mind [4]. The spreading activation requires directed semantic network, e.g. an RDF graph [5,9,7]. The inputs of the basic spreading activation algorithm are number of nodes with an initial activation which represent a query or interests of a user. In sequence of iterations initial (active) nodes pass some activation to connected nodes, usually with some weighting of connections determining how much spread gets to each. This is then iterated until some termination condition is met. The termination conditions is usually represented as a maximum number of activated nodes or a number of iterations. After the algorithm terminates, activated nodes represent a similar nodes to the initial set o... |
2 |
Automating qos based service selection.
- Godse, Bellur, et al.
(Show Context)
Citation Context ...does. The maximum activation is better suited for the Web API selection mainly due to following reasons: 1) it is not known at which nodes the spreading activation terminates while the Web API selection problem uses Web API candidates as an input (target nodes), 2) the spreading activation has a local meaning of activations that indicates a measure that can be used for recommendations on data whereas maximum activation uses the value as a global measure of connectivity from source to target nodes. There are other works in the area of Web Service discovery and selection including QoS selection [10,18], collaborative and content-based filtering methods [3,20,11,19] which are less relevant. 14 6 Conclusion and Future Work A popularity and a growing number of Web APIs and mashups require new methods that users can use for more precise selection of Web APIs. Current approaches for searching and selecting Web APIs utilize rankings based on Web APIs popularity either explicitly expressed by users or a number of Web APIs used in mashups. Such metrics works well for the large, widely-known and wellestablished APIs such as Google APIs, however, they impede adoption of more recent, newly created API... |
2 |
Web service selection in trustworthy collaboration network.
- Wang, Zhu, et al.
- 2011
(Show Context)
Citation Context ... 4522 SinglePlatform API 2012-01-30 150 2 125 1 6 2980 Menu Mania API 2009-12-05 220 1 65 2 1 611 BooRah API 2008-10-31 120 3 30 3 3 5 Related Work Graph-based representation of services is a relatively new approach. The authors in [2] propose service selection based on previously captured user preferences using the “Follow the Leader” model. In [14] the authors construct collaboration network of APIs and propose a social API Rank based on the past APIs’ utilisations. Other approaches that rank services based on results from social network-based analyses in social API networks can be found in [17] and [13]. A particular method that relates to our work is the already mentioned spreading activation. It is a graph-based technique, originally proposed as a model of the way how associative reasoning works in the human mind [4]. The spreading activation requires directed semantic network, e.g. an RDF graph [5,9,7]. The inputs of the basic spreading activation algorithm are number of nodes with an initial activation which represent a query or interests of a user. In sequence of iterations initial (active) nodes pass some activation to connected nodes, usually with some weighting of connection... |
2 |
Collaborative filtering based service ranking using invocation histories.
- Zhang, Ding, et al.
- 2011
(Show Context)
Citation Context ...PI selection mainly due to following reasons: 1) it is not known at which nodes the spreading activation terminates while the Web API selection problem uses Web API candidates as an input (target nodes), 2) the spreading activation has a local meaning of activations that indicates a measure that can be used for recommendations on data whereas maximum activation uses the value as a global measure of connectivity from source to target nodes. There are other works in the area of Web Service discovery and selection including QoS selection [10,18], collaborative and content-based filtering methods [3,20,11,19] which are less relevant. 14 6 Conclusion and Future Work A popularity and a growing number of Web APIs and mashups require new methods that users can use for more precise selection of Web APIs. Current approaches for searching and selecting Web APIs utilize rankings based on Web APIs popularity either explicitly expressed by users or a number of Web APIs used in mashups. Such metrics works well for the large, widely-known and wellestablished APIs such as Google APIs, however, they impede adoption of more recent, newly created APIs. In order to address this problem we proposed a novel activati... |
1 |
Spreading activation for web scale reasoning: Promise and problems. In WebSci.
- Akim
- 2011
(Show Context)
Citation Context ...ed–it takes into account user’s preferences such as developers the user knows and preferences that define importances of predicates, and 3) temporal–it takes into account a time when Web APIs and mashups appeared in the graph for the first time. We develop a method called the Maximum Activation and show how it can be used for the Web API selection. The method calculates a maximum activation from initial nodes of the graph (defined by a user profile), to each node from a set where a node in the set represents a Web API candidate. We adopt the term activation from the spreading activation method[1] and we use it as a measure of a connectivity between source nodes (initial nodes defined by a user profile) and a target node (a Web API candidate). We use flow networks as an underlying concept for evaluation of the maximum activation in the graph. We implement the method as a Gephi plugin,4 and we evaluate it on several experiments showing that the method gives better results over traditional popularity-based recommendations. The remainder of this paper is structured as follows. Section 2 describes the underlying Linked Web APIs dataset and Section 3 describes the maximum activation method,... |
1 |
A social network approach in semantic web services selection using follow the leader behavior.
- Al-Sharawneh, Williams
- 2009
(Show Context)
Citation Context ...ion λ not set Max-Activation λ = 0.01 PW rank value rank value rank 4348 Seatwave API 2012-02-28 940 3 842 1 4 1578 Eventful API 2005-10-31 3930 1 710 2 1 5371 Upcoming.rg API 2005-11-19 3220 2 411 3 2 13 Table 6. Summarised ranking results for Restaurant API Node ID API name Date created Max-Activation λ not set Max-Activation λ = 0.01 PW rank value rank value rank 4522 SinglePlatform API 2012-01-30 150 2 125 1 6 2980 Menu Mania API 2009-12-05 220 1 65 2 1 611 BooRah API 2008-10-31 120 3 30 3 3 5 Related Work Graph-based representation of services is a relatively new approach. The authors in [2] propose service selection based on previously captured user preferences using the “Follow the Leader” model. In [14] the authors construct collaboration network of APIs and propose a social API Rank based on the past APIs’ utilisations. Other approaches that rank services based on results from social network-based analyses in social API networks can be found in [17] and [13]. A particular method that relates to our work is the already mentioned spreading activation. It is a graph-based technique, originally proposed as a model of the way how associative reasoning works in the human mind [4]. ... |
1 |
Combining collaborative filtering and semantic content-based approaches to recommend web services.
- and
- 2010
(Show Context)
Citation Context ...PI selection mainly due to following reasons: 1) it is not known at which nodes the spreading activation terminates while the Web API selection problem uses Web API candidates as an input (target nodes), 2) the spreading activation has a local meaning of activations that indicates a measure that can be used for recommendations on data whereas maximum activation uses the value as a global measure of connectivity from source to target nodes. There are other works in the area of Web Service discovery and selection including QoS selection [10,18], collaborative and content-based filtering methods [3,20,11,19] which are less relevant. 14 6 Conclusion and Future Work A popularity and a growing number of Web APIs and mashups require new methods that users can use for more precise selection of Web APIs. Current approaches for searching and selecting Web APIs utilize rankings based on Web APIs popularity either explicitly expressed by users or a number of Web APIs used in mashups. Such metrics works well for the large, widely-known and wellestablished APIs such as Google APIs, however, they impede adoption of more recent, newly created APIs. In order to address this problem we proposed a novel activati... |
1 |
On the social aspects of personalized ranking for web services.
- Shafiq, Alhajj, et al.
- 2011
(Show Context)
Citation Context ...glePlatform API 2012-01-30 150 2 125 1 6 2980 Menu Mania API 2009-12-05 220 1 65 2 1 611 BooRah API 2008-10-31 120 3 30 3 3 5 Related Work Graph-based representation of services is a relatively new approach. The authors in [2] propose service selection based on previously captured user preferences using the “Follow the Leader” model. In [14] the authors construct collaboration network of APIs and propose a social API Rank based on the past APIs’ utilisations. Other approaches that rank services based on results from social network-based analyses in social API networks can be found in [17] and [13]. A particular method that relates to our work is the already mentioned spreading activation. It is a graph-based technique, originally proposed as a model of the way how associative reasoning works in the human mind [4]. The spreading activation requires directed semantic network, e.g. an RDF graph [5,9,7]. The inputs of the basic spreading activation algorithm are number of nodes with an initial activation which represent a query or interests of a user. In sequence of iterations initial (active) nodes pass some activation to connected nodes, usually with some weighting of connections determi... |
1 |
Improving web api discovery by leveraging social information.
- Torres, Tapia, et al.
- 2011
(Show Context)
Citation Context ... 1 Introduction The rapid growth of Web APIs and a popularity of service-centric architectures promote a Web API as a core feature of any Web application. According to ProgrammableWeb3, a leading service and mashup directory, the number of Web APIs has steadily increased since 2008. While it took eight years to reach 1,000 APIs in 2008, and two years to reach 3,000 in 2010, it took only 10 months to reach 5,000 by the end of 2011 [16]. In spite of this increase, several problems are starting to arise. Old and new not yet popular Web APIs usually suffer from the preferential attachment problem [14], developers can only run a keyword-based search in a service directory or they run a Google search to find Web pages that reference or describe Web APIs. Although there exist a number of sophisticated mechanisms for service discovery, selection and ranking, there is still a lack of 3 http://www.programmableweb.com 2 methods that would in particular take into account a wider Web APIs’ and developers’ contexts including developers’ profiles, information who developed Web APIs or used them in a mashup, Web APIs’ or mashups’ categories as well as the time when an API or a mashup was developed or ... |
1 |
Programmatic interfaces for web applications, guest introduction (to appear).
- Vitvar, Vinoski, et al.
- 2012
(Show Context)
Citation Context ...ontextualised results than currently available popularitybased rankings. Keywords: Web APIs, Web services, personalisation, ranking, service selection, social network 1 Introduction The rapid growth of Web APIs and a popularity of service-centric architectures promote a Web API as a core feature of any Web application. According to ProgrammableWeb3, a leading service and mashup directory, the number of Web APIs has steadily increased since 2008. While it took eight years to reach 1,000 APIs in 2008, and two years to reach 3,000 in 2010, it took only 10 months to reach 5,000 by the end of 2011 [16]. In spite of this increase, several problems are starting to arise. Old and new not yet popular Web APIs usually suffer from the preferential attachment problem [14], developers can only run a keyword-based search in a service directory or they run a Google search to find Web pages that reference or describe Web APIs. Although there exist a number of sophisticated mechanisms for service discovery, selection and ranking, there is still a lack of 3 http://www.programmableweb.com 2 methods that would in particular take into account a wider Web APIs’ and developers’ contexts including developers’... |