Kapitola 1. Vizualizace XML dat, Významné aplikace XML
Obsah
Úvod k formátování.....................................................................................................1
DocBook: přiklad složitějšího značkování................................................................1
DocBook: vrstvy a přizpůsobení ............................................................................2
DocBook: styly...................................................................................................2
Konceptuálni, logické a fyzické formátování ....................................................................2
Co a k čemu je formátování? .................................................................................2
Úrovně formátování.............................................................................................3
Odkud kam sahají úrovně formátování?...................................................................3
Fáze formátování ........................................................................................................3
Postup formátování a příklady nástrojů....................................................................3
data -> požadovaná data (filtrace)...........................................................................3
filtrovaná data -> konceptuálni formát.....................................................................4
Konceptuálni formát -> logický formát....................................................................5
Logický formát -> fyzický formát...........................................................................6
Formátování a výstupní média .......................................................................................6
Výstup na běžnou obrazovku, web (HTML, plaintext, RTF) ........................................6
(X)HTML, RTF, plaintext (2)................................................................................6
Výstup pro tisk (PDF, TeX) ..................................................................................7
Výstup na malé displeje (WAP, PDA).....................................................................7
Hlasový výstup (VoiceXML) ................................................................................8
Podrobněji k formátovacím objektům (XSL:FO) ...............................................................8
Co a k čemu jsou XSL:FO ....................................................................................8
Informační zdroje k XSL:FO .................................................................................8
Úvod k formátování
DocBook: příklad složitějšího značkování
• rozsáhlý projekt - poskytnout jednotný komplexní značkovací jazyk pro „vesekerou" programátorskou dokumentaci
• nyní používáno k celé řadě jiných účelů - psaní článků (article), knih (book), jednotlivých kapitol (chapter), sekcí (section, sectX)
• autorem je Norman Walsh (Sun Microsystems Inc.)
1
Vizualizace XML dat, Významné aplikace XML
• podrobnosti, DTD, help, software, styly k dispozici viz docbook.org [http://docbook.org]
• pravděpodobně nejrozsáhlejší existující značkování pro logický popis dokumentu
• k DB existuje TDG (DocBook: The Definitive Guide) - také jako Windows Help [/~tomp/xml/tdg-en-2.0.7. chm]
DocBook: vrstvy a přizpůsobení
• DocBook lze používat jako základní (Full)
• zjednodušený (Simplified) nebo si jej přizpůsobit
přizpůsobení znamená:
• upravit DTD (přes parametrické entity)
• evt. upravit (XSL) styly
• XSL styly jsou upravovány na základě importu původního stylu a překrytí vybraných šablon
DocBook: styly
• k vizualizaci (a převodu do tiskových formátů) z napsaného DocBookoveho dokumentu lze použít XSL styly
• XSL styly jsou na http://docbook.sf.net
• v rámci toho je i přizpůsobení DocBook Slides
• styly formátují do HTML, XHTML, XSL :F0,...
• zpracování lze parametrizovat bez přepisování stylů
Konceptuálni, logické a fyzické formátování
Co a k čemu je formátování?
XML data jsou sice částečně „lidsky čitelná", ale pro zpracování člověkem vyžadují transformaci do kvalitně zobrazitelné podoby -formátování.
Formátování je proces transformace primárních dat do lidsky čitelné „prezentovatelne" podoby, určené k
2
Vizualizace XML dat, Významné aplikace XML
zobrazení, hlasové interpretaci, atd.
Úrovně formátování
Rozlišujeme formátování na úrovni:
konceptuálni maximum sémantiky v datech je zachováno, je přidána formátovací sémantika -
např. struktura publikace, členění na kapitoly, sekce; datový obsah je vyfiltrován pro účely zobrazení (např. metadata jsou redukována). Příklad formátu - DocBook [http://docbook.org].
logické původní sémantiku již nelze rekonstruovat, je přidána další formátovací sémantika -
např. členění na nadpisy, tabulky, styly, přibývají instrukce pro volbu písma, barvu, odsazení, mezery mezi odstavci... Formátovaný dokument je stále relativně univerzálně zobrazitelný a přenositelný. Příklad formátu - HTML [http://w3.org/HTML].
fyzické formátovaný dokument je v podstatě přesným popisem, jak vytisknout, zobrazit,
hlasově přečíst dokument. Příklady formátu - PostScript, PDF.
Odkud kam sahají úrovně formátování?
• Hranice mezi jednotlivými úrovněmi nej sou ostré.
Dokument na vyšších formátovacích úrovních (konceptuálni) lze dále transformovat, zpracovávat...
Část sémantiky původních dat je však již ztracena a naopak formátovací sémantika je doplněna.
Viz např. formát DocBook - dokument v DocBooku už je článek, kniha, přednáška ve formě slidů... což původní zdrojová data nebyla.
Dokument formátovaný do formátů nižších úrovní (logický, fyzický) není obvykle určen k dalšímu zpracování vyjma přípravy pro tisk, zobrazení.
Viz např. HTML, PDF... (s jistými výjimkami)
Fáze formátování
Postup formátování a příklady nástrojů
Budeme uvažovat XML data a adekvátní nástroje se zaměřením na open-source.
data -> požadovaná data (filtrace)
Z primárních dat extrahujeme data potřebná. Vhodné nástroje:
3
Vizualizace XML dat, Významné aplikace XML
filtrování proudu (SAX) událostí poměrně nekomfortní, ale za běhu efektivní zpracování dat; pro
pouhé filtrace elementů vyhoví; lze použít XML Filter
manipulace se stromem dokumentu DOM, dom4 j a další reprezentace; náročnější na pamět i čas; dovoluje složitější manipulace
XSLT transformace mocné, ale poněkud náročnější na zvládnutí
dotazovacím jazykem vhodné řešení, ale vyžaduje stroj na interpretaci
Příklad 1.1. Příklad XSLT extrakce
Ze všech programátorů v Devguru chceme zobrazit jen mladší 30 let:
Table 1. Tabulka pracovníků mladšSiacute;ch 30 let<