10.07.2015 Views

2× DVD - Vitajte na stránkach www.einsty.hostujem.sk

2× DVD - Vitajte na stránkach www.einsty.hostujem.sk

2× DVD - Vitajte na stránkach www.einsty.hostujem.sk

SHOW MORE
SHOW LESS
  • No tags were found...

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

P R O G R A M U J E M EASP a databázy / 12. èas: XML I.V <strong>na</strong>šom seriáli venovanom ASP stránkam nemôeme ne−cha nepovšimnutú èoraz populárnejšiu technológiu XML.Technológia XML je otvorená a platformovo nezávislá. De−finuje formát údajov a operácie s nimi. Zjednodušene bysa dalo poveda, e tento formát pre výmenu údajov jerov<strong>na</strong>ko dobre èitate¾ný pre poèítaèe aj pre ¾udí. Tietoúdaje môeme ¾ahko <strong>na</strong>èíta a identifikova pomocoupomerne jednoduchej rutiny v ¾ubovo¾nom programova−com jazyku, a teda aj vo VBScripte (resp. JScripte). FormátXML môe takisto slúi ako alter<strong>na</strong>tívny formát pre ukla−danie údajov. V relaèných databázach sa ukladajú údaje vtabu¾kách, <strong>na</strong>príklad:meno vek povolanieJan Novak 35 <strong>sk</strong>ladnik v <strong>sk</strong>lade monitorovMirka Polakova 42 upratovackaHTML kód pre zobrazenie tejto tabu¾ky je síce pomernejednoduchý:menovekpovolanieJan Novak35<strong>sk</strong>ladnik v <strong>sk</strong>lade monitorovMirka Polakova42upratovacka&nbsp;ale zrozumite¾ný len pre z<strong>na</strong>lcov syntaxe jazyka HTML. V <strong>na</strong>−šom výpise je HTML kód preh¾adne formátovaný a <strong>na</strong>vyšesú záhlavia a údaje vypísané hrubým fontom, ale to len <strong>na</strong>ilustráciu. Ten istý efekt výpisu v okne prehliadaèa HTMLstránok toti dosiahneme aj pri pouití kódumenovekpovolanieJanNovak35 <strong>sk</strong>ladnik v <strong>sk</strong>lade monitorovMirkaPolakova42upratovackaAk si pozrieme príklad jednoduchého súboru XML,ktorý obsahuje tie isté údaje ako predchádzajúce HTMLkódy, predsa len zistíme, e stroje sú <strong>na</strong> tom, èo sa týkaèítania formátu XML, o nieèo lepšie, ale aj pri letmompoh¾ade vidíme, e ide o nejaký zoz<strong>na</strong>m zákazníkov.Jan Novak35<strong>sk</strong>ladnik v <strong>sk</strong>lade monitorovMirka Polakova42upratovackaAk <strong>na</strong>píšeme „jednoduchú“ šablónu v jazyku XSL (Ex−tensible Stylesheet language):- zí<strong>sk</strong>ame v okne HTML prehliadaèa celkom prijate¾ný výsle−dok (obr. 1)Obr. 1Z tohto jednoduchého porov<strong>na</strong>nia vidíme, e zatia¾ èosyntax HTML je urèená hlavne <strong>na</strong> vyjadrenie formy výpisu,syntax dokumentu XML je striktne zameraná <strong>na</strong> jehoobsah. Forma zobrazenia sa definuje pomocou štýlov.Definícia spôsobu dokumentu je teda dôsledne oddelenáod jeho obsahu. Ak potrebujeme importova údaje z do−kumentu XML alebo s nimi pracova, definície štýlov sivôbec nemusíme všíma.Vo vete Ak <strong>na</strong>píšeme „jednoduchú“ šablónu v jazykuXSL… v predchádzajúcom odseku je slovo jednoduchú vúvodzovkách oprávnene. Aby sme toti zobrazili obsahsúboru XML vo forme preh¾adnej tabu¾ky, nemusíme sauèi jazyk XSL. Vy<strong>sk</strong>úšajte si tento jednoduchý (tentoraz ubez úvodzoviek) HTML kód pre Internet Explorer 5.0 avyšší:Výsledok v okne prehliadaèa je ve¾mi uspokojujúci. Akoto funguje?Riadok vytvorí dátový ostrovèek XML. Tátokonštrukcia nám obsah HTML dokumentu nezobrazí, lensa vytvorí akýsi kontajner <strong>na</strong> uloenie údajov zo súboruXML. Údaje v ostrovèeku XML môu by vloené aj pria−mo, <strong>na</strong>príklad:Mirka Polakova42upratovackaObr. 2Údaje z dátového ostrovèeka XML môeme vklada dopríslušného miesta HTML stránky <strong>na</strong>príklad pomocoukonštrukcie .Hoci sa hovorí, e opakovanie je matkou múdrosti, v tom−to prípade to neplatí. Keby sme si pripomenuli tretiu èas se−riálu o ASP, kde sme pracovali s textovými súbormi, a <strong>na</strong>pí−sali pre <strong>na</strong>èítanie údajov zo súboru vo formáte XML a ich ná−sledné spracovanie <strong>na</strong> ASP stránke programový kód v štýle:Dim ObjSubor Vytvorime instanciu objektuFileSystemObjectSet ObjSubor =Server.CreateObject( Scripting.FileSystemObject )dim TxtSubor Otvorime existujuci textovysuborSet TxtSubor=ObjSubor.OpenTextFile( c:/zakaznici.xml)do while not TxtSubor.AtEndOfStreamadresa = TxtSubor.ReadLine...loopSet TxtSubor = CloseSet TxtSubor = NothingSet ObjSubor = Nothingasi by sme výhody XML formátu vôbec nepocítili a <strong>na</strong>vyšeby sme vyplytvali ve¾a energie <strong>na</strong> dosiahnutie cie¾a, ktorýsa dá dosiahnu ove¾a efektívnejšie.Kadý XML dokument musí obsahova jeden element<strong>na</strong>jvyššej úrovne, v <strong>na</strong>šom prípade sme pre tento elementpouili názov root_element.< Zoz<strong>na</strong>mZakaznikov >...obsah dokumentuPodobne ako element <strong>na</strong>jvyššej úrovne aj kadý ele−ment, ktorý tvorí obsah dokumentu, je uzavretý pomocoupárových z<strong>na</strong>kov (tagov), <strong>na</strong>príklad:Mirka Polakova42upratovackaAk si pozornejšie prezrieme súbor XML, zistíme, eobsahuje hierarchickú stromovú štruktúru (obr. 3).Táto štruktúra obsahuje objekty DOM (DocumentObject Model). DOM je API pre dokumenty HTML a XML.Na <strong>na</strong>èítanie údajov v takto organizovanom súbore je<strong>sk</strong>utoène programová konštrukcia <strong>na</strong> èítanie textovéhosúboru riadok po riadkudo while not TxtSubor.AtEndOfStreamadresa = TxtSubor.ReadLine...loop1/2002 PC REVUE 115

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!