SPT - Requirements
1. Tool Package:
| ID | Description | Notes |
|---|---|---|
| 1.1 | downloadable package | TBD |
| 1.2 | installable tool | TBD |
| 1.3 | could be a stand-along package or included in the Lexical Tools package | TBD |
| 1.4 | a command-line tool provides functions described in the next section of tool functions | TBD |
2. Tool Function:
| 2.1 Synonym Definition | ||
|---|---|---|
| ID | Description | Notes |
| 2.1.1 | Includes (but not limited to) lexical synonyms, spelling variants, acronyms, abbreviations, etc. | Done |
| 2.1.2 | Assume all synonyms are the base (uninflected) forms | Done |
| 2.1.3 | Ignore case | Done |
| 2.1.4 | Strip punctuations | TBD |
| 2.1.5 | Provide mapping between word to word and word to term (multi-words) | Done |
| 2.1.6 | Category (part of speech) is not used | Done |
| 2.1.7 | All synonyms are symmetrical (if A is a synonym of B, the B must be a synonym of A) | Done |
| 2.2 Synonyms Source | ||
| 2.2.1 | Provide a default synonym source (from the synonyms of SPECIALIST LEXICON) | TBD |
| 2.2.2 | Allow users to customize their own synonyms from a flat file system (append to the default synonym) | Done |
| 2.2.3 | Use # for comments | Done |
| 2.2.4 | Ignore duplications | Done |
| 2.2.5 | Automatic generate symmetrical synonyms | Done |
| 2.2.6 | No category is used (2 fields only) | Done |
| 2.2.7 | Use pipe “|” to separate fields | Done |
| 2.2.8 | All synonyms will be automatically normalized by strip away case when they are read-in to the tool | Done |
| 2.2.9 | All synonyms will be automatically normalized by strip away punctuation when they are read-in to the tool | TBD |
| 2.2.10 | Provide an option to use default synonyms, customized synonyms, or both. | TBD |
| 2.3 Synonyms Mapping Functions | ||
| 2.3.2 | Normalizes input by Uninflection, lower case, strip punctuation | TBD |
| 2.3.3 | Generates synonyms of normalized input | Done |
| 2.3.4 | Generates recursive synonyms of normalized input | Done |
| 2.3.5 | Generates recursive synonyms of normalized input for words and terms by specifying the recursive depth | Done |
| 2.3.6 | Keeps all history and depth for synonyms generations | Done |
| 2.4 Patterns (Word and Term) Permutation Functions | ||
| 2.4.1 | Finds terms have synonyms of normalized input | Done |
| 2.4.2 | Finds patterns permutation of normalized input | Done |
| 2.5 Permutation Functions | ||
| 2.5.1 | Permutes all found patterns of the input | Done |
| 2.5.2 | The output is a list of string of above permuted patterns | Done |
3. Examples:
| Input | Test | Results |
|---|---|---|
|
raining dogs and cats
|
raining dog and cat
|
| Input | Tests | Results |
|---|---|---|
|
dog distemper
|
canine distemper
|