XPath XML Path Language. XPath. XSLT część 1. XPath data model. Wyrażenia XPath. Location paths. Osie (axes)

Podobne dokumenty
XPath XML Path Language. XPath. XSLT część 1. XPath data model. Wyrażenia XPath. Osie (axes) Location paths

Języki formatowania dokumentów strukturalnych. XSL przekształcenia XML-a. XSL a XSLT. XSL części składowe. Zasada działania przekształcenia XSLT

XPath XML Path Language. XSL Extensible Stylesheet Language. Wyrażenia XPath. XPath data model. Location paths. Osie (axes)

XML Path Language (XPath)

Słowem wstępu. Standard: W3C XPath razem XSLT 1.0. XPath razem z XQuery 1.0 i XSLT 2.0. XPath trwają prace nad XPath 3.

METAJĘZYKI. Politechnika Koszalińska Wydział Elektroniki i Informatyki Katedra Inżynierii Komputerowej

Prezentacja i transformacja

Kurs WWW Język XML, część II

Prezentacja i transformacja

Języki XPath i XQuery

Języki XPath i XQuery

Języki XPath i XQuery

Plan prezentacji. Krótko o XML Arkusze stylów XSLT XSL XSL Path Przegląd konstrukcji języka i przykłady Narzędzia Podsumowanie Literatura

Wprowadzenie do arkuszy stylistycznych XSL i transformacji XSLT

Słowem wstępu. Część rodziny języków XSL. Standard: W3C XSLT razem XPath 1.0 XSLT Trwają prace nad XSLT 3.0

XPath i XQuery. Patryk Czarnik. XML i nowoczesne technologie zarządzania treścią 2011/12. Wprowadzenie Status Model danych XPath

Przetwarzanie dokumentów XML i zaawansowane techniki WWW Wykład 03

Wprowadzenie do standardu XSL

Extensible Markup Language III

Wprowadzenie do standardu XSL

Elektroniczna wymiana danych (EDI) jest to: - wymiana informacji pomiędzy komputerami, z użyciem powszechnie akceptowanych standardów

Język XSLT. UEK w Krakowie Janusz Stal & Grażyna Paliwoda-Pękosz. UEK w Krakowie Janusz Stal & Grażyna Paliwoda-Pękosz

Prezentacja dokumentów XML

Podstawy XML-a. Zaawansowane techniki programowania

Drzewa DOM. Maciej Zakrzewicz.

Rodzaje przetwarzania XSLT (1)

Model semistrukturalny

Prezentacja dokumentów XML

LABORATORIUM 5 WSTĘP DO SIECI TELEINFORMATYCZNYCH WPROWADZENIE DO XML I XSLT

XQuery. XQuery. Przykład. dokument XML. XQuery (XML Query Language) XQuery 1.0: An XML Query Language. W3C Recommendation

XML extensible Markup Language 7

Wprowadzenie do XSLT

Języki i Techniki Programowania II. Wykład 13. TRaX, Applety, Java Security

Przykładowy dokument XML

XML extensible Markup Language 3

XML. 6.6 XPath. XPath is a syntax used for selecting parts of an XML document

Ogólna struktura dokumentu XSL-FO. Model formatowania. Ogólna struktura dokumentu XSL-FO C.d. Przykład Hello World Użycie szablonu strony

Kazienko P.: Rodzina języków XML. Software nr 6 (90) czerwiec 2002, s Rodzina języków XML. Przemysław Kazienko

Extensible Markup Language (XML) Wrocław, Java - technologie zaawansowane

Wprowadzenie do technologii XML

1 Model semistrukturalny 1 2 XML 3. 3 XPath 8. 4 Bazy danych a XML Bazy przechowywujące XML Natywne bazy XML

Rok akademicki: 2013/2014 Kod: ZZIP IN-s Punkty ECTS: 2. Kierunek: Zarządzanie i Inżynieria Produkcji Specjalność: Informatyka w zarządzaniu

Prezentacja dokumentów XML

Prezentacja dokumentów XML

JĘZYKI WYSZUKIWANIA W DOKUMENTACH XML

XML extensible Markup Language. Paweł Chodkiewicz

Aplikacje internetowe. Interfejs użytkownika

