Presentation is loading. Please wait.

Presentation is loading. Please wait.

XML web-services and B2B integration Frank Goethals PhD-student K.U.Leuven - SAP leerstoel 24/9/2002 at SAP Belgium (Brussel)

Similar presentations


Presentation on theme: "XML web-services and B2B integration Frank Goethals PhD-student K.U.Leuven - SAP leerstoel 24/9/2002 at SAP Belgium (Brussel)"— Presentation transcript:

1 XML web-services and B2B integration Frank Goethals PhD-student K.U.Leuven - SAP leerstoel 24/9/2002 at SAP Belgium (Brussel)

2 SAP – leerstoel - ‘Extended Enterprise Infrastructures’ - 5 years (till 2006) - Research (adaptive Supply Chains) at F.E.T.E.W. – K.U.Leuven - SAP/LIRIS Research Symposium - Prof. J. Vandenbulcke FramesPage.htm FramesPage.htm

3 Agenda Intro: SCM EAI and B2Bi XML Web Services Conclusion

4 SCM  Q: Why Flexible Integration? Decades of efforts to optimize processes ERP: efficient usage of resources – internally But… organizations do not operate isolated from the outer world SCM: realise efficient and effective processes

5 SCM COMPANY XYZ Distribution channel End customer Supplier The Industry Supply Chain from company XYZs point of view Competing companies Substitute products or services Threat of new entrants

6 SCM: Towards Competing Supply Chains Remark - Companies are member of diverse Supply Chains - Close partners vs Temporal contacts (Dignum) Low Supply Risk High Impact on financial result High Low Partners Temporal contacts

7 Agenda Intro: SCM EAI and B2Bi XML Web Services Conclusion

8 In the early days… Production- planning SalesPurchase DptFinance HR………

9 EAI(1) Enterprise Application Integration ERP + SCM + CRM + BI +… ERP CRM BI SCM

10 EAI(2) many-to-many middleware ERP CRM BI SCM

11 Componentization Problem: ERP systems are difficult to change and to extend Solution: componentization = “breaking up large, monolithic ERP systems into individual modules or components that would work together.”  quickly fix and add functionality easier and safer customization of the system easier for customers to (selectively) upgrade the software Including more open interfaces and improved integration capabilities (best-of-breed approach).

12 After EAI: B2Bi

13 B2Bi Through EDI (Electronic Data Interchange): LOC ::5’ MEA+WT++KGM::22500’ LOC+9+NLRTM’ LOC+11+SGSIN’ RFF+BM+933’ EQD+CN+ABCU ’ NAD+CA+ABC:172:20’

14 B2Bi Through EDI (Electronic Data Interchange):  Saves time and money (RJR Nabisco estimates that processing a paper purchase order costs the company $70. Processing an EDI purchase order reduces the cost to a mere 93 cents).  Offers possibilities for new business practices, e.g. the usage of Vendor Stock Replenishment (VSR).  Mann [113] remarks that there are certain B2B processes in which the human element can add errors and delays but cannot add very much value.

15 B2Bi Through EDI (Electronic Data Interchange): BUT - Different EDI standards exist. - EDI is complex, difficult to implement, and expensive. - Is traditionally batch oriented (not real-time). - Message is not understandable for humans.

16 Agenda Intro: SCM EAI and B2Bi XML Web Services Conclusion

17 Web Services: At the basis: attributes elements XML

18 Web Services: At the basis: XML XML-code in Notepad: example SalesXML1.txtSalesXML1.txt Sales NameProductnrQuantity Alberto31720 Fernando10230 NameProductnrQuantity Client attribute element Legend:

19 Web Services: At the basis: XML But in another company: example SalesXML2.txtSalesXML2.txt Sales NameProductnrQuantity Alberto31720 Fernando10230 NameProductnrQuantity Client attribute element Legend:

20 Web Services: At the basis: XML Still another company… Verkopen NaamPrGetallekeQ Alberto31720 Fernando10230 NaamPrGetallekeQ Klant attribute element Legend:

