Formátování a vizualizace
Obsah
Konceptuálni, logické a fyzické formátování ....................................................................1
Co a k čemu je formátování? .................................................................................................1
Úrovně formátování.............................................................................................................1
Odkud kam sahají úrovně formátování?...................................................................................2
Příklad - Docbook .......................................................................................................2
DocBook: příklad složitějšího značkování................................................................................2
DocBook: vrstvy a přizpůsobení ............................................................................................3
DocBook: styly...................................................................................................................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
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é „prezentovatelné" podoby, určené k zobrazení, hlasové interpretaci, atd.
Úrovně formátování
Rozlišujeme formátování na úrovni:
1
Formátování a vizualizace
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)
Příklad - Docbook
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)i jednotlivých kapitol (chapte4 sekcí (section, sectX)
• autorem je Norman Walsh (Sun Mcrosystems Inc.)
• 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
2
Formátování a vizualizace
• 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 DocBookového 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ů
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:
filtrování proudu (SAX) událostí poměrně nekomfortní, ale za běhu efektivní zpracování dat; pro
3
Formátování a vizualizace
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. 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<