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

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

description

Zastosowanie XML-a w zarządzaniu treścią i elektronicznej wymianie danych. Klasy zastosowań XML-a. Zarządzanie dokumentami, treścią, wiedzą:. Elektroniczna wymiana danych, integracja aplikacji:. Pierwotne zastosowanie SGML-a. Nowa klasa zastosowań XML-a. - PowerPoint PPT Presentation

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

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

Zastosowanie XML-aw zarządzaniu treścią

i elektronicznej wymianie danych

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

2007-01-07 Zastosowanie XML-a w zarządzaniu treścią i elektronicznej wymianie danych 2

Klasy zastosowań XML-a

Zarządzanie dokumentami, treścią, wiedzą:

Dokumenty tworzone przez człowieka i przeznaczone dla człowieka.

Długi czas życia dokumentów.

Elektroniczna wymiana danych, integracja aplikacji:

Dokumenty tworzone oraz przetwarzane automatycznie

Dokumenty tworzone tylko na czas komunikacji.

Typowy model mieszany zawartości.

Konieczność dokładnego kontrolowania struktury i zawartości.

Pierwotne zastosowanie SGML-a.

Nowa klasa zastosowań XML-a.

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

2007-01-07 Zastosowanie XML-a w zarządzaniu treścią i elektronicznej wymianie danych 3

Dwie twarze XML-aBaza danych:Dokument tekstowy:<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>

<zeznanie-sprawcy>Wypadek dnia <data>13.01.2001 r.</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>

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

2007-01-07 Zastosowanie XML-a w zarządzaniu treścią i elektronicznej wymianie danych 4

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.

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

2007-01-07 Zastosowanie XML-a w zarządzaniu treścią i elektronicznej wymianie danych 5

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

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

2007-01-07 Zastosowanie XML-a w zarządzaniu treścią i elektronicznej wymianie danych 6

Metainformacje – przykład

Nr protokołu: 1313/2001Miejsce: Dołowice GórneData: 13.01.2001Czas: 13.13Rodzaj: potrącenie pieszegoSprawca: Walenty PechowySprawę prowadzi: st. asp. Jan Łapówka

<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>

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

2007-01-07 Zastosowanie XML-a w zarządzaniu treścią i elektronicznej wymianie danych 7

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”

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

2007-01-07 Zastosowanie XML-a w zarządzaniu treścią i elektronicznej wymianie danych 8

Warianty dokumentów – przykład<akt> ...<art nr=”2.”>Przywóz wody nie jest objęty cłem.</art><wariant-ref id=”a436”/> ... </akt>

<art nr=”3.”>Cło na przywóz zamrożonej wody wynosi 30%.</art>

<art nr=”3.”>Cło na przywóz śniegu wynosi 30%.</art>

od=*do=18.01.2006

od=19.01.2006do=*

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

2007-01-07 Zastosowanie XML-a w zarządzaniu treścią i elektronicznej wymianie danych 9

Geneza elektronicznej wymiany danych (EDI)• Problemy z automatyzacją procesów

między przedsiębiorstwami.• „Izolowane wyspy”

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

2007-01-07 Zastosowanie XML-a w zarządzaniu treścią i elektronicznej wymianie danych 10

Standardy EDI

• EDIFACT – United Nations Standard Messages Directory for Electronic Data Interchange For Administration, Commerce and Transport.

• ANSI Accredited Standards Committee X12 sub-group.

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

2007-01-07 Zastosowanie XML-a w zarządzaniu treścią i elektronicznej wymianie danych 11

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’

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

2007-01-07 Zastosowanie XML-a w zarządzaniu treścią i elektronicznej wymianie danych 12

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

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

2007-01-07 Zastosowanie XML-a w zarządzaniu treścią i elektronicznej wymianie danych 13

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

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

2007-01-07 Zastosowanie XML-a w zarządzaniu treścią i elektronicznej wymianie danych 14

Nowa EDIPomysł: zakodować strukturę dokumentu EDI przy pomocy elementów XML.

<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>

N1*BY*92*1287N1*ST*92*87447N1*ZZ*992*1287PO1*1*1*EA*13.33**CB*80211*IZ*364*UP*718379271641

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

2007-01-07 Zastosowanie XML-a w zarządzaniu treścią i elektronicznej wymianie danych 15

Tradycyjna EDI – XML EDI

Format dokumentówzapisany w specyfikacji.

„Samoopisujący się” format dokumentów.

Zmiany standardu pociągają uciążliwe zmiany oprogramowania.

Możliwość tworzenia własnych odmian standardów.

Scentralizowana, trudna zmiana standardu.

Większość problemów ze zmianą standardu bierze na siebie parser XML.

Zwięzłe komunikaty, zawierające tylko niezbędne dane.

Rozwlekłe komunikaty – narzut na „samoopisywanie się”.

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

2007-01-07 Zastosowanie XML-a w zarządzaniu treścią i elektronicznej wymianie danych 16

Tradycyjna EDI – XML EDI

Łącza dedykowane dla EDI (Value Added Networks)

Możliwość korzystania z gotowych narzędzi

Implementowanie od podstaw

Internet + bezpieczne protokoły

Przetwarzanie przez specjalne aplikacje

Interakcja przy pomocy przeglądarki

Możliwość integracji z tradycyjnymi systemami EDI

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

2007-01-07 Zastosowanie XML-a w zarządzaniu treścią i elektronicznej wymianie danych 17

Elastyczność XML EDI

<firma nazwa=”Krzak i Syn” adres=”Kota 7” miasto=”Dołowice Górne” />

<firma nazwa=”Krzak i Syn” adres=”Kota 7” kod=”13-313” miasto=”Dołowice Górne” email=”[email protected]” />

<firma nazwa=”Krzak i Syn” email=”[email protected]” />

Krzak i SynAdres: Kota 7Kod: 13-313Miasto: Dołowice GórneTel.

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

2007-01-07 Zastosowanie XML-a w zarządzaniu treścią i elektronicznej wymianie danych 18

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.

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

2007-01-07 Zastosowanie XML-a w zarządzaniu treścią i elektronicznej wymianie danych 19

Inicjatywy standaryzacji XML-EDI

• 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,– ...

• XML jest zbyt elastyczny.

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

2007-01-07 Zastosowanie XML-a w zarządzaniu treścią i elektronicznej wymianie danych 20

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

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

2007-01-07 Zastosowanie XML-a w zarządzaniu treścią i elektronicznej wymianie danych 21

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.

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

2007-01-07 Zastosowanie XML-a w zarządzaniu treścią i elektronicznej wymianie danych 22

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ść.

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

2007-01-07 Zastosowanie XML-a w zarządzaniu treścią i elektronicznej wymianie danych 23

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.

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

2007-01-07 Zastosowanie XML-a w zarządzaniu treścią i elektronicznej wymianie danych 24

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/

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

2007-01-07 Zastosowanie XML-a w zarządzaniu treścią i elektronicznej wymianie danych 25

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>

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

2007-01-07 Zastosowanie XML-a w zarządzaniu treścią i elektronicznej wymianie danych 26

XMLType – przykładySELECT 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 ClassDiabolique

Źródło: Oracle 9i XML Database Developer’s Guide,www.lc.leidenuniv.nl/awcourse/oracle/appdev.920/a96620/toc.htm

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

2007-01-07 Zastosowanie XML-a w zarządzaniu treścią i elektronicznej wymianie danych 27

XML a bazy danych – przegląd

Relacyjne bazy danychze 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)

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

2007-01-07 Zastosowanie XML-a w zarządzaniu treścią i elektronicznej wymianie danych 28

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