Goal: To design and implement, in an agreed-upon language (or languages), some data structures and algorithms for keeping track of (and extracting statistics about) how a large group of users interacts with a collection of strings of natural language text.
Each string contains words. The words are (manually) given certain properties, such as:
- Their type (subject? verb? ... etc)
- Other words they can have the same meaning as (depends on context)
One or more substrings contained in each string will 'reference' a named 'group' in a collection of groups.
Interfaces will be defined, providing the following functionality:
1) For a given user, "select" a given word within a given string previously retrieved with interface #2
- If the word is in a substring referencing a group, this user has made an 'expression of interest' in this group. Whether that interest is
2) For a given user, retrieve a few strings from the collection that satisfy the following criteria:
- The user has not seen them before
-