Скачать презентацию XSLT Jakub Wojciechowski PJWSTK 2002 Plan prezentacji Скачать презентацию XSLT Jakub Wojciechowski PJWSTK 2002 Plan prezentacji

604516cb1a7dd78a2e3184420d950f53.ppt

  • Количество слайдов: 24

XSLT Jakub Wojciechowski PJWSTK 2002 XSLT Jakub Wojciechowski PJWSTK 2002

Plan prezentacji • XPath – Podstawy • XSLT – Ogólna budowa – Zastosowanie XPath 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 • 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. 1 XML: <AAA> <BBB/> <CCC/> <BBB/> <DDD> <BBB/> </DDD> <CCC/> </AAA> Wyrażenie XPath cz. 1 XML: Wyrażenie XPath: /AAA/BBB ścieżka bezwzględna Jakub Wojciechowski PJWSTK 2002

XPath cz. 2 XML: <AAA> <BBB/> <CCC/> <BBB/> <DDD> <BBB/> </DDD> <CCC/> </AAA> Wyrażenie XPath cz. 2 XML: Wyrażenie XPath: //BBB Wszystkie wystąpienia wzorca w dokumencie XML Jakub Wojciechowski PJWSTK 2002

XPath cz. 3 XML: <AAA> <BBB/> <CCC/> <BBB/> <DDD> <BBB/> <CCC/> </DDD> <CCC/> </AAA> XPath cz. 3 XML: Wyrażenie XPath: /AAA/DDD/* Wszystkie elemnty leżące „głębiej” Jakub Wojciechowski PJWSTK 2002

XPath cz. 4 atrybuty XML: <AAA> <BBB id=” 1”/> <CCC/> <BBB id=” 2”/> <BBB 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: <AAA> <BBB id=” 1/> <BBB id=” 2”/> <BBB id=” 3”/> 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) • 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 <xsl: stylesheet version = '1. 0' xmlns: xsl='http: //www. w 3. org/1999/XSL/Transform'> 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 <xsl: template> • Atrybuty: – name – określa nazwę szablonu – match – 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 • <xsl: apply-templates match=”/scieżka/”/> Wywołanie pasującego szablonu dla wszystkich wystąpień danego elementu. 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 • <xsl: call-template name=”Nazwa. Szablonu”> Pojedyncze wywołanie szablonu. W przeciwieństwie 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 <xsl: value-of select=”/scieżka”/> Wypisuje wartość znajdującą się podaną ścieżką Xpath np. : Wypisywanie wartości Wypisuje wartość znajdującą się podaną ścieżką Xpath np. : Jakub Wojciechowski PJWSTK 2002

Instrukcje warunkowe cz. 1 • <xsl: if test=”warunek”> </xsl: if> W waruku można podać 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 • <xsl: choose> (odpowiednik switch z Java, C) <xsl: when Instrukcje warunkowe cz. 2 • (odpowiednik switch z Java, C) . . . . . . . . . Jakub Wojciechowski PJWSTK 2002

Pętla • <xsl: for-each select=”/scieżka”>. . . </xsl: for -each> Przejście po wszystkich elementach 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. <xsl: template name=”szab 1”> <xsl: Parametry • Istnieje możliwość przekazania parametrów podczas wywoływania szablonu. Wywołanie: 40 Jakub Wojciechowski PJWSTK 2002

Wszystko razem czyli przykład <nasdaq> <company> <name>MSTF</name> <price>57. 69</price> Dokument XML z kursami <change>0. Wszystko razem czyli przykład MSTF 57. 69 Dokument XML z kursami 0. 02 31, 952, 100 akcji spółek giełdowych: http: //www. microsoft. com ORACLE 11. 90 -2. 06 46, 174, 700 http: //www. oracle. com SUNW 4. 14 -3. 52 82, 635, 500 http: //www. sun. com Jakub Wojciechowski PJWSTK 2002

Przykład XSLT <xsl: template match=”/”> <html> <table border=” 1”> <tr><td>Nazwa</td> <td>cena</td> <td>zmiana</td> <td>obrót</td> </tr> Przykład XSLT