Implementace XML signatur

Rozměr: px
Začít zobrazení ze stránky:

Download "Implementace XML signatur"

Transkript

1 MASARYKOVA UNIVERZITA V BRNĚ FAKULTA INFORMATIKY #ris m p Implementace XML signatur BAKALÁŘSKÁ PRÁCE Petr Neděla Brno, podzim 2005

2 Prohlášení Prohlašuji, že tato bakalářská práce je mým původním autorským dílem, které jsem vypracoval samostatně. Všechny zdroje, prameny a literaturu, které jsem při vypracování používal nebo z nich čerpal, v práci řádně cituji s uvedením úplného odkazu na příslušný zdroj. Vedoucí práce: Ing. Petr Adámek 11

3 Poděkování Děkuji svému vedoucímu bakalářské práce Ing. Petrovi Adámkovi za četné konzultace, cenné rady a připomínky. Také bych chtěl poděkovat Šárce Grigarčíkové za gramatickou a stylistyckou korekturu. m

4 Shrnutí K ukládání a výměně informací se často využívá jazyk XML. Dokument v XML jazyku tvoří stromovou strukturu uzlů. Při některých způsobech vyhledávání je třeba tuto strukturu zohlednit. Signatury stromu jsou jednou z metod indexování struktury XML dokumentu, umožňující okamžitě vyhodnocovat strukturální vztahy mezi uzly stromu. Cílem práce je implementovat standardní a rozšířené signatury v systému XIQE a porovnat jejich vzájemnou efektivitu. IV

5 Klíčová slova XML, XML Tree Signatures, standardní signatury, rozšířené signatury, indexování, Dietzovo schéma, XIQE v

6 Obsah 1 Úvod 1 2 Standardy rodiny XML Jazyk XML Historie jazyka XML Syntaxe dokumentu XML Well formed dokument Model XML dokumentu Navigace ve stromu XML dokumentu Syntaxe jazyka XPath Rozhraní přístupu ke XML dokumentu Rozhraní SAX Rozhraní DOM Přístup ke XML databázím 7 3 Indexování struktury XML dokumentu Dietzovo kódovací schéma Signatury XML stromu Standardní signatury Osa ancestor Osa preceding Osa descendant Osa following Osa parent Osa child Osa preceding-sibling Osa following-sibling Osa self Osa ancestor-or-self Osa descendant-or-self Rozšířené signatury Osa ancestor Osa preceding Osa descendant Osa following Osa parent Osa child Osa preceding-sibling Osa following-sibling Osy self, ancestor-or-self a descendant-or-self Editace signatur Standardní signatury 15 vi

7 Přidání přímého potomka Přidání před kontextový uzel Odebrání uzlu Rozšířené signatury Přidání přímého potomka Přidání před kontextový uzel Odebrání uzlu Dynamické signatury 17 4 Implementace Použité technologie Programovací jazyk JAVA Balíkjava.nio Subversion Maven Jakarta Commons JUnit Systém XIQE Struktura systému Fungování systému Důležité třídy a rozhraní Třídy signatur XML stromu Funkční rozhraní signatur Struktura signatury Generování signatury Použití signatur 23 5 Testování efektivity Způsob testování XMark XPathMark Systém ExEx Experimenty Testovací konfigurace Prováděné experimenty Výsledky testů Vyhodnocení experimentů 27 6 Závěr 28 Bibliografie 29 vii

8 Kapitola 1 Úvod Nasazování nových výpočetních systémů a propojení počítačových sítí díky internetu způsobuje, že množství dat, které jsou zpracovávány a vyměňovány elektronicky, neustále roste. Hojně rozšířeným formátem pro ukládání a výměnu informací je také jazyk XML. Tento formát je oblíben zejména pro jeho otevřenost, rozšiřitelnost a snadné zpracování. Jazyk XML přidává k datům sémantiku a hierarchicky rozčleňuje dokument. S rostoucím objemem dat uložených v XML roste i potřeba efektivního vyhledávání v těchto datech, ale i v struktuře XML dokumentu. K tomuto účelu jsou využívány různé indexační metody, které kompaktně zachycují strukturu XML dokumentu a efektivně vyhodnocují strukturální vztahy mezi uzly XML dokumentu. Tato práce se zabývá indexováním XML dokumentů pomocí signatur XML stromu. Nejprve je představen jazyk XML a jsou zmíněny jeho hlavní rysy s ohledem na indexování. Dále jsou popsány signatury XML stromu, jejich struktura a princip fungování. Také je prezentován systém XIQE (XML Indexing and Querying Engine) vyvíjený na fakultě informatiky, který má za cíl porovnávat různé indexační metody. Cílem práce je popsat indexování XML dokumentu pomocí standardních a rozšířených signatur XML stromu, implementovat tuto metodu indexování v systému XIQE a zhodnotit efektivitu signatur pomocí vhodné sady experimentů. 1

9 Kapitola 2 Standardy rodiny XML Tato kapitola je zaměřena na základní popis jazyka XML a to především na strukturální vztahy uzlů. Popisuje model XML dokumentu jako strukturu uspořádaného stromu. Nastiňuje problém adresace jednotlivých uzlů dokumentu a seznamuje se syntaxí navigačního jazyka XPath. 2.1 Jazyk XML XML je hojně používaným značkovacím standardem. Používá se zejména v prostředí internetu jako vhodný formát pro výměnu informací. XML je populární hlavně pro možnost definování vlastních značek a pro oddělení sémantiky dat od jejich vizuální podoby v různých prostředích Historie jazyka XML XML (Extensible Markup Language) neboli rozšiřitelný značkovací jazyk, je metajazyk, který říká, jak vytvářet značkovací jazyky vhodné pro tvorbu dokumentů obsahujících strukturovaná data. Jedná se o standard konsorcia W3C, který se vyvinul z jazyka SGML (Standard Generalized Markup Language) jako jeho omezení a zjednodušení. Využívá se jako vhodný formát pro ukládání a výměnu informací, zejména pro jeho dobrou čitelnost pro člověka a snadné strojové zpracování Syntaxe dokumentu XML Dokumenty jazyka XML mají textový formát, jsou tvořeny textovými daty a značkami (tags). Značky přidávají k dokumentu dodatečné informace, hierarchicky člení dokument a určují sémantiku dat. Jsou pro ně rezervovány znaky lomených závorek, do kterých jsou uzavřeny. Nejpoužívanější typy značek jsou: komentáře: <! text komentáře > - umožňují vkládat do textu vlastní poznámky, které nejsou dále interpretovány; instrukce pro zpracování: <?identif ikator data? >-přidává k dokumentu informace pro aplikace, například analyzátory, XSLT procesory atd.; 2

10 2.1. JAZYK XML počáteční a koncová značka elementu: < jmenoelementu> a </jmenoelementu> - párová značka, nejdůležitější značka, dává sémantiku obsahu vyskytujícímu se mezi těmito značkami, vytváří strukturu; prázdný element: < jmenoelementu/> - jedná se jen o zkrácený zápis elementu, který neobsahuje žádný element ani textový uzel. Počáteční značka elementu může obsahovat i definici atributů, které přidávají k elementu dále nestrukturované informace. Atribut je řetězec tvaru nazevatributu="hodnota", například: <auto objemmotoru="l, 9" barva="modrá">. XML klade na strukturu a syntaxi dokumentu mnohé požadavky. Například koncové značce elementu musí předcházet koncová značka vnořeného elementu. XML určuje i znaky, které se smí vyskytovat v názvu elementu Well formed dokument Dokument splňující všechna obecná pravidla XML se označuje jako well formed. Ukázku well formed dokumentu je možno vidět v příkladu Podle pravidel jazyka XML lze vytvářet obrovské množství dokumentů. Pro aplikace je však vhodné tuto množinu omezit a zpracovávat dokumenty jen určitých typů, u kterých aplikace ví, jak data interpretovat. K tomuto účelu se používá DTD (Document Type Definition), která svými pravidly umožňuje omezit množinu názvů elementů, kontext jejich výskytu, či určit přípustné hodnoty atributů. Použití DTD v XML dokumentu se deklaruje značkou <!DOCTYPE jmenoelementu ID-ExternihoDTD [InterniDTD]>. Řetězec jmenoelementu je názvem elementu na nejvyšší úrovni. Tento element se nazývá kořenový (root element) a musí být v dokumentu jediný. ID-ExternihoDTD je jméno souboru obsahující pravidla DTD. InterniDTD jsou pravidla vepsaná přímo do značky DTD. Ve značce nemusí být interní nebo externí část obsažena. Dokument splňující DTD se nazývá valid. <?xml version="l.0"?> <adresa> <ulice>mlýnská</ulice> <cislopopisne>2 9K/cislopopisne> <obec>velké Hoštice</obec> <psc>7473k/psc> </adresa> <! Nějaký komentář > Příklad 2.1.1: Ukázka well formed XML dokumentu 3

11 2.2. MODEL XML DOKUMENTU 2.2 Model XML dokumentu Na well formed dokumenty lze z logického hlediska pohlížet jako na uspořádané stromy, které jsou tvořeny několika typy uzlů. Kořenem tohoto stromu je abstraktní uzel označo vaný jako uzel dokumentu. Přímo na uzlu dokumentu je zavěšen kořenový element a uzly hlavičky dokumentu. Ukázku stromu XML dokumentuje možno vidět na obrázku 2.1. <^Nějaký komentář^ Obrázek 2.1: Model XML dokumentu Ve stromech se převážně vyskytují uzly těchto typů: elementy (elements); atributy (attributs); instrukce pro zpracování (processing instructions); komentáře (comments); textové uzly (text nodes); entity (entities); CDATA. Nejdůležitějším typem uzlů jsou elementy, které jako jediné mohou obsahovat další uzly a tvořit tak hierarchickou strukturu. Ostatní typy uzlů tvoří ve stromě listy. 4

12 2.3 Navigace ve stromu XML dokumentu 2.3. NAVIGACE VE STROMU XML DOKUMENTU Při práci s XML dokumenty je potřeba vybírat části dokumentu, odkazovat na jednotlivé uzly, zpracovávat některé atributy. Pro adresování uzlů dokumentu je určen jazyk XPath. XPath není plnohodnotným dotazovacím jazykem, neboť není schopen vybírat uzly z více dokumentů nebo je dále zpracovávat. Jedná se však o mocný nástroj k navigaci XML dokumentem, a proto se využívá i v mnoha dalších jazycích, jako jsou XQuery, XPoitner, XSLT, Schematron Syntaxe jazyka XPath XPath výraz se skládá z jednotlivých kroků. Kroky jsou tvořeny osou, testem uzlu a predikátem. Obecně se zapisují: osa: : testuz lu [predikát ]. Osa specifikuje množinu, ve které se bude uzel vyhledávat. TestUzlu určuje jméno nebo typ uzlu, který má být vybrán a predikát umožňuje zúžit výběr uzlů pomocí testu na některou vlastnost. Například výraz: child: : auto "modrá" ], vybere elementy se jménem auto, které mají atribut barva s hodnotou rovnající se řetězci modrá. Jednotlivé kroky se dají skládat dohromady, jako oddělovač kroků slouží znak lomítko. Jednotlivé kroky se vyhodnocují zleva doprava a aplikují se na již dříve vybranou množinu uzlů. Výraz začínající lomítkem je absolutní a vyhodnocuje se vzhledem k uzlu dokumentu. Pokud úvodní lomítko chybí, začíná se s vyhodnocováním od kontextového uzlu. Ve výrazech jazyka XPath je možno setkat se s použitím dvou lomítek za sebou. Znamená to, že při vyhledávání odpovídajících uzlů lze přeskočit libovolné množství úrovní směrem do hloubky stromu dokumentu. To má však stejný význam, jako by se hledalo na ose descendant Pro tvorbu XPath výrazů je možné používat tyto osy: child - množina přímých potomků kontextového uzlu; descendant - množina všech potomků kontextového uzlu; descendant-or-self - množina všech potomků kontextového uzlu plus kontextový uzel; parent - množina obsahující rodiče kontextového uzlu; ancestor - množina všech předků kontextového uzlu; ancestor-or-self - množina všech předků kontextového uzlu plus kontextový uzel; selí- množina obsahující kontextový uzel; following - množina všech uzlů nacházejících se za kontextovým uzlem; following-sibling - množina všech sourozeneckých uzlů nacházejících se za kontextovým uzlem; 5

13 2.4. ROZHRANÍ PŘÍSTUPU KE XML DOKUMENTU preceding - množina všech uzlů nacházejících se před kontextovým uzlem mimo předků kontextového uzlu; preceding-sibling - množina všech sourozeneckých uzlů nacházejících se před kontextovým uzlem; attribute - množina atributů kontextového uzlu; namespace - množina uzlů jmenných prostorů deklarovaných pro daný uzel. Výchozí osou je osa child. Pokud se tedy v definici kroku osa vynechá, použije se osa child. Zpracování XPath výrazu po výběru množiny uzlů podle specifikované osy dále pokračuje vyhodnocením testu uzlu. Výběr uzlu lze omezit těmito funkcemi: * - vybere všechny uzly základního typu dané osy 1 ; nodeq - vybere všechny uzly dané předchozím výběrem; textq - vybere jen textové uzly; jmenoelementu - vybere elementy se zadaným jménem; commentq - vybere komentáře. Posledním omezením na výběr uzlů, které lze v jednotlivém kroku uplatnit, je predikát. Jedná se o libovolný výraz jazyka XPath, jehož vyhodnocením se získá pravdivostní hodnota. Tato hodnota určuje, zdali bude testovaný uzel zahrnut do výběru, či nikoliv. Predikát je uzavřen v hranatých závorkách. V XPath výrazech je možné narazit i na predikáty navracející přirozené číslo. V takovémto případě se jedná o test na pořadí uzlů, který se interpretuje jako position () = hodnotavyrazu. Například dojde-li k vyhodnocení výrazu /kniha/kapitola [5], bude navrácen uzel páté kapitoly knihy. 2.4 Rozhraní přístupu ke XML dokumentu Pro zpracovávání XML dokumentů aplikacemi existují dvě základní rozhraní nazývané SAX (Simple Api to XML) a DOM (Document Object Model). Jsou velice užitečná a každé má své výhody i nevýhody Rozhraní SAX SAX funguje na principu procházení souboru dokumentu a jeho analyzování. Pokaždé, když SAX rozpozná v dokumentu některý z uzlů dokumentu, zašle aplikaci zprávu o rozpoznaném uzlu a jeho hodnotě. Aplikace pak může vhodně reagovat a jednotlivé uzly zpracovávat. 1. Na ose attribute vybere atributy, na ose namespace vybere jmenné prostory. Na ostatních osách vybere elementy. 6

14 2.4. ROZHRANÍ PŘÍSTUPU KE XML DOKUMENTU Výhodou SAX je hlavně jeho rychlost a jednoduchost, avšak klade větší nároky na samotnou aplikaci, která si musí pamatovat hodnoty jednotlivých uzlů a určovat závislosti mezi uzly Rozhraní DOM Naproti tomu stojí rozhraní DOM, to vytvoří podle dokumentu objektový model a předá ho aplikaci. Pro sestavování stromu dokumentu využívá DOM události generované SAX analyzátorem. Jedná se tedy o jakousi nadstavbu rozhraní SAX. Vytvářením objektové struktury celého dokumentu roste paměťová náročnost, zato však DOM poskytuje příjemnější práci s XML dokumentem Přístup ke XML databázím Rozhraní SAX a DOM jsou však využitelná spíše k přístupu k jednotlivým souborům. Při práci s kolekcemi dokumentů nebo v oblasti nativních XML databází, se jeví značně neefektivní procházet celý dokument a vytvářet objektové modely při každé operaci nad dokumentem. V těchto případech je vhodné dokumenty zpracovat jen jednou a to při vkládání do databáze nebo kolekce a rozdělit je na data a strukturu. Data lze uložit zvlášť za pomocí standardních metod užívaných v relačních databázích. Pro strukturu je důležité zvolit některou indexační metodu, strukturu dokumentu indexovat a vhodně uložit. Pak je možné dotazy efektivně vyhodnocovat nad daným indexem a přistupovat jen k uzlům, které je nezbytně nutné zpracovat. 7

15 Kapitola 3 Indexování struktury XML dokumentu Procházení objektové struktury stromu při vyhledávání v XML dokumentech se nejeví moc efektivní. Proto se hledají metody, jak vhodně a kompaktně zachytit stromovou strukturu a urychlit tím vyhledávání v XML dokumentech. Existuje více způsobů, jak vhodně strukturu dokumentu zakódovat. Například lze využít invertovaný index cest, kódovací schéma UID, SCIF, či prvočíselné číslovací schéma. Tyto metody jsou popsány v [ ]. Efektivním způsobem zachycení strukturálních vztahů jsou i signatury XML stromu. Tato kapitola ukazuje způsob indexování a popisuje vyhledávání pomocí signatur XML stromu. Při tvorbě této kapitoly bylo čerpáno převážně z [1] a [6]. 3.1 Dietzovo kódovací schéma Princip signatur je založen na Dietzově kódovacím schématu, které na určení strukturálních vztahů využívá sekvencí preorder a postorder. Obě tyto sekvence lze získat tak, že při průchodu stromem dokumentu do hloubky dochází k postupnému zařazování uzlů do sekvence. V případě preorder se zařazují při vstoupení do uzlu, který se v sekvenci ještě nevyskytuje. U sekvence postorder se uzly umisťují do sekvence až při jejich opouštění, tedy poté co dojde k zpracování všech potomků daného uzlu. Preorder tak odpovídá množině počátečních značek elementů a postorder je tvořen množinou koncových značek elementů, a to ve stejném pořadí v jakém se vyskytují v dokumentu. Na základě těchto sekvencí se přiřadí každému uzlu ve stromu elementů dokumentu dvojice čísel, která vyjadřují pozici uzlu v sekvenci preorder a v sekvenci postorder. Získá se tak indexovaný strom, ten je vidět na obrázku 3.1. Z takto indexovaného stromu lze již lehce určovat vzájemnou pozici dvou libovolných uzlů a to za využití vlastností sekvencí preorder a postorder. Nechť pozice uzlu a v sekvenci preorder je označena jako pre(a) a pozice uzlu a v sekvenci postorder jako post(a). Dále nechť k je kontextovým uzlem, tedy uzlem, ke kterému je vyhodnocení vztaženo. Pak při porovnání pozic v sekvencích dochází k následujícím situacím: pre(a) < pre(k): uzel a předkem nebo předchůdcem kontextového uzlu Je; pre(a) > pre(k): uzel a potomkem nebo následníkem kontextového uzlu Je; post(a) < post(k): uzel a předchůdcem nebo potomkem kontextového uzlu Je; 8

16 3.2. SIGNATURY XML STROMU Obrázek 3.1: Strom indexovaný Dietzovým kódovacím schématem post(a) > post(k): uzel a předkem nebo následníkem kontextového uzlu k. Je tedy zřejmé, že současné porovnání pozic v sekvenci preorder a postorder kontextového uzlu k a libovolného uzlu a daného stromu, jednoznačně určí základní osu jazyka XPath na které se uzel a, vzhledem ke kontextovému uzlu k, nachází. Příslušnost uzlu a k osám kontextového uzlu k je dána následujícími vztahy: pre(a) < pre(k) & post(a) < post(k): uzel a je prvkem osy preceding kontextového uzlu k; pre(a) < pre(k) & post(a) > post(k): uzel a je prvkem osy ancestor kontextového uzlu k) pre(a) > pre(k) & post(a) < post(k): uzel a je prvkem osy descendant kontextového uzlu k; pre(a) > pre(k) & post(a) > post(k): uzel a je prvkem osy following kontextového uzlu k. Tyto vlastnosti lze jednoduše zachytit v grafu, viz obrázek 3.2. Na jedné ose je vyneseno pořadí v sekvenci preorder, na druhé pak pořadí v sekvenci postorder. Rovnoběžky s osami, které jsou vedeny přes kontextový uzel, rozdělí graf na sektory uzlů základních os. Pro názornost byly do grafu vyneseny uzly ze stromu z obrázku 3.1. Jako kontextový uzel byl zvolen uzel e. 3.2 Signatury XML stromu Strom XML dokumentu opatřený Dietzovým kódovacím schématem je vhodnou strukturou pro vyhodnocování vztahů dvou uzlů stromu, ale neumožňuje již tak snadno určit všechny 9

17 3.2. SIGNATURY XML STROMU postorder f Předci Následníci Předchůdci Potomci 0 preorder Obrázek 3.2: Sektory základních os kontextového uzlu e uzly dané osy vzhledem ke kontextovému uzlu. Tuto vlastnost však mají signatury stromu (XML Tree Signatures), které vhodně linearizují stromovou strukturu Dietzova stromu a tím získávají informaci, kde uzly dané osy hledat. Nejedná se o jedinou přínosnou vlastnost sig natur. Signatury se dají použít i k efektivnímu vyhledávání vzorů ve struktuře dokumentu. Touto problematikou se důkladně zabývá [6] Standardní signatury Struktura standardní signatury je tvořena polem dvojic (jmenouzlu, postorder), kde jmenouzlu udává název uzlu a postorder je pozice uzlu v sekvenci postorder. Tyto dvojice jsou v poli uspořádány podle pozice uzlu v sekvenci preorder (dále označována jako hodnota preorder). Pro ilustraci struktury signatury je na obrázku 3.3 zachycena signatura k Dietzově stromu z obrázku 3.1. K identifikaci jednotlivých uzlů v signatuře se používá přímo hodnota preorder. a:lo b;3 C!1 d!2 e;7 f!4 g!5 h!6 i 9 j 8 Obrázek 3.3: Struktura signatury Uspořádání uzlů podle hodnoty preorder se jeví jako velice vhodné. Z pozice kontex tového uzlu lze totiž predikovat, kde se nacházejí uzly jednotlivých os. Toto uspořádání způsobuje, že před libovolným uzlem se mohou vyskytovat pouze jeho předci nebo před chůdci a za uzlem se nacházejí nejdříve všechny uzly potomků a za nimi uzly následníků daného uzlu. Základní osy názorně ilustruje obrázek 3.4. K získání všech uzlů dané osy tak stačí procházet signaturu od kontextového uzlu da ným směrem a řídit se pravidly, které jsou uvedeny v následujících odstavcích. 10

18 3.2. SIGNATURY XML STROMU Předci Potomci k Předchůdci Kontextový uzel Následníci Obrázek 3.4: Poloha os v signatuře Osa ancestor Uzly předků se nacházejí před kontextovým uzlem. Mezi nimi se však mohou vyskytovat uzly předchůdců. Uzly předků a předchůdců se od sebe navzájem odlišují hodnotou postorder, která je u předků vyšší než postorder kontextového uzlu a u předchůdců je nižší než postorder kontextového uzlu. Celá osa ancestor se tedy získá procházením signatury od kontextového uzlu k počátku signatury a vybráním jen těch uzlů splňujících podmínku: post(a) > post(k), kde a je právě testovaný uzel a k je kontextový uzel. Tímto postupem je získána celá osa ancestor ve vhodném uspořádání Osa preceding Stejně jako u osy ancestor se uzly osy preceding nalézají před kontextovým uzlem. Je třeba projít všechny uzly před kontextovým uzlem a vybrat jen ty, které splňují opačnou pod mínku než u osy ancestor. Pro předchůdce tedy platí post(a) < post(k). Procházení je zapo čato v uzlu, který předchází kontextovému uzlu a končí v uzlu kořenového elementu. Ten již není třeba testovat, protože leží na ose ancestor Osa descendant Všechny uzly osy descendant jsou umístěny v souvislém bloku, který začíná bezprostředně za kontextovým uzlem. Všechny uzly osy descendatje tak možno získat průchodem signa turou od kontextového uzlu směrem ke konci signatury. Vyberou se všechny uzly, dokud se nenarazí na prvního následníka nebo na konec signatury. Tedy dokud bude platit podmínka post(a) <post(k) A Osa following Uzly této osy se také nacházejí za kontextovým uzlem a to v souvislé oblasti od posledního potomka do konce signatury. Takže je nejdříve nutné nalézt uzel prvního následníka. Tento uzel lze najít procházením od kontextového uzlu směrem ke konci signatury a testováním uzlů na podmínku post(a) > post(k). První uzel, který tuto podmínku splní, je hledaným uz lem prvního následníka. Dalšími uzly osy following jsou všechny uzly následující za tímto uzlem až do konce signatury. 11

