xml1

Trochę ciekawostek – na weekend (czego to ludzie nie wymyślą ...



Rafa³ Ksiê¿yk
email:
ksiezyk@fuw.edu.pl
v 1.0, RK, 1.04.1999 r. [xml4pc_1.html]



Cykl "XML dla o(d)pornych".
XML dla opornych
Czê¶æ I. Jak skomputeryzowaæ Internet?


Scenariusz beznadziejny
Akt I

Dosta³em od Babci na Gwiazdkê 13 dolców, z przykazaniem, ¿ebym sobie za to kupi³ ciep³e skarpetki. Traf chcia³, ¿e dolar trochê spad³ i nie starcza mi na takie jedne upatrzone, na narty. Ale nie zamierzam dok³adaæ do tego interesu. Wycwani³em siê. Od czego mam Internet?!



Codziennie rano zagl±dam na tabelê kursów w NBP,
w paru innych bankach i kantorach. Przeliczam, przeliczam i wiem, czy bêdzie
z czym i¶æ do sklepu.



Akt II

K³opot w tym, ¿e dolar jako¶ nie
ro¶nie. Mijaj± ju¿ dwa miesi±ce. Trochê mi siê znudzi³y te codzienne obowi±zki.
Odwiedzanie kolejnych stron. Notowanie na kartce kursów. Kalkulator.



Nie mo¿na by tego jako¶ zautomatyzowaæ? W koñcu ca³y ten Internet chodzi na
jakich¶ komputerach, nie? Niech mi komputer sprawdza, liczy i mówi: Dzisiaj
leæ po skarpety!




Epoka euforii internetowej

Internet umo¿liwia przesy³anie informacji z ka¿ego nieomal komputera na ka¿y inny.
Tworzenie stron WWW pozwala u¿ytkownikowi na opublikowanie danych milionom
odbiorców, potencjalnie ca³emu ¦wiatu. W Webie mo¿na dzi¶ znale¼æ gigabajty
interesuj±cych informacji.



Skoro jest tak dobrze, to czemu jest tak ¼le?

Problem formatów. Dzisiejsze strony WWW nadaj± siê doskonale
do ogl±dania i s± przeno¶ne. Obudowywane coraz wiêksz± liczb± skryptów zyskuj±
na funkcjonalno¶ci i atrakcyjno¶ci. S± jednak tylko do odczytu i
tylko przez cz³owieka. Dane, które s± na nich zawarte nie mog± byæ wykorzystane
przez inne aplikacje. U¿ytkownik musi rêcznie wywo³aæ interesuj±c± stronê
i wyczytaæ z niej istotne informacje.

Czy z którejkolwiek ze stron z kursami
walut mo¿na automatycznie pobraæ kurs dolara?



Problem automatów.
Je¶li ju¿ mówimy o walucie, chcia³bym, aby mój komputer móg³ przygotowywac
zestawienie kursów na podstawie danych pobieranych z ró¿nych serwisów. Móg³by
liczyæ ¶rednie tygodniowe, wybieraæ bank z najatrakcyjniejsz± ofert±. U¿ytkownicy
Internetu potrzebuj± aplikacji automatyzuj±cych rutynowe dzia³ania.
Warunek
ten mo¿e byæ spe³niony, je¶li bêdzie mo¿na korzystaæ z formatów oferuj±cych
odpowiednio przygotowane dane.



Problem za¶miecenia. Internet
jest bardzo za¶miecony informacyjnie. Nic w tym nagannego, co wiêcej, tak
byæ musi skoro publikowanie w Webie jest powszechnie dostêpne. Problemem jest
jednak wyszukiwanie istotnych informacji i odfiltrowywanie niepotrzebnych.
Sk±d mogê wiedzieæ, ¿e serwis jakiego¶ kantoru jest wiarygodny? Mój komputer
móg³by automatycznie pobraæ adresy stron wszystkich kantorów rekomendowane
przez stronê Powa¿nej Instytucji Finansowej (gdyby taka istnia³a) i nie interesowaæ
siê innymi.
Gdyby problemy formatów i automatów by³y rozwi±zane
nie istnia³by tak¿e i problem za¶miecenia.



Co¶ nie tak z HTML?

Wszystko zacina siê na braku formatu, w którym mogliby¶my precyzyjnie
opisaæ jakie dane nasza webowa strona zawiera. Dlaczego dotychczasowe rozwi±zania
tego nie zapewniaj±?



HTML (Hyper Text Markup Language) jest jêzykiem,
w którym s± tworzone strony WWW. Dziêki prostocie, czytelno¶ci i przeno¶no¶ci
miêdzy komputerami zapewni³ Internetowi wielki sukces. Pozwala okre¶laæ uk³ad
strony, podzia³ tekstu na akapity, wyróznienia (wyt³uszczenie, kursywa, itd.),
hiperlinki, tabele i po³o¿enie ilustracji. Z biegiem czasu rozszerzano go
o formularze, ramki, skrypty i aplety.



HTML jest nastawiony na prezentacjê
dokumentów tekstowych ale nie pozwala na umieszczanie metainformacji o tym,
czym s± prezentowane dane. Mo¿emy umie¶ciæ na stronie kurs dolara ale nie
mo¿emy zakodowaæ prostego faktu: "hej, wszystkie programy poszukuj±ce ceny
dolara -- tu go macie!". HTML jest zamkniêtym jêzykiem, którego nie mo¿na modyfikowaæ
i rozszerzaæ o tego typu funkcje. W zwi±zku z tym praktycznie nie nadaje siê
on do przenoszenia danych w Internecie. Potrzebny jest bardziej ogólny jêzyk.





XML

Dane s± najwa¿niejsze

Na przyk³ad wspomniana wy¿ej tabela kursów walut mo¿e wygl±daæ na stronie WWW nastêpuj±co:




Symbol walutyKupnoSprzeda¿Data
USD3,503,5727.02.1999

A tak wygl±da zapis tej tabeli w HTML-u:


<table align="center" border="1"><tr>
    <th>Symbol
waluty</th><th>Kupno</th><th>Sprzeda¿</th><th>Data</th>
</tr><tr>
    <td><b>USD</b></td><td>3,50</td><td>3,57</td><td>27.02.1999</td>
</tr></table>



A jak powinny wygl±daæ dane, aby by³y u¿yteczne tak¿e dla komputera? Ano tak:




<Waluta>
    <Symbol>USD</Symbol>
    <Kupno>3,50</Kupno>
    <Sprzeda¿>3,57</Sprzeda¿>
    <Data>27.02.1999</Data>
</Waluta>



I to jest w³a¶nie XML! Bill Gates powiedzia³: "XML, to dane [dostarczane,
prezentowane, przetwarzane] w sposób jaki chcecie". Gdyby wszyscy w Webie
pos³ugiwali siê tak oznakowanymi dokumentami, zawieraj±cymi tak prezyzyjne
informacje, to nie tylko problem skarpetek, ale tak¿e powa¿niejsze problemy
by³yby ³atwe do rozwi±zania. Zanim jednak przejdziemy do rozwi±zañ, trzeba
zwróciæ uwagê na jeszcze jedn± rzecz.



