Wielu autorów witryn internetowych spogląda ostrożnie ku językowi XHTML, spodziewając się po nim jakiejś cudownej odmiany - dzieło World Wide Web Consortium jest ciągle przedmiotem ożywionej debaty i kontrowersji.
Wielu autorów witryn internetowych spogląda ostrożnie ku językowi XHTML, spodziewając się po nim jakiejś cudownej odmiany - dzieło World Wide Web Consortium jest ciągle przedmiotem ożywionej debaty i kontrowersji.
Popularny język HTML, służący do tworzenia dokumentów internetowych, powstał już kilkanaście lat temu, choć po raz pierwszy został sformalizowany dopiero 22 września 1995 r. (zatem równo 10 lat temu) - co ciekawe, od razu w wersji 2.0. Wcześniejsze prace Tima Bernersa-Lee oraz rozmaitych gremiów miały charakter nieformalny i ich akceptacja była w dużej mierze wyrazem zgody środowiska, a nie poddaniem się nakazom jakiejś centralnej instytucji.
W ciągu następnych lat pojawiło się kilka kolejnych wersji języka, aż wreszcie 24 grudnia 1999 r. zaprezentowano ostatnią wersję, oznaczoną numerem 4.01. Ograniczenia HTML spowodowały, że zdecydowano się przyjąć inną strategię działania.
U źródeł
HTML opiera się na opracowanym jeszcze w latach 60. przez Charlesa Goldfarba języku SGML. Goldfarb jest uznawany za głównego twórcę tzw. języków znacznikowych, które w następnych dziesięcioleciach zrewolucjonizowały w dużej mierze wymianę informacji. HTML, określany mianem aplikacji SGML, jest jego znacznie uproszczonym podzbiorem, służącym do ściśle określonych celów.
SGML jest niezwykle skomplikowany, bardzo trudny do opanowania - budowanie na jego podstawie aplikacji zawsze wymagało dużej wiedzy i nakładów. Założone w 1994 r. przez Bernersa-Lee World Wide Web Consortium (W3C), które podjęło się ustandaryzowania narzędzi służących do wymiany informacji, postanowiło uprościć bazę wyjściową i utworzyć podstawę do dalszych prac. W ciągu kilku lat opracowano język XML, który skomentowano lapidarnie: "80 procent siły SGML przy 20 procentach jego skomplikowania". To właśnie XML - pierwsza wersja ukazała się w lutym 1998 r. - stał się podstawą języków znacznikowych, których zaczęto powszechnie używać w najrozmaitszych dziedzinach wiedzy i działalności gospodarczej - przykładem jest choćby popularny ostatnio język kanałów informacyjnych RSS. Również XML posłużył za podstawę ponownego sformułowania języka HTML. Krótko mówiąc, o ile HTML był aplikacją SGML, o tyle XHTML stał się aplikacją XML, został zdefiniowany za pomocą tego języka.
Podstawową zaletą XHTML (eXtensible HyperText Markup Language) jest zatem wejście do rodziny ustandaryzowanych aplikacji XML, które mogą ze sobą bezpośrednio współpracować. Możliwe będą rozmaite manipulacje i przekształcenia, co pozwoli na lepszą wymianę informacji niż do tej pory. Typowy przykład to łączenie w jednym dokumencie informacji należących do różnych przestrzeni, jak MathML czy Scalable Vector Graphics, które będą opatrywane stosownymi informacjami o ich rodzimych przestrzeniach nazw.
Gotowi, start!

