Research Article

Graph-Based Semantic Web Service Composition for Healthcare Data Integration

Algorithm 1

Forward search.
Input: and are the requested input and output parameters of WS searching (I/O dependency)
Output: is a set of discovered paths of potential web services (sets of operations)
procedure FWS(u,v)
         //V is a set of discovered nodes
       //Q is a set of queue of ordered pairs of vertices and paths (sets of arcs)
while do
      //get the ordered pair of vertex and path (set of arcs) in queue as
  if is equal to then     //check if t is the destiny vertex of I/O dependency
           //add w into
  end if
  for      //to find the adjacent arcs of t through a query “select ?e where {?e tail ?t.}”
            //create wj as a clone arcs set of w
           //append an arc to arcs set
       //find head vertex of arc e from a query “select ?ui where {?e head ?ui.}”
   if is not in then    //check if ui have not been visited
         //add ui to the set of visited vertices
    enqueue to     //put order to Q for the next round in while loop
   else if then
    enqueue to     //put order to the if is equal to to find other paths of I/O
   end if
  end for
end while
return            //return when is empty
end