Plan prezentacji • XPath – Podstawy • XSLT – Ogólna budowa – Zastosowanie XPath w szablonach – Elementy Jakub Wojciechowski PJWSTK 2002
Xpath - wprowadzenie • Służy do znajdywania elementów dokumentu XML spełniających określony warunek • Składnia zbliżona do nazw w systemie plików (przykład: /samochody/fiat/ ) Jakub Wojciechowski PJWSTK 2002
XPath cz. 2 XML: Wyrażenie XPath: //BBB Wszystkie wystąpienia wzorca w dokumencie XML Jakub Wojciechowski PJWSTK 2002
XPath cz. 3 XML: Wyrażenie XPath: /AAA/DDD/* Wszystkie elemnty leżące „głębiej” Jakub Wojciechowski PJWSTK 2002
XPath cz. 4 atrybuty XML: Wyrażenie XPath: //BBB[@id=‘ 2’] //AAA/BBB[@id=‘ 2’] Wyrażenie wybierające element BBB z atrybutem id o wartości 2 Jakub Wojciechowski PJWSTK 2002
XPath cz. 5 XML: Wyrażenie XPath: //BBB[position() mod 2 =0] Wybierz parzyste elemety BBB Jakub Wojciechowski PJWSTK 2002
XSLT • Przetwarzanie dokumentów XML na inne dokumenty XML (w szczególności na HTML) • Zbiór szablonów przekształcających elementy pasujące do wzorca na np. kod HTML Jakub Wojciechowski PJWSTK 2002
XSLT budowa . . . . . . Jakub Wojciechowski PJWSTK 2002
" src="https://present5.com/presentation/604516cb1a7dd78a2e3184420d950f53/image-11.jpg" alt="Zastosowanie XPath w XSLT " />
Zastosowanie XPath w XSLT Jakub Wojciechowski PJWSTK 2002
" src="https://present5.com/presentation/604516cb1a7dd78a2e3184420d950f53/image-12.jpg" alt="" />
nazwa numer Jakub Wojciechowski PJWSTK 2002
Element • Atrybuty: – name – określa nazwę szablonu – match – określa do jakich elementów XML ma zostać użyty – mode – określa który w szablonów o tej samej nazwie zostanie użyty Jakub Wojciechowski PJWSTK 2002
Wywoływanie szablonów • Wywołanie pasującego szablonu dla wszystkich wystąpień danego elementu. Dla każdego elementu oddzielne wywołanie szablonu. Możliwe jest posortowanie elementów przed wywołaniem szablonu. Jakub Wojciechowski PJWSTK 2002
Wywoływanie szablonów cz. 2 • Pojedyncze wywołanie szablonu. W przeciwieństwie do xsl: apply-templates, xsl: call -template nie zmienia aktualnej pozycji w dokumencie XML. Jakub Wojciechowski PJWSTK 2002
Wypisywanie wartości Wypisuje wartość znajdującą się podaną ścieżką Xpath np. : Jakub Wojciechowski PJWSTK 2002
Instrukcje warunkowe cz. 1 • W waruku można podać wyrażenie boolowskie (np. @attr==‘ 2’) lub ścieżkę Xpath. Istnienie elementu podaną ścieżką jest równoznaczne z wartością TRUE; brak elementu => FALSE. Instrukcja nie posiada ELSE! Znaki ‘<‘ i ‘>’ nie mogą być użyte do porównywania wartości. Zamiast nich wprowadzono oznaczenie > dla > i < dla <. Jakub Wojciechowski PJWSTK 2002
Instrukcje warunkowe cz. 2 • (odpowiednik switch z Java, C) . . . . . . . . . Jakub Wojciechowski PJWSTK 2002
Pętla • . . . Przejście po wszystkich elementach leżących na danej ścieżce. Możliwe jest sortowanie jak przy xsl: apply-templates: Jakub Wojciechowski PJWSTK 2002
Parametry • Istnieje możliwość przekazania parametrów podczas wywoływania szablonu. Wywołanie: 40 Jakub Wojciechowski PJWSTK 2002
Wszystko razem czyli przykład MSTF57. 69 Dokument XML z kursami 0. 02 31, 952, 100 akcji spółek giełdowych: http: //www. microsoft. com ORACLE11. 90-2. 06 46, 174, 700 http: //www. oracle. com SUNW4. 14-3. 52 82, 635, 500 http: //www. sun. com Jakub Wojciechowski PJWSTK 2002