Zastosowanie XML-a w zarządzaniu treścią i elektronicznej wymianie danych

Podobne dokumenty
XML w bazach danych i bezpieczeństwie

XML a relacyjne bazy danych. XML w bazach danych. Klasyfikacja wsparcia dla XML-a w bazach danych. XML a relacyjne bazy danych.

XML w bazach danych i bezpieczeństwie

Geneza elektronicznej wymiany danych (EDI) XML w elektronicznej wymianie dokumentów i integracji aplikacji. Pojedyncze rozwiązania.

XML a relacyjne bazy danych. XML w bazach danych. Klasyfikacja wsparcia dla XML-a w bazach danych. XML a relacyjne bazy danych.

XML a relacyjne bazy danych. XML w bazach danych. Klasyfikacja wsparcia dla XML-a w bazach danych. XML a relacyjne bazy danych.

Geneza elektronicznej wymiany danych (EDI) XML w elektronicznej wymianie dokumentów i integracji aplikacji. Pojedyncze rozwiązania.

Najczęściej stosowanym systemem obiegu dokumentów elektronicznych jest poczta elektroniczna. Dokumenty przesyłamy sobie jako załączniki do listów.

XML w elektronicznej wymianie danych i integracji aplikacji

XML w elektronicznej wymianie danych i integracji aplikacji

Systemy zarządzania treścią

Relacyjne bazy danych a XML

Systemy zarządzania treścią

XML w bazach danych, standardy wiążące dokumenty XML

Instalacja SQL Server Express. Logowanie na stronie Microsoftu

Wykład I. Wprowadzenie do baz danych

OfficeObjects e-forms

Dlaczego GML? Gdańsk r. Karol Stachura

Tomasz Grześ. Systemy zarządzania treścią

PRZESTRZENNE BAZY DANYCH WYKŁAD 2

Model semistrukturalny

Spis treści. Przedmowa

Krzysztof Kadowski. PL-E3579, PL-EA0312,

1 XML w bazach danych

ActiveXperts SMS Messaging Server

extensible Markup Language, cz. 1 Marcin Gryszkalis, mg@fork.pl

Definiowanie typów dokumentów Część 2. Przestrzenie nazw, XML Schema

Moduł mapowania danych

Dodatkowo, w przypadku modułu dotyczącego integracji z systemami partnerów, Wykonawca będzie przeprowadzał testy integracyjne.

AUREA BPM Oracle. TECNA Sp. z o.o. Strona 1 z 7

Plan. Wprowadzenie. Co to jest APEX? Wprowadzenie. Administracja obszarem roboczym

Baza danych to zbiór wzajemnie powiązanych ze sobą i zintegrowanych danych z pewnej dziedziny.

Część 3 - Konfiguracja

Generowanie dokumentów XML z tabel relacyjnych - funkcje SQLX

Multi-wyszukiwarki. Mediacyjne Systemy Zapytań wprowadzenie. Architektury i technologie integracji danych Systemy Mediacyjne

Zasady budowy i przekazywania komunikatów wykorzystywanych w Systemie IT KDPW_CCP

Oracle Designer. Oracle Designer jest jednym z głównych komponentów pakietu Oracle Developer Suite. Oracle Designer wspiera :

Deduplikacja danych. Zarządzanie jakością danych podstawowych

Pojęcie systemu baz danych

Część I -ebxml. UEK w Krakowie Janusz Stal & Grażyna Paliwoda-Pękosz. UEK w Krakowie Janusz Stal & Grażyna Paliwoda-Pękosz

2017/2018 WGGiOS AGH. LibreOffice Base

Otwarte protokoły wymiany informacji w systemach ITS

Zapytanie ofertowe na: Zakup wartości niematerialnej i prawnej w postaci nowoczesnego systemu B2B wraz ze szkoleniem z obsługi ww.

Przedmiotem zamówienia jest dostawa:

VALIO Sp. z o.o. Załącznik nr 1 do Zapytania ofertowego dotyczącego zakupu licencji części systemu B2B oraz wykonania Warstwy Prezentacyjnej.

Załącznik nr 1. Specyfikacja techniczna portalu internetowego Łódź, r.

Moduł mapowania danych

PHP: bazy danych, SQL, AJAX i JSON

Definiowanie typów dokumentów Część 2. Przestrzenie nazw, XML Schema. Elementy czy atrybuty? Wartości domyślne i ustalone. Elementy czy atrybuty?

Zasady budowy i przekazywania komunikatów XML dla rynku OTC w systemie KDPW_CCP

The Binder Consulting

Systemy baz danych w zarządzaniu przedsiębiorstwem. W poszukiwaniu rozwiązania problemu, najbardziej pomocna jest znajomość odpowiedzi

