Research Article
An Improved Abstract State Machine Based Choreography Specification and Execution Algorithm for Semantic Web Services
Listing 3
Running the goal and web service rules.
(1) runWsRules(?WS) :- | (2)?_Temp = setof ?ruleID ∣ | (3)?WS:WebService[wsRule(?ruleID):ForallRule -> ?ruleBody], | (4)invoke(WEBSERVICE, ?ruleBody), | (5)?_Temp2 = setof ?ruleID ∣ | (6)?WS:WebService[wsRule(?ruleID):ChooseRule -> ?ruleBody], | (7)invokeChoose(WEBSERVICE,?ruleBody). | ------------------------------------------------------- | (8) runGoalRules(?goal) :- | (9)?_Temp = setof ?ruleID ∣ | (10)?goal:Goal[gRule(?ruleID):ForallRule -> ?ruleBody], | (11)invoke(GOAL,?ruleBody), | (12)?_Temp2 = setof ?ruleID ∣ | (13)?goal:Goal[gRule(?ruleID):ChooseRule -> ?ruleBody], | (14)invokeChoose(GOAL,?ruleBody). |
|