
1f256fc606376eb774dad0960caca488.ppt
- Количество слайдов: 19
Discovery and Mediation using Diane Service Descriptions Ulrich Küster University Jena Germany 1
Agenda § Introduction to DIANE Service Descriptions (DSD) § Solution to Discovery Scenario § Example descriptions (Muller offer, Goal 3 b) § Matching § Invocation § Remarks about Discovery Scenario § Solution to Mediation Scenario Version 1 § Remarks about Mediation Scenario Version 2 2
What is DSD? § Goal: Complete efficient automation of discovery and invocation § Basic Services: § two-phase choreography (n stateless estimation steps, 1 execution step) § DSD language: § lightweight ontology language (object oriented) § special constructs to describe services § Keep efficient matching in mind 3
Service specific elements of DSD (1) § Operational elements § to capture world altering effects states (instances of state ontology: Owned, Known, Printed, Shipped, Accessible, …) § Aggregational elements § Moon sells more than one item, Muller transports to a variety of countries Usually describe sets of effects Current semantic: One out of a set of effects is requested / created 4
Service specific elements of DSD (2) § Selecting elements § to support configuration by the requestor (select one out of the offered effects) § to inform requestor about produced effect variables (input / output) § Valuing elements § to express preferences of the requestor fuzzy sets (the higher the membership, the higher the preference) strategies (specify how to i. e. trade-off price versus shipping time, underspecified offers, …) unbiased, deterministic, precise matching 5
Agenda § Introduction to DIANE Service Descriptions (DSD) § Solution to Discovery Scenario § Example descriptions (Muller offer, Goal 3 b) § Matching § Invocation § Remarks about Discovery Scenario § Solution to Mediation Scenario Version 1 § Remarks about Mediation Scenario Version 2 6
Excerpt from Muller offer description service instance 7 offered effect(s)
Excerpt from description of Goal 3 b service instance requested effect(s) preferrably 0 but up to 20 accepted 8
Matching § Given request r and offer o solve the following problem: a) Compute fuzzy containment value subset Є [0, 1] of o in r (How well is the offer contained in the requested effects? ) b) Where possible, configure o such as to maximize subset? § 10 Implementation descends through description graphs, fills variables with optimal values, recursively computes subset for each element, combines subset values
Automated Service Invocation § service grounding (part of offer description) § SOAP-grounding specifies § endpoint, SOAP Action header and empty message template § mapping definitions DSD-Elements <-> XML § given configured offer description (DSD-Elements) fill XML message template § invoke service § create results (DSD-Elements) from reply message § if necessary fill xml template to return to requestor (request grounding) 11
Excerpt from Racer's grounding soap. Operations += anonymous SOAPOperation at upper. grounding [ soap. Action = "Shipment. Order", xml. Template. Path = "racer. Invoke. xml", endpoint = "http: //sws-challenge. org/shipper/v 2/racer", mapping. IN += anonymous Xml. Dsd. Mapping at upper. grounding [ variable = $to. Address, data. Node. Path = "Order. Operation. Request/to", attribute. Mappings += anonymous Xml. Dsd. Attribute. Mapping at upper. grounding [ attribute. Path = "name", sub. Node. Path = "Last. Name" ], attribute. Mappings += anonymous Xml. Dsd. Attribute. Mapping at upper. grounding [ attribute. Path = "city/located. In", sub. Node. Path = "Country", // name of united kingdom differs from ontology names converter. Class. Name = "diane. converter. Racer. Country. Converter", converter. Method. Name = "convert" ], . . . ], 12
Remarks about Discovery Scenario § DSD very well suited § modelling fast and straightforward § Shortcomings § pickup time constraints could not be modelled § currently no concepts like "now", "today", … § currently no complex expressions over multiple elements ("pickup. begin – pickup. end >= 120 minutes") § complex price expressions (Racer, Walker, Runner, Weasel) could not be modelled § solved by deploying price computation web services § price integrated as estimate variable (as in Muller's offer) § Goal 4 (multiple invocations) could not be modelled § but concepts currently being implemented 13
Agenda § Introduction to DIANE Service Descriptions (DSD) § Solution to Discovery Scenario § Example descriptions (Muller offer, Goal 3 b) § Matching § Invocation § Remarks about Discovery Scenario § Solution to Mediation Scenario Version 1 § Remarks about Mediation Scenario Version 2 14
Mediation Scenario 1 - Architecture 15
Excerpt from Moon's offer description 16
Mediation Scenario 1 - Architecture 17
Remarks about Mediation Scenario 1 § Modelling of services fairly easy, BUT § DSD unable to handle complex stateful interaction with Moon's system ( simple DSD Choreography) § handwritten BPEL process to wrap Moon and expose simple interface ( Process mediation mainly performed manually, not so nice…) § Rosetta-DSD Translator § mainly handwritten (internal ontology differs from Rosetta. Net modelling) § Quite a bit of effort, approach only advantageous if more partners cooperate 18
How to implement Mediation Scenario 2? § Delivery address may be specified on item level § Need to group items by address, issue one order per address Adapt Rosetta-DSD Translator § Rejected items may be scheduled for production § Further complicates already complex choreography Adapt BPEL wrapper service TODO 19
Thank you for your attendance! Questions? Ulrich Küster DIANE project (services in ad hoc networks) http: //hnsp. inf-bb. uni-jena. de/DIANE/ 20