Automatyczne generowanie kodu. 4Developers, 26 marca 2010

Shapefile, GeoPackage czy PostGIS. Marta Woławczyk (QGIS Polska)

Bazy danych i strony WWW

Tworzenie raportów XML Publisher przy użyciu Data Templates

RÓWNOWAŻNOŚĆ ZAOFEROWANCH PAKIETÓW PROGRAMÓW BIUROWYCH

Laboratorium Technologii Informacyjnych. Projektowanie Baz Danych

EXSO-CORE - specyfikacja

1 Wprowadzenie do koncepcji Microsoft Office BI 1 Zakres ksiąŝki 2 Cel ksiąŝki 3 Wprowadzenie do tematu 3 Zawartość rozdziałów 4

DOTACJE NA INNOWACJE

GML w praktyce geodezyjnej

Obieg korespondencji. System spełnia wymagania GIODO. Funkcja obsługi obiegu korespondencji dzięki zastosowaniu kodów kreskowych.

Plan. Raport. Tworzenie raportu z kreatora (1/3)

MultiCash współpraca z systemami finansowo-księgowymi

Bazy danych dokumentów XML wykład 1 wprowadzenie

Podstawy technologii WWW

Programowanie obiektowe

TWÓJ BIZNES. Nasz Obieg Dokumentów

Zapytanie ofertowe. Skawina 7 listopada 2014

Zasady budowy i przekazywania komunikatów XML w systemie kdpw_otc

ShopGold Integrator by CTI. Instrukcja

XML w bazie danych IBM DB2

Informatyka I. Standard JDBC Programowanie aplikacji bazodanowych w języku Java

XML-owe bazy danych ćwiczenia 1

Baza danych sql. 1. Wprowadzenie

E-fakturowanie w praktyce ze szczególnym uwzględnieniem systemów EDI. Warszawa, 25 września 2006 roku

Zarządzanie treścią w wydawnictwie. Systemy zarządzania treścią Część 2. Dowiązania. Linki semantyczne. Subdokumenty. Linki semantyczne przykłady

Import zleceń / Integracja klienta K-Ex

Włodzimierz Dąbrowski, Przemysław Kowalczuk, Konrad Markowski. Bazy danych ITA-101. Wersja 1

Hurtownie danych. Ładowanie, integracja i aktualizacja danych. INTEGRACJA DANYCH ETL

ERDAS ADE Suite edytor baz danych Oracle Spatial

Budowa systemu wspomagającego podejmowanie decyzji. Metodyka projektowo wdrożeniowa

Zamawiający dysponuje szerokim spektrum rozwiązań infrastrukturalnych. Wykonawca uzyska dostęp do infrastruktury w niezbędnym zakresie.

Wprowadzenie do technologii Business Intelligence i hurtowni danych

Podstawowe pakiety komputerowe wykorzystywane w zarządzaniu przedsiębiorstwem. dr Jakub Boratyński. pok. A38

Hurtownie danych i business intelligence - wykład II. Zagadnienia do omówienia. Miejsce i rola HD w firmie

OPIS i SPECYFIKACJA TECHNICZNA

Baza danych. Modele danych

Bazy danych 2. Wykład 1

Zapytanie ofertowe 1/2012. W związku z realizacją projektu pt. Wdrożenie systemu B2B w celu elektronicznej wymiany

Serwery LDAP w środowisku produktów w Oracle

Autor: dr inż. Katarzyna Rudnik

RELACYJNE BAZY DANYCH

Procesy ETL - wykład V. Struktura. Wprowadzenie. 1. Wprowadzenie. 2. Ekstrakcja 3. Transformacja 4. Ładowanie 5. Studium przypadków.

Zdalna edycja i przeglądanie dokumentacji medycznej.

Część II. UEK w Krakowie Janusz Stal & Grażyna Paliwoda-Pękosz. UEK w Krakowie Janusz Stal & Grażyna Paliwoda-Pękosz

Zasady budowy i przekazywania komunikatów XML w systemie kdpw_otc

REFERAT PRACY DYPLOMOWEJ Temat pracy: Projekt i realizacja serwisu ogłoszeń z inteligentną wyszukiwarką

Plan. Aplikacja. Architektura aplikacji. Architektura aplikacji Tworzenie aplikacji Application Builder podstawy

Transkrypt:

Zastosowanie XML-a w zarządzaniu treścią i elektronicznej wymianie danych 1

