środa, 23 maj 2012
NEXT / Artykuły / NEXT 6/2008 / Artykuły z NEXT 6/2008 / Od XML-a do XHTML-a
NEXT 6/2008 - okładka





Temat numeru:
Przejdź do innych artykułów:

NEXT 6/2008 - Od XML-a do XHTML-a

Od XML-a do XHTML-a - ikonka przetwarzanie dokumentów XML

Data: 20 maj 2008
Identyfikator: 080652

Dokumenty XML stanowią obecnie uniwersalne medium ustandaryzowanej wymiany informacji między serwerem a klientem. Ale sam XML to czyste dane, średnio użyteczne dla osoby odwiedzającej witrynę. Trzeba zadbać jeszcze o wyświetlenie ich w przystępnym dla oka formacie.

Strona 1 z 3
< Poprzednia 1 2 3 Następna >

O tym, jak wielki wpływ na finalny produkt, jakim jest dowolna strona WWW, mają arkusze CSS, najłatwiej się przekonać, tymczasowo je wyłączając. Jeśli pozostały tekst, bez formatowania i nadanych stylów, będzie w jakikolwiek sposób użyteczny, to najprawdopodobniej jedynie dziełem przypadku.

Dokumenty XML (eXtensible Markup Language), także XHTML, to właśnie takie surowe dane. Ale w owym „także” tkwi haczyk. Wprawdzie XHTML, używający wybranego zestawu znaczników, może zostać powiązany z CSS-em, jednak sam XML – już nie, a przynajmniej nie w postaci mówiącej przeglądarce, w jaki sposób zaaplikować styl. Formalnie nic nie stoi na przeszkodzie, aby stworzyć w pliku CSS regułę dla tagu <ksiazka> czy <pracownik>, ale co z tego, skoro dla przeglądarki jest to niezrozumiałe?

Co kryją pliki XML?

Typowy dokument XML, jaki może dostarczyć aplikacji internetowej webserwis, przedstawia dane pogrupowane hierarchicznie. Jeśli jest on odpowiedzią serwera na pytanie o listę pracowników wybranego działu firmy, wynikowy dokument może wyglądać np. tak:

<?xml version="1.0" encoding="UTF-8"?> <firma> <dzial nazwa="IT"> <pracownik> <imie>Jan</imie> <nazwisko>Kowalczyk</nazwisko> <wiek>37</wiek> <zarobki>6500</zarobki> </pracownik> <pracownik> <imie>Marek</imie> <nazwisko>Migacz</nazwisko> <wiek>29</wiek> <zarobki>4800</zarobki> </pracownik> </dzial> </firma>

Załóżmy, że na bazie powyższych danych – oczywiście pracowników może być kilkudziesięciu, nie dwóch, mogą być oni również opisani większą liczbą parametrów – mamy wygenerować prostą tabelkę prezentującą listę zatrudnionych osób. Dane w formacie XML mają to do siebie, że oddają dość dobrze strukturę logiczną danych – pracownik jest elementem działu, dział – firmy, jednak na potrzeby XHTML-a powyższe encje trzeba zastąpić prostymi tagami: <td>, <tr> i <table>, dodatkowo podpiąć arkusz stylów. Sam XML wyświetlony w dowolnej przeglądarce jest bowiem niemal tak samo jak w Notatniku.

XSLT, czyli jak przetwarzać XML-e

Właśnie z myślą o takim zastosowaniu powstał język XSLT (Extensible Stylesheet Language Transformations). Formalnie jest to osobny plik definiujący zasady, na jakich ma się odbywać konwersja dokumentów XML na gotowy do umieszczenia na stronie kod XHTML. Koncepcyjnie pliki XSLT są podobne do arkuszy CSS. W najprostszej postaci zawierają zestaw selektorów wybierających określoną grupę znaczników XML oraz instrukcje ich transformacji. W samych arkuszach XSLT można także osadzać pewne fragmenty kodu XHTML, które mają się znaleźć w wynikowym dokumencie niezależnie od tego, co uzyskamy przez zadziałanie samych reguł konwersji. Więcej informacji na temat budowy plików XSLT przedstawiamy w ramce Jak stworzyć dobry XSLT.

Między XSLT a CSS jest więcej podobieństw. Przykładowo do napisania dobrego arkusza stylów twórca musi wiedzieć, jakimi tagami posługuje się webdeweloper w kodzie i w jakim kontekście są one użyte. Nie inaczej jest przy transformacji XML – reguły konwersji opierają się zwykle na konkretnie nazwanych znacznikach, więc trzeba dokładnie wiedzieć, co i w jakiej kolejności zawiera obrabiany plik.


Tagi: internet   www   porady   webmaster  
Ocena: ..... (aktualna: 5,0; liczba głosów: 1)    (aby ocenić, musisz się zalogować w serwisie)

< Poprzednia 1 2 3 Następna >

Podobne artykuły:

Komentarze:

Redakcja nie ponosi odpowiedzialności za treść komentarzy.
Nikt jeszcze nie skomentował.
Niezalogowany

Aby mieć dostęp do niektórych części serwisu NEXT (np. forum dyskusyjnego, oceny numeru, newslettera), musisz posiadać konto w naszym serwisie. Zachęcamy do darmowej rejestracji!

Jeżeli posiadasz już konto w serwisie, to zaloguj się.