19 3.2. SIGNATURY XML STROMU Druhou možností, jak tuto osu získat, je procházení signatury od konce signatury po uzel posledního potomka. Do výběru patří všechny uzly splňující podmínku post(a) > post(k). Tento způsob výběru je obecně efektivnější, neboť nedochází k procházení potomků. Získaná osa však má obrácené pořadí uzlů Osa parent Tato osa obsahuje vždy pouze jediný uzel. Jediná výjimka nastává, pokud je kontextovým uzlem kořenový element. To jest v případě pre(k) = 1. Tento uzel nemá žádného předka a osa zůstává prázdná. V ostatních případech se hledaný uzel odhalí procházením signatury od kontextového uzlu k počátku. První uzel, který vyhovuje podmínce post(a) > post(k), je hledaným uzlem Osa child Osa child je podmnožinou osy descendant Prohledávaná oblast je ohraničena kontextovým uzlem a uzlem prvního následníka. Prvním uzlem na ose child je uzel bezprostředně za kontextovým uzlem. Musí ale splňovat podmínku post(a) < post(k), jinak nemá kontextový uzel žádné potomky. Zbylé uzly osy chlid vyhovují podmínce post(a) > post(ch), kde post(a) je postorder právě testovaného uzlu a post(ch)je postorder posledního nalezeného uzlu osy child Osa preceding-sibling Jedná se o podmnožinu osy preceding. V signatuře se uzly této osy vyskytují mezi kontextovým uzlem a uzlem jeho předka. Pro stanovení této osy je třeba nejdříve nalézt předka p kontextového uzlu k. Od uzlu p se postupuje ke kontextovému uzlu k. Používá se přitom metoda získání osy child pro uzel p. Prohledávání končí při dosažení uzlu k. Z vymezené oblasti je tedy vybrán uzel bezprostředně za uzlem p a dále všechny uzly a splňující podmínku post(a) > post(ps), kde ps je poslední získaný uzel osy preceding-sibling Osa following-sibling U této osy je také potřeba nejdříve nalézt předka p kontextového uzlu k. Poté se postupuje od uzlu k až po prvního následníka uzlu p. Tedy dokud platí post(a) < post(p). Jako první uzel osy following-sibling je vybrán uzel a, pro který platí post(a) > post(k). Pro zbylé uzly osy following-sibling platí post(a) > post(fs), kde fs je poslední získaný uzel osy followingsibling Osa self Získání této osy je triviální. Jedná se o jednoprvkovou osu obsahující kontextový uzel k. 12

20 3.2. SIGNATURY XML STROMU Osa ancestor-or-self Nejdříve se vybere kontextový uzel Je. Zbylé uzly této osy se získají jako u osy ancestor Osa descendant-or-self Počátečním uzlem této osy je kontextový uzel. Za ním následují všechny uzly získané pomocí algoritmu pro osu descendant Rozšířené signatury Při procházení standardních signatur je často potřeba vyhledávat rodičovský uzel a vyhledat rozhraní mezi potomky a následníky. Pro zrychlení vyhledání jednotlivých os byly navrženy rozšířené signatury (extended signatures). Struktura rozšířené signatury je tvořena, podobně jako u standardních signatur, polem uzlů uspořádaných podle preorder, avšak uzly signatury jsou již tvořeny čtveřicí (jmenouzlu, postorder, first following, first ancestor). Atributy jmenouzlu a postorder mají stejný význam jako u standardních signatur. Atribut first following je ukazatelem na prvního následníka a first ancestor ukazuje na rodičovský uzel kontextového uzlu. Hodnota first following pro uzel kořenového elementu je definována jako 0. Uzly nemající následníky, mají hodnotu ukazatele na prvního následníka nastavenu na: first ancestor = length + 1, kde proměnná length obsahuje počet uzlů v signatuře. Přidání dvou nových ukazatelů výrazně urychluje určování uzlů jednotlivých os. Toto zrychlení je však vykoupeno větší paměťovou náročností, kdy každý uzel signatury zabírá dvojnásobné místo. Rozšíření signatur o nové ukazatele mění i způsob určování os jazyka XPath. Nové algoritmy jsou popsány v následujících odstavcích Osa ancestor V případě této osy bude urychlení velice výrazné. Ukazatel first ancestor totiž odkazuje přímo na rodiče uzlu. Jako první uzel osy ancestor je vybrán 1 uzel na pozici preorder = first ancestor. Dále je vždy vybrán uzel, na který odkazuje first ancestor posledně vybraného uzlu. Takto se postupuje, dokud se nenarazí na uzel kořenového elementu, který je vždy posledním uzlem na ose ancestor Osa preceding Nejdříve jsou vybrány všechny uzly od kontextového uzlu po uzel rodiče kontextového uzlu. Pak jsou postupně vybrány všechny uzly, které se nacházejí mezi sousedními předky kontextového uzlu. 1. Pokud kontextovým uzelem není kořenový element. 13

21 3.2. SIGNATURY XML STROMU Osa descendant Ukazatel first following shora ohraničuje oblast, ve které se vyskytují všechny uzly potomků. Získání osy descendant tedy spočívá ve vybrání všech uzlů od kontextového uzlu k prvnímu následníkovi. Uzel následníka a kontextový uzel se do výběru samozřejmě nezahrnují Osa following Pokud kontextový uzel má nějaké následníky, tedy platí first following < length, pak je jako první vybrán uzel, na který odkazuje first following. Poté jsou vybrány všechny následující uzly až do konce signatury Osa parent Je-li kontextový uzel zároveň i kořenovým elementem, je tato osa prázdná. Jinak obsahuje jediný uzel a to uzel, na který odkazuje first ancestor Osa child Osa child ke kontextovému uzlu je prázdná, pokud first following odkazuje na uzel následující ihned za kontextovým uzlem. Jinak je prvním uzlem osy child uzel bezprostředně za kontextovým uzlem. Na další uzel osy child odkazuje vždy ukazatel first following posledně vybraného uzlu. Posledním uzlem této osy je uzel a, pro který platí ffoll(a) = ffoll(k), ffoll(a) je označení pro ukazatel first following uzlu a Osa preceding-sibling Tato osa je získána procházením oblasti od kontextového uzlu až k rodiči kontextového uzlu. Vybrány jsou jen uzly, pro které platí fanc(a) = fanc(k). Kde fanc(a) je rodič uzlu a. V některých případech je efektivnější získávání této osy v reverzním směru. Prvním uzlem této osy je uzel bezprostředně následující za uzlem rodiče kontextového uzlu. Na další uzel vždy odkazuje ukazatel first following posledně vybraného uzlu dokud ffoll(a) < k Osa following-sibling Nejdříve se získají rodiče kontextového uzlu, protože jeho ukazatel first following uzavírá oblast, kde se mohou uzly osy following-sibling vyskytovat. Prvním uzlem je uzel, na který odkazuje ukazatel first following kontextového uzlu. Na další uzel vždy odkazuje ukazatel first following posledně vybraného uzlu dokud ffoll(a) < ffoll(fanc(v)). 14

22 3.3. EDITACE SIGNATUR Osy self, ancestor-or-self a descendant-or-self U osy self nedochází k žádné změně. Osy ancestor-or-self a descendant-or-self jsou osy získané pomocí postupu pro osu ancestor respektive descendant, na jejichž počátek je přidán kontextový uzel. 3.3 Editace signatur XML databáze nejsou jen statické systémy, které zodpovídají dotazy nad množinou dokumentů, ale většina z nich také poskytuje funkce pro úpravu dokumentů. Umožňují do jednotlivých dokumentů vkládat uzly, či je z nich korektně odebírat. Nebylo by vhodné při každé takové změně, znovu generovat indexační strukturu pro daný dokument, proto je vhodné, aby i indexační metoda byla schopna editace. Signatury XML stromu jsou schopny přidávat a odebírat jednotlivé uzly XML dokumentu. V Následujících odstavcích jsou popisovány způsoby vkládání a odebírání uzlů a změny, které v signatuře nastanou. Pro editaci signatur jsou definovány tři základní operace. Jedná se o vložení nového uzlu před kontextový uzel, dále o vložení nového uzlu jako posledního přímého potomka kontextového uzlu a nakonec o odebrání kontextového uzlu. Aby nedošlo k narušení stromové struktury dokumentu, není dovoleno vkládat nový uzel před uzel kořenového elementu. Při odstraňování uzlu se odstraní i všechny uzly jeho potomků Standardní signatury Při editaci standardních signatur je potřeba opravit preorder a postorder některých uzlů. Pořadí preorder se mění odsunutím bloku uzlů. Změna postorder je řešena přičtením nebo odečtením celého čísla vyjadřujícího počet přidaných nebo odebraných uzlů ke všem měněným uzlům Přidání přímého potomka Přidání nového uzlu x, jako posledního přímého potomka kontextového uzlu Je, se děje následujícím způsobem. Nejdříve je potřeba určit pozici nového uzlu v signatuře, tedy pre(x). Pozice nového uzlu bude odpovídat poloze prvního následníka kontextového uzlu ve staré signatuře. První následník kontextového uzlu se nalezne při procházení signatury od kontextového uzlu směrem ke konci signatury. První uzel a, který splňuje post(a) > post(k), je hledaným prvním následníkem. Jako hodnota postorder nového uzlu bude použita hodnota post(k). Na pozici prvního následníka se vloží nový uzel (post(k),x), přičemž uzel na této pozici a uzly za ním následující jsou odsunuty o jednu pozici vpravo. Předchozí úpravy však nevytvoří správnou signaturu. Aby byla signatura korektní a odpovídala provedené operaci, je potřeba opravit postorder všech předků a následníků nového uzlu. K postorder těchto uzlů musí být přičtena hodnota 1. V situaci kdy kontextový uzel nemá následníky, bude nový uzel přidán na konec signatury. Jako hodnota postorder nového uzlu bude také použita hodnota post(k). Po přidání 15

