XML w elektronicznej wymianie dokumentw i integracji aplikacji

  • Slides: 29
Download presentation
XML w elektronicznej wymianie dokumentów i integracji aplikacji 2006 -01 -05 XML w elektronicznej

XML w elektronicznej wymianie dokumentów i integracji aplikacji 2006 -01 -05 XML w elektronicznej wymianie dokumentów i integracji aplikacji

Geneza elektronicznej wymiany danych (EDI) • Problemy z automatyzacją procesów między przedsiębiorstwami. • „Izolowane

Geneza elektronicznej wymiany danych (EDI) • Problemy z automatyzacją procesów między przedsiębiorstwami. • „Izolowane wyspy” 2006 -01 -05 XML w elektronicznej wymianie dokumentów i integracji aplikacji 2

Pojedyncze rozwiązania • Wielka korporacja dostarcza kontrahentom narzędzia dostosowujące do własnego formatu. • Wielka

Pojedyncze rozwiązania • Wielka korporacja dostarcza kontrahentom narzędzia dostosowujące do własnego formatu. • Wielka korporacja wymusza na kontrahentach dostosowanie do swojego formatu. 2006 -01 -05 XML w elektronicznej wymianie dokumentów i integracji aplikacji 3

Standardy EDI • EDIFACT – United Nations Standard Messages Directory for Electronic Data Interchange

Standardy EDI • EDIFACT – United Nations Standard Messages Directory for Electronic Data Interchange For Administration, Commerce and Transport. • ANSI Accredited Standards Committee X 12 sub-group. 2006 -01 -05 XML w elektronicznej wymianie dokumentów i integracji aplikacji 4

EDIFACT – przykład: Details of Transport 8051 TRANSPORT STAGE QUALIFIER M an. . 3

EDIFACT – przykład: Details of Transport 8051 TRANSPORT STAGE QUALIFIER M an. . 3 8028 CONVEYANCE REFERENCE NUMBER C an. . 17 C 220 MODE OF TRANSPORT C 8067 Mode of transport, coded C an. . 3 8066 Mode of transport C an. . 17 C 228 TRANSPORT MEANS C 8179 Type of means of transport identification C an. . 8 8178 Type of means of transport C an. . 17 C 040 CARRIER C 3127 Carrier identification C an. . 17 1131 Code list qualifier C an. . 3 3055 Code list responsible agency, coded C an. . 3 3128 Carrier name C an. . 35 8101 TRANSIT DIRECTION, CODED C an. . 3 C 401 EXCESS TRANSPORTATION INFORMATION C. . . C 222 TRANSPORT IDENTIFICATION C 2006 -01 -05 XML w elektronicznej wymianie dokumentów i integracji aplikacji 5

EDIFACT – przykład: 8051 Transport stage qualifier 1 Inland transport 2 At the statistical

EDIFACT – przykład: 8051 Transport stage qualifier 1 Inland transport 2 At the statistical territory limit 10 Pre-carriage transport 11 At border 12 At departure 13 At destination 20 Main-carriage transport 21 Main carriage - first carrier 22 Main carriage - second carrier 23 Main carriage - third carrier 30 On-carriage transport 2006 -01 -05 XML w elektronicznej wymianie dokumentów i integracji aplikacji 6

EDIFACT – fragment komunikatu TDT+20+57 EP 12+1++HLC: 172: 20+++8407319: 146: : HAMBURG EXPRESS: DE’

EDIFACT – fragment komunikatu TDT+20+57 EP 12+1++HLC: 172: 20+++8407319: 146: : HAMBURG EXPRESS: DE’ RFF+VM: DIHE’ RFF+VON: 51 WP 11’ FTX+TRA+++CEE-CHINA EUROPE EXPRESS LOOP 4’ FTX+AAI+++MASTER PETER SUNSHINE’ 2006 -01 -05 XML w elektronicznej wymianie dokumentów i integracji aplikacji 7

Nowa EDI Pomysł: zakodować strukturę dokumentu EDI przy pomocy elementów XML. <faktura> <dostawca> N

Nowa EDI Pomysł: zakodować strukturę dokumentu EDI przy pomocy elementów XML. <faktura> <dostawca> N 1*BY*92*1287 <nazwa>empolis Polska N 1*ST*92*87447 sp. z o. o. </nazwa> N 1*ZZ*992*1287 <adres>ul. Płocka 5 a</adres> PO 1*1*1*EA*13. 33**CB* <kod>01 -231</kod> 80211*IZ*364*UP*718379 <miasto>Warszawa</miasto> 271641 </dostawca>. . . </faktura> 2006 -01 -05 XML w elektronicznej wymianie dokumentów i integracji aplikacji 8

