120 likes | 257 Views
e n T ish: an approach to service description and composition. Stanis ł aw Ambroszkiewicz the leader of the en T ish team IPI PAN, Polish Academy of Sciences and Institute of Informatics, University of Podlasie , Poland. s ervice s composition.
E N D
enTish: an approach to service description and composition Stanisław Ambroszkiewicz the leader ofthe enTish team IPI PAN, Polish Academy of Sciences and Institute of Informatics, University of Podlasie, Poland
services composition • According to SOA paradigm the clients’ requests (tasks) are to be realized whereas the services are to be used • What is service composition for? • For creating sophisticaticated business procesess (BPEL4WS, WSCI, BPML, DAML-S, SELF-SERV) – procedural approach (How to do?) • service architecture corresponds to SOAP + WSDL • For realizing clients’ task (SWORD, XSRL, enTish)- declarative approach (What to do?) • the task is specified explicitely; a protocol for task realization is needed • more sophisticated service architecture is required
Service architecturefor declarative approach • The second layer has two interrelated components: raw application (Function), and Filter. • Raw application implements a single input-output operation. • Given a specification of the desired output to be produced by the raw application (Function), the Filter replies with specifications of the required input.
middleware (broker) serviceRegistry register application Send task and get result discovery publication clients’ tasks Services (applications) invocation, coordination, transaction Service requestor Service provider enTish - our approach to service composition The challenge: How to realize such middleware?
You can join your application as service via API You can create a task, deliver input resources, and get the final result You can define your own data types, functions, relations; i.e., you own ontology Abstract architecturemiddleware
Agent based approach to realize the middleware • the idea: • service is represented by service-agent • client’s task is represented by task-agent • the agents speak one common language according to a conversation protocol • the conversation protocol is for service publication, discovery, composition, invocation, and transactions • the basic components of the middleware: • agents and • conversation language
agent’s state, and message schemasstate.xsd, message.xsd common State schema for task-agent and service-agent: • Goal, Intentions, Commitments, Knowledge Message: • Header: • From, To, Protocol, Order • Body: • a list of evaluated formulas of the contents language
Contents language Entish formula.xsd • Contents language is a simple version of typed FOL without quantifiers: • all namesin the language are URIs that point to concrete data • names for types, functions, relations, variables • terms and formulas are defined in the standard way in the schema formula.xsd • evaluated formula is defined in the schema info.xsd: • formula • time&place stamp • signature (optional in the current version)
Introducing ontologies definitions.xsd • contents language is open and eXtensible: • you can introduce your own ontology as an instance of definitions.xsd, i.e., introduce new types, new functions, and new relations to the language • upper ontology for sdc: • properEntish.xml is an instance of definitions.xsd • basic primitive concepts: agent, service, resource, intentions, commitments, timeout, ... • formula examples: • task formula: ?z=f(?x, g(?y)) and timeout(t0) • intention formula: φ implies intentions( agent0 )
Conversation protocol entish 1.0 • agents and services exchange messages with specific contents in order to realize: • service publication • service discovery • arranging services into a workflow • worklow execution and control • distributed transaction
Conversation protocol entish 1.0 • workflow composition phase – the idea: • agent sends message to service0: „my intention is φ” • service replies: „I commit to realize φ if you realize ψ” • „ψ”becomes the next intention of the agent • agent is looking for a service that can realize „ψ” • suppose service1 could realize „ψ” • agent sends message to the service1: „my intention is ψ” • and so on ... more in enTish-Docs.pdf
say nothing that isn’t worth saying • the first version of enTish specs was completed (see enTish-DOCUMENTATION.pdf) • enTish is a working technology ! • prototype was realized (October 2002), is ready for testing and evaluation via three www interfaces starting with www.ipipan.waw.pl/mas/ • work in progress on the next independent implementations