PRG036 Technologie XML

PRG036 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íce

Využití XML v DB aplikacích

Využ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íce

Ukládání a vyhledávání XML dat

Uklá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íce

Distanční opora předmětu: Databázové systémy Tématický blok č. 5: Dotazovací jazyk XPath Autor: RNDr. Jan Lánský, Ph.D.

Distanční opora předmětu: Databázové systémy Tématický blok č. 5: Dotazovací jazyk XPath Autor: RNDr. Jan Lánský, Ph.D. Distanční opora předmětu: Databázové systémy Tématický blok č. 5: Dotazovací jazyk XPath Autor: RNDr. Jan Lánský, Ph.D. Obsah kapitoly 1 XPath 1.1 Cesta 1.2 Osy 1.3 Test uzlu 1.4 Podmínka 1.5 Vestavěné

Více

24. 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. 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íce

Rozhraní pro práci s XML dokumenty. Roman Malo

Rozhraní pro práci s XML dokumenty. Roman Malo Rozhraní pro práci s XML dokumenty Roman Malo Práce s XML dokumenty Datově a dokumentově orientované XML dokumenty Problém preference elementů a atributů Strom elementů Strom uzlů Základní zpracování dokumentů

Více

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 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íce

MBI - technologická realizace modelu

MBI - 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íce

Maturitní otázky z předmětu PROGRAMOVÁNÍ

Maturitní 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íce

Semestrální práce 2 znakový strom

Semestrální práce 2 znakový strom Semestrální práce 2 znakový strom Ondřej Petržilka Datový model BlockFileRecord Bázová abstraktní třída pro záznam ukládaný do blokového souboru RhymeRecord Konkrétní třída záznamu ukládaného do blokového

Více

Systé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 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íce

PRODUKTY. Tovek Tools

PRODUKTY. Tovek Tools jsou desktopovou aplikací určenou k vyhledávání informací, tvorbě různých typů analýz a vytváření přehledů a rešerší. Jsou vhodné pro práci i s velkým objemem textových dat z různorodých informačních zdrojů.

Více

Podpora XML v.net. Podpora XML v.net. nezávislý publicista. Jirka Kosek. http://www.kosek

Podpora 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íce

XQuery. Jirka Kosek. Visual FoxPro DevCon 21. 23. června 2005. Praha. Copyright 2005 Jiří Kosek

XQuery. Jirka Kosek. Visual FoxPro DevCon 21. 23. června 2005. Praha. Copyright 2005 Jiří Kosek XQuery Jirka Kosek Visual FoxPro DevCon 21. 23. června 2005 Praha úvod do XQuery základy XPath 2.0 FLWOR výrazy typový systém implementace XQuery Agenda 2 / 38 Úvod 3 / 38 Proč potřebujeme XQuery? XML

Více

TÉMATICKÝ OKRUH Softwarové inženýrství

TÉ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íce

Základní datové struktury

Základní datové struktury Základní datové struktury Martin Trnečka Katedra informatiky, Přírodovědecká fakulta Univerzita Palackého v Olomouci 4. listopadu 2013 Martin Trnečka (UPOL) Algoritmická matematika 1 4. listopadu 2013

Více

Komprese a dotazování nad XML dokumenty

Komprese a dotazování nad XML dokumenty Komprese a dotazování nad XML dokumenty Prezentace diplomové práce Lukáš Skřivánek České vysoké učení technické v Praze Fakulta elektrotechnická Katedra počítačů květen 2007 Vedoucí práce: Ing. Miroslav

Více

Vý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 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íce

Jazyky pro popis dat

Jazyky 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íce

Stručně o XML (výhody, nevýhody) Proč komprimovat XML? Metody komprese XML XMill. Optimalizace komprese XML. Závěr

Stručně o XML (výhody, nevýhody) Proč komprimovat XML? Metody komprese XML XMill. Optimalizace komprese XML. Závěr Pavel Hruška Stručně o XML (výhody, nevýhody) Proč komprimovat XML? Metody komprese XML XMill Představení, princip, výsledky Analýza XML (možná úskalí) Optimalizace komprese XML Přeskládání kontejnerů

Více

3. Je defenzivní programování technikou skrývání implementace? Vyberte jednu z nabízených možností: Pravda Nepravda

3. Je defenzivní programování technikou skrývání implementace? Vyberte jednu z nabízených možností: Pravda Nepravda 1. Lze vždy z tzv. instanční třídy vytvořit objekt? 2. Co je nejčastější příčinou vzniku chyb? A. Specifikace B. Testování C. Návrh D. Analýza E. Kódování 3. Je defenzivní programování technikou skrývání

Více

Algoritmy a datové struktury

Algoritmy a datové struktury Algoritmy a datové struktury Stromy 1 / 32 Obsah přednášky Pole a seznamy Stromy Procházení stromů Binární stromy Procházení BS Binární vyhledávací stromy 2 / 32 Pole Hledání v poli metodou půlení intervalu

Více

Tovek Tools. Tovek Tools jsou standardně dodávány ve dvou variantách: Tovek Tools Search Pack Tovek Tools Analyst Pack. Připojené informační zdroje

Tovek Tools. Tovek Tools jsou standardně dodávány ve dvou variantách: Tovek Tools Search Pack Tovek Tools Analyst Pack. Připojené informační zdroje jsou souborem klientských desktopových aplikací určených k indexování dat, vyhledávání informací, tvorbě různých typů analýz a vytváření přehledů a rešerší. Jsou vhodné pro práci s velkým objemem textových

Více

Základy XML struktura dokumentu (včetně testových otázek)

Zá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íce

Příklad : String txt1 = new String( Ahoj vsichni! ); //vytvoří instanci třídy String a přiřadí ji vnitřní hodnotu Ahoj vsichni!

Příklad : String txt1 = new String( Ahoj vsichni! ); //vytvoří instanci třídy String a přiřadí ji vnitřní hodnotu Ahoj vsichni! Java práce s řetězci Trochu povídání.. Řetězce jsou v Javě reprezentovány instancemi tříd StringBuffer a String. Tyto třídy jsou součástí balíčku java.lang, tudíž je možno s nimi pracovat ihned bez nutného

Více

Datové typy a struktury

Datové typy a struktury atové typy a struktury Jednoduché datové typy oolean = logická hodnota (true / false) K uložení stačí 1 bit často celé slovo (1 byte) haracter = znak Pro 8-bitový SII kód stačí 1 byte (256 možností) Pro

Více

PHP framework Nette. Kapitola 1. 1.1 Úvod. 1.2 Architektura Nette

PHP framework Nette. Kapitola 1. 1.1 Úvod. 1.2 Architektura Nette Kapitola 1 PHP framework Nette 1.1 Úvod Zkratka PHP (z anglického PHP: Hypertext Preprocessor) označuje populární skriptovací jazyk primárně navržený pro vývoj webových aplikací. Jeho oblíbenost vyplývá

Více

Experimentální systém pro WEB IR

Experimentální systém pro WEB IR Experimentální systém pro WEB IR Jiří Vraný Školitel: Doc. RNDr. Pavel Satrapa PhD. Problematika disertační práce velmi stručný úvod WEB IR information retrieval from WWW, vyhledávání na webu Vzhledem

Více

Zpráva o zhotoveném plnění

Zpráva o zhotoveném plnění Zpráva o zhotoveném plnění Aplikace byla vytvořena v souladu se Smlouvou a na základě průběžných konzultací s pověřenými pracovníky referátu Manuscriptorium. Toto je zpráva o zhotoveném plnění. Autor:

Více

XML terminologie a charakteristiky. Roman Malo

XML 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íce

Dolování v objektových datech. Ivana Rudolfová

Dolování v objektových datech. Ivana Rudolfová Dolování v objektových datech Ivana Rudolfová Relační databáze - nevýhody První normální forma neumožňuje vyjádřit vztahy A je podtypem B nebo vytvořit struktury typu pole nebo množiny SQL omezení omezený

Více

Správnost XML dokumentu

