Pobieranie prezentacji. Proszę czekać

Pobieranie prezentacji. Proszę czekać

Wstęp do Extensible Markup Language (XML) Nowa jakość przetwarzania informacji w Internecie Luty 1999 Witold Juda Instytut Informatyki Uniwersytetu Wrocławskiego.

Podobne prezentacje


Prezentacja na temat: "Wstęp do Extensible Markup Language (XML) Nowa jakość przetwarzania informacji w Internecie Luty 1999 Witold Juda Instytut Informatyki Uniwersytetu Wrocławskiego."— Zapis prezentacji:

1

2 Wstęp do Extensible Markup Language (XML) Nowa jakość przetwarzania informacji w Internecie Luty 1999 Witold Juda Instytut Informatyki Uniwersytetu Wrocławskiego wju@ii.uni.wroc.pl

3 W. Juda, "XML - Nowa jakość przetwarzania informacji w Internecie" 2 Krótki wstęp, czyli jak ważny jest tekst Najważniejszym ludzkim zmysłem, jeśli chodzi o zdobywanie informacji jest zmysł wzroku. W najszybszy sposób dostarcza nam informacji o otaczającym nas świecie. Długa historia środków przekazu informacji doprowadziła do powstania alfabetu, pisma. Człowiek zaczął tworzyć tekst w celu przekazania ulotnej informacji. Tekst był uzupełniany rysunkami, rycinami, ozdobnymi inicjałami. W pewnym momencie narodziły się koncepcje rozdziałów, nagłówków, akapitów. Twórcy stale doskonalili sztukę formatowania tekstu. Wszystko po to, aby czytający, także za pomocą innych środków wizualnych, jak tylko czysty tekst, był w stanie szybko przyswajać informacje, a także wśród nich nawigować. Komputery zrewolucjonizowały metody przetwarzania, dystrybucji oraz odbioru tekstu. Dzięki nim powstała także zupełnie nowa jakość, mianowicie tekst aktywny.

4 W. Juda, "XML - Nowa jakość przetwarzania informacji w Internecie" 3 Tekst komputerowy Standard ASCII umożliwił wymianę elektronicznego tekstu pomiędzy różnymi systemami komputerowymi

5 W. Juda, "XML - Nowa jakość przetwarzania informacji w Internecie" 4 Tekst sformatowany, postać graficzna Przykład: Microsoft Word Graficzny interfejs użytkownika systemów komputerowych spowodował ogromny postęp w formatowaniu elektronicznego tekstu. Różne czcionki, kroje, wielkości, kolory spowodowały, że tekst stał się bardziej atrakcyjny oraz czytelny. Powstało jednak bardzo wiele standardów kodowania tekstu, często firmowych i binarnych (np. Word, RTF, PostScript, TeX).

6 W. Juda, "XML - Nowa jakość przetwarzania informacji w Internecie" 5 Tekst w standardzie HTML HTML daje duże możliwości formatowania tekstu. Pozwala tworzyć dokumenty o nieskomplikowanych strukturach, z góry określonych cechami języka. HTML stał się standardem wymiany tekstów i prezentowania informacji w Internecie. Jego popularność jest jego ogromną zaletą.

7 W. Juda, "XML - Nowa jakość przetwarzania informacji w Internecie" 6 Tekst zakodowany w języku HTML December 11, 1997 Introduction Schemas define the characteristics of classes of objects. This paper describes an XML vocabulary for schemas, that is, for defining and documenting object classes. It can be used for classes which as strictly syntactic (for example, XML) or those which indicate concepts and relations among concepts (as used in relational databases, KR graphs and RDF). The former are called "syntactic schemas;" the latter "conceptual schemas." For example, an XML document might contain a "book" element which lexically contains an "author" element and a "title" element. An XML-Data schema can describe such syntax. However, in another context, we may simply want to represent more abstractly that books have titles and authors, irrespective of any syntax. XML-Data schemas can describe such conceptual relationships. Further, the information about books, titles and authors might be stored in a relational database, in which XML-Data schemas describe row types and key relationships.

8 W. Juda, "XML - Nowa jakość przetwarzania informacji w Internecie" 7 Elementy składowe dokumentów wysokiej jakości Prezentacja ZawartośćStruktura Zawartość (tekst i dane) jest pierwotnym elementem dokumentu. Sama w sobie jest jedynie ciągiem znaków w swojej reprezentacji dla komputera. Komputer bez znajomości struktury zawartości ma bardzo ograniczone możliwości jej przetwarzania ( wstaw, znajdź- zamień...) Żeby przetwarzać informację, musi być znana jej struktura. Struktura nadaje znaczenie tekstowi, zarówno jego całości, jak i najdrobniejszym elementom. Znając strukturę dokumentu, można go przeszukiwać, analizować, sprawdzać jego poprawność. Oznaczając dokument nadajemy mu strukturę. Informacja lepiej przedstawiona, jest bardziej przyswajalna. Prezentacja jest składnikiem, który dotyczy strony wizualnej dokumentu. Decyduje on o poziomie atrakcyjności i recepcji przedstawianych informacji. Sposób prezentacji powinien być ściśle powiązany ze strukturą dokumentu.

