Využití RELAX NG pro podporu uživatele při editování XML dokumentu

Název práce: Využití RELAX NG pro podporu uživatele při editování XML dokumentu
Autor(ka) práce: Schmied, Martin
Typ práce: Bakalářská práce
Vedoucí práce: Kosek, Jiří
Oponenti práce: Nič, Miloslav
Jazyk práce: Česky
Abstrakt:
Tato práce se zabývá možnostmi využití RELAX NG schémat při editaci XML dokumentů. Konečným cílem práce je prototypová implementace podpůrného systému pro editaci XML dokumentů s RELAX NG schématy v prostředí Eclipse IDE. Takový systém se skládá ze dvou hlavních částí -- integrace validátoru a systému pro tvorbu automatických doplnění, jehož návrh představuje hlavní přínos této práce. V současné době je totiž podpora RELAX NG výsadou zejména komerčních editorů s uzavřeným kódem. První kapitola je stručným úvodem do problematiky XML s důrazem na XML schémata. Je provedeno srovnání tří dnes zřejmě nejpoužívanějších schémových jazyků -- DTD, W3C XML Schema a RELAX NG. Dále jsou diskutovány možnosti využití schémat při přímé editaci XML dokumentů. Nakonec je uveden přehled základních vzorů RELAX NG sloužící jako referenční příručka pro orientaci v příkladech uvedených v této práci. Druhá kapitola se zabývá implementací systému tvorby automatických doplnění. Rozebírá volbu vhodných programových reprezentací XML dokumentů a RELAX NG schémat a uvádí základní principy odvozování vzorů pro jednotlivé elementy. Hlavním výstupem kapitoly je návrh algoritmu pro odvozování možných doplnění pro jednotlivé uzly XML dokumentu na základě RELAX NG schématu dokumentu. Třetí kapitola popisuje integraci systému tvorby automatických doplnění spolu s validátorem RELAX NG v prostředí Eclipse IDE. Začíná popisem platformy Eclipse a dvou základních aspektů důležitých pro tvorbu zásuvných modulů -- modulárního systému OSGi Service Platform a mechanismu bodů rozšíření. Dále je popsána vlastní implementace zásuvných modulů systému podpory RELAX NG a jejich integrace s existující infrastrukturou pro editaci XML.
Klíčová slova: Eclipse; RELAX NG; XML
Název práce: Utilizing RELAX NG Schemas in XML Editors
Autor(ka) práce: Schmied, Martin
Typ práce: Bachelor thesis
Vedoucí práce: Kosek, Jiří
Oponenti práce: Nič, Miloslav
Jazyk práce: Česky
Abstrakt:
This thesis explores the possibilities of utilizing RELAX NG schemata in the process of editing XML documents. The ultimate goal of this thesis is to prototype a system supporting user while editing XML document with bound RELAX NG schema inside the Eclipse IDE. Such a system comprises two major components -- an integration of RELAX NG validator and an autocompletion engine. Design of the autocompletion engine represents the main contribution of this thesis, because similar systems are almost exclusively implemented in closed-source commercial editors as of 2009. The first chapter is a brief introduction into XML while emphasizing XML schema languages. A comparison is of three major schema languages -- DTD, W3C XML Schema and RELAX NG. Furthermore, options of exploiting information from schema by the XML editor are discussed. In the end of the chapter an overview of basic RELAX NG patterns used throughout this thesis is given. The second chapter describes implementation of the autocompletion engine. It reasons about appropriate in-memory representation of the XML documents and RELAX NG schemas and presents basic principles of pattern-inference for individual elements. The main output of the chapter is an algorithm proposal for generating possible completions based on given XML document nodes and RELAX NG schema of the document. The goal of the final third chapter is integrating RELAX NG validator and the autocompletion engine inside the Eclipse IDE. It starts by describing two basic aspects of Eclipse Platform -- the OSGi Service Platform dynamic module system and the extension point mechanism. Then the implementation of individual plug-ins and their integration with existing XML editing infrastructure is described.
Klíčová slova: RELAX NG; XML; Eclipse

Informace o studiu

Studijní program / obor: Aplikovaná informatika/Informatika
Typ studijního programu: Bakalářský studijní program
Přidělovaná hodnost: Bc.
Instituce přidělující hodnost: Vysoká škola ekonomická v Praze
Fakulta: Fakulta informatiky a statistiky
Katedra: Katedra informačního a znalostního inženýrství

Informace o odevzdání a obhajobě

Datum zadání práce: 1. 1. 2008
Datum podání práce: 1. 1. 2009
Datum obhajoby: 4. 9. 2009
Identifikátor v systému InSIS: https://insis.vse.cz/zp/13495/podrobnosti

Soubory ke stažení

    Poslední aktualizace: