
"XSLT. Vademecum profesjonalisty" to książka o transformacjach rozszerzalnego języka arkuszy stylów (Extensible Sytlesheet Language Transformations). XSLT służy wyłącznie do transformacji dokumentów XML do innych dokumentów XML lub do innego rodzaju dokumentów. Ostatnio stał się on bardzo popularnym tematem. Ta książka jest najbardziej kompletnym i przystępnym źródłem informacji na temat XSLT i zawiera więcej informacji o XSLT niż jakakolwiek inna książka.Wiele książek o XSLT koncentruje się tylko na transformacjach "XML na HTML". Transformacje "XML na XML" stają się bardzo ważne i już niedługo, gdy tylko wzrośnie popularność XML, będą ważniejsze od transformacji "XML na HTML". W tej książce i pokazane są transformacje XSLT z XML do: XML, HTML, XHTML, RTF, zwykłego tekstu, JavaScript, baz danych opartych na SQL i XSL-FO (rozszerzalny język arkuszy stylów formatujących obiekty -- Exstensible Stylesheet Language Formatting Object).
Aby w całości omówić XSLT, opisane są tutaj wszystkie dostępne elementy XSLT, jak również ich atrybuty oraz wszystkie funkcje XSLT i XPath, których można użyć w arkuszach XSLT.
Znajdują się tu również setki działających przykładów. Jest to bez wątpienia najlepszy sposób na to, aby zobaczyć, jak działa XSLT. Jeżeli coś nie jest dość jasne w treści książki, zawsze można spojrzeć na znajdujący się obok przykład, ponieważ działające, kompletne przykłady znajdują się prawie we wszystkich miejscach książki