Tradycyjna EDI – XML EDI · Format dokumentów zapisany w specyfikacji. · „Samoopisujący się”

Tradycyjna EDI – XML EDI · Format dokumentów zapisany w specyfikacji. · „Samoopisujący się” format dokumentów. · Zwięzłe komunikaty, zawierające tylko niezbędne dane. · Rozwlekłe komunikaty – narzut na „samoopisywanie się”. · Scentralizowana, trudna zmiana standardu. · Możliwość tworzenia własnych odmian standardów. · Zmiany standardu pociągają uciążliwe zmiany oprogramowania. · Większość problemów ze zmianą standardu bierze na siebie parser XML. 2006 -01 -05 XML w elektronicznej wymianie dokumentów i integracji aplikacji 9

Tradycyjna EDI – XML EDI · Przetwarzanie przez specjalne aplikacje · Interakcja przy pomocy

Tradycyjna EDI – XML EDI · Przetwarzanie przez specjalne aplikacje · Interakcja przy pomocy przeglądarki · Implementowanie od podstaw · Możliwość korzystania z gotowych narzędzi · Łącza dedykowane dla EDI (Value Added Networks) · Internet + bezpieczne protokoły · Możliwość integracji z tradycyjnymi systemami EDI 2006 -01 -05 XML w elektronicznej wymianie dokumentów i integracji aplikacji 10

Elastyczność XML EDI <firma nazwa=”empolis Polska” adres=”Płocka 5 a” kod=” 01 -231” miasto=”Warszawa” email=”empolis@empolis.

Elastyczność XML EDI <firma nazwa=”empolis Polska” adres=”Płocka 5 a” kod=” 01 -231” miasto=”Warszawa” email=”empolis@empolis. pl” /> <firma nazwa=”empolis Polska” adres=”Płocka 5 a” miasto=”Warszawa” /> 2006 -01 -05 XML w elektronicznej wymianie dokumentów i integracji aplikacji empolis Polska Adres: Kod: Miasto: Tel. Płocka 5 a 01 -231 Warszawa 11

XML EDI a przeglądarki internetowe • Najnowsze wersje przeglądarek wspomagają wyświetlanie dokumentów XML. •

XML EDI a przeglądarki internetowe • Najnowsze wersje przeglądarek wspomagają wyświetlanie dokumentów XML. • XSL jako język opisu formatowania. • Nowe zastosowanie EDI: – podstawowa funkcjonalność – wymiana danych między aplikacjami przedsiębiorstw, – nowe perspektywy: kontakt z klientami wyposażonymi tylko w przeglądarki, – E-Commerce. 2006 -01 -05 XML w elektronicznej wymianie dokumentów i integracji aplikacji 12

Inicjatywy standaryzacji XML-EDI • XML jest zbyt elastyczny. • Inicjatywy standaryzacyjne: – ogólne –

Inicjatywy standaryzacji XML-EDI • XML jest zbyt elastyczny. • Inicjatywy standaryzacyjne: – ogólne – dążą do ukierunkowania tej elastyczności, aby: • można było wymieniać informacje dowolnego typu, • informacje jednego typu były tak samo reprezentowane; • np. Electronic Business XML – eb. XML; – branżowe – standaryzują konkretne komunikaty: – – – 2006 -01 -05 SWIFT, Rosetta. Net, Automotive Industry Action Group, Health Level Seven, Open Travel Alliance, . . . XML w elektronicznej wymianie dokumentów i integracji aplikacji 13

eb. XML • eb. XML: – zbiór specyfikacji definiujących sposób prowadzenia biznesu i wymiany

eb. XML • eb. XML: – zbiór specyfikacji definiujących sposób prowadzenia biznesu i wymiany danych przez Internet, – zaakceptowane 14 maja 2001 r. , – oczekiwane implementacje i wsparcie w istniejących systemach, – wsparcie przez inne inicjatywy standaryzacyjne. • Electronic Business XML Working Group: – założona we wrześniu 1999 r. , – ok. 150 specjalistów, – patronat OASIS i UN/CEFACT. ü www. ebxml. org 2006 -01 -05 XML w elektronicznej wymianie dokumentów i integracji aplikacji 14

Podejście do standaryzacji • Meta-model pozwalający na opracowywanie modeli specyficznych dla zastosowań: – zbiór

