Research Article
Prefiltering Strategy to Improve Performance of Semantic Web Service Discovery
Algorithm 1
Filtering by comparing concepts and attributes.
Input: List1 of the form [(Concept, [ListOfAttributes]), …] | (extracted from either Goal.Pre or Ws.Post) | List2 of the form [(Concept, [ListOfAttributes]), …] | (extracted from either Ws.Pre or Goal.Post) | Tag (either GOAL or WEBSERVICE) | Output: (WsName, Tag) (as insertion into module FilteredWsModule) | (1) Let equiv(, ) = (:: ) or (:: ) or (:=: ) | (2) PossibleMatch ← True | (3) for all (Concept2, [ListOfAttributes2]) List2 do | (4) if not (Concept1, [ListOfAttributes1]) List1 ( | (5) equiv(Concept1, Concept2) and | (6) (attribute2 [ListOfAttributes2]) ( | (7) (attribute1 [ListOfAttributes1]) ( | (8) equiv(attribute1, attribute2) | (9) ) | (10) ) | (11) ) | (12) then | (13) PossibleMatch ← False | (14) end if | (15) end for | (16) if | (17) PossibleMatch = True | (18) then | (19) Insert (WsName, Tag) into FilteredWsModule | (20) end if |
|