XML (eXtensible Markup Language) to mniej złożony, bardziej zwięzły dialekt większego, bardziej złożonego języka SGML (Standard Generalized Markup Language). Mówiąc najprościej, język ten używa znaczników składniowych do identyfikowania różnych typów danych w pliku. Na przykład:
XML bardzo ułatwia wyodrębnianie danych przez różne programy, ponieważ znaczniki są zgodne z określonymi modelami. Powyżej widzimy model danych z 7 elementami:
Klient (element nadrzędny), zawiera 6 zagnieżdżonych elementów: imię i nazwisko, ulicę, miasto, województwo, kod pocztowy i telefon.Nazwa: Programy obsługujące XML wiedzą, że to pole zawiera nazwisko osoby lub firmy.Ulica: To pole będzie zawierało adres .Miasto: Tutaj znajdzie miasto.Stan: Skrócony 2-literowy kod stanu.Zip: 5-cyfrowy kod pocztowy.Telefon: Numer telefonu.
Aby zdefiniować model danych lub zawartość każdego z elementów, można użyć DTD (Definicja Typu Dokumentu). DTD to jeden ze sposobów definiowania struktury lub drzewa dokumentu XML. DCD (opis zawartości dokumentu), DDML (język znaczników definicji dokumentu), SAX (proste API dla XML) i XSCHEMA to inne.
Chociaż powyższy uproszczony przykład tylko wskazuje na podstawy tego języka, powinno już być jasne, czym różni się on od HyperText Markup Language (HTML). Tagi używane w HTML dyktują sposób prezentacji materiału na stronie internetowej, bez wskazywania, co to za materiał. Manipulacja lub ponowne wykorzystanie danych w pliku HTML do dalszych celów jest nieopłacalne. Jednak dane zawarte na stronie internetowej napisanej w XML mogą być manipulowane, wyodrębniane przez różne systemy baz danych i poddawane recyklingowi.
Podczas korzystania z HTML do tworzenia stron internetowych często używane są arkusze stylów. Znany formalnie jako kaskadowe arkusze stylów, CSS dodaje elementy stylu do strony internetowej HTML.
Strony internetowe można również pisać w formacie XML. W tym przypadku odpowiednikiem CSS jest XSL (eXtensible Stylesheet Language), zaimplementowany w ten sam sposób.
XSL w rzeczywistości spełnia dwie funkcje. Zawiera instrukcje dla przeglądarek obsługujących XML, jak renderować kod w celach graficznych, ale zawiera również instrukcje dotyczące przekształcania danych na inne formaty, określane jako XLST. XSLT może wygenerować plik o innej strukturze niż oryginał. Jest to szczególnie przydatne w obszarach takich jak e-commerce, na przykład, gdzie dane wprowadzane przez klienta, takie jak imię i nazwisko, numer karty kredytowej, kwota w dolarach itp., są przepychane przez szereg programów systemowych podczas przetwarzania płatności. Funkcja przekształcania XSLT nie jest utrudniona przez potrzeby renderowania i dotyczy wyłącznie pomyślnego przenoszenia danych między sieciami i programami w celach przetwarzania. W czasach, gdy wymiana informacji jest tak pożądana, XML jest oczywistym wyborem w stosunku do HTML.
XML, stworzony przez World Wide Web Consortium (W3C), jest częścią dużej rodziny języków znaczników i jest definiowany jako metajęzyk — język opisujący inne języki. Jednym z celów W3C było uczynienie XML „bez opcji”, aby pozostał czysty, w przeciwieństwie do HTML, który ma wiele różnych konwencji i w rezultacie jest różnie renderowany w różnych przeglądarkach, co utrudnia prezentację danych w jednolity sposób.
Od testów z marca 2005 r., opublikowanych przez W3C
ujawniono, że Microsoft Internet Explorer 6.0 SP2 ma ograniczone możliwości XML, podobno używając własnego smaku języka, który może nie zawsze być zgodny z określonymi standardami. Netscape miał dobrą kompatybilność z kilkoma problemami w wersji 8.0 beta, podczas gdy Firefox i Mozilla osiągnęły najlepsze wyniki wśród darmowych przeglądarek, z w pełni zaimplementowaną, w 100% zgodną funkcją renderowania XML we wszystkich dostępnych do tej pory wersjach przeglądarek.
Ponieważ strony XML zapewniają o wiele większą elastyczność niż strony HTML, oczekuje się, że zastąpią HTML jako wybrany język. Aby uzyskać więcej informacji, odwiedź oficjalną stronę W3C. Dostępne są również samouczki online i wiele książek. Nauka języka może wymagać przyspieszenia, ale eksperci przewidują, że inwestycja jest warta czasu.