Styl prezentacji

Tak przenikliwy czytelnik jak Ty, z pewno¶ci± zauwa¿y³, ¿e w pogoni za istot± danych co¶ jednak
tracimy. Otagowanie przestaje mówiæ, jaki ma byæ wygl±d naszego dokumentu.
Nowa zasada nieoznaczono¶ci? Je¶li mamy wygl±d -- tracimy dane, je¶li skupiamy
siê na danych -- tracimy wygl±d dokumentu. Jak to jest?



Zastanówmy siê najpierw, z czego wynika takie, a nie inne sformatowanie wygl±du dokumentu.
Otó¿ formatujemy dokument, poniewa¿ chcemy, ¿eby:




    lby³ bardziej atrakcyjny, a przede wszystkim chcemy, ¿eby l
    llepiej przekazywa³ zawarte w nim informacje.l


A to znaczy, ¿e sposób formatowania danych wynika z tego jakie to
s± dane, ¿e jest od nich zale¿ny. Kluczem do sukcesu jest oddzielenie:




    lznaczenia danych od l
    lsposobu ich prezentacji.l


A wiêc niczego nie tracimy. Wystarczy oznakowaæ semantykê aby z niej,
automatycznie, na podstawie tak zwanego arkusza stylów, stworzyæ prezentacjê
dokumentu. W naszym przypadku -- tekst, bêd±cy symbolem waluty (otoczony tagiem
<Symbol>), bêdzie prezentowany czcionk± wyt³uszczon±, a ca³o¶æ,
bêdzie mia³a formê tabeli, z nag³ówkami pobranymi z nazw elementów: Symbol
, Kupno, Sprzeda¿Data.