WYKŁAD 1 METAJĘZYK SGML CZĘŚĆ 1

XML extensible Markup Language. część 3

5.14 JSP - Przykład z obiektami sesji Podsumowanie Słownik Zadanie... 86

Semistrukturalne bazy danych Wykład dla studentów matematyki

Technologie internetowe

Plan dzisiejszego wykładu. Narzędzia informatyczne w językoznawstwie. XML - Definicja. Zalety XML

29. Poprawność składniowa i strukturalna dokumentu XML

XML DTD XML Schema CSS

extensible Markup Language, cz. 1 Marcin Gryszkalis, mg@fork.pl

Rola języka XML narzędziem

Informatyka (10) dr inż. Katarzyna Palikowska Katedra Transportu Szynowego i Mostów p. 4 Hydro

Prezentacja dokumentów XML

Dokumenty elektroniczne

Intro. I.Wojnicki, ZTB:XML ZTB: XML. Igor Wojnicki. Katedra Informatyki Stosowanej, Akademia Górniczo-Hutnicza w Krakowie.

HTML DOM, XHTML cel, charakterystyka

Zaawansowane aplikacje WWW - laboratorium

Kurs języka Python Wykład 8. Przetwarzanie tekstu Wyrażenia regularne Biblioteka urllib Parsowanie html'a XML

Przetwarzanie dokumentów XML i zaawansowane techniki WWW Wykład 04

Język XML Schema. UEK w Krakowie Janusz Stal & Grażyna Paliwoda-Pękosz. UEK w Krakowie Janusz Stal & Grażyna Paliwoda-Pękosz

UEK w Krakowie Janusz Stal & Grażyna Paliwoda-Pękosz

mgr inż. Jacek Staniec Język XML

Podstawy elektronicznej wymiany danych. UEK w Krakowie Janusz Stal & Grażyna Paliwoda-Pękosz

XML extensible Markup Language. część 6

Stwórz dokument XML zawierający poniższe informacje. Wykorzystaj atrybuty.

Bash - wprowadzenie. Bash - wprowadzenie 1/39

Źródła. cript/1.5/reference/ Ruby on Rails: AJAX: ssays/archives/

Przetwarzanie dokumentów XML za pomocą XSLT ( r.)

XML stan obecny i trendy rozwojowe

Plan prezentacji XSLT. XSLT Ogólna charakterystyka. Drzewo XML. Wstęp. Przedmiot: XML i jego zastosowania. Zagadnienia podstawowe

IDZ DO KATALOG KSI EK TWÓJ KOSZYK CENNIK I INFORMACJE CZYTELNIA PRZYK ADOWY ROZDZIA SPIS TRE CI KATALOG ONLINE ZAMÓW DRUKOWANY KATALOG

GML w praktyce geodezyjnej

XML i nowoczesne technologie zarządzania treścią

Tworzenie Stron Internetowych. odcinek 6

Spis treści. Przedmowa

XSL, tj. XSLT i XSL-FO czyli jak przekształcać i ładnie wyświetlać XML-e. Kuba Pochrybniak

Przykładowy dokument XML

XML extensible Markup Language. część 5

TIN Techniki Internetowe zima

Przetwarzanie dokumentów XML i zaawansowane techniki WWW Przetwarzanie dokumentów XML za pomocą procesora XSLT (Zajęcia r.

INTEGRACJA I EKSPLORACJA DANYCH

Wykład 2 xaml, cz Czym jest xml?

Narzędzia informatyczne w językoznawstwie

Wprowadzenie do XML. Tomasz Traczyk.

The Binder Consulting

Podstawy (X)HTML i CSS

Podstawowe konstrukcje Podstawowymi konstrukcjami są wzorce element oraz attribute:

Środowisko XML (Extensible Markup Language).

Tworzenie Stron Internetowych. odcinek 6

XSLT. Patryk Czarnik. Instytut Informatyki UW. XML i nowoczesne technologie zarzadzania treścia 2007/08


XSLT. Patryk Czarnik. XML i nowoczesne technologie zarzadzania treścia 2007/08

Przykładowy dokument XML

Ćwiczenia laboratoryjne nr 8 Podstawy języka XML.

Transkrypt:

XPath XML Path Language XPath. XSLT część 1. Problem: jednoznaczne adresowanie fragmentów struktury dokumentu XML. Rozwiązanie: drzewiasty model struktury dokumentu, normalizacja zawartości dokumentu (ten sam byt, choć różnie zakodowany, jest tak samo reprezentowany w modelu), język ścieżek w drzewie struktury. Status: wersja 1.0 rekomendacja W3C z 16 listopada 1999 r. Zastosowania: XSL, XPointer,... 2004-11-04 XPath. XSLT część 1 2 XPath data model Modelowanie dokumentu przy pomocy drzewa: węzeł root, węzły elementów, węzły atrybutów, węzły tekstowe, węzły instrukcji przetwarzania, węzły komentarzy, węzły przestrzeni nazw. Własności węzłów: string-value, normalizacja odwołań do encji i sekcji CDATA, expanded-name. Wyrażenia XPath Typy wyrażeń: node-set, boolean, number, string. Węzeł bieżący (context node). Poruszanie się w hierarchii elementów: / /book/section section/para 2004-11-04 XPath. XSLT część 1 3 2004-11-04 XPath. XSLT część 1 4 Location paths Ścieżka XPath złożona z kroków. Opis kroku: oś, test węzła, predykaty. Przykłady: /child::book/child::section child::para[attribute::type="warning"] Osie (axes) Kierunki poruszania się po modelu dokumentu: child descendant parent ancestor following-sibling preceding-sibling following preceding attribute namespace self descendand-or-self ancestor-or-self 2004-11-04 XPath. XSLT część 1 5 2004-11-04 XPath. XSLT część 1 6

Testy węzłów Zapis skrócony Podstawowy typ węzła: dla osi attribute: atrybut, dla osi namespace: przestrzeń nazw, dla pozostałych osi: element. Testy: nazwa węzła, * - wszystkie węzły podstawowego typu node() text() comment() processing-instruction() processing-instruction(target-name) Skróty: child:: można pominąć, @ attribute:: // /descendant-or-self::node()/. self::node().. parent::node() Zapis pełny vs. skrócony przykład:.//para self::node()/descendant-or-self::node()/child::para 2004-11-04 XPath. XSLT część 1 7 2004-11-04 XPath. XSLT część 1 8 Predykaty Dowolne wyrażenie. Interpretacja: number prawda, gdy równy pozycji węzła w kontekście, string prawda, gdy niepusty, node-set prawda gdy niepusty. Przykłady para * */para @name @* /doc/chapter[5]/section[2] chapter//para chapter[title] chapter[title="introduction"] employee[@secretary and @assistant] 2004-11-04 XPath. XSLT część 1 9 2004-11-04 XPath. XSLT część 1 10 Ważniejsze funkcje Operatory: + - * / > >= < <= and or... last() position() count(node-set) name(node-set?) string(object?) concat(string, string, string*) contains(string, string) not(boolean) Języki formatowania dokumentów strukturalnych SGML: FOSI (Formatting Output Specification Instance): specyfikacja MIL-PRF-28001, zbyt małe możliwości dla ogólnych zastosowań. DSSSL (Document Style Semantics and Specification Language): ISO/IEC 10179:1996 oparty na podzbiorze języka Scheme bez efektów ubocznych. XML: CSS (Cascading Style Sheets), stosowane m. in. w HTML-u, XSL (Extensible Stylesheet Language): język wysokopoziomowy, deklaratywny, bez efektów ubocznych. 2004-11-04 XPath. XSLT część 1 11 2004-11-04 XPath. XSLT część 1 12

XSL części składowe XSL a XSLT XSLT (XSL Transformations): język opisu przekształceń dokumentów XML, składnia XML, oparty na dopasowywaniu wzorców, przestrzeń nazw: http://www.w3.org/1999/xsl/transform, rekomendacja W3C z 16 listopada 1999 r. XPath (XML Path Language). XSL:FO (XSL Formatting Objects): słownik XML-owy pozwalający definiować formatowanie, przestrzeń nazw: http://www.w3.org/1999/xsl/format, opisany w rekomendacji XSL 1.0 z 15 października 2001 r. Źródło: Extensible Stylesheet Language (XSL) Version 1.0, W3C Recommendation 15 October 2001 (http://www.w3.org/tr/xsl/) 2004-11-04 XPath. XSLT część 1 13 2004-11-04 XPath. XSLT część 1 14 Arkusze stylów a przekształcenia Zasada działania przekształcenia XSLT CSS arkusze stylów FOSI XSL faktura PDF DSSSL XSLT faktura HTML przekształcenia XSLT zamówienie faktura Omnimark ustawa (RTF) ustawa (XML) Reguła XSLT: ścieżka XPath określająca węzły, dla których reguła obowiązuje, treść wykonywana w przypadku uruchomienia reguły: tekst i elementy wypisywane na wyjście, instrukcje XSLT. Sposób przetwarzania: wykonaj regułę dla węzła /, reguła może rekurencyjnie wywołać reguły dla innych węzłów. 2004-11-04 XPath. XSLT część 1 15 2004-11-04 XPath. XSLT część 1 16 Arkusz stylów/przekształcenie XSLT Element główny: <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/xsl/transform"> <xsl:import href="..."/> <xsl:output-method="html"/> <xsl:param name="...">...</xsl:param>... </xsl:stylesheet> Output methods: xml, html, text. Określanie arkusza stylów dla dokumentu: <?xml-stylesheet type="text/xsl" href="..."?> Podstawy składni przykład <?xml version="1.0"?> <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/xsl/transform"> <xsl:template match="wiersz"> <poemat> <tytul><xsl:value-of select="@tytul"/></tytul> </poemat> <xsl:template match="zwrotka"> <odstęp/> <xsl:template match="wers"> <p></p> </xsl:stylesheet> 2004-11-04 XPath. XSLT część 1 17 2004-11-04 XPath. XSLT część 1 18

Przekształcenie przykład Wbudowane reguły <wiersz tytul="***"> <zwrotka> <wers>aaa</wers> <wers>bbb</wers> </zwrotka> <zwrotka> <wers>ccc</wers> <wers>ddd</wers> </zwrotka> </wiersz> <poemat><tytul>***</tytul> <p>aaa</p> <p>bbb</p> <odstęp/> <p>ccc</p> <p>ddd</p> <odstęp/> </poemat> <xsl:template match="* /"> <xsl:template match="text() @*"> <xsl:value-of select="."/> <xsl:template match="processing-instruction() comment()"/> 2004-11-04 XPath. XSLT część 1 19 2004-11-04 XPath. XSLT część 1 20 Generowanie dokumentu wyjściowego Elementy i tekst literalnie podane w przekształceniu. Instrukcje generujące: <xsl:value-of select=string-expression/> <xsl:element name=.../> <xsl:attribute name=.../> <xsl:text/> <xsl:processing-instruction name=.../> <xsl:comment/> <xsl:copy/> Przetwarzanie warunkowe: if <xsl:template match="item"> <tr> <xsl:if test="position() mod 2 = 0"> <xsl:attribute name="bgcolor">yellow</xsl:attribute> </xsl:if> </tr> 2004-11-04 XPath. XSLT część 1 21 2004-11-04 XPath. XSLT część 1 22 Przetwarzanie warunkowe: choose <xsl:template match="orderedlist/item"> <xsl:variable name="level" select="count(ancestor::orderedlist) mod 3"/> <xsl:choose> <xsl:when test='$level=1'> <xsl:number format="i"/> </xsl:when> <xsl:when test='$level=2'> <xsl:number format="a"/> </xsl:when> <xsl:otherwise> <xsl:number format="1"/> </xsl:otherwise> </xsl:choose> <xsl:text>. </xsl:text> <xsl:apply-templates> Pętle <xsl:template match="index"> <h1>index</h1> <xsl:for-each select="//keyword"> <p><xsl:value-of select="text()"/></p> </xsl:for-each> 2004-11-04 XPath. XSLT część 1 23 2004-11-04 XPath. XSLT część 1 24

Gdzie szukać dalej The Extensible Stylesheet Language Family: www.w3.org/style/xsl XSLT Tutorial: www.zvon.org/xxl/xsltutorial/output TopXML: www.topxml.com/xsl www.topxml.com/xsltstylesheets 2004-11-04 XPath. XSLT część 1 25