Klasy zastosowań XML-a Zarządzanie dokumentami, treścią, wiedzą: Pierwotne zastosowanie SGML-a. Dokumenty tworzone przez człowieka i przeznaczone dla człowieka. Długi czas życia dokumentów. Typowy model mieszany zawartości. Elektroniczna wymiana danych, integracja aplikacji: Nowa klasa zastosowań XML-a. Dokumenty tworzone oraz przetwarzane automatycznie Dokumenty tworzone tylko na czas komunikacji. Konieczność dokładnego kontrolowania struktury i zawartości. 2007-01-07 Zastosowanie XML-a w zarządzaniu treścią i elektronicznej wymianie danych 2 Historycznie, zastosowania SGML-a wiązały się z zarządzaniem dokumentami. Są to więc także zastosowania XML-a. Prostota XML-a sprawiła jednak, że zaczął on być używany także w serwisach internetowych, publikacjach elektronicznych oraz do elektronicznej wymiany danych między systemami komputerowymi. Szczególnie te ostatnie zastosowania zasługują na uwagę, ponieważ sposób wykorzystania przez nie XML-a diametralnie różni się od pierwotnych założeń leżących u podstaw SGML-a. SGML był związany z praktyką klasycznego edytorstwa. Dokument SGML, choć elektroniczny, był nadal czymś namacalnym, stanowił określony korpus tekstów, opracowywanych w ramach systemu edytorskiego lub udostępniany w obrębie sieci lokalnej. W normie SGML najwyraźniej założono, że teksty będą znakowanie ręcznie. [...] XML powstał w innym świecie w świecie opasanym globalną siecią. Stanowi odpowiedź na potrzeby, jakie stawia publikowanie zasobów baz danych w skali Internetu i w lokalnych intranetach. Jego żywiołem są raczej dokumenty automatycznie generowane niż redagowane, dokumenty tworzone dynamicznie na żądanie, dokumenty wirtualne, integrujące informacje z wielu źródeł, których nikt nigdy w nie opracował w takim kształcie, w jakim są prezentowane. (Włodzimierz Wypych, Na początku był rękopis, czyli o historii XML-a, Software 2.0, 6 2001) 2

Dwie twarze XML-a Dokument tekstowy: <zeznanie-sprawcy> Wypadek dnia <data> 13.01.2001 r.</data> o godzinie <godzina>13.13 </godzina> (<dzientygodnia>piątek </dzien-tygodnia>) miał miejsce nie z mojej winy. <poszkodowany>alojzy M.</poszkodowany> nie miał żadnego pomysłu w którą stronę uciekać, więc go przejechałem. </zeznanie-sprawcy> Baza danych: <zamowienie> <pozycja> <nazwa>papier</nazwa> <jednostka>ryza </jednostka> <ilosc>3</ilosc> </pozycja> <zamawiajacy id= 123456 > <imie>szymon</imie> <nazwisko>zioło </nazwisko> <firma>abg Ster-Projekt </firma> </zamawiajacy> </zamowienie> 2007-01-07 Zastosowanie XML-a w zarządzaniu treścią i elektronicznej wymianie danych 3 Te różnicę między dwoma klasami zastosowań ilustrują dwa przykłady dokumentów. Podstawą dokumentu tekstowego, stosowanego w zastosowaniach związanych z zarządzaniem treścią, jest mieszany model zawartości, w którym tekst jest w dowolny sposób przemieszany z podelementami. Natomiast aplikacje wymieniające przy pomocy XML-a dane w sposób automatyczny operują zwykle na relacyjnych bazach danych. Dlatego struktura takiego dokumentu jest ściśle określona i często odpowiada strukturze odpowiedniej bazy danych. 3

XML w systemach zarządzania treścią XML w tworzeniu treści: kontrola poprawności strukturalnej dokumentów, dokumenty oznakowane semantycznie od początku swego istnienia, edycja: dedykowane edytory XML, formularze elektroniczne. XML w przetwarzaniu treści: automatyczne przekształcenia dokumentów, ekstrakcja wartości metainformacji, dowiązania (linki) semantyczne z i do fragmentów treści dokumentów aktualizacja twardych faktów, warianty dokumentów. XML w publikowaniu treści: jedno źródło wiele publikacji. 2007-01-07 Zastosowanie XML-a w zarządzaniu treścią i elektronicznej wymianie danych 4 W systemach zarządzania treścią mówimy często o trzech fazach życia tej treści: tworzeniu, przetwarzaniu oraz publikowaniu. Oczywiście możliwe i całkiem sensowne jest zarządzanie dokumentami niestrukturalnymi (np. w formacie Ms Word), ale wykorzystanie XML-a od samego początku istnienia treści, czyli już w momencie jej tworzenia, może wnieść nową jakość w możliwości wykorzystania tej treści. Wymaga to jednak zmiany podejścia także u samych autorów, którzy muszą tworzyć dokumenty oznakowane w sposób semantyczny. Kolejne slajdy zawierają przypomnienie technik omawianych już na zajęciach dotyczących zarządzania dokumentami. Techniki te najłatwiej jest bowiem stosować, korzystając z dokumentów XML. 4

