The Alternative Javascript Glossary Tool
Copyright© 01-28-2005 Leonardo Corradi Coelho
Terms of use  Project Page   W3C  Source Forge

About This Project

The Project


Alternative Javascript Glossary is an Open Source initiative to provide an usefull tool to webmasters who wants to provide dynamic content on their websites and better their website users experiency.

Why it is named Alternative?

Because of the script origins at the Alternative Modeling Website, owned by the administrator of this project.


This software development project aims to provide an universally available website glossary tool.

Why to use javascript?

Because javascript is light, portable and most available.

By saying universally available I mean: Anyone who have a website can use it independently of the ability to execute server side scripts. This objective can be reached not only by javascript, but this is one of the most widely used script languages in the world; almost all modern graphical web browsers supports it. This way, javascript will avoid most of the difficulties related to plugins and third part software installations, providing a free and light alternative to other client side solutions.

Why not to do this with pure html and links?

Because implementing this system with pure html and links imposes some limitations to the planned glossary features and to the actual functionality of the tool. By acessing the javascript objects hierarchy you can control the name of the new window, as soon as its size and components. It is possible, for example, to prevent the opening of a lot of undesired glossary windows at the same time, without the need to manually close each old glossary windows.

It is possible to pass parameters between known named windows, providing non anbiguous control of the child window objects, like iframes, status bar and other components by the parent window. It is specially usefull in the event of more child windows runing at the same time. The control of parent window by the child window is also possible.

It is possible to implement templates and skin functionality by using config files, without the need to have server side scripts access.

And finally because with the use of javascript it will be possible to prevent the access of your glossary without the access of your real website first. It is important to prevent the search engine indexing of your database and the exposing of your glossary entries out of your website context, or to prevent traffic only in the glossary databases, but not in your real website.

Why to release it as Open Source?

Because it must be fully available and modifiable to anyone who wants to use such a feature in their website. Any javascript code out in this world can, in beguining, be viewed and copied by anyone because it is published as source code and can not be compiled. This fact does not prevents the author, otherwise, to place any barrier to the use, modifying or copy of their code simply because the code can be hiden from the website users trough some tricks. At the same time, simply publishing a source code in the net without any license does not fully protect the authors of the code from fraudulent actions or legal issues related to support, damage to third part or authorship rights. An Open Source license is a way to the code authors and copyright owners to protect themselves and to provide information on the software status, risks of use, authors responsabilities and rights in a legal way. It is different of providing a personal and not legally approved disclaimer. The Open Source licenses both protects the software developers and end-users rights of freedom as protects the copyright owners of being attacked.

The software released by this project is provided as is, without any warranty and support, under a W3C type license that permits anyone to use, copy and modify the contained package files with any purpose.

Who started this project?

This project was started by a brazilian man named Leonardo Corradi Coelho who owns an educative and free hobby and artistic website: The Alternative Modeling website.

Who develops this script?

Anyone who wants to be helpfull and understand a little javascript, web and html can help develop this script. The development efforts must, although, be centered at the Source Forge community. In other words, I will only acept contributions of Source Forge users because this way I can prevent these people from imposing barriers and conditions by the use of their code. By contributing to a Source Forge project, the contributors must comply with the Source Forge site rules, and one of these rules is to only publish open source content. Any code provided at any type of restrictive license will imply in breacking the Source Forge site rules and the contents of the W3C license, ruining the project.

What may this glossary do?

This glossary is intended to provide a way the website user will look for help on understand the website's text. If you, webmaster, owns a technical or very specific website content that is carried of jargon and technical words, you will be able to explain the concepts behind these words or phrases on the user demand (Think in an on-demmand foot note engine). It can be very usefull to teaching websites, to public technical reports or to help improve your costumers satisfaction and bust your website salles. The great feature of the world wide web is to provide information. This type of tool can help in this task.

And finally, why to use a glossary tool in the place of providing cross-reference links or redundant text?

The question answers itself, but I will show to you some more about this topic.

The major objective of this app is to keep your text clean and direct in the same time it will be cross-referenced and your website layout and flow will continue organized.

The major structural and organizational difference between a book and a website (not physical differences) is the linearity of the content access. Generally a book is intended to be linearly read. You will only be presented to a new concept after being presented to another basin one. Unless the book is a papers compilation or other specific book type this will be true. If you start to read an hipotetical book from its middle, you will probably not understand its text because you don't view the basic concepts behind it. If you knows very well the subject and most of its concepts you're luky, but if you are a newcomer... :( In the other hand, a website is generally acessible from most locations. Each of these locations has a specific interest on linking to your website and may link directly to one of your website's sections, without start from where you planned. This contributes to the non-linear website content access. See a search engine... It links to every page on your website, and you want it to just do it. The researcher will find one of yours website sections based on his search keywords and not on your planned flow. The web provides and incentive the "wrong access form". This is not wrong access way, but it imposes webmasters and ordinary blog / homepage owners to cross reference the information, to use foot notes, to use redundant text (every time a concept is important, you need to explaint it again) or to just make a bad quality text that leaks information. If you use the cross referencing option and provide the links, each website content modification will be a nightmare. If you use redundant text, your text will get boring and dense to anyone who knows the subject or to anyone who just read the concept explanation in the previous page. The foot note approach is the better of these three, but you will fall in a great webdesign trap. How to provide the foot notes without compromise your layout.

This glossary tool is my solution for the foot notes webdesign trap. You can make dynamic foot notes that are presented on demand. My approach was to not embed the foot notes on the website because this way we can still found layout problems. Imagine if you place your foot notes on an iframe in your main website window. You still loses your working space. The good of my approach is that it can not interferes with your website layout, and if the user wants, he can turn the foot notes off. Also, this glossary will provide some more functionality than a pure links + iframe approach can provide. To provide these options you must use plugins, java or other technologies. I'm using javascript. If you embed the applet, plugin or javascript content on the body of your documents, in case the browser has no support or disabled support your webpage will not be correctly rendered.

Test the glossary
Contact Logo