Value Constraints Demo

This document describes the usage of the Value Constraints Demo. There are several things
which the user has to do before starting the demo.  They will be described one by one, step
by step. 
The demo represents a creation of a very simple dictionary, using the Value Constraints
engine in the CLaRK System. The initial data for the dictionary is stored in file:
"const_demo.xml". It contains very simple structures containing only word entries without
any other information. The file also contains a HEADER element with a list of all
part-of-speech category names allowed for the dictionary. The set of constraints in this demo
build partial sub-structures automatically when the user supplies a certain information. In
the cases when the user must decide what information to supply, the constraints reduce
(constraint) the choices as much as possible.

Getting started:

Step 1:
The first thing here is the rough document to be loaded in the system. For this purpose
the user must compile the DTD from file: "const_demo.dtd". Having the DTD in the system
the user can edit the DTD Layout for a better view (New lines are needed before: all
opening tags and before the following closing tags: dictionary, word, words. Also 
"Use line offsets" can be activated.). The last thing in this step is importing the file 
"const_demo.xml".

Step 2:
Setting up Tokenizer & Filter.
	2.1) Creating a Tokenizer. The tokenizer must be named: "DictToke". Its parent
	must be tokenizer MIXED (included in CLaRK System). The new tokenizer must
	have one category with the following definition: "LAT+|(LAT+,"_",LAT+)+".

	2.2) Creating a Filter. The filter must be named: "no_punct" and it must filter for
	tokens from category "PUNCT" from tokenizer "DEFAULT" or "MIXED". 

Step 3:
Loading the Constraints. The constraints are stored in a file "const_demo.scr". In order to
load it, the user must choose menu item "Value Constraints" and choose DTD "dictionary"
(the DTD from file "const_demo.dtd"). Then choose "Load From File" button and point
to file "const_demo.src".

Step 4:
Creating a Value Constraint Group. Switch the Value Constraints dialog to "Group
Constraints". Create a new group with an arbitrary name and the following XPath
expression for context: "words/word" and then add all the 14 constraints.

Step 5:
Apply the Value Constraint group, created in the previous step.


Having completed successfully the steps above, the Value Constraints Engine is
working. It starts processing the word entries one by one. For each word the
engine puts automatically a tag <pos> and gives the user a list of all part-of-speech
categories (defined in the header of the document). Depending on the user's choice,
the engine adds other tags and asks for other information, and so on.

In the end the result is a simple dictionary with a relevant information for each
word entry.