9 W. Juda, "XML - Nowa jakość przetwarzania informacji w Internecie" 8 n Oznaczenie jest pojęciem, które oznaczało kiedyś specjalny opis lub znaki nanoszone na fragment tekstu, przeznaczone do poinstruowania zecera lub maszynistki, jak konkretny fragment tekstu ma być wydrukowany lub wylany. Gdy formatowanie i drukowanie zostało zautomatyzowane, pojęcie to zaczęło obejmować różnego rodzaju specjalne znaki wstawiane w elektroniczny tekst, które służą do zarządzania formatowaniem, drukowaniem oraz innego rodzaju przetwarzaniem tekstu. n Generalizując, oznaczenie jest dowolnym środkiem, dzięki któremu nadajemy dokładną interpretację tekstu. n Oznaczenia nadają tekstowi strukturę ! Oznaczenie (markup)... autor stwierdził: <cytat> To jest to! </cytat>, przyznając rację...

10 W. Juda, "XML - Nowa jakość przetwarzania informacji w Internecie" 9 Rodzaje oznaczeń Oznaczenie opisujące Oznaczenie opisujące Oznaczenie takie używa znaczników, których nazwy po prostu klasyfikują części dokumentu. Znacznik taki jak identyfikuje fragment tekstu i daje informacje, że bieżący element jest cytatem. n Oznaczenie proceduralne Definiuje ono, jakie przetwarzanie powinno być wykonane w danym miejscu tekstu. Przykłady mogą być następujące: –wywołaj procedurę CYTAT z parametrami 1, b oraz x –powiększ lewy margines dwukrotnie oraz zmień czcionkę na pogrubioną Języki SGML oraz XML zostały zaprojektowane z założeniem, że instrukcje przetwarzające tekst w określonym celu np. sformatowania, są umieszczone na zewnętrz, czyli np. w zbiorze procedur lub w programach.

11 W. Juda, "XML - Nowa jakość przetwarzania informacji w Internecie" 10 Znacznik (tag) n Znacznik jest to symbol (specjalnie skonstruowane słowo) wstawiany w tekst, w celu oznaczenia jego fragmentu. Znaczniki używa się zazwyczaj parami, umieszczając je na początku i końcu każdej istotnej struktury w tekście. Można tutaj szukać analogii w budowaniu wyrażeń z poprawnym użyciem nawiasów. n Dobrze opisujące, proste nazwy znaczników mają ogromne znaczenie w budowaniu zrozumiałej mapy struktury dokumentu, ułatwiają tworzenie oprogramowania oraz projektowanie stylów prezentacji. n W komputerowych językach oznaczanie przyjęto następujący sposób notacji znaczników: nazwy znaczników umieszcza się pomiędzy znakami a nazwa końcowego znacznika jest tworzona przez dodanie do nazwy początkowego znaku /.... autor stwierdził: <cytat> To jest to! </cytat>, przyznając rację...

12 W. Juda, "XML - Nowa jakość przetwarzania informacji w Internecie" 11 Języki oznaczania (markup languages) n Metajęzyk jest ogólnym językiem przeznaczonym do specyfikowania innych języków. Dostarcza on środków do formalnego opisu języka, w tym języka oznaczania. n Język oznaczania jest zbiorem zasad zaznaczania służących do kodowania tekstu. Język ten musi specyfikować jakie oznaczenia są dozwolone, jakie są wymagane, jak znaczniki są rozróżniane od tekstu oraz zasady zagnieżdżania oznaczeń. Opis takiego języka daje odpowiedź na pytanie, jaką interpretację ma określone oznaczenie. Język oznaczania jest mechanizmem służącym do identyfikowania struktury dokumentu. n Język oznaczania tekstu nie jest rozszerzalny, ponieważ ma ustalony zbiór zasad oznaczania i znaczników. Rozszerzając istniejący język tworzymy zupełnie nowy. SGML XML HTML TIM DynaText MS Encarta... MathML CML SMIL RDF...

13 W. Juda, "XML - Nowa jakość przetwarzania informacji w Internecie" 12 Kodowanie tekstu z użyciem znaczników TEKST (scriptio continua) Oznaczenia Reguły oznaczania, zbiór znaczników + Definicja języka Zakodowany tekst Czytelnik lub systemy analizy i interpretacji tekstów systemy wydawnicze (DTP) narzędzia autorskie przeglądarki i wyszukiwarki analizatory zawartości... Parsing zakodowanego zakodowanegotekstu Multimedia

