Příznivce mimozemských civilizací a pa(ra)vědních oborů musím zklamat. Toto je mírně komentovaný přehled některých událostí, které se během měsíce září seběhly kolem XML. A ještě varování. Pokud tento formát článku nenarazí na dostatečně tuhý odpor čtenářů, nelze vyloučit, že se bude opakovat.
Binární reprezentace XML
Diskuse o binárním kódování informací obsažených v dokumentech XML jsou stejně staré jako tento formát sám. O zavedení standardního binárního zápisu usilují hlavně velké firmy. Konsorcium W3C se nyní rozhodlo převzít aktivitu v této oblasti a na 24. až 26. září svolalo do kalifornské Santa Clary pracovní seminář (The W3C Workshop on Binary Interchange of XML Information Item Sets). Cílem je shrnutí současných konkrétních zkušeností s binární reprezentací XML a vyjasnění postojů zainteresovaných subjektů. Svá stanoviska a návrhy ohledně „binárního XML“ prezentovaly kromě jiných firmy IBM, Sun, Nokia, Microsoft, Canon, Oracle, Adobe a Software AG. Stanoviska (position papers) byla s předstihemzveřejněna, o závěrech W3C z tohoto semináře zatím není nic známo.
Ve prospěch binární reprezentace se uvádějí dva hlavní důvody. Menší velikost přenášených souborů a jejich rychlejší načítání. Na tyto dva aspekty lze pohlížet odděleně a jejich řešení se mohou ubírat různými směry. Snadným a dostupným řešením problému velikosti je prostá komprimace textových souborů XML. Urychlení načítání by vyžadovalo zásadnější změmu přístupu – ukládání informací obsažených v dokumentu XML přímo do binárního proudu. Někdy se v této souvislosti mluví o předparsovaném XML. Příkladem takovéhoto přístupu je převod XML do abstraktní syntaxe ASN.1 a použití jejího binárního kódování.
Oba výše zmíněné důvody mají racionální opodstatnění. Existují dokonce experimenty s binárním kódováním, které měly dosáhnout významných zlepšení v obou ohledech. Pravdivost těchto tvrzení nikdo nezpochybňuje, panují však pochybnosti o relevanci obou hledisek pro skutečné, praktické aplikace. Velikost přenášeného textového HTML byla vždy v porovnání s grafikou, aplety a dalšími objekty celkem zanedbatelná. U XML a XHTML je to podobné. Zazipování několika nebo několika desítek kilobajtů kvůli šířce pásma dnes nikomu nestojí za námahu. Kdyby tomu bylo jinak, určitě by na to dynamický trh webového softwaru zareagoval. Pokud mohu soudit, přenos komprimovaných souborů se příliš nerozšířil ani na úrovni aplikací. Také rychlost načítání dokumentů není v drtivé většině případů nijak limitujícím faktorem. V praxi většinou parsování nezabírá významnou část celkové doby zpracování.
Má tedy smysl vymýšlet nový a pravděpodobně složitý standard? Kdo o něj má ve skutečnosti zájem? Rozhodně výrobci softwaru. Binární kódování jim umožní přidávat a prodávat nové funkce. A abychom nebyli nespravedliví, binární formát by mohl usnadnit expanzi XML na mobilní zařízení, kde hraje významnou roli jak velikost přenášených dat, tak nároky na omezené systémové prostředky. Zájem Nokie nebude tak docela náhodný. Tak či onak, W3C bude muset pod tlakem svých významných členů dojít k nějakému závěru. Můj osobní odhad je, že se dříve nebo později binární reprezentace XML z dílny W3C dočkáme.
Nový editor XML pro Emacs
James Clark zveřejnil alfa verzinXML, nového módu pro editování dokumentů XML v oblíbeném editoru GNU Emacs. Novinkou je kontextová validace editovaných dokumentů oproti schématu Relax NG. Současné módy buď validují podle zastaralého DTD (psgml), nebo se specializují pouze na vybrané aplikace XML (xslice – XSLT, XSL-FO). Navzdory deklarované alfa verzi je již nXML dostatečně stabilní pro běžnou práci a poskytuje obvyklé funkce, jako je vizuální zvýrazňování či validace v reálném čase. Vzhledem k nesporné kvalitě dosavadních Clarkových projektů (např. Jade, XT, Expat, nebo také XSLT 1.0 a Relax NG) se všichni, kdo editujeme XML v Emacsu, máme na co těšit.
Specifikace
5. září pracovní skupina W3C pro RDF (RDF Core Working Group) představila šest nových verzí svých pracovních dokumentů. Jedná se o novou generaci specifikací RDF, které by měly doplnit a nahradit platné doporučení W3C z roku 1999. Dokumenty již jsou v pokročilém stádiu standardizačního procesu; aktuální verze zohledňují připomínky vznesené během období poslední výzvy (Last Call). Změny nejsou nijak zásadní; sem tam přibyl či ubyl atribut, příklad nebo byla upřesněna formulace. Zde je přehled aktuálních dokumentů:
- RDF Primer
- RDF Concepts and Abstract Syntax
- RDF Semantics
- RDF/XML Syntax Specification (Revised)
- RDF Vocabulary Description Language 1.0: RDF Schema
- RDF Test Cases
Jen o týden později jiná pracovní skupina, XML Linking Working Group, uvedla jako svou poznámku návrh syntaxe identifikátorů fragmentů pro XML. Identifikátor fragmentu (tedy část URL za znakem #) syntakticky vychází z rámce XPointer Framework a schématu XPointer element(). Tento přístup umožňuje vcelku flexibilní a intuitivní adresování na úrovni elementů. Posuďte sami:
doc.xml#Title – element s ID Title, zkrácená verze – obdoba fragmentů v HTML.
doc.xml#element(Title) – totéž v plné notaci.
doc.xml#element(/1/3/2) – druhé dítě třetího dítěte prvního elementu na nejvyšší úrovni.
doc.xml#element(Title/4) – čtvrté dítě elementu s ID Title.