Nie musimy poprzestawaæ na jednym rodzaju formatowania. Stworzony przez nas dokument mo¿e mieæ wiele
stylów prezentacji:




    lklasycznie elegancki -- do wydruku na papierze, l
    lpoci±gaj±cy -- do wydania na CD, l
    lnaj¶wie¿szy -- w edycji Webowej. l


I tu widaæ, jak dane zaczynaj± wreszcie na siebie pracowaæ.



Wspólne korzenie

Podobieñstwo jêzyków XML i HTML rzuca siê w oczy.
To dlatego, ¿e s± bliskimi krewnymi. HTML jest aplikacj± standardu SGML (ISO
8879:1986), metajêzyka przeznaczonego do definiowania jêzyków opisu struktury
wewnêtrznej i sposobu prezentacji dokumentów elektronicznych. SGML jest wykorzystywany
jako format du¿ych zbiorów danych tekstowych, m.in. dokumentacji technicznej
i prawnej w du¿ych firmach, agendach rz±dowych i w wojsku. Na przyk³ad licz±ca
ponad 5 milionów stron dokumentacja techniczna Miêdzynarodowej Stacji Kosmicznej
jest tworzona w SGML-u.



XML jest uproszczon± wersj± SGML, stworzon± z my¶l± o zastosowaniach Internetowych.
Mówi siê, ¿e XML posiada 80% mocy
SGML-a przy jedynie 20% z³o¿ono¶ci. Co do powi±zañ rodzinnych, to XML jest
m³odszym bratem SGML-a oraz stryjem dla HTML-a.





Epoka dojrza³ego Internetu

Wydaje siê, ¿e rok 2000 zamyka okres euforii internetowej
a rozpoczyna epokê dojrza³ego Internetu. Dojrza³ego, to znaczy zapewniaj±cego
komunikacjê i wspó³dzia³anie programom komputerowym bez bezpo¶redniego udzia³u
ludzi. Jak d³ugo jednak bêdziemy musieli czekaæ na taki stan, gdzie Sieæ jest
jednocze¶nie najwiêkszym komputerem, systemem operacyjnym i aplikacj±?





Schemat wymiany dokumentów i danych w Internecie z wykorzystaniem technologii XML.



Stoimy o krok przed t± epok±. Zobaczmy w jaki
sposób XML puka do firewalli naszych systemów.



XML w Internecie

Miliony dokumentów XML-owych s± ju¿ na naszych dyskach. Microsoft rozpocz±³
stosowanie XML od swojej technologii push i st±d informacje o aktywnych
kana³ach s± zapisywane w XML (tzw. Channel Definition Format). Nastêpnym krokiem
by³o czê¶ciowe wsparcie XML w Internet Explorerze 4.0 i pe³ne w IE 5.0, który
zadebiutowa³ oficjalnie kilka tygodni temu. Netscape nie pozostaje obojêtny.
Mozilla szczyci siê funkcjami XML-owymi ju¿ od kilku miesiêcy. Dziêki rozumieniu
XML przez przegl±darki mo¿liwe bêdzie tworzenie bogatych w dane serwisów Webowych.
Przegl±darki to jednak nie wszystko.



Otagowane semantycznie strony oznaczaj±
to tak¿e nieosi±galne dotychczas mo¿liwo¶ci wyszukiwania informacji w sieci.
Je¶li Internetowy serwis hoteli posiada oznakowane: nazwê miasta, kategoriê,
i ceny, to bêdê móg³ zapytaæ: "znajd¼ hotele w Pary¿u, maksimum trójgwiazdkowe,
w przedziale cen za noc ...". Dostanê gotow± odpowied¼. Lub nie. O ile nie
ma takiego hotelu, oczywi¶cie. Nie bêdê jednak wiêcej traci³ godzin na "surfowanie"
i odrzucanie rzekomo bliskich trafieñ. Po pierwsze: surfowanie jest dobr±
zabaw±, gdy chcemy siê bawiæ, ale nie metod± na szybkie i bezpieczne podró¿owanie.
Po drugie: Pary¿ (ang. Paris) to po angielsku jednocze¶nie imiê greckiego
bohatera Parysa, o którym tak¿e mo¿na siê sporo dowiedzieæ.



XML dla domu i biura

Microsoft opó¼nia premierê
Office 2000 i pewnie zostanie wyprzedzony przez IBM-owski obecnie pakiet Lotus SmartSuite (wersja Millenium). Oba produkty maj± wykorzystywaæ HTML jako format plików dla wszystkich aplikacji, na równi z natywnymi formatami, jak np. DOC w Wordzie. Czysty HTML nie nadaje siê do takich zastosowañ, ale staje siê to mo¿liwe dziêki wyspom XML (raczej ca³ym kontynentom) zanurzonym w HTML-u. To one bêd± zawieraæ nie mieszcz±ce siê w HTML i najbardziej newralgiczne informacje.