14 W. Juda, "XML - Nowa jakość przetwarzania informacji w Internecie" 13 Historia komputerowych języków oznaczania tekstu n lata 60-te:Komitet Graphic Communication Association stworzył standard GenCode w celu wymiany danych typograficznych w branży wydawniczej n ???IBM opracował Generalized Markup Language w celu rozwiązania własnych problemów wydawniczych, w tym zarządzania dokumentami różnych typów: podręcznikami, artykułami prasowymi, kontraktami oraz specyfikacjami projektów; GML został zaprojektowany do automatycznego generowania książek, raportów i elektronicznych edycji z tych samych źródeł; IBM zastosował po raz pierwszy znaczniki w notacji <> oraz n ???IBM opracował Generalized Markup Language w celu rozwiązania własnych problemów wydawniczych, w tym zarządzania dokumentami różnych typów: podręcznikami, artykułami prasowymi, kontraktami oraz specyfikacjami projektów; GML został zaprojektowany do automatycznego generowania książek, raportów i elektronicznych edycji z tych samych źródeł; IBM zastosował po raz pierwszy znaczniki w notacji <> oraz n lata 80-teReprezentanci społeczności GenCode oraz GML zawiązali komitet Computer Languages for the Processing of Text w ramach organizacji ANSI; celem było opracowanie i standaryzowanie metod specyfikacji, definiowania i używania oznaczeń w dokumentach n 1986SGML (Standarized Generalized Markup Language) został opracowany jako standard ISO 8879 do celów definiowania i używania przenośnych formatów dokumentów; z założenia SGML jest wystarczająco formalny, aby umożliwić testowanie poprawności dokumentów, umożliwia implementowanie złożonych struktur w dokumentach i zarządzanie wielkimi repozytoriami

15 W. Juda, "XML - Nowa jakość przetwarzania informacji w Internecie" 14 Historia języków oznaczania tekstu - powstanie XML n 1990Tim Berners-Lee wykorzystał niewielki fragment koncepcji SGML i stworzył Hypertext Markup Language (HTML) n Lipiec 1996World Wide Web Consortium (W3C) rozpoczęło oficjalnie pracę nad SGML n Listopad 1996Tim Bray oraz Jon Bosak ( w wyniku prac podgrupy W3C) prezentują początkową wersję specyfikacji XML n Marzec 1997Pierwsza konferencja o XML w San Diego; Zrewidowana wersja specyfikacji XML; Początkowa wersja specyfikacji XML Linking n Maj 1997Akceptacja zespołu roboczego SGML w postaci technicznej korekty do standardu ISO 8879:1986, mająca na celu wprowadzenie pewnych cech XML do SGML n Jesień 1997Specjalne wydanie World Wide Web Journal na temat XML n Grudzień 1997Konferencja SGML/XML 97 w Waszyngtonie n Luty 1998Ostateczna (rekomendowana) wersja specyfikacji: XML 1.0

16 W. Juda, "XML - Nowa jakość przetwarzania informacji w Internecie" 15 Hierarchia języków oznaczania SGML (500 stron) XML (30 stron) HTML Języki oznaczania (SGML) Języki oznaczania (XML) Metajęzyk XML jest podzbiorem metajęzyka SGML. HTML jest przykładem języka, którego specyfikacja została napisana z użyciem SGML. Powstała również wersja specyfikacji HTML napisana za pomocą XML.

17 W. Juda, "XML - Nowa jakość przetwarzania informacji w Internecie" 16 Standard Generalized Markup Language (wstęp) n Podstawowym celem stworzenia SGML było umożliwienie wymiany dokumentów bez utraty informacji pomiędzy heterogenicznymi systemami. Na poziomie abstrakcyjnym służą do tego: –oznaczenia opisowe, –definicje typów dokumentów. n Na poziomie strumienia bajtów (znaków) potrzebny był mechanizm zamiany łańcuchów tzn. niezależny od maszyny sposób zaznaczenia, że konkretny ciąg znaków ma być zamieniony przez inny w momencie przetwarzania dokumentu. Było to spowodowane między innymi odmiennością zestawów znaków (charsets) w różnych systemach komputerowych. Łańcuchy definiowane poprzez mechanizm zamiany łańcuchów są nazywane encjami. SGML

18 W. Juda, "XML - Nowa jakość przetwarzania informacji w Internecie" 17 DTD(Document Type Definition) Type Definition) Typ dokumentu n SGML wprowadził pojęcie typu dokumentu oraz definicję typu dokumentu (ang. DTD). Dokumenty muszą mieć typ, tak jak inne obiekty przetwarzane przez komputery. Typ dokumentu jest definiowany formalnie przez składowe części oraz strukturę. Np. Raport składa się z tytułu, ewentualnie nazwiska autora, streszczenia oraz sekwencji akapitów. n Jeśli dokument ma określony typ, może zostać użyty parser w celu przetworzenia dokumentu i sprawdzenia czy jest on poprawny tzn. czy są obecne wszystkie wymagane dla tego typu elementy, oraz czy występują w prawidłowej kolejności. Można tworzyć inteligentne programy, które korzystają z wiedzy zawartej w opisie struktury dokumentu.