Sprá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íce

2 PŘÍKLAD IMPORTU ZATÍŽENÍ Z XML

2 PŘÍKLAD IMPORTU ZATÍŽENÍ Z XML ROZHRANÍ ESA XML Ing. Richard Vondráček SCIA CZ, s. r. o., Thákurova 3, 160 00 Praha 6 www.scia.cz 1 OTEVŘENÝ FORMÁT Jednou z mnoha užitečných vlastností programu ESA PT je podpora otevřeného rozhraní

Více

Modely datové. Další úrovní je logická úroveň Databázové modely Relační, Síťový, Hierarchický. Na fyzické úrovni se jedná o množinu souborů.

Modely datové. Další úrovní je logická úroveň Databázové modely Relační, Síťový, Hierarchický. Na fyzické úrovni se jedná o množinu souborů. Modely datové Existují různé úrovně pohledu na data. Nejvyšší úroveň je úroveň, která zachycuje pouze vztahy a struktury dat samotných. Konceptuální model - E-R model. Další úrovní je logická úroveň Databázové

Více

Tovek Server. Tovek Server nabízí následující základní a servisní funkce: Bezpečnost Statistiky Locale

Tovek Server. Tovek Server nabízí následující základní a servisní funkce: Bezpečnost Statistiky Locale je serverová aplikace určená pro efektivní zpracování velkého objemu sdílených nestrukturovaných dat. Umožňuje automaticky indexovat data z různých informačních zdrojů, intuitivně vyhledávat informace,

Více

Kolekce, cyklus foreach

Kolekce, cyklus foreach Kolekce, cyklus foreach Jen informativně Kolekce = seskupení prvků (objektů) Jednu již známe pole (Array) Kolekce v C# = třída, která implementuje IEnumerable (ICollection) Cyklus foreach ArrayList pro

Více

GTL GENERATOR NÁSTROJ PRO GENEROVÁNÍ OBJEKTŮ OBJEKTY PRO INFORMATICA POWERCENTER. váš partner na cestě od dat k informacím

GTL GENERATOR NÁSTROJ PRO GENEROVÁNÍ OBJEKTŮ OBJEKTY PRO INFORMATICA POWERCENTER. váš partner na cestě od dat k informacím GTL GENERATOR NÁSTROJ PRO GENEROVÁNÍ OBJEKTŮ OBJEKTY PRO INFORMATICA POWERCENTER váš partner na cestě od dat k informacím globtech spol. s r.o. karlovo náměstí 17 c, praha 2 tel.: +420 221 986 390 info@globtech.cz

Více

Prezentace XML. XML popisuje strukturu dat, neřeší vzhled definice vzhledu:

Prezentace 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íce

1 Strukturované programování

1 Strukturované programování Projekt OP VK Inovace studijních oborů zajišťovaných katedrami PřF UHK Registrační číslo: CZ.1.07/2.2.00/28.0118 1 Cíl Seznámení s principy strukturovaného programování, s blokovou strukturou programů,

Více

Windows Server 2003 Active Directory

Windows Server 2003 Active Directory Windows Server 2003 Active Directory Active Directory ukládá informace o počítačích, uživatelích a ostatních objektech v síti. Zpřístupňuje tyto zdroje uživatelům. Poskytuje komplexní informace o organizaci,

Více

24-2-2 PROMĚNNÉ, KONSTANTY A DATOVÉ TYPY TEORIE DATUM VYTVOŘENÍ: 23.7.2013 KLÍČOVÁ AKTIVITA: 02 PROGRAMOVÁNÍ 2. ROČNÍK (PRG2) HODINOVÁ DOTACE: 1

24-2-2 PROMĚNNÉ, KONSTANTY A DATOVÉ TYPY TEORIE DATUM VYTVOŘENÍ: 23.7.2013 KLÍČOVÁ AKTIVITA: 02 PROGRAMOVÁNÍ 2. ROČNÍK (PRG2) HODINOVÁ DOTACE: 1 24-2-2 PROMĚNNÉ, KONSTANTY A DATOVÉ TYPY TEORIE AUTOR DOKUMENTU: MGR. MARTINA SUKOVÁ DATUM VYTVOŘENÍ: 23.7.2013 KLÍČOVÁ AKTIVITA: 02 UČIVO: STUDIJNÍ OBOR: PROGRAMOVÁNÍ 2. ROČNÍK (PRG2) INFORMAČNÍ TECHNOLOGIE

Více

Začínáme s Tovek Tools

Začínáme s Tovek Tools NAJÍT POCHOPIT VYUŽÍT Úvodní seznámení s produktem Tovek Tools JAK SI TOVEK TOOLS NAINSTALUJI?... 2 JAK SI PŘIPOJÍM INFORMAČNÍ ZDROJE, VE KTERÝCH CHCI VYHLEDÁVAT?... 2 JAK MOHU VYHLEDÁVAT V INFORMAČNÍCH

Více

Metody tvorby ontologií a sémantický web. Martin Malčík, Rostislav Miarka

Metody tvorby ontologií a sémantický web. Martin Malčík, Rostislav Miarka Metody tvorby ontologií a sémantický web Martin Malčík, Rostislav Miarka Obsah Reprezentace znalostí Ontologie a sémantický web Tvorba ontologií Hierarchie znalostí (D.R.Tobin) Data jakékoliv znakové řetězce

Více

Dotazování nad XML daty a jazyk XPath

Dotazová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íce

1. Dědičnost a polymorfismus

1. Dědičnost a polymorfismus 1. Dědičnost a polymorfismus Cíl látky Cílem této kapitoly je představit klíčové pojmy dědičnosti a polymorfismu. Předtím však je nutné se seznámit se základními pojmy zobecnění neboli generalizace. Komentář

Více

Výčtový typ strana 67

Výčtový typ strana 67 Výčtový typ strana 67 8. Výčtový typ V této kapitole si ukážeme, jak implementovat v Javě statické seznamy konstant (hodnot). Příkladem mohou být dny v týdnu, měsíce v roce, planety obíhající kolem slunce

Více

Knihovna XmlLib TXV 003 63.01 druhé vydání říjen 2012 změny vyhrazeny

Knihovna XmlLib TXV 003 63.01 druhé vydání říjen 2012 změny vyhrazeny Knihovna XmlLib TXV 003 63.01 druhé vydání říjen 2012 změny vyhrazeny 1 TXV 003 63.01 Historie změn Datum Vydání Popis změn Prosinec 2010 1 První vydání, popis odpovídá XmlLib_v13 Říjen 2012 2 Druhé vydání,

Více

8.2 Používání a tvorba databází

8.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

Java a XML. 10/26/09 1/7 Java a XML

Java a XML. 10/26/09 1/7 Java a XML Java a XML Java i XML jsou přenositelné V javě existuje podpora pro práci s XML, nejčastější akce prováděné při zpracování XML: načítání XML elementů generování nových elementů nebo úprava starého zápis

Více

O Apache Derby detailněji. Hynek Mlnařík

O Apache Derby detailněji. Hynek Mlnařík O Apache Derby detailněji Hynek Mlnařík Agenda Historie Vlastnosti Architektura Budoucnost Historie 1997 Cloudscape Inc. - JBMS 1999 Informix Software, Inc. odkoupila Cloudscape, Inc. 2001 IBM odkoupila

Více

14.4.2010. Obsah přednášky 7. Základy programování (IZAPR) Přednáška 7. Parametry metod. Parametry, argumenty. Parametry metod.

14.4.2010. Obsah přednášky 7. Základy programování (IZAPR) Přednáška 7. Parametry metod. Parametry, argumenty. Parametry metod. Základy programování (IZAPR) Přednáška 7 Ing. Michael Bažant, Ph.D. Katedra softwarových technologií Kancelář č. 229, Náměstí Čs. legií Michael.Bazant@upce.cz Obsah přednášky 7 Parametry metod, předávání

Více

ANOTACE vytvořených/inovovaných materiálů

ANOTACE 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íce

Algoritmizace a programování

Algoritmizace a programování Algoritmizace a programování Výrazy Operátory Výrazy Verze pro akademický rok 2012/2013 1 Operace, operátory Unární jeden operand, operátor se zapisuje ve většině případů před operand, v některých případech

Více

Dotazování nad stromem abstraktní syntaxe

Dotazování nad stromem abstraktní syntaxe Fakulta jaderná a fyzikáln inºenýrská ƒeské vysoké u ení technické v Praze 3.6.2010 Osnova while 1 Reprezentace programu 2 AST a Java 3 Vyhledávání v AST 4 Aplikace body if expr Jak reprezentovat program

Více

l Kontakt s klientem SSP Popis automatizované komunikace s ÚP ČR v součinnosti a exekuci

l Kontakt s klientem SSP Popis automatizované komunikace s ÚP ČR v součinnosti a exekuci l Kontakt s klientem SSP automatizované komunikace s ÚP ČR v součinnosti a exekuci Obsah: 1. SEZNAM POUŽITÝCH ZKRATEK... 3 2. POPIS SLUŽBY... 4 2.1 Forma a struktura rozhraní... 4 2.2 Dostupnost služby...

Více

Pokročilé techniky tvorby sestav v Caché. ZENové Reporty

Pokroč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

Knihovna RecDBXLib ZÁZNAMY V DATABOXU TXV 003 49.01

Knihovna RecDBXLib ZÁZNAMY V DATABOXU TXV 003 49.01 PROGRAMOVATELNÉ AUTOMATY Knihovna RecDBXLib ZÁZNAMY V DATABOXU TXV 003 49.01 KNIHOVNA RecDBXLib DATABÁZE V DATABOXU 2. vydání řijen 2008 OBSAH 1. ÚVOD...3 2. KNIHOVNA RecDBXLib DATABÁZE V DATABOXU...4

Více

Další XML technologie

Další XML technologie XML teorie a praxe značkovacích jazyků (4IZ238) Jirka Kosek Poslední modifikace: $Date: 2012/05/17 18:58:55 $ Obsah Odkazy... 3 Odkazy v rámci jednoho dokumentu... 4 XLink (XML Linking Language)... 5 XLink

Více

INFORMAČNÍ SYSTÉM VIDIUM A VYUŽITÍ MODERNÍCH TECHNOLOGIÍ

INFORMAČNÍ SYSTÉM VIDIUM A VYUŽITÍ MODERNÍCH TECHNOLOGIÍ INFORMAČNÍ SYSTÉM VIDIUM A VYUŽITÍ MODERNÍCH TECHNOLOGIÍ Michal Brožek, Dominik Svěch, Jaroslav Štefaník MEDIUM SOFT a.s., Cihelní 14, 702 00 Ostrava, ČR Abstrakt Neustále rostoucí význam sběru dat, možnost

Více

M4 PDF rozšíření. Modul pro PrestaShop. http://www.presta-addons.com

M4 PDF rozšíření. Modul pro PrestaShop. http://www.presta-addons.com M4 PDF rozšíření Modul pro PrestaShop http://www.presta-addons.com Obsah Úvod... 2 Vlastnosti... 2 Jak modul funguje... 2 Zdroje dat... 3 Šablony... 4 A. Označení šablon... 4 B. Funkce Smarty... 5 C. Definice

Více

Západočeská univerzita v Plzni Fakulta aplikovaných věd Katedra informatiky a výpočetní techniky. Dokumentace k programu MMDoc

Západočeská univerzita v Plzni Fakulta aplikovaných věd Katedra informatiky a výpočetní techniky. Dokumentace k programu MMDoc Západočeská univerzita v Plzni Fakulta aplikovaných věd Katedra informatiky a výpočetní techniky Dokumentace k programu MMDoc Vypracoval: Petr Dvořák Datum: 15.prosince 2005 1. Úvod 1.1. Účel tohoto dokumentu

Více

III/2 Inovace a zkvalitnění výuky prostřednictvím ICT

III/2 Inovace a zkvalitnění výuky prostřednictvím ICT Číslo a název šablony Číslo didaktického materiálu Druh didaktického materiálu Autor Jazyk Téma sady didaktických materiálů Téma didaktického materiálu Vyučovací předmět Cílová skupina (ročník) Úroveň

Více

Z. Kotala, P. Toman: Java ( Obsah )

Z. Kotala, P. Toman: Java ( Obsah ) Z. Kotala, P. Toman: Java ( Obsah ) 13. Výjimky Výjimka (exception) je definována jako událost, která nastane během provádění programu a která naruší normální běh instrukcí. Výjimka je vyvolána například

Více

Algoritmizace a programování

Algoritmizace a programování Algoritmizace a programování Řídicí struktury jazyka Java Struktura programu Příkazy jazyka Blok příkazů Logické příkazy Ternární logický operátor Verze pro akademický rok 2012/2013 1 Struktura programu

Více

Knihovna XmlLib TXV 003 63.01 první vydání prosinec 2010 změny vyhrazeny

Knihovna XmlLib TXV 003 63.01 první vydání prosinec 2010 změny vyhrazeny Knihovna XmlLib TXV 003 63.01 první vydání prosinec 2010 změny vyhrazeny 1 TXV 003 63.01 Historie změn Datum Vydání Popis změn Prosinec 2010 1 První vydání, popis odpovídá XmlLib_v13 OBSAH 1 Úvod...3 2

Více

Program a životní cyklus programu

Program a životní cyklus programu Program a životní cyklus programu Program algoritmus zapsaný formálně, srozumitelně pro počítač program se skládá z elementárních kroků Elementární kroky mohou být: instrukce operačního kódu počítače příkazy

Více

2. úkol MI-PAA. Jan Jůna (junajan) 3.11.2013

2. úkol MI-PAA. Jan Jůna (junajan) 3.11.2013 2. úkol MI-PAA Jan Jůna (junajan) 3.11.2013 Specifikaci úlohy Problém batohu je jedním z nejjednodušších NP-těžkých problémů. V literatuře najdeme množství jeho variant, které mají obecně různé nároky

Více

Profilová část maturitní zkoušky 2013/2014

Profilová část maturitní zkoušky 2013/2014 Střední průmyslová škola, Přerov, Havlíčkova 2 751 52 Přerov Profilová část maturitní zkoušky 2013/2014 TEMATICKÉ OKRUHY A HODNOTÍCÍ KRITÉRIA Studijní obor: 78-42-M/01 Technické lyceum Předmět: TECHNIKA

Více

Algoritmizace a programování

Algoritmizace a programování Algoritmizace a programování Vyhledávání, vkládání, odstraňování Vyhledání hodnoty v nesetříděném poli Vyhledání hodnoty v setříděném poli Odstranění hodnoty z pole Vkládání hodnoty do pole Verze pro akademický

Více

APLIKACE XML PRO INTERNET

APLIKACE 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

Mgr. Stěpan Stěpanov, 2013

Mgr. 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íce

PRŮZKUMNÍK ISDP NÁVOD K OBSLUZE INFORMAČNÍHO SYSTÉMU O DATOVÝCH PRVCÍCH (ISDP)

PRŮZKUMNÍK ISDP NÁVOD K OBSLUZE INFORMAČNÍHO SYSTÉMU O DATOVÝCH PRVCÍCH (ISDP) PRŮZKUMNÍK ISDP NÁVOD K OBSLUZE INFORMAČNÍHO SYSTÉMU O DATOVÝCH PRVCÍCH (ISDP) Obsah Úvod...2 Co je ISDP...2 Jaké jsou funkce ISDP...2 Slovník pojmů...2 Dílčí DP...2 DS...2 ISDP...2 JeDP...2 OS...2 SlDP...2

Více

Ing. Igor Kopetschke TUL, NTI

Ing. Igor Kopetschke TUL, NTI ALGORITMY A DATOVÉ STRUKTURY 1. Organizace dat v paměti, datové typy Ing. Igor Kopetschke TUL, NTI http://www.nti.tul.cz Jednotlivé body Ukládání a a organizace dat Vnitřní paměť Vnější paměť Přístup k

Více

43 HTML šablony. Záložka Šablony v systému

43 HTML šablony. Záložka Šablony v systému 43 HTML šablony Modul HTML šablony slouží ke správě šablon pro výstupy z informačního systému modularis ve formátu HTML. Modul umožňuje k šablonám doplňovat patičku, dokumentaci a vázat šablony na konkrétní

Více

Business Intelligence

Business Intelligence Business Intelligence Josef Mlnařík ISSS Hradec Králové 7.4.2008 Obsah Co je Oracle Business Intelligence? Definice, Od dat k informacím, Nástroj pro operativní řízení, Integrace informací, Jednotná platforma

Více

boolean hasnext() Object next() void remove() Kolekce