Nareszcie formaty plików pakietów biurowych bêd± rzeczywi¶cie Internetowe. Co
wiêcej, bêd± otwarte. To znaczy, ¿e ka¿dy np. edytorem
ASCII lub skryptem Perlowym mo¿e do nich zajrzeæ, co¶ wyj±c,
co¶ wstawiæ. Bez konieczno¶ci posiadania drogiego oryginalnego
software'u. A mo¿e kto¶ napisze lepsze narzêdzia operuj±ce
na tych formatach?



XML w powa¿nych aplikacjach

Oracle, najwiêkszy producent relacyjnych baz danych na ¶wiecie, zapowiedzia³ na rok 1999 wersjê
8i (i jak Internet) swego falagowego serwera bazy danych. Oracle
8i zawiera szerokie wsparcie dla technologii XML. Nie tylko u³atwia
sk³adowanie, zarz±dzanie i wyszukiwanie dokumentów zakodowanych w XML-u. Oferuje
tak¿e mechanizmy dla automatycznego tworzenia dokumentów XML-owych z danych
zawartych w bazie (np. nasza tabela kursów walut) i vice versa -- wprowadzanie
do bazy danych dostarczonych w postaci otagowanego dokumentu XML-owego. Móg³bym
wiêc daæ zlecenie swojemu Oracle'owi, ¿eby codziennie automatycznie aktualizowa³
moj± lokaln± tabelê kursów walut z Internetu.



XML wszêdzie

Wszyscy jeste¶my ¶wiadkami b³yskotliwej kariery Javy. Java pozwala na tworzenie
przenaszalnych programów. Programy to jednak nie wszystko. Nie dzia³aj± bez
danych. Có¿ z przenaszalnych programów bez przenaszalnych danych? XML zapewnia
danym przenaszalno¶æ, st±d specjali¶ci podkre¶laj± tê narzucaj±c± siê symbiozê
technologii: Java -- przeno¶ny kod, XML -- przeno¶ne dane. SUN w prowadzonym
w³a¶nie projekcie o kodowej nazwie Java Project X, wzbogaca Javê o funkcje
do obs³ugi XML.



Przed dwoma laty, kiedy dosta³em do rêki pierwsz± robocz±
wersjê specyfikacji XML, zdumia³ mnie jeden fakt. Dokument by³ sponsorowany
jednocze¶nie przez SUN i Microsoft. No, no -- pomy¶la³em. Je¶li co¶ ma zgodne
wsparcie tych dwóch konkurentów, to ma gwarancjê na sukces.



W tej chwili w XML inwestuj± nie tylko SUN i Microsoft. W¶ród firm wdra¿aj±cych tê techologiê
s±: IBM, Adobe, Oracle, Informix, Sybase, SAP i wielu innych licz±cych siê
dostawców. Zobaczymy co siê z tego urodzi.





Prognozy zamiast zakoñczenia

Zona Research: XML zdominuje rynek narzêdzi do tworzenia stron
WWW.

Gartner Group: W roku 2000, przetwarzalno¶æ dokumentów,
mo¿liwa dziêki ich otagowaniu, bêdzie najpowa¿niejsz± tendencj± w wydawnictwach
korporacyjnych (prawdopodobieñstwo 0,8), pozwalaj±c przedsiêbiorstwom na zamienienie
dokumentów bêd±cych statycznymi pojemnikami danych w potê¿ne aplikacje. U¿ycie
standardów XML rozszerzy otagowanie dokumentów i, w pierwszej po³owie roku
2000, przewy¿szy u¿ycie HTML w zastosowaniach wydawniczych (prawdopodobieñstwo
0,9).





O tym jak tworzyæ dokumenty w XML-u, oraz gar¶æ technikaliów, przeczytacie w drugim artykule z cyklu
XML dla o(d)pornych
: "Spójrzmy z góry na HTML!". Uwaga, czê¶æ druga dla odpornych!

  • zanotowane.pl
  • doc.pisz.pl
  • pdf.pisz.pl
  • strefamiszcza.htw.pl
  • Copyright (c) 2009 TrochÄ™ ciekawostek – na weekend (czego to ludzie nie wymyÅ›lÄ… ... | Powered by Wordpress. Fresh News Theme by WooThemes - Premium Wordpress Themes.