19 W. Juda, "XML - Nowa jakość przetwarzania informacji w Internecie" 18 Struktura dokumentu - elementy n Oznaczony fragment tekstu (bez znaczników), pojmowany jako strukturalna jednostka, został nazwany elementem. Różne typy elementów mają różną nazwę. Ich znaczenie nie jest definiowalne w SGML. Można jedynie określić ich związek z innymi elementami tzn. czy mogą, muszą (lub nie) występować w ramach innego elementu oraz to, czy same mogą być dekomponowane. Wewnątrz tekstu, każdy element musi być zaznaczony z użyciem znaczników. Nazwa użytego znacznika początkowego (wewnątrz znaków ) jest równocześnie nazwą elementu. Element cytat Element akapit <akapit> Autor stwierdził: <cytat> To jest to! </cytat>, przyznając rację... </akapit>

20 W. Juda, "XML - Nowa jakość przetwarzania informacji w Internecie" 19 Definiowanie struktur dokumentów n DTD jest wyrażany w SGML jako zbiór instrukcji deklaratywnych Deklaracje, podobnie jak znaczniki ujmowane są w znaki, pierwszym znakiem wewnątrz jest znak ! i słowo kluczowe ELEMENT Nazwa deklarowanego typu elementu Alternatywa Element może wystąpić po elemencie tytuł Opcjonalność wystąpienia Dowolny ciąg znaków Model zawartości elementu, określający jakie wystąpienia innych elementów może poprawnie zawierać Zasady minimalizacji - dwa znaki odpowiadające znacznikom początkowemu i końcowemu; znak O oznacza opcjonalność wystąpienia znacznika Co najmniej jedno wystąpienie

21 W. Juda, "XML - Nowa jakość przetwarzania informacji w Internecie" 20 Struktura hierarchiczna przykładowego dokumentu DTD(Document Type Definition) Type Definition) publikacje raport tytułautorakapittytułakapit wierszcytatwiersz cytatwiersz Diagram pokazujący strukturę przykładowego dokumentu

22 W. Juda, "XML - Nowa jakość przetwarzania informacji w Internecie" 21 Atrybuty elementów n SGML pozwala nadawać elementom atrybuty - pewne informacje opisujące, które jednak nie są częścią zawartości. Różne elementy mogą mieć atrybuty o takich samych nazwach, jednak nie są one w żaden sposób ze sobą powiązane. n Jeśli element został zdefiniowany jako posiadający atrybuty, wartości atrybutów są wpisywane w tekst jako para atrybut-wartość wewnątrz znacznika początkowego. DTD <!ATTLIST raport idID#IMPLIED status(szkic|korekta|publikacja)szkic>...... Nazwa typu elementu Słowo kluczowe zapowiadające specyfikację listy atrybutów Nazwy atrybutów Rodzaje wartości atrybutów, mogą być zdefiniowanego w SGML typu Jak ma być interpretowany brak wartości atrybutu

23 W. Juda, "XML - Nowa jakość przetwarzania informacji w Internecie" 22 Encje n SGML daje możliwość nazywania konkretnych części aktualnej zawartości dokumentu za pomocą deklaracji encji. Encja może być łańcuchem znaków lub też całym plikiem tekstowym. W celu dołączenia jej do tekstu używa się referencji do encji. Lista deklaracji encji tworzy zbiór encji. DTD...Książkę napisał &wju;...... &Rozdz2;... Referencja do encji wju Znak o kodzie 999 Deklaracja encji systemowej, której wartością jest tekst z pliku

24 W. Juda, "XML - Nowa jakość przetwarzania informacji w Internecie" 23 Deklarowanie DTD n Dokument w SGML składa się z prologu oraz instancji dokumentu. Prolog składa się z: – deklaracji SGML, która może zawierać różne informacje o użytym dialekcie SGML (normalnie te informacje są niewidoczne dla użytkownika), –definicji typu dokumentu. n Definicja typu dokumentu specyfikuje typ, wobec którego będzie sprawdzona instancja dokumentu. W pewnych przypadkach może być niewidoczna dla użytkownika. <!DOCTYPE my.dtd [ ]><my.dtd> To jest instancja dokumentu typu my.dtd ! </my.dtd> Komentarz w SGML Nazwa DTD

25 W. Juda, "XML - Nowa jakość przetwarzania informacji w Internecie" 24 Używanie DTD n DTD jest zazwyczaj przechowywany w osobnym pliku i wykorzystywany przez referencję. W „dziedziczonym” DTD można dodawać nowe deklaracje. Jeśli tutaj zadeklaruje się obiekt o takiej samej nazwie, jak we wskazanym DTD, to zostanie uwzględniona nowa deklaracja. <!DOCTYPE instancja.dtd SYSTEM „my.dtd”[ ]><instancja.dtd><publikacje>...</publikacje></instancja.dtd> Nazwa „dziedziczonego”DTD

26 W. Juda, "XML - Nowa jakość przetwarzania informacji w Internecie" 25 Zalety języka SGML n Otwartość standardu (ISO 8879-1986) i niezależność od platform Rozszerzalność Rozszerzalność Autorzy mogą łatwo definiować języki z nowymi elementami, atrybutami oraz modelami strukturalnymi. Struktura Struktura SGML pozwala implementować dokumenty o złożonych strukturach. Dzięki temu można bardzo precyzyjnie szukać i odczytywać potrzebne informacje. Zwiększa się poziom inteligencji systemów przetwarzających dokumenty. Walidacja Walidacja Każdy dokument może zostać sprawdzony pod względem zgodności z jego DTD. Poprawny dokument ma strukturę określoną w DTD. Podział części składowych dokumentu Podział części składowych dokumentu Prezentacja, struktura, zawartość oraz wiązania (linking) są od siebie oddzielone.

27 W. Juda, "XML - Nowa jakość przetwarzania informacji w Internecie" 26 Wady języka SGML n Duża złożoność specyfikacji (500 stron) Oprogramowanie, które by obsługiwało wszystkie własności SGML jest bardzo trudne do zbudowania. Nauka pełnej specyfikacji SGML jest trudna. Nieprzystosowanie do Internetu - niska przenośność Nieprzystosowanie do Internetu - niska przenośność Przeglądanie dokumentu w złożonym języku wymaga DTD, arkusza stylu prezentacji (style sheet). Instancja dokumentu musi zostać poddana walidacji, jeśli nie jest prawidłowa, nie zostanie wyświetlona. SGML doskonale się sprawdza w lokalnych aplikacjach, znacznie gorzej w globalnych. Złożoność modelu wiązania Złożoność modelu wiązania SGML udostępnia bardzo wiele możliwości wiązania zasobów. Każdy DTD może mieć zaimplementowany specyficzny sposób wiązania, co utrudnia tworzenie dokumentów, które są związane z innymi dokumentami. Brak wsparcia producentów przeglądarek WWW Brak wsparcia producentów przeglądarek WWW SGML nie jest implementowany w wiodących i popularnych przeglądarkach.

28 W. Juda, "XML - Nowa jakość przetwarzania informacji w Internecie" 27 Język opisu stron HTML n „Każdy, kto używa języka HTML od dłuższego czasu, odkrywa, że potrzebuje akurat jeszcze jednego znacznika więcej.” Steve de Rose (INSO Corp., Uniwersytet Brown, członek W3C) n „Zauważyłem, że wielu dostawców Internetu używa tzw. „strukturalnych komentarzy” w celu ukrycia informacji w ich kodzie HTML.” Jean Paoli, (Microsoft Corp., członek W3C) HTML (HyperText Markup Language) został zaprojektowany jako język opisu strony, z akcentem położonym na prezentację informacji. Bardzo ważną cechą HTML jest hipertekst, łatwość implementowania łącz do innych dokumentów (zasobów). HTML specyfikuje prosty i ograniczony zbiór znaczników, które określają wygląd fragmentu dokumentu, jednak nie jego znaczenie. HTML jest otwartym, przenośnym i efektywnym (w Internecie) standardem. HTML

29 W. Juda, "XML - Nowa jakość przetwarzania informacji w Internecie" 28 Zalety języka HTML n Prosty model wizualnego prezentowania informacji n Prosty model wiązań Wiązania typu 1-1 i uniwersalne adresy (URL) dają możliwość łatwej implementacji wiązania dokumentów w odległych nawet lokalizacjach. n Prostota specyfikacji HTML jest małym, ustalonym zbiorem elementów. Umożliwia to szybką naukę standardu i prezentowanie informacji w postaci dokumentów HTML. n Przenośność i efektywność w dostarczaniu przez Internet Dokumenty HTML nie muszą być sprawdzane wobec DTD, które nie muszą być ściągane wraz z instancją. Ich styl prezentacji jest zakodowany na sztywno w kodzie, który jest rozumiany i interpretowany przez popularne przeglądarki. n Popularność WWW jest oparty na języku HTML, który jest standardem przemysłowym.

30 W. Juda, "XML - Nowa jakość przetwarzania informacji w Internecie" 29 Wady języka HTML n Brak semantycznych oznaczeń Oznaczania języka HTML budują jego strukturę w sensie formatowania i prezentacji tekstu. Jednak nie można oznaczać fragmentów tekstu, które mają określone znaczenie, z użyciem np. znaczników lub. n Ograniczony zbiór elementów Jest to cecha, która zwiększa przenośność HTML, jednak ogranicza autorów dokumentów i uniemożliwia implementowanie złożonych struktur informacji. n Brak możliwości strukturalizacji HTML nie nadaje się do przekazywania mocno ustrukturalizowanych informacji. Umożliwia ich prezentowanie, jednak struktura jest tracona. n Ścisłe powiązanie prezentacji, struktury i powiązań Oznaczenia w celu określenia prezentacji, budowania struktury oraz wiązania są razem przemieszone, bez wyraźnego rozróżnienia. Zmiana jednego powoduje zmianę drugiego.

31 W. Juda, "XML - Nowa jakość przetwarzania informacji w Internecie" 30 Przykład dokumentu HTML <HTML><HEAD> Annotations Annotations </HEAD><BODY> Introduction to the Annotated XML Specification Introduction to the Annotated XML Specification by Tim Bray by Tim Bray The other window contains the XML specification; this window the commentary on it.The content and appearance of the XML spec are exactly as in the official version; it has not been edited in any way to generate this presentation. The annotations are flagged as follows: The other window contains the XML specification; this window the commentary on it.The content and appearance of the XML spec are exactly as in the official version; it has not been edited in any way to generate this presentation. The annotations are flagged as follows: Historical or cultural commentary; some entertainment value. Historical or cultural commentary; some entertainment value. Technical explanations, including amplifications, corrections, Technical explanations, including amplifications, corrections,</dl></p> Copyright © 1998, Tim Bray. All rights reserved. Copyright © 1998, Tim Bray. All rights reserved. </BODY></HTML>

32 W. Juda, "XML - Nowa jakość przetwarzania informacji w Internecie" 31 Dokument HTML zinterpretowany przez przeglądarkę

33 W. Juda, "XML - Nowa jakość przetwarzania informacji w Internecie" 32 Język XML n „Widziałem tylko dwie możliwości: albo wielkie firmy informatyczne zaoferują firmowe, prawdopodobnie binarne formaty albo my zmusimy je do zaakceptowania pojedynczego formatu, prostego, czytelnego także dla człowieka. Jedynym standardowym rozwiązaniem, z którym mogliśmy to zrobić, był SGML.” Jon Bosak (Sun, członek W3C) n „Nikt w firmie Microsoft nie mógł zrozumieć, dlaczego chcę używać XML do celów, dla których HTML jest dobry [kodowanie dokumentów]. Ale dane? Tak. I opisywanie klientów i zamówień? Tak. Informacje finansowe? Tak. Sprzedawałem ideę XML ludziom od baz danych, rozumiejącym wartość ustrukturalizowanych danych.” Jean Paoli (Microsoft Corp., członek W3C) ( W marcu 1997 Microsoft oparł swój standard aktywnych kanałów, Channel Definition Format, na języku XML. ) XML

34 W. Juda, "XML - Nowa jakość przetwarzania informacji w Internecie" 33 Cele projektowe XML (fragment specyfikacji języka) 1.XML powinien mieć możliwość łatwego stosowania w Internecie Obecni użytkownicy WWW powinni móc łatwo korzystać z XML. Adaptacja nowego standardu powinno być jak najmniej bolesna. Powinny powstać przeglądarki, które będą tak samo szybko i efektywnie wyświetlać dokumentu XML jak dokumenty HTML. 2.XML powinien wspierać szeroką gamę aplikacji Różnego rodzaju aplikacje: autorskie, przeglądarki, analizatory zawartości powinny móc wykorzystywać XML, w podobnie niezależny od platform i efektywny sposób jak standard HTML. 3.XML powinien być kompatybilny z SGML Wiele organizacji ma duże repozytoria dokumentów w SGML. XML ma umożliwić „wyprowadzenie” tych bibliotek na zewnątrz. Standard ten ma rozwiązać problem wysyłania dokumentów SGML poprzez Internet.

35 W. Juda, "XML - Nowa jakość przetwarzania informacji w Internecie" 34 Cele projektowe XML c.d. 4.Powinno być łatwo tworzyć programy przetwarzające dokumenty XML Ilość oprogramowania decyduje o powodzeniu platform i standardów. Parser przetwarzający dokument XML może zostać napisany przez studenta informatyki 5.Liczba opcjonalnych możliwości powinna być minimalna, możliwie zerowa Jednym z powodów małej popularnośći SGML jest jego złożoność. Opcjonalne możliwości utrudniają naukę, implementowanie oraz przenośność. 6.Dokumenty XML powinny być czytelne dla człowieka i w miarę przejrzyste Użytkownik powinien móc czytać czysty plik XML i rozumieć go. Oznaczony tekst z samej swojej natury zwraca uwagę czytelnika na semantykę tekstu. 7.Projekt języka XML powinien być wykonany szybko Opracowywanie standardów trwa zwykle bardzo długo. XML powstał w wyniku aktualnego zapotrzebowania użytkowników.

36 W. Juda, "XML - Nowa jakość przetwarzania informacji w Internecie" 35 Cele projektowe XML c.d. 8.Projekt języka XML powinien być formalny oraz zwięzły XML jest wyrażony za pomocą EBNF, w sposób odpowiedni dla nowoczesnych technik i narzędzi kompilatorskich. 9.Dokumenty XML powinny być łatwe w tworzeniu Dokument XML jest prostym plikiem tekstowym, gdzie z użyciem podstawowych znaków: oraz / wprowadza się znaczniki oraz inne obiekty. Powinno być możliwe tworzenie dokumentów z poziomu prostych edytorów, języków programowania, skryptów powłoki itp. 10.Zwięzłość języka XML ma minimalną ważność Pewne cechy SGML zostały wprowadzone, aby zminimalizować wysiłek operatorów tekstów. Dotyczy to np. opcjonalności wystąpienia znacznika kończącego. XML odrzucił te cechy, ponieważ utrudniają rozumienie i tworzenie np. parserów.

37 W. Juda, "XML - Nowa jakość przetwarzania informacji w Internecie" 36 Jak jest zdefiniowany XML? XML został zdefiniowany przez wiele powiązanych specyfikacji. Prace nad językiem ciągle trwają, są opracowywane kolejne elementy, które mają uczynić z XML podstawową technologię wymiany informacji i danych w Internecie. Extensible Markup Language (XML) 1.0 Extensible Markup Language (XML) 1.0 Definiuje składnię języka. XML Linking Language (XLink) oraz XML Pointer Language (XPointer) XML Linking Language (XLink) oraz XML Pointer Language (XPointer) Definiują standardowe metody reprezentowania powiązań pomiędzy dokumentami (zasobami). Powiązania w XML są znacznie rozszerzone w stosunku do HTML. XPointer specyfikuje metody adresowania zasobu, Xlink wiązania dwu lub więcej zasobów. Extensible Style Language (XSL) Extensible Style Language (XSL) Definiuje standardowy język arkusza stylu (stylesheet) dla XML.

38 W. Juda, "XML - Nowa jakość przetwarzania informacji w Internecie" 37 Przykład prostego dokumentu XML Hello, world! Stop the planet, I want to get off! Deklaracja dokumentu XML Deklaracja dokumentu samodzielnego (bez zewnętrznego DTD)

39 W. Juda, "XML - Nowa jakość przetwarzania informacji w Internecie" 38 Składniki dokumentów XML Dokumenty XML składają się z zawartości oraz oznaczeń. Wyróżnia się następujące typy oznaczeń: n Element Element rozpoczyna się znacznikiem początkowym i kończy końcowym (SGML) n Atrybuty Atrybuty są parami nazwa-wartość, które występują wewnątrz znacznika początkowego (SGML) n Komentarz (SGML) (SGML) n Sekcje CDATA Pomiędzy początkiem sekcji, wszystkie znaki są przekazywane bezpośrednio do przetwarzającego systemu, bez interpretacji

40 W. Juda, "XML - Nowa jakość przetwarzania informacji w Internecie" 39 Składniki dokumentów XML c.d. Referencje do encji Referencje do encji W celu wstawienia specjalnych znaków np. < jako zawartość do dokumentu używa się referencji do encji; specjalna forma referencji w postaci np. ✏ umożliwia wstawienie znaku w kodzie UNICODE Instrukcje przetwarzające Instrukcje przetwarzające Są to informacje wprost przekazywane do aplikacji. Nie są częścią zawartości. Instrukcje przetwarzające mają postać:. Instrukcje rozpoczynające się słowem xml są zarezerwowane. Deklaracje typu dokumentu Deklaracje typu dokumentu Składnia jest podobna do tej z SGML. Deklaracje elementów wyglądają np.: Dowolny znak zawartości Pusta (brak) zawaartości, może też być ANY dla dowolnej zawartości

41 W. Juda, "XML - Nowa jakość przetwarzania informacji w Internecie" 40 Deklaracja listy atrybutów Lista atrybutów specyfikuje, które elementy mogą mieć atrybuty, jakie atrybuty mogą mieć, jakie wartości przyjmują atrybuty oraz jakie wartości są domyślne <!ATTLIST raport data CDATA #IMPLIED status (szkic|publikacja) ‘szkic’> Domyślna wartość: #REQUIRED (wartość jest wymagana dla każdego wystąpienia elementu w dokumencie) #IMPLIED (wartość nie jest wymagana, nie jest podana wartość domyślna) „wartość” (w deklaracji można podać dowolną wartość jako domyślną) #FIXED „wartość” (atrybut ma ustaloną z góry wartość, której nie trzeba już podawać w dokumencie) Typ atrybutu: CDATA (dowolny łańcuch) ID (nazwa, unikalna w całym dokumencie) IDREF lub IDREFS (wartość ID innego elementu w dokumencie, może to być lista takich wartości) ENTITY lub ENTITIES (nazwa encji lub lista nazw encji NMTOKEN lub NMTOKENS(pojedyncze słowo lub lista słów) lista wyliczeniowa nazw

42 W. Juda, "XML - Nowa jakość przetwarzania informacji w Internecie" 41 Deklaracje encji Wewnętrzne encje Wewnętrzne encje Wiążą nazwę z łańcuchem. Nazwa w momencie przetwarzanie tekstu będzie zamieniona na powiązany łańcuch np. < daje znak Wiążą nazwę z łańcuchem. Nazwa w momencie przetwarzanie tekstu będzie zamieniona na powiązany łańcuch np. < daje znak Zewnętrzne encje Zewnętrzne encje Wiążą nazwę z zawartością pliku np..: Encje parametryczne Encje parametryczne Mogą wystąpić wyłącznie w deklaracji typu dokumentu. Są identyfikowane przez umieszczenie znaku % przed nazwą w deklaracji. Encje parametryczne nie są stosowane w ciele dokumentu.

43 W. Juda, "XML - Nowa jakość przetwarzania informacji w Internecie" 42 Przykład dokumentu XML <!DOCTYPE titlepage SYSTEM "http://www.frisket.org/dtds/typo.dtd” [ ]> Hello, world! Munde Salutem Pusty element

44 W. Juda, "XML - Nowa jakość przetwarzania informacji w Internecie" 43 Kiedy jest potrzebny DTD? Środowiska autorskie Środowiska autorskie Większość systemów przetwarzania dokumentów wymaga odczytu i przetworzenia DTD w celu lepszego rozumienia i wspierania modelu zawartości dokumentu. Domyślne wartości atrybutów Domyślne wartości atrybutów Jeśli w dokumencie wykorzystuje się domyślne wartości atrybutów, to przynajmniej część deklaratywna dokumentu musi zostać odczytana i przeanalizowana lub też zewnętrzny DTD. „Białe” znaki ( whitespace ) „Białe” znaki ( whitespace ) Białe znaki, które znajdują się w element content (gdy model zawartości elementu nie zawiera znaków[czystej zawartości]) mogą być inaczej przetwarzane niż te, które są w mixed content. Specjalny atrybut xml:space może zostać użyty w celu przekazywania wszystkich białych znaków, lub tylko tych z mixed content, do parsera.

45 W. Juda, "XML - Nowa jakość przetwarzania informacji w Internecie" 44 Poprawność dokumentu XML Zostały wyspecyfikowane dwa typy poprawności dokumentów: Dokument dobrze zbudowany Dokument dobrze zbudowany Jest to taki dokument, którego konstrukcja jest zgodna ze składnią XML. Ważny dokument Ważny dokument Jest to taki dokument, który zawiera poprawną deklarację typu dokumentu i który został sprawdzony na zgodność z tym typem.

46 W. Juda, "XML - Nowa jakość przetwarzania informacji w Internecie" 45 Reprezentowanie baz danych JanKowalski1973-12-12500 <wydzial nazwa=„produkcja”>... <pracownik> <imie>Jan</imie> <nazwisko>Kowalski</nazwisko> <data_urodz>1973-12-1</data_urodz> <pensja>2500</pensja> </pracownik>...

47 W. Juda, "XML - Nowa jakość przetwarzania informacji w Internecie" 46 Kilka rodzajów nowych, internetowych aplikacji wykorzystujących XML Przeglądarka Repozytorium XML Serwer WWW Wymiana baz danych Rozproszone przetwarzanie danych Perspektywy i wybór danych przez użytkownika Internetowi agenci

48 W. Juda, "XML - Nowa jakość przetwarzania informacji w Internecie" 47 Przestrzenie nazw (namespaces) n Dzięki przestrzeniom nazw dokument może używać kilku zestawów znaczników jednocześnie np.można używać HTML do celów prezentacji oraz własny DTD do celów strukturyzowania informacji Cheaper by the Dozen 1568491379 Cheaper by the Dozen 1568491379

49 W. Juda, "XML - Nowa jakość przetwarzania informacji w Internecie" 48...<C.D.N./>... Niniejszą prezentację oparto na materiałach z witryn WWW: W3C Consortium, www.w3c.org/xml XML.COM, www.xml.com


Pobierz ppt "Wstęp do Extensible Markup Language (XML) Nowa jakość przetwarzania informacji w Internecie Luty 1999 Witold Juda Instytut Informatyki Uniwersytetu Wrocławskiego."

Podobne prezentacje


Reklamy Google