boolean hasnext() Object next() void remove() Kolekce 11. Kontejnery Kontejnery Kontejnery jako základní dynamické struktury v Javě Kolekce, iterátory (Collection, Iterator) Seznamy (rozhraní List, třídy ArrayList, LinkedList) Množiny (rozhraní Set, třída

Více

Tvorba kurzu v LMS Moodle

Tvorba kurzu v LMS Moodle Tvorba kurzu v LMS Moodle Před počátkem práce na tvorbě základního kurzu znovu připomínám, že pro vytvoření kurzu musí být profil uživatele nastaven administrátorem systému minimálně na hodnotu tvůrce

Více

VYTVÁŘENÍ DATABÁZÍ, VKLÁDÁNÍ ÚDAJŮ

VYTVÁŘENÍ DATABÁZÍ, VKLÁDÁNÍ ÚDAJŮ Úvod do problematiky VYTVÁŘENÍ DATABÁZÍ, VKLÁDÁNÍ ÚDAJŮ Databáze je uspořádaná množina velkého množství informací (dat). Příkladem databáze je překladový slovník, seznam PSČ nebo telefonní seznam. Databáze

Více

JSON API pro zjišťování cen MtG karet

JSON API pro zjišťování cen MtG karet JSON API pro zjišťování cen MtG karet Autor: Ing. Jiří Bažant Verze: 1.0 Datum: 20.9.2014 Changelog Verze Datum Autor Poznámka 1.0 17.9.2014 Ing. Jiří Bažant 20.9.2014 Ing. Jiří Bažant Oprava příkladu

Více

Čtvrtek 8. prosince. Pascal - opakování základů. Struktura programu:

Čtvrtek 8. prosince. Pascal - opakování základů. Struktura programu: Čtvrtek 8 prosince Pascal - opakování základů Struktura programu: 1 hlavička obsahuje název programu, použité programové jednotky (knihovny), definice konstant, deklarace proměnných, všechny použité procedury

Více

Náplň. v.0.03 16.02.2014. - Jednoduché příklady na práci s poli v C - Vlastnosti třídění - Způsoby (algoritmy) třídění

Náplň. v.0.03 16.02.2014. - Jednoduché příklady na práci s poli v C - Vlastnosti třídění - Způsoby (algoritmy) třídění Náplň v.0.03 16.02.2014 - Jednoduché příklady na práci s poli v C - Vlastnosti třídění - Způsoby (algoritmy) třídění Spojení dvou samostatně setříděných polí void Spoj(double apole1[], int adelka1, double

Více

24 Uživatelské výběry

24 Uživatelské výběry 24 Uživatelské výběry Uživatelský modul Uživatelské výběry slouží k vytváření, správě a následnému používání tématicky seskupených osob a organizací včetně jejich kontaktních údajů. Modul umožňuje hromadnou

Více

Vykazování dat o poskytovaných sociálních službách

Vykazování dat o poskytovaných sociálních službách Vykazování dat o poskytovaných sociálních službách (verze dokumentu 1.4) Odpovědná osoba: Ing. Radomír Martinka V Praze dne: 24.4.2014 Klasifikace: CHRÁNĚNÉ OKsystem s.r.o. Na Pankráci 125, 140 21 Praha

Více

3. přednáška z předmětu GIS1 atributové a prostorové dotazy

3. přednáška z předmětu GIS1 atributové a prostorové dotazy 3. přednáška z předmětu GIS1 atributové a prostorové dotazy Vyučující: Ing. Jan Pacina, Ph.D. e-mail: jan.pacina@ujep.cz Pro přednášku byly použity texty a obrázky z www.gis.zcu.cz Předmět KMA/UGI, autor

Více

13. blok Práce s XML dokumenty v databázi Oracle

13. blok Práce s XML dokumenty v databázi Oracle 13. blok Práce s XML dokumenty v databázi Oracle Studijní cíl Tento blok je věnován práci s XML dokumenty, možnostmi jejich uložení a práce s nimi v databázi Oracle a datovému typu XMLType. Doba nutná

Více

Maturitní projekt do IVT Pavel Doleček

Maturitní projekt do IVT Pavel Doleček Maturitní projekt do IVT Pavel Doleček CO FILMBOOK JE Filmbook je uzavřená webová aplikace pro celkovou správu informací a dat souvisejících se sledováním filmů. Primárně je zaměřen na uchovávání a spravování

Více

Stromy, haldy, prioritní fronty

Stromy, haldy, prioritní fronty Stromy, haldy, prioritní fronty prof. Ing. Pavel Tvrdík CSc. Katedra počítačů FEL České vysoké učení technické DSA, ZS 2008/9, Přednáška 6 http://service.felk.cvut.cz/courses/x36dsa/ prof. Pavel Tvrdík

Více

Principy XQuery. funkcionální jazyk vše je výraz, jehož vyhodnocením vznikne určitá hodnota základní typy stejné jako v XML Schema:

Principy 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íce

Překladač a jeho struktura

Překladač a jeho struktura Překladač a jeho struktura Překladače, přednáška č. 1 Šárka Vavrečková Ústav informatiky, FPF SU Opava sarka.vavreckova@fpf.slu.cz http://fpf.slu.cz/ vav10ui Poslední aktualizace: 23. září 2008 Definice

Více

OPS Paralelní systémy, seznam pojmů, klasifikace

OPS Paralelní systémy, seznam pojmů, klasifikace Moorův zákon (polovina 60. let) : Výpočetní výkon a počet tranzistorů na jeden CPU chip integrovaného obvodu mikroprocesoru se každý jeden až dva roky zdvojnásobí; cena se zmenší na polovinu. Paralelismus

Více

Výhody a nevýhody jednotlivých reprezentací jsou shrnuty na konci kapitoly.

Výhody a nevýhody jednotlivých reprezentací jsou shrnuty na konci kapitoly. Kapitola Reprezentace grafu V kapitole?? jsme se dozvěděli, co to jsou grafy a k čemu jsou dobré. rzo budeme chtít napsat nějaký program, který s grafy pracuje. le jak si takový graf uložit do počítače?

Více

7. Enterprise Search Pokročilé funkce vyhledávání v rámci firemních datových zdrojů

7. Enterprise Search Pokročilé funkce vyhledávání v rámci firemních datových zdrojů 7. Enterprise Search Pokročilé funkce vyhledávání v rámci firemních datových zdrojů Verze dokumentu: 1.0 Autor: Jan Lávička, Microsoft Časová náročnost: 30 40 minut 1 Cvičení 1: Vyhledávání informací v

Více

Dnešní téma. Oblasti standardizace v ICT. Oblasti standardizace v ICT. Oblasti standardizace v ICT

Dneš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íce

1. Databázové systémy (MP leden 2010)

1. Databázové systémy (MP leden 2010) 1. Databázové systémy (MP leden 2010) Fyzickáimplementace zadáníaněkterářešení 1 1.Zkolikaajakýchčástíseskládáčasprovstupněvýstupníoperaci? Ze tří částí: Seektime ječas,nežsehlavadiskudostanenadsprávnou

Více

Nový způsob práce s průběžnou klasifikací lze nastavit pouze tehdy, je-li průběžná klasifikace v evidenčním pololetí a školním roce prázdná.

Nový způsob práce s průběžnou klasifikací lze nastavit pouze tehdy, je-li průběžná klasifikace v evidenčním pololetí a školním roce prázdná. Průběžná klasifikace Nová verze modulu Klasifikace žáků přináší novinky především v práci s průběžnou klasifikací. Pro zadání průběžné klasifikace ve třídě doposud existovaly 3 funkce Průběžná klasifikace,

Více

Indexace pro souborová uložiště a Vyhledávací centrum

Indexace pro souborová uložiště a Vyhledávací centrum Indexace pro souborová uložiště a Vyhledávací centrum Obsah I. Úvod... 2 II. Cíl dokumentu... 2 III. Fáze projektu... 2 IV. Popis jednotlivých fází projektu... 2 1. Fáze 1. - Analýza... 2 2. Fáze 2. -

Více

Databá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 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

Databáze Bc. Veronika Tomsová

Databáze Bc. Veronika Tomsová Databáze Bc. Veronika Tomsová Databázové schéma Mapování konceptuálního modelu do (relačního) databázového schématu. 2/21 Fyzické ik schéma databáze Určuje č jakým způsobem ů jsou data v databázi ukládána

Více

Vlákno (anglicky: thread) v informatice označuje vlákno výpočtu neboli samostatný výpočetní tok, tedy posloupnost po sobě jdoucích operací.

Vlákno (anglicky: thread) v informatice označuje vlákno výpočtu neboli samostatný výpočetní tok, tedy posloupnost po sobě jdoucích operací. Trochu teorie Vlákno (anglicky: thread) v informatice označuje vlákno výpočtu neboli samostatný výpočetní tok, tedy posloupnost po sobě jdoucích operací. Každá spuštěná aplikace má alespoň jeden proces

Více