XML
Z Wikipedii
| Ten artykuł jest częścią serii World Wide Web |
|
Struktura stron WWW Generowanie dynamicznych stron WWW ASP, ASP.NET, JSP, PHP, Profile MSP Po stronie użytkownika CSS, JavaScript, AJAX, Kolory w Internecie Przesyłanie danych HTTP(S), HTTP referrer, Serwer WWW, VoiceXML, XMLHttpRequest Pojęcia Architektura informacji, Użyteczność (web-usability), Dostępność (WWW) |
XML (ang. Extensible Markup Language, w wolnym tłumaczeniu Rozszerzalny Język Znaczników) to uniwersalny język formalny przeznaczony do reprezentowania różnych danych w ustrukturalizowany sposób. XML jest niezależny od platformy, co umożliwia łatwą wymianę dokumentów pomiędzy różnymi systemami i znacząco przyczyniło się do popularności tego języka w dobie Internetu. XML jest podzbiorem języka SGML, tj. każdy dokument XML jest też dokumentem SGML. XML jest rekomendowany oraz specyfikowany przez organizację W3C.
Spis treści |
[edytuj] Poprawność dokumentu
Mówimy o dokumencie, że jest poprawny składniowo (ang. well-formed), jeżeli jest zgodny z regułami składni XML. Reguły te obejmują m.in. konieczność domykania wszystkich znaczników. Dokument niepoprawny składniowo nie może być przetworzony przez parser XML.
Mówimy o dokumencie, że jest poprawny strukturalnie (ang. valid), jeżeli jest zgodny z definicją dokumentu, tzn. dodatkowymi regułami określonymi przez użytkownika. Do precyzowania tych reguł służą specjalne języki. Najpopularniejszymi są DTD, XML Schema oraz RELAX NG.
[edytuj] XML wersja 1.1
Równocześnie z czwartą odsłoną wersji 1.0 W3C opublikowało drugą odsłonę wersji 1.1. Wprowadza ona zmiany w zestawie dopuszczanych znaków, co ma związek z modyfikacjami standardu Unicode przeprowadzanymi w ostatnich latach.
Korzyści ze zmian wprowadzonych w nowej wersji są jednak zazwyczaj znikome w porównaniu ze stratą, jaką jest brak zgodności z wersją 1.0. Samo W3C nie traktuje tej wersji jako następcy dla 1.0, raczej jako jego odmianę do bardzo specyficznych zastosowań. Wciąż zalecane jest korzystanie z wersji 1.0 wszędzie, gdzie to możliwe.
Obie wersje wciąż są wspierane i rozwijane przez W3C, a kolejne ich edycje, jak dotąd, pojawiają się w tym samym czasie.
[edytuj] Przykładowy dokument XML
<?xml version="1.0" encoding="UTF-8"?> <ksiazka-telefoniczna kategoria="bohaterowie książek"> <!-- komentarz --> <osoba charakter="dobry"> <imie>Ambroży</imie> <nazwisko>Kleks</nazwisko> <telefon>123-456-789</telefon> </osoba> <osoba charakter="zły"> <imie>Alojzy</imie> <nazwisko>Bąbel</nazwisko> <telefon/> </osoba> </ksiazka-telefoniczna>
Korzeniem dokumentu jest element o nazwie książka-telefoniczna. Ma on przypisany jeden atrybut o nazwie kategoria i wartości bohaterowie książek. Korzeń jest rodzicem dwóch innych elementów, oba mają tę samą nazwę osoba i przypisany atrybut o nazwie charakter. Każdy z elementów o nazwie osoba jest rodzicem dla trzech innych elementów o nazwach imię, nazwisko i telefon, które zawierają konkretne dane w formie węzłów tekstowych (tekst pomiędzy odpowiednimi znacznikami otwierającym i zamykającym). Element o nazwie telefon w dwunastym wierszu dokumentu jest pusty (nie ma żadnych potomków), a znacznik otwierający jest jednocześnie znacznikiem zamykającym. Zapis <telefon/> jest równoważny zapisowi <telefon></telefon>. W trzecim wierszu dokumentu znajduje się komentarz.
Dokument rozpoczyna się instrukcją sterującą, która zawiera informacje o wersji standardu XML, z jakim jest zgodny, oraz o sposobie kodowania znaków. Wszystkie te informacje są opcjonalne, można pomijać dowolne z nich, a nawet całą instrukcję sterującą. W razie braku którejś z danych przyjmuje się wartość domyślną, jakimi są właśnie wersja 1.0 oraz standard kodowania UTF-8.
[edytuj] XML w oknie przeglądarki internetowej
Dokument XML nie precyzuje, jak należy wyświetlać przechowywane w nim dane i większość przeglądarek internetowych, przy próbie wyświetlenia go w swym oknie, potraktuje go jak zwykły tekst. Istnieją jednak łatwe sposoby na prezentowanie dokumentów XML na stronach internetowych w przyjazny dla użytkownika sposób.
Możliwe jest wyrenderowanie dokumentu przy użyciu stylów CSS. W tym celu należy umieścić na początku dokumentu odpowiednią instrukcję sterującą, na przykład:
<?xml-stylesheet type="text/css" href="myStyleSheet.css"?>
Transformacje XSL umożliwiają konwersję danych do innego formatu, na przykład HTML. Arkusz stylów jest zbiorem reguł określających sposób postępowania wobec każdego węzła dokumentu podczas transformacji. Większość współczesnych przeglądarek wyposażona jest w transformator XSL i wystarczy dodać na początku przetwarzanego dokumentu XML instrukcję sterującą podobną do poniższej:
<?xml-stylesheet type="text/xsl" href="myTransform.xslt"?>
XHTML jest językiem HTML przepisanym do postaci XML. Znaczna część przeglądarek potrafi takie strony wyświetlić podobnie do klasycznych stron HTML, Internet Explorer niestety potraktuje je jako zwykłe pliki XML.
[edytuj] Popularne języki oparte na XML
- OpenDocument - OASIS Open Document Format for Office Applications, dokumenty biurowe
- SMIL - Synchronized Multimedia Integration Language, opis prezentacji multimedialnych
- SVG - Scalable Vector Graphics, grafika wektorowa
- MathML - Mathematical Markup Language, opis formuł matematycznych
- XAML - Extensible Application Markup Language, GUI w .NET począwszy od wersji 3.0
- XHTML - Extensible HyperText Markup Language, strony WWW
- XSL - Extensible Stylesheet Language, przekształcanie XML-i
- XSLT - XSL Transformations, Przekształcenia Rozszerzalnego Języka Arkuszy Stylów
- XUL - XML-based User-interface Language, GUI
[edytuj] Zobacz też
[edytuj] Linki zewnętrzne
- Strona domowa XML (en) (polskie tłumaczenie)
- Specyfikacja XML 1.0 (en)
- Specyfikacja XML 1.1 (en)
- XML Document Authoring Tools (en)
- xml-dev Mailing List Archive (en)
- Wprowadzenie do XML (pl)
- XeML.net XML Tutorial (en)
Rdzenne technologie XML-a: Namespaces in XML • XML Inclusions (XInclude) • XML Information Set • xml:id
XML Events • XML Fragment Interchange • XML Base • Associating Style Sheets with XML documents
Języki stylistyczne: Cascading Style Sheets (CSS) • Document Style Semantics and Specification Language (DSSSL), Rodzina Extensible Stylesheet Language:
Extensible Stylesheet Language (XSL) • XSL Formatting Objects (XSL-FO) • XSL Transformations (XSLT) • XML Path Language (XPath)
Języki z rodziny XML Linking: XML Linking Language (XLink) • XML Base • XML Pointer Language (XPointer)
Języki zapytań dokumentów XML: XML Path Language (XPath) • XML Query Language (XQuery) • XML Syntax for XQuery (XQueryX)
Rodzaje schematów dokumentów XML: Document Type Definition (DTD) • XML Schema • REgular LAnguage for XML Next Generation (RELAX NG)
| Władze Katowic nie chcą u siebie Czeczenów |
300 Czeczenów zostanie rozwiezionych po Polsce, w tym 50 ciężarnych kobiet i 125 dzieci. Władze Katowic chcą zlikwidować ośrodek dla cudzoziemców |
| Bibliotekarze: załóżcie nam internet! |
2,5 tys. wiejskich bibliotek nie ma dostępu do internetu. Bez tego nie da się zmodernizować placówek - apelują do rządu bibliotekarze. |
| Ekspres Solidarności, odjazd! |
Specjalnym pociągiem z Krakowa do Gdańska pojedzie jutro 200 osób z 44 krajów. Po drodze spotkają m.in. Władysława Bartoszewskiego i zwiedzą Muzeum Powstania Warszawskiego. |
| Mrówki zablokowały granicę Polski z Ukrainą |
Gwałtowne protesty tzw. mrówek na przejściu granicznym w Medyce to reakcja na zmiany przepisów celnych |
| Wojna PiS i przystawek o media publiczne |
Krzysztof Czabański za Andrzeja Urbańskiego? O takim wariancie huczy w telewizji. |
| „Testament życia” to nie eutanazja |
Z etycznego punktu widzenia nie ma różnicy pomiędzy niepodłączeniem do aparatury, jeśli pacjent się temu sprzeciwia, a odłączeniem aparatury na jego życzenie - mówi prof. Krzysztof Marczewski. |
| Platforma wychodzi do ludzi bronić rządu |
Partia zobowiązała działaczy do organizacji spotkań z mieszkańcami w każdym z 379 powiatów w Polsce. Mają przekonywać, że reformy blokuje prezydent i PiS |
| Cała polska buduje schetynówki |
2 mld 220 mln zł - tyle chcą gminy i powiaty w przyszłym roku na tzw. schetynówki, czyli drogi lokalne. |
| Obama jak Wojtyła |
- Recepcja nauczania Jana Pawła II jest tęczowa, od proletariackiej czerwieni do biskupich fioletów. Jego nauki podobały się różnym grupom często ze sobą skłóconym - powiedział wczoraj Adam Michnik podczas XV Debaty Tischnerowskiej zorganizowanej przez Uniwersytet Warszawski i wiedeński Instytut Nauk o Człowieku. |
| Tusk: Awantura o samolot i "Słońce Peru" to porażki roku |
Awantura o rządowy samolot dla prezydenta Lecha Kaczyńskiego przed październikowym szczytem UE w Brukseli - to zdaniem premiera Donalda Tuska największy błąd, jaki popełnił w ostatnim roku. |

