26.11.2012 Views

Wirtschaftsuniversität Wien Magisterarbeit - SemanticLab

Wirtschaftsuniversität Wien Magisterarbeit - SemanticLab

Wirtschaftsuniversität Wien Magisterarbeit - SemanticLab

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

With XUL templates, one is able to dynamically create XUL elements. Currently XUL<br />

templates support RDF and XML-files as data sources. SQLite support was just recently<br />

introduced with Firefox 3 [MDC09c].<br />

6.1.2. Developing Firefox extensions<br />

There are many tutorials on the Internet explaining how to build extensions for Firefox.<br />

One of the best found was the one available at rietta.com [RIET]. Although the suggested<br />

tutorial gives a good introduction, it does not deal with advanced topics such as<br />

flexible GUIs, XUL templates, using SQLite databases, storing and saving files on local<br />

hard discs, building extension by using Eclipse and Ant build-files, loading components,<br />

debugging extensions and so on.<br />

That is why this section is going to briefly describe the general structure of Firefox<br />

extensions and is then hopefully going to add value by transcribing the experiences made<br />

while undertaking the applied part of this thesis. However, no working code examples<br />

will be provided at this stage as this would go beyond the scope of this thesis.<br />

6.1.3. File structure<br />

Firefox extensions are distributed using a zip-file as a container which is saved with<br />

an “.xpi”-file-extension (pronounced “zippy”). The contents of the xpi-file have the<br />

following structure [MDC09d]:<br />

exampleExt.xpi:<br />

/install.rdf<br />

/components/*<br />

/components/cmdline.js<br />

/defaults/<br />

/defaults/preferences/*.js<br />

/plugins/*<br />

/chrome.manifest<br />

/chrome/icons/default/*<br />

/chrome/<br />

/chrome/content/<br />

Basically there are five important directories and files to mention:<br />

• install.rdf: the install.rdf-file is an Install Manifest which is an RDF/XML-styled<br />

file. The Mozilla Developer Center (MDC) defines an Install Manifest as “the<br />

file an Add-on Manager-enabled XUL application uses to determine information<br />

about an addon as it is being installed. It contains metadata identifying the addon,<br />

providing information about who created it, where more information can be found<br />

about it, which versions of what applications it is compatible with, how it should<br />

be updated, and so on” [MDC09e].<br />

55

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!