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 |
|