|
SeGSeC: Semantic Graph based Service Composition |
|
Architecture
SeGSeC is designed as a collection of agents, namely, RequestAnalyzer, ServiceComposer, Reasoner, and ServicePerformer. RequestAnalyzerRequestAnalyzer parses a user request given as a string text (e.g. "print direction from home to restaurant") into a CoSMoS semantic graph representation (e.g. the following figure).
After parsing a user request, RequestAnalyzer gives the request to ServiceComposer. ServiceComposerUpon receiving a request from RequestAnalyzer, ServiceComposer first searches for an operation ("print" operation of a Printer component) that performs the predicate in the request ("print" predicate). Then, ServiceComposer generates an execution path by connecting inputs of an operation with outputs of other operations or properties of other components. For example, the following execution path can be generated from the components representing Printer, DirectionGenerator, Home and Restaurant.
After generating an execution path, ServiceComposer gives the path and the user request to Reasoner and asks to perform semantic matching. ReasonerReasoner is an agent implementing a reasoning functionality to perform semantic matching. Reasoner performs semantic matching by performing reasoning to check if the user request can be satisfied by applying semantic matching rules onto the execution path. The semantic matching rules are the rules designed to derive semantic meanings from the interactions of components in an execution path.
After completing the semantic matching, the execution path is given to ServicePerformer for execution. ServicePerformerOn receiving an execution path, ServicePerformer executes the path by
accessing the components (i.e. invoking operations and retrieving properties). For more detailed mechanism of SeGSeC, please see our publications. |
|
(c) Keita Fujii (kfujii@ics.uci.edu) |