21 XSL XSL (Extensible Stylesheet Language) for - reordering/restructuring information, and - calculating/generating new information. ndbad81: XSLT en CSS kunnen beide gebruikt worden met XML Xslt verschilt van CSS in dat CSS enkel aan de client-side kan gedraaid worden (terwijl XSLT doorgaans aan de server-side gedraaid wordt, doch ook aaan client side mogelijk) en dat bij CSS de structuur van van het output doc nauw die van het input doc volgt. Dit is niet het geval bij XSL: je kan bijvoorbeeld ook totalen berekenen… XSL omvat XSLT en XSLFO(Formatting Objects) XSLT zorgt voor transformatie van de boom, terwijl XMLFO zorgt voor presentatie van de boom ndbad81: XSLT en CSS kunnen beide gebruikt worden met XML Xslt verschilt van CSS in dat CSS enkel aan de client-side kan gedraaid worden (terwijl XSLT doorgaans aan de server-side gedraaid wordt, doch ook aaan client side mogelijk) en dat bij CSS de structuur van van het output doc nauw die van het input doc volgt. Dit is niet het geval bij XSL: je kan bijvoorbeeld ook totalen berekenen… XSL omvat XSLT en XSLFO(Formatting Objects) XSLT zorgt voor transformatie van de boom, terwijl XMLFO zorgt voor presentatie van de boom XML 1 XSL XML 2 HTTP XML 2 XML XSL HTML HTTP HTML

22 XSL: example: from XML to HTML Original XML-document XSL-document New HTML-page Other HTML-page

23 XSDL: XML Schema Definition Language For defining the structure an XML document should have (to be valid), including data type declarations. Example: BankDetails.xsd - xCBL

24 XSDL & xCBL xCBL – XML Common Business Library … is a set of XML building blocks and a document framework that allows the creation of robust, reusable, XML documents to facilitate global trading. Serves as basis for UBL Universal Business Language  saves developers and integrators time and effort,  ensures recipients will be able to understand all documents received. ndbad81: Beheren zichzelf, beschrijven zz, modulair ndbad81: Beheren zichzelf, beschrijven zz, modulair XSDL-docXSDL-doc BaseShippingDetail.xsd

25 Conclusion on XML XML: give data a structure XSL: convert one XML-document into another XSDL: put restrictions on structure and data types

26 Agenda Intro: SCM EAI and B2Bi XML Web Services Conclusion

27 Web Services Why explain this to you? “The SAP Web Application Server provides the reliability, scalability, security, and high availability SAP customers require. In addition, it supports open technical standards such as UDDI, WSDL, and SOAP, and within mySAP Technology, open business standards such as RosettaNet, ebXML, and UBL.”

28 Web Services What? [IBM] “Web services are self-contained, self-describing, modular applications that can be published, located, and invoked across the Web.” ndbad81: Beheren zichzelf, beschrijven zz, modulair ndbad81: Beheren zichzelf, beschrijven zz, modulair

29 Web Services: Who can deliver nails within 24 hours? What is needed? ndbad81:

30 Web Services: Basic standards: SOAP, WSDL and UDDI UDDI (Universal Description, Discovery, and Integration) ndbad81: WS Provider WS Requestor WS Broker– UDDI business Registry WS Requestor WS Broker– UDDI business Registry 1. Register service and company 1. Register service and company 2. Get service and company information 2. Get service and company information 3. Look up technical details 3. Look up technical details 4. WS binding

31 Web Services: Basic standards: SOAP, WSDL and UDDI UDDI (Universal Description, Discovery, and Integration) ndbad81:  Tools: Search Search by services: ‘stockquote’ Left pane gives results → Choose ‘4. stockquote web service’ Right pane now gives Details, Bindings and Categories Pick Bindings and copy the found URL in a web browser  The technical information can be found on this page

32 Web Services: Basic standards: SOAP, WSDL and UDDI SOAP … over HTTP SOAP is a wire protocol similar to the IIOP for CORBA, ORPC for DCOM, or JRMP for Java RMI. However, SOAP is vendor-neutral technology that appeals to all vendors.  Realises interoperability

33 Web Services: SOAP-request SOAP (Simple Object Access Protocol) POST /yangy/webservice/stock/stockquote.asmx HTTP/1.1 Host: dcm.cl.uh.edu Content-Type: text/xml; charset=utf-8 Content-Length: length SOAPAction: "http://tempuri.org/GetQuote" string ndbad81: In this example, a GetLastTradePrice SOAP request is sent to a StockQuote service. The request takes a string parameter, ticker symbol, and returns a float in the SOAP response. The SOAP Envelope element is the top element of the XML document representing the SOAP message. XML namespaces are used to disambiguate SOAP identifiers from application specific identifiers. ndbad81: In this example, a GetLastTradePrice SOAP request is sent to a StockQuote service. The request takes a string parameter, ticker symbol, and returns a float in the SOAP response. The SOAP Envelope element is the top element of the XML document representing the SOAP message. XML namespaces are used to disambiguate SOAP identifiers from application specific identifiers.