Linki semantyczne Powiązanie dokumentów (fragmentów dokumentów) z innymi dokumentami (fragmentami). Nadanie znaczenia linkom: wyszukiwanie z użyciem faktów, efektywna nawigacja, automatyczne przetwarzanie. <OSOBA-MOWIACA><KSIAZE ID-KRAJU= d1 >Hamlet<KSIAZE></OSOBA-MOWIACA> <WYPOWIEDZ><KRAJ ID= d1 >Dania</KRAJ> jest więzieniem. </WYPOWIEDZ> książę - kraj 2007-01-07 Zastosowanie XML-a w zarządzaniu treścią i elektronicznej wymianie danych 5 Znaczenie linkom możemy nadać poprzez zastosowanie elementów o różnych nazwach dla oznaczenia linków o różnych znaczeniach. W tym przykładzie cała informacja o linkach (identyfikator oraz odwołanie do niego) jest pamiętana w samej treści dokumentu. Bardziej zaawansowane rozwiązanie (np. wykorzystujące standard XLink) może polegać na przechowywaniu linków poza dokumentami, np. w bazie danych. Wówczas w dokumentach umieszcza się jedynie identyfikatory będące odwołaniami do tabeli bazodanowej. 5

Metainformacje przykład <zeznanie-sprawcy> Wypadek dnia <data> 13.01.2001</data> o godzinie <godzina>13.13 </godzina> (<dzien-tygodnia> piątek</dzien-tygodnia>) miał miejsce nie z mojej winy. <poszkodowany>alojzy M.</poszkodowany> nie miał żadnego pomysłu w którą stronę uciekać, więc go przejechałem. </zeznanie-sprawcy> Nr protokołu: 1313/2001 Miejsce: Dołowice Górne Data: 13.01.2001 Czas: 13.13 Rodzaj: potrącenie pieszego Sprawca: Walenty Pechowy Sprawę prowadzi: st. asp. Jan Łapówka 2007-01-07 Zastosowanie XML-a w zarządzaniu treścią i elektronicznej wymianie danych 6 Jak wiemy, granica między metainformacją a informacją jest płynna niektóre metainformacje pojawiają się bowiem także w treści samego dokumentu. Dzięki precyzyjnemu oznakowaniu metainformacji w treści dokumentu strukturalnego XML, możliwe jest automatyczne ekstrahowanie ich wartości z treści dokumentu. 6

Aktualizacja twardych faktów przykład <haslo id= dk ><tytul>dania</tytul>... <treść>liczba mieszkańców: <wstaw-akt-lm/> (<wstaw-akt-lm-rok/>).</treść> </haslo> select akt_lm from liczba_mieszk where panstwo= dk select akt_lm_rok from liczba_mieszk where panstwo= dk 2007-01-07 Zastosowanie XML-a w zarządzaniu treścią i elektronicznej wymianie danych 7 W encyklopedii różne dane liczbowe są sukcesywnie uaktualniane. Dlatego powinny być one przechowywane poza treściami haseł w bazie danych. Pobieranie z bazy i osadzanie w dokumentach powinno następować w momencie przygotowywania publikacji. Dzięki temu wszędzie mogłyby występować najbardziej aktualne dane. 7

Warianty dokumentów przykład <akt>... <art nr= 2. >Przywóz wody nie jest objęty cłem.</art> <wariant-ref id= a436 />... </akt> od=* do=18.01.2006 od=19.01.2006 do=* <art nr= 3. >Cło na przywóz śniegu wynosi 30%.</art> <art nr= 3. >Cło na przywóz zamrożonej wody wynosi 30%.</art> 2007-01-07 Zastosowanie XML-a w zarządzaniu treścią i elektronicznej wymianie danych 8 W dokumencie reprezentującym akt umieszczamy zamiast treści zmienionego artykułu jedynie specjalny element odwołanie do tzw. dowiązania wariantowego. Dowiązanie to (pamiętane poza dokumentem, np. w bazie danych) rozdziela się na dwa dowiązania do dokumentów zawierających dwie wersje zmienionego artykułu. Kryterium wyboru drogi zapisane jest w metainformacjach dowiązania w tym wypadku jest nim zakres dat. Zarówno dowiązania, jak i dołączane warianty dokumentu, najłatwiej jest zapisywać w formie struktur XML-owych. 8