Podejście do standaryzacji • Meta-model pozwalający na opracowywanie modeli specyficznych dla zastosowań: – zbiór podstawowych schematów, elementów XML oraz procesów biznesowych, – sposób definiowania słowników danych, – nie definiuje konkretnych, docelowych komunikatów. • Metainformacje: – informacje o wersjach, – metadane odpowiadające nagłówkom z istniejących systemów EDI. • Ramy architektury technicznej: – sposoby implementacji repozytoriów, serwisów, itp. , – integracja z istniejącymi technologiami EDI. 2006 -01 -05 XML w elektronicznej wymianie dokumentów i integracji aplikacji 15

XML w integracji aplikacji • Cel: umożliwienie wymiany danych pomiędzy aplikacjami: – aplikacje/komponenty/moduły posługują

XML w integracji aplikacji • Cel: umożliwienie wymiany danych pomiędzy aplikacjami: – aplikacje/komponenty/moduły posługują się różnymi formatami wewnętrznymi, – wspólny mianownik: XML. • Zastosowania: – – – 2006 -01 -05 komunikacja między klientem a serwerem, komunikacja między elementami systemu rozproszonego, integracja komponentów aplikacji, konfigurowanie aplikacji i jej komponentów, . . . XML w elektronicznej wymianie dokumentów i integracji aplikacji 16

EDI a integracja aplikacji · Komunikacja pomiędzy systemami biznesowymi różnych organizacji. · Komunikacja systemów

EDI a integracja aplikacji · Komunikacja pomiędzy systemami biznesowymi różnych organizacji. · Komunikacja systemów lub komponentów systemu w ramach organizacji. · Brak kontroli nad systemem partnera w komunikacji. · Kontrola nad komunikującymi się komponentami. · Niezbędna standaryzacja komunikatów. · Standaryzacja na poziomie metodologii ułatwia korzystanie z gotowych narzędzi. · Internet kluczowym elementem infrastruktury XML-EDI. · Internet tylko dla „rozległej” integracji. 2006 -01 -05 XML w elektronicznej wymianie dokumentów i integracji aplikacji 17

Web Services • Pomysł na: – udostępnianie aplikacji/funkcjonalności/obiektów w Internecie, – (bardzo) rozproszony RPC/messaging,

Web Services • Pomysł na: – udostępnianie aplikacji/funkcjonalności/obiektów w Internecie, – (bardzo) rozproszony RPC/messaging, – „strony internetowe” przeznaczone dla aplikacji. • Web service: samodzielna aplikacja (komponent), która może być: – – opisana, opublikowana w sieci, znaleziona przez potencjalnych użytkowników, wywołana poprzez sieć w sposób ustandaryzowany. • Web Services: platforma do tworzenia takich aplikacji. 2006 -01 -05 XML w elektronicznej wymianie dokumentów i integracji aplikacji 18

Standaryzacja • Standardowy system typów: – XML Schema. • Interfejs serwisu: – WSDL –

Standaryzacja • Standardowy system typów: – XML Schema. • Interfejs serwisu: – WSDL – Web Service Definition Language. • Sposób wywołania serwisu i otrzymania odpowiedzi: – SOAP – Simple Object Access Protocol, – HTTP POST. • Sposób znajdowania odpowiedniego serwisu: – UDDI - Universal Description, Discovery and Integration. 2006 -01 -05 XML w elektronicznej wymianie dokumentów i integracji aplikacji 19

Typowe zastosowania • Udostępnianie/sprzedaż użytecznych danych: – rozkłady lotów linii lotniczych, – dane o

Typowe zastosowania • Udostępnianie/sprzedaż użytecznych danych: – rozkłady lotów linii lotniczych, – dane o pogodzie, – aktualny czas wg zegara atomowego. • Zdalne usługi: – wyszukiwanie, – pobieranie aktualnej wersji oprogramowania. • Operacje biznesowe między partnerami: – zamawianie, – sprawdzanie stanu realizacji zamówienia. 2006 -01 -05 XML w elektronicznej wymianie dokumentów i integracji aplikacji 20

Typowa architektura Źródło: Yasser Shohould, "Building XML Web Services with VB. NET" 2006 -01

Typowa architektura Źródło: Yasser Shohould, "Building XML Web Services with VB. NET" 2006 -01 -05 XML w elektronicznej wymianie dokumentów i integracji aplikacji 21

Wywołanie serwisu Źródło: Yasser Shohould, "Building XML Web Services with VB. NET" 2006 -01

Wywołanie serwisu Źródło: Yasser Shohould, "Building XML Web Services with VB. NET" 2006 -01 -05 XML w elektronicznej wymianie dokumentów i integracji aplikacji 22

Opis serwisu: WSDL • Zawartość opisu: – – udostępniane metody (nazwy, parametry, zwracane wartości),