Parser Firefoksa wykazujący błąd w pliku XHTML - cenna pomoc dla webmastera.Pierwsza wersja XHTML weszła w życie 26 stycznia 2000 r., jako rekomendacja W3C - organizacja nie formułuje nakazów, lecz publikuje tzw. rekomendacje, które de facto mają charakter standardów.
Pierwotna specyfikacja była prostym przepisaniem HTML 4.01 w języku XML. XHTML ma kilka odmian, z których każda odpowiada odmianom HTML 4.01.
- XHTML 1.0 Strict - oparta na HTML 4.01 Strict; oddziela treść od układu i wizualizacji, przeniesionych do kaskadowych arkuszy stylów CSS.
- XHTML 1.0 Transitional - oparta na HTML 4.01 Transitional; umożliwia łatwe przejście z HTML 3.2.
- XHTML 1.0 Frameset - oparta na HTML 4.01 Frameset; obsługuje ramki na stronach WWW.
Znaczącą zmianą była wersja XHTML 1.1, opublikowana 31 maja 2001 r., w której zrezygnowano z tradycyjnego podziału definicji typu dokumentu (DTD) na Strict, Transitional i Frameset - jest w niej tylko jedna DTD, odpowiadająca wersji Strict z XHTML 1.0. Zastosowano w niej także po raz pierwszy strukturę modułową, czyli podzielono specyfikację na części odpowiadające typowym funkcjom. Modułów jest aż 28.
W XHTML jeszcze mocniej oddzielono warstwę strukturalną od prezentacyjnej, finalizując wieloletni proces wprowadzania kaskadowych arkuszy stylów, które odpowiadają za wizualizację dokumentu w przeglądarce. Już w HTML 4 zasada ta była wyraźnie podkreślona, ale w nowej wersji języka, opartej na XML, w którym wspomniane warstwy są całkowicie oddzielone, staje się kanonem. Dlatego właśnie istotne znaczenie ma pełna i zgodna ze specyfikacją implementacja stylów w przeglądarkach internetowych.
Bieg z przeszkodami
World Wide Web Consortium zaleca właśnie wersję 1.1 języka do tworzenia nowych stron WWW, jednak stosowany od lat standard HTML ma się całkiem dobrze i liczba witryn tworzonych według zasad XHTML ciągle jest minimalna, jeśli wziąć pod uwagę, że dokumentów HTML są już w Sieci miliardy. Ma to kilka przyczyn.
Po pierwsze, nadal brakuje odpowiednich narzędzi - zdumiewające, ale po pięciu latach istnienia XHTML wspomaganie jest bardzo skromne i na ogół ma charakter uzupełniający w stosunku do podstawowych narzędzi do HTML. Nierzadko konieczna jest solidna znajomość zasad XHTML, aby nie popełniać błędów, korzystając z narzędzi edytora.
Po drugie, rewolucji internetowej, przede wszystkim WWW, towarzyszył tradycyjny HTML, a miliony osób tworzących witryny po prostu się do niego przyzwyczaiły i nawet te, które wiedzą o nowych standardach (znaczna mniejszość przecież), z trudem akceptują konieczność wprowadzania zmian - zresztą przeglądarki zapewne zawsze, a przynajmniej przez dziesięciolecia będą akceptowały "stary" język HTML, zatem webmasterzy nie widzą istotnych powodów do konwertowania już utworzonych stron.
Po trzecie, rolę "hamulcowego" odgrywała dotychczas najpopularniejsza przeglądarka, czyli
Internet Explorer 6. Wypłowiały produkt Microsoftu, mający ciągle przynajmniej 80 procent udziału w rynku, tkwi od kilku lat w stagnacji i przez cały okres istnienia XHTML nie został unowocześniony tak, aby akceptować w pełni poprawny standard tego języka. Możliwe jest wprawdzie stosowanie pewnych obejść, ale to niezbyt elegancka sztuczka.
Podobnie jest zresztą z drugim kluczowym standardem webmasterskim, czyli stylami CSS - Internet Explorer, choć obsługuje znaczącą część standardu CSS 2.1, pozostaje w tyle za konkurencyjnymi Operą i Firefoksem, zawierając bodaj najwięcej błędów interpretacyjnych. Z lektury blogów osób związanych z Microsoftem wynika, że nie jest wcale pewne, czy poprawki znajdą się w wersji 7, ale to oczywiście nieoficjalne informacje i stan faktyczny ocenimy dopiero w przyszłym roku. Producent, chwała mu za to zresztą, skoncentrował się przede wszystkim na zwiększeniu bezpieczeństwa przeglądarki, która w obliczu szerzącej się jak pożar w stepie przestępczości internetowej stała się po prostu zagrożeniem - poufnych danych użytkowników oraz ich pieniędzy w bankach internetowych.
Trudno nie wspomnieć też o krytycznych głosach dobiegających ostatnio z Sieci - Paul Thurrott, powszechnie poważany dziennikarz i twórca witryny Windows Supersite (
http://www.winsupersite.com ), od lat związany z Windows, odważył się stwierdzić: "Bojkotujcie IE. To rak na ciele Internetu i należy go powstrzymać. IE nie jest bezpieczny i nie spełnia standardów, co czyni go niewygodnym zarówno dla użytkowników, jak i projektantów stron WWW. Możecie to zmienić, wymagając więcej od Microsoftu i używając lepszych, alternatywnych przeglądarek" (cytat za Aktualnościami PC Worlda online). Mocne słowa, tym mocniejsze, że padają z ust dziennikarza, który przez długie lata był daleki od radykalizmu. Miejmy nadzieję, że wpłyną w jakiejś mierze na decyzje Microsoftu, który pewny swojej przewagi po prostu spał przez kilka lat snem (nie)sprawiedliwego. Skoro stale dzieje się coś w Operze i Firefoksie, tworzonych przez zespoły nieporównanie mniejsze i biedniejsze, nie sposób uwierzyć, że kilkusetosobowy team Microsoftu z setkami milionów budżetu nie może sobie dać rady ze standardami. To kwestia decyzji. Kanonicznym wręcz przykładem ignorowania potrzeb użytkowników jest niepoprawne cytowanie w czytniku grup dyskusyjnych Outlook Express, co zakrawa wręcz na kpinę, skoro nakładki poprawiające ten błąd potrafili opracować indywidualni programiści rozdający swoje aplikacje za darmo.
Tymczasem standard XHTML ucieka do przodu i w wersji 2.0 (jej siódmy szkic został opublikowany 27 maja 2005 r.) zajdą dalsze zmiany, które ograniczą tzw. wsteczną zgodność języka. Zmusi to wszystkich usiłujących dotrzymać kroku standardom do konwersji dokumentów - zapewne pojawią się narzędzia automatyzujące takie operacje, ale wyraźnie widać, że XHTML jest w okresie "burzy i naporu" i nie wiadomo, jak będą wyglądać kolejne aktualizacje (można podejrzewać, że język wychodzi powoli "na prostą"). W dużej mierze popularność standardu będzie zależeć od poczynań Microsoftu, czyli stosowania standardów internetowych w Internet Explorerze.
Przykładowy kod XHTML
<?xml version="1.0" encoding="iso-8859-2"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "
http://www.w3.org/TR/xhtml11/DTD/xhtml1-strict.dtd"><html xmlns="
http://www.w3.org/1999/xhtml"><head>
<title>Tytuł dokumentu</title>
<meta http-equiv="content-type" content="text/html; charset=iso-8859-2" />
<meta name="keywords" content="wyrazy kluczowe" />
<meta name="description" content="opis opis dokumentu" />
<meta name="author" content="Jan Kowalski" />
<link rel="stylesheet" type="text/css" href="style.css" />
</head>
<body>
<h1>Nagłówek 1</h1>
<br />
<p>Jakiś akapit</p>
<img src="obrazek.jpg" />
</body>
</html>