Geneza elektronicznej wymiany danych (EDI) Problemy z automatyzacją procesów między przedsiębiorstwami. Izolowane wyspy 2007-01-07 Zastosowanie XML-a w zarządzaniu treścią i elektronicznej wymianie danych 9 Technologie elektronicznej wymiany danych są rozwijane już od około 30 lat. Zanim jednak taka wymiana stanie się potrzebna, przedsiębiorstwa najpierw automatyzują wewnętrzne procesy obiegu dokumentów. Połączenie między przedsiębiorstwami nie jest jednak zwykle możliwe bezpośrednio, ze względu na różne platformy sprzętowe, aplikacje i formaty danych. Dlatego wymiana dokumentów między przedsiębiorstwami pozostaje w postaci tradycyjnej papierowej. Różne rodzaje zygzaków reprezentują różne formaty kodowania informacji (komunikatów). 9

Standardy EDI EDIFACT United Nations Standard Messages Directory for Electronic Data Interchange For Administration, Commerce and Transport. ANSI Accredited Standards Committee X12 sub-group. 2007-01-07 Zastosowanie XML-a w zarządzaniu treścią i elektronicznej wymianie danych 10 Możliwe jest oczywiście wdrożenie interfejsów wymiany danych pomiędzy konkretnymi przedsiębiorstwami. Przygotowywanie osobnego rozwiązania integrującego dla każdej pary współpracujących przedsiębiorstw byłoby jednak nieefektywne. Dlatego opracowano standardowe metody kodowania i przesyłania komunikatów EDI. EDIFACT jest rozpowszechniony w Europie, zaś X12 jest bardziej popularny za oceanem. Wykorzystanie standardu wymaga zastosowania konwerterów ale tym razem tylko jednego dla całego systemu, niezależnie od ilości współpracujących kontrahentów. Konwertery są zwykle dostarczane wraz z systemami klasy ERP. 10

EDIFACT fragment komunikatu TDT+20+57EP12+1++HLC:172:20+++8407319:146::HAMBURG EXPRESS:DE RFF+VM:DIHE RFF+VON:51WP11 FTX+TRA+++CEE-CHINA EUROPE EXPRESS LOOP 4 FTX+AAI+++MASTER PETER SUNSHINE 2007-01-07 Zastosowanie XML-a w zarządzaniu treścią i elektronicznej wymianie danych 11 Komunikaty EDIFACT mają postać odpowiednio zakodowanych dokumentów tekstowych. ABy zrozumieć ich strukturę, trzeba zajrzeć do specyfikacji formatu danego komunikatu. Sam komunikat nie zawiera żadnych informacji o strukturze i znaczeniu informacji. 11

EDIFACT przykład: Details of Transport 8051 TRANSPORT STAGE QUALIFIER M an..3 8028 CONVEYANCE REFERENCE NUMBER C an..17 C220 MODE OF TRANSPORT C 8067 Mode of transport, coded C an..3 8066 Mode of transport C an..17 C228 TRANSPORT MEANS C 8179 Type of means of transport identification C an..8 8178 Type of means of transport C an..17 C040 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 C401 EXCESS TRANSPORTATION INFORMATION C... C222 TRANSPORT IDENTIFICATION C 2007-01-07 Zastosowanie XML-a w zarządzaniu treścią i elektronicznej wymianie danych 12 Slajd przedstawia fragment definicji komunikatu EDIFACT. Składa się ona z listy pól oraz sekcji, zawierających pola. Każde pole ma określone pewne atrybuty, np. typ wartości (an alfanumeryczny), ilość znaków, wymagalność pola. 12

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 2007-01-07 Zastosowanie XML-a w zarządzaniu treścią i elektronicznej wymianie danych 13 Wiele wartości występujących w komunikatach to kody oznaczające wartości zdefiniowane w słowniku. 13

Nowa EDI Pomysł: zakodować strukturę dokumentu EDI przy pomocy elementów XML. N1*BY*92*1287 N1*ST*92*87447 N1*ZZ*992*1287 PO1*1*1*EA*13.33**CB* 80211*IZ*364*UP*718379 271641 <faktura> <dostawca> <nazwa>krzak i Syn sp. z o.o.</nazwa> <adres>ul. Kota 7</adres> <kod>13-313</kod> <miasto>dołowice Górne</miasto> </dostawca>... </faktura> 2007-01-07 Zastosowanie XML-a w zarządzaniu treścią i elektronicznej wymianie danych 14 Gdy XML zaczął być popularny i powszechnie używany, podjęto próbę wykorzystania go w elektronicznej wymianie danych. Na pierwszy rzut oka jest to tylko zmiana formatu komunikatów. Jej konsekwencje były jednak większe niż się spodziewano. 14

Tradycyjna EDI XML EDI Format dokumentów zapisany w specyfikacji. Zwięzłe komunikaty, zawierające tylko niezbędne dane. Samoopisujący się format dokumentów. Rozwlekłe komunikaty narzut na samoopisywanie się. Scentralizowana, trudna zmiana standardu. Zmiany standardu pociągają uciążliwe zmiany oprogramowania. Możliwość tworzenia własnych odmian standardów. Większość problemów ze zmianą standardu bierze na siebie parser XML. 2007-01-07 Zastosowanie XML-a w zarządzaniu treścią i elektronicznej wymianie danych 15 Komunikaty EDIFACT zawierają jedynie dane, oddzielone od siebie odpowiednimi separatorami. Znaczenie każdej danej jest opisane w specyfikacji. Komunikaty EDIFACT są więc stosunkowo zwięzłe (takie musiały być 30 lat temu, kiedy liczył się każdy bajt pamięci). W przeciwieństwie do nich, dokumenty XML zawierają nazwy elementów i atrybutów, które są w pewnym sensie informacją nadmiarową, powodującą rozwlekłość komunikatu. Dzięki temu XML jest jednak bardziej elastyczny i odporny na zmiany, bowiem aplikacje korzystające z komunikatów XML nie muszą mieć zakodowanej w sobie specyfikacji formatu komunikatu, lecz mogą być sparametryzowane strukturą komunikatu zawartą w samej jego treści. 15

Tradycyjna EDI XML EDI Przetwarzanie przez specjalne aplikacje Implementowanie od podstaw Łącza dedykowane dla EDI (Value Added Networks) Interakcja przy pomocy przeglądarki Możliwość korzystania z gotowych narzędzi Internet + bezpieczne protokoły Możliwość integracji z tradycyjnymi systemami EDI 2007-01-07 Zastosowanie XML-a w zarządzaniu treścią i elektronicznej wymianie danych 16 Tradycyjne dokumenty EDI wymagają specjalnych aplikacji do ich przetwarzania, z reguły pisanych od zera. W przypadku XML EDI, możemy wykorzystać istniejące parsery XML-a i inne moduły programistyczne wspierające przetwarzanie dokumentów XML. Technologie EDI powstawały w czasach, gdy nie było Internetu. Dlatego tradycyjna EDI jest zwykle realizowana na dedykowanych łączach, tzw. Value Added Networks (VAN). Dostawca takich łącz dzierżawi je zwykle od korporacji telekomunikacyjnej, dodając usługi takie jak wykrywanie błędów, bezpieczeństwo komunikatów. Opłaty za takie łącza zależą zwykle od ilości przesyłanych informacji. Poziom bezpieczeństwa i dodatkowych usług oferowany przez sieci VAN można obecnie osiągnąć przy pomocy Internetu, infrastruktury PKI oraz bezpiecznych (szyfrowanych) protokołów komunikacyjnych. 16

Elastyczność XML EDI <firma nazwa= Krzak i Syn adres= Kota 7 kod= 13-313 miasto= Dołowice Górne email= krzak@krzak.pl /> <firma nazwa= Krzak i Syn email= krzak@krzak.pl /> <firma nazwa= Krzak i Syn adres= Kota 7 miasto= Dołowice Górne /> Krzak i Syn Adres: Kota 7 Kod: 13-313 Miasto: Dołowice Górne Tel. 2007-01-07 Zastosowanie XML-a w zarządzaniu treścią i elektronicznej wymianie danych 17 Pewne zmiany w ustalonym formacie danych mogą się obejść bez jakichkolwiek poprawek oprogramowania. Na przykład można stosować różne zestawy atrybutów opisujących firmę. Dodanie nowego atrybutu email nie powoduje błędnego działania aplikacji, która takiego atrybutu nie oczekuje jest on przez nią ignorowany. 17

XML EDI a przeglądarki internetowe XSLT 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. 2007-01-07 Zastosowanie XML-a w zarządzaniu treścią i elektronicznej wymianie danych 18 Dzięki rozpowszechnieniu Internetu można myśleć o wykorzystaniu technologii XML EDI wszędzie tam, gdzie klient nie zawsze jest wyposażony w systemy komputerowe wspierające EDI, a więc np. w sklepach internetowych, w firmach kurierskich (klient śledzi drogę przesyłki), itp. 18

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 ebxml; branżowe standaryzują konkretne komunikaty: SWIFT, RosettaNet, Automotive Industry Action Group, Health Level Seven, Open Travel Alliance,... 2007-01-07 Zastosowanie XML-a w zarządzaniu treścią i elektronicznej wymianie danych 19 XML pozwala zamodelować i zakodować wszystko. Niestety, ten sam byt można zakodować na wiele sposobów, różniących się choćby nazwami elementów. Inicjatywy standaryzacyjne w różny sposób próbują ograniczyć tą dowolność, która w końcu może przeszkadzać w integracji. Najważniejszym standardem, wypromowanym w ostatnich latach, jest ebxml. Większość inicjatyw branżowych stworzyła lub tworzy wersje swoich standardów zgodne z założeniami ebxml. 19

ebxml ebxml: zbiór specyfikacji definiujących sposób prowadzenia biznesu i wymiany danych przez Internet, zaakceptowane 14 maja 2001 r. Electronic Business XML Working Group: założona we wrześniu 1999 r., patronat OASIS i UN/CEFACT. www.ebxml.org 2007-01-07 Zastosowanie XML-a w zarządzaniu treścią i elektronicznej wymianie danych 20 Electronic Business XML Working Group jest organizacją typu non-profit, powołaną w celu przygotowania zbioru specyfikacji. Obecnie prace grupy roboczej koncentrują się wokół zbierania wymagań i przygotowywania kolejnych wersji specyfikacji. 20

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. 2007-01-07 Zastosowanie XML-a w zarządzaniu treścią i elektronicznej wymianie danych 21 Grupa ebxml zaprojektowała ramę pozwalającą na opracowywanie specyficznych sub-standardów. Jej podstawą będzie repozytorium przechowujące typowe obiekty (schematy, elementy). ebxml zakłada od początku integrację z istniejącymi technologiami. Podstawowy zbiór komponentów, używanych niezależnie od technologii, zostanie bowiem opisany w sposób niezależny od konkretnej implementacji. ebxml będzie ponadto wspierać konwersje i migracje z i do istniejących technologii (np. EDIFACT). 21

XML a relacyjne bazy danych Korzyści: integracja aplikacji, wymiana danych, łatwe transformacje danych, prezentacja danych. Problemy: czy i jak przechowywać dokumenty XML w bazie danych? metody dostępu (zadawania zapytań), efektywność. 2007-01-07 Zastosowanie XML-a w zarządzaniu treścią i elektronicznej wymianie danych 22 Podstawowymi składnikami aplikacji biznesowych są bazy danych. Dlatego systemy nimi zarządzające powinny w pierwszej kolejności wspierać XML, jeśli myślimy o integracji przy użyciu tej technologii. Chcemy więc przechowywać w bazach danych także dokumenty XML. Ale nie zawsze hierarchiczna struktura dokumentów XML przystaje do relacyjnej struktury bazy danych. Pojawiają się wtedy pytania, jak efektywnie zorganizować przechowywanie i dostęp do dokumentów XML. 22

Klasyfikacja wsparcia dla XML-a w bazach danych Wg wewnętrznej reprezentacji danych? XML-enabled przechowująca dokumenty w postaci zdekomponowanej, native XML przechowująca dokumenty w naturalnej postaci. Lepiej wg dostępnych operacji i zastosowania: (relacyjna) baza danych: konfiguracja struktur danych przy pomocy tabel i relacji, umożliwia eksport i import danych w postaci dokumentów XML, struktura dokumentów XML pochodną relacyjnych struktur danych, zastosowanie: integracja, wymiana danych; XML-owa baza danych: przechowuje dokumenty XML, konfiguracja struktur danych przy pomocy DTD/XML Schema, Indeksowanie elementów, atrybutów, wyrażeń XPath, wyszukiwanie z użyciem XQuery, zastosowanie: przechowywanie i przetwarzanie dokumentów strukturalnych. 2007-01-07 Zastosowanie XML-a w zarządzaniu treścią i elektronicznej wymianie danych 23 Gdy XML zyskał na popularności, w relacyjnych bazach danych pojawiły się funkcje pozwalające np. na generowanie dokumentów XML z zawartości bazy danych oraz na wypełnianie bazy danych na podstawie zawartości dokumentów XML. Sama baza danych pozostawała jednak relacyjna. Pojawiły się także konkurencyjne rozwiązania, reklamujące się jako bazy danych, w których XML w przeciwieństwie do baz relacyjnych jest naturalnym (ang. native) sposobem przechowywania danych. Zwróćmy jednak uwagę, że sposób przechowywania danych w bazie nie powinien mieć dla nas (użytkowników bazy) żadnego znaczenia. Liczą się jedynie funkcje oferowane przez bazę danych oraz ich efektywność i wydajność. Poza tym funkcje pozwalające na dostęp do danych relacyjnych za pośrednictwem dokumentów XML nie są wcale konkurencją dla funkcji pozwalających na przechowywanie i przetwarzanie dokumentów XML w bazie. Te dwie grupy funkcji się uzupełniają, każda z nich jest przydatna w pewnych zastosowaniach. 23

XML w Oracle 10g Wbudowane parsery XML (PL-SQL, Java i C++). XML-SQL Utility: generowanie XML-a bezpośrednio z bazy przy pomocy specjalnych zapytań, wypełnianie bazy na podstawie zawartości dokumentu XML. XML-SQL Servlet: ułatwia budowanie aplikacji internetowych opartych na Oracle u. XMLType specjalny typ danych: używany do deklarowania kolumn, tabel, perspektyw, zmiennych, indeksowanie zawartości XML, zapytania XQuery, kontrola poprawności strukturalnej względem XML Schema, przekształcenia XSLT. www.oracle.com/xml/ 2007-01-07 Zastosowanie XML-a w zarządzaniu treścią i elektronicznej wymianie danych 24 Firma Oracle zareagowała na pojawienie się XML-a, dołączając mechanizmy go wspierające do swojego flagowego produktu. System Oracle może stanowić wzór tego, w jaki sposób systemy zarządzania bazami danych powinny wspierać wykorzystanie XML-a. Najsłabiej związanym z samym systemem Oracle sposobem wykorzystania XML-a jest operowanie dokumentami XML we własnych aplikacjach będących klientami bazy Oracle. W tym celu programiści mogą wykorzystać jeden z parserów dostarczanych przez Oracle po to, aby np. wypełniać bazę zawartością na podstawie dokumentu przetworzonego przez parser. Korzystając z pakietu XML-SQL Utility, dokumenty XML można generować bezpośrednio z tabel relacyjnych, a także zasilać bazę przy pomocy dokumentów XML. Jest to więc dodatek XML-owy do tradycyjnej, relacyjnej bazy danych. W systemie Oracle począwszy od wersji 9i jest także dostępny specjalny typ danych XMLType dedykowany do przechowywania dokumentów XML. Wartości w kolumnach tego typu mogą być np. specjalnie indeksowane i odpytywane z wykorzystaniem ścieżek XPath bezpośrednio w zapytaniach SQL. Można także zadeklarować całą tabelę lub perspektywę (view) typu XMLType. Perspektywa może być założona także na zwykłych tabelach relacyjnych, wtedy Oracle udostępnia dane z tych tabel w postaci XML-a. Oracle łączy więc funkcje relacyjnej bazy danych ze wsparciem dla XML-a oraz XML-owej bazy danych. 24

Oracle XML-SQL Utility przykład Zapytanie: SELECT xmlgen.getxml( select * from emp ) FROM dual; Wynik: <rowset> <row id= 1 > <empno>10</empno> <name>scott Tiger</name> <title>specialist</title> </row>... </rowset> 2007-01-07 Zastosowanie XML-a w zarządzaniu treścią i elektronicznej wymianie danych 25 Domyślna struktura elementów używana w Oracle-u zawiera ustalone elementy opisujące wiersze (row, rowset) oraz elementy o nazwach odpowiadających kolumnom tabeli. Wszystkie nazwy elementów można jednak przedefiniować tak, aby zgadzały się z używanymi na zewnątrz, przez aplikację, która jest adresatem danych. 25

XMLType przykłady SELECT extract(value(x), '/PurchaseOrder/LineItems/LineItem/Description') FROM XMLTABLE X; zwraca: <Description>The Ruling Class</Description> <Description>Diabolique</Description> SELECT extractvalue(value(t),'/description') FROM XMLTABLE X, TABLE (xmlsequence(extract(value(x), '/PurchaseOrder/LineItems/LineItem/Description'))) t; zwraca: The Ruling Class Diabolique Źródło: Oracle 9i XML Database Developer s Guide, www.lc.leidenuniv.nl/awcourse/oracle/appdev.920/a96620/toc.htm 2007-01-07 Zastosowanie XML-a w zarządzaniu treścią i elektronicznej wymianie danych 26 26

XML a bazy danych przegląd Relacyjne bazy danych ze wsparciem dla XML-a: Oracle 8i / 9i / 10g Microsoft SQL Server 2000 DB2, IBM Sybase ASE 12.5 XML-owe bazy danych: Oracle 9i / 10g Tamino, Software AG TEXTML Server, InxiaSoft dbxml (open source) exist (open source) Xindice, Apache Software Foundation (open source) 2007-01-07 Zastosowanie XML-a w zarządzaniu treścią i elektronicznej wymianie danych 27 27

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 Bourret, R., XML and Databases www.rpbourret.com/xml/ Research note: The demise of the XML database www.it-analysis.com/article.php?articleid=11287 2007-01-07 Zastosowanie XML-a w zarządzaniu treścią i elektronicznej wymianie danych 28 28