Przetwarzanie dokumentów XML i zaawansowane techniki WWW

Podobne dokumenty
WYKŁAD 1 METAJĘZYK SGML CZĘŚĆ 1

XML extensible Markup Language. Paweł Chodkiewicz

29. Poprawność składniowa i strukturalna dokumentu XML

LABORATORIUM 5 WSTĘP DO SIECI TELEINFORMATYCZNYCH WPROWADZENIE DO XML I XSLT

Rola języka XML narzędziem

XML DTD XML Schema CSS

Wprowadzenie do technologii XML

DTD - encje ogólne i parametryczne, przestrzenie nazw

Plan dzisiejszego wykładu. Narzędzia informatyczne w językoznawstwie. XML - Definicja. Zalety XML

UEK w Krakowie Janusz Stal & Grażyna Paliwoda-Pękosz

Podstawy języka XML. UEK w Krakowie Janusz Stal & Grażyna Paliwoda-Pękosz

Podstawy (X)HTML i CSS

Aplikacje internetowe laboratorium XML, DTD, XSL

Ćwiczenia laboratoryjne nr 8 Podstawy języka XML.

XML extensible Markup Language. część 1

XHTML - Extensible Hypertext Markup Language, czyli Rozszerzalny Hipertekstowy Język Oznaczania.

Wprowadzenie do arkuszy stylistycznych XSL i transformacji XSLT

Technologie zarządzania treścią

XML w sosie własnym. Standard XML wraz z DTD, przestrzenie nazw, projektowanie struktury dokumentów. Patryk Czarnik. Instytut Informatyki UW

XML i nowoczesne technologie zarządzania treścią

Extensible Markup Language (XML) Wrocław, Java - technologie zaawansowane

Prezentacja dokumentów XML

Prezentacja dokumentów XML

Środowisko XML (Extensible Markup Language).

Elementarz HTML i CSS

Narzędzia informatyczne w językoznawstwie

Kurs WWW Język XML, część I

XML w sosie własnym. Standard XML wraz z DTD, przestrzenie nazw, projektowanie struktury dokumentów. Patryk Czarnik. Instytut Informatyki UW

Dokument poprawnie sformułowany jest zgodny z ogólnymi zasadami składniowymi:

O stronach www, html itp..

mgr inż. Jacek Staniec Język XML

5.14 JSP - Przykład z obiektami sesji Podsumowanie Słownik Zadanie... 86

Wprowadzenie do XML. Joanna Jędrzejowicz. Instytut Informatyki

Źródła. cript/1.5/reference/ Ruby on Rails: AJAX: ssays/archives/

Podstawy JavaScript ćwiczenia

Dokument hipertekstowy

LAB 7. XML EXtensible Markup Language - Rozszerzalny Język Znaczników XSD XML Schema Definition Definicja Schematu XML

Plan prezentacji DTD. Wiązanie DTD z dokumentem XML Deklaracja typu dokumentu. Co to jest DTD. Wstęp. Przedmiot: XML i jego zastosowania

Kazienko P.: Rodzina języków XML. Software nr 6 (90) czerwiec 2002, s Rodzina języków XML. Przemysław Kazienko

2 Podstawy tworzenia stron internetowych

Jak wygląda XML? Definiowanie typów dokumentów Część 1. DTD, XML Schema. Struktura logiczna dokumentu XML. Składnia XML. Encje predefiniowane.

Prezentacja dokumentów XML

Programowanie internetowe

c TP: anything: 13 listopada 2004 roku 1

UEK w Krakowie Janusz Stal & Grażyna Paliwoda-Pękosz

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

Jak wygląda XML? Definiowanie typów dokumentów. Struktura logiczna dokumentu XML. Podstawy składni XML. Definiowanie języków. Poprawność dokumentów

HTML DOM, XHTML cel, charakterystyka

Semistrukturalne bazy danych Wykład dla studentów matematyki

Aplikacje internetowe laboratorium XML, DTD, XML Schema, XSL

Jak wygląda XML? Definiowanie typów dokumentów Część 1. DTD, XML Schema. Struktura logiczna dokumentu XML. Składnia XML. Encje predefiniowane.

Szczegółowy opis języka HTML5 znajdziemy w specyfikacji, która jest dostępna pod adresem

Podstawy XML-a. Zaawansowane techniki programowania

I.Wojnicki, Tech.Inter.

HTML nie opisuje układu strony!!!

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

Przykładowy dokument XML

Historia kodowania i format plików XML. Jolanta Bachan

Zaawansowana Pracownia Komputerowa - Ćwiczenia. Krzysztof Miernik

Model semistrukturalny

Aplikacje internetowe. Interfejs użytkownika

Po zakończeniu rozważań na temat World Wide Web, poznaniu zasad organizacji witryn WWW, przeczytaniu kilkudziesięciu stron i poznaniu wielu nowych

XPath XML Path Language. XPath. XSLT część 1. XPath data model. Wyrażenia XPath. Location paths. Osie (axes)

Aplikacje WWW - laboratorium

Prezentacja i transformacja

Zasady Nazewnictwa. Dokumentów XML Strona 1 z 9

XML i nowoczesne technologie zarządzania treścią 2007/08

I. Formatowanie tekstu i wygląd strony

ABC języka HTML i XHTML / Maria Sokół. wyd. 2. Gliwice, cop Spis treści

KARTA KURSU. Przetwarzanie dokumentów XML i zaawansowane techniki WWW

Egzamin z przedmiotu Projektowanie języków XML imię i nazwisko. Zadanie Suma Punkty Max Punkty

Rok akademicki: 2013/2014 Kod: ZZIP IN-s Punkty ECTS: 2. Kierunek: Zarządzanie i Inżynieria Produkcji Specjalność: Informatyka w zarządzaniu

XML extensible Markup Language 3

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

XML Schema. Bartłomiej Świercz. Łódź, 19 listopada 2005 roku. Katedra Mikroelektroniki i Technik Informatycznych. Bartłomiej Świercz XML Schema

Stwórz dokument XML zawierający poniższe informacje. Wykorzystaj atrybuty.

Przetwarzanie dokumentów XML za pomocą XSLT ( r.)

Podstawy elektronicznej wymiany danych. UEK w Krakowie Janusz Stal & Grażyna Paliwoda-Pękosz

PROGRAMOWANIE. WNPiD UAM, Programowanie, inż. Piotr Jabłoński

Wprowadzenie do technologii XML

Przykładowy dokument XML

rk HTML 4 a 5 różnice

Dokumenty SEDU składają się z dwóch części: Opisu sprawy Formularza elektronicznego

Jak wygląda XML? Definiowanie typów dokumentów Część 1. DTD. Struktura logiczna dokumentu XML. Podstawy składni XML. Definiowanie języków

WYKŁAD 2 DTD DOCUMENT TYPE DEFINITION CZĘŚĆ 1

GML w praktyce geodezyjnej

XML materiały dydaktyczne - Kurs Podstawowy XSL - wprowadzenie. XSL warstwa przekształcania (XSLT) oraz prezentacji informacji (XSL FO).

XML i nowoczesne metody zarządzania treścią

Zawartość specyfikacji:

Słowem wstępu. Część rodziny języków XSL. Standard: W3C XSLT razem XPath 1.0 XSLT Trwają prace nad XSLT 3.0

Złożone komponenty JSF wg

E.14.1 Tworzenie stron internetowych / Krzysztof T. Czarkowski, Ilona Nowosad. Warszawa, Spis treści

Języki programowania wysokiego poziomu WWW

BAZY DANYCH. Dr hab. Sławomir Zadrożny, prof. PR

Liczba godzin. N (nauczyciel) studia niestacjonarne

Przetwarzanie dokumentów XML i zaawansowane techniki WWW Wykład 02

MINISTERSTWO SPRAW WEWNĘTRZNYCH I ADMINISTRACJI DEPARTAMENT INFORMATYZACJI

Aplikacje WWW - laboratorium

Kurs HTML 4.01 TI 312[01]

Transkrypt:

Plan Przetwarzanie dokumentów XML i zaawansowane techniki WWW T. Romańczukiewicz FAIS UJ 2009/2010

Plan Plan 1 Wstęp 2 XML - wstęp 3 Specyfikacja XML

Plan Intro XML - wstęp Specyfikacja XML Sprawy organizacyjne 1 Wstęp Sprawy organizacyjne 2 XML - wstęp 3 Specyfikacja XML

Intro XML - wstęp Specyfikacja XML Sprawy organizacyjne Sprawy organizacyjne Warunki zaliczenia: zaliczenie z ćwiczeń Konsultacje: poniedziałki godz. 15.00-16.00 (Reymonta 4/422) + e-mail trom@th.if.uj.edu.pl Literatura: http://th.if.uj.edu.pl/~trom lub prunus.if.uj.edu.pl - materiały do zajęć w katalogu Upload można wyrażać anonimowo swoje (najlepiej konstruktywne) opinie http://www.w3schools.com/xml/ Steven Holzner, XML. Vademecum profesjonalisty Elliotte Rusty Harold, W.Scott Means, XML. Almanach Brett McLaughlin, Java i XML

Plan Intro XML - wstęp Specyfikacja XML Przykłady Budowa pliku xml Prezentacja danych Walidacja dokumen 1 Wstęp 2 XML - wstęp Przykłady Budowa pliku xml Prezentacja danych Walidacja dokumentów XML Parsery XML 3 Specyfikacja XML

Intro XML - wstęp Specyfikacja XML Przykłady Budowa pliku xml Prezentacja danych Walidacja dokumen Plan semetralny XML wstęp, specyfikacja zawężanie dokumentów (DTD i schema) przeszukiwanie dokumentów (XPath, XQuery, XLink) szablony (XSLT) Przetwarzanie DOM SAX JAXB Tworzenie stron AJAX JSP Servlety Uzupełnienie (HTML5, jquery, JASON)

Intro XML - wstęp Specyfikacja XML Przykłady Budowa pliku xml Prezentacja danych Walidacja dokumen Definicja i własności XML (ang:extensible Markup Language) Rozszerzalny język znaczników (łatwość dostosowania do własnych potrzeb) Zaprojektowany by przenosić dane, a nie format Z założenia to co Java wniosła do przenośności kodu, XML ma wnieść w przenośność danych. Znaczniki nie sa predefiniowane. Trzeba je samemu wymyślać Jest samoopisywalny XML jest standardem rekomendowanym przez organizację W3C. Java + XML = przenośny kod + przenośne dane

Intro XML - wstęp Specyfikacja XML Przykłady Budowa pliku xml Prezentacja danych Walidacja dokumen Inne języki znaczników Język znaczników - format dokumentu, który obok tekstu zawiera także dodatkowe informacje, które go opisuja. Te dodatkowe informacje, na przykład na temat wygladu czy znaczeniu fragmentu dokumentu, sa wyrażane poprzez wplecione w tekst znaczniki. Znaczniki proceduralne (np. format tekstu) \begin{center}text wycentrowany\end{center} Znaczniki opisowe <tytul>tytul dokumentu</tytul> Inne języki znacznikowe: HTML (strony WWW) T E X, LAT E X(składanie textu, w tym niniejszej prezenacji) RTF (Rich Text Format) bardzo nieczytelny format M$ SVG (Scalable Vector Graphics) Scribe, GML i SGML (standardowy uogólniony język znaczników)

Intro XML - wstęp Specyfikacja XML Przykłady Budowa pliku xml Prezentacja danych Walidacja dokumen Przykład - fragment pliku L A T E X a. LAT E X służy do składania złożonych tekstów, również matematycznych itp. Listing 1: example1.tex 1 \documentclass[a4paper,10pt]{article} 2 3 \begin{document} 4 \section{some eqauation} 5 \begin{equation} 6 E=\frac{mc^2}{\sqrt{1-\frac{v^2}{c^2}}} 7 \end{equation} 8 \end{document}

Intro XML - wstęp Specyfikacja XML Przykłady Budowa pliku xml Prezentacja danych Walidacja dokumen HTML - najpopularniejszy język znacznikowy Listing 2: example1.html 1 <html> 2 <body> 3 4 <p><b>this text is bold</b></p> 5 <p><big>this text is big</big></p> 6 <p><i>this text is italic</i></p> 7 <p><code>this is computer output</code></p> 8 <p>this is<sub> subscript</sub> and <sup>superscript</sup></p> 9 10 </body> 11 </html>