O Redaktorach merytorycznych (10)
Wprowadzenie (11)
- Co znajduje się w środku? (12)
- Dla kogo jest ta książka? (14)
- Na jakim poziomie napisana jest tak książka? (14)
- Używane konwencje (15)
- XSL = XSLT + XSL-FO (17)
- Krótkie wprowadzenie (18)
- Dokumenty XML (22)
- Jak XML wygląda w przeglądarce? (27)
- Transformacje XSLT (27)
- Przebieg transformacji XSLT (30)
- Korzystanie z samodzielnych procesorów XSLT (30)
- Używanie przeglądarek do transformacji dokumentów XML (37)
- Korzystanie z XSLT i JavaScriptu w Internet Explorerze (39)
- Transformacje XSLT na serwerze sieciowym (41)
- Transformacje XML-do-XML (43)
- Transformacje XML-do-XHTML (45)
- Informacje o XSLT (48)
- Obiekty formatujące XSL - XSL-FO (52)
- Informacje o XSL-FO (53)
- Formatowanie dokumentu XML (53)
- Arkusze stylów XSLT (55)
- Transformacja dokumentu do postaci z obiektami formatującymi (56)
- Tworzenie sformatowanych dokumentów (59)
- Drzewa i węzły (61)
- Model zbioru informacji kontra model drzewa XSLT (66)
- Praca z elementami XSLT (67)
- Instrukcja przetwarzania <?xsl:stylesheet?> (67)
- Element <xsl:stylesheet> (69)
- Elementy najwyższego poziomu arkusza stylów (72)
- Element <xsl:template> (73)
- Korpus szablonów (74)
- Element <xsl:apply-templates> (77)
- Dostęp do wartości węzła (80)
- Obsługa XML Base (84)
- Wybór metody wyjścia (86)
- Uproszczone arkusze stylów (92)
- Osadzanie arkuszy stylów (93)
- Element <xsl:include> (95)
- Element <xsl:import> (97)
- Element <xsl:apply-imports> (98)
- Używanie Internet Explorera do transformacji dokumentów XML (100)
- Tworzenie szablonu (103)
- Przetwarzanie węzłów "dzieci" (105)
- Dostęp do wartości węzła (106)
- Tworzenie wzorców dopasowania (107)
- Wybieranie szablonu (108)
- Odczytywanie wartości atrybutów (112)
- Element <xsl:text> (114)
- Wyłączanie opcji disable-output-escaping (116)
- Zapisywanie wartości atrybutów (118)
- Szablony wartości atrybutów (119)
- Odstępy (121)
- Elementy <xsl:strip-space> i <xsl:preserve-space> (123)
- Automatyczne wcinanie (124)
- Domyślne reguły szablonów (127)
- Usuwanie zawartości (130)
- Rozwiązywanie konfliktów szablonów (131)
- Element <xsl:copy> (134)
- Element <xsl:copy-of> (136)
- Element <xsl:message> (137)
- Dopasowanie węzła głównego (142)
- Dopasowanie elementów (143)
- Dopasowanie "dzieci" (143)
- Dopasowanie potomków elementu (143)
- Dopasowanie atrybutów (144)
- Definicja formalna wzorców dopasowania (146)
- Część 1. wzorców krokowych - oś wzorca (148)
- Część 2. wzorców krokowych - testy węzła (151)
- Część 3. wzorców krokowych - predykaty (155)
- Tworzenie predykatów (158)
- Dopasowanie na podstawie identyfikatora (168)
- Dopasowanie na podstawie klucza (169)
- Używanie operatora OR (171)
- Przykłady wzorców (173)
- Element <xsl:if> (183)
- Elementy <xsl:choose>, <xsl:when> i <xsl:otherwise> (187)
- Element <xsl:for-each> (194)
- Sortowanie elementów (197)
- Element <xsl:number> (202)
- Rozszerzalność XSLT (210)
- Funkcje rozszerzeń (211)
- Elementy rozszerzające (219)
- Element <xsl:fallback> (221)
- Element <xsl:output> (224)
- Zmiana struktury dokumentu w zależności od danych wejściowych (239)
- Element <xsl:element>: tworzenie nowych elementów w locie (240)
- Element <xsl:attribute>: tworzenie nowych atrybutów (242)
- Element <xsl:comment>: wstawianie komentarzy (243)
- Element <xsl:processing-instruction>: wstawianie instrukcji przetwarzania (244)
- Element <xsl:document>: tworzenie wielu dokumentów wynikowych (246)
- Element <xsl:namespace>: tworzenie deklaracji przestrzeni nazw (249)
- Element <xsl:attribute-set>: tworzenie zbiorów atrybutów (249)
- Pomijanie deklaracji XML i generowanie fragmentów XML (251)
- Użycie generate-id do tworzenia niepowtarzalnych identyfikatorów (253)
- Tworzenie sekcji CDATA (256)
- Określanie kodowania znaków (257)
- Tryby: formatowanie kontekstowe (259)
- Zrozumieć XPath (266)
- Typy danych XPath (269)
- Tworzenie ścieżek lokalizacji XPath (277)
- Pierwsza część kroków lokalizacji: osie (278)
- Druga część kroków lokalizacji: testowanie węzłów (279)
- Trzecia część węzłów lokalizacji: predykaty (280)
- Użycie osi XPath (280)
- Użycie osi ancestor (281)
- Użycie osi ancestor-or-self (281)
- Użycie osi descendant (283)
- Użycie osi descendant-or-self (284)
- Użycie osi following (285)
- Użycie osi following-sibling (286)
- Użycie osi namespace (287)
- Użycie osi parent (288)
- Użycie osi preceding (289)
- Użycie osi preceding-sibling (291)
- Użycie osi self (292)
- Przykłady ścieżek lokalizacji (293)
- Składnia skrócona XPath (294)
- Sprawdzanie wyrażeń XPath (295)
- XPath 2.0 (296)
- Funkcje XSLT (300)
- Funkcje XPath operujące na zbiorach węzłów (317)
- Funkcje XPath operujące na tekstach (323)
- Funkcje XPath operujące na liczbach (335)
- Funkcje logiczne XPath (338)
- Element <xsl:decimal-format>: tworzenie formatów liczbowych (342)
- Nowe funkcje w XSLT 2.0 i XPath 2.0 (346)
- Tworzenie zmiennych - element <xsl:variable> (348)
- Nazwane reguły - element <xsl:call-template> (355)
- Użycie parametrów: elementy <xsl:param> i <xsl:with-param> (359)
- Dobieranie klucza - element <xsl:key> (368)
- Tworzenie wielu dokumentów wynikowych - <xsl:document> (374)
- Generowanie arkuszy stylów - element <xsl:namespace-alias> (377)
- XSLT i JavaScript w Internet Explorerze (381)
- Obsługa błędów parsowania (383)
- Internet Explorer i dynamiczne arkusze stylów (386)
- Internet Explorer i wyspy danych XML (391)
- Wywoływanie Javy bezpośrednio z procesorów XSLT (394)
- Użycie API XSLT do Javy (395)
- Łączenie Xalana z Javą (396)
- Łączenie Saxona z Javą (398)
- Łączenie procesora XSLT Oracle z Javą (401)
- Łączenie XT z Javą (405)
- Przekształcanie dokumentów XML do baz SQL (407)
- Użycie XSLT i Active Server Pages (411)
- Użycie XSLT i Java Server Pages (414)
- Użycie XSLT w serwletach Javy (415)
- Formatowanie XSL (419)
- Obiekty formatujące XSL-FO (420)
- Właściwości formatujące XSL-FO (424)
- Formatowanie dokumentu XML (431)
- Użycie arkusza stylów XSLT do przekształcania na XSL-FO (432)
- Element główny dokumentu: <fo:root> (439)
- Ogólny układ dokumentu: <fo:layout-master-set> (439)
- Opis strony: <fo:simple-page-master> (440)
- Obszary (441)
- Ciągi stron: <fo:page-sequence> (443)
- Przepływy: <fo:flows> (444)
- Bloki danych: <fo:block> (445)
- Tabele (448)
- Tabela: <fo:table> (454)
- Kolumny tabeli: <fo:table-column> (455)
- Treść tabeli: <fo:table-body> (456)
- Wiersze tabeli: <fo:table-row> (457)
- Komórki tabeli: <fo:table-cell> (458)
- Listy XSL-FO (461)
- Rozmieszczanie tekstu w obszarach blokowych: <fo:block-container> (469)
- Obiekty formatujące inline (474)
- Przypisy: <fo:footnote> i <fo:footnote-body> (482)
- Łącza: <fo:basic-link> (485)
- Kolumny (488)
- Sekwencje i numerowanie stron (489)
- Fragment DTD arkuszy stylów XSLT (nienormatywne) (501)
Skorowidz (525)