Once a new node is entered into the system, the user is prompted with a dialog box and asked to enter keywords that summarise the node and a respective weight for each keyword. When all the keywords have been entered, the system will start to validate each one against the thesaurus. If there is just one entry for this word in the thesaurus, the respective thesaurus class number is written as a node attribute. If the word exists, but there is more than one thesaurus entry, a new dialog box listing all possible meanings is presented to the user, and he/she has to choose one of the entries. If the word does not exist in the thesaurus, the user is given the following choices: Insert word anyway, Enter a new word, Search the thesaurus, Insert new word in the thesaurus. To search for a word in the thesaurus the user can choose to Enter a word, enter a substring or enter a thesaurus class number. The last option, Insert word in the thesaurus, requires recalculation of the thesaurus index, and insertion of a new entry in the thesaurus. As re-indexing the thesaurus takes a long time, this functionality may be disabled by the system manager. At the end of this phase the keywords will be stored as the node's characteristics in the linkbase. Later on, if a user opens this node, and selects an anchor and the Create Special Link button in the menu, a dialog box prompts the user to enter local keywords and weights for the given anchor. These local keywords will be validated in the way described above, but there is no need now to store the local keywords inside the database. The next step is to combine the local keywords with the global keywords and then use the new set to calculate the possible destinations. Figure 5 shows one of the dialog boxes used to implement the mentioned protocol.