1 / 21

Reference Implementation WSMX

Reference Implementation WSMX. Matthew Moran, (Emilia Cimpian, AdrianMocan, Eyal Oren, Michal Zaremba) Digital Enterprise Research Institute matthew.moran@deri.ie 1st F2F meeting SDK cluster working group on Semantic Web Services Wiesbaden, Germany, 15-03-2004. WSMX Overview. Goal

Download Presentation

Reference Implementation WSMX

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Reference ImplementationWSMX Matthew Moran, (Emilia Cimpian, AdrianMocan, Eyal Oren, Michal Zaremba) Digital Enterprise Research Institute matthew.moran@deri.ie 1st F2F meeting SDK cluster working group on Semantic Web Services Wiesbaden, Germany, 15-03-2004

  2. WSMX Overview • Goal • To build a Web Service execution environment as a reference implementation of WSMO • Initial scope • WSMO Lite • Sub-deliverables • D13.1 Conceptual model • D13.2 Execution Semantics • D13.3 Mediation • D13.4 Architecture • D13.5 Implementation matthew.moran@deri.ie

  3. Conceptual Model matthew.moran@deri.ie

  4. Conceptual Model • Integration Type • Defines an integration task • WSMO written in BNF form • Contains a set of declarative instructions that can be validated and interpreted by WSMX trading_partner: E1 (self) use_ontology: E1_ont use_ontology: RN_ont use_concept: E1_ont.PO use_concept: RN_ont.PO use_proxy: sendE2_PO trading_partner: E2 mediator: E1_ont, RN_ont proxy: sendE2_PO matthew.moran@deri.ie

  5. Execution Semantics WSMX Execution Semantics • What are they? • Formal definition of WSMX operational behaviour • How to Model them? • By identifying states and how the execution environment transitions between states • By using modelling technique such as Petri Nets to identify problems such as deadlocks matthew.moran@deri.ie

  6. Mediation • Mediation can mean transformation • Challenges faced • Structure • Different composition of concepts • Completeness • Incomplete concept representation on source or target • Data type mismatch • Example: Zip Code as string; Zip Code as positive integer • Subsumption matthew.moran@deri.ie

  7. Address1 Street and number Street Number Locality Country ZIP Axioms: zip_number[value => integer] ZN[value->V]:-ZN:zip_number, V>0. local[str=>street, number=>integer] address1[str_no => local, loc => locality, country => country, zip => zip_number] Address0 Street Number Locality State, province or county Country ZIP Code Axioms: positive_int[value => int]. FORALL PI:positive_int <- PI>0. zip_code[value => string]. address0[str => street, no => positive_int,loc => locality, county => county, country => country, zip => zip_code]. Mediation - Example Ontology1, Address1 < -- > Ontology0, Address0 matthew.moran@deri.ie

  8. Address2 Address line 1 Address line 2 Axioms: address[adr_line_1 => string, adr_line_2 => string]. Address0 Street Number Locality State, province or county Country ZIP Code Axioms: positive_int[value => int]. FORALL SN:street_numbe<-SN>0. zip_code[value => string]. address0[str => street, no => positive_int, loc => locality, county => county, country => country, zip => zip_code]. Mediation - Example Ontology2, Address2 < -- > Ontology0, Address0 Require further knowledge about the internal structure of the source concept instances (with respect to the system that generates them) matthew.moran@deri.ie

  9. Invocation Challenges: • Semantic Web Services involving complex interactions • Goal-Capability matching by combining web services • Semi-automatic goal decomposition • Semi-automatic service invocation matthew.moran@deri.ie

  10. Amazon B&N eBay Invocation Problem (simple) goal:buy_book capability: buy_book ? WS invocation engine capability: buy_2ndHand_book you need matching on choreography, capability, etc…you need selection onprice, reliability, etc… matthew.moran@deri.ie

  11. lawyer constructor masoner architect plumber Invocation Problem (complex) capability:build_plumbing WS capability:build_walls capability:make_blueprint goal:build_house invocation engine capability:design_house goal:build_plumbing capability:make_contract goal:make_contract goal:design:house now you also need decomposition and what to do when something goes wrong? matthew.moran@deri.ie

  12. Architecture 12345: execute(“IntegA”, PO1234)23456: execute(“IntegB”, PO3897) Invoke stored execution instances using input parameters WSMO Integration Type written declaratively in BNF form Integration instances Second Enterprise “IntegA” Mediator trading_partner: E1 (self) use_ontology: E1_ont use_ontology: RN_ont use_concept: E1_ont.PO use_concept: RN_ont.PO use_proxy: sendE2_PO trading_partner: E2 mediator: E1_ont, RN_ont proxy: sendE2_PO “Integ A” Invoker Create PO1234Mediate PO1234, PORNInvoke E2, PORNAddHistory PORN Receive PORN::AddHistory For Compile Compiler Ontology History A set of declarative instructions that can be interpreted by the WSMX. “Integ A” Once compiled, the instructions can be stored by the WSMX for reuse matthew.moran@deri.ie

  13. Architecture 12345: execute(“IntegA”, PO1234)23456: execute(“IntegB”, PO3897) Invoke stored execution instances using input parameters WSMO Integration Type written declaratively in BNF form Integration instances Second Enterprise “IntegA” Mediator trading_partner: E1 (self) use_ontology: E1_ont use_ontology: RN_ont use_concept: E1_ont.PO use_concept: RN_ont.PO use_proxy: sendE2_PO trading_partner: E2 mediator: E1_ont, RN_ont proxy: sendE2_PO “Integ A” Invoker Create PO1234Mediate PO1234, PORNInvoke E2, PORNAddHistory PORN Receive PORN::AddHistory For Compile Compiler Ontology History A set of declarative instructions that can be interpreted by the WSMX. “Integ A” Once compiled, the instructions can be stored by the WSMX for reuse matthew.moran@deri.ie

  14. Architecture 12345: execute(“IntegA”, PO1234)23456: execute(“IntegB”, PO3897) Invoke stored execution instances using input parameters WSMO Integration Type written declaratively in BNF form Integration instances Second Enterprise “IntegA” Mediator trading_partner: E1 (self) use_ontology: E1_ont use_ontology: RN_ont use_concept: E1_ont.PO use_concept: RN_ont.PO use_proxy: sendE2_PO trading_partner: E2 mediator: E1_ont, RN_ont proxy: sendE2_PO “Integ A” Invoker Create PO1234Mediate PO1234, PORNInvoke E2, PORNAddHistory PORN Receive PORN::AddHistory For Compile Compiler Ontology History A set of declarative instructions that can be interpreted by the WSMX. “Integ A” Once compiled, the instructions can be stored by the WSMX for reuse matthew.moran@deri.ie

  15. Architecture 12345: execute(“IntegA”, PO1234)23456: execute(“IntegB”, PO3897) Invoke stored execution instances using input parameters WSMO Integration Type written declaratively in BNF form Integration instances Second Enterprise “IntegA” Mediator trading_partner: E1 (self) use_ontology: E1_ont use_ontology: RN_ont use_concept: E1_ont.PO use_concept: RN_ont.PO use_proxy: sendE2_PO trading_partner: E2 mediator: E1_ont, RN_ont proxy: sendE2_PO “Integ A” Invoker Create PO1234Mediate PO1234, PORNInvoke E2, PORNAddHistory PORN Receive PORN::AddHistory For Compile Compiler Ontology History A set of declarative instructions that can be interpreted by the WSMX. “Integ A” Once compiled, the instructions can be stored by the WSMX for reuse matthew.moran@deri.ie

  16. Architecture 12345: execute(“IntegA”, PO1234)23456: execute(“IntegB”, PO3897) Invoke stored execution instances using input parameters WSMO Integration Type written declaratively in BNF form Integration instances Second Enterprise “IntegA” Mediator trading_partner: E1 (self) use_ontology: E1_ont use_ontology: RN_ont use_concept: E1_ont.PO use_concept: RN_ont.PO use_proxy: sendE2_PO trading_partner: E2 mediator: E1_ont, RN_ont proxy: sendE2_PO “Integ A” Invoker Create PO1234Mediate PO1234, PORNInvoke E2, PORNAddHistory PORN Receive PORN::AddHistory For Compile Compiler Ontology History A set of declarative instructions that can be interpreted by the WSMX. “Integ A” Once compiled, the instructions can be stored by the WSMX for reuse matthew.moran@deri.ie

  17. Architecture 12345: execute(“IntegA”, PO1234)23456: execute(“IntegB”, PO3897) Invoke stored execution instances using input parameters WSMO Integration Type written declaratively in BNF form Integration instances Second Enterprise “IntegA” Mediator trading_partner: E1 (self) use_ontology: E1_ont use_ontology: RN_ont use_concept: E1_ont.PO use_concept: RN_ont.PO use_proxy: sendE2_PO trading_partner: E2 mediator: E1_ont, RN_ont proxy: sendE2_PO “Integ A” Invoker Create PO1234Mediate PO1234, PORNInvoke E2, PORNAddHistory PORN Receive PORN::AddHistory For Compile Compiler Ontology History A set of declarative instructions that can be interpreted by the WSMX. “Integ A” Once compiled, the instructions can be stored by the WSMX for reuse matthew.moran@deri.ie

  18. Architecture 12345: execute(“IntegA”, PO1234)23456: execute(“IntegB”, PO3897) Invoke stored execution instances using input parameters WSMO Integration Type written declaratively in BNF form Integration instances Second Enterprise “IntegA” Mediator trading_partner: E1 (self) use_ontology: E1_ont use_ontology: RN_ont use_concept: E1_ont.PO use_concept: RN_ont.PO use_proxy: sendE2_PO trading_partner: E2 mediator: E1_ont, RN_ont proxy: sendE2_PO “Integ A” Invoker Create PO1234Mediate PO1234, PORNInvoke E2, PORNAddHistory PORN Receive PORN::AddHistory For Compile Compiler Ontology History A set of declarative instructions that can be interpreted by the WSMX. “Integ A” Once compiled, the instructions can be stored by the WSMX for reuse matthew.moran@deri.ie

  19. Architecture 12345: execute(“IntegA”, PO1234)23456: execute(“IntegB”, PO3897) Invoke stored execution instances using input parameters WSMO Integration Type written declaratively in BNF form Integration instances Second Enterprise “IntegA” Mediator trading_partner: E1 (self) use_ontology: E1_ont use_ontology: RN_ont use_concept: E1_ont.PO use_concept: RN_ont.PO use_proxy: sendE2_PO trading_partner: E2 mediator: E1_ont, RN_ont proxy: sendE2_PO “Integ A” Invoker Create PO1234Mediate PO1234, PORNInvoke E2, PORNAddHistory PORN Receive PORN::AddHistory For Compile Compiler Ontology History A set of declarative instructions that can be interpreted by the WSMX. “Integ A” Once compiled, the instructions can be stored by the WSMX for reuse matthew.moran@deri.ie

  20. Architecture 12345: execute(“IntegA”, PO1234)23456: execute(“IntegB”, PO3897) Invoke stored execution instances using input parameters WSMO Integration Type written declaratively in BNF form Integration instances Second Enterprise “IntegA” Mediator trading_partner: E1 (self) use_ontology: E1_ont use_ontology: RN_ont use_concept: E1_ont.PO use_concept: RN_ont.PO use_proxy: sendE2_PO trading_partner: E2 mediator: E1_ont, RN_ont proxy: sendE2_PO “Integ A” Invoker Create PO1234Mediate PO1234, PORNInvoke E2, PORNAddHistory PORN Receive PORN::AddHistory For Compile Compiler Ontology History A set of declarative instructions that can be interpreted by the WSMX. “Integ A” Once compiled, the instructions can be stored by the WSMX for reuse matthew.moran@deri.ie

  21. Summary and Next Steps • Conceptual • Feedback to WSMO • Implement BNF based language • Mediation and Invocation • First implementation • Architecture • Complete initial design • Implementation • Build software that provides an execution environment for Web Services based on WSMO matthew.moran@deri.ie

More Related