Hlavní navigace

Akta X: Relax NG se prosazuje

Petr Cimprich 18. 12. 2006

Relax NG má stále více příznivců, a to i uvnitř konsorcia W3C, které vytvořilo a propaguje konkurenční standard XML Schema. Předznamenává tento vývoj začátek nadvlády Relaxu NG a postupný útlum jazyka W3C XML Schema? Mohou oba jazyky dlouhodobě existovat vedle sebe?

Relax NG, původně alternativní jazyk určený ke specifikaci syntaxe aplikací XML, získává stále více půdy pod nohama. Konkurenční jazyk XML Schema od W3C už od svého vzniku čelí ostré kritice, zatímco Relax NG je v kolektivu oblíbený a prosazuje se na všech frontách. Dnes má status specifikace OASIS a (veřejně dostupného) mezinárodního standardu ISO/IEC.

Elliotte Rusty Harold ve svém blogu před pár dny optimisticky vyhlásil souboj Relaxu NG a W3C XML Schema za ukončený. Dokládá to zejména příklady týmů, mezi nimi i pracovních skupin W3C, tedy organizace stojící za jazykem XML Schema, používajících pro svou práci Relax NG. Haroldův článek vyvolal mnohé reakce, převážně souhlasné, jako napříkladkomentář Tima Braye. Bouřlivá a rozsáhlá diskuze se strhla v mailing listu XML-DEV.

Mezi Haroldovými příklady uživatelů Relaxu NG jsou dva technické výbory OASIS (DocBook a OpenDocument), kde není divu, že používají svůj vlastní standard, ale také dvě pracovní skupiny W3C. HTML pro XHTML 2.0, a SVG pro SVG 1.2. K nim můžu doplnit ještě pracovní skupinyRDF Core (pro RDF/XML Syntax), RDF Data Access (SPARQL) a Web Services Description (WSDL). Poslední uvedený příklad je obzvlášť zajímavý. Jazyk Web Services Description Language popisuje služby spočívající ve výměně zpráv XML pomocí protokolu SOAP. Pro vyjádření syntaxe těchto zpráv jazyk WSDL v sobě obsahuje jazyk pro popis schématu, se kterým je velmi těsně svázán. První a standardní volbou sice zůstává W3C XML Schema, ale hned od začátku WSDL počítá také s použitím dalších jazyků, jmenovitě Relaxu NG.

A o čem to vše svědčí? Je to opravdu důkaz definitivního vítězství Relaxu NG nad XML Schema? To sotva. Relax NG se zbavuje nálepky alternativní technologie a zaslouženě se rozšiřuje, ale W3C XML Schema rozhodně není u konce s dechem. Naopak, jeho pozice je stále dost pevná. Jazyk XML Schema je součástí nastupujících standardů XPath/XSLT 2.0 a XQuery 1.0, stále je základem WSDL. Datové typy XML Schema zatím nemají reálnou konkurenci. Navíc se chystá aktualizovaná verze W3C XML Schema 1.1 (struktury, datové typy) s řadou vylepšení a oprav.

Podle mého názoru je používání Relaxu NG pracovními skupinami W3C pouze dokladem liberální atmosféry uvnitř W3C. Je zřejmé, že konsorcium nikoho nenutí, aby používal pouze a jedině W3C XML Schema. Chápat soupeření obou standardů jako bitvu, ve které musí jeden vyhrát a druhý prohrát, neodpovídá reálné situaci. Budou zde dva nástroje a každý si bude moci vybrat, který z nich lépe poslouží jeho záměrům.

Od chvíle, kdy James Clark napsal Trang, už také není nutné rozhodnout se pro jeden z jazyků a druhý odmítnout. Pokud se vám podaří vyhnout se okrajovým funkcím, které jeden z jazyků neumí, není problém psát schémata v jednom jazyku a převádět do druhého. Pro toho, kdo píše schémata v textovém editoru, je pak nejlepší volbou udržovat schémata v kompaktní syntaxi Relax NG a pomocí Trangu pak převádět do Relax NG XML a XML Schema, a třeba i DTD. Až budeXML s někým vyměňovat, může si zvolit, podle jakého schématu bude chtít validovat. O popularitě Trangu svědčí, že v angličtině už se v XML komunitě objevuje nové sloveso – „to trang“.

Škoda, že tolik lidí v IT vnímá soupeření různých přístupů jako nesmiřitelný ideologický boj. Relax NG proti XML Schema, Linux proti Windows, Firefox proti IE, Python proti Perlu (Ruby); podobných „protikladů“ by se našlo. Buďme rádi, že máme možnost volby, a přejme ji i ostatním.

Našli jste v článku chybu?

18. 12. 2006 15:11

Jirka Kosek (neregistrovaný)

Jen upřesním, že hlavní důvod proč DocBook V5.0 používá RELAX NG není v tom, že by oba standardy vytvářela jedna standardizační organizace. Pravý důvod je v tom, že ze současných běžně používaných schémových jazyků jedině RELAX NG (v kombinaci se Schematronem) dokáže rozumně popsat omezení, kterým musí docbookové dokumenty vyhovět. Standardy OASIS klidně mohou používat W3C XML Schéma, ale kdo by tenhle jazyk používal, že ;-)

Pokud někdo neví, jak vypadá RELAX NG, může se podívat na

Podnikatel.cz: Přehledná titulka, průvodci, responzivita

Přehledná titulka, průvodci, responzivita

Vitalia.cz: Tesco: Chudá rodina si koupí levné polské kuře

Tesco: Chudá rodina si koupí levné polské kuře

Vitalia.cz: Znáte „černý detox“? Ani to nezkoušejte

Znáte „černý detox“? Ani to nezkoušejte

Měšec.cz: Zdravotní a sociální pojištění 2017: Připlatíte

Zdravotní a sociální pojištění 2017: Připlatíte

DigiZone.cz: Recenze Prostřeno: cirkus postižených

Recenze Prostřeno: cirkus postižených

Vitalia.cz: Na pečení je nejlepší medovicový med

Na pečení je nejlepší medovicový med

Vitalia.cz: Co nabídne největší výživová konference FOOD21?

Co nabídne největší výživová konference FOOD21?

Vitalia.cz: Manželka je bio, ale na sex moc není

Manželka je bio, ale na sex moc není

Podnikatel.cz: Víme první výsledky doby odezvy #EET

Víme první výsledky doby odezvy #EET

Lupa.cz: Co se dá měřit přes Internet věcí

Co se dá měřit přes Internet věcí

Lupa.cz: EET v e-shopech? Zdražení a horší komfort

EET v e-shopech? Zdražení a horší komfort

Vitalia.cz: Mondelez stahuje rizikovou čokoládu Milka

Mondelez stahuje rizikovou čokoládu Milka

Lupa.cz: Teletext je „internetem hipsterů“

Teletext je „internetem hipsterů“

Vitalia.cz: Co pomáhá dítěti při zácpě?

Co pomáhá dítěti při zácpě?

120na80.cz: Horní cesty dýchací. Zkuste fytofarmaka

Horní cesty dýchací. Zkuste fytofarmaka

Root.cz: Certifikáty zadarmo jsou horší než za peníze?

Certifikáty zadarmo jsou horší než za peníze?

Vitalia.cz: Láska na vozíku: Přitažliví jsme pro tzv. pečovatelky

Láska na vozíku: Přitažliví jsme pro tzv. pečovatelky

Lupa.cz: UX přestává pro firmy být magie

UX přestává pro firmy být magie

Měšec.cz: Za palivo zaplatíte mobilem (TEST)

Za palivo zaplatíte mobilem (TEST)

Měšec.cz: U levneELEKTRO.cz už reklamaci nevyřídíte

U levneELEKTRO.cz už reklamaci nevyřídíte