34 Web Services: SOAP-response SOAP (Simple Object Access Protocol) HTTP/ OK Content-Type: text/xml; charset=utf-8 Content-Length: length string ndbad81: In this example, a GetLastTradePrice SOAP request is sent to a StockQuote service. The request takes a string parameter, ticker symbol, and returns a float in the SOAP response. The SOAP Envelope element is the top element of the XML document representing the SOAP message. XML namespaces are used to disambiguate SOAP identifiers from application specific identifiers. ndbad81: In this example, a GetLastTradePrice SOAP request is sent to a StockQuote service. The request takes a string parameter, ticker symbol, and returns a float in the SOAP response. The SOAP Envelope element is the top element of the XML document representing the SOAP message. XML namespaces are used to disambiguate SOAP identifiers from application specific identifiers.

35 Web Services: WSDL WSDL (Web Service Description Language) …. … ndbad81: In this example, a GetLastTradePrice SOAP request is sent to a StockQuote service. The request takes a string parameter, ticker symbol, and returns a float in the SOAP response. The SOAP Envelope element is the top element of the XML document representing the SOAP message. XML namespaces are used to disambiguate SOAP identifiers from application specific identifiers. ndbad81: In this example, a GetLastTradePrice SOAP request is sent to a StockQuote service. The request takes a string parameter, ticker symbol, and returns a float in the SOAP response. The SOAP Envelope element is the top element of the XML document representing the SOAP message. XML namespaces are used to disambiguate SOAP identifiers from application specific identifiers.

36 WSDL (Web Service Description Language) … ndbad81: In this example, a GetLastTradePrice SOAP request is sent to a StockQuote service. The request takes a string parameter, ticker symbol, and returns a float in the SOAP response. The SOAP Envelope element is the top element of the XML document representing the SOAP message. XML namespaces are used to disambiguate SOAP identifiers from application specific identifiers. ndbad81: In this example, a GetLastTradePrice SOAP request is sent to a StockQuote service. The request takes a string parameter, ticker symbol, and returns a float in the SOAP response. The SOAP Envelope element is the top element of the XML document representing the SOAP message. XML namespaces are used to disambiguate SOAP identifiers from application specific identifiers.

37 Web Services Stack ndbad81: In this example, a GetLastTradePrice SOAP request is sent to a StockQuote service. The request takes a string parameter, ticker symbol, and returns a float in the SOAP response. The SOAP Envelope element is the top element of the XML document representing the SOAP message. XML namespaces are used to disambiguate SOAP identifiers from application specific identifiers. ndbad81: In this example, a GetLastTradePrice SOAP request is sent to a StockQuote service. The request takes a string parameter, ticker symbol, and returns a float in the SOAP response. The SOAP Envelope element is the top element of the XML document representing the SOAP message. XML namespaces are used to disambiguate SOAP identifiers from application specific identifiers. HTTP, FTP, IIOP SOAP WSDL UDDI Netwerk XML gebaseerde messaging Services beschrijven Services zoeken en publiceren HTTP, FTP, IIOP SOAP WSDL UDDI Netwerk XML gebaseerde messaging Services beschrijven Services zoeken en publiceren Service flow WSFL, Xlang,…

38 Web Services: New Possibilities Build bigger services by combining small services (BPML, BPEL4WS, WSCI, WSCL…) Example: travelling

39 Agenda Intro: SCM EAI and B2Bi XML Web Services Conclusion

40 Semantic web Integration is more than a physical connection, it also requires semantics What do you mean with ‘number’? … or with ‘clientcode’?  Semantic interoperability Need for ontologies  Need for knowledge-representation

41 Conclusion A semantic web of services

42 Questions


Download ppt "XML web-services and B2B integration Frank Goethals PhD-student K.U.Leuven - SAP leerstoel 24/9/2002 at SAP Belgium (Brussel)"

Similar presentations


Ads by Google