Opis serwisu: WSDL • Zawartość opisu: – – udostępniane metody (nazwy, parametry, zwracane wartości), protokół używany do wywołania (np. SOAP poprzez HTTP), typ wywołania (RPC czy messaging), URI serwisu. • Zastosowania: – do czytania przez developera, – automatyczne generowanie kodu klienta, – analiza dokumentu WSDL w czasie wykonania w celu wywołania serwisu. 2006 -01 -05 XML w elektronicznej wymianie dokumentów i integracji aplikacji 23

WSDL – przykład <definitions name='Weather' target. Namespace = 'http: //weather. com/wsdl' xmlns: wsdlns='http: //weather.

WSDL – przykład <definitions name='Weather' target. Namespace = 'http: //weather. com/wsdl' xmlns: wsdlns='http: //weather. com/wsdl/'>. . . <message name='Weather. Get. Temperature'> <part name='zipcode' type='xsd: string'/> <part name='celsius' type='xsd: boolean'/> </message> <message name='Weather. Get. Temperature. Response'> <part name='Result' type='xsd: float'/> </message> <port. Type name='Weather. Soap. Port'> <operation name='Get. Temperature' parameter. Order='zipcode celsius'> <input message='wsdlns: Weather. Get. Temperature' /> <output message='wsdlns: Weather. Get. Temperature. Response' /> </operation> </port. Type>. . . </definitions> 2006 -01 -05 XML w elektronicznej wymianie dokumentów i integracji aplikacji 24

Komunikacja: SOAP • Standard kodowania komunikatów o dowolnej treści: • Style komunikatów SOAP: –

Komunikacja: SOAP • Standard kodowania komunikatów o dowolnej treści: • Style komunikatów SOAP: – document, – RPC. • Sposoby serializacji danych: – encoded – dane są zserializowanymi obiektami programistycznymi, – literal – dokument o dowolnej strukturze. Źródło: Yasser Shohould, "Building XML Web Services with VB. NET" 2006 -01 -05 XML w elektronicznej wymianie dokumentów i integracji aplikacji 25

SOAP – przykład <soapenv: Envelope xmlns: soapenv="http: //schemas. xmlsoap. org/soap/envelope/"> <soapenv: Body> <vbws: Get.

SOAP – przykład <soapenv: Envelope xmlns: soapenv="http: //schemas. xmlsoap. org/soap/envelope/"> <soapenv: Body> <vbws: Get. Emp. Orders xmlns: wsdlns="http: //weather. com/wsdl/" soapenv: encoding. Style= "http: //schemas. xmlsoap. org/soap/encoding/"> <zipcode>23 -456</zipcode> <celsius>true</celsius> </vbws: Get. Emp. Orders> </soapenv: Body> </soapenv: Envelope> 2006 -01 -05 XML w elektronicznej wymianie dokumentów i integracji aplikacji 26

UDDI: jak znaleźć odpowiedni serwis • UDDI - Universal Description, Discovery and Integration: –

UDDI: jak znaleźć odpowiedni serwis • UDDI - Universal Description, Discovery and Integration: – katalog serwisów do automatycznego wyszukiwania. • UDDI web services: – Inquiry: • find_business, • get_business. Detail; – Publish: • save_business, • delete_business. • Serwery UDDI: – publiczne i prywatne, – replikacja między serwerami publicznymi, – UDDI Business Registry (UBR) – publiczny serwis uruchomiony przez IBM, Microsoft, NTT Communications i SAP. 2006 -01 -05 XML w elektronicznej wymianie dokumentów i integracji aplikacji 27

Z lotu ptaka WSDL . . . RPC Web Services UDDI SOAP messaging .

Z lotu ptaka WSDL . . . RPC Web Services UDDI SOAP messaging . . . 2006 -01 -05 HTTP XML w elektronicznej wymianie dokumentów i integracji aplikacji 28

Gdzie szukać dalej • Bryan, M. et. al. , Guidelines for using XML for

Gdzie szukać dalej • Bryan, M. et. al. , Guidelines for using XML for Electronic Data Interchange ü www. eccnet. com/xmledi/guidelines-styled. xml • EDISON – Narodowy Operator EDI ü www. edison. net. pl ü www. edi. pl • Zioło, S. , Księżyk, R. , Wykorzystanie języka XML w EDI ¥ Materiały na VIII Krajową Konferencję EDI-EC, Wydawca: Niedźwiedziński Consulting, Łódź, 2000 • Shohoud, Y. , Building XML Web Services with VB. NET ü www. learnxmlws. com/book/ • Sulecki, M. , Web Services na urządzeniach mobilnych 1. Software 2. 0, 6/2002, Wydawnictwo Software 2006 -01 -05 XML w elektronicznej wymianie dokumentów i integracji aplikacji 29