Plan prezentacji XSLT. XSLT Ogólna charakterystyka. Drzewo XML. Wstęp. Przedmiot: XML i jego zastosowania. Zagadnienia podstawowe
|
|
- Franciszek Przybylski
- 9 lat temu
- Przeglądów:
Transkrypt
1 Plan prezentacji Przedmiot: XML i jego zastosowania Wstęp Dr inż. Stanisław Polak Akademia Górniczo - Hutnicza w Krakowie, Katedra Informatyki Przetwarzanie danych 2.0 Dr inż. Stanisław Polak 1 Przedmiot: XML i jego zastosowania Dr inż. Stanisław Polak 2 Przedmiot: XML i jego zastosowania Wstęp Wstęp Ogólna charakterystyka Drzewo XML / (ang. XSL Transformations, Extensible Stylesheet Language Transformations) Przypomina języki funkcyjne Szeroko stosowany przy tworzeniu stron WWW 2 <p r a c o w n i k> 3 <i m i e>jan</ i m i e> <n a z w i s k o>nowak</ n a z w i s k o> 5 <d a t a u r o d z e n i a> 6 <rok>1969</ r o k> 7 <m i e s i a c>maj</ m i e s i a c> 8 <d z i e n>1</ d z i e n> 9 </ d a t a u r o d z e n i a> 10 <! komentarz > 11 <m i e j s c e p r a c y budynek="c1"/> 12 </ p r a c o w n i k> imie Jan nazwisko Nowak rok 1969 pracownik data urodzenia miesiac Maj dzien 1 komentarz miejsce pracy budynek= C1 Dr inż. Stanisław Polak 3 Przedmiot: XML i jego zastosowania Dr inż. Stanisław Polak Przedmiot: XML i jego zastosowania
2 Wstęp Wstęp Arkusz Budowa 1 <? xml version=" 1.0 " e n c o d i n g="utf -8"?> 2 <! Zamiast " xsl:stylesheet " moż na u ż y ć " xsl:transform " > 3 <x s l : s t y l e s h e e t version=" 1.0 " x m l n s : x s l=" http: // /1999/ XSL / Transform " xmlns=" http: // /1999/ xhtml "> 5 <! S z a b l o n > 6 <x s l : template name=" nazwa "> </ x s l : template> <! S z a b l o n d e f i n i o w a n i e r e g u ł y > 11 <x s l : template match="wzorzec"> 12 Dane wynikowe 13 </ x s l : template> </ x s l : s t y l e s h e e t> Dołączanie arkusza Zewnętrznego 2 <?xml-stylesheet t y p e="text /xsl " href=" arkusz. xsl "?> 3 <elementg ł ówny>... 5 </ elementg ł ówny> Wewnętrznego Dokument XML 2 <x s l : s t y l e s h e e t version=" 1.0 " x m l n s : x s l= " http: // /1999/ XSL / Transform " xmlns=" http: // org /1999/ xhtml "> 3... </ x s l : s t y l e s h e e t> arkusz.xsl 2 <? xml s t y l e s h e e t t y p e=" text / xml " h r e f="#id( mojstyl )"?> 3 <elementg ł ówny> <x s l : s t y l e s h e e t version=" 1.0 " x m l n s : x s l=" http: // /1999/ XSL / Transform " id=" mojstyl "> </ x s l : s t y l e s h e e t> </ elementg ł ówny> Dr inż. Stanisław Polak 5 Przedmiot: XML i jego zastosowania Dr inż. Stanisław Polak 6 Przedmiot: XML i jego zastosowania Definiowanie szablonu Element template Aplikowanie reguł Instrukcja apply-templates 1 <! Kategoria: element najwy ż szego poziomu ( top l e v e l element ) > 2 <x s l : t e m p l a t e 3 match = p a t t e r n name = qname 5 priority = number 6 mode = qname> 7 <! Zawarto ś ć : ( xsl: param, szablon ) > 8 </ x s l : t e m p l a t e> 1 <x s l : t e m p l a t e match="/"> 2 <html> 3 <x s l : a p p l y t e m p l a t e s /> </ html> 5 </ x s l : t e m p l a t e> Składnia Definiowanie reguły 1 <! K a t e g o r i a : i n s t r u k c j a > 2 <x s l : a p p l y t e m p l a t e s 3 select = node s e t e x p r e s s i o n mode = qname> 5 <! Zawarto ś ć : ( x s l : s o r t x s l : w i t h param ) > 6 </ x s l : a p p l y t e m p l a t e s> 1 <x s l : t e m p l a t e match="/"> 2 <html> 3 <x s l : apply-templates/> </ html> 5 </ x s l : t e m p l a t e> Składnia Rekurencyjne przetwarzanie wszystkich dzieci węzła / Dr inż. Stanisław Polak 7 Przedmiot: XML i jego zastosowania Dr inż. Stanisław Polak 8 Przedmiot: XML i jego zastosowania
3 Pobieranie wartości węzłów Instrukcja value-of Wstawianie danych testowych Instrukcja text 1 <! K a t e g o r i a : i n s t r u k c j a > 2 <x s l : v a l u e o f 3 select = s t r i n g e x p r e s s i o n disable-output-escaping = " yes " "no"/> Składnia 1 <! K a t e g o r i a : i n s t r u k c j a > 2 <x s l : t e x t 3 d i s a b l e output e s c a p i n g = " yes " "no" <! Zawarto ś ć : #PCDATA > 5 </ x s l : t e x t> Składnia 1 <x s l : t e m p l a t e match=" pracownik "> 2 <x s l : value-of select=" imie "/> 3 <x s l : t e x t> </ x s l : t e x t> <x s l : value-of select=" nazwisko "/> 5 </ x s l : t e m p l a t e> Pobranie imienia i nazwiska 1 <x s l : t e m p l a t e match=" pracownik "> 2 <x s l : v a l u e o f s e l e c t=" imie "/> 3 <x s l : text> </ x s l : text> <x s l : v a l u e o f s e l e c t=" nazwisko "/> 5 </ x s l : t e m p l a t e> Wstawienie spacji pomiędzy imię a nazwisko Dr inż. Stanisław Polak 9 Przedmiot: XML i jego zastosowania Dr inż. Stanisław Polak 10 Przedmiot: XML i jego zastosowania Sterowanie formatem wyprowadzanego wyniku Element output Sterowanie formatem wyprowadzanego wyniku Metody wyprowadzania wyniku 1 <! Kategoria: Element najwy ż szego poziomu > 2 <x s l : o u t p u t 3 method = " xml " " html " " text " qname but not ncname version = nmtoken 5 e n c o d i n g = s t r i n g 6 omit xml d e c l a r a t i o n = " yes " "no" 7 standalone = " yes " "no" 8 doctype p u b l i c = s t r i n g 9 doctype system = s t r i n g 10 cdata s e c t i o n e l e m e n t s = qnames 11 i n d e n t = " yes " "no" 12 media t y p e = s t r i n g /> 1 <x s l : o u t p u t method=" xml " version=" 1.0 " standalone=" yes " encoding="utf -8" omit xml d e c l a r a t i o n="no" doctype p u b l i c=" -// W3C // DTD HTML.01 Transitional // EN " doctype system=" http: // /TR/ html / loose.dtd " i n d e n t="yes " media t y p e=" text / xml "/> 2... Arkusz 1 <x s l : o u t p u t method="html"/> 2 <x s l : t e m p l a t e match="/"> 3 <html> <x s l :processing i n s t r u c t i o n name= php >echo (123)</ x s l :processing i n s t r u c t i o n> 5 <br xmlns=" http: // www. agh. edu.pl/"/> 6 <br /> 7 <j /> 8 <s c r i p t t y p e=" text / javascript " l a n g u a g e=" JavaScript 1.5 "> 9 alert (12 > 6) ; 10 </ s c r i p t> 11 </ html> 12 </ x s l :template> 2 <html><? php echo ( )?><br xmlns=" http: // www. agh. edu.pl/"/><br /><j /><s c r i p t t y p e=" text / javascript " l a n g u a g e =" JavaScript 1.5 "> 3 alert (12 > ; 6) ; </ s c r i p t></ html> method= xml 1 <html> 2 <?php echo (123)><br xmlns=" http: // www. agh. edu.pl/"></br><br><j></ j><s c r i p t t y p e=" text / javascript " l a n g u a g e= " JavaScript 1.5 "> 3 alert (12 > 6) ; </ s c r i p t> 5 </ html> 1 <? xml version=" 1.0 " e n c o d i n g="utf -8" standalone=" yes "?> 2 <! DOCTYPE html PUBLIC " -// W3C // DTD HTML.01 Transitional // EN" " http: // org /TR/ html / loose.dtd "> alert (12 > 6) ; method= html method= text Dr inż. Stanisław Polak 11 Przedmiot: XML i jego zastosowania Dr inż. Stanisław Polak 12 Przedmiot: XML i jego zastosowania
4 Przetwarzanie danych Przetwarzanie danych Metody konwersji dokumentu XML Reguły domyślne Dokument XML oraz XSL na kliencie 1 Klient przekształacanie i wyświetlanie przekształconego dokumentu (Firefox 1.0.2, Opera 9, IE 6, Netscape 8, Mozilla 1.7.8) Dokument XML oraz XSL na serwerze Serwer przekształcanie (PHP, Apache Cocoon,... ) Klient wyświetlanie przekształconego dokumentu Dokument przekształcany przez odrębny program, np.: SAXON obsługuje 1.0, 2.0 oraz 3.0 AltovaXML obsługuje 1,0 oraz 2.0 Apache Xalan obsługuje 1.0 xsltproc obsługuje <x s l : t e m p l a t e match=" * / "> 2 <x s l : a p p l y t e m p l a t e s /> 3 </ x s l : t e m p l a t e> 5 <x s l : t e m p l a t e match=" * / " mode="m"> 6 <x s l : a p p l y t e m p l a t e s mode="m"/> 7 </ x s l : t e m p l a t e> 1 <x s l : t e m p l a t e match=" text 2 <x s l : v a l u e o f s e l e c t="."/> 3 </ x s l : t e m p l a t e> Elementów Atrybutów i węzłów tekstowych 1 <x s l : t e m p l a t e match=" processing - instruction () comment ()"/> Instrukcji przetwarzania i komentarzy 1 Przeglądarki obsługują 1.0, a po zainstalowaniu Saxon-CE, również 2.0 Dr inż. Stanisław Polak 13 Przedmiot: XML i jego zastosowania Dr inż. Stanisław Polak 1 Przedmiot: XML i jego zastosowania Przetwarzanie danych Przetwarzanie danych Ogólny algorytm przetwarzania danych Ogólny algorytm wybierania reguł Utwórz drzewo reprezentujące dokument XML Dołącz reguły domyślne Rozpocznij rekurencyjne przetwarzanie drzewa XML Znajdź najlepiej pasującą regułę i wstaw do drzewa wynikowowego dane zawarte w treści reguły if W treści reguły znajduje się <apply-templates/> then Rozpocznij rekurencyjne przetwarzanie drzewa XML od wskazanego miejsca (gdy wyspecyfikowano wartość atrybutu select ) lub wszystkich elementów potomnych (gdy brak select ) end if if Nie istnieje reguła dla danego kontekstu then zastosuj regułę domyślną return end if if Istnieje dokładnie jedna reguła dla danego kontekstu then zastosuj tę regułę return end if if Istnieje kilka reguł dla danego kontekstu then zastosuj regułę o najwyższym priorytecie return end if if Istnieje kilka reguł dla danego kontekstu o jednakowym priorytecie then zastosuj tę z nich, która występuje najpóźniej w arkuszu return end if Dr inż. Stanisław Polak 15 Przedmiot: XML i jego zastosowania Dr inż. Stanisław Polak 16 Przedmiot: XML i jego zastosowania
5 Przykłady Przetwarzanie danych Przykłady Przetwarzanie danych Przykład 1 Użycie reguł domyślnych / 2 <p r a c o w n i k> 3 <i m i e>jan</ i m i e> <n a z w i s k o>nowak</ n a z w i s k o> 5 <d a t a u r o d z e n i a> 6 <rok>1969</ rok> 7 <m i e s i a c>maj</ m i e s i a c> 8 <d z i e n>1</ d z i e n> 9 </ d a t a u r o d z e n i a> 10 <! komentarz > 11 <m i e j s c e p r a c y budynek="c1"/> 12 </ p r a c o w n i k> 1 <x s l : s t y l e s h e e t version= 1.0 x m l n s : x s l= http: // org /1999/ XSL / Transform > 2 </ x s l : s t y l e s h e e t> Arkusz 2 3 Jan Nowak Maj 8 1 imie Jan nazwisko Nowak rok 1969 pracownik data urodzenia miesiac Maj dzien 1 komentarz miejsce pracy budynek= C1 Dr inż. Stanisław Polak 17 Przedmiot: XML i jego zastosowania Dr inż. Stanisław Polak 18 Przedmiot: XML i jego zastosowania Przykłady Przetwarzanie danych Przykład 2 Użycie własnych reguł Przetwarzanie zbioru elementów po kolei Instrukcja for-each 2 <x s l : s t y l e s h e e t x m l n s :xsl=" http: // /1999/ XSL / Transform " version=" 1.0 "> 3 <x s l : o u t p u t method=" html " i n d e n t=" yes " e n c o d i n g="iso "/> 5 6 <x s l : t e m p l a t e match="/"> 7 <html> 8 <x s l : a p p l y t e m p l a t e s /> 9 </ html> 10 </ x s l :template> <x s l : t e m p l a t e match=" text ()"/> 13 1 <x s l : t e m p l a t e match="pracownik"> 15 <head><t i t l e><x s l :value o f s e l e c t=" imie "/> <x s l : t e x t> </ x s l : t e x t><x s l :value o f s e l e c t=" nazwisko "/></ t i t l e></ head> 16 <body> 17 <h1><x s l :value o f s e l e c t=" imie "/> <x s l : t e x t> </ x s l : t e x t><x s l :value o f s e l e c t=" nazwisko "/> </h1> 18 <x s l : a p p l y t e m p l a t e s /> 19 </ body> 20 </ x s l :template> <xsl:template match="data urodzenia"> Urodzony: <x s l : t e x t> </ x s l : t e x t> 23 <x s l :value o f s e l e c t=" dzien "/><x s l : t e x t> </ x s l : t e x t> <x s l :value o f s e l e c t=" miesiac "/> 2 <x s l : t e x t> </ x s l : t e x t> <x s l :value o f s e l e c t=" rok "/> <br /> 25 </ x s l :template> <xsl:template match="miejsce pracy"> Pracuje w budynku: <xsl:value of s e l e c "/> <br /> </ x s l :template> </ x s l : s t y l e s h e e t> Arkusz 1 <html> 2 <head> 3 <meta http e q u i v=" Content - Type " content=" text / html ; charset =iso "> <title>jan Nowak</ title> 5 </ head> 6 <body> 7 <h1>jan Nowak</h1> Urodzony : 1 Maj 1969<br> Pracuje w budynku : C1<br> 8 </ body> 9 </ html> imie Jan nazwisko Nowak rok 1969 / pracownik data urodzenia miesiac Maj dzien 1 komentarz miejsce pracy budynek= C1 1 <x s l : t e m p l a t e match="/"> 2 <html> 3 <head><t i t l e>customers</ t i t l e></ head> <body> 5 <t a b l e> 6 <tbody> 7 <x s l : for-each select=" customers / customer "> 8 <t r> 9 <th><x s l : a p p l y t e m p l a t e s s e l e c t=" name "/></ th> 10 <x s l : for-each select=" order "> 11 <td><x s l : a p l y t e m p l a t e s /></ p td> 12 </ x s l : for-each> 13 </ t r> 1 </ x s l : for-each > 15 </ tbody> 16 </ t a b l e> 17 </ body> 18 </ html> 19 </ x s l :template> Arkusz 1 <c u s t o m e r s> 2 <customer> 3 <name>...</name> <o r d e r>...</ o r d e r> 5 <o r d e r>...</ o r d e r> 6 </ customer> 7 <customer> 8 <name>...</name> 9 <o r d e r>...</ o r d e r> 10 <o r d e r>...</ o r d e r> 11 </ customer> 12 </ c u s t o m e r s> 1 <html xmlns=" http :// /1999/ xhtml "> 2 <head> 3 <meta http e q u i v=" Content - Type " content=" text / html ; charset = UTF -8"> <title>customers</ title> 5 </ head> 6 <body> 7 <table> 8 <tbody> 9 <tr><th>...</th><td>...</td><td>...</td></tr> 10 <tr><th>...</th><td>...</td><td>...</td></tr> 11 </ tbody> 12 </ table> 13 </ body> 1 </ html> Dr inż. Stanisław Polak 19 Przedmiot: XML i jego zastosowania Dr inż. Stanisław Polak 20 Przedmiot: XML i jego zastosowania
6 Tworzenie elementów i atrybutów Instrukcje element oraz attribute Definiowanie zbioru atrybutów Element attribute-set 1 <x s l : t e m p l a t e match="/"> 2 <x s l : element name="qqq"> 3 <x s l : element name="{//bbb}" namespace=" http: // <x s l : attribute name = "{//CCC}" >a 5 b</ x s l : attribute> 6 <XXX><x s l : attribute name="b" namespace=" http: // www. agh. edu.pl/">a</ x s l : attribute></xxx> 7 </ x s l : element> 8 </ x s l : element> 9 </ x s l : t e m p l a t e> Arkusz 1 <AAA> 2 <BBB>bbb</BBB> 3 <CCC>ccc</CCC> </AAA> 2 <QQQ> 3 <bbb xmlns="http: // ccc="a b"> <XXX xmlns="" x m l n s : n s 1="http: // edu.pl/" n s 1 : b="a"/> 5 </bbb> 6 </QQQ> 1 <x s l : t e m p l a t e match=" chapter / heading "> 2 <f o : b l o c k quadding=" start " x s l : use-attribute-sets=" title - style "> 3 <x s l : a p p l y t e m p l a t e s /> </ f o : b l o c k> 5 </ x s l : t e m p l a t e> 6 <x s l : attribute-set name="title - style "> 7 <x s l : attribute name="font - size ">12 pt</ x s l : a t t r i b u t e> 8 <x s l : attribute name="font - weight ">bold</ x s l : a t t r i b u t e> 9 </ x s l : attribute-set> Definiowanie nazwanego zbioru atrybutów Dr inż. Stanisław Polak 21 Przedmiot: XML i jego zastosowania Dr inż. Stanisław Polak 22 Przedmiot: XML i jego zastosowania Tworzenie instrukcji przetwarzania i komentarzy Instrukcje processing-instruction oraz comment Zliczanie węzłów Instrukcja number 1 <x s l : processing-instruction name="xml - stylesheet ">href= "a. css " type=" text / css "</ x s l : processinginstruction> 2 <x s l : processing-instruction name=" php "> 3 echo ( "<a b="1">c </a>" ) </ x s l : processing-instruction> 5 <x s l : processing-instruction name=" php ">echo ( "?>" ) 6 </ x s l : processing-instruction><! Komunikat bł ę du: " xsl:processing - instruction:?> not allowed within PI content " > 7 8 <x s l : comment>this file is automatically generated. Do not edit!</ x s l : comment> 9 <x s l : comment> </ x s l : comment> <! Komunikat b ł ę d u : " xsl:comment : -- or ending - not allowed in comment " > Arkusz 1 <? xml s t y l e s h e e t h r e f="a. css " t y p e=" text / css "?> 2 <? php 3 echo ( "c" )?> 5 6 <! This f i l e i s a u t o m a t i c a l l y g e n e r a t e d. Do not e d i t! > 7 1 <x s l : t e m p l a t e match=" items "> 2 <x s l : f o r each s e l e c t=" item "> 3 <x s l : s o r t s e l e c t="."/> <p> 5 <x s l : number value=" position ()" format="1. "/> 6 <x s l : v a l u e o f s e l e c t="."/> 7 </p> 8 </ x s l : f o r each> 9 </ x s l : t e m p l a t e> Arkusz 1 <i t e m s> 2 <item>a</ item> 3 <item>b</ item> </ i t e m s> 1 <p>1. a</p> 2 <p>2. b</p> Dr inż. Stanisław Polak 23 Przedmiot: XML i jego zastosowania Dr inż. Stanisław Polak 2 Przedmiot: XML i jego zastosowania
7 Zmienne Instrukcja variable Makrodefinicje 1 <! Zmienna globalna > 2 <x s l : variable name="para -font - size ">12pt</ x s l : variable> 3 <x s l : v a r i a b l e name="para -font - size ">10 pt</ x s l : v a r i a b l e> <! Komunikat b ł ę d u : " redefinition of global variable para -font - size " > 5 <x s l : t e m p l a t e match="/"> 6 <! Zmienne lokalne > 7 <x s l : variable name ="para -font - size ">10pt</ x s l : variable> 8 <x s l : variable name ="para -font - size ">8pt</ x s l : variable> <! Komunikat bł ę du: " - variable: Redefinition of variable para -font -size." > 9 <x s l : v a r i a b l e name =" value " select=" count (/) "/> 10 <f o : b l o c k f o n t s i z e="{$para-font-size}"><x s l : v a l u e o f s e l e c t="$value"/> 11 </ f o : b l o c k> 12 </ x s l : t e m p l a t e> Arkusz 1 <f o : b l o c k f o n t s i z e="10 pt">1</ f o : b l o c k> 1 <x s l : template name ="numbered - block "> 2 <x s l : param name=" format ">1. </ x s l : param> 3 <f o : b l o c k> <x s l : n u m b e r format="{$format}"/> 5 <x s l : a p p l y t e m p l a t e s /> 6 </ f o : b l o c k> 7 </ x s l : template> 8 9 <x s l : t e m p l a t e match="// ol/li"> 10 <x s l : call-template name="numbered - block "> 11 <x s l : with-param name=" format ">a. </ x s l : withparam> 12 </ x s l : call-template> 13 </ x s l : t e m p l a t e> 1 15 <x s l : t e m p l a t e match="// ul/li"> 16 <x s l : call-template name="numbered - block "/> 17 </ x s l : t e m p l a t e> Arkusz 1 <body> 2 <o l> 3 < l i>aaa</ l i> < l i>bbb</ l i> 5 </ o l> 6 <u l> 7 < l i>ccc</ l i> 8 < l i>ddd</ l i> 9 </ u l> 10 </ body> 1 <f o : b l o c k>a. aaa</ f o : b l o c k> 2 <f o : b l o c k>b. bbb</ f o : b l o c k> 3 5 <f o : b l o c k>1. ccc</ f o : b l o c k> 6 <f o : b l o c k>2. ddd</ f o : b l o c k> Dr inż. Stanisław Polak 25 Przedmiot: XML i jego zastosowania Dr inż. Stanisław Polak 26 Przedmiot: XML i jego zastosowania Kopiowanie węzłów Instrukcja copy oraz copy-of 1 <Name> 2 <Family>Smith</ Family> 3 <Given>John</ Given> </Name> 1 <x s l : t e m p l a t e match=" Name "> 2 <x s l : copy/> 3 </ x s l : t e m p l a t e> </ x s l : s t y l e s h e e t> 1 <Name/> Arkusz 1 <x s l : t e m p l a t e match=" Name "> 2 <x s l : copy-of select="."/> 3 </ x s l : t e m p l a t e> </ x s l : s t y l e s h e e t> Arkusz 1 <Name> 2 <Family>Smith</ Family> 3 <Given>John</ Given> </Name> Sortowanie Instrukcja sort 1 <x s l : t e m p l a t e match=" employees "> 2 <u l> 3 <x s l : a p p l y t e m p l a t e s s e l e c t=" employee "> <x s l : sort select=" name / family "/> 5 <x s l : sort select=" name / given "/> 6 </ x s l :apply t e m p l a t e s> 7 </ u l> 8 </ x s l :template> 9 10 <x s l : t e m p l a t e match=" employee "> 11 <l i> 12 <x s l : v a l u e o f s e l e c t=" name / given "/> 13 <x s l : t e x t> </ x s l : t e x t> 1 <x s l : v a l u e o f s e l e c t=" name / family "/> 15 </ l i> 16 </ x s l :template> 17 </ x s l : s t y l e s h e e t> 1 <employees> 2 <employee> 3 <name> <g i v e n>john</ g i v e n> 5 <f a m i l y>doe</ f a m i l y> 6 </name> 7 </ employee> 8 <employee> 9 <name> 10 <g i v e n>james</ g i v e n> 11 <f a m i l y>clark</ f a m i l y> 12 </name> 13 </ employee> 1 </ employees> Szablon 1 <ul> 2 <li>james Clark</li> 3 <li>john Doe</li> </ul> Dr inż. Stanisław Polak 27 Przedmiot: XML i jego zastosowania Dr inż. Stanisław Polak 28 Przedmiot: XML i jego zastosowania
8 Przetwarzanie warunkowe Instrukcja if oraz choose 1 <n a m e l i s t> 2 <name>kowalski</name> 3 <name>nowak</name> <name>smith</name> 5 <name>doe</name> 6 </ n a m e l i s t> 1 <x s l : t e m p l a t e match=" namelist / name "> 2 <x s l : a p p l y t e m p l a t e s /> 3 <x s l : if test=" not ( position ()= last () -1)">, </ x s l : if> </ x s l :template> 1 Kowalski, 2 Nowak, 3 Smith, Doe Arkusz Dokument wynikowy 1 <o r d e r e d l i s t> 2 <l i s t i t e m>kowalski</ l i s t i t e m> 3 <o r d e r e d l i s t> <l i s t i t e m>nowak</ l i s t i t e m> 5 <o r d e r e d l i s t> 6 <l i s t i t e m>polak</ l i s t i t e m> 7 <l i s t i t e m>smith</ l i s t i t e m> 8 </ o r d e r e d l i s t> 9 </ o r d e r e d l i s t> 10 </ o r d e r e d l i s t> 1 <x s l : t e m p l a t e match=" orderedlist / listitem "> 2 <x s l : v a r i a b l e name=" level " s e l e c t=" count ( ancestor::orderedlist ) mod 3"/> 3 <x s l : choose> <x s l : when t e s t= $ level =1 > 5 <x s l : n u m b e r format="i"/> 6 </ x s l : when> 7 <x s l : w h e n t e s t= $ level =2 > 8 <x s l : n u m b e r format="a"/> 9 </ x s l : w h e n> 10 <x s l : otherwise> 11 <x s l : n u m b e r format="1"/> 12 </ x s l : otherwise> 13 </ x s l : choose> 1 <x s l : t e x t>. </ x s l : t e x t> 15 <x s l : a p p l y t e m p l a t e s /> 16 </ x s l :template> 1 i. Kowalski 2 a. Nowak 3 1. Polak 2. Smith Arkusz Dokument wynikowy Importowanie oraz dołączanie arkuszy Instrukcja import oraz include 1 <examples> 2 <example>polak</ example> 3 <example>nowak</ example> <example>kowalski</ example> 5 </ examples> 1 <x s l : t e m p l a t e match=" example "> 2 <p r e><x s l : a p p l y t e m p l a t e s /></ p r e> 3 </ x s l :template> 1 <x s l : import h r e f=" doc. xsl "/> 2 3 <x s l : t e m p l a t e match=" example "> <d i v s t y l e=" border: solid red "> 5 <x s l : apply-imports/> 6 </ d i v> 7 </ x s l :template> Główny arkusz 1 <div style=" border : solid red "><pre>polak</ pre></ div> 2 <div style=" border : solid red "><pre>nowak</ pre></ div> 3 <div style=" border : solid red "><pre>kowalski</ pre></ div> Arkusz doc.xsl 1 <x s l : include h r e f=" doc. xsl "/> 2 3 <x s l : t e m p l a t e match=" example "> <d i v s t y l e=" border: solid red "> 5 <x s l : a p p l y i m p o r t s /> 6 </ d i v> 7 </ x s l :template> Główny arkusz 1 <div style=" border : solid red "></ div> 2 <div style=" border : solid red "></ div> 3 <div style=" border : solid red "></ div> Dr inż. Stanisław Polak 29 Przedmiot: XML i jego zastosowania Dr inż. Stanisław Polak 30 Przedmiot: XML i jego zastosowania Ogólna charakterystyka Obsługa z poziomu przeglądarki WWW Używa XPath 2.0 Obsługuje drzewa tymczasowe Pozwala na grupowanie węzłów i iteracyjne przetwarzanie grup instrukcja for-each-group Można definiować własne funkcje dla wyrażeń ścieżkowych Możliwość generowania wielu dokumentów wyjściowych instrukcja xsl:result-document Możliwość przeszukiwania tekstu z zastosowaniem wyrażeń regularnych instrukcja analyze-string XHTML nowy format wyjściowy dla xsl:output Ulepszone opcje sortowania Możliwość wczytywania plików tekstowych funkcja unparsed-text()... Saxon-CE (Client Edition) darmowa implementacja 2.0 w języku JavaScript Dr inż. Stanisław Polak 31 Przedmiot: XML i jego zastosowania Dr inż. Stanisław Polak 32 Przedmiot: XML i jego zastosowania
9 Przykłady 2.0 Przetwarzanie drzewa tymczasowego 1 <x s l : s t y l e s h e e t version=" 2.0 " x m l n s : x s l=" http: // /1999/ XSL / Transform "> 2 <x s l : o u t p u t method=" xml " i n d e n t=" yes "/> 3 <x s l : t e m p l a t e match="/"> 5 <x s l : v a r i a b l e name=" temp "> 6 <x s l : e l e m e n t name=" root "> 7 <x s l : e l e m e n t name="a">pierwszy</ x s l : e l e m e n t> 8 <x s l : e l e m e n t name="a">drugi</ x s l : e l e m e n t> 9 </ x s l : e l e m e n t> 10 </ x s l : v a r i a b l e> 11 <wynik><x s l : v a l u e o f s e l e c t="$temp/root/a[1]"/></ wynik> 12 </ x s l : t e m p l a t e> 13 1 </ x s l : s t y l e s h e e t> 2 <wynik>pierwszy</ wynik> Arkusz Przykłady 2.0 Grupowanie węzłów 1 <x s l : s t y l e s h e e t x m l n s :xsl=" http: // /1999/ XSL / Transform " version=" 2.0 "> 2 <x s l : o u t p u t method=" html " i n d e n t=" yes "/> 3 <x s l : t e m p l a t e match="/"> 5 <t a b l e> 6 <x s l : for-each-group select=" cities / city " "> 7 <t r> 8 <td><x s l : v a l u e o f s e l e c "/></ td> 9 <td><x s l : v a l u e o f s e l e c " s e p a r a t o r=", "/></ td> 10 <td><x s l : v a l u e o f s e l e c t=" sum )"/></ td> 11 </ t r> 12 </ x s l : for-each-group> 13 </ t a b l e> 1 </ x s l :template> 15 </ x s l : s t y l e s h e e t> Arkusz 1 <? xml v e r s i o n=" 1.0 " e n c o d i n g="utf -8"?> 2 <table> 3 <tr> <td>italy</td> 5 <td>milan, venice</td> 6 <td>6</td> 1 <c i t i e s> 7 </tr> 2 <c i t y name=" milan " c o u n t r y=" italy " pop="5"/> 8 <tr> 3 <c i t y name=" paris " c o u n t r y=" france " pop="7"/> 9 <td>france</td> <c i t y name=" munich " c o u n t r y=" germany " pop=""/> 10 <td>paris, lyon</td> 5 <c i t y name=" lyon " c o u n t r y=" france " pop="2"/> 11 <td>9</td> 6 <c i t y name=" venice " c o u n t r y=" italy " pop="1"/> 12 </tr> 7 </ c i t i e s> 13 <tr> 1 <td>germany</td> 15 <td>munich</td> 16 <td></td> 17 </tr> 18 </ table> Wejściowy dokument HTML Dr inż. Stanisław Polak 33 Przedmiot: XML i jego zastosowania Dr inż. Stanisław Polak 3 Przedmiot: XML i jego zastosowania Przykłady 2.0 Definiowanie funkcji użytkownika Przykłady 2.0 Generowanie wielu dokumentów wyjściowych 1 <x s l : s t y l e s h e e t version=" 2.0 " 2 x m l n s : x s l=" http: // /1999/ XSL / Transform " 3 x m l n s : l o c=" http: // cokolwiek "> 5 <x s l : function name=" loc:silnia "> 6 <x s l : param name="n"/> 7 <x s l : sequence s e l e c t="if ($n< ;=1) 8 then 1 9 else 10 $n * loc:silnia ($n - 1)"/> 11 </ x s l : function> <x s l : t e m p l a t e match="/"> 1 Silnia 10 wynosi <x s l : v a l u e o f s e l e c t=" loc:silnia (10) "/> 15 </ x s l : t e m p l a t e> 16 </ x s l : s t y l e s h e e t> Arkusz 2 <x s l : s t y l e s h e e t x m l n s : x s l=" http: // /1999/ XSL / Transform " version=" 2.0 "> 3 <x s l : o u t p u t method=" html " i n d e n t=" yes " name=" html "/> 5 <x s l : t e m p l a t e match="/"> 6 <x s l : f o r each s e l e c t="// testrun "> 7 <x s l : v a r i a b l e name=" filename " s e l e c t=" concat ( output1 /,@run,. html )" /> 8 <x s l : v a l u e o f s e l e c t="$ filename " /> 9 <x s l : result-document href="{$ filename }" format=" html "> 10 <html> 11 <body><x s l : v a l u e o f s e l e c "/></body> 12 </ html> 13 </ x s l : result-document> 1 </ x s l : f o r each> 15 </ x s l : t e m p l a t e> 16 </ x s l : s t y l e s h e e t> Arkusz 2 <t e s t s> 3 <t e s t r u n run=" test1 "> <t e s t name=" foo " p a s s=" true " /> 5 <t e s t name=" bar " p a s s=" true " /> 6 <t e s t name=" baz " p a s s=" true " /> 7 </ t e s t r u n> 8 <t e s t r u n run=" test2 "> 9 <t e s t name=" foo " p a s s=" true " /> 10 <t e s t name=" bar " p a s s=" false " /> 11 <t e s t name=" baz " p a s s=" false " /> 12 </ t e s t r u n> 13 <t e s t r u n run=" test3 "> 1 <t e s t name=" foo " p a s s=" false " /> 15 <t e s t name=" bar " p a s s=" true " /> 16 <t e s t name=" baz " p a s s=" false " /> 17 </ t e s t r u n> 18 </ t e s t s> 1 Silnia 10 wynosi Dokument wynikowy 1 <html> 2 <body>test1</ body> 3 </ html> output1/test1.html 1 <html> 2 <body>test2</ body> 3 </ html> output1/test2.html 1 <html> 2 <body>test3</ body> 3 </ html> output1/test3.html Dr inż. Stanisław Polak 35 Przedmiot: XML i jego zastosowania Dr inż. Stanisław Polak 36 Przedmiot: XML i jego zastosowania
10 Ogólna charakterystyka Obsługa błędów Working draft. Poprzednia nazwa: 2.1 Używa XPath 3.0 Rozszerzona składnia wzorców w regułach Obsługa błędów instrukcje try / catch Wyrażenia XPath instrukcja evaluate Wsparcie dla przetwarzania strumieniowego... 1 <x s l : r e s u l t document h r e f=" out. xml "> 2 <x s l : v a r i a b l e name=" result "> 3 <x s l : c a l l t e m p l a t e name=" construct - output "/> </ x s l : v a r i a b l e> 5 <xsl:try> 6 <x s l : c o p y o f s e l e c t="$ result " v a l i d a t i o n=" strict "/> 7 <xsl:catch> 8 <x s l : m e s s a g e>warning: validation of result document failed: 9 Error code: <x s l : v a l u e o f s e l e c t="$ err:code "/> 10 Reason: <x s l : v a l u e o f s e l e c t="$ err:description "/> 11 </ x s l : m e s s a g e> 12 <x s l : s e q u e n c e s e l e c t="$ result "/> 13 </xsl:catch> 1 </xsl:try> 15 </ x s l : r e s u l t document> Dr inż. Stanisław Polak 37 Przedmiot: XML i jego zastosowania Dr inż. Stanisław Polak 38 Przedmiot: XML i jego zastosowania Ewaluacja wyrażeń XPath Przetwarzanie strumieniowe 1 <xsl: param name=" sortkey " as=" xs:string " s e l e c "/> <x s l : s o r t> 5 <xsl:evaluate xpath="$ sortkey " as=" xs:string "/> 6 </ x s l : s o r t> 2 <x s l : s t y l e s h e e t version=" 3.0 " 3 x m l n s : x s l=" http: // /1999/ XSL / Transform "> 5 <x s l : t e m p l a t e match="/"> 6 <xsl:stream hre f=" books.xml "> 7 <xsl:iterate s e l e c t="/ books / book "> 8 <x s l : r e s u l t document h r e f="{ concat ( book, position (),.xml )}"> 9 <x s l : c o p y o f s e l e c t="."/> 10 </ x s l : r e s u l t document> 11 <x s l : n e x t i t e r a t i o n /> 12 </xsl:iterate> 13 </xsl:stream> 1 </ x s l : t e m p l a t e> 15 </ x s l : s t y l e s h e e t> Dr inż. Stanisław Polak 39 Przedmiot: XML i jego zastosowania Dr inż. Stanisław Polak 0 Przedmiot: XML i jego zastosowania
11 Źródła Źródła Źródła I Źródła II Patryk Czarnik. XML i nowoczesne technologie zarządzania treścią. Jack Herrington. Tip: Create multiple files in index.html. Evan Lenz. How Works. stylusstudio.com. Introduction to W3C. XSL Transformations () Version W3C. XSL Transformations () Version W3C. XSL Transformations () Version Fundacja Wikipedia. Wolna encyklopedia Wikipedia. Zvon. Tutorial. Dr inż. Stanisław Polak 1 Przedmiot: XML i jego zastosowania Dr inż. Stanisław Polak 2 Przedmiot: XML i jego zastosowania
XML Path Language (XPath)
XML Path Language (XPath) 1 Cel adresowanie elementów /częś ci dokumentu XML składnia podobna do URI wyszukiwanie elementów bądź grup elementów dokument jako drzewo typy węzłów: element, attribute, text
Bardziej szczegółowoJęzyki formatowania dokumentów strukturalnych. XSL przekształcenia XML-a. XSL a XSLT. XSL części składowe. Zasada działania przekształcenia XSLT
Języki formatowania dokumentów strukturalnych XSL przekształcenia XML-a SGML: FOSI (Formatting Output Specification Instance): specyfikacja MIL-PRF-28001, zbyt małe możliwości dla ogólnych zastosowań.
Bardziej szczegółowoSłowem wstępu. Część rodziny języków XSL. Standard: W3C XSLT razem XPath 1.0 XSLT Trwają prace nad XSLT 3.0
Słowem wstępu Część rodziny języków XSL Standard: W3C XSLT 1.0-1999 razem XPath 1.0 XSLT 2.0-2007 Trwają prace nad XSLT 3.0 Problem Zakładane przez XML usunięcie danych dotyczących prezentacji pociąga
Bardziej szczegółowoWprowadzenie do arkuszy stylistycznych XSL i transformacji XSLT
Wprowadzenie do arkuszy stylistycznych XSL i transformacji XSLT Marek Wojciechowski marek@cs.put.poznan.pl http://www.cs.put.poznan.pl/~marek/ Formatowanie dokumentów XML Język XML opisuje strukturę i
Bardziej szczegółowoLABORATORIUM 5 WSTĘP DO SIECI TELEINFORMATYCZNYCH WPROWADZENIE DO XML I XSLT
LABORATORIUM 5 WSTĘP DO SIECI TELEINFORMATYCZNYCH WPROWADZENIE DO XML I XSLT 1. Wstęp XML (Extensible Markup Language Rozszerzalny Język Znaczników) to język formalny przeznaczony do reprezentowania danych
Bardziej szczegółowoXPath XML Path Language. XPath. XSLT część 1. XPath data model. Wyrażenia XPath. Osie (axes) Location paths
XPath XML Path Language XPath. XSLT część 1 Problem: jednoznaczne adresowanie fragmentów struktury dokumentu XML. Rozwiązanie: abstrakcyjny drzewiasty model struktury dokumentu, normalizacja zawartości
Bardziej szczegółowoPlan prezentacji. Krótko o XML Arkusze stylów XSLT XSL XSL Path Przegląd konstrukcji języka i przykłady Narzędzia Podsumowanie Literatura
XSLT Dariusz Dudek 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 Cechy XML a Rozszerzalny język znaczników Stworzony
Bardziej szczegółowoWprowadzenie do XSLT
Tomasz Przechlewski Spis treści 1. Struktura arkusza XSLT... 1 2. Działanie arkusza XSLT... 2 3. Polecenia języka XSLT... 3 4. Zmienne... 5 5. Tworzenie dokumentu wynikowego... 5 6. Wbudowane funkcje...
Bardziej szczegółowoJęzyk XSLT. UEK w Krakowie Janusz Stal & Grażyna Paliwoda-Pękosz. UEK w Krakowie Janusz Stal & Grażyna Paliwoda-Pękosz
Język XSLT Po zrealizowaniu materiału student będzie w stanie Dokonać przekształcenia zawartości dokumentu XML do formatu HTML oraz TXT Realizować przetwarzanie warunkowe dokumentu XML Formatować wartości
Bardziej szczegółowoXPath XML Path Language. XPath. XSLT część 1. XPath data model. Wyrażenia XPath. Location paths. Osie (axes)
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
Bardziej szczegółowoMETAJĘZYKI. Politechnika Koszalińska Wydział Elektroniki i Informatyki Katedra Inżynierii Komputerowej
4 dr inż. Robert Berezowski e-mail: beny@ie.tu.koszalin.pl Ul. Śniadeckich 2 Pokój 223A Politechnika Koszalińska Wydział Elektroniki i Informatyki Katedra Inżynierii Komputerowej 1 XPath nawigacja i wyszukiwanie
Bardziej szczegółowoOgólna struktura dokumentu XSL-FO. Model formatowania. Ogólna struktura dokumentu XSL-FO C.d. Przykład Hello World Użycie szablonu strony
Plan prezentacji Przedmiot: XML i jego zastosowania Dr inż. Stanisław Polak Akademia Górniczo - Hutnicza w Krakowie, Katedra Informatyki Opis układu graficznego stron http://www.icsr.agh.edu.pl/~polak/
Bardziej szczegółowoPrzetwarzanie dokumentów XML i zaawansowane techniki WWW Wykład 04
Plan Przetwarzanie dokumentów XML i zaawansowane techniki WWW Wykład 04 T. Romańczukiewicz Jagiellonian University 2009/2010 Plan Plan 1 XSLT Plan 1 XSLT Wstęp Przykłady Instrukcje sterujace Elementy i
Bardziej szczegółowoPodstawy (X)HTML i CSS
Inżynierskie podejście do budowania stron WWW momat@man.poznan.pl 2005-04-11 1 Hyper Text Markup Language Standardy W3C Przegląd znaczników Przegląd znaczników XHTML 2 Cascading Style Sheets Łączenie z
Bardziej szczegółowoPrzetwarzanie dokumentów XML za pomocą XSLT (30.03.2015 r.)
Przetwarzanie dokumentów XML za pomocą XSLT (30.03.2015 r.) Przetwarzanie dokumentów XML oznacza zwykle, wyłuskanie z nich danych oraz przetwarzanie ich na inny format np HTML lub PDF. Jedną z metod przekształcania
Bardziej szczegółowoXML materiały dydaktyczne - Kurs Podstawowy XSL - wprowadzenie. XSL warstwa przekształcania (XSLT) oraz prezentacji informacji (XSL FO).
XSL (XSLT) Transformacja dokumentów XML. XML warstwa przechowująca informacje XSL warstwa przekształcania (XSLT) oraz prezentacji informacji (XSL FO). Transformacja XSLT utworzenie nowego dokumentu wynikowego
Bardziej szczegółowoKurs WWW Język XML, część II
Język XML, część II Paweł Rajba pawel@ii.uni.wroc.pl http://pawel.ii.uni.wroc.pl/ Zawartość modułu Wprowadzenie do XSL XPath XSLT XSL-FO Na podstawie kursów ze stron: http://www.w3schools.com/xpath/default.asp
Bardziej szczegółowoRodzaje przetwarzania XSLT (1)
XSLT część 2 Rodzaje przetwarzania XSLT (1) Przetwarzanie sterowane strukturą dokumentu źródłowego (ang. push): przechodzimy po strukturze dokumentu źródłowego, generujemy fragmenty struktury dokumentu
Bardziej szczegółowoXSLT. Patryk Czarnik. Instytut Informatyki UW. XML i nowoczesne technologie zarzadzania treścia 2007/08
XSLT Patryk Czarnik Instytut Informatyki UW XML i nowoczesne technologie zarzadzania treścia 2007/08 Patryk Czarnik (MIMUW) 08 XSLT XML 2007/08 1 / 35 Plan 1 XSLT Budowa arkusza Wywoływanie szablonów Instrukcje
Bardziej szczegółowoXSLT. Patryk Czarnik. XML i nowoczesne technologie zarzadzania treścia 2007/08
XSLT Patryk Czarnik Instytut Informatyki UW XML i nowoczesne technologie zarzadzania treścia 2007/08 XSLT Budowa arkusza Wywoływanie szablonów Instrukcje sterujace Tworzenie wyniku Zmienne i parametry
Bardziej szczegółowoExtensible Markup Language III
KIiMK 2010 Plan XSLT-transformacje dokumentów 1 XSLT-transformacjedokumentów Informacje o XSLT Przykład transformacji 2 3 Informacje o XSLT Przykład transformacji Informacje o XSLT Przykład transformacji
Bardziej szczegółowoXML extensible Markup Language 3
XML extensible Markup Language 3 XSL transformations (XSLT) XSLT (ang. extensible Stylesheet Language Transformations) jest opartym na XML językiem transformacji dokumentów XML XSLT umożliwia przetłumaczenie
Bardziej szczegółowoXSLT. Patryk Czarnik. XML i nowoczesne technologie zarządzania treścią 2008/09. Instytut Informatyki UW
XSLT Patryk Czarnik Instytut Informatyki UW XML i nowoczesne technologie zarządzania treścią 2008/09 XSLT status Wersja 1.0 listopad 1999 powiązane z XPath 1.0 Wersja 2.0 styczeń 2007 powiązane z XPath
Bardziej szczegółowoŹródła. cript/1.5/reference/ Ruby on Rails: http://www.rubyonrails.org/ AJAX: http://www.adaptivepath.com/publications/e ssays/archives/000385.
Źródła CSS: http://www.csszengarden.com/ XHTML: http://www.xhtml.org/ XML: http://www.w3.org/xml/ PHP: http://www.php.net/ JavaScript: http://devedgetemp.mozilla.org/library/manuals/2000/javas cript/1.5/reference/
Bardziej szczegółowoPrzetwarzanie dokumentów XML i zaawansowane techniki WWW Przetwarzanie dokumentów XML za pomocą procesora XSLT (Zajęcia r.
Przetwarzanie dokumentów XML i zaawansowane techniki WWW Przetwarzanie dokumentów XML za pomocą procesora XSLT (Zajęcia 06 11.04.2016 r.) Przetwarzanie dokumentów XML oznacza zwykle, wyłuskanie z nich
Bardziej szczegółowoJęzyki XPath i XQuery
Języki XPath i XQuery Patryk Czarnik Instytut Informatyki UW XML i nowoczesne technologie zarzadzania treścia 2007/08 Model danych XPath Drzewo dokumentu Sekwencje i atomy Język XPath Od podstaw Ścieżki
Bardziej szczegółowoXSL, tj. XSLT i XSL-FO czyli jak przekształcać i ładnie wyświetlać XML-e. Kuba Pochrybniak
XSL, tj. XSLT i XSL-FO czyli jak przekształcać i ładnie wyświetlać XML-e Kuba Pochrybniak 1. XML PDF Jak? Jak? L A TEX Jak? L A TEX XSL-FO Jak? L A TEX XSL-FO rzeźbienie ręczne (np. w php) Jak? L A TEX
Bardziej szczegółowoXML extensible Markup Language. część 6
XML extensible Markup Language część 6 XSL transformations (XSLT) XSLT (ang. extensible Stylesheet Language Transformations) jest opartym na XML językiem transformacji dokumentów XML XSLT umożliwia przetłumaczenie
Bardziej szczegółowoPrezentacja i transformacja
Prezentacja i transformacja Bartłomiej Świercz Katedra Mikroelektroniki i Technik Informatycznych Łódź, 21 października 2005 roku 1 Prezentacja Przykładowa aplikacja CSS- Cascading Style Sheets CSS2aXML
Bardziej szczegółowoOPT Open Power Template. System szablonów OPT. Przykładowy skrypt oraz szablon OPT OPT API
OPT Open Power Template System szablonów OPT System szablonów PHP5 Niektóre możliwości: Cache Nagłówki HTTP oraz kompresja Rozszerzalność Struktury kontrolne Wysokopoziomowe struktury Ułatwienia Wysoka
Bardziej szczegółowoIntro. I.Wojnicki, ZTB:XML ZTB: XML. Igor Wojnicki. Katedra Informatyki Stosowanej, Akademia Górniczo-Hutnicza w Krakowie.
Intro Igor Wojnicki (AGH, KIS) XML 18 grudnia 2013 1 / 37 ZTB: XML Igor Wojnicki Katedra Informatyki Stosowanej, Akademia Górniczo-Hutnicza w Krakowie 18 grudnia 2013 Intro Igor Wojnicki (AGH, KIS) XML
Bardziej szczegółowoPlan prezentacji. System szablonów OPT. OPT Open Power Template. System szablonów. Przedmiot: Internet i jego zastosowanie. Wstęp
Plan prezentacji Przedmiot: Internet i jego zastosowanie Dr inż. Stanisław Polak Wyższa Szkoła Zarządzania i Bankowości w Krakowie http://artemis.wszib.edu.pl/~polak/ Wyrażenia Sekcje Bloki Dr inż. Stanisław
Bardziej szczegółowoXSLT. Patryk Czarnik. XML i nowoczesne technologie zarzadzania treścia 2008/09. Instytut Informatyki UW. Patryk Czarnik 08 XSLT XML 2008/09 1 / 1
XSLT Patryk Czarnik Instytut Informatyki UW XML i nowoczesne technologie zarzadzania treścia 2008/09 Patryk Czarnik 08 XSLT XML 2008/09 1 / 1 XSLT status XSLT Wersja 1.0 listopad 1999 powiazane z XPath
Bardziej szczegółowoPrezentacja i transformacja
Prezentacja i transformacja Bartłomiej Świercz Katedra Mikroelektroniki i Technik Informatycznych Łódź, 11 kwietnia 2010 Prezentacja i transformacja CSS2a Ważną cechą dokumentów XML jest ich łatwa prezentacja
Bardziej szczegółowoAplikacje internetowe laboratorium XML, DTD, XSL
Aplikacje internetowe laboratorium XML, DTD, XSL Celem ćwiczenia jest stworzenie dokumentu XML, wyposażenie dokumentu w specyfikację struktury (przy użyciu DTD), oraz transformacja dokumentu XML do postaci
Bardziej szczegółowoXSLT. Patryk Czarnik. XML i nowoczesne technologie zarządzania treścią 2011/12
XSLT Patryk Czarnik Instytut Informatyki UW XML i nowoczesne technologie zarządzania treścią 2011/12 Możliwości XSLT Idea Instrukcje sterujące Sortowanie i grupowanie Tworzenie wyniku Zmienne i parametry
Bardziej szczegółowoXML extensible Markup Language. Paweł Chodkiewicz
XML extensible Markup Language Paweł Chodkiewicz XML - extensible Markup Language Uniwersalny język znaczników przeznaczony do reprezentowania różnych danych w strukturalizowany sposób. Historia GML Projekt
Bardziej szczegółowoAplikacje internetowe laboratorium XML, DTD, XML Schema, XSL
Aplikacje internetowe laboratorium XML, DTD, XML Schema, XSL Celem ćwiczenia jest stworzenie dokumentu XML, wyposażenie dokumentu w specyfikację struktury (przy użyciu DTD i XML Schema), oraz transformacja
Bardziej szczegółowoĆwiczenia laboratoryjne nr 8 Podstawy języka XML.
Prezentacja Danych i Multimedia II r Socjologia Ćwiczenia laboratoryjne nr 8 Podstawy języka XML. Celem ćwiczeń jest poznanie zasad tworzenia dokumentów w oparciu o język XML oraz metod modyfikacji ich
Bardziej szczegółowoJęzyki XPath i XQuery
Języki XPath i XQuery Patryk Czarnik Instytut Informatyki UW XML i nowoczesne technologie zarządzania treścią 2008/09 XPath i XQuery Języki zapytań nad dokumentami XML wygodny wybór określonych węzłów
Bardziej szczegółowoXQuery. XQuery. Przykład. dokument XML. XQuery (XML Query Language) XQuery 1.0: An XML Query Language. W3C Recommendation http://www.w3.
XQuery XQuery XQuery (XML Query Language) XQuery 1.0: An XML Query Language. W3C Recommendation http://www.w3.org/tr/xquery/ Język programowania funkcyjnego (podobnie jak Lisp) Język zapytań do danych
Bardziej szczegółowoPrezentacja dokumentów XML
Prezentacja dokumentów XML Patryk Czarnik Instytut Informatyki UW XML i nowoczesne technologie zarzadzania treścia 2011/12 Patryk Czarnik 06 Prezentacja XML 2011/12 1 / 64 1 Arkusze stylu Rozdzielenie
Bardziej szczegółowoXML extensible Markup Language. część 3
XML extensible Markup Language część 3 CSS Kaskadowe arkusze stylów CSS Kaskadowe arkusze stylów CSS to skrót od Cascading Style Sheets Style pozwalają definiować sposób wyświetlania elementów dokumentu
Bardziej szczegółowoSłuży do wybierania/wyszukiwania fragmentów dokumentu XML. Przypomina trochę ścieżki w systemie operacyjnym. Niech będzie dany dokument XML:
Podstawy XPATH Służy do wybierania/wyszukiwania fragmentów dokumentu XML. Przypomina trochę ścieżki w systemie operacyjnym. Niech będzie dany dokument XML:
Bardziej szczegółowoPlan dzisiejszego wykładu. Narzędzia informatyczne w językoznawstwie. XML - Definicja. Zalety XML
Plan dzisiejszego wykładu Narzędzia informatyczne w językoznawstwie Perl - Wprowadzenie do XML Marcin Junczys-Dowmunt junczys@amu.edu.pl Zakład Logiki Stosowanej http://www.logic.amu.edu.pl 16. kwietnia
Bardziej szczegółowoXML extensible Markup Language. część 8
XML extensible Markup Language część 8 XSL transformations (XSLT) XSLT (ang. extensible Stylesheet Language Transformations) jest opartym na XML językiem transformacji dokumentów XML XSLT umożliwia przetłumaczenie
Bardziej szczegółowoPlan prezentacji DTD. Wiązanie DTD z dokumentem XML Deklaracja typu dokumentu. Co to jest DTD. Wstęp. Przedmiot: XML i jego zastosowania
Plan prezentacji Przedmiot: XML i jego zastosowania Dr inż. Stanisław Polak Akademia Górniczo - Hutnicza w Krakowie, Katedra Informatyki http://www.icsr.agh.edu.pl/~polak/ Wstęp Deklarowanie elementów
Bardziej szczegółowoHTML DOM, XHTML cel, charakterystyka
HTML DOM, XHTML cel, charakterystyka Mariusz Kacała Łukasz Przywarty Grzegorz Trawiński HTML DOM XHTML Ramowy plan prezentacji Wstęp HTML DOM - Założenia - Model i struktura - Właściwości - Metody i zastosowania
Bardziej szczegółowoJęzyki XPath i XQuery
Języki XPath i XQuery Patryk Czarnik Instytut Informatyki UW XML i nowoczesne technologie zarzadzania treścia 2008/09 Patryk Czarnik 07 XPath XML 2008/09 1 / 1 XPath i XQuery Wprowadzenie Status Języki
Bardziej szczegółowoXML extensible Markup Language 7
XML extensible Markup Language 7 XQuery Co to jest XQuery? XQuery to język zapytań dla XML. XQuery jest dla XML tym czym SQL dla baz danych, a SPARQL dla RDF. XQuery wykorzystuje wyrażenia XPath. XQuery
Bardziej szczegółowoWykład 5_2 Arkusze stylów dziedziczenie. Technologie internetowe Zofia Kruczkiewicz
Wykład 5_2 Arkusze stylów dziedziczenie Technologie internetowe Zofia Kruczkiewicz 1. Dziedziczenie stylów Zagnieżdżone elementy dziedziczą styl od elementów zagnieżdżających. Dziedziczenie stylu wynika
Bardziej szczegółowoXML extensible Markup Language. część 4
XML extensible Markup Language część 4 XSL transformations (XSLT) XSLT (ang. extensible Stylesheet Language Transformations) jest opartym na XML językiem transformacji dokumentów XML XSLT umożliwia przetłumaczenie
Bardziej szczegółowoProgramowanie i projektowanie obiektowe
Programowanie i projektowanie obiektowe CherryPy, Genshi Paweł Daniluk Wydział Fizyki Jesień 2016 P. Daniluk(Wydział Fizyki) PO w. IX Jesień 2016 1 / 20 Aplikacje webowe Podejście standardowe Serwer (np.
Bardziej szczegółowoElementarz HTML i CSS
Elementarz HTML i CSS Znaczniki przydatne w pracy redaktora stron internetowych 1 Elementarz HTML i CSS Znaczniki przydatne w pracy redaktora stron internetowych Treść, korekta, skład i oprawa graficzna
Bardziej szczegółowoExtensible Markup Language (XML) Wrocław, Java - technologie zaawansowane
Extensible Markup Language (XML) Wrocław, 15.03.2019 - Java - technologie zaawansowane Wprowadzenie XML jest językiem znaczników (ang. markup language) używanym do definiowania zbioru zasad rozmieszczenia
Bardziej szczegółowoPrzykładowa prezentacja
Akademia Górniczo-Hutnicza w Krakowie Katedra Informatyki 2013-01-23 Stanisław Polak Kraków, 23 stycznia 2013 Aby wyjść z trybu pełnoekranowego, w zależności od przeglądarki PDF, naciśnij Ctrl+L lub ESC.
Bardziej szczegółowoBazy Danych i Usługi Sieciowe
Bazy Danych i Usługi Sieciowe Język PHP Paweł Witkowski Wydział Matematyki, Informatyki i Mechaniki Jesień 2011 P. Witkowski (Wydział Matematyki, Informatyki i Mechaniki) BDiUS w. VIII Jesień 2011 1 /
Bardziej szczegółowoO stronach www, html itp..
O stronach www, html itp.. Prosty wstęp do podstawowych technik spotykanych w internecie 09.01.2015 M. Rad Plan wykładu Html Przykład Strona www Xhtml Css Php Js HTML HTML - (ang. HyperText Markup Language)
Bardziej szczegółowoI.Wojnicki, PHP. Smarty. Igor Wojnicki. Katedra Informatyki Stosowanej Akademia Górniczo-Hutnicza w Krakowie. 28 marca 2014
Igor Wojnicki (AGH, KIS) Smarty 28 marca 2014 1 / 33 Smarty Igor Wojnicki Katedra Informatyki Stosowanej Akademia Górniczo-Hutnicza w Krakowie 28 marca 2014 $Id: smarty.tex,v 1.2 2013/06/22 22:09:45 wojnicki
Bardziej szczegółowoKompozycja Proceduralna
Kompozycja Proceduralna Temat 11: Mechanizm szablonów stron dynamicznych na przykładzie PHP Piotr Habela Polsko-Japońska Wyższa Szkoła Technik Komputerowych 1 Plan prezentacji Role autorów w tworzeniu
Bardziej szczegółowo29. Poprawność składniowa i strukturalna dokumentu XML
29. i strukturalna dokumentu XML 13 października 2015 1 2 Poprawny składniowo dokument XML powinien być tworzony zgodnie z poniżej przedstawionymi zasadami. Deklaracja XML Powinien zawierać deklarację
Bardziej szczegółowoXSLT. Patryk Czarnik. XML i nowoczesne technologie zarzadzania treścia 2011/12. Instytut Informatyki UW. Patryk Czarnik 08 XSLT XML 2011/12 1 / 54
XSLT Patryk Czarnik Instytut Informatyki UW XML i nowoczesne technologie zarzadzania treścia 2011/12 Patryk Czarnik 08 XSLT XML 2011/12 1 / 54 1 Idea Instrukcje sterujace Sortowanie i grupowanie Tworzenie
Bardziej szczegółowoProjektowanie aplikacji w modelu MVC opartej o framework CodeIgniter
Projektowanie aplikacji w modelu MVC opartej o framework CodeIgniter Konfiguracja i przygotowanie przykładowej aplikacji opartej o model Model-View- Controller Konfiguracja frameworka Zainstaluj na serwerze
Bardziej szczegółowoPodstawy XML-a. Zaawansowane techniki programowania
Podstawy XML-a Zaawansowane techniki programowania Dokumenty XML XML = ang. Extensible Markup Language rozszerzalny język znaczników
Bardziej szczegółowoReferat z przedmiotu Technologie Internetowe SPIS TREŚCI
SPIS TREŚCI 1.Dwie metody przekazu danych do serwera 2 2.Metoda GET przykład 3 3.Metoda POST przykład 4 4.Kiedy GET a kiedy POST 5 5.Szablony po co je stosować 7 6.Realizacja szablonu własną funkcją 8
Bardziej szczegółowoTworzenie raportów XML Publisher przy użyciu Data Templates
Tworzenie raportów XML Publisher przy użyciu Data Templates Wykorzystanie Szablonów Danych (ang. Data templates) jest to jedna z metod tworzenia raportów w technologii XML Publisher bez użycia narzędzia
Bardziej szczegółowoSIECI KOMPUTEROWE I BAZY DANYCH
Akademia Górniczo-Hutnicza Wydział Inżynierii Mechanicznej i Robotyki Katedra Robotyki i Dynamiki Maszyn SIECI KOMPUTEROWE I BAZY DANYCH ĆWICZENIE NR 10 Temat: INTERFEJS SYSTEMU BAZODANOWEGO W PHP. BUDOWA
Bardziej szczegółowoAplikacje WWW - laboratorium
Aplikacje WWW - laboratorium JavaServer Pages Celem ćwiczenia jest zbudowanie kilku prostych stron internetowych z użyciem technologii JSP. Podczas ćwiczenia wykorzystany zostanie algorytm sortowania bąbelkowego
Bardziej szczegółowoWYKŁAD 1 METAJĘZYK SGML CZĘŚĆ 1
WYKŁAD 1 METAJĘZYK SGML CZĘŚĆ 1 SGML (Standard Generalized Markup Language) Standardowy uogólniony język znaczników służący do ujednolicania struktury i formatu różnego typu informacji (danych). Twórcy
Bardziej szczegółowoBazy danych. dr Radosław Matusik. radmat
www.math.uni.lodz.pl/ radmat Sortowanie tablic Do sortowania tablic służą funkcje: Sortowanie tablic Do sortowania tablic służą funkcje: sort($tablica) - sortowanie w porządku rosnącym bez kluczy; Sortowanie
Bardziej szczegółowomedia Blitz wydajne sytemy szablonów
Blitz wydajne sytemy szablonów Dlaczego stosować szablony? MVC Kontroler Model Widok Co to jest Blitz? Rozszerzenie PHP stworzone przez Alexey A. Rybak a. Regularnie rozwijany od 2005 roku. Szybki i lekki
Bardziej szczegółowoZałącznik nr 2 do uchwały Nr XXII/ 141 /2013 Rady Gminy Bojszowy z dnia 13.03.2013r. <?xml version="1.0" encoding="utf-8"?>
Załącznik nr 2 do uchwały Nr XXII/ 141 /2013 Rady Gminy Bojszowy z dnia 13.03.2013r.
Bardziej szczegółowoSSK - Techniki Internetowe
SSK - Techniki Internetowe Ćwiczenie 2. Obsługa formularzy. Operatory, instrukcje warunkowe oraz instrukcje pętli w PHP. Obsługa formularzy Skryptu PHP moŝna uŝyć do obsługi formularza HTML. Aby tego dokonać,
Bardziej szczegółowoIOF INTERNET OFFER FORMAT
Załącznik do oferty handlowej IOF INTERNET OFFER FORMAT dla sklepów internetowych wersja 2.5 Nasz sklep działa w oparciu o platformę IAI-Shop. Jedną z głównych i bardzo dla nas ważnych opcji tego systemu
Bardziej szczegółowoProgramowanie internetowe
Programowanie internetowe Wykład 1 HTML mgr inż. Michał Wojtera email: mwojtera@dmcs.pl Plan wykładu Organizacja zajęć Zakres przedmiotu Literatura Zawartość wykładu Wprowadzenie AMP / LAMP Podstawy HTML
Bardziej szczegółowo<body> <div style="max-width: 900px; margin: 0 auto;">
Załącznik Nr 2 do Uchwały Nr XXVII.144.2016 Rady Gminy Brańszczyk z dnia 28 czerwca 2016 roku
Bardziej szczegółowoKurs HTML 4.01 TI 312[01]
TI 312[01] Spis treści 1. Wiadomości ogólne... 3 2. Wersje języka HTML... 3 3. Minimalna struktura dokumentu... 3 4. Deklaracje DOCTYPE... 3 5. Lista znaczników, atrybutów i zdarzeń... 4 5.1 Lista atrybutów
Bardziej szczegółowoTOPIT Załącznik nr 3 Programowanie aplikacji internetowych
Szkolenie przeznaczone jest dla osób chcących poszerzyć swoje umiejętności o tworzenie rozwiązań internetowych w PHP. Zajęcia zostały przygotowane w taki sposób, aby po ich ukończeniu można było rozpocząć
Bardziej szczegółowoUsługi WWW. dr Zbigniew Lipiński Instytut Matematyki i Informatyki ul. Oleska 48 50-204 Opole zlipinski@math.uni.opole.pl
Budowa aplikacji sieciowych. Usługi WWW dr Zbigniew Lipiński Instytut Matematyki i Informatyki ul. Oleska 48 50-204 Opole zlipinski@math.uni.opole.pl Usługi WWW W3C Working Group, Web Services Architecture,
Bardziej szczegółowoSass Rewolucja w CSS +
Sass Rewolucja w CSS + Problemy CSSa Brak zmiennych Brak możliwości wykonywanie obliczeń Brak zagnieżdżeń Brak możliwości wykorzystania kodu ponownie Zarządzanie dużymi projektami jest uciążliwe Prefiksy
Bardziej szczegółowoJęzyki programowania wysokiego poziomu WWW
Języki programowania wysokiego poziomu WWW Zawartość Protokół HTTP Języki HTML i XHTML Struktura dokumentu html: DTD i rodzaje html; xhtml Nagłówek html - kodowanie znaków, język Ciało html Sposób formatowania
Bardziej szczegółowoPlan prezentacji. XML Schema Definition Language (XSD) Zalety i wady Schematów XML. Ogólna charakterytyka XML Schema. Wstęp
Plan prezentacji Przedmiot: XML i jego zastosowania Dr inż. Stanisław Polak Akademia Górniczo - Hutnicza w Krakowie, Katedra Informatyki http://www.icsr.agh.edu.pl/~polak/ Wstęp Dokumenty i Schematy XML
Bardziej szczegółowoNoSQL Not Only SQL: CouchDB. I.Wojnicki, NoSQL. Apache CouchDB has started. Time to relax. Przetwarzanie dokumentów i widoków.
Igor Wojnicki (AGH, KIS) PHP 23 października 2016 1 / 29 NoSQL Not Only SQL: CouchDB Apache CouchDB has started. Time to relax. Przetwarzanie dokumentów i widoków. Igor Wojnicki Katedra Informatyki Stosowanej,
Bardziej szczegółowoSystemy internetowe HTML
Systemy internetowe HTML West Pomeranian University of Technology, Szczecin; Faculty of Computer Science Kwestie organizacyjne Obecność na wykładach nieobowiązkowa Obecność na laboratoriach obowiązkowa
Bardziej szczegółowoFormat HTML. Wybrane działy Informatyki Stosowanej. Definicja i przeznaczenie Struktura dokumentu Znaczniki Formularze i komponenty
Wybrane działy Informatyki Stosowanej Format HTML Definicja i przeznaczenie Struktura dokumentu Znaczniki Formularze i komponenty dr hab. inż. Andrzej Czerepicki 2019 Definicja HTML HyperText Markup Language
Bardziej szczegółowoAkademia Techniczno-Humanistyczna w Bielsku-Białej
Akademia Techniczno-Humanistyczna w Bielsku-Białej Wydział Budowy Maszyn i Informatyki Laboratorium z sieci komputerowych Ćwiczenie numer: 8 Temat ćwiczenia: Tworzenie stron WWW (HTML, skrypty CSS). 1.
Bardziej szczegółowo(Apache) CouchDB. Krzysztof Kulewski 2008
(Apache) CouchDB Krzysztof Kulewski 2008 Czym CouchDB nie jest? Czym CouchDB nie jest? Relacyjną bazą danych Czym CouchDB nie jest? Relacyjną bazą danych Zamiennikiem dla relacyjnej bazy danych Czym CouchDB
Bardziej szczegółowoCzym jest AJAX. AJAX wprowadzenie. Obiekt XMLHttpRequest (XHR) Niezbędne narzędzia. Standardowy XHR. XHR z obsługą baz danych
Czym jest AJAX AJAX wprowadzenie Beata Pańczyk na podstawie: 1. Lis Marcin, Ajax, Helion, 2007 2. Hadlock Kris, Ajax dla twórców aplikacji internetowych, Helion, 2007 AJAX (Asynchronous JavaScript and
Bardziej szczegółowoXML i nowoczesne technologie zarządzania treścią
XML i nowoczesne technologie zarządzania treścią Egzamin, 7 lutego 2014 r. Imię i nazwisko: Czas: 90 minut. Maksymalna suma punktów: 50. Pytania testowe są wielokrotnego wyboru, można przyjąć że co najmniej
Bardziej szczegółowoAPEX zaawansowany raport
APEX zaawansowany raport Raport bazujący na zapytaniu SQL W ramach aplikacji Pierwsza aplikacja stworzymy nowy raport Raport bazujący na zapytaniu SQL W ramach serwisu raport będzie podpięty pod stronę
Bardziej szczegółowoSł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.
Słowem wstępu Standard: W3C XPath 1.0-1999 razem XSLT 1.0 XPath 2.0-2007 razem z XQuery 1.0 i XSLT 2.0 XPath 3.0-2014 trwają prace nad XPath 3.1 XPath Język deklaratywny służący wskazywaniu elementów,
Bardziej szczegółowoJęzyki i Techniki Programowania II. Wykład 13. TRaX, Applety, Java Security
Języki i Techniki Programowania II Wykład 13 TRaX, Applety, Java Security XPath javax.xml.xpath XPathFactory factory = XPathFactory.newInstance() (DEFAULT_OBJECT_MODEL_URI) XPath xp = factory.newxpath()
Bardziej szczegółowoTworzenie Stron Internetowych. odcinek 10
Tworzenie Stron Internetowych odcinek 10 JavaScript JavaScript (ECMAScript) skryptowy język programowania powszechnie używany w Internecie. Skrypty JS dodają do stron www interaktywność i funkcjonalności,
Bardziej szczegółowoXPath i XQuery. Patryk Czarnik. XML i nowoczesne technologie zarządzania treścią 2011/12. Wprowadzenie Status Model danych XPath
XPath i XQuery Patryk Czarnik Instytut Informatyki UW XML i nowoczesne technologie zarządzania treścią 2011/12 Wprowadzenie Status Model danych XPath Język XPath od podstaw Od podstaw Ścieżki XPath 1.0
Bardziej szczegółowoXPath XML Path Language. XSL Extensible Stylesheet Language. Wyrażenia XPath. XPath data model. Location paths. Osie (axes)
XPath XML Path Language 6 listopada 2003 XSL Extensible Stylesheet Language Problem: jednoznaczne adresowanie fragmentów struktury dokumentu XML. Rozwiązanie: drzewiasty model struktury dokumentu, normalizacja
Bardziej szczegółowoXML extensible Markup Language. część 5
XML extensible Markup Language część 5 JavaScript Co to jest JavaScript? JavaScript był zaprojektowany w celu dodania interaktywności do stron HTML JavaScript jest językiem skryptowym JavaScript jest zwykle
Bardziej szczegółowoBazy Danych - Instrukcja do Ćwiczenia laboratoryjnego nr 8
Bazy Danych - Instrukcja do Ćwiczenia laboratoryjnego nr 8 Bazowy skrypt PHP do ćwiczeń z bazą MySQL: Utwórz skrypt o nazwie cw7.php zawierający następującą treść (uzupełniając go o właściwą nazwę uŝytkownika
Bardziej szczegółowoplansoft.org Zmiany w Plansoft.org
Zmiany w Plansoft.org Mapy Google... 1 Tworzenie mapy... 2 Wprowadzanie szerokości i długości geograficznej... 2 Tworzenie mapy... 2 Dostosowanie wyglądu mapy... 3 Ograniczanie liczby zasobów do wyświetlenia
Bardziej szczegółowoKaskadowość stylów określa pierwszeństwo w oddziaływaniu na te same elementy strony różnych stylów.
Kaskadowe arkusze stylów Kaskadowe arkusze stylów CSS (Cascading Style Sheets) służą do definiowania sposobu wyświetlania elementów HTML. Pozwalają np. określać rozmiar i kolor czcionki, definiować odstępy
Bardziej szczegółowo