Vysoká škola ekonomická v Praze
|
|
- Lubomír Matoušek
- před 9 lety
- Počet zobrazení:
Transkript
1 Vysoká škola ekonomická v Praze Fakulta informatiky a statistiky Vyšší odborná škola informačních služeb v Praze Generování webových stránek z XML dokumentů pomocí jazyka XSL Vypracoval: Martin Burda Vedoucí práce: Ing. David Klimánek, Ph.D. Rok vypracování: 2009
2 Prohlášení Prohlašuji, že jsem bakalářskou práci na téma Generování webových stránek z XML dokumentů pomocí jazyka XSL zpracoval samostatně a použil pouze zdrojů, které cituji a uvádím v seznamu použité literatury. Nemám závažný důvod proti užití této práce ve smyslu 60 Zákona č. 121/2000 Sb. o právu autorském, o právech souvisejících s právem autorským a o změně některých zákonů (autorský zákon). V Praze dne 12. května 2009
3 Poděkování Rád bych poděkoval všem, kteří se podíleli na zdárném dokončení této bakalářské práce svými připomínkami či radami.
4 Obsah 1 Úvod Oddělení obsahu a vzhledu dokumentu Dobře zformovaný XML dokument XML dokument se skládá z tagů a obsahu Validní dokument Průběh transformace Transformace na straně serveru (server-side) Transformace na straně klienta (client-side) Jazyk XSL XSL - transformační skripty (XSLT) XPath jazyk pro navigaci v XML dokumentech Vztahy mezi prvky XML dokumentu Struktura XPath dotazů Funkce jazyka XPath Realizace vlastního projektu Použité technologie Datová struktura zobrazovaných informací Struktura XSLT skriptů zpracujících XML Volání transformační funkce z PHP Závěrečné zhodnocení Literatura
5 ABSTRAKT Jazyk XML je řešením pro definování struktury dokumentů, která je nezávislá na platformě případně proprietární technologii. Využívá znakovou sadu ISO 10646, která dokáže obsáhnout všechny dnes používané znaky všech jazyků. Tyto dvě vlastnosti jsou dostatečně pádnými důvody, proč jazyk XML využívat ve větší míře než dosud a to zvláště u dokumentů, v nichž je potřeba vyhledávat informace. Pomocí XML tagů dokážeme jednotlivým částem textu přiřadit význam, který je čitelný nejen pro člověka, ale i pro stroj. Dokumenty označkované jazykem XML jsou informačně bohatší, přinášejí přehlednější strukturu a možnost správnost této struktury automaticky kontrolovat. Klíčová slova: XML, XPath, XSL, XSLT, DTD, datový typ, XML schéma ABSTRACT XML language is a solution for structure of documents definition which is platform or proprietary technology nondependent. As a character set ISO is used which is able to contain all characters of all languages used worldwide. These two characteristics are cogent arguments to use XML language more than usual, especially with documents with high need of search-through. Using XML tags we re able to give a meaning to text parts which is intelligible to both human and computer. XML tagged documents are richer with information, bring more transparent structure and the possibility to automatically control the structure correctness. Keywords: XML, XPath, XSL, XSLT, DTD, data type, XML schema 6
6 Úvod 1 Úvod Dnešní stav sítě Internet je z dlouhodobého hlediska neudržitelný. Je to obrovská změť dokumentů, která nemá logické uspořádání a s neustále se zvětšujícím množstvím obsahu v síti Internet se stává vyhledávání informací stále obtížnější procedurou, k níž jsou potřeba stále sofistikovanější a výpočetně náročnější metody. Tento stav vychází ze dvou faktorů: síť Internet byla navržena pro početně "malou" akademickou komunitu a pro snadné publikování a sdílení výsledků vědeckých prací. Využití technologie hypertextu je pak druhým faktorem, který přináší chaos v síti, protože umožňuje propojit jakékoliv dokumenty nehledě na jejich obsah nebo strukturu. Tím je vytvářen decentralizovaný systém uspořádání dokumentů, který sám o sobě vyhledávání činí náročnějším. Tuto náročnost ještě zvyšuje fakt, že drtivá většina dokumentů v síti Internet je tvořena pomocí jazyka (X)HTML, který popisuje pouze logickou strukturu dokumentu, nikoli však význam jeho jednotlivých částí. Jazyk XML je řešením pro definování struktury dokumentů, která je nezávislá na platformě případně proprietární technologii. Využívá znakovou sadu ISO 10646, která dokáže obsáhnout všechny dnes používané znaky všech jazyků. Tyto dvě vlastnosti jsou dostatečně pádnými důvody, proč jazyk XML využívat ve větší míře než dosud a to zvláště u dokumentů, v nichž je potřeba vyhledávat informace. Pomocí XML tagů dokážeme jednotlivým částem textu přiřadit význam, který je čitelný nejen pro člověka, ale i pro stroj. 5
7 Úvod Dokumenty označkované jazykem XML jsou informačně bohatší, přinášejí přehlednější strukturu a možnost správnost této struktury automaticky kontrolovat. Jazyk XML může přinést do chaotického světa Internetu skutečnou revoluci. Stejně jako jsme schopni pomocí jazyka SQL velmi rychle a efektivně získat přesné informace z databáze, je možné s využitím jazyka XML se stejnou rychlostí a efektivitou získat přesné informace z Internetu, což nám při práci s tímto médiem ušetří mnoho času, protože velkou část posouzení přesnosti nalezených informací může vykonávat přímo vyhledávací systém nikoli uživatel. 6
8 Oddělení obsahu a vzhledu dokumentu 2 Oddělení obsahu a vzhledu dokumentu Každý dokument se dá posoudit ze dvou úhlů pohledu. Jednak z hlediska obsahu dokumentu a jednak z hlediska jeho vzhledu. Dokumenty, které jsou závislé na obsahu a nikoliv na vzhledu, mají hned několik výhod. První výhodou je vyhledávání. Dokument, který se skládá ze dvou na sobě nezávislých částí, může být snadněji prohledáván, protože vyhledávací systém může procházet pouze tu část dokumentu, která obsahuje informace, o které má uživatel nebo aplikace, která data potřebuje ke svému běhu, zájem. To se odrazí jednak v rychlosti vyhledávání, jednak v relevanci nalezených výsledků. Druhou výhodou je možnost přiřadit jednotlivým částem dokumentu odpovídající sémantiku. Sémantika velice úzce souvisí opět s vyhledáváním. V dokumentech, které mají sémanticky definovanou strukturu je totiž vyhledávání skutečně snadné. Podle schématu dokumentu (pro XML a SGML dokumenty tzv. Document type definition, bude zmiňováno dále) známe, jaké části s jakým významem dokument obsahuje, což proces vyhledávání usnadní a zrychlí. Další výhodou dokumentů, které mají oddělený obsah a formu je možnost propojit jeden dokument s různými předpisy pro vzhled, které pak udávají, jakým způsobem se dokument bude prezentovat. To je velmi důležité právě dnes, kdy se k dokumentům (obzvlášť v síti Internet) přistupuje z různých zařízení. Prohlížení webových dokumentů již dávno není doménou pouze osobních počítačů, ale nejrůznějších přenosných 7
9 Oddělení obsahu a vzhledu dokumentu zařízení jako PDA, mobilních telefonů, komunikátorů apod. Jeden dokument tak může být korektně zobrazen na libovolném zařízení aniž by musel obsahovat speciální definice, které zařízení pro zobrazení dokumentu potřebuje. Ty jsou uloženy zvlášť. Takto získané dokumenty mají jeden datový základ, který je tedy nezávislý na platformě nebo softwaru, kterým data interpretujeme. Změny obsahu v takto postavených dokumentech se pak provádějí velmi snadno. Stačí upravit pouze obsahovou část dokumentu, přičemž způsobu zobrazení na jakémkoliv zařízení se změna vůbec nedotkne. Změny týkající se vzhledu pak fungují na stejném principu. Pokud chceme upravit zobrazení pouze pro některé zařízení, stačí upravit pouze příslušný předpis pro formátování dokumentu. Datová část tak zůstane beze změn, což nám garantuje, že se dokument zobrazí korektně i na ostatních zařízeních. 8
10 Dobře zformovaný XML dokument 3 Dobře zformovaný XML dokument Přestože jazyk XML umožňuje použít nekonečné množství tagů a jejich atributů, je potřeba následovat určitá pravidla, aby dokument byl dobře zformován. Pokud dokument není dobře zformován, jakýkoliv XML parser při čtení dokumentu vrátí chybové hlášení. XML specifikace přísně zakazuje, aby se parser pokusil chybu opravit nebo přeskočit. Jediné, co je XML parseru povoleno, je vrátit hlášení o chybě[1]. Pravidel, která je nutno dodržet k dosažení napsání dobře zformovaného dokumentu je více než 100. Naštěstí drtivá většina těchto pravidel zakazuje používání syntaxe, kterou by nepoužil ani XML začátečník. Uvedu proto pět základních (a nejčastěji porušovaných) pravidel. 3.1 XML dokument se skládá z tagů a obsahu V XML (na rozdíl od HTML) jsou všechny elementy párové, což znamená, že neexistuje neukončený tag. Názvy tagů mohou být voleny libovolně a nesmí obsahovat mezery a jsou citlivé na velká a malá písmena Použití atributů Informace, která se objevuje pouze jednou, může být v počátečním tagu zapsána formou atributu. 9
11 Dobře zformovaný XML dokument V následujícím případě je jako atribut zapsán název produktu: <?xml version= 1.1?> <produkt nazev= Preventan > <hmotnost>5,8g</hmotnost> <typ>tablety</typ> <mnozstvi>30ks</mnozstvi> <expirace> </expirace> <vyrobce>svus Pharma a.s.</vyrobce> </produkt> Dokument obsahuje jeden a pouze jeden kořenový element Předchozí ukázka kódu obsahuje šest elementů. Element <produkt> je v tomto případě kořenovým tagem, protože je ve stromové struktuře dokumentu postaven nejníže a celý dokument je v tomto tagu uzavřen Elementy mají stromovou strukturu Dokument začíná kořenovým elementem a ostatní jsou jeho potomky. V ukázce č. 1 jsou potomky kořenového elementu <produkt> všechny ostatní elementy. Každý z nich může obsahovat libovolný počet potomků a tím se nám tvoří ona stromová struktura, která může být rekurzivně procházena až na úroveň nejvýše postavených elementů, které již neobsahují žádné potomky. 10
12 Dobře zformovaný XML dokument Elementy mohou být prázdné Prázdné elementy se nemusí skládat z počátečního a uzavíracího tagu, ale mohou být tvořeny pouze jedním tagem, který je uvnitř ukončen lomítkem: <produkt nazev= Preventan /> V této ukázce je element <produkt> prázdný, nicméně obsahuje v atributu svůj název. Dá se na něj tedy nahlížet tak, že známe produkt Preventan, ale nemáme o něm žádné informace Dokument může (a měl by) být uvozen deklarací jazyka XML Deklarace jazyka XML je vždy v prvním řádku dokumentu a minimálně by měla obsahovat toto: <?xml version= 1.1?> Název tagu (xml) a atribut (version= ) jsou rezervovanými slovy jazyka. Deklarace dále může obsahovat instrukce pro zpracování dokumentu, které jsou předávány aplikaci, která dokument zpracovává[2]. 3.2 Validní dokument Hlavním argumentem, proč vytvářet validní dokumenty, je možnost automatické kontroly jejich obsahu. To je výhodné 11
13 Dobře zformovaný XML dokument převážně u dokumentů, které jsou používány opakovaně. Dokumentu, který je navržen pro opakovanou distribuci, jeho validita zaručuje, že nebude nikdy obsahovat jiná data, než ta, která jsou popsána v tzv. Document type definition (DTD) Document type definition Validní dokument je takový, který vyhovuje své DTD, kterou má definovánu v hlavičce[3]. DTD je sada pravidel, která určují strukturu XML dokumentu. Pomocí tohoto nástroje je možné přesně definovat, jaké elementy a atributy dokument může obsahovat. DTD se zabývá i jejich potomky a atributy, případně počtem jejich výskytů. Deklaraci typu dokumentu je možné zadávat dvěma způsoby. 12
14 Dobře zformovaný XML dokument První možností, je deklaraci uvést uvnitř dokumentu, na jeho začátku: <?xml version= 1.1?> <!DOCTYPE produkt (hmotnost, typ, mnozstvi, expirace, vyrobce) [ <!ATTLIST produkt nazev CDATA #REQUIRED> <!ELEMENT hmotnost (#PCDATA)> <!ELEMENT typ (#PCDATA)> <!ELEMENT mnozstvi (#PCDATA)> <!ELEMENT expirace (#PCDATA)> <!ELEMENT vyrobce (#PCDATA)> ]> <leciva> <produkt nazev= Preventan > <hmotnost>5,8g</hmotnost> <typ>tablety</typ> <mnozstvi>30ks</mnozstvi> <expirace> </expirace> <vyrobce>svus Pharma a.s.</vyrobce> </produkt> </leciva>!doctype produkt definuje název kořenového elementu XML dokumentu a v kulaté závorce jsou uvedeny elementy, které může obsahovat.!attlist definuje elementu produkt atribut záznam, který obsahuje textovou informaci, která nebude vyhodnocována parserem (CDATA) a položka #REQUIRED vyjadřuje, že hodnota musí být zadána. 13
15 Dobře zformovaný XML dokument!element pak definuje názvy jednotlivých elementů. Uvnitř každého elementu se můžou nacházet 2 druhy obsahu, což můžeme také ovlivnit pomocí DTD: elementový obsah element obsahuje další elementy a žádný text. Znamená to, že má potomky s libovolným obsahem (smíšeným nebo elementovým), ale on sám textová data neobsahuje. Pouze elementy. Deklarace takového elementu by pak vypadala například takto: <!ELEMENT osoba (jmeno, prijmeni, vek, vaha, vyska)> smíšený obsah element obsahuje znaková data (text), případně znaková data a další elementy. V obou případech hovoříme o smíšeném obsahu. Klíčové slovo #PCDATA vzniklo z pojmu parsed character data a udává, že se jedná o text, který bude vyhodnocován XML parserem. Takto vypadá deklarace pro element, který obsahuje pouze znaková data: <!ELEMENT osoba (#PCDATA)> Element, který obsahuje znaková data i další elementy, je deklarován takto: <!ELEMENT osoba (#PCDATA jmeno prijmeni vek vaha vyska)*> V tomto případě musí být názvy jednotlivých potomků odděleny svislou čárou a musí být udán libovolný počet výskytů těchto elementů. V případě elementu se smíšeným obsahem tedy není možné řídit počet výskytů potomků. 14
16 Dobře zformovaný XML dokument Druhou možností, jak vložit do XML dokumentu deklaraci jeho typu, je použít odkaz na externí soubor. Ten se ukládá s příponou *.dtd a je výhodné, umisťovat jej do stejného adresáře, ve kterém se nachází XML soubor, na který má být toto DTD aplikováno[4]. Tento způsob deklarace vypadá takto: <!DOCTYPE produkt SYSTEM "produkt.dtd"> Je možné využít i absolutní cestu a *.dtd soubor načítat http protokolem z webového serveru. Pak by cesta k souboru vypadala např. takto: Proces validace dokumentu pak spočívá v tom, že parser prochází XML dokument a porovnává ho oproti uvedenému DTD. V případě, že XML dokument obsahuje pouze povolené výskyty povolených elementů a jejich atributů, zobrazí jej a případně ho předá na další zpracování. Pokud však XML dokument nevyhovuje svému DTD, parser vrátí chybu a ukončí svoji činnost. Dokument pak není dále zpracováván[5]. XML dokumenty s uvedením DTD tedy obsahují jakýsi automatický kontrolní mechanismus. U dokumentů, které mají pevně danou strukturu a je obměňován pouze jejich obsah, je DTD mocným nástrojem k zachování integrity dokumentů po celou dobu jejich používání. 15
17 Průběh transformace 4 Průběh transformace Základní podmínkou pro provedení transformace XML do jiného formátu je přítomnost XLST procesoru na stroji, kde se má transformace provést. XSLT procesor je program, který na vstupu přijímá dva soubory. XML dokument jako zdroj dat a XSL styl jako předpis pro transformaci dat[6]. Základní schéma popisující proces transformace XML dokumentu do jiných formátů je naznačeno na obr. 1: Obr.1: Schéma XSLT transformace 16
18 Průběh transformace 4.1 Transformace na straně serveru (server-side) XSLT procesor může být nainstalován na serveru, kde se provede zpracování dokumentu ještě před jeho odesláním uživateli. Je nezávislý na použité serverové technologii. Většina XSLT procesorů je napsaná v jazycích Java nebo C++ (Saxon, XT, Sablotron). Pomocí serverové skriptovací technologie (nejčastěji PHP, ASP nebo ColdFusion) je pak volán pro zpracování instrukcí obsažených v XSL dokumentu a jejich aplikace na vstupní dokument XML[7]. Uživateli je pak odeslán dokument, který je výsledkem transformačního procesu. Toto řešení má nespornou výhodu v nezávislosti na technologiích, které používá koncový uživatel, protože celý proces probíhá na serveru. Uživatel tedy nevidí, co se s daty děje, před jejich doručením. 17
19 Průběh transformace Schéma takovéto architektury je naznačeno na obr. 2: schéma server-side transformace: Obr. 2: Schéma server-side transformace 4.2 Transformace na straně klienta (client-side) Tento způsob transformace XML dokumentů je mnohem pohodlnější, protože nevyžaduje žádné speciální serverové moduly a jejich nastavení. Je ovšem závislý na podpoře XSLT na straně klientského zařízení. Tato nevýhoda v dnešní době ustupuje víceméně do pozadí, protože drtivá většina dnes používaných prohlížečů podporu XSLT obsahuje. 18
20 Průběh transformace Nejjednodušším způsobem provedení transformace pomocí klientského softwaru je definovat použitý styl a jeho umístění přímo v hlavičce XML souboru: <?xml version= 1.1?> <?xml-stylesheet type="text/xsl" href="produkty.xsl"?> <leciva> <produkt nazev= Preventan > <hmotnost>5,8g</hmotnost> <typ>tablety</typ> <mnozstvi>30ks</mnozstvi> <expirace> </expirace> <vyrobce>svus Pharma a.s.</vyrobce> </produkt> </leciva> Druhý způsob transformace spočívá ve využití Javascriptu. Toto řešení je závislé na implementaci Javascriptu v použitém prohlížeči. Nelze ho proto doporučit pro generování obsahu, který má za cíl být zobrazován na nejrůznějších zobrazovacích zařízeních. Dnes používané webové prohlížeče Javascript plně podporují. Za poslední tři roky je však trendem přistupovat k informacím na webu pomocí nejrůznějších mobilních zařízení. Tato zařízení většinou podporu Javascriptu (popřípadě XSLT) nemají. Obsah by tudíž zůstal uživatelům těchto přístrojů nepřístupný. Z tohoto důvodu lze striktně doporučit nasazení XSLT na straně serveru, protože odesílá obsah v XHTML, které je podporováno téměř všemi přístroji přistupujícími na web. 19
21 Jazyk XSL 5 Jazyk XSL Jazyk XSL byl původně vyvíjen jako prostředek pro definici vzhledu XML dokumentů, které samy o sobě svůj vzhled nedefinují. Je jak- ousi paralelou kaskádových stylů (CSS) a jejich aplikací na XHTML dokumenty. Jako standard konsorcia W3C byl přijat v roce V jazyce XML jsou pro popis dat používány tagy, které si uživatel jazyka vytváří sám. XML dokument bez definice stylů v jazyce XSL je tedy prohlížečem zobrazen ve své stromové struktuře. Pro přehlednost zobrazovaných dat bývá zpravidla použito základní formátování, které je definováno v použitém prohlížeči. Jazyk XSL obsahuje formátovací část a transformační část. Každá z těchto částí je aplikací jazyka XML. Vycházejí z jeho syntaxe a samozřejmě ji striktně dodržují. Znamená to, že XSL styl je vlastně taktéž dobře zformátovaný dokument, stejně jako dokument v XML[3]. Obě tyto části mohou fungovat samostatně a jsou na sobě nezávislé. Například transformační skript může XML dokument převést do validního XHTML dokumentu a při tom naprosto ignorovat XSL formátovací objekty. 20
22 Jazyk XSL 5.1 XSL - transformační skripty (XSLT) XSLT šablony XSLT šablona obsahuje pravidlo, podle kterého rozpoznává uzly v dokumentu, na které má aplikovat definovanou akci. Když XSLT procesor transformuje dokument pomocí XSL stylopisu, prochází zdrojový XML dokument od kořene, po jednotlivých uzlech až k uzlům nejvyšší úrovně. Ve chvíli, kdy jsou všechny uzly dokumentu přečteny a XSLT procesor má v paměti načtenou stromovou strukturu dokumentu, porovná každý uzel se všemi šablonami v XSL stylopisu[6]. V případě, že najde odpovídající šablonu, aplikuje na uzel akci, která je v šabloně definována. Akcí je myšlen zpravidla popis dat, která uzel obsahuje, XHTML kódem Struktura XSL dokumentu Kořenovým elementem XSL šablony je rezervované slovo stylesheet náležící do jmenného prostoru Tomuto jmennému prostoru náleží prefix xsl. Struktura XSL dokumentu pak vypadá takto: <?xml version="1.0"?> <xsl:stylesheet version="1.0" xmlns:xsl=" místo pro šablony a zpracující instrukce </xsl:stylesheet> 21
23 Jazyk XSL První řádek kódu podává důkaz o tom, že se jedná o XML dokument. Platí pro něj tedy také to, že musí být dobře zformován a všechna další pravidla pro vytváření dokumentů v XML formátu. Druhý řádek je kořenovým tagem dokumentu obsahující kromě názvu kořenového tagu stylesheet i deklaraci jmenného prostoru Struktura XSL šablony Šablona je uzavřena v tagu <xsl:template>. Tento tag má povinný atribut match, jehož obsahem je název uzlu v XML dokumentu, na který bude aplikován obsah šablony. Šablona pro aplikaci instrukce na kořenový element tedy vypadá takto: <xsl:template match="/"> <html> <head> </head> <body> </body> </html> </xsl:template> Prvním uzlem v XML dokumentu, na který XSLT procesor narazí je kořenový element. V XSL šabloně je označen lomítkem, takže atribut match obsahuje pouze toto lomítko[3]. Na základě této šablony tedy XSLT procesor vrátí html kód, který je uzavřen uvnitř. Stejně jako kořenový element obaluje všechny ostatní potomky v XML dokumentu, tak bude 22
24 Jazyk XSL vrácený html kód obalovat další obsah uvnitř výstupu. Tímto jednoduchým zápisem tak získáme kostru HTML dokumentu Zpracování potomků elementu Pro zpracování zdrojového dokumentu do celé jeho hloubky je využíván element xsl:apply-templates. Jeho umístění do místa výstupu jiného elementu způsobuje, že XSLT procesor porovnává všechny jeho potomky se šablonami ve stylopisu. Použití tohoto elementu vypadá takto: <?xml version="1.0"?> <xsl:stylesheet version="1.0" xmlns:xsl=" <xsl:template match="/"> <html> <xsl:apply-templates/> <!-- prochází potomky / --> </html> </xsl:template> <xsl:template match="leciva"> <!-- nalezne-li mezi potomky tag leciva --> <body> <xsl:apply-templates/> </body> </xsl:template> <xsl:template match="preventan"> <!-- nalezne-li mezi potomky tag Preventan --> Preventan <! vypise slovo Preventan na vystup --> </xsl:template> </xsl:stylesheet> 23
25 Jazyk XSL Výběr konkrétního potomka uzlu (atribut select) K výběru pouze některého potomka, který má být porovnáván se šablonami ve stylopisu slouží atributu select. Použití atributu select vypadá následovně: <xsl:template match="produkt"> <xsl:apply-templates select="expirace"/> </xsl:template> Tento zápis tedy způsobí, že po zpracování uzlu <produkt>, se jako další uzel pro porovnávání se šablonami v XSLT stylopisu, použije potomek uzlu <produkt> s názvem <expirace> Výpis hodnoty uzlu do výstupního dokumentu Tato instrukce přečte a zkopíruje obsah uzlu do výstupního dokumentu. Je kombinována s atributem select. Pro příklad uvádím jednoduchou instrukci, která vypíše z každého uzlu <produkt> pouze jeho výrobce: <xsl:template match="produkt"> <xsl:value-of select= vyrobce /> </xsl:template> Hodnota uzlu v XML je vždy textový řetězec (string), může být i prázdná (empty string). Pokud má uzel další potomky a je na něj aplikována instrukce <xsl:value-of select= />, na výstup budou vráceny všechny obsahy všech jeho potomků. Nikoliv kód. 24
26 Jazyk XSL Pro jednoduchý výpis všech informací o produktu lze tedy využít tento zápis: <xsl:template match="produkt"> <xsl:value-of select="."/> </xsl:template> Tečková maska způsobuje výpis obsahu elementu, který se shoduje s výběrem Podmíněné zpracování více uzlů V XSLT existuje for - cyklus, který umožňuje zpracovávat více uzlů. Pro jeho provedení se používá instrukce <xsl:for-each select= > a šablona, která je v tomto cyklu zapsána se provede na všechny uzly, které vyhovují dotazu v atributu select. 25
27 Jazyk XSL Zápis této instrukce je uveden v následujícím příkladu: <?xml version="1.0"?> <xsl:stylesheet version="1.0" xmlns:xsl=" <xsl:template match="/"> <html> <body> <ul> <xsl:for-each select= produkt > <li><xsl:value-of select= vyrobce ></li> </xsl:for-each> </ul> </body> </html> </xsl:template> </xsl:stylesheet> Tento jednoduchý zápis vrátí na výstup nečíslovaný (odrážkový) seznam všech výrobců, vyskytujících se ve zdrojovém XML dokumentu Seřazení výstupu Používáme-li for cyklus, můžeme data na výstupu řadit pomocí instrukce <xsl:sort select= >. Instrukce musí být zapsána uvnitř for cyklu a to na prvním místě, ještě před instrukcemi pro zpracování dat. Řazení se dá samozřejmě ovládat co do pořadí, řazení podle více kritérií i datových typů. Pořadí řazení (vzestupně nebo sestupně) je prováděno pomocí atributu order. Pro řazení podle více kritérií je potřeba zadat 26
28 Jazyk XSL více instrukcí za sebou. Znamená to, že za sebe píšeme celé instrukce <xsl:sort> a do atributu select zadáváme kritéria pro řazení. Jako tato kritéria slouží názvy elementů a řadí se podle dat, která elementy obsahují. V následujícím příkladu je kód, řadící produkty podle názvu a výrobce: <?xml version="1.0"?> <xsl:stylesheet version="1.0" xmlns:xsl=" <xsl:template match="/"> <html> <body> <ul> <xsl:for-each select= produkt > </ul> <xsl:sort select= nazev > <xsl:sort select= vyrobce > <li><xsl:value-of select= vyrobce ></li> </xsl:for-each> </body> </html> </xsl:template> </xsl:stylesheet> Takovýto zápis instrukcí po sobě vrátí požadovaná data, příslušně seřazena. 27
29 XPath jazyk pro navigaci v XML dokumentech 6 XPath jazyk pro navigaci v XML dokumentech Jazyk XPath je od roku 1999 standardem konsorcia W3C, nyní ve verzi 2.0. Patří do rodiny dotazovacích jazyků pro XML, nicméně nejedná se o plnohodnotný dotazovací jazyk[11]. Jeho hlavní funkcí je adresování částí XML dokumentu na základě dotazů (výrazů) zadaných uživatelem. Sám o sobě se tento jazyk nepoužívá, byl vytvořen pro spolupráci s jinými technologiemi pracujícími s XML dokumenty jako XSLT nebo XPointer. 6.1 Vztahy mezi prvky XML dokumentu Pokud je XML dokument dobře zformován, je logicky možné, pohybovat se stromovou strukturou po jednotlivých uzlech. V tuto chvíli přichází jazyk XPath, který poskytuje standardní řešení pro procházení XML dokumentu[12]. V XML dokumentech existují čtyři možné vztahy mezi uzly. Názvy jsou používány i z jiných stromových struktur, nejen z XML. Rodič (parent) Uzel označovaný jako rodič je nadřazeným uzlem pro skupinu jiných uzlů. Skupina uzlů, která je uzavřena uvnitř nadřazeného uzlu má tak jednoho rodiče, kterým je onen nadřazený uzel. 28
30 XPath jazyk pro navigaci v XML dokumentech Sourozenec (sibling) Toto označení platí pro uzly, které mají stejného rodiče. Ve stromové struktuře dokumentu jsou tedy na stejné úrovni. Potomek (descendant) Potomci jsou uzly, které mají alespoň jeden nadřazený uzel. Jediný uzel v každém XML dokumentu, který není potomkem žádného uzlu, je kořenový uzel. Nemá žádný nadřazený uzel. Naopak všechny ostatní uzly v dokumentu jsou potomky kořenového uzlu, protože je možné od kořenového uzlu rekurzivně projít celý dokument a přečíst všechny ostatní uzly. Předek (ancestor) Označení předek je používáno pro všechny nadřazené uzly jinému uzlu. Stejně jako je možné od rodiče procházet rekurzivně všechny potomky, stejně tak můžeme rekurzivně procházet všechny jeho předky. 29
31 XPath jazyk pro navigaci v XML dokumentech Tyto vztahy mezi uzly jsou naznačeny na obr. 3: Vztahy mezi XML uzly. Obr. 3: Vztahy mezi uzly XML dokumentu 6.2 Struktura XPath dotazů Dotazy v jazyce XPath do jisté míry připomínají syntaxi cesty v souborovém systému unix-like operačních systémů[12]. Dotaz přesně popisuje cestu k dané části dokumentu, přičemž zmiňuje všechny uzly, přes které cesta vede. Nelze žádný vynechat Lomítko (/) Jako oddělovač jednotlivých kroků se používá lomítko (/). Pokud chceme kdekoliv v dokumentu začít prohledávat jeho začátek, je nutné, aby XPath výraz lomítkem začínal. Tímto sdělujeme XSLT procesoru, že má začít od kořenového elementu. 30
32 XPath jazyk pro navigaci v XML dokumentech Pokud bychom tedy chtěli k dalšímu zpracování vybrat obsah všech tagů hmotnost, které jsou potomky tagu produkt, který je potomkem tagu leciva, zápis výrazu by vypadal takto: leciva/produkt/hmotnost Výběr podle potomka Pro výběr konkrétního elementu podle toho, zda obsahuje konkrétního potomka, se používá zápis názvu potomka do XPath výrazu. Název požadovaného potomka musí být uzavřen v hranatých závorkách. Výběr pouze těch elementů, které obsahují potomka s názvem vyrobce se zapisuje takto: leciva/produkt[vyrobce] Detailnějším výběrem pak může být definice obsahu potomka. Následující výraz vybere pouze všechny elementy produkt, které obsahují potomka s názvem výrobce, který obsahuje text Ratiopharm : leciva/produkt[vyrobce= Ratiopharm ] Výběr elementu podle atributu a jeho hodnoty Používáme-li v XML elementech atributy, je možné jejich hodnoty použít pro XPath dotaz. Pro označení výběru podle atributu se používá znak zavináč (@). Pro výběr elementu produkt, který obsahuje atribut název, zapisujeme výraz takto: 31
33 XPath jazyk pro navigaci v XML dokumentech /leciva/produkt[@nazev] Stejně jako v předchozím případě je možné dotazovat se pouze na elementy s atributy s konkrétním obsahem: leciva/produkt/[@nazev= Preventan ] Výše uvedené dotazy jazyka XPath demonstrují základní techniky dotazování se na konkrétní části XML dokumentů. Jazyk XPath samozřejmě obsahuje mnohem širší možnosti dotazování podle nejrůznějších kritérií. Pro základní pohyb stromovou strukturou XML dokumentů však výše uvedené příklady postačí a detailní popis ostatních možností jazyka XPath je nad rámec této práce. 6.3 Funkce jazyka XPath Ve specifikaci jazyka XPath je zahrnuto nejen adresování částí dokumentu, ale i manipulace s daty[11]. Jazyk XPath obsahuje čtyři sady funkcí, které umožňují manipulovat s daty před jejich předáním pro další zpracování Funkce pro práci s uzly Tato sada neumí pracovat s obsahem uzlů, ale pouze s uzly samotnými. Umožňuje vracet např: počet uzlů ve vybrané sadě uzlů (počet uzlů vyhovujících dotazu) (funkce count) vybírat uzly podle atributů (funkce id) 32
34 XPath jazyk pro navigaci v XML dokumentech vracet pozici uzlu vůči rodičovskému uzlu (funkce position) a další Funkce pro práci s textovým obsahem uzlů Pro manipulaci s textem, který je obsažen uvnitř uzlů v XML dokumentu, je možné využít funkce z této sady. Funkce umožňují např.: vrátit text uzlů, které obsahují určitý text (funkce contains) vrátit text uzlů, které začínají definovaným znakem (funkce starts-with) vrátit obsah vyhovujících uzlů, spojený do jediného textového řetězce (funkce concatenate) Booleovské funkce Booleovské funkce mají v jazyce XPath stejné vlastnosti jako v jakémkoliv jiném Funkce pro práci s čísly Jazyk XPath umožňuje též práci s číselnými hodnotami. Používá standardní operátory (+, -, *, div, mod). Před vrácením výsledku je možné vyhovující argumenty: zaokrouhlit na celé číslo nahoru nebo dolů (funkce ceiling, floor) zaokrouhlit argument na nejbližší celočíselnou hodnotu (funkce round) 33
Jazyk XSL XPath XPath XML. Jazyk XSL - rychlá transformace dokumentů. PhDr. Milan Novák, Ph.D. KIN PF JU České Budějovice. 9.
Jazyk XSL - rychlá transformace dokumentů 9. prosince 2010 Osnova 1 Jazyk XSL Úvod Princip zpracování pomocí stylů Formátování dokumentu pomocí XSL FO Osnova 1 Jazyk XSL Úvod Princip zpracování pomocí
Více24. XML. Aby se dokument XML vůbec zobrazil musí být well-formed (správně strukturovaný). To znamená, že splňuje formální požadavky specifikace XML.
24. XML Úvod Značkovací jazyk XML (extensible Markup Language) vznikl ze staršího a obecnějšího jazyku SGML (Standard Generalized Markup Language). XML byl vyvinut konsorciem W3C, aby poskytl standardní
VícePrezentace XML. XML popisuje strukturu dat, neřeší vzhled definice vzhledu:
Realizováno za finanční podpory ESF a státního rozpočtu ČR v rámci v projektu Zkvalitnění a rozšíření možností studia na TUL pro studenty se SVP reg. č. CZ.1.07/2.2.00/29.0011 Definice vzhledu Prezentace
VíceAPLIKACE XML PRO INTERNET
APLIKACE XML PRO INTERNET Jaroslav Ráček Fakulta Informatiky, Masarykova Universita Brno Abstrakt Text je věnován možnostem využití XML technologie pro prezentaci dokumentů pomocí Internetu. V úvodu je
VíceŠkola: Gymnázium, Brno, Slovanské náměstí 7 III/2 Inovace a zkvalitnění výuky prostřednictvím ICT Název projektu: Inovace výuky na GSN
Škola: Gymnázium, Brno, Slovanské náměstí 7 Šablona: III/2 Inovace a zkvalitnění výuky prostřednictvím ICT Název projektu: Inovace výuky na GSN prostřednictvím ICT Číslo projektu: CZ.1.07/1.5.00/34.0940
VíceMBI - technologická realizace modelu
MBI - technologická realizace modelu 22.1.2015 MBI, Management byznys informatiky Snímek 1 Agenda Technická realizace portálu MBI. Cíle a principy technického řešení. 1.Obsah portálu - objekty v hierarchiích,
VíceXML a XSLT. Kapitola seznamuje s šablonami XSLT a jejich použití při transformaci z XML do HTML
XML a XSLT Kapitola seznamuje s šablonami XSLT a jejich použití při transformaci z XML do HTML Zdroje: M. ŽÁK: XML (začínáme programovat), Grada Publishing, 2005 I. MLÝNKOVÁ, M. NEČASKÝ, J. POKORNÝ, K.
VíceSprávnost XML dokumentu
Realizováno za finanční podpory ESF a státního rozpočtu ČR v rámci v projektu Zkvalitnění a rozšíření možností studia na TUL pro studenty se SVP reg. č. CZ.1.07/2.2.00/29.0011 Správnost XML dokumentu Správně
VíceDotazování nad XML daty a jazyk XPath
4 TVEZEWXYHMNR LSTVSKVEQY-RJSVQEXMOENITSHTSVSZ RETVSNIOXIQRERGSZER Q ^)ZVSTWO LSWSGM PR LSJSRHYEVS^TS XYLPEZR LSQ WXE4VEL] 4VELE)9-RZIWXYNIQIHSZE% FYHSYGRSWXM Dotazování nad XML daty a jazyk XPath BI-TWA
VícePHP PHP je skriptovací programovací jazyk dynamických internetových stránek PHP je nezávislý na platformě
PHP PHP původně znamenalo Personal Home Page a vzniklo v roce 1996, od té doby prošlo velkými změnami a nyní tato zkratka znamená Hypertext Preprocessor. PHP je skriptovací programovací jazyk, určený především
VíceHTML XHTML JavaScript PHP ASP.Net Zajímavé odkazy
V čem se píší web. dokumenty HTML XHTML JavaScript PHP ASP.Net Zajímavé odkazy HTML HTML (HyperText Markup Language, značkovací jazyk pro hypertext) standart pro vytváření stránek v systému aplikací World
VíceDatabázové aplikace pro internetové prostředí. 01 - PHP úvod, základní princip, vkládání skriptu, komentáře, výpis na obrazovku
Databázové aplikace pro internetové prostředí 01 - PHP úvod, základní princip, vkládání skriptu, komentáře, výpis na obrazovku Projekt: Inovace výuky prostřednictvím ICT Registrační číslo: CZ.1.07/1.5.00/34.250
VíceTvorba WWW stránek. Mojmír Volf mojmir.volf@tul.cz https://www.nti.tul.cz/wiki/wikiuser:mojmir.volf 485 353 675
Tvorba WWW stránek Mojmír Volf mojmir.volf@tul.cz https://www.nti.tul.cz/wiki/wikiuser:mojmir.volf 485 353 675 Zdroje KRUG: Web design - nenuťte uživatele přemýšlet.. Computer Press, 2003. PROKOP M.: CSS
VíceObsah prezentace. Co je to XML? Vlastnosti. Validita
Obsah prezentace Co je to XML? Vlastnosti Validita Co je to XML? EXtensible Markup Language Účelem je usnadnit sdílení dat napříč informačními systémy Popis dokumentu z hlediska věcného obsahu Vyvinuto
VíceJazyky pro popis dat
Realizováno za finanční podpory ESF a státního rozpočtu ČR v rámci v projektu Zkvalitnění a rozšíření možností studia na TUL pro studenty se SVP reg. č. CZ.1.07/2.2.00/29.0011 Jazyky pro popis dat Pavel
VíceTvorba informačních systémů
Tvorba informačních systémů Michal Krátký Katedra informatiky VŠB Technická univerzita Ostrava Tvorba informačních systémů, 2006/2007 c 2006 2007 Michal Krátký Tvorba informačních systémů 1/37 Obsah 8.
VíceINOVACE PŘEDMĚTŮ ICT. MODUL 11: PROGRAMOVÁNÍ WEBOVÝCH APLIKLACÍ Metodika
Vyšší odborná škola ekonomická a zdravotnická a Střední škola, Boskovice INOVACE PŘEDMĚTŮ ICT MODUL 11: PROGRAMOVÁNÍ WEBOVÝCH APLIKLACÍ Metodika Zpracoval: Jaroslav Kotlán srpen 2009s Úvod Modul Programování
VíceSystém elektronického rádce v životních situacích portálu www.senorady.cz
Systém elektronického rádce v životních situacích portálu www.senorady.cz Obec Senorady Miroslav Patočka 2006 Obsah: 1. Úvodní informace 1.1 Informace pro uživatele 1.1.1 Přístupnost HTML, PDA, WAP, XML
VíceSoučasný svět Projekt č. CZ.2.17/3.1.00/32038, podpořený Evropským sociálním fondem v rámci Operačního programu Praha adaptabilita
Aktivní webové stránky Úvod: - statické webové stránky: pevně vytvořený kód HTML uložený na serveru, ke kterému se přistupuje obvykle pomocí protokolu HTTP (HTTPS - zabezpečený). Je možno používat i různé
VícePokročilé techniky tvorby sestav v Caché. ZENové Reporty
Pokročilé techniky tvorby sestav v Caché ZENové Reporty Úvodem Jednoduché sestavy Pokročilé sestavy Ladění Historie ZEN reporty sdílejí podobný princip definování obsahu jako ZENové stránky Byly uvedeny
VíceÚvod do tvorby internetových aplikací
CVT6 01a Úvod do tvorby internetových aplikací Osnova předmětu (X)HTML a tvorba webu pomocí přímého zápisu kódu Tvorba web designu a skládání stránek z kousků Skriptovací jazyky na webu Návrh software
VíceMaturitní otázky z předmětu PROGRAMOVÁNÍ
Wichterlovo gymnázium, Ostrava-Poruba, příspěvková organizace Maturitní otázky z předmětu PROGRAMOVÁNÍ 1. Algoritmus a jeho vlastnosti algoritmus a jeho vlastnosti, formy zápisu algoritmu ověřování správnosti
VícePRG036 Technologie XML
PRG036 Technologie XML Přednáší: Irena Mlýnková (mlynkova@ksi.mff.cuni.cz) Martin Nečaský (necasky@ksi.mff.cuni.cz) LS 2010 Stránka přednášky: http://www.ksi.mff.cuni.cz/~mlynkova/prg036/ 1 Osnova předmětu
VíceHTML Hypertext Markup Language
HTML Hypertext Markup Language je jazyk určený na publikování a distribuci dokumentů na Webu velmi jednoduchý jazyk používá ho mnoho uživatelů má výkonné prostředky (příkazy) k formátování dokumentů (různé
VíceZáklady WWW publikování
Ing. Igor Kopetschke Oddělení aplikované informatiky Ústav nových technologií a aplikované informatiky Fakulta mechatroniky a mezioborových inženýrských studií Technická univerzita v Liberci Email : igor.kopetschke@tul.cz
VíceXSLT pomocí JavaScriptu v Mozille (... Opeře a Safari)
XSLT a JavaScript Autor: Petr Dvořák (http://joshis.iprofil.cz/) Úvod Dokumenty XML (můžeme rovnou říct, že narozdíl od dokumentů (X)HTML) nenesou žádnou informaci, která by prohlížeči sdělila, jakým způsobem
VíceDatabázové systémy. Doc.Ing.Miloš Koch,CSc. koch@fbm.vutbr.cz
Databázové systémy Doc.Ing.Miloš Koch,CSc. koch@fbm.vutbr.cz Vývoj databázových systémů Ukládání dat Aktualizace dat Vyhledávání dat Třídění dat Výpočty a agregace 60.-70. léta Program Komunikace Výpočty
VíceÚvod do aplikací internetu a přehled možností při tvorbě webu
CVT6 01a Úvod do aplikací internetu a přehled možností při tvorbě webu Internet a www Internet? Služby www ftp e-mail telnet NetNews konference IM komunikace Chaty Remote Access P2P aplikace Online games
VíceZáklady XML struktura dokumentu (včetně testových otázek)
Základy XML struktura dokumentu (včetně testových otázek) Otakar Čerba Oddělení geomatiky Katedra matematiky Fakulta aplikovaných věd Západočeská univerzita v Plzni Přednáška z předmětu Počítačová kartografie
VíceTvorba WWW stránek. přehled technologií používaných na webu principy jednotlivých technologií a možnosti jejich vzájemného kombinování
Tvorba WWW stránek přehled technologií používaných na webu principy jednotlivých technologií a možnosti jejich vzájemného kombinování HTML/XHTML kaskádové styly PHP spolupráce PHP s databázemi Technologie
VíceHTML - Úvod. Zpracoval: Petr Lasák
HTML - Úvod Zpracoval: Petr Lasák Je značkovací jazyk, popisující obsah HTML stránek Je z rodiny SGML jazyků, jako např. XML, DOCX, XLSX Nejedná se o programovací ale značkovací jazyk Dynamičnost dodávají
VíceDnešní téma. Oblasti standardizace v ICT. Oblasti standardizace v ICT. Oblasti standardizace v ICT
Dnešní téma Oblasti standardizace v ICT Případové studie standardizace v ICT: 1) Znakové sady 2) Jazyk 1. technická infrastruktura transfer a komunikace informací, přístup k informacím, sdílení zdrojů
Více1 Webový server, instalace PHP a MySQL 13
Úvod 11 1 Webový server, instalace PHP a MySQL 13 Princip funkce webové aplikace 13 PHP 14 Principy tvorby a správy webového serveru a vývojářského počítače 14 Co je nezbytné k instalaci místního vývojářského
VícePředmluva k druhému vydání 13. Úvod 17. ČÁST 2 Vytváření dokumentů XML 65
7 Stručný obsah Předmluva k druhému vydání 13 Úvod 17 ČÁST 1 Začínáme 27 Kapitola 1 Proč XML 29 Kapitola 2 Vytváření a zobrazení vašeho prvního dokumentu XML 45 ČÁST 2 Vytváření dokumentů XML 65 Kapitola
VíceInovace výuky prostřednictvím šablon pro SŠ
Název projektu Číslo projektu Název školy Autor Název šablony Název DUMu Stupeň a typ vzdělávání Vzdělávací oblast Vzdělávací obor Tematický okruh Inovace výuky prostřednictvím šablon pro SŠ CZ.1.07/1.5.00/34.0748
VíceZnačkovací jazyky a spol. HTML/XHTML XML JSON YAML Markdown, Texy!
Značkovací jazyky a spol. HTML/XHTML XML JSON YAML Markdown, Texy! Značkovací jazyky Angl. termín "MARKUP" ("vyznačování") Smyslem je přidat do textu metainformace: formátovací sémantické Výsledek je prostý
VíceVÝVOJ INTERNETOVÝCH APLIKACÍ - VIA
Metodický list č. 1 Způsob zakončení : Úvod Technologie webových aplikací Protokol HTTP Po zvládnutí tématického celku bude student mít základní přehled o problematice programování internetových (webových)
VíceUkládání a vyhledávání XML dat
XML teorie a praxe značkovacích jazyků (4IZ238) Jirka Kosek Poslední modifikace: $Date: 2014/12/04 19:41:24 $ Obsah Ukládání XML dokumentů... 3 Ukládání XML do souborů... 4 Nativní XML databáze... 5 Ukládání
VíceXML terminologie a charakteristiky. Roman Malo
XML terminologie a charakteristiky Roman Malo XML extensible Markup Language (rozšiřitelný značkovací jazyk) Verze 1.0, 1.1 http://www.w3.org/xml Rozdíly v podpoře různých znakových sad a práci s řídícími
VíceAplikace pro srovna ní cen povinne ho ruc ení
Aplikace pro srovna ní cen povinne ho ruc ení Ukázkový přiklad mikroaplikace systému Formcrates 2010 Naucrates s.r.o. Veškerá práva vyhrazena. Vyskočilova 741/3, 140 00 Praha 4 Czech Republic tel.: +420
VíceVývoj Internetových Aplikací
2 Vývoj Internetových Aplikací HTML a CSS Ing. Michal Radecký, Ph.D. www.cs.vsb.cz/radecky HTML a CSS - Tvorba webových stránek - Struktura - Obsah - Vzhled - Funkcionalita zdroj: http://www.99points.info
VícePodpora XML v.net. Podpora XML v.net. nezávislý publicista. Jirka Kosek. http://www.kosek
Podpora XML v.net Podpora XML v.net Jirka Kosek nezávislý publicista http://www.kosek kosek.cz Co nás čeká? Co nás čeká?! podpora XML ve VisualStudio.NET! architektura System.Xml! čtení XML dokumentů!
VíceUspořádání klient-server. Standardy pro Web
Návrh a tvorba WWW stránek 1/11 Uspořádání klient-server klient na straně uživatele (browser, prohlížeč) server program obsluhující požadavky uživatele Standardy pro Web HTTP Hypertext Transfer Protocol
VíceXML a DTD. <!DOCTYPE kořenový_element [deklarace definující vlastnosti jednotlivých elementů a atributů]> externí deklarace:
XML a DTD Kapitola seznamuje se specifikací souboru XML pomocí souboru DTD Klíčové pojmy: Definice typu dokumentu. DTD DEFINICE TYPU DOKUMENTU slouží k bližší definici XML dokumentu textový soubor s uvedenými
VícePHP tutoriál (základy PHP snadno a rychle)
PHP tutoriál (základy PHP snadno a rychle) Druhá, vylepšená offline verze. Připravil Štěpán Mátl, http://khamos.wz.cz Chceš se naučit základy PHP? V tom případě si prostuduj tento rychlý průvodce. Nejdříve
VíceSyntaxe XML XML teorie a praxe značkovacích jazyků (4IZ238)
XML teorie a praxe značkovacích jazyků (4IZ238) Jirka Kosek Poslední modifikace: $Date: 2009/10/01 19:46:33 $ Obsah Základy syntaxe... 3 Elementy a atributy... 4 Znakový model XML... 5 Komentáře... 6 Instrukce
VíceTÉMATICKÝ OKRUH Softwarové inženýrství
TÉMATICKÝ OKRUH Softwarové inženýrství Číslo otázky : 23. Otázka : Datový model XML, dotazovací jazyky nad XML daty Obsah : 1 Úvod o XML 2 Vztah XML a databáze 2.1 Databázové systémy s podporou XML 2.2
VíceSTŘEDNÍ ŠKOLA INFORMAČNÍCH TECHNOLOGIÍ A SOCIÁLNÍ PÉČE
STŘEDNÍ ŠKOLA INFORMAČNÍCH TECHNOLOGIÍ A SOCIÁLNÍ PÉČE WEBOWÉ STRÁNKY TŘÍD KAMIL POPELKA ZÁVĚREČNÁ MATURITNÍ PRÁCE BRNO 2011 Prohlášení Prohlašuji, že maturitní práce je mým původním autorským dílem, které
VícePříklad buňka tabulky
Realizováno za finanční podpory ESF a státního rozpočtu ČR v rámci v projektu Zkvalitnění a rozšíření možností studia na TUL pro studenty se SVP reg. č. CZ.1.07/2.2.00/29.0011 Pojmenované šablony Pojmenované
VíceAUTOMATICKÉ ŘÍZENÍ S INTERNETOVOU KOMUNIKACÍ V PHP Automatic Control with Internet Communication in PHP
AUTOMATICKÉ ŘÍZENÍ S INTERNETOVOU KOMUNIKACÍ V PHP Automatic Control with Internet Communication in PHP Kamil Mrázek Abstrakt: Jazyk PHP a jeho využití v řízení přes internet, získávání dat z webových
VíceXSLT a jmenné prostory
XSLT a jmenné prostory Doplňková prezentace Roman Malo XSLT a jmenné prostory Při využití XSLT nad XML s jmennými prostory je potřeba jednotlivé názvy uzlů (elementy a atributy) uvádět včetně prefixu Prefix
VíceIng. Přemysl Brada, MSc., Ph.D. Ing. Martin Dostal. Katedra informatiky a výpočetní techniky, FAV, ZČU v Plzni
Webové aplikace Ing. Přemysl Brada, MSc., Ph.D. Ing. Martin Dostal Katedra informatiky a výpočetní techniky, FAV, ZČU v Plzni Harmonogram Dopolední blok 9:00 12:30 Ing. Dostal Úvod, XHTML + CSS Ing. Brada,
VíceVzdělávací obsah vyučovacího předmětu
V.9.3. Vzdělávací obsah vyučovacího předmětu Vzdělávací oblast: Inormatika a informační a komunikační technologie Vyučovací předmět: Informatika Ročník: 1. ročník + kvinta chápe a používá základní termíny
VíceNSWI096 - INTERNET JavaScript
NSWI096 - INTERNET JavaScript Mgr. Petr Lasák JAVASCRIPT JAK SE DNES POUŽÍVÁ Skriptovací (interpretovaný) jazyk Umožňuje interaktivitu Použití: Dialogy Kontrola dat ve formulářích Změny v (X)HTML dokumentu
VíceANOTACE vytvořených/inovovaných materiálů
ANOTACE vytvořených/inovovaných materiálů Číslo projektu Číslo a název šablony klíčové aktivity Tematická oblast Formát Druh učebního materiálu Druh interaktivity CZ.1.07/1.5.00/34.0722 III/2 Inovace a
VíceKAPITOLA 9 - POKROČILÁ PRÁCE S TABULKOVÝM PROCESOREM
KAPITOLA 9 - POKROČILÁ PRÁCE S TABULKOVÝM PROCESOREM CÍLE KAPITOLY Využívat pokročilé možnosti formátování, jako je podmíněné formátování, používat vlastní formát čísel a umět pracovat s listy. Používat
VíceMgr. Stěpan Stěpanov, 2013
Mgr. Stěpan Stěpanov, 2013 Abstrakt V tomto kurzu se seznámíme se základními pojmy HTML, klíčovými pravidly pro práci se značkami a atributy a strukturou dokumentu. Také se dozvíte, jak a v čem lze vytvářet
VíceVyužití XML v DB aplikacích
Využití XML v DB aplikacích Michal Kopecký Výběr ze slajdů k 7. přednášce předmětu Databázové Aplikace (DBI026) na MFF UK Komunikace aplikace s okolím Databázová aplikace potřebuje často komunikovat s
VíceNSWI096 - INTERNET. Úvod do HTML
NSWI096 - INTERNET Úvod do HTML XHTML CO TO JE? XML extensible Markup Language Sada pravidel, jak kódovat dokumenty Podle těchto pravidel lze vytvořit nekonečně mnoho různých jazyků HTML HyperText Markup
Více1. Úvod do Ajaxu 11. Jak Ajax funguje? 13
Obsah Úvodem 9 1. Úvod do Ajaxu 11 Jak Ajax funguje? 13 Popis 13 Ukázky 13 Jaké jsou možnosti tvorby interaktivních webových aplikací? 15 Co je třeba znát? 16 Jak fungují technologie Ajaxu 16 Jak funguje
VíceOlga Rudikova 2. ročník APIN
Olga Rudikova 2. ročník APIN Redakční (publikační) systém neboli CMS - content management system (systém pro správu obsahu) je software zajišťující správu dokumentů, nejčastěji webového obsahu. (webová
VíceTvorba webových stránek
Tvorba webových stránek Kaskádové styly Úprava vzhledu webové stránky pomocí atributů má několik nevýhod a úskalí. Atributy nabízejí málo možností úprav. Obtížně se sjednocují změny na různých částech
VíceMgr. Vlastislav Kučera přednáška č. 1
Mgr. Vlastislav Kučera přednáška č. 1 jazyk (x)html kaskádové styly Castro, E.: HTML, XHTML a CSS. CPress, 2007 Písek, S.: HTML a XHTML, začínáme programovat. Grada Publishing, 2003 Wempen, F.: HTML a
Více8.2 Používání a tvorba databází
8.2 Používání a tvorba databází Slide 1 8.2.1 Základní pojmy z oblasti relačních databází Slide 2 Databáze ~ Evidence lidí peněz věcí... výběry, výpisy, početní úkony Slide 3 Pojmy tabulka, pole, záznam
Více(X)HTML-TAGY. VOŠ a SŠT Česká Třebová
(X)HTML-TAGY Mgr. Petr Slívko VOŠ a SŠT Česká Třebová Tagy Popis Značka tagu začíná levou ostrou závorkou. Za ní následuje jméno tagu, před kterým nesmí být mezera. Mohou následovat atributy. Před
Vícerychlý vývoj webových aplikací nezávislých na platformě Jiří Kosek
rychlý vývoj webových aplikací nezávislých na platformě Jiří Kosek Co je to webová aplikace? příklady virtuální obchodní dům intranetový IS podniku vyhledávací služby aplikace jako každá jiná přístupná
VíceNávrh stránek 4IZ228 tvorba webových stránek a aplikací
4IZ228 tvorba webových stránek a aplikací Jirka Kosek Poslední modifikace: $Date: 2013/12/12 20:40:58 $ Obsah Úvod... 3 Recept na dobré webové stránky... 4 Použitelnost... 5 Jak se pozná použitelný web...
VíceZNAČKOVACÍ JAZYKY A JEJICH VYUŽÍVÁNÍ MARKUP LANGUAGE AND THEIR USE. Zdeněk Havlíček
ZNAČKOVACÍ JAZYKY A JEJICH VYUŽÍVÁNÍ MARKUP LANGUAGE AND THEIR USE Zdeněk Havlíček Anotace: Značkovací jazyk vkládá do textu dokumentu další informace o vlastním textu. Značkovací jazyky se využívají především
VíceKartografická webová aplikace. Přednáška z předmětu Počítačová kartografie (KMA/POK) Otakar Čerba Západočeská univerzita
Kartografická webová aplikace Přednáška z předmětu Počítačová kartografie (KMA/POK) Otakar Čerba Západočeská univerzita Datum vzniku dokumentu: 3. 11. 2011 Datum poslední aktualizace: 10. 12. 2011 Cíl
VíceElektronické publikování. doc. RNDr. Petr Šaloun, Ph.D. katedra informatiky FEI VŠB TU Ostrava
Elektronické publikování doc. RNDr. Petr Šaloun, Ph.D. katedra informatiky FEI VŠB TU Ostrava www.cs.vsb.cz/saloun Základní pojmy Zpracování textu myšlenka, typografický návrh, realizace, znovupoužití.
Více12. Virtuální sítě (VLAN) VLAN. Počítačové sítě I. 1 (7) KST/IPS1. Studijní cíl. Základní seznámení se sítěmi VLAN. Doba nutná k nastudování
12. Virtuální sítě (VLAN) Studijní cíl Základní seznámení se sítěmi VLAN. Doba nutná k nastudování 1 hodina VLAN Virtuální síť bývá definována jako logický segment LAN, který spojuje koncové uzly, které
VíceZáklady informatiky. HTML, tvorba WWW stránek. Daniela Szturcová Část převzata z přednášky P. Děrgela
Základy informatiky HTML, tvorba WWW stránek Daniela Szturcová Část převzata z přednášky P. Děrgela Obsah přednášky Princip WWW dokumentu, ukázka Nástroje pro tvorbu Pravidla tvorby HTML, tagy Kostra HTML
VíceTabulkový procesor. Základní rysy
Tabulkový procesor Tabulkový procesor je počítačový program zpracovávající data uložená v buňkách tabulky. Program umožňuje použití vzorců pro práci s daty a zobrazuje výsledné hodnoty podle vstupních
VíceZáklady informatiky. 03 HTML, tvorba webových stránek. Kačmařík/Szturcová/Děrgel/Rapant
Základy informatiky 03 HTML, tvorba webových stránek Kačmařík/Szturcová/Děrgel/Rapant Obsah přednášky princip webového dokumentu, ukázka nástroje pro tvorbu pravidla tvorby HTML, značky kostra HTML dokumentu
VíceKurz je rozdělen do čtyř bloků, které je možné absolvovat i samostatně. Podmínkou pro vstup do kurzu je znalost problematiky kurzů předešlých.
Soubor kurzů XHTML, CSS, PHP a MySQL Kurz je rozdělen do čtyř bloků, které je možné absolvovat i samostatně. Podmínkou pro vstup do kurzu je znalost problematiky kurzů předešlých. Jeden blok se skládá
VíceMaturitní témata Školní rok: 2015/2016
Maturitní témata Školní rok: 2015/2016 Ředitel školy: Předmětová komise: Předseda předmětové komise: Předmět: PhDr. Karel Goš Informatika a výpočetní technika Mgr. Ivan Studnička Informatika a výpočetní
VíceXSLT extensible Stylesheet Language Transformation
XSLT extensible Stylesheet Language Transformation Přednáška z předmětu Počítačová kartografie Otakar ČERBA Západočeská univerzita v Plzni 12. 11. 2007 Poslední aktualizace: 1. 12. 2010 XSLT Na pomezí
VíceKritéria hodnocení praktické maturitní zkoušky z databázových systémů
Kritéria hodnocení praktické maturitní zkoušky z databázových systémů Otázka č. 1 Datový model 1. Správně navržený ERD model dle zadání max. 40 bodů teoretické znalosti konceptuálního modelování správné
VíceVývoj moderních technologií při vyhledávání. Patrik Plachý SEFIRA spol. s.r.o. plachy@sefira.cz
Vývoj moderních technologií při vyhledávání Patrik Plachý SEFIRA spol. s.r.o. plachy@sefira.cz INFORUM 2007: 13. konference o profesionálních informačních zdrojích Praha, 22. - 24.5. 2007 Abstrakt Vzhledem
VíceUživatelský manuál. Aplikace GraphViewer. Vytvořil: Viktor Dlouhý
Uživatelský manuál Aplikace GraphViewer Vytvořil: Viktor Dlouhý Obsah 1. Obecně... 3 2. Co aplikace umí... 3 3. Struktura aplikace... 4 4. Mobilní verze aplikace... 5 5. Vytvoření projektu... 6 6. Části
VícePrincipy XQuery. funkcionální jazyk vše je výraz, jehož vyhodnocením vznikne určitá hodnota základní typy stejné jako v XML Schema:
Realizováno za finanční podpory ESF a státního rozpočtu ČR v rámci v projektu Zkvalitnění a rozšíření možností studia na TUL pro studenty se SVP reg. č. CZ.1.07/2.2.00/29.0011 XQuery XQuery dotazovací
VíceRelační DB struktury sloužící k optimalizaci dotazů - indexy, clustery, indexem organizované tabulky
Otázka 20 A7B36DBS Zadání... 1 Slovníček pojmů... 1 Relační DB struktury sloužící k optimalizaci dotazů - indexy, clustery, indexem organizované tabulky... 1 Zadání Relační DB struktury sloužící k optimalizaci
VíceDATABÁZE MS ACCESS 2010
DATABÁZE MS ACCESS 2010 KAPITOLA 5 PRAKTICKÁ ČÁST TABULKY POPIS PROSTŘEDÍ Spuštění MS Access nadefinovat název databáze a cestu k uložení databáze POPIS PROSTŘEDÍ Nahoře záložky: Soubor (k uložení souboru,
Více3 MOŽNÉ PŘÍSTUPY K TVORBĚ APLIKACÍ NAD SVG DOKUMENTY
3 MOŽNÉ PŘÍSTUPY K TVORBĚ APLIKACÍ NAD SVG DOKUMENTY 3.1 Tenký a tlustý klient Klientské aplikace nad XML dokumenty v prostředí internetu se dají rozdělit na dvě skupiny: tenký klient a tlustý klient.
VíceMgr. Vlastislav Kučera Struktura stránky, hlavička,
Mgr. Vlastislav Kučera Struktura stránky, hlavička, Struktura stránky hlavička meta tagy titulek stránky připojení stylů,... CSS to
VíceZ n a č k o v a c í j a z y k y. XSL (extensible Stylesheet Language) XSLT (extensible Stylesheet Language Transformation) XPath
Z n a č k o v a c í j a z y k y XSL (extensible Stylesheet Language) XSLT (extensible Stylesheet Language Transformation) XPath X S L Ú č e l Jazyk pro transformaci XML dokumentů do jiných XML dokumentů
VíceÚvod do databázových systémů
Vysoká škola báňská Technická univerzita Ostrava Fakulta elektrotechniky a informatiky Úvod do databázových systémů Cvičení 3 Ing. Petr Lukáš petr.lukas@vsb.cz Ostrava, 2014 Opakování 4 fáze vytváření
Více1. Webový server, instalace PHP a MySQL 13
Úvod 11 1. Webový server, instalace PHP a MySQL 13 Princip funkce webové aplikace 13 PHP 14 Principy tvorby a správy webového serveru a vývojářského počítače 14 Co je nezbytné k instalaci místního vývojářského
Více1. Struktura stránky, zásady při psaní kódu, MVC pattern. Web pro kodéry (Petr Kosnar, ČVUT, FJFI, KFE, PINF 2008)
1. Struktura stránky, zásady při psaní kódu, MVC pattern Web pro kodéry (Petr Kosnar, ČVUT, Obsah } Terminologie } Prezentace x Obsah } Struktura kódu } Sémantika kódu } Struktura stránky } Šablony } Template
VíceWichterlovo gymnázium, Ostrava-Poruba, příspěvková organizace. Maturitní otázky z předmětu INFORMATIKA A VÝPOČETNÍ TECHNIKA
Wichterlovo gymnázium, Ostrava-Poruba, příspěvková organizace Maturitní otázky z předmětu INFORMATIKA A VÝPOČETNÍ TECHNIKA 1. Algoritmus a jeho vlastnosti algoritmus a jeho vlastnosti, formy zápisu algoritmu
VíceOracle XML DB. Tomáš Nykodým
Oracle XML DB Tomáš Nykodým xnykodym@fi.muni.cz Osnova Oracle XML DB Architektura Oracle XML DB Hlavní rysy Oracle XML DB Hlavní rysy Oracle XML DB - pokračování XMLType XML Repository Využívání databázových
Více(X)HTML, CSS a jquery
Prezentační vrstva webové aplikace (X)HTML, CSS a jquery jquery Java Scriptová knihovna Ing. Martin Dostal (X)HTML první stránka Textový soubor s příponou.htm nebo.html: moje
VíceODBORNÁ KNIHOVNA ČESKÉ POJIŠŤOVNY ONLINE SW ŘEŠENÍ AIP SAFE
ODBORNÁ KNIHOVNA ČESKÉ POJIŠŤOVNY ONLINE SW ŘEŠENÍ AIP SAFE Ludmila Langová, AiP Safe Lenka Vavrušková, ČP Příspěvek se věnuje stručnému popisu systému AiP Safe a možnostem jeho využití pro archivaci,
VíceHLEDEJCENY.mobi. Obsah. Mobilní verze e-shopu. Důvody instalace
Obsah HLEDEJCENY.mobi Mezi Vodami 1952/9 e-mail: info@hledejceny.cz HLEDEJCENY.mobi... 1 Mobilní verze e-shopu... 1 Důvody instalace... 1 Výhody... 2 Co je k mobilní verzi potřeba... 2 Objednávka služby...
VíceAlena Malovaná, MAL305
Alena Malovaná, MAL305 GML WFS WMF Geografický značkovací jazyk (Geographic Markup Language - GML) Jedná se o velmi rozšířený standard pro popis geodat umožňující sdílení i integraci dat. Jeho základem
Více13. Vytváření webových stránek
13. Vytváření webových stránek značkovací jazyk HTML, základní členění dokumentu, odkazy, tabulky, seznamy, obrázky, HTML editory Značkovací jazyk HTML HTML - Hypertext markup Language (hypertextový značkovací
VíceStřední odborná škola a Střední odborné učiliště, Hořovice
Kód DUM : VY_32_INOVACE_DYN.1.19 Název materiálu: 19 PHP- Základy práce s databází PHP 2. část MySQL (Aplikace knihovna) Anotace Autor Jazyk Očekávaný výstup DUM je žákům průvodcem vytvoření databáze knih
VíceČtvrtek 3. listopadu. Makra v Excelu. Obecná definice makra: Spouštění makra: Druhy maker, způsoby tvorby a jejich ukládání
Čtvrtek 3. listopadu Makra v Excelu Obecná definice makra: Podle definice je makro strukturovanou definicí jedné nebo několika akcí, které chceme, aby MS Excel vykonal jako odezvu na nějakou námi definovanou
Více