Intro XML - wstęp Specyfikacja XML Przykłady Budowa pliku xml Prezentacja danych Walidacja dokumen Pierwszy plik XML Listing 3: xml1.xml 1 <?xml version="1.0" encoding="utf-8"?> 2 3 <CATALOG> 4 <Artist> 5 <Artist-Name> Behemoth </Artist-Name> 6 <Album id="100"> 7 <Title> Demigod </Title> 8 <Year> 2004 </Year> 9 </Album> 10 11 <Album id="101"> 12 <Title> The Apostasy </Title> 13 <Year> 2007 </Year> 14 </Album> 15 </Artist> 16 17 <Artist> 18 <Artist-Name> Black Sabbath </Artist-Name> 19 <Album id="102"> 20 <Title> Dehumanizer </Title> 21 <Year> 1992 </Year> 22 </Album> 23 </Artist> 24 </CATALOG>

Intro XML - wstęp Specyfikacja XML Przykłady Budowa pliku xml Prezentacja danych Walidacja dokumen Struktura najprostszego pliku XML Nagłówek: <?xml version="1.0"encoding="utf-8"?> Jest to instrukcja przetwarzania, mówiaca z jakiej wersji XML i z jakiej strony kodowej korzystamy. Każda instrukcja przetwarzania zaczyna się <? i kończy?> Elementy: znacznik poczatkowy otwierajacy element <Title>; pomiędzy znakami < > wpisujemy dowolna nazwę zaczynajac a się od litery lub podkreślenia i zawierajac a litery, cyfry, podkreślenia, kropki i myślniki; znaczniki rozróżniaja wielkie i małe litery; moga również zawierać atrybuty (raczej niezalecane) można użyć atrybutów do dodatkowego opisania danych. treść - opcjonalnie, moga znajdować się inne, zagnieżdżone elementy znacznik końcowy </Title> cały dokument poza instrukcjami przetwarzania musi być zamknięty w jednym, tzw. głównym elemencie. Dokumenty XML pozwalaja nie tylko przenosić same dane, ale również określać strukturę tych danych - maja strukturę drzewa.

XML a HTML Intro XML - wstęp Specyfikacja XML Przykłady Budowa pliku xml Prezentacja danych Walidacja dokumen W HTML znaczniki oznaczały format danego elementu. Można było dodatkowo określić atrybuty lub wyodrębnić styl i zapisać go w pliku CSS. Jeśli pojawił się znacznik spoza zbioru zdefiowanego w danej wersji HTML, znacznik taki był ignorowany. Przegladaj ac nasz plik w przegladarce (np. Opera) plik XML wypisywany jest wprost, z podświetleniem składni. Jeżeli nie dodamy arkuszu stylów, pojawi się informacja: This document had no style information. W przypadku błędu w pliku XML Opera pokaże miejsce z błędem. Ćwiczenie: sprawdzić jak wyglada odczyt czystych plików XML w różnych przegladarkach.

Intro XML - wstęp Specyfikacja XML Przykłady Budowa pliku xml Prezentacja danych Walidacja dokumen Przegladanie pliku XML bez zdefiniowanego stylu

Arkusze CSS Intro XML - wstęp Specyfikacja XML Przykłady Budowa pliku xml Prezentacja danych Walidacja dokumen W pliku XML dodajemy kolejna instrukcję przetwarzania <?xml-stylesheet type="text/css"href="katalog.css"?> gdzie katalog.css jest plikiem zawierajacym arkusz stylów zdefiniowanym dla poszczególnych znaczników: Listing 4: katalog.css 1 CATALOG { 2 display: block; 3 background-color: #000000; 4 color: #FFFFFF; 5 } 6 7 Artist { 8 display: block; 9 background-color: #505050; 10 width:500pt; 11 padding:25pt; 12 margin:10pt; 13 border-style:solid; 14 border-width:1px; 15 } 16. 17. 18.

Intro XML - wstęp Specyfikacja XML Przykłady Budowa pliku xml Prezentacja danych Walidacja dokumen Przegladanie pliku XML ze zdefiniowanym stylem

Intro XML - wstęp Specyfikacja XML Przykłady Budowa pliku xml Prezentacja danych Walidacja dokumen Ważne jest jednak, że XML nie jest zastępstwem do HTML, a jedynie jego uzupełnieniem. XML ma za zadanie przenosić dane, a HTML format. Z połaczenia XML + HTML powstał język XHTML. Zamiast CSS poleca się używanie XSL, który ma znacznie większe możliwości, a do tego XSL sam jest plikiem XML HTML dopuszcza wiele błędów, czy niedociagnięć składniowych. Szacuje się, że co najmniej połowa kodu przegladarek służy do obsługi błędnie zapisanego HTML. Dane w XML sa samoopisujace się, tzn. można wprowadzać nazwy określajace zawartość danych elementów. Przegladarka XML ma za zadanie sprawdzić czy dokument nie zawiera błędów, jeśli takie znajdzie ma za zadanie to zgłosić i przerwać przetwarzanie dokumentu. Przegladarki sprawdzaja czy dokument jest poprawnie sformułowany a niekiedy następnie waliduja dokument.

Intro XML - wstęp Specyfikacja XML Przykłady Budowa pliku xml Prezentacja danych Walidacja dokumen Dokument musi spełniać wymagania składniowe (dokładny opis na potem) Elementy musza być poprawnie zagnieżdżone, a każdy element musi być poprawnie zamknięty. XML niepoprawnie sformułowany Listing 5: bledny.xml 1 <?xml version="1.0" encoding="utf-8"?> 2 <?xml-stylesheet type="text/css" href="katalog.css"?> 3 4 <CATALOG> 5 <Artist> 6 <Artist-Name> Behemoth </Artist-Name> 7 <Album id="100"> 8 <Title> Demigod </Title> 9 <Year> 2004 </Year> 10 11 <Album id="101"> 12 <Title> The Apostasy </Title> 13 <Year> 2007 </Yaer> 14 </Album> 15 </Artist> 16 </Catalog>

Intro XML - wstęp Specyfikacja XML Przykłady Budowa pliku xml Prezentacja danych Walidacja dokumen Walidacja dokumentów XML Dokument XML można walidować jeśli zwiazana jest z nim definicja typu dokumentu (DTD) i kiedy dokument jest z nia zgodny Listing 6: xml1.xml 1 <?xml version="1.0" encoding="utf-8"?> 2 <?xml-stylesheet type="text/css" href="katalog.css"?> 3 <!DOCTYPE CATALOG [ 4 <!ELEMENT CATALOG (Artist+) > 5 <!ELEMENT Artist (Artist-Name, Album+) > 6 <!ELEMENT Artist-Name (#PCDATA) > 7 <!ELEMENT Album (Title, Year) > 8 <!ELEMENT Title (#PCDATA) > 9 <!ELEMENT Year (#PCDATA) > 10 <!ATTLIST Album id CDATA "100" > 11 ]> 12 13 <CATALOG> 14 <Artist> 15 <Artist-Name> Behemoth </Artist-Name> 16 <Album id="100"> 17 <Title> Demigod </Title> 18 <Year> 2004 </Year> 19 </Album> 20 </Artist> 21 </CATALOG>

Intro XML - wstęp Specyfikacja XML Przykłady Budowa pliku xml Prezentacja danych Walidacja dokumen Definiujac różne pliki DTD można tworzyć osobne języki na bazie XML. Języki takie służace bardziej specjalistycznym celom nazywamy aplikacjami XML SVG Scalable Vector Graphics MathML CML Chemical Markup Language SMIL Synchronized Multimedia Integration Language XHTML XBRL extensible Business Reporting Language

Intro XML - wstęp Specyfikacja XML Przykłady Budowa pliku xml Prezentacja danych Walidacja dokumen Użycie JavaScript do czytania zawartości XML Listing 7: Readxml.html 1 <html> 2 <body> 3 <p><b>artist:</b> <span id="artist"></span><br /> 4 <b>album:</b> <span id="album"></span><br /> 5 6 <script type="text/javascript"> 7 xhttp=new XMLHttpRequest(); 8 xhttp.open("get","xml1.xml",false); 9 xhttp.send(""); 10 xmldoc=xhttp.responsexml; 11 12 13 document.getelementbyid("artist").innerhtml=xmldoc.getelementsbytagname("artist- 14 Name")[1].childNodes[0].nodeValue; 15 16 document.getelementbyid("album").innerhtml=xmldoc.getelementsbytagname("title")[ 17 2].childNodes[0].nodeValue; 18 19 </script> 20 </body> 21 </html>

Plan Intro XML - wstęp Specyfikacja XML 1 Wstęp 2 XML - wstęp 3 Specyfikacja XML

Intro XML - wstęp Specyfikacja XML Rekomendacja W3C Poprawnie sformułowany XML Dokument tekstowy jest poprawnie sformułowany jeśli: Jako całość spełnia definicję dokumentu etykietowego Zgodny jest z regułami poprawności sformułowania podanymi w specyfikacji www.w3c.org/tr/rec-xml/ Każda parsowana encja (część), do której w dokumencie jest odwołanie bezpośrednie lub pośrednie jest poprawnie sformułowana. Poprawnie sformułowany dokument XML może być następnie walidowany. Walidacja - sprawdzenie zgodności dokumentu z definicja typu dokumentu (DTD) lub schematem Encja (ang. entity) - część dokumentu, która może może zawierać tekst albo dane binarne. Każdy plik z kilkoma elementami jest encja, choć nie musi być poprawnie sformułowanym dokumentem XML.

Prolog Intro XML - wstęp Specyfikacja XML Prolog znajduje się na poczatku dokumentu XML. Do poprawności sformułowanie nie jest on konieczny, ale jest zalecany. Prolog zawiera deklarację XML: <?xml version="1.0"encoding="utf-8"standalone="yes"?> uwaga: starsze specyfikacje dopuszczały możliwość wielkich liter XML teraz tak nie jest; atrybut version jest obowiazkowy! instrukcje przetwarzania <?xml-stylesheet type="text/css"href="katalog.css"?> nie wchodza w skład specyfikacji XML deklaracje typu dokumentu (DTD) 1 <!DOCTYPE CATALOG [ 2 <!ELEMENT CATALOG (Artist+) > 3... 4 <!ATTLIST Album id CDATA "100" > ]>

Intro XML - wstęp Specyfikacja XML Prolog cd. ale nie tylko komentarze, prawie takie same jak w przypadku HTML: <! komentarz > komentarze nie moga pojawiać się przed deklaracja XML wewnatrz znaczników komentarz nie może zawierać znaku -- ani innego komentarza białe znaki (spacja, tablatura, znak nowego wiersza, znak powrotu karetki) uwaga: zalecane jest kończenie wiersza zgodnie z konwencja UNIX; w elementach białe znaki sa traktowane jak pojedyncze spacje w elemencie można użyć atrybutu xml:space="preserve" lub xml:space="deafult"

Intro XML - wstęp Specyfikacja XML Znaczniki i elementy Znaczniki w XML zaczynaja się znakami < i kończa >. Określaja one strukturę dokumentu. Cała reszta to dane znakowe. Uwaga: znaki (tzw. encje znakowe) < i > reprezentuja < i > i w trakcie przetwarzania moga one zostać zinterpretowane jako znaczniki, np. podczas odwołania do encji Znacznik poczatkowy zaczyna się < i kończa > a znacznik końcowy < i kończa />. Wyjatkiem sa tzw. elementy puste <Powitanie tekst="hello"/>. Taki sposób pisania jest też dopuszczalny w HTML. Nazwy elementów musza zaczynać się litera lub podkreśleniem i zawierać litery, cyfry, podkreślenia, myślniki, kropki i średniki, nie moga pojawić się żadne białe znaki. Należy unikać stosowania nazw z dwukropkami. Ważnym elementem jest element główny, który musi pojawić się w każdym dobrze sformułowanym dokumencie XML dokładnie raz i zawiera wszystkie pozostałe elementy.

Atrybuty Intro XML - wstęp Specyfikacja XML Atrybuty pary nazw i wartości umożliwiajace wstawianie dodatkowych informacji w znacznikach poczatkowych i elementu pustego. <Album id="101"> Atrybuty można następnie odczytywać w aplikacjach. Nie powinno się nadużywać atrybutów, gdyż nie określaja one struktury dokumentu i ich nazwy nie moga się powtarzać. Każdy atrybut można zastapić osobnym elementem np: 1 <Album> 2 <id> 101 </id> 3 </Album> i tego typu zapis choć dłuższy jest bardziej czytelny. Użycie atrybutów jest kwestia gustu. Nazwy atrybutów podlegaja tym samym prawom co nazwy znaczników. Wartości atrybutów to zwykły tekst umieszczony w cudzysłowach. W celu uzyskania znaków specjalnych należy używać konwencji typu &apos; W XML każdy atrybut musi mieć wartość. Przydatny jest atrybut \xml:lang określajacy język <znacznik xml:lang="pl"> lub <znacznik xml:lang="en-us">

Intro XML - wstęp Specyfikacja XML Sekcja CDATA Czasami trzeba wpisać duży blok zawierajacy znaki, które nie powinny być interpretowane. Np. chcemy wkleić kod innego pliku XML lub HTML, ale jako tekst, a nie jako dokument. Można zamieniać wszystkie znaki specjalne encjami znakowymi. Nie jest to jednak wygodne rozwiazanie Listing 8: cdata.xml 1 <?xml version="1.0" encoding="utf-8"?> 2 <caly_dokument> 3 <![CDATA 4 <CATALOG> 5 6 <Artist> 7 <Artist-Name> Behemoth </Artist-Name> 8 <Album id="100"> 9 <Title> Demigod </Title> 10 <Year> 2004 </Year> 11 </Album> 12 </Artist> 13 </CATALOG> ]]> 14 </caly_dokument>

Intro XML - wstęp Specyfikacja XML Przestrzenie nazw Nazwy znaczników w xml możemy tworzyć dowolnie. Jednak przy dużych dokumentach może pojawić się problem: chęć użycia tych samych nazw. Gorzej jeśli chcemy skorzystać z dwóch różnych dokumentów, które posiadaja te same nazwy znaczników (np. gdy chcemy wpisać równanie MathML w kodzie XHTML). Przestrzenie nazw pozwalaja uniknać konfliktów pomiędzy poszczególnymi zbiorami znaczników. Korzysta się z nich poprzedzajac nazwę znacznika badź atrybutu nazwa przestrzeni nazw z dwukropkiem Listing 9: namespace.xml 1 <root> 2 <h:table xmlns:h="http://www.w3.org/tr/html4/"> 3 <h:tr> 4 <h:td>apples</h:td> 5 <h:td>bananas</h:td> 6 </h:tr> 7 </h:table> 8 9 <f:table xmlns:f="http://www.w3schools.com/furniture"> 10 <f:name>african Coffee Table</f:name> 11 <f:width>80</f:width> 12 <f:length>120</f:length> 13 </f:table> 14 </root>

Intro XML - wstęp Specyfikacja XML W powyższym przykładzie <table> mogłoby oznaczać zarówno stół jak i tabelkę. Wprowadzenie przestrzeni nazw umożliwiło rozdzielenie tych znaczników. Definiujemy przestrzenie nazw przypisujac atrybutowi xmlns:przedrostek niepowtarzalny identyfikator. Dobra praktyka (choć nie wymogiem) jest podawanie adresu URL lub URI, pod którym znajduje się DTD definiowanej przestrzeni nazw. Należy unikać używania dwukropków. Zarezerwowane sa dwie przestrzenie nazw xml i xmlns. Jeśli dany element ma zadeklarowana przestrzeń nazw to również elementy zagnieżdżone ja dziedzicza. W powyższym przykładzie można było umieścić deklaracje wewnatrz elementu głównego: 1 <root 2 xmlns:h="http://www.w3.org/tr/html4/" 3 xmlns:f="http://www.w3schools.com/furniture">

Intro XML - wstęp Specyfikacja XML Podsumowanie Podsumowanie XML - rozszerzalny język znaczników, podobny do HTML. Nie ma zdefiniowanych znaczników, jest samoopisywalny. Ma przechowywać dane i ich strukturę, a nie sposób prezentacji danych. Istnieje możliwość przedstawienia danych w niektórych przegladarkach używajac CSS Jest przenośny i łatwo przetwarzalny i człowieko-czytelny. Oprócz zwykłych znaczników sa instrukcje przetwarzania, sekcje CDATA. Dokumenty można łaczyć, ale przydaja się przestrzenie nazw pozwalajace rozróżnić elementy z danych dokumentów.