├── .gitignore
├── README.md
├── lib
├── LAIR.Collections.dll
├── LAIR.Collections.xml
├── LAIR.Extensions.dll
├── LAIR.Extensions.xml
├── LAIR.IO.dll
├── LAIR.IO.xml
├── LAIR.MachineLearning.dll
├── LAIR.MachineLearning.xml
├── LAIR.Misc.dll
├── LAIR.Misc.xml
├── LAIR.Morphology.dll
├── LAIR.Morphology.xml
├── LAIR.ResourceAPIs.GraphViz.dll
├── LAIR.ResourceAPIs.GraphViz.xml
├── LAIR.ResourceAPIs.MySQL.dll
├── LAIR.ResourceAPIs.MySQL.xml
├── LAIR.XML.dll
├── LAIR.XML.xml
└── MySql.Data.dll
├── resources
├── .sorted_for_dot_net
├── adj.exc
├── adv.exc
├── cntlist
├── cntlist.rev
├── cousin.exc
├── data.adj
├── data.adv
├── data.noun
├── data.verb
├── dbfiles
│ ├── adj.all
│ ├── adj.pert
│ ├── adj.ppl
│ ├── adv.all
│ ├── cntlist
│ ├── noun.Tops
│ ├── noun.act
│ ├── noun.animal
│ ├── noun.artifact
│ ├── noun.attribute
│ ├── noun.body
│ ├── noun.cognition
│ ├── noun.communication
│ ├── noun.event
│ ├── noun.feeling
│ ├── noun.food
│ ├── noun.group
│ ├── noun.location
│ ├── noun.motive
│ ├── noun.object
│ ├── noun.person
│ ├── noun.phenomenon
│ ├── noun.plant
│ ├── noun.possession
│ ├── noun.process
│ ├── noun.quantity
│ ├── noun.relation
│ ├── noun.shape
│ ├── noun.state
│ ├── noun.substance
│ ├── noun.time
│ ├── verb.Framestext
│ ├── verb.body
│ ├── verb.change
│ ├── verb.cognition
│ ├── verb.communication
│ ├── verb.competition
│ ├── verb.consumption
│ ├── verb.contact
│ ├── verb.creation
│ ├── verb.emotion
│ ├── verb.motion
│ ├── verb.perception
│ ├── verb.possession
│ ├── verb.social
│ ├── verb.stative
│ └── verb.weather
├── index.adj
├── index.adv
├── index.noun
├── index.sense
├── index.verb
├── log.grind.3.1
├── noun.exc
├── sentidx.vrb
├── sents.vrb
├── verb.Framestext
└── verb.exc
└── src
├── TestApplication
├── Docs
│ └── README.txt
├── Program.cs
├── Properties
│ ├── AssemblyInfo.cs
│ ├── Resources.Designer.cs
│ ├── Resources.resx
│ ├── Settings.Designer.cs
│ └── Settings.settings
├── TestApplication.csproj
├── TestForm.Designer.cs
├── TestForm.cs
└── TestForm.resx
├── WordNet.sln
└── WordNet
├── Docs
└── README.txt
├── Properties
└── AssemblyInfo.cs
├── SynSet.cs
├── WordNet.csproj
├── WordNetEngine.cs
└── WordNetSimilarityModel.cs
/.gitignore:
--------------------------------------------------------------------------------
1 | # Build Folders (you can keep bin if you'd like, to store dlls and pdbs)
2 | [Bb]in/
3 | [Oo]bj/
4 |
5 | # mstest test results
6 | TestResults
7 |
8 | ## Ignore Visual Studio temporary files, build results, and
9 | ## files generated by popular Visual Studio add-ons.
10 |
11 | # User-specific files
12 | *.suo
13 | *.user
14 | *.sln.docstates
15 |
16 | # Build results
17 | [Dd]ebug/
18 | [Rr]elease/
19 | x64/
20 | *_i.c
21 | *_p.c
22 | *.ilk
23 | *.meta
24 | *.obj
25 | *.pch
26 | *.pdb
27 | *.pgc
28 | *.pgd
29 | *.rsp
30 | *.sbr
31 | *.tlb
32 | *.tli
33 | *.tlh
34 | *.tmp
35 | *.log
36 | *.vspscc
37 | *.vssscc
38 | .builds
39 |
40 | # Visual C++ cache files
41 | ipch/
42 | *.aps
43 | *.ncb
44 | *.opensdf
45 | *.sdf
46 |
47 | # Visual Studio profiler
48 | *.psess
49 | *.vsp
50 | *.vspx
51 |
52 | # Guidance Automation Toolkit
53 | *.gpState
54 |
55 | # ReSharper is a .NET coding add-in
56 | _ReSharper*
57 |
58 | # NCrunch
59 | *.ncrunch*
60 | .*crunch*.local.xml
61 |
62 | # Installshield output folder
63 | [Ee]xpress
64 |
65 | # DocProject is a documentation generator add-in
66 | DocProject/buildhelp/
67 | DocProject/Help/*.HxT
68 | DocProject/Help/*.HxC
69 | DocProject/Help/*.hhc
70 | DocProject/Help/*.hhk
71 | DocProject/Help/*.hhp
72 | DocProject/Help/Html2
73 | DocProject/Help/html
74 |
75 | # Click-Once directory
76 | publish
77 |
78 | # Publish Web Output
79 | *.Publish.xml
80 |
81 | # NuGet Packages Directory
82 | packages
83 |
84 | # Windows Azure Build Output
85 | csx
86 | *.build.csdef
87 |
88 | # Windows Store app package directory
89 | AppPackages/
90 |
91 | # Others
92 | [Bb]in
93 | [Oo]bj
94 | sql
95 | TestResults
96 | [Tt]est[Rr]esult*
97 | *.Cache
98 | ClientBin
99 | [Ss]tyle[Cc]op.*
100 | ~$*
101 | *.dbmdl
102 | Generated_Code #added for RIA/Silverlight projects
103 |
104 | # Backup & report files from converting an old project file to a newer
105 | # Visual Studio version. Backup files are not needed, because we have git ;-)
106 | _UpgradeReport_Files/
107 | Backup*/
108 | UpgradeLog*.XML
109 |
--------------------------------------------------------------------------------
/README.md:
--------------------------------------------------------------------------------
1 | WordNetAPI
2 | ==========
3 |
4 | This project contains the WordNet C# API written by Matt Gerber of Michgan State University, it includes all required dependencies to build in one step.
5 |
6 | Project hompage: https://ptl.sys.virginia.edu/ptl/members/matthew-gerber/software#wordnet
7 |
--------------------------------------------------------------------------------
/lib/LAIR.Collections.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zacg/WordNetAPI/0b264294e508d3a27a950bb9a64fb5663770fd2f/lib/LAIR.Collections.dll
--------------------------------------------------------------------------------
/lib/LAIR.Collections.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | LAIR.Collections
5 |
6 |
7 |
8 |
9 | Represents a set of unique items
10 |
11 | Type of elements in the set
12 |
13 |
14 |
15 | Contains the first slot number for each hash code
16 |
17 |
18 |
19 |
20 | Slots used to store element data and hash codes
21 |
22 |
23 |
24 |
25 | The number of slots that are in use (i.e. filled with data) or have been used and marked as empty
26 | later on. This differs from _slots.Length, as not all of the array will be in use.
27 |
28 |
29 |
30 |
31 | The index of the first slot in the empty slots chain. Remove() prepends the cleared slot to
32 | the empty chain. Add() fills the first slot in the empty slots chain with the added element
33 | (or increases the number of touched slots if the empty slots chain is empty).
34 |
35 |
36 |
37 |
38 | The number of items in this set
39 |
40 |
41 |
42 |
43 | Equality comparer for elements in the set
44 |
45 |
46 |
47 |
48 | The number of changes made to this set. Used by enumerators to detect changes and invalidate themselves.
49 |
50 |
51 |
52 |
53 | Whether or not to throw exceptions when duplicate elements are added to the set
54 |
55 |
56 |
57 |
58 | Whether or not to throw exceptions when elements are not removed
59 |
60 |
61 |
62 |
63 | Whether or not this set is read-only
64 |
65 |
66 |
67 |
68 | Ratio of number of elements to the size of the hash index array. Values smaller than one result in quicker lookups
69 | and higher memory usage. Values larger than one result in slower lookups and lower memory usage.
70 |
71 |
72 |
73 |
74 | Constructor
75 |
76 |
77 |
78 |
79 | Constructor
80 |
81 | Number of elements that can be added without resizing
82 |
83 |
84 |
85 | Constructor
86 |
87 | Number of elements that can be added without resizing
88 | Comparer to use
89 |
90 |
91 |
92 | Constructor
93 |
94 | Whether or not to throw an exception if a duplicate element is added
95 |
96 |
97 |
98 | Constructor
99 |
100 | Elements to add to set
101 |
102 |
103 |
104 | Constructor
105 |
106 | Elements to add to set
107 | Whether or not to throw an exception if a duplicate element is added
108 |
109 |
110 |
111 | Constructor
112 |
113 | Comparer to use
114 |
115 |
116 |
117 | Constructor
118 |
119 | Elements to construct set from
120 | Comparer to use
121 |
122 |
123 |
124 | Constructor
125 |
126 | Path to saved set
127 | Function from strings to objects of type T
128 |
129 |
130 |
131 | Initializes the set
132 |
133 | Number of elements that can be added without resizing
134 | Comparer for set
135 |
136 |
137 |
138 | Adds an element to this set
139 |
140 | Element to add
141 | True if element was added and false if it was already present
142 |
143 |
144 |
145 | Adds a range of elements to this set
146 |
147 | Elements to add
148 |
149 |
150 |
151 | Removes an element from this set
152 |
153 | Element to remove
154 | True if element was removed and false otherwise
155 |
156 |
157 |
158 | Removes a range of elements from this set
159 |
160 | Elements to remove
161 |
162 |
163 |
164 | Removes elements that satisfy a predicate
165 |
166 | Predicate to check
167 | Number of elements removed
168 |
169 |
170 |
171 | Clears elements from this set
172 |
173 |
174 |
175 |
176 | Checks whether an element is in this set
177 |
178 | Hash index of element
179 | Hash code of element
180 | Element to check for
181 | True if element is present and false otherwise
182 |
183 |
184 |
185 | Checks whether this set contains an element
186 |
187 | Element to check for
188 | True if element is present and false otherwise
189 |
190 |
191 |
192 | Gets a copy of the current set
193 |
194 | Copy of the current set
195 |
196 |
197 |
198 | Copies elements in this set into an array
199 |
200 | Array into which elements should be copied
201 |
202 |
203 |
204 | Copies elements in this set into an array
205 |
206 | Array into which elements should be copied
207 | Index in array at which copying should begin
208 |
209 |
210 |
211 | Copies elements in this set into an array
212 |
213 | Array into which elements should be copied
214 | Index in array at which copying should begin
215 | Maximum number of element to be copied
216 |
217 |
218 |
219 | Converts the set to an array
220 |
221 | Array of elements
222 |
223 |
224 |
225 | Saves this set to disk
226 |
227 | Path to save to
228 | Function from elements to strings
229 |
230 |
231 |
232 | Resizes the set to accommodate the number of elements
233 |
234 |
235 |
236 |
237 | Gets a hash code and index for an element
238 |
239 | Element to get hash code and index for
240 | Maximum hash index that should be returned
241 | Hash code for element
242 | Hash index for element
243 |
244 |
245 |
246 | Equals operator override
247 |
248 | First set
249 | Second set
250 | True if sets are equal and false otherwise
251 |
252 |
253 |
254 | Not equal operator override
255 |
256 | First set
257 | Second set
258 | True if sets are equal and false otherwise
259 |
260 |
261 |
262 | Checks whether or not this set is identical to another
263 |
264 | Set to compare this one to
265 | True if sets are identical, false otherwise
266 |
267 |
268 |
269 | Gets hash code for this set
270 |
271 | Hash code for this set
272 |
273 |
274 |
275 | Gets number of elements in set
276 |
277 |
278 |
279 |
280 |
281 | Intersects the current set with another, removing elements from the current set that are not in the other.
282 |
283 | Set to intersect the current one with
284 |
285 |
286 |
287 | Gets Dice overlap coefficient with another set
288 |
289 | Other set
290 | Dice overlap coefficient
291 |
292 |
293 |
294 | Gets enumerator for this set
295 |
296 | Enumerator for this set
297 |
298 |
299 |
300 | Gets enumerator for this set
301 |
302 | Enumerator for this set
303 |
304 |
305 |
306 | Gets enumerator for this set
307 |
308 | Enumerator for this set
309 |
310 |
311 |
312 | Gets or sets whether or not this set is read-only (default: false)
313 |
314 |
315 |
316 |
317 | Gets or sets whether or not to throw exceptions when duplicate elements are added to the set (default: true)
318 |
319 |
320 |
321 |
322 | Gets or sets whether or not to throw exceptions when elements are not removed (default: true)
323 |
324 |
325 |
326 |
327 | Gets the number of elements in this set
328 |
329 |
330 |
331 |
332 | A single slot of element storage
333 |
334 |
335 |
336 |
337 | Element in slot
338 |
339 |
340 |
341 |
342 | Hash code of element in slot
343 |
344 |
345 |
346 |
347 | Index of next slot whose element hash code collided with the current one
348 |
349 |
350 |
351 |
352 | Whether the slot is filled
353 |
354 |
355 |
356 |
357 | Represents an enumerator over a Set object
358 |
359 |
360 |
361 |
362 | Constructor
363 |
364 | Set to iterate over
365 |
366 |
367 |
368 | Moves to the next element in the set
369 |
370 | True if move was successful and false otherwise
371 |
372 |
373 |
374 | Disposes the current enumerator
375 |
376 |
377 |
378 |
379 | Makes sure the state of the enumerated set hasn't changed
380 |
381 |
382 |
383 |
384 | Not supported
385 |
386 |
387 |
388 |
389 | Gets the current element in the enumeration
390 |
391 |
392 |
393 |
394 | Gets the current element in the enumeration
395 |
396 |
397 |
398 |
399 | Provides helper functionality for setting the capacity
400 |
401 |
402 |
403 |
404 | Checks whether an integer is prime
405 |
406 | Integet to check
407 | True if integer is prime, false otherwise
408 |
409 |
410 |
411 | Calculates the next prime number larger than a given number
412 |
413 | Number
414 | Next prime number greater than given number
415 |
416 |
417 |
418 | Gets the next capacity larger than a given capacity
419 |
420 | Current capacity
421 | Next capacity larger than a given capacity
422 |
423 |
424 |
425 | Provides permutations of a sequence of items
426 |
427 | Type of items to permute
428 |
429 |
430 |
431 | Constructor
432 |
433 | Items to permute
434 | Length of permutation to return (-1 for all permutations)
435 |
436 |
437 |
438 | Gets enumerator over permutations of items
439 |
440 | Enumerator over permutations of items
441 |
442 |
443 |
444 | Represents an indexed item
445 |
446 |
447 |
448 |
449 | Constructor
450 |
451 | Index of item
452 |
453 |
454 |
455 | Gets the index for an item
456 |
457 |
458 |
459 |
460 | Represents an indexable set
461 |
462 | Type of items to store
463 | Type of index to use on items
464 |
465 |
466 |
467 | Constructor
468 |
469 | Initial capacity
470 |
471 |
472 |
473 | Adds an item
474 |
475 | Item to add
476 | True if item was new
477 |
478 |
479 |
480 | Adds a range of items
481 |
482 | Items to add
483 |
484 |
485 |
486 | Gets item by index
487 |
488 | Index of item to fetch
489 | Item
490 |
491 |
492 |
493 | Tries to get an item for an index
494 |
495 | Index
496 | Item
497 | True if item was found and false otherwise
498 |
499 |
500 |
501 | Removes an item from this set
502 |
503 | Item to remove
504 |
505 |
506 |
507 | Gets enumerator over items
508 |
509 |
510 |
511 |
512 |
513 | Gets enumerator over items
514 |
515 |
516 |
517 |
518 |
519 | Gets the item for an index
520 |
521 | Index of item to get
522 | Item
523 |
524 |
525 |
526 | Gets the number of items in this set
527 |
528 |
529 |
530 |
531 |
--------------------------------------------------------------------------------
/lib/LAIR.Extensions.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zacg/WordNetAPI/0b264294e508d3a27a950bb9a64fb5663770fd2f/lib/LAIR.Extensions.dll
--------------------------------------------------------------------------------
/lib/LAIR.IO.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zacg/WordNetAPI/0b264294e508d3a27a950bb9a64fb5663770fd2f/lib/LAIR.IO.dll
--------------------------------------------------------------------------------
/lib/LAIR.IO.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | LAIR.IO
5 |
6 |
7 |
8 |
9 | Provides convenience routines for network IO
10 |
11 |
12 |
13 |
14 | Gets IP addresses associated with the local host
15 |
16 |
17 |
18 |
19 |
20 | Represents a stream of text, the lines of which can be searched with a binary search algorithm. Any type of stream can be used
21 | allowing searches on-disk (e.g., using FileStream) or in-memory (e.g., using MemoryStream).
22 |
23 |
24 |
25 |
26 | Represents a text stream, the lines of which can be searched.
27 |
28 |
29 |
30 |
31 | Constructor
32 |
33 | Stream to search
34 |
35 |
36 |
37 | Searches for a key
38 |
39 | Key to search for
40 | Line matching key, or null if key was not found
41 |
42 |
43 |
44 | Searches for a key within a specified byte range
45 |
46 | Key to search for
47 | Start of byte range
48 | End of byte range
49 | Line matching key
50 |
51 |
52 |
53 | Checks the search range
54 |
55 | Start of range
56 | End of range
57 |
58 |
59 |
60 | Closes this search stream and releases all resources
61 |
62 |
63 |
64 |
65 | Re-initializes this search stream with a new stream
66 |
67 | Stream to initialize with
68 |
69 |
70 |
71 | Gets the stream searched by this instance
72 |
73 |
74 |
75 |
76 | Constructor
77 |
78 | Stream to search
79 | Search comparison function
80 |
81 |
82 |
83 | Constructor
84 |
85 | Path to file for which to create a search stream
86 | Search comparison function
87 |
88 |
89 |
90 | Searches a range in the stream
91 |
92 | Search key
93 | Start byte position of search
94 | End byte position of search
95 | Desired line, or null if none was found
96 |
97 |
98 |
99 | Delegate for functions that direct the search by comparing the search key to the current line. The return value
100 | of such a function should be -1 if the search key (first parameter) comes before the current line (second
101 | parameter), 1 if the search key comes after the current line, and 0 if the current line is the desired line.
102 |
103 | Search key
104 | Current line in the stream
105 | Described in summary
106 |
107 |
108 |
109 | Reads lines from a file after storing them in memory. Can be used more than once without reinitializing.
110 |
111 |
112 |
113 |
114 | Reads lines from a file
115 |
116 |
117 |
118 |
119 | Constructor
120 |
121 | Path to file to count
122 |
123 |
124 |
125 | Closes this reader
126 |
127 |
128 |
129 |
130 | Gets an enumerator over lines in the file
131 |
132 | Enumerator over lines
133 |
134 |
135 |
136 | Gets an enumerator over lines in the file
137 |
138 | Enumerator over lines
139 |
140 |
141 |
142 | Gets the path to the file to read
143 |
144 |
145 |
146 |
147 | Gets the number of lines in the file
148 |
149 |
150 |
151 |
152 | Constructor
153 |
154 | Path to file to count
155 | Whether or not to allow blank lines
156 | Whether or not to trim lines when counting. Can only be true if allowBlank is false.
157 |
158 |
159 |
160 | Closes this reader and releases all memory
161 |
162 |
163 |
164 |
165 | Gets an enumerator over lines in this reader
166 |
167 | Enumerator over lines in this reader
168 |
169 |
170 |
171 | Gets the number of lines in the file
172 |
173 |
174 |
175 |
176 | Reads lines from a file without storing them in memory. Can be used more than once without reinitializing.
177 |
178 |
179 |
180 |
181 | Constructor
182 |
183 | Path to file to count
184 |
185 |
186 |
187 | Closes the file read by this reader
188 |
189 |
190 |
191 |
192 | Gets an enumerator over lines in the file
193 |
194 | Enumerator over lines in the file
195 |
196 |
197 |
198 | Gets the number of lines in the file
199 |
200 |
201 |
202 |
203 | Represents a text stream, the lines of which can be searched with a hashing search algorithm. In the hashing search algorithm,
204 | each line is mapped to a hash code. The hash code for a line is mapped to the line's position in the file. To check whether a
205 | line is present, one need only compute the hash of the queried line and read the file at the given position. Because of hash
206 | collisions, one might need to read multiple lines.
207 |
208 |
209 |
210 |
211 | Constructor
212 |
213 | Stream of text to search
214 | Hash provider
215 | Match provider
216 |
217 |
218 |
219 | Constructor
220 |
221 | Path to file for which to create a search stream
222 | Hash provider
223 | Match provider
224 |
225 |
226 |
227 | Initializes this search using the current stream
228 |
229 |
230 |
231 |
232 | Re-initializes this search stream with a new stream
233 |
234 | Stream to initialize with
235 |
236 |
237 |
238 | Searches for a key within a specified byte range
239 |
240 | Key to search for
241 | Start of byte range
242 | End of byte range
243 | Line matching key
244 |
245 |
246 |
247 | Closes this search and releases all resources
248 |
249 |
250 |
251 |
252 | Types of hashes requested
253 |
254 |
255 |
256 |
257 | Requesting a hash to create the initial index
258 |
259 |
260 |
261 |
262 | Requesting a hash to perform a search
263 |
264 |
265 |
266 |
267 | Delegate for functions that provide hash codes
268 |
269 | Object to get hash code for
270 | Type of hashing action performed
271 | Hash code (output)
272 | True if hash should be used, false otherwise
273 |
274 |
275 |
276 | Delegate for functions that check whether a line matches the search criteria
277 |
278 | Key being searched for
279 | Current line in file
280 | True if line matches, false otherwise
281 |
282 |
283 |
284 | Provides additional filesystem routines
285 |
286 |
287 |
288 |
289 | Gets the number of lines in a file
290 |
291 | Path to file to count
292 | Whether or not to allow blank lines
293 | Whether or not to trim lines when counting
294 | Number of lines in file
295 |
296 |
297 |
298 | Gets the line ending used for a file - either "\r", "\n", or "\r\n", or "" if no line ending is found
299 |
300 | Path to file
301 | Line ending
302 |
303 |
304 |
305 | Prompts the user for a path to open
306 |
307 | Title of window
308 | Selected path, or null for no file
309 |
310 |
311 |
312 | Prompts the user for a path to open
313 |
314 | Title of window
315 | Initial directory
316 | Selected path, or null for no file
317 |
318 |
319 |
320 | Prompts the user for a path to open
321 |
322 | Title of window
323 | Initial directory
324 | File filter to display
325 | Selected path, or null for no file
326 |
327 |
328 |
329 | Prompts the user for a path to save to
330 |
331 | Title of window
332 | Selected path, or null for no file
333 |
334 |
335 |
336 | Samples lines from a file
337 |
338 | Path to input file
339 | Path to output file
340 | Percentage to sample. Sampling is done randomly, so the exact number of sampled lines might differ slightly for small sample sizes.
341 |
342 |
343 |
344 | Provides additional filesystem routines
345 |
346 |
347 |
348 |
349 | Gets numbered list of paths in a directory. Each path in given directory must contain exactly one integer.
350 |
351 | Path to directory
352 | Pattern for files to match
353 | File endings to exclude from the returned paths
354 | List of paths, indexed by number
355 |
356 |
357 |
358 | Combines numbered files into a single file
359 |
360 | Path to directory containing files to combine
361 | Path to output file
362 | Whether or not to ignore blank lines
363 |
364 |
365 |
366 | Finds a directory
367 |
368 | Directory to search
369 | Pattern to search for
370 | Directory path
371 |
372 |
373 |
374 | Finds a file
375 |
376 | Directory to search
377 | Pattern to search for
378 | File path
379 |
380 |
381 |
382 | Gets the path to a new temporary directory, which will be created before this method returns.
383 |
384 | Path to temporary directory
385 |
386 |
387 |
388 | Prompts the user for a directory
389 |
390 | Description in browser
391 | Directory, or null if none
392 |
393 |
394 |
395 | Prompts the user for a directory
396 |
397 | Description in browser
398 | Starting directory
399 | Directory, or null if none
400 |
401 |
402 |
403 | Provides line-based access to a text stream
404 |
405 |
406 |
407 |
408 | Constructor
409 |
410 | Path to file to search
411 | Path to file that stores the line position cache. Computing line positions can be a time consuming
412 | process. The good news is that it only needs to be done once and can then be stored. This file stores the line positions.
413 |
414 |
415 |
416 | Constructor
417 |
418 | Path to file to search
419 |
420 |
421 |
422 | Searches for a line
423 |
424 | Line to search for
425 | Start byte
426 | End byte
427 | Line
428 |
429 |
430 |
431 | Gets the number of lines in the text stream
432 |
433 |
434 |
435 |
436 |
--------------------------------------------------------------------------------
/lib/LAIR.MachineLearning.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zacg/WordNetAPI/0b264294e508d3a27a950bb9a64fb5663770fd2f/lib/LAIR.MachineLearning.dll
--------------------------------------------------------------------------------
/lib/LAIR.Misc.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zacg/WordNetAPI/0b264294e508d3a27a950bb9a64fb5663770fd2f/lib/LAIR.Misc.dll
--------------------------------------------------------------------------------
/lib/LAIR.Morphology.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zacg/WordNetAPI/0b264294e508d3a27a950bb9a64fb5663770fd2f/lib/LAIR.Morphology.dll
--------------------------------------------------------------------------------
/lib/LAIR.Morphology.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | LAIR.Morphology
5 |
6 |
7 |
8 |
9 | Tags parts of speech
10 |
11 |
12 |
13 |
14 | Tags a list of tokens
15 |
16 | Tokens to tag
17 | List of categories, one for each tag
18 |
19 |
20 |
21 | Uses a discriminative HMM to tag words
22 |
23 |
24 |
25 |
26 | HMM-based POS tagger
27 |
28 |
29 |
30 |
31 | Tags tokens using an HMM
32 |
33 |
34 |
35 |
36 |
37 |
38 |
39 | Trains the HMM. See the documentation in the implementing class for the format of the training file.
40 |
41 |
42 |
43 |
44 |
45 | Constructor
46 |
47 | Classifier to use
48 |
49 |
50 |
51 | Trains the tagger. The format of the training file should be: one line of true state IDs, followed by a corresponding line of true observations. All IDs and observations should be separated by a space.
52 |
53 |
54 |
55 |
56 |
57 | Tags tokens
58 |
59 |
60 |
61 |
62 |
63 |
64 | Provides training sequences
65 |
66 |
67 |
68 |
69 | Constructor
70 |
71 | Training path
72 |
73 |
74 |
75 | Moves to the next state and observation sequence
76 |
77 |
78 |
79 |
80 |
81 | Gets current sequence
82 |
83 |
84 |
85 |
86 | Gets the current state and observation sequence
87 |
88 |
89 |
90 | Stemmer, implementing the Porter Stemming Algorithm
91 |
92 | The Stemmer class transforms a word into its root form. The input
93 | word can be provided a character at time (by calling add()), or at once
94 | by calling one of the various stem(something) methods.
95 |
96 |
97 |
98 | Stems words
99 |
100 |
101 |
102 |
103 | Constructor
104 |
105 | Stop word handler to apply, or null for no stop word handling.
106 | Maximum size of the stem cache
107 | Whether or not to consult the head word list when stemming
108 |
109 |
110 |
111 | Stems a word
112 |
113 | Word to stem
114 | Stem of word
115 |
116 |
117 |
118 | Adds a word/stem pair to the stem cache
119 |
120 | Word to add
121 | Stem to add
122 |
123 |
124 |
125 | Gets the suffix for a word
126 |
127 |
128 |
129 |
130 |
131 |
132 | Gets the stop word handler for this stemmer
133 |
134 |
135 |
136 |
137 | Gets or sets whether or not to consult the headword list
138 |
139 |
140 |
141 |
142 | Constructor
143 |
144 |
145 |
146 |
147 |
148 |
149 | Add a character to the word being stemmed. When you are finished
150 | adding characters, you can call stem(void) to stem the word.
151 |
152 |
153 | Adds wLen characters to the word being stemmed contained in a portion
154 | of a char[] array. This is like repeated calls of add(char ch), but
155 | faster.
156 |
157 |
158 | After a word has been stemmed, it can be retrieved by toString(),
159 | or a reference to the internal buffer can be retrieved by getResultBuffer
160 | and getResultLength (which is generally more efficient.)
161 |
162 |
163 | Returns the length of the word resulting from the stemming process.
164 |
165 |
166 | Returns a reference to a character buffer containing the results of
167 | the stemming process. You also need to consult getResultLength()
168 | to determine the length of the result.
169 |
170 |
171 |
172 | Stem the word placed into the Stemmer buffer through calls to add().
173 | Returns true if the stemming process resulted in a word different
174 | from the input. You can retrieve the result with
175 | getResultLength()/getResultBuffer() or toString().
176 |
177 | Word to stem
178 | Stem of word
179 |
180 |
181 |
182 | Resets the stemmer
183 |
184 |
185 |
186 |
187 | Runs Porter stemming algorithm
188 |
189 |
190 |
191 |
192 | Gets the result of stemming
193 |
194 |
195 |
196 |
197 |
198 | HMM-based part of speech tagger
199 |
200 |
201 |
202 |
203 | Constructor
204 |
205 | Model directory for tagger
206 |
207 |
208 |
209 | Trains this tagger with data contained in a text file. The format of the file must be as follows: "word1 tag1 word2 tag2" etc.
210 |
211 | Path to training file
212 |
213 |
214 |
215 | Tags a list of tokens
216 |
217 | Tokens to tag
218 | List of categories, one for each tag
219 |
220 |
221 |
222 | Gets the path to the transition probabilities file
223 |
224 |
225 |
226 |
227 | Gets the path to the observation probabilities file
228 |
229 |
230 |
231 |
232 | Gets the path to the known words file
233 |
234 |
235 |
236 |
237 | Keeps a list of head words
238 |
239 |
240 |
241 |
242 | Gets whether or not a word is a head word
243 |
244 | String to check
245 | True if given word is a head word, false otherwise
246 |
247 |
248 |
249 | Initializes head word list
250 |
251 |
252 |
253 |
254 | Discriminative HMM-based POS tagger feature extraction
255 |
256 |
257 |
258 |
259 | Constructor
260 |
261 |
262 |
263 |
264 |
265 |
266 |
267 |
268 |
269 | Gets name for a feature
270 |
271 | Feature to get name for
272 | Whether or not to get an abbreviated name
273 | Feature name
274 |
275 |
276 |
277 | Gets features
278 |
279 |
280 |
281 |
282 |
283 |
284 |
285 | Features
286 |
287 |
288 |
289 |
290 |
--------------------------------------------------------------------------------
/lib/LAIR.ResourceAPIs.GraphViz.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zacg/WordNetAPI/0b264294e508d3a27a950bb9a64fb5663770fd2f/lib/LAIR.ResourceAPIs.GraphViz.dll
--------------------------------------------------------------------------------
/lib/LAIR.ResourceAPIs.GraphViz.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | LAIR.ResourceAPIs.GraphViz
5 |
6 |
7 |
8 |
9 | Complete form for viewing GraphViz items
10 |
11 |
12 |
13 |
14 | Required designer variable.
15 |
16 |
17 |
18 |
19 | Clean up any resources being used.
20 |
21 | true if managed resources should be disposed; otherwise, false.
22 |
23 |
24 |
25 | Required method for Designer support - do not modify
26 | the contents of this method with the code editor.
27 |
28 |
29 |
30 |
31 | Constructor
32 |
33 |
34 |
35 |
36 | Constructor
37 |
38 | Number of states nodes can be put into via clicking
39 |
40 |
41 |
42 | Occurs when a node is clicked
43 |
44 |
45 |
46 |
47 | Gets or sets the graph path
48 |
49 |
50 |
51 |
52 | Viewer for GraphViz items
53 |
54 |
55 |
56 |
57 | Constructor
58 |
59 |
60 |
61 |
62 | Constructor
63 |
64 | Number of states the nodes in this viewer can be put into via clicking
65 |
66 |
67 |
68 | Views a graph
69 |
70 | Path to graph file
71 |
72 |
73 |
74 | Draws edges in the viewer
75 |
76 |
77 |
78 |
79 |
80 | Clears this viewer control
81 |
82 |
83 |
84 |
85 | Required designer variable.
86 |
87 |
88 |
89 |
90 | Clean up any resources being used.
91 |
92 | true if managed resources should be disposed; otherwise, false.
93 |
94 |
95 |
96 | Required method for Designer support - do not modify
97 | the contents of this method with the code editor.
98 |
99 |
100 |
101 |
102 | Occurs when a node is clicked
103 |
104 |
105 |
106 |
107 | Gets or sets the number of node states (default: 2)
108 |
109 |
110 |
111 |
112 | Delegate for functions that handle node clicks
113 |
114 |
115 |
116 |
117 |
118 | Wrapper for Dot executable
119 |
120 |
121 |
122 |
123 | Constructor
124 |
125 |
126 |
127 |
128 | Constructor
129 |
130 | Path to Dot executable
131 |
132 |
133 |
134 | Creates a graph from an entity
135 |
136 | Entity to create graph for
137 | Output format
138 | Path to created graph file
139 |
140 |
141 |
142 | Creates a graph from an entity
143 |
144 | Entity to create graph for
145 | Output format
146 | Output path
147 |
148 |
149 |
150 | Gets or sets the path to the Dot executable
151 |
152 |
153 |
154 |
155 | Output formats
156 |
157 |
158 |
159 |
160 | Jpeg
161 |
162 |
163 |
164 |
165 | PNG
166 |
167 |
168 |
169 |
170 | Gif
171 |
172 |
173 |
174 |
175 | Encapsulated postscript
176 |
177 |
178 |
179 |
180 | Plain-text layout
181 |
182 |
183 |
184 |
185 | Output the original Dot specification
186 |
187 |
188 |
189 |
190 | Interface for classes that can be graphed using the GraphViz suite
191 |
192 |
193 |
194 |
195 | Gets specification of graph using the Dot language
196 |
197 |
198 |
199 |
200 |
201 | Represents a clickable node in a graph
202 |
203 |
204 |
205 |
206 | Constructor
207 |
208 | ID of node
209 | Text to display on this node
210 | Number of states the node can be put into via clicking it
211 |
212 |
213 |
214 | Required designer variable.
215 |
216 |
217 |
218 |
219 | Clean up any resources being used.
220 |
221 | true if managed resources should be disposed; otherwise, false.
222 |
223 |
224 |
225 | Required method for Designer support - do not modify
226 | the contents of this method with the code editor.
227 |
228 |
229 |
230 |
231 | Gets or sets the list of adjacent nodes for this node
232 |
233 |
234 |
235 |
236 | Gets or sets the original text for this node
237 |
238 |
239 |
240 |
241 | Gets or sets the zero-based state for this node
242 |
243 |
244 |
245 |
246 | Gets or sets the ID for this node
247 |
248 |
249 |
250 |
251 | Gets or sets the location (center) of this node
252 |
253 |
254 |
255 |
256 |
--------------------------------------------------------------------------------
/lib/LAIR.ResourceAPIs.MySQL.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zacg/WordNetAPI/0b264294e508d3a27a950bb9a64fb5663770fd2f/lib/LAIR.ResourceAPIs.MySQL.dll
--------------------------------------------------------------------------------
/lib/LAIR.ResourceAPIs.MySQL.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | LAIR.ResourceAPIs.MySQL
5 |
6 |
7 |
8 |
9 | Provides utility database functionality
10 |
11 |
12 |
13 |
14 | Gets concept IDs for a query
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 | Represents a pool of connections to the MySQL server
24 |
25 |
26 |
27 |
28 | Constructor
29 |
30 | Base connection
31 |
32 |
33 |
34 | Constructor
35 |
36 |
37 |
38 |
39 |
40 |
41 |
42 |
43 |
44 | Tests this connection pool
45 |
46 |
47 |
48 |
49 | Returns a connection to the pool
50 |
51 |
52 |
53 |
54 |
55 | Returns the connection associated with a command to the pool
56 |
57 |
58 |
59 |
60 |
61 | Creates a new command associated with an open connection
62 |
63 |
64 |
65 |
66 |
67 |
68 | Executes a non-query command
69 |
70 | Text of command
71 |
72 |
73 |
74 | Gets a new open connection to the server
75 |
76 |
77 |
78 |
79 | Provides convenience methods for databases
80 |
81 |
82 |
83 |
84 | Gets tables
85 |
86 |
87 |
88 |
89 |
90 |
91 |
--------------------------------------------------------------------------------
/lib/LAIR.XML.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zacg/WordNetAPI/0b264294e508d3a27a950bb9a64fb5663770fd2f/lib/LAIR.XML.dll
--------------------------------------------------------------------------------
/lib/LAIR.XML.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | LAIR.XML
5 |
6 |
7 |
8 |
9 | Nice wrapper for parsing XML
10 |
11 |
12 |
13 |
14 | Escapes an attribute name/value pair
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 | Escapes an element name/value pair
23 |
24 |
25 |
26 |
27 |
28 | XML reader doing the parsing
29 |
30 |
31 |
32 |
33 | Underlying stream containing the XML being parsed
34 |
35 |
36 |
37 |
38 | Constructor
39 |
40 | XML to parse
41 |
42 |
43 |
44 | Constructor
45 |
46 | Stream to read XML from
47 |
48 |
49 |
50 | Constructs the current XML parser from a stream
51 |
52 | Stream to read XML from
53 |
54 |
55 |
56 | Resets the XML parser to the beginning of the XML stream
57 |
58 |
59 |
60 |
61 | Close the parser and release all held resources
62 |
63 |
64 |
65 |
66 | Parse supplied XML in a SAX-style manner, firing events
67 |
68 |
69 |
70 |
71 | Get an attribute value for an element in the stream
72 |
73 | Element name for which to get attribute value
74 | Attribute name for which to get value
75 |
76 |
77 |
78 |
79 | Get element text for a subsequent element in the stream
80 |
81 | Element name for which to get text
82 |
83 |
84 |
85 |
86 | Get XML representation (including markup) of a subsequent element and
87 | all its children elements
88 |
89 | Element to get outer XML for
90 |
91 |
92 |
93 |
94 | Get XML representation (including markup) for the current node excluding
95 | the current node
96 |
97 |
98 |
99 |
100 |
101 |
102 | Skip to an element in the stream, or move back to the current element if
103 | we're on an attribute node.
104 |
105 | Name of element to move to
106 | True if element is located, false otherwise.
107 |
108 |
109 |
110 | Skip to an element that satisfies a set of constraints
111 |
112 | Element to skip to
113 | Attribute constraints
114 |
115 |
116 |
117 |
118 | Move to an element node
119 |
120 | Whether or not to stay on current node if it is an element node
121 | Name of element moved to
122 |
123 |
124 |
125 | Gets the attribute names for a given element
126 |
127 | Element to get attributes for
128 | Attributes
129 |
130 |
131 |
132 | Fired when an element is encountered
133 |
134 |
135 |
136 |
137 | Fired when an element has ended
138 |
139 |
140 |
141 |
142 | Fired when text is encountered
143 |
144 |
145 |
146 |
147 | Delegate for start element parse events
148 |
149 | Name of element
150 | Attributes of element
151 |
152 |
153 |
154 | Delegate for end element parse events
155 |
156 | Element that has ended
157 |
158 |
159 |
160 | Delegate for text parse events
161 |
162 | Text encountered
163 |
164 |
165 |
166 |
--------------------------------------------------------------------------------
/lib/MySql.Data.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zacg/WordNetAPI/0b264294e508d3a27a950bb9a64fb5663770fd2f/lib/MySql.Data.dll
--------------------------------------------------------------------------------
/resources/.sorted_for_dot_net:
--------------------------------------------------------------------------------
1 | This file serves no purpose other than to indicate that the WordNet distribution data in the current directory has been sorted for use by the .NET API.
2 |
--------------------------------------------------------------------------------
/resources/adv.exc:
--------------------------------------------------------------------------------
1 | best well
2 | better well
3 | deeper deeply
4 | farther far
5 | further far
6 | harder hard
7 | hardest hard
8 |
--------------------------------------------------------------------------------
/resources/cousin.exc:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zacg/WordNetAPI/0b264294e508d3a27a950bb9a64fb5663770fd2f/resources/cousin.exc
--------------------------------------------------------------------------------
/resources/dbfiles/adj.ppl:
--------------------------------------------------------------------------------
1 | ($RCSfile: adj.ppl,v $ $Revision: 9.0 $ $Date: 2011/02/06 21:17:50 $ $Name: $ $State: Rel $)
2 | (Copyright (c) 1994-2011 by Princeton University)
3 |
4 | (adj.ppl)
5 |
6 | { [ avenged, unavenged,! verb.competition:avenge,< ] (for which vengeance has been taken; "an avenged injury") }
7 | { [ unavenged, avenged,! verb.competition:avenge,< ] (for which vengeance has not been taken; "an unavenged murder") }
8 | { [ beaten, verb.creation:beat,< ] (formed or made thin by hammering; "beaten gold") }
9 | { [ calibrated, verb.contact:calibrate2,< ] [ graduated, verb.contact:calibrate2,< ] (marked with or divided into degrees; "a calibrated thermometer") }
10 | { [ cantering, verb.motion:canter,< ] (riding at a gait between a trot and a gallop; "the cantering soldiers") }
11 | { [ collected, uncollected,! verb.contact:collect,< ] [ gathered, ungathered,! verb.contact:gather,< ] (brought together in one place; "the collected works of Milton"; "the gathered folds of the skirt") }
12 | { [ uncollected, collected,! verb.contact:collect,< ] [ ungathered, gathered,! verb.contact:gather,< ] (not brought together in one place; "uncollected garbage in the streets") }
13 | { [ contested, verb.communication:contest,< uncontested,! ] (disputed or made the object of contention or competition; "a contested election") }
14 | { [ uncontested, verb.communication:contest,< contested,! ] (not disputed and not made the object of contention or competition; "uncontested authority") }
15 | { [ corbelled, verb.possession:corbel,< ] (having a corbel) }
16 | { [ elapsed, verb.motion:elapse,< ] ((of time) having passed or slipped by; "elapsed time") }
17 | { [ forced, verb.motion:force,< ] (produced by or subjected to forcing; "forced-air heating"; "furnaces of the forced-convection type"; "forced convection in plasma generators") }
18 | { [ hammered, verb.creation:hammer,< ] (shaped or worked with a hammer and often showing hammer marks; "a bowl of hammered brass") }
19 | { [ hand-held, verb.contact:hold,< ] [ handheld, verb.contact:hold,< ] (small and light enough to be operated while you hold it in your hands; "a hand-held computer") }
20 | { [ held, verb.social:hold14,< ] (occupied or in the control of; often used in combination; "enemy-held territory") }
21 | { [ streaming, verb.body:stream,< ] (exuding a bodily fluid in profuse amounts; "his streaming face"; "her streaming eyes") }
22 | { [ surmounted, verb.stative:surmount,< ] (having something on top; "columns surmounted by statues") }
23 | { [ filled, unfilled,! verb.consumption:fill2,< ] (of purchase orders that have been filled) }
24 | { [ unfilled, filled,! verb.consumption:fill2,< ] (of purchase orders that have not been filled) }
25 | { [ fitted, verb.stative:fit2,< ] (being the right size and shape to fit as desired; "a fitted overcoat"; "he quickly assembled the fitted pieces") }
26 | { [ hypophysectomized, verb.change:hypophysectomize,< ] [ hypophysectomised, verb.change:hypophysectomise,< ] (having the pituitary gland removed by surgery; "hypophysectomized tadpoles") }
27 | { [ malted, unmalted,! verb.change:malt2,< ] (of grain that has been converted into malt; "malted barley") }
28 | { [ unmalted, malted,! verb.change:malt2,< ] (of grain that has not been converted into malt; "unmalted barley") }
29 | { [ marched_upon, verb.motion:march1,< ] (being or having been trodden or marched on) }
30 | { [ mercerized, verb.change:mercerize,< ] [mercerised, verb.change:mercerize,<] (of cotton thread that has been treated with sodium hydroxide to shrink it and increase its luster and affinity for dye; "mercerized cotton") }
31 | { [ mounded_over, verb.creation:mound_over,< ] (having a wound formed over it) }
32 | { [ operating, verb.contact:operate3,< ] (involved in a kind of operation; "the operating conditions of the oxidation pond") }
33 | { [ oxidized, verb.change:oxidize,< ] [ oxidised, verb.change:oxidise,< ] (combined with or having undergone a chemical reaction with oxygen; "the oxidized form of iodine") }
34 | { [ parked, verb.contact:park,< ] (that have been left; "there were four parked cars across the street") }
35 | { [ pasteurized, verb.change:pasteurize,< ] [ pasteurised, verb.change:pasteurise,< ] (having been subjected to pasteurization in order to halt fermentation) }
36 | { [ unpasteurized, verb.change:pasteurize,< ] [ unpasteurised, verb.change:pasteurise,< ] (not having undergone pasteurization) }
37 | { [ penciled, verb.creation:pencil,<] [ pencilled, verb.creation:pencil,< ] (drawn or written with a pencil; "a penciled sketch"; "the penciled message") }
38 | { [ pitched, verb.change:pitch,< ] ((of sound) set to a certain pitch or key; usually used as a combining form; "high-pitched") }
39 | { [ played, verb.competition:play,< ] noun.act:game,;c ((of games) engaged in; "the loosely played game") }
40 | { [ plugged, verb.change:plug4,< ] ((of a coin) altered by the insertion of a plug of base metal) }
41 | { [ posed, unposed,! verb.perception:pose,< ] (arranged for pictorial purposes) }
42 | { [ unposed, posed,! verb.perception:pose,< ] (not arranged for pictorial purposes; "unposed photographs") }
43 | { [ posted, verb.communication:post3,< ] (publicly displayed; "the posted speed limit") }
44 | { [ preconceived, verb.creation:conceive,< ] ((of an idea or opinion) formed beforehand; especially without evidence or through prejudice; "certain preconceived notions") }
45 | { [ punishing, verb.social:punish,< ] (resulting in punishment; "the king imposed a punishing tax") }
46 | { [ pursued, verb.motion:pursue,< ] (followed with enmity as if to harm; "running and leaping like a herd of pursued antelopes") }
47 | { [ ranging, verb.motion:range,< ] (wandering freely; "at night in bed...his slowly ranging thoughts...encountered her") }
48 | { [ re-created, verb.creation:re-create,< ] (created anew; "this re-created literalness") }
49 | { [ regenerating, verb.change:regenerate,< ] (that are generating anew; "regenerating fibers") }
50 | { [ ridged, verb.change:ridge,< ] [ carinate, noun.animal:carinate,+ ] carinated, keeled, (having a ridge or shaped like a ridge or suggesting the keel of a ship; "a carinate sepal") }
51 | { [ sanitized, verb.change:sanitize,< ] [ sanitised, verb.change:sanitise,< ] (made sanitary) }
52 | { [ shrieked, verb.communication:shriek,< ] (uttered in a shrill scream as of pain or terror) }
53 | { [ sintered, verb.creation:sinter,< ] (formed into a mass by heat and pressure) }
54 | { [ sluicing, verb.motion:sluice,< ] (pouring from or as if from a sluice; "the sluicing rain") }
55 | { [ spray-dried, verb.change:spray-dry,< ] (dried by bringing a sprayed substance (e.g. milk or soap) into contact with hot air and recovering it in the form of a powder) }
56 | { [ squashed, verb.contact:squash,< ] (that has been violently compressed; "the squashed looking nakedness of the fledgling birds") }
57 | { [ stacked, verb.contact:stack,< ] (arranged in a stack) }
58 | { [ strung, verb.contact:string2,< ] (that is on a string; "keys strung on a red cord") }
59 | { [ sublimed, verb.change:sublime,< ] [ sublimated, verb.change:sublimate,< ] (passing or having passed from the solid to the gaseous state (or vice versa) without becoming liquid) }
60 | { [ thoriated, verb.change:thoriate,< ] [ tittering, verb.body:titter,< ] (being or sounding of nervous or suppressed laughter) }
61 | { [ transpiring, verb.motion:transpire,< ] (that is passing through; "transpiring gas") }
62 | { [ sought, verb.contact:seek,< ] (that is looked for; "the long sought relatives") }
63 | { [ closed-captioned, verb.possession:caption,< ] noun.communication:television,;c (broadcast with captions that are seen only on receivers having special equipment; can be provided for hard-of-hearing viewers) }
64 | { [ saponified, unsaponified,! verb.change:saponify,< ] (converted into soap; "saponified oils") }
65 | { [ unsaponified, saponified,! verb.change:saponify,< ] (not converted into soap; "unsaponified fat") }
66 |
--------------------------------------------------------------------------------
/resources/dbfiles/noun.Tops:
--------------------------------------------------------------------------------
1 | ($RCSfile: noun.Tops,v $ $Revision: 9.0 $ $Date: 2011/02/06 21:16:37 $ $Name: $ $State: Rel $)
2 | (Copyright (c) 1988-2011 by Princeton University)
3 |
4 | (noun.Tops)
5 |
6 | { entity, (that which is perceived or known or inferred to have its own distinct existence (living or nonliving)) }
7 | { physical_entity, entity,@ (an entity that has physical existence) }
8 | { [ abstraction, verb.cognition:abstract,+ ] abstract_entity, entity,@ (a general concept formed by extracting common features from specific examples) }
9 | { thing, physical_entity,@ (a separate and self-contained entity) }
10 | { [ object, verb.change:objectify1,+ ] physical_object, physical_entity,@ (a tangible and visible entity; an entity that can cast a shadow; "it was full of rackets, balls and other objects") }
11 | { [ whole, adj.all:undiversified^whole,+ ] [ unit, verb.contact:unify,+ verb.change:unify,+ verb.contact:unitize,+ verb.change:unitize,+ ] object,@ (an assemblage of parts that is regarded as a single entity; "how big is that part compared to the whole?"; "the team is a unit") }
12 | { congener, whole,@ (a whole (a thing or person) of the same kind or category as another; "lard was also used, though its congener, butter, was more frequently employed"; "the American shopkeeper differs from his European congener") }
13 | { living_thing, animate_thing, whole,@ (a living (or once living) entity) }
14 | { [ organism, adj.pert:organismic,+ adj.all:organic2,+ adj.all:organic,+ ] [ being, verb.stative:be1,+ ] living_thing,@ (a living thing that has (or can develop) the ability to act or function independently) }
15 | { [ benthos, adj.pert:benthonic,+ ] organism,@ (organisms (plants and animals) that live at or near the bottom of a sea) }
16 | { dwarf, organism,@ (a plant or animal that is atypically small) }
17 | { heterotroph, organism,@ (an organism that depends on complex organic substances for nutrition) }
18 | { parent, organism,@ (an organism (plant or animal) from which younger ones are obtained) }
19 | { life, living_thing,@ (living things collectively; "the oceans are teeming with life") }
20 | { biont, living_thing,@ (a discrete unit of living matter) }
21 | { [ cell, adj.pert:cellular,+ adj.all:cellular,+ ] living_thing,@ organism,#p noun.cognition:biology,;c ((biology) the basic structural and functional unit of all organisms; they may exist as independent units of life (as in monads) or may form colonies or tissues as in higher plants and animals) }
22 | { causal_agent, [ cause, adj.all:causative^causal,+ verb.creation:cause,+ verb.communication:cause,+ ] causal_agency, physical_entity,@ (any entity that produces an effect or is responsible for events or results) }
23 | { [ person, noun.attribute:personhood,+ verb.cognition:personify,+ ] [ individual, verb.change:individualize,+ ] someone, somebody, [ mortal, adj.all:mortal,+ ] soul, organism,@ causal_agent,@ noun.group:people,#m (a human being; "there was too much for one person to do") }
24 | { [ animal, verb.creation:animalize,+ verb.creation:animalise,+ ] animate_being, [ beast, adj.all:inhumane^beastly,+ adj.all:inhumane^bestial,+ ] brute, [ creature, verb.creation:create,+ ] fauna, organism,@ noun.animal:kingdom_Animalia,#m (a living organism characterized by voluntary movement) }
25 | { [ plant, adj.pert:plantal,+ noun.plant:plantlet,+ verb.contact:plant,+ ] [ flora, adj.pert:floral,+ ] plant_life, organism,@ noun.plant:kingdom_Plantae,#m noun.cognition:botany,;c ((botany) a living organism lacking the power of locomotion) }
26 | { native, noun.Tops:organism,@ (indigenous plants and animals) }
27 | { [ natural_object, artifact,! ] whole,@ (an object occurring naturally; not made by man) }
28 | { [ substance, adj.all:substantial,+ ] matter,@ noun.relation:part,@ (the real physical matter of which a person or thing consists; "DNA is the substance of our genes") }
29 | { substance1, matter,@ (a particular kind or species of matter with uniform properties; "shigella is one of the most toxic substances known to man") }
30 | { matter, physical_entity,@ (that which has mass and occupies space; "physicists study both the nature of matter and the forces which govern it") }
31 | { food, [ nutrient, adj.all:wholesome^nutrient,+ verb.consumption:nutrify,+ ] substance1,@ (any substance that can be metabolized by an animal to give energy and build tissue) }
32 | { nutrient1, substance1,@ (any substance (such as a chemical element or inorganic compound) that can be taken in by a green plant and used in organic synthesis) }
33 | { [ artifact, adj.pert:artifactual,+ natural_object,! ] [ artefact, adj.pert:artefactual,+ ] whole,@ (a man-made object taken as a whole) }
34 | { article, artifact,@ (one of a class of artifacts; "an article of clothing") }
35 | { psychological_feature, abstraction,@ (a feature of the mental life of a living organism) }
36 | { cognition, knowledge, [ noesis, adj.all:mental^noetic,+ ] psychological_feature,@ (the psychological result of perception and learning and reasoning) }
37 | { [ motivation, adj.pert:motivational,+ verb.creation:motivate,+ ] [ motive, adj.all:causative^motive2,+ verb.creation:motivate,+ ] need, psychological_feature,@ (the psychological feature that arouses an organism to action toward a desired goal; the reason for the action; that which gives purpose and direction to behavior; "we did not understand his motivation"; "he acted with the best of motives") }
38 | { attribute, abstraction,@ (an abstraction belonging to or characteristic of an entity) }
39 | { state, attribute,@ (the way something is with respect to its main attributes; "the current state of knowledge"; "his state of health"; "in a weak financial state") }
40 | { [ feeling, verb.emotion:feel,+ ] state,@ (the experiencing of affective and emotional states; "she had a feeling of euphoria"; "he had terrible feelings of guilt"; "I disliked him and the feeling was mutual") }
41 | { [ location, verb.stative:locate,+ verb.possession:locate1,+ verb.possession:locate,+ verb.change:locate,+ ] object,@ space,#p (a point or extent in space) }
42 | { shape, form, attribute,@ (the spatial arrangement of something as distinct from its substance; "geometry is the mathematical science of shape") }
43 | { time, attribute,@ (the continuum of experience in which events pass from the future through the present to the past; "he waited for along time"; "it took some time before he got an answer"; "time flies like an arrow") }
44 | { [ space, adj.pert:spacial,+ adj.pert:spatial,+ ] infinite, attribute,@ (the unlimited expanse in which everything is located; "they tested his ability to locate objects in space"; "the boundless regions of the infinite") }
45 | { absolute_space, space,@ (physical space independent of what occupies it) }
46 | { phase_space, space,@ noun.cognition:physics,;c ((physics) an ideal space in which the coordinate dimensions represent the variables that are required to describe a system or substance; "a multidimensional phase space") }
47 | { event, psychological_feature,@ (something that happens at a given place and time) }
48 | { process, physical_process, noun.Tops:physical_entity,@ (a sustained phenomenon or one marked by gradual changes through a series of states; "events now in process"; "the process of calcification begins later for boys than for girls") }
49 | { [ act, verb.creation:actuate2,+ verb.creation:actuate,+ verb.social:act,+ ] deed, human_action, human_activity, event,@ (something that people do or cause to happen) }
50 | { [ group, verb.competition:group,+ verb.cognition:group,+ ] grouping, abstraction,@ (any number of entities (members) considered as a unit) }
51 | { [ relation, noun.state:relationship,+ noun.relation:relationship1,+ noun.relation:relationship,+ verb.stative:relate1,+ verb.cognition:relate,+ ] abstraction,@ (an abstraction belonging to or characteristic of two entities or parts together) }
52 | { possession, relation,@ (anything owned or possessed) }
53 | { social_relation, relation,@ (a relation between living organisms (especially between people)) }
54 | { [ communication, adj.all:communicative^communicational,+ verb.possession:communicate10,+ verb.communication:communicate8,+ verb.communication:communicate7,+ verb.communication:communicate2,+ verb.communication:communicate1,+ verb.communication:communicate,+ ] abstraction,@ (something that is communicated by or to or between people or groups) }
55 | { [ measure, verb.cognition:measure1,+ verb.change:measure,+ verb.cognition:measure,+ ] quantity, [ amount, verb.stative:amount1,+ ] abstraction,@ (how much there is or how many there are of something that you can quantify) }
56 | { phenomenon, process,@ (any state or process known through the senses rather than by intuition or reasoning) }
57 |
58 |
--------------------------------------------------------------------------------
/resources/dbfiles/noun.motive:
--------------------------------------------------------------------------------
1 | ($RCSfile: noun.motive,v $ $Revision: 9.0 $ $Date: 2011/02/06 21:16:46 $ $Name: $ $State: Rel $)
2 | (Copyright (c) 1988-2011 by Princeton University)
3 |
4 | (noun.motive)
5 |
6 | { life, noun.Tops:motive,@ (a motive for living; "pottery was his life") }
7 | { rational_motive, noun.Tops:motive,@ (a motive that can be defended by reasoning or logical argument) }
8 | { [ reason, verb.cognition:reason1,+ ] [ ground, verb.cognition:ground,+ ] rational_motive,@ (a rational motive for a belief or action; "the reason that war was declared"; "the grounds for their declaration") }
9 | { [ occasion, verb.creation:occasion,+ ] reason,@ (reason; "there was no occasion for complaint") }
10 | { score, account, reason,@ (grounds; "don't do it on my account"; "the paper was rejected on account of its length"; "he tried to blame the victim but his success on that score was doubtful") }
11 | { why, wherefore, reason,@ (the cause or intention underlying an action or situation, especially in the phrase `the whys and wherefores') }
12 | { [ incentive, disincentive,!] [ inducement, verb.communication:induce,+ ] [ motivator, verb.creation:motivate,+ ] rational_motive,@ (a positive motivational influence) }
13 | { moral_force, dynamic, incentive,@ (an efficient incentive; "they hoped it would act as a spiritual dynamic on all churches") }
14 | { [ disincentive, incentive,!] [ deterrence, adj.all:preventive^deterrent,+ ] rational_motive,@ (a negative motivational influence) }
15 | { irrational_motive, noun.Tops:motive,@ (a motivation that is inconsistent with reason or logic) }
16 | { urge, impulse, noun.Tops:motive,@ (an instinctive motive; "profound religious impulses") }
17 | { [ abience, adj.pert:abient,+ adience,! ] urge,@ noun.cognition:psychology,;c ((psychology) an urge to withdraw or avoid a situation or an object) }
18 | { [ adience, adj.pert:adient,+ abience,! ] urge,@ noun.cognition:psychology,;c ((psychology) an urge to accept or approach a situation or an object) }
19 | { death_instinct, death_wish, Thanatos, urge,@ noun.act:psychoanalysis,;c ((psychoanalysis) an unconscious urge to die) }
20 | { irrational_impulse, irrational_motive,@ (a strong spontaneous and irrational motivation; "his first impulse was to denounce them"; "the urge to find out got him into trouble") }
21 | { [ compulsion1, adj.all:neurotic^compulsive,+ ] irresistible_impulse, irrational_impulse,@ (an urge to do or say something that might be better left undone or unsaid; "he felt a compulsion to babble on about the accident") }
22 | { [ mania, adj.all:wild2^manic,+ ] passion, cacoethes, irrational_motive,@ (an irrational but irresistible motive for a belief or action) }
23 | { agromania, mania,@ (an intense desire to be alone or out in the open) }
24 | { dipsomania, alcoholism1, potomania, mania,@ (an intense persistent desire to drink alcoholic beverages to excess) }
25 | { egomania, mania,@ (an intense and irresistible love for yourself and concern for your own needs) }
26 | { kleptomania, mania,@ (an irresistible impulse to steal in the absence of any economic motive) }
27 | { logorrhea, logomania, mania,@ (pathologically excessive (and often incoherent) talking) }
28 | { [ monomania, adj.all:neurotic^monomaniacal,+ ] possession, mania,@ (a mania restricted to one thing or idea) }
29 | { necrophilia, necrophilism, necromania, mania,@ (an irresistible sexual attraction to dead bodies) }
30 | { phaneromania, mania,@ (an irresistible desire to pick at superficial body parts (as in obsessive nail-biting)) }
31 | { pyromania, mania,@ (an uncontrollable desire to set fire to things) }
32 | { trichotillomania, mania,@ (an irresistible urge to pull out your own hair) }
33 | { wanderlust, itchy_feet, impulse,@ (very strong or irresistible impulse to travel) }
34 | { [ compulsion, adj.all:neurotic^compulsive,+ noun.person:compulsive,+ ] [ obsession, adj.all:neurotic^obsessional,+ ] irrational_motive,@ (an irrational motive for performing trivial or repetitive actions, even against your will; "her compulsion to wash her hands repeatedly") }
35 | { onomatomania, compulsion,@ (obsession with a particular word which the person uses repeatedly or which intrudes into consciousness) }
36 |
37 | { ethical_motive, [ ethics, adj.all:right1^ethical,+ adj.all:ethical,+ noun.person:ethicist,+ noun.person:ethician,+ ] morals, [ morality, adj.all:moral^moralistic,+ ] noun.Tops:motive,@ (motivation based on ideas of right and wrong) }
38 | { [ hedonism, adj.all:indulgent^hedonistic,+ adj.all:indulgent^hedonic,+ noun.person:hedonist,+ ] ethical_motive,@ (the pursuit of pleasure as a matter of ethical principle) }
39 | { conscience, scruples, moral_sense, sense_of_right_and_wrong, ethical_motive,@ (motivation deriving logically from ethical or moral principles that govern a person's thoughts and actions) }
40 | { wee_small_voice, small_voice, voice_of_conscience, conscience,@ (an inner voice that judges your behavior) }
41 | { sense_of_shame, sense_of_duty, conscience,@ (a motivating awareness of ethical responsibility) }
42 | { Inner_Light, Light, Light_Within, Christ_Within, ethical_motive,@ (a divine presence believed by Quakers to enlighten and guide the soul) }
43 | { psychic_energy, mental_energy, noun.Tops:motive,@ (an actuating force or factor) }
44 | { [ incitement, verb.contact:incite,+ ] [ incitation, verb.creation:incite,+ verb.contact:incite,+ verb.communication:incite,+ ] [ provocation, verb.emotion:provoke,+ verb.creation:provoke,+ verb.communication:provoke,+ ] psychic_energy,@ (something that incites or provokes; a means of arousing or stirring to action) }
45 | { signal, incitement,@ (any incitement to action; "he awaited the signal to start"; "the victory was a signal for wild celebration") }
46 | { libidinal_energy, psychic_energy,@ noun.act:psychoanalysis,;c ((psychoanalysis) psychic energy produced by the libido) }
47 | { [ cathexis, adj.pert:cathectic,+ ] charge, libidinal_energy,@ noun.act:psychoanalysis,;c ((psychoanalysis) the libidinal energy invested in some idea or person or object; "Freud thought of cathexis as a psychic analog of an electrical charge") }
48 | { acathexis, libidinal_energy,@ noun.act:psychoanalysis,;c ((psychoanalysis) a lack of cathexis; a condition in which significant objects or memories arouse no emotion in an individual) }
49 |
50 |
51 |
52 |
53 |
54 |
--------------------------------------------------------------------------------
/resources/dbfiles/verb.Framestext:
--------------------------------------------------------------------------------
1 | 1 Something ----s
2 | 2 Somebody ----s
3 | 3 It is ----ing
4 | 4 Something is ----ing PP
5 | 5 Something ----s something Adjective/Noun
6 | 6 Something ----s Adjective/Noun
7 | 7 Somebody ----s Adjective
8 | 8 Somebody ----s something
9 | 9 Somebody ----s somebody
10 | 10 Something ----s somebody
11 | 11 Something ----s something
12 | 12 Something ----s to somebody
13 | 13 Somebody ----s on something
14 | 14 Somebody ----s somebody something
15 | 15 Somebody ----s something to somebody
16 | 16 Somebody ----s something from somebody
17 | 17 Somebody ----s somebody with something
18 | 18 Somebody ----s somebody of something
19 | 19 Somebody ----s something on somebody
20 | 20 Somebody ----s somebody PP
21 | 21 Somebody ----s something PP
22 | 22 Somebody ----s PP
23 | 23 Somebody's (body part) ----s
24 | 24 Somebody ----s somebody to INFINITIVE
25 | 25 Somebody ----s somebody INFINITIVE
26 | 26 Somebody ----s that CLAUSE
27 | 27 Somebody ----s to somebody
28 | 28 Somebody ----s to INFINITIVE
29 | 29 Somebody ----s whether INFINITIVE
30 | 30 Somebody ----s somebody into V-ing something
31 | 31 Somebody ----s something with something
32 | 32 Somebody ----s INFINITIVE
33 | 33 Somebody ----s VERB-ing
34 | 34 It ----s that CLAUSE
35 | 35 Something ----s INFINITIVE
36 |
--------------------------------------------------------------------------------
/resources/dbfiles/verb.weather:
--------------------------------------------------------------------------------
1 | ($RCSfile: verb.weather,v $ $Revision: 9.0 $ $Date: 2011/02/06 21:17:00 $ $Name: $ $State: Rel $)
2 | (Copyright (c) 1988-2011 by Princeton University)
3 |
4 | (verb.weather)
5 |
6 |
7 | { [ rain, noun.substance:rain,+ noun.phenomenon:rain,+ ] rain_down, precipitate,@ frames: 3,11 (precipitate as rain; "If it rains much more, we can expect some flooding") }
8 | { [ precipitate, noun.quantity:precipitation,+ noun.phenomenon:precipitation,+ ] come_down, fall, verb.change:condense1,* frames: 1,8 (fall from clouds; "rain, snow and sleet were falling"; "Vesuvius precipitated its fiery, destructive rage on Herculaneum") }
9 | { spat, fall,@ frames: 1 (come down like raindrops; "Bullets were spatting down on us") }
10 | { [ liquefy, adj.all:liquid^liquefiable,+ noun.process:liquefaction,+ ] verb.change:change_state,@ frames: 1 (become liquid; "The garden air overnight liquefied into a morning dew") }
11 | { [ drizzle, noun.phenomenon:drizzle,+ ] [ mizzle, noun.phenomenon:mizzle,+ ] rain,@ frames: 3 (rain lightly; "When it drizzles in summer, hiking can be pleasant") }
12 | { [ shower, noun.phenomenon:shower,+ noun.event:shower,+ ] shower_down, rain,@ frames: 3 (rain abundantly; "Meteors showered down over half of Australia") }
13 | { [ sprinkle, noun.phenomenon:sprinkle,+ noun.phenomenon:sprinkling,+ ] spit, spatter, patter, pitter-patter, rain,@ frames: 3 (rain gently; "It has only sprinkled, but the roads are slick") }
14 | { pour, [ pelt, noun.phenomenon:pelter,+ ] stream, rain_cats_and_dogs, rain_buckets, rain,@ frames: 3 (rain heavily; "Put on your rain coat-- it's pouring outside!") }
15 | { sheet, pour,@ frames: 3 (come down as if in sheets; "The rain was sheeting down during the monsoon") }
16 | { [ sluice, noun.artifact:sluice,+ ] sluice_down, pour,@ frames: 1,4 (pour as if from a sluice; "An aggressive tide sluiced across the barrier reef") }
17 | { ice_up, frost_over, ice_over, freeze10,* verb.change:change,@ frames: 1,3 (become covered with a layer of ice; of a surface such as a window; "When the wings iced up, the pilot was forced to land his plane") }
18 | { [ freeze10, noun.phenomenon:freeze,+ noun.process:freezing,+ ] frames: 3 (be very cold, below the freezing point; "It is freezing in Kalamazoo") }
19 | { [ snow, noun.substance:snow,+ noun.phenomenon:snow,+ ] precipitate,@ frames: 3 (fall as snow; "It was snowing all night") }
20 | { [ hail, noun.phenomenon:hail,+ ] precipitate,@ frames: 3 (precipitate as small ice particles; "It hailed for an hour") }
21 | { [ sleet, noun.phenomenon:sleet,+ ] precipitate,@ frames: 3 (precipitate as a mixture of rain and snow; "If the temperature rises above freezing, it will probably sleet")}
22 | { [ flame, noun.process:flame,+ noun.process:flaming,+ ] verb.change:burn,@ frames: 1 (be in flames or aflame; "The sky seemed to flame in the Hawaiian sunset") }
23 | { [ ignite, adj.all:combustible^ignitible,+ adj.all:combustible^ignitable,+ noun.process:ignition,+ noun.act:ignition,+ noun.substance:igniter,+ noun.artifact:igniter,+ noun.substance:ignitor,+ noun.artifact:ignitor,+ extinguish,! ] [ light, noun.artifact:light1,+ noun.substance:lighter,+ noun.artifact:lighter,+ ] verb.change:burn,> burn2,@ frames: 8,11 (cause to start burning; subject to fire or great heat; "Great heat can ignite almost any dry matter"; "Light a cigarette") }
24 | { set_ablaze, set_aflame, set_on_fire1, set_afire, ignite,* burn2,@ frames: 8,11 (set fire to; cause to start burning; "Lightening set fire to the forest") }
25 | { reignite, ignite,@ frames: 8 (ignite anew, as of something burning; "The strong winds reignited the cooling embers") }
26 | { douse, put_out, extinguish,@ frames: 8 (put out, as of a candle or a light; "Douse the lights") }
27 | { erupt, [ ignite1, adj.all:combustible^ignitible,+ adj.all:combustible^ignitable,+ noun.act:ignition,+ ] catch_fire, take_fire, [ combust, adj.all:combustible,+ adj.all:combustible^combustive,+ ] conflagrate, verb.change:change_state,@ frames: 1 (start to burn or burst into flames; "Marsh gases ignited suddenly"; "The oily rags combusted spontaneously") }
28 | { blow_out1, erupt,@ frames: 1 (erupt in an uncontrolled manner; "The oil well blew out")}
29 | { catch4, ignite1,@ frames: 1 (start burning; "The fire caught") }
30 | { light_up1, ignite1,@ frames: 1 (start to burn with a bright flame; "The coal in the BBQ grill finally lit up") }
31 | { kindle, enkindle, conflagrate1, [ inflame, noun.act:inflammation1,+ ] ignite,@ frames: 8,11 (cause to start burning; "The setting sun kindled the sky with oranges and reds") }
32 | { rekindle, kindle,@ frames: 8 (kindle anew, as of a fire) }
33 | { [ kindle1, noun.substance:kindling,+ noun.act:kindling,+ ] [ inflame1, noun.act:inflammation1,+ ] flare_up,@ frames: 1 (catch fire; "The dried grass of the prairie kindled, spreading the flames for miles") }
34 | { snuff_out, blow_out, [ extinguish, noun.act:extinction1,+ noun.artifact:extinguisher,+ noun.act:extinguishing,+ ignite,! ] [ quench, noun.act:quenching,+ ] frames: 8,11 (put out, as of fires, flames, or lights; "Too big to be extinguished at once, the forest fires at best could be contained"; "quench the flames"; "snuff out the candles")}
35 | { black_out, extinguish,@ frames: 8,11 (obliterate or extinguish; "Some life-forms were obliterated by the radiation, others survived") }
36 | { [ burn2, adj.all:combustible^burnable,+ ] [ combust2, adj.all:combustible,+ adj.all:combustible^combustive,+ noun.act:combustion,+ ] verb.change:burn,> combust,$ frames: 8,11 (cause to burn or combust; "The sun burned off the fog"; "We combust coal and other fossil fuels") }
37 | { [ flare, noun.process:flare,+ ] flame_up, blaze_up, burn_up, verb.change:burn,@ frames: 1 (burn brightly; "Every star seemed to flare with new intensity") }
38 | { [ flare1, noun.process:flare,+ ] [flame1, flame_up,^ ] shine,@ frames: 1 (shine with a sudden light; "The night sky flared with the massive bombardment") }
39 | { outshine, shine,@ frames: 11 (shine brighter than; "What star outshines the sun?") }
40 | { [ shine3, noun.attribute:shine,+ ] shine,> frames: 8,21 (throw or flash the light of (a lamp); "Shine the light on that window, please") }
41 | { [ shimmer, noun.event:shimmer,+ ] shine,@ frames: 1 (shine with a weak or fitful light; "Beech leaves shimmered in the moonlight") }
42 | { [ flicker, noun.event:flicker,+ ] flick, shine,@ frames: 1 (shine unsteadily; "The candle flickered") }
43 | { [ shine, noun.attribute:shine,+ ] [ beam3, noun.phenomenon:beam,+ ] frames: 1 (emit light; be bright, as of the sun or a light; "The sun shone bright that day"; "The fire beamed on their faces") }
44 | { light_up2, ignite,@ frames: 1 (ignite; "The sky lit up quickly above the raging volcano") }
45 | { flare_up, ignite,@ frames: 1 (ignite quickly and suddenly, especially after having died down; "the fire flared up and died down once again") }
46 | { [ blaze, noun.process:blaze,+ blaze_up,^ ] verb.change:burn,@ frames:1 (burn brightly and intensely; "The summer sun alone can cause a pine to blaze") }
47 | { [ blaze1, noun.attribute:blaze,+ ] shine,@ frames: 1 (shine brightly and intensively; "Meteors blazed across the atmosphere") }
48 | { [ twinkle, noun.event:twinkle,+ noun.object:twinkler,+ ] winkle, [ scintillate, adj.all:bright^scintillant,+ noun.attribute:scintillation1,+ noun.object:scintilla,+ ] shine,@ noun.object:celestial_body,;c frames: 1 (emit or reflect light in a flickering manner; "Does a constellation twinkle more brightly than a single star?") }
49 | { glare1, reflect,@ frames: 1 (be sharply reflected; "The moon glared back at itself from the lake's surface") }
50 | { [ opalesce, adj.all:bright^opalescent,+ noun.attribute:opalescence,+ ] reflect,@ frames: 1 (reflect light or colors like an opal; "Distant clouds opalesce like pale brocade"; "raindrops caught in a sunbeam seem to opalesce") }
51 | { [ absorb, adj.all:absorptive,+ adj.all:absorbent,+ adj.all:absorbable,+ noun.process:absorption2,+ emit,! ] take_in, frames: 8,11 (suck or take up or in; "A black star absorbs all matter") }
52 | { [ suck, noun.act:suck,+ noun.act:suction,+ ] suck_in, absorb,@ frames: 11 (attract by using an inexorable force, inducement, etc.; "The current boom in the economy sucked many workers in from abroad") }
53 | { [ reflect, adj.all:reflective,+ ] [ shine1, noun.object:shiner,+ noun.attribute:shine,+ ] emit,@ frames: 1 (be bright by reflecting or casting light; "Drive carefully--the wet road reflects") }
54 | { [ luminesce, adj.all:light6^luminescent,+ noun.phenomenon:luminescence,+ noun.attribute:luminescence,+ ] shine1,@ frames: 1 (be or become luminescent; exhibit luminescence)}
55 | { [ sparkle, noun.attribute:sparkle,+ noun.event:sparkle,+ noun.possession:sparkler,+ noun.event:sparkling,+ ] [ scintillate3, adj.all:bright^scintillant,+ noun.attribute:scintillation,+ ] [ coruscate, adj.all:bright^coruscant,+ noun.event:coruscation,+ ] shine1,@ frames: 1 (reflect brightly; "Unquarried marble sparkled on the hillside") }
56 | { [ spark, noun.object:spark,+ noun.phenomenon:spark,+ noun.event:spark1,+ ] [ sparkle2, noun.event:sparkle,+ ] emit,@ frames: 1 (emit or produce sparks; "A high tension wire, brought down by a storm, can continue to spark") }
57 | { [ mirror, noun.cognition:mirror,+ noun.artifact:mirror,+ ] verb.perception:reflect,@ frames: 11,10 (reflect as if in a mirror; "The smallest pond at night mirrors the firmament above") }
58 | { [ radiate, adj.all:bright^radiant,+ noun.phenomenon:radiation,+ noun.attribute:radiancy,+ noun.attribute:radiance,+ ] emit,@ frames: 1,11 (send out rays or waves; "The sun radiates heat") }
59 | { [ emit, noun.act:emission,+ noun.artifact:emitter,+ absorb,! ] give_out, give_off, frames: 8,11 (give off, send forth, or discharge; as of light, heat, or radiation, vapor, etc.; "The ozone layer blocks some harmful rays which the sun emits") }
60 | { [ scintillate1, noun.event:scintillation,+ ] scintillate,$ emit,@ frames: 11 (give off; "the substance scintillated sparks and flashes")}
61 | { [ fume, noun.phenomenon:fume,+ ] [ smoke, noun.process:smoke,+ noun.phenomenon:smoke,+ noun.process:smoking,+ ] emit,@ frames: 1 (emit a cloud of fine particles; "The chimney was fuming") }
62 | { reek, emit,@ frames: 1 (give off smoke, fumes, warm vapour, steam, etc.; "Marshes reeking in the sun") }
63 | { shoot, emit,@ frames: 11 (emit (as light, flame, or fumes) suddenly and forcefully; "The dragon shot fumes and flames out of its mouth") }
64 | { [ ray, noun.phenomenon:ray,+ ] emit,@ frames: 11 (emit as rays; "That tower rays a laser beam for miles across the sky") }
65 | { steam, emit,@ frames: 1,2 (emit steam; "The rain forest was literally steaming") }
66 | { [ shadow, noun.location:shadow,+ noun.state:shadow1,+ ] [ shade, noun.state:shade,+ ] shade_off, verb.change:darken1,@ frames: 11,10,9 (cast a shadow over) }
67 | { burn1, [ glow, noun.phenomenon:glow,+ ] shine,@ frames: 1 (shine intensely, as if with heat; "The coals were glowing in the dark"; "The candles were burning") }
68 | { gutter, burn1,@ frames: 1 (burn unsteadily, feebly, or low; flicker; "The cooling lava continued to gutter toward lower ground") }
69 | { [ blow, noun.phenomenon:blow,+ ] frames: 1,3,4 (be blowing or storming; "The wind blew from the West") }
70 | { [ breeze, noun.phenomenon:breeze,+ ] blow,@ frames: 1,3,4 (blow gently and lightly; "It breezes most evenings at the shore") }
71 | { set_in, blow,@ frames: 1 (blow toward the shore; "That gale could set in on us with the next high tide") }
72 | { waft, blow,@ frames: 1,4 (blow gently; "A breeze wafted through the door") }
73 | { [ storm, noun.phenomenon:storm,+ ] blow,@ frames: 3 (blow hard; "It was storming all night") }
74 | { [ squall, noun.phenomenon:squall,+ ] blow,@ frames: 1 (blow in a squall; "When it squalls, a prudent sailor reefs his sails") }
75 | { [ storm1, noun.phenomenon:storm,+ ] rain,* frames: 3 (rain, hail, or snow hard and be very windy, often with thunder or lightning; "If it storms, we'll need shelter") }
76 | { [ bluster, noun.phenomenon:bluster,+ ] blow,@ frames: 3 (blow hard; be gusty, as of wind; "A southeaster blustered onshore"; "The flames blustered") }
77 | { [ thunder, noun.event:thunder1,+ ] boom, storm,* frames: 3 (be the case that thunder is being heard; "Whenever it thunders, my dog crawls under the bed") }
78 | { [ overcast, noun.state:overcast1,+ noun.state:overcast,+ clear_up,! ] [ cloud, noun.object:cloud,+ noun.process:clouding,+ cloud_over,^ cloud_up,^ ] verb.change:darken1,@ frames: 11 (make overcast or cloudy; "Fall weather often overcasts our beaches") }
79 | { overcloud, cloud_over, cloud_up, verb.change:darken,@ frames: 1,3 (become covered with clouds; "The sky clouded over") }
80 | { [clear_up, overcast,! ] clear, light_up, brighten, frames: 3,1 (become clear; "The sky cleared after the storm") }
81 | { [ blight, noun.state:blight1,+ noun.state:blight,+ ] [ plague, noun.group:plague,+ noun.state:plague1,+ noun.state:plague,+ ] verb.change:afflict,@ frames: 10,11 (cause to suffer a blight; "Too much rain may blight the garden with mold") }
82 | { [ swamp, noun.object:swamp,+ ] drench, verb.change:flood,@ frames: 1,11 (drench or submerge or be drenched or submerged; "The tsunami swamped every boat in the harbor") }
83 | { run_dry, dry_out1, verb.change:dry,@ frames: 1 (become empty of water; "The river runs dry in the summer") }
84 | { fog_up, overcast,@ frames: 3,1 (get foggy; "The windshield fogged up") }
85 | { [ char, noun.substance:char,+ ] [ coal, noun.substance:coal,+ noun.object:coal,+ ] burn2,@ frames: 8 (burn to charcoal; "Without a drenching rain, the forest fire will char everything") }
86 | { [ haze, noun.phenomenon:haze,+ ] overcast,@ frames: 1 (become hazy, dull, or cloudy)}
87 | { [deflagrate, noun.process:deflagration,+ ] burn2,@ frames: 8,11 (cause to burn rapidly and with great intensity; "care must be exercised when this substance is to be deflagrated")}
88 |
--------------------------------------------------------------------------------
/resources/log.grind.3.1:
--------------------------------------------------------------------------------
1 | Processing adj.all...
2 | Processing adj.pert...
3 | Processing adv.all...
4 | Processing noun.Tops...
5 | noun.Tops, line 7: warning: No hypernyms in synset
6 | Processing noun.act...
7 | Processing noun.animal...
8 | Processing noun.artifact...
9 | Processing noun.attribute...
10 | Processing noun.body...
11 | Processing noun.cognition...
12 | Processing noun.communication...
13 | Processing noun.event...
14 | Processing noun.feeling...
15 | Processing noun.food...
16 | Processing noun.group...
17 | Processing noun.location...
18 | Processing noun.motive...
19 | Processing noun.object...
20 | Processing noun.person...
21 | Processing noun.phenomenon...
22 | Processing noun.plant...
23 | Processing noun.possession...
24 | Processing noun.process...
25 | Processing noun.quantity...
26 | Processing noun.relation...
27 | Processing noun.shape...
28 | Processing noun.state...
29 | Processing noun.substance...
30 | Processing noun.time...
31 | Processing verb.body...
32 | Processing verb.change...
33 | Processing verb.cognition...
34 | Processing verb.communication...
35 | Processing verb.competition...
36 | Processing verb.consumption...
37 | Processing verb.contact...
38 | Processing verb.creation...
39 | Processing verb.emotion...
40 | Processing verb.motion...
41 | Processing verb.perception...
42 | Processing verb.possession...
43 | Processing verb.social...
44 | Processing verb.stative...
45 | Processing verb.weather...
46 | Processing adj.ppl...
47 |
48 | *** Statistics for ground files:
49 |
50 | 82192 noun synsets
51 | 13789 verb synsets
52 | 3807 adj synsets
53 | 3625 adv synsets
54 | 3661 pertainym synsets
55 | 10717 adjective satellite synsets
56 | 117791 synsets in total (including satellite and pertainym synsets)
57 | 82192 noun synsets have definitional glosses
58 | 13789 verb synsets have definitional glosses
59 | 3807 adj synsets have definitional glosses
60 | 3625 adv synsets have definitional glosses
61 | 3661 pertainym synsets have definitional glosses
62 | 10717 adjective satellite synsets have definitional glosses
63 | 117791 definitional glosses in total (including adjective satellite synsets)
64 | 225204 pointers in total
65 | 207272 synonyms in synsets
66 | 147478 unique word phrases
67 | 83253 word phrases of length 1
68 | 54562 word phrases of length 2
69 | 7769 word phrases of length 3
70 | 1459 word phrases of length 4
71 | 298 word phrases of length 5
72 | 80 word phrases of length 6
73 | 28 word phrases of length 7
74 | 20 word phrases of length 8
75 | 9 word phrases of length 9
76 |
77 | Resolving pointers...
78 | Done resolving pointers...
79 | Getting sense counts...
80 | Done with sense counts...
81 | Figuring out byte offsets...
82 | Dumping data files...
83 | Done dumping data files...
84 | Reading cntlist...
85 | Done reading cntlist
86 | Dumping index files...
87 | Done dumping index files...
88 | Dumping sense index...
89 | Done dumping sense index...
90 |
--------------------------------------------------------------------------------
/resources/sents.vrb:
--------------------------------------------------------------------------------
1 | 1 The children %s to the playground
2 | 10 The cars %s down the avenue
3 | 100 These glasses %s easily
4 | 101 These fabrics %s easily
5 | 102 They %s their earnings this year
6 | 103 Their earnings %s this year
7 | 104 The water %ss
8 | 105 They %s the water
9 | 106 The animals %s
10 | 107 They %s a long time
11 | 108 The car %ss the tree
12 | 109 John will %s angry
13 | 11 They %s the car down the avenue
14 | 110 They %s in the city
15 | 111 They won't %s the story
16 | 112 They %s that there was a traffic accident
17 | 113 They %s whether there was a traffic accident
18 | 114 They %s her vice president
19 | 115 Did he %s his major works over a short period of time?
20 | 116 The chefs %s the vegetables
21 | 117 They %s the cape
22 | 118 The food does %s good
23 | 119 The music does %s good
24 | 12 They %s the glass tubes
25 | 120 The cool air does %s good
26 | 121 This food does %s well
27 | 122 It was %sing all day long
28 | 123 They %s him to write the letter
29 | 124 They %s him into writing the letter
30 | 125 They %s him from writing the letter
31 | 126 The bad news will %s him
32 | 127 The good news will %s her
33 | 128 The chef wants to %s the eggs
34 | 129 Sam wants to %s with Sue
35 | 13 The glass tubes %s
36 | 130 The fighter managed to %s his opponent
37 | 131 These cars won't %s
38 | 132 The branches %s from the trees
39 | 133 The stock market is going to %s
40 | 134 The moon will soon %s
41 | 135 The business is going to %s
42 | 136 The airplane is sure to %s
43 | 137 They %s to move
44 | 138 They %s moving
45 | 139 Sam and Sue %s the movie
46 | 14 Sam and Sue %s
47 | 140 They want to %s the prisoners
48 | 141 They want to %s the doors
49 | 142 The doors %s
50 | 143 Did he %s his foot?
51 | 144 Did his feet %s?
52 | 145 They will %s the duet
53 | 146 They %s their hair
54 | 147 They %s the trees
55 | 148 They %s him of all his money
56 | 149 Lights %s on the horizon
57 | 15 Sam cannot %s Sue
58 | 150 The horizon is %sing with lights
59 | 151 The crowds %s in the streets
60 | 152 The streets %s with crowds
61 | 153 Cars %s in the streets
62 | 154 The streets %s with cars
63 | 155 You can hear animals %s in the meadows
64 | 156 The meadows %s with animals
65 | 157 The birds %s in the woods
66 | 158 The woods %s with many kinds of birds
67 | 159 The performance is likely to %s Sue
68 | 16 The ropes %s
69 | 160 Sam and Sue %s over the results of the experiment
70 | 161 In the summer they like to go out and %s
71 | 162 The children %s in the rocking chair
72 | 163 There %s some children in the rocking chair
73 | 164 Some big birds %s in the tree
74 | 165 There %s some big birds in the tree
75 | 166 The men %s the area for animals
76 | 167 The men %s for animals in the area
77 | 168 The customs agents %s the bags for drugs
78 | 169 They %s him as chairman
79 | 17 The strong winds %s the rope
80 | 170 They %s him "Bobby"
81 | 18 They %s the sheets
82 | 19 The sheets didn't %s
83 | 2 The banks %s the check
84 | 20 The horses %s across the field
85 | 21 They %s the bags on the table
86 | 22 The men %s the horses across the field
87 | 23 Our properties %s at this point
88 | 24 His fields %s mine at this point
89 | 25 They %s the hill
90 | 26 They %s up the hill
91 | 27 They %s the river
92 | 28 They %s down the river
93 | 29 They %s the countryside
94 | 3 The checks %s
95 | 30 They %s in the countryside
96 | 31 These men %s across the river
97 | 32 These men %s the river
98 | 33 They %s the food to the people
99 | 34 They %s the people the food
100 | 35 They %s more bread
101 | 36 They %s the object in the water
102 | 37 The men %s the bookshelves
103 | 38 They %s the money in the closet
104 | 39 The lights %s from the ceiling
105 | 4 The children %s the ball
106 | 40 They %s the lights from the ceiling
107 | 41 They %s their rifles on the cabinet
108 | 42 The chairs %s in the corner
109 | 43 The men %s the chairs
110 | 44 The women %s water into the bowl
111 | 45 Water and oil %s into the bowl
112 | 46 They %s the wire around the stick
113 | 47 The wires %s around the stick
114 | 48 They %s the bread with melted butter
115 | 49 They %s the cart with boxes
116 | 5 The balls %s
117 | 50 They %s the books into the box
118 | 51 They %s sugar over the cake
119 | 52 They %s the cake with sugar
120 | 53 They %s the fruit with a chemical
121 | 54 They %s a chemical into the fruit
122 | 55 They %s the field with rye
123 | 56 They %s rye in the field
124 | 57 They %s notices on the doors
125 | 58 They %s the doors with notices
126 | 59 They %s money on their grandchild
127 | 6 The girls %s the wooden sticks
128 | 60 They %s their grandchild with money
129 | 61 They %s coins on the image
130 | 62 They %s the image with coins
131 | 63 They %s butter on the bread
132 | 64 They %s the lake with fish
133 | 65 The children %s the paper with grease
134 | 66 The children %s grease onto the paper
135 | 67 They %s papers over the floor
136 | 68 They %s the floor with papers
137 | 69 They %s the money
138 | 7 The wooden sticks %s
139 | 70 They %s the newspapers
140 | 71 They %s the goods
141 | 72 The men %s the boat
142 | 73 They %s the animals
143 | 74 The books %s the box
144 | 75 They %s the halls with holly
145 | 76 Holly flowers %s the halls
146 | 77 The wind storms %s the area with dust and dirt
147 | 78 Dust and dirt %s the area
148 | 79 The swollen rivers %s the area with water
149 | 8 The coins %s
150 | 80 The waters %s the area
151 | 81 They %s the cloth with water and alcohol
152 | 82 Water and alcohol %s the cloth
153 | 83 They %s the snow from the path
154 | 84 They %s the path of the snow
155 | 85 They %s the water from the sink
156 | 86 They %s the sink of water
157 | 87 They %s the parcel to their parents
158 | 88 They %s them the parcel
159 | 89 They %s cars to the tourists
160 | 9 They %s the coin
161 | 90 They %s the tourists their cars
162 | 91 They %s the money to them
163 | 92 They %s them the money
164 | 93 They %s them the information
165 | 94 They %s the information to them
166 | 95 The parents %s a French poem to the children
167 | 96 The parents %s the children a French poem
168 | 97 They %s
169 | 98 They %s themselves
170 | 99 These balls %s easily
171 |
--------------------------------------------------------------------------------
/resources/verb.Framestext:
--------------------------------------------------------------------------------
1 | 1 Something ----s
2 | 2 Somebody ----s
3 | 3 It is ----ing
4 | 4 Something is ----ing PP
5 | 5 Something ----s something Adjective/Noun
6 | 6 Something ----s Adjective/Noun
7 | 7 Somebody ----s Adjective
8 | 8 Somebody ----s something
9 | 9 Somebody ----s somebody
10 | 10 Something ----s somebody
11 | 11 Something ----s something
12 | 12 Something ----s to somebody
13 | 13 Somebody ----s on something
14 | 14 Somebody ----s somebody something
15 | 15 Somebody ----s something to somebody
16 | 16 Somebody ----s something from somebody
17 | 17 Somebody ----s somebody with something
18 | 18 Somebody ----s somebody of something
19 | 19 Somebody ----s something on somebody
20 | 20 Somebody ----s somebody PP
21 | 21 Somebody ----s something PP
22 | 22 Somebody ----s PP
23 | 23 Somebody's (body part) ----s
24 | 24 Somebody ----s somebody to INFINITIVE
25 | 25 Somebody ----s somebody INFINITIVE
26 | 26 Somebody ----s that CLAUSE
27 | 27 Somebody ----s to somebody
28 | 28 Somebody ----s to INFINITIVE
29 | 29 Somebody ----s whether INFINITIVE
30 | 30 Somebody ----s somebody into V-ing something
31 | 31 Somebody ----s something with something
32 | 32 Somebody ----s INFINITIVE
33 | 33 Somebody ----s VERB-ing
34 | 34 It ----s that CLAUSE
35 | 35 Something ----s INFINITIVE
36 |
--------------------------------------------------------------------------------
/src/TestApplication/Docs/README.txt:
--------------------------------------------------------------------------------
1 | *********************************************
2 | * *
3 | * WordNet 3.0 API in C# *
4 | * Date: August 20, 2009 *
5 | * Author: Matt Gerber (gerberm2@msu.edu) *
6 | * *
7 | *********************************************
8 |
9 |
10 | LICENSE
11 |
12 | Free. Do whatever you want with it.
13 |
14 |
15 | COMPILATION
16 |
17 | 1) Compile the WordNet project as described in README.txt in the
18 | WordNet project.
19 |
20 | 2) Right-click on the TestApplication project, select "Properties",
21 | and go to "Reference Paths". Add the Public folder that was checked
22 | out when building the WordNet project.
23 |
24 | 3) Right-click on the TestApplication project and select "Build".
25 |
26 |
27 | MACHINE-SPECIFIC PATHS
28 |
29 | The test application must know where to find the WordNet data
30 | distribution. This path can be found the in the main form's
31 | constructor. Change as necessary.
32 |
33 |
34 | FAQ
35 |
36 | 1) I'm trying to compile the test application and I'm getting an error
37 | about a missing DLL named LAIR.ResourceAPIs.WordNet.dll. Where do I
38 | get this DLL?
39 |
40 | You didn't follow the instructions! :) See item (1) under
41 | COMPILATION above. It says to first build the WordNet project. The
42 | DLL is created when you build the WordNet project.
43 |
44 |
45 | BUGS REPORTS
46 |
47 | Send to gerber.matthew@gmail.com
48 |
--------------------------------------------------------------------------------
/src/TestApplication/Program.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Collections.Generic;
3 | using System.Linq;
4 | using System.Windows.Forms;
5 |
6 | namespace TestApplication
7 | {
8 | static class Program
9 | {
10 | ///
11 | /// The main entry point for the application.
12 | ///
13 | [STAThread]
14 | static void Main()
15 | {
16 | Application.EnableVisualStyles();
17 | Application.SetCompatibleTextRenderingDefault(false);
18 | Application.Run(new TestForm());
19 | }
20 | }
21 | }
22 |
--------------------------------------------------------------------------------
/src/TestApplication/Properties/AssemblyInfo.cs:
--------------------------------------------------------------------------------
1 | using System.Reflection;
2 | using System.Runtime.CompilerServices;
3 | using System.Runtime.InteropServices;
4 |
5 | // General Information about an assembly is controlled through the following
6 | // set of attributes. Change these attribute values to modify the information
7 | // associated with an assembly.
8 | [assembly: AssemblyTitle("TestApplication")]
9 | [assembly: AssemblyDescription("")]
10 | [assembly: AssemblyConfiguration("")]
11 | [assembly: AssemblyCompany("")]
12 | [assembly: AssemblyProduct("TestApplication")]
13 | [assembly: AssemblyCopyright("Copyright © 2009")]
14 | [assembly: AssemblyTrademark("")]
15 | [assembly: AssemblyCulture("")]
16 |
17 | // Setting ComVisible to false makes the types in this assembly not visible
18 | // to COM components. If you need to access a type in this assembly from
19 | // COM, set the ComVisible attribute to true on that type.
20 | [assembly: ComVisible(false)]
21 |
22 | // The following GUID is for the ID of the typelib if this project is exposed to COM
23 | [assembly: Guid("f48a97b2-ea8d-4b02-b103-132fcf598912")]
24 |
25 | // Version information for an assembly consists of the following four values:
26 | //
27 | // Major Version
28 | // Minor Version
29 | // Build Number
30 | // Revision
31 | //
32 | // You can specify all the values or you can default the Build and Revision Numbers
33 | // by using the '*' as shown below:
34 | // [assembly: AssemblyVersion("1.0.*")]
35 | [assembly: AssemblyVersion("1.0.0.0")]
36 | [assembly: AssemblyFileVersion("1.0.0.0")]
37 |
--------------------------------------------------------------------------------
/src/TestApplication/Properties/Resources.Designer.cs:
--------------------------------------------------------------------------------
1 | //------------------------------------------------------------------------------
2 | //
3 | // This code was generated by a tool.
4 | // Runtime Version:4.0.30319.1
5 | //
6 | // Changes to this file may cause incorrect behavior and will be lost if
7 | // the code is regenerated.
8 | //
9 | //------------------------------------------------------------------------------
10 |
11 | namespace TestApplication.Properties {
12 | using System;
13 |
14 |
15 | ///
16 | /// A strongly-typed resource class, for looking up localized strings, etc.
17 | ///
18 | // This class was auto-generated by the StronglyTypedResourceBuilder
19 | // class via a tool like ResGen or Visual Studio.
20 | // To add or remove a member, edit your .ResX file then rerun ResGen
21 | // with the /str option, or rebuild your VS project.
22 | [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "4.0.0.0")]
23 | [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
24 | [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
25 | internal class Resources {
26 |
27 | private static global::System.Resources.ResourceManager resourceMan;
28 |
29 | private static global::System.Globalization.CultureInfo resourceCulture;
30 |
31 | [global::System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1811:AvoidUncalledPrivateCode")]
32 | internal Resources() {
33 | }
34 |
35 | ///
36 | /// Returns the cached ResourceManager instance used by this class.
37 | ///
38 | [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)]
39 | internal static global::System.Resources.ResourceManager ResourceManager {
40 | get {
41 | if (object.ReferenceEquals(resourceMan, null)) {
42 | global::System.Resources.ResourceManager temp = new global::System.Resources.ResourceManager("TestApplication.Properties.Resources", typeof(Resources).Assembly);
43 | resourceMan = temp;
44 | }
45 | return resourceMan;
46 | }
47 | }
48 |
49 | ///
50 | /// Overrides the current thread's CurrentUICulture property for all
51 | /// resource lookups using this strongly typed resource class.
52 | ///
53 | [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)]
54 | internal static global::System.Globalization.CultureInfo Culture {
55 | get {
56 | return resourceCulture;
57 | }
58 | set {
59 | resourceCulture = value;
60 | }
61 | }
62 | }
63 | }
64 |
--------------------------------------------------------------------------------
/src/TestApplication/Properties/Resources.resx:
--------------------------------------------------------------------------------
1 |
2 |
3 |
62 |
63 |
64 |
65 |
66 |
67 |
68 |
69 |
70 |
71 |
72 |
73 |
74 |
75 |
76 |
77 |
78 |
79 |
80 |
81 |
82 |
83 |
84 |
85 |
86 |
87 |
88 |
89 |
90 |
91 |
92 |
93 |
94 |
95 |
96 |
97 |
98 |
99 |
100 |
101 |
102 |
103 |
104 |
105 |
106 | text/microsoft-resx
107 |
108 |
109 | 2.0
110 |
111 |
112 | System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
113 |
114 |
115 | System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
116 |
117 |
--------------------------------------------------------------------------------
/src/TestApplication/Properties/Settings.Designer.cs:
--------------------------------------------------------------------------------
1 | //------------------------------------------------------------------------------
2 | //
3 | // This code was generated by a tool.
4 | // Runtime Version:4.0.30319.1
5 | //
6 | // Changes to this file may cause incorrect behavior and will be lost if
7 | // the code is regenerated.
8 | //
9 | //------------------------------------------------------------------------------
10 |
11 | namespace TestApplication.Properties {
12 |
13 |
14 | [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
15 | [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Editors.SettingsDesigner.SettingsSingleFileGenerator", "10.0.0.0")]
16 | internal sealed partial class Settings : global::System.Configuration.ApplicationSettingsBase {
17 |
18 | private static Settings defaultInstance = ((Settings)(global::System.Configuration.ApplicationSettingsBase.Synchronized(new Settings())));
19 |
20 | public static Settings Default {
21 | get {
22 | return defaultInstance;
23 | }
24 | }
25 | }
26 | }
27 |
--------------------------------------------------------------------------------
/src/TestApplication/Properties/Settings.settings:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
--------------------------------------------------------------------------------
/src/TestApplication/TestApplication.csproj:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | Debug
5 | AnyCPU
6 | 9.0.21022
7 | 2.0
8 | {4CE87CD7-26B9-46AD-B192-C53096B7427D}
9 | WinExe
10 | Properties
11 | TestApplication
12 | TestApplication
13 | v4.0
14 | 512
15 |
16 |
17 | 3.5
18 |
19 | publish\
20 | true
21 | Disk
22 | false
23 | Foreground
24 | 7
25 | Days
26 | false
27 | false
28 | true
29 | 0
30 | 1.0.0.%2a
31 | false
32 | false
33 | true
34 |
35 |
36 |
37 | true
38 | full
39 | false
40 | bin\Debug\
41 | DEBUG;TRACE
42 | prompt
43 | 4
44 | AllRules.ruleset
45 |
46 |
47 | pdbonly
48 | true
49 | bin\Release\
50 | TRACE
51 | prompt
52 | 4
53 | AllRules.ruleset
54 |
55 |
56 |
57 | ..\..\lib\LAIR.Collections.dll
58 |
59 |
60 | ..\..\lib\LAIR.Extensions.dll
61 |
62 |
63 | ..\..\lib\LAIR.IO.dll
64 |
65 |
66 |
67 | 3.5
68 |
69 |
70 | 3.5
71 |
72 |
73 | 3.5
74 |
75 |
76 |
77 |
78 |
79 |
80 |
81 |
82 |
83 | Form
84 |
85 |
86 | TestForm.cs
87 |
88 |
89 |
90 |
91 | ResXFileCodeGenerator
92 | Resources.Designer.cs
93 | Designer
94 |
95 |
96 | TestForm.cs
97 | Designer
98 |
99 |
100 | True
101 | Resources.resx
102 | True
103 |
104 |
105 | SettingsSingleFileGenerator
106 | Settings.Designer.cs
107 |
108 |
109 | True
110 | Settings.settings
111 | True
112 |
113 |
114 |
115 |
116 |
117 |
118 |
119 | False
120 | .NET Framework 3.5 SP1 Client Profile
121 | false
122 |
123 |
124 | False
125 | .NET Framework 3.5 SP1
126 | true
127 |
128 |
129 | False
130 | Windows Installer 3.1
131 | true
132 |
133 |
134 |
135 |
136 | {F4C6C48C-90EF-445D-B8F8-AD9B6767D9A8}
137 | WordNet
138 |
139 |
140 |
141 |
148 |
--------------------------------------------------------------------------------
/src/TestApplication/TestForm.Designer.cs:
--------------------------------------------------------------------------------
1 | namespace TestApplication
2 | {
3 | partial class TestForm
4 | {
5 | ///
6 | /// Required designer variable.
7 | ///
8 | private System.ComponentModel.IContainer components = null;
9 |
10 | ///
11 | /// Clean up any resources being used.
12 | ///
13 | /// true if managed resources should be disposed; otherwise, false.
14 | protected override void Dispose(bool disposing)
15 | {
16 | if (disposing && (components != null))
17 | {
18 | components.Dispose();
19 | }
20 | base.Dispose(disposing);
21 | }
22 |
23 | #region Windows Form Designer generated code
24 |
25 | ///
26 | /// Required method for Designer support - do not modify
27 | /// the contents of this method with the code editor.
28 | ///
29 | private void InitializeComponent()
30 | {
31 | this.word = new System.Windows.Forms.TextBox();
32 | this.getSynSets = new System.Windows.Forms.Button();
33 | this.test = new System.Windows.Forms.Button();
34 | this.label1 = new System.Windows.Forms.Label();
35 | this.synSets = new System.Windows.Forms.ListBox();
36 | this.getRelatedSynSets = new System.Windows.Forms.Button();
37 | this.semanticRelations = new System.Windows.Forms.ListBox();
38 | this.pos = new System.Windows.Forms.ComboBox();
39 | this.label2 = new System.Windows.Forms.Label();
40 | this.groupBox1 = new System.Windows.Forms.GroupBox();
41 | this.mostCommon = new System.Windows.Forms.CheckBox();
42 | this.label3 = new System.Windows.Forms.Label();
43 | this.synsetID = new System.Windows.Forms.TextBox();
44 | this.groupBox2 = new System.Windows.Forms.GroupBox();
45 | this.menuStrip1 = new System.Windows.Forms.MenuStrip();
46 | this.wordNetToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
47 | this.exitToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
48 | this.groupBox3 = new System.Windows.Forms.GroupBox();
49 | this.lexicalRelations = new System.Windows.Forms.ListBox();
50 | this.computeSemSim = new System.Windows.Forms.Button();
51 | this.ss1 = new System.Windows.Forms.Label();
52 | this.ss2 = new System.Windows.Forms.Label();
53 | this.groupBox4 = new System.Windows.Forms.GroupBox();
54 | this.groupBox1.SuspendLayout();
55 | this.groupBox2.SuspendLayout();
56 | this.menuStrip1.SuspendLayout();
57 | this.groupBox3.SuspendLayout();
58 | this.groupBox4.SuspendLayout();
59 | this.SuspendLayout();
60 | //
61 | // word
62 | //
63 | this.word.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
64 | this.word.Location = new System.Drawing.Point(52, 28);
65 | this.word.Name = "word";
66 | this.word.Size = new System.Drawing.Size(133, 20);
67 | this.word.TabIndex = 0;
68 | this.word.TextChanged += new System.EventHandler(this.word_TextChanged);
69 | this.word.KeyDown += new System.Windows.Forms.KeyEventHandler(this.word_KeyDown);
70 | //
71 | // getSynSets
72 | //
73 | this.getSynSets.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
74 | this.getSynSets.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
75 | this.getSynSets.Location = new System.Drawing.Point(482, 26);
76 | this.getSynSets.Name = "getSynSets";
77 | this.getSynSets.Size = new System.Drawing.Size(75, 23);
78 | this.getSynSets.TabIndex = 3;
79 | this.getSynSets.Text = "Get synsets";
80 | this.getSynSets.UseVisualStyleBackColor = true;
81 | this.getSynSets.Click += new System.EventHandler(this.getSynSets_Click);
82 | //
83 | // test
84 | //
85 | this.test.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
86 | this.test.Location = new System.Drawing.Point(690, 403);
87 | this.test.Name = "test";
88 | this.test.Size = new System.Drawing.Size(252, 23);
89 | this.test.TabIndex = 2;
90 | this.test.Text = "Test WordNet engine";
91 | this.test.UseVisualStyleBackColor = true;
92 | this.test.Click += new System.EventHandler(this.test_Click);
93 | //
94 | // label1
95 | //
96 | this.label1.AutoSize = true;
97 | this.label1.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
98 | this.label1.Location = new System.Drawing.Point(10, 31);
99 | this.label1.Name = "label1";
100 | this.label1.Size = new System.Drawing.Size(36, 13);
101 | this.label1.TabIndex = 3;
102 | this.label1.Text = "Word:";
103 | this.label1.TextAlign = System.Drawing.ContentAlignment.MiddleRight;
104 | //
105 | // synSets
106 | //
107 | this.synSets.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
108 | | System.Windows.Forms.AnchorStyles.Left)
109 | | System.Windows.Forms.AnchorStyles.Right)));
110 | this.synSets.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
111 | this.synSets.FormattingEnabled = true;
112 | this.synSets.Location = new System.Drawing.Point(13, 54);
113 | this.synSets.Name = "synSets";
114 | this.synSets.Size = new System.Drawing.Size(644, 134);
115 | this.synSets.TabIndex = 4;
116 | this.synSets.SelectedIndexChanged += new System.EventHandler(this.synSets_SelectedIndexChanged);
117 | this.synSets.MouseDoubleClick += new System.Windows.Forms.MouseEventHandler(this.synSets_MouseDoubleClick);
118 | //
119 | // getRelatedSynSets
120 | //
121 | this.getRelatedSynSets.Enabled = false;
122 | this.getRelatedSynSets.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
123 | this.getRelatedSynSets.Location = new System.Drawing.Point(13, 26);
124 | this.getRelatedSynSets.Name = "getRelatedSynSets";
125 | this.getRelatedSynSets.Size = new System.Drawing.Size(112, 23);
126 | this.getRelatedSynSets.TabIndex = 0;
127 | this.getRelatedSynSets.Text = "Get related synsets";
128 | this.getRelatedSynSets.UseVisualStyleBackColor = true;
129 | this.getRelatedSynSets.Click += new System.EventHandler(this.getRelatedSynSets_Click);
130 | //
131 | // semanticRelations
132 | //
133 | this.semanticRelations.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
134 | | System.Windows.Forms.AnchorStyles.Left)
135 | | System.Windows.Forms.AnchorStyles.Right)));
136 | this.semanticRelations.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
137 | this.semanticRelations.FormattingEnabled = true;
138 | this.semanticRelations.Location = new System.Drawing.Point(13, 54);
139 | this.semanticRelations.Name = "semanticRelations";
140 | this.semanticRelations.Size = new System.Drawing.Size(224, 134);
141 | this.semanticRelations.TabIndex = 1;
142 | this.semanticRelations.DoubleClick += new System.EventHandler(this.synSetRelations_DoubleClick);
143 | //
144 | // pos
145 | //
146 | this.pos.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
147 | this.pos.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
148 | this.pos.FormattingEnabled = true;
149 | this.pos.Location = new System.Drawing.Point(229, 28);
150 | this.pos.Name = "pos";
151 | this.pos.Size = new System.Drawing.Size(61, 21);
152 | this.pos.TabIndex = 2;
153 | //
154 | // label2
155 | //
156 | this.label2.AutoSize = true;
157 | this.label2.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
158 | this.label2.Location = new System.Drawing.Point(191, 31);
159 | this.label2.Name = "label2";
160 | this.label2.Size = new System.Drawing.Size(32, 13);
161 | this.label2.TabIndex = 1;
162 | this.label2.Text = "POS:";
163 | this.label2.TextAlign = System.Drawing.ContentAlignment.MiddleRight;
164 | //
165 | // groupBox1
166 | //
167 | this.groupBox1.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
168 | | System.Windows.Forms.AnchorStyles.Left)
169 | | System.Windows.Forms.AnchorStyles.Right)));
170 | this.groupBox1.Controls.Add(this.mostCommon);
171 | this.groupBox1.Controls.Add(this.label3);
172 | this.groupBox1.Controls.Add(this.synsetID);
173 | this.groupBox1.Controls.Add(this.synSets);
174 | this.groupBox1.Controls.Add(this.word);
175 | this.groupBox1.Controls.Add(this.label2);
176 | this.groupBox1.Controls.Add(this.getSynSets);
177 | this.groupBox1.Controls.Add(this.pos);
178 | this.groupBox1.Controls.Add(this.label1);
179 | this.groupBox1.Font = new System.Drawing.Font("Microsoft Sans Serif", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
180 | this.groupBox1.Location = new System.Drawing.Point(12, 43);
181 | this.groupBox1.Name = "groupBox1";
182 | this.groupBox1.Size = new System.Drawing.Size(672, 216);
183 | this.groupBox1.TabIndex = 0;
184 | this.groupBox1.TabStop = false;
185 | this.groupBox1.Text = "Synsets";
186 | //
187 | // mostCommon
188 | //
189 | this.mostCommon.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
190 | this.mostCommon.AutoSize = true;
191 | this.mostCommon.Font = new System.Drawing.Font("Microsoft Sans Serif", 8F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
192 | this.mostCommon.Location = new System.Drawing.Point(563, 30);
193 | this.mostCommon.Name = "mostCommon";
194 | this.mostCommon.Size = new System.Drawing.Size(92, 17);
195 | this.mostCommon.TabIndex = 7;
196 | this.mostCommon.Text = "Most common";
197 | this.mostCommon.UseVisualStyleBackColor = true;
198 | //
199 | // label3
200 | //
201 | this.label3.AutoSize = true;
202 | this.label3.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
203 | this.label3.Location = new System.Drawing.Point(296, 31);
204 | this.label3.Name = "label3";
205 | this.label3.Size = new System.Drawing.Size(21, 13);
206 | this.label3.TabIndex = 6;
207 | this.label3.Text = "ID:";
208 | this.label3.TextAlign = System.Drawing.ContentAlignment.MiddleRight;
209 | //
210 | // synsetID
211 | //
212 | this.synsetID.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
213 | this.synsetID.Location = new System.Drawing.Point(323, 28);
214 | this.synsetID.Name = "synsetID";
215 | this.synsetID.Size = new System.Drawing.Size(139, 20);
216 | this.synsetID.TabIndex = 5;
217 | this.synsetID.TextChanged += new System.EventHandler(this.synsetID_TextChanged);
218 | this.synsetID.KeyDown += new System.Windows.Forms.KeyEventHandler(this.synsetID_KeyDown);
219 | //
220 | // groupBox2
221 | //
222 | this.groupBox2.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
223 | | System.Windows.Forms.AnchorStyles.Right)));
224 | this.groupBox2.Controls.Add(this.semanticRelations);
225 | this.groupBox2.Controls.Add(this.getRelatedSynSets);
226 | this.groupBox2.Font = new System.Drawing.Font("Microsoft Sans Serif", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
227 | this.groupBox2.Location = new System.Drawing.Point(690, 43);
228 | this.groupBox2.Name = "groupBox2";
229 | this.groupBox2.Size = new System.Drawing.Size(251, 216);
230 | this.groupBox2.TabIndex = 1;
231 | this.groupBox2.TabStop = false;
232 | this.groupBox2.Text = "Semantic relations";
233 | //
234 | // menuStrip1
235 | //
236 | this.menuStrip1.Items.AddRange(new System.Windows.Forms.ToolStripItem[] {
237 | this.wordNetToolStripMenuItem});
238 | this.menuStrip1.Location = new System.Drawing.Point(0, 0);
239 | this.menuStrip1.Name = "menuStrip1";
240 | this.menuStrip1.Size = new System.Drawing.Size(953, 24);
241 | this.menuStrip1.TabIndex = 14;
242 | this.menuStrip1.Text = "menuStrip1";
243 | //
244 | // wordNetToolStripMenuItem
245 | //
246 | this.wordNetToolStripMenuItem.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] {
247 | this.exitToolStripMenuItem});
248 | this.wordNetToolStripMenuItem.Name = "wordNetToolStripMenuItem";
249 | this.wordNetToolStripMenuItem.Size = new System.Drawing.Size(35, 20);
250 | this.wordNetToolStripMenuItem.Text = "File";
251 | //
252 | // exitToolStripMenuItem
253 | //
254 | this.exitToolStripMenuItem.Name = "exitToolStripMenuItem";
255 | this.exitToolStripMenuItem.Size = new System.Drawing.Size(103, 22);
256 | this.exitToolStripMenuItem.Text = "Exit";
257 | this.exitToolStripMenuItem.Click += new System.EventHandler(this.exitToolStripMenuItem_Click);
258 | //
259 | // groupBox3
260 | //
261 | this.groupBox3.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
262 | this.groupBox3.Controls.Add(this.lexicalRelations);
263 | this.groupBox3.Font = new System.Drawing.Font("Microsoft Sans Serif", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
264 | this.groupBox3.Location = new System.Drawing.Point(691, 267);
265 | this.groupBox3.Name = "groupBox3";
266 | this.groupBox3.Size = new System.Drawing.Size(251, 130);
267 | this.groupBox3.TabIndex = 2;
268 | this.groupBox3.TabStop = false;
269 | this.groupBox3.Text = "Lexical relations";
270 | //
271 | // lexicalRelations
272 | //
273 | this.lexicalRelations.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
274 | | System.Windows.Forms.AnchorStyles.Left)
275 | | System.Windows.Forms.AnchorStyles.Right)));
276 | this.lexicalRelations.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
277 | this.lexicalRelations.FormattingEnabled = true;
278 | this.lexicalRelations.HorizontalScrollbar = true;
279 | this.lexicalRelations.Location = new System.Drawing.Point(12, 25);
280 | this.lexicalRelations.Name = "lexicalRelations";
281 | this.lexicalRelations.Size = new System.Drawing.Size(224, 82);
282 | this.lexicalRelations.TabIndex = 1;
283 | //
284 | // computeSemSim
285 | //
286 | this.computeSemSim.Enabled = false;
287 | this.computeSemSim.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
288 | this.computeSemSim.Location = new System.Drawing.Point(12, 87);
289 | this.computeSemSim.Name = "computeSemSim";
290 | this.computeSemSim.Size = new System.Drawing.Size(190, 23);
291 | this.computeSemSim.TabIndex = 8;
292 | this.computeSemSim.Text = "Compute semantic similarity";
293 | this.computeSemSim.UseVisualStyleBackColor = true;
294 | this.computeSemSim.Click += new System.EventHandler(this.computeSemSim_Click);
295 | //
296 | // ss1
297 | //
298 | this.ss1.AutoSize = true;
299 | this.ss1.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
300 | this.ss1.Location = new System.Drawing.Point(9, 40);
301 | this.ss1.Name = "ss1";
302 | this.ss1.Size = new System.Drawing.Size(132, 13);
303 | this.ss1.TabIndex = 9;
304 | this.ss1.Text = "Double-click synset to add";
305 | this.ss1.DoubleClick += new System.EventHandler(this.ss1_DoubleClick);
306 | //
307 | // ss2
308 | //
309 | this.ss2.AutoSize = true;
310 | this.ss2.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
311 | this.ss2.Location = new System.Drawing.Point(9, 60);
312 | this.ss2.Name = "ss2";
313 | this.ss2.Size = new System.Drawing.Size(132, 13);
314 | this.ss2.TabIndex = 10;
315 | this.ss2.Text = "Double-click synset to add";
316 | this.ss2.DoubleClick += new System.EventHandler(this.ss2_DoubleClick);
317 | //
318 | // groupBox4
319 | //
320 | this.groupBox4.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)
321 | | System.Windows.Forms.AnchorStyles.Right)));
322 | this.groupBox4.Controls.Add(this.ss1);
323 | this.groupBox4.Controls.Add(this.ss2);
324 | this.groupBox4.Controls.Add(this.computeSemSim);
325 | this.groupBox4.Font = new System.Drawing.Font("Microsoft Sans Serif", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
326 | this.groupBox4.Location = new System.Drawing.Point(13, 267);
327 | this.groupBox4.Name = "groupBox4";
328 | this.groupBox4.Size = new System.Drawing.Size(672, 130);
329 | this.groupBox4.TabIndex = 15;
330 | this.groupBox4.TabStop = false;
331 | this.groupBox4.Text = "Semantic similarity";
332 | //
333 | // TestForm
334 | //
335 | this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
336 | this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
337 | this.ClientSize = new System.Drawing.Size(953, 456);
338 | this.Controls.Add(this.groupBox4);
339 | this.Controls.Add(this.groupBox3);
340 | this.Controls.Add(this.groupBox2);
341 | this.Controls.Add(this.groupBox1);
342 | this.Controls.Add(this.test);
343 | this.Controls.Add(this.menuStrip1);
344 | this.MainMenuStrip = this.menuStrip1;
345 | this.MinimumSize = new System.Drawing.Size(961, 490);
346 | this.Name = "TestForm";
347 | this.Text = "Test Application";
348 | this.groupBox1.ResumeLayout(false);
349 | this.groupBox1.PerformLayout();
350 | this.groupBox2.ResumeLayout(false);
351 | this.menuStrip1.ResumeLayout(false);
352 | this.menuStrip1.PerformLayout();
353 | this.groupBox3.ResumeLayout(false);
354 | this.groupBox4.ResumeLayout(false);
355 | this.groupBox4.PerformLayout();
356 | this.ResumeLayout(false);
357 | this.PerformLayout();
358 |
359 | }
360 |
361 | #endregion
362 |
363 | private System.Windows.Forms.TextBox word;
364 | private System.Windows.Forms.Button getSynSets;
365 | private System.Windows.Forms.Button test;
366 | private System.Windows.Forms.Label label1;
367 | private System.Windows.Forms.ListBox synSets;
368 | private System.Windows.Forms.Button getRelatedSynSets;
369 | private System.Windows.Forms.ListBox semanticRelations;
370 | private System.Windows.Forms.ComboBox pos;
371 | private System.Windows.Forms.Label label2;
372 | private System.Windows.Forms.GroupBox groupBox1;
373 | private System.Windows.Forms.GroupBox groupBox2;
374 | private System.Windows.Forms.MenuStrip menuStrip1;
375 | private System.Windows.Forms.ToolStripMenuItem wordNetToolStripMenuItem;
376 | private System.Windows.Forms.ToolStripMenuItem exitToolStripMenuItem;
377 | private System.Windows.Forms.Label label3;
378 | private System.Windows.Forms.TextBox synsetID;
379 | private System.Windows.Forms.CheckBox mostCommon;
380 | private System.Windows.Forms.GroupBox groupBox3;
381 | private System.Windows.Forms.ListBox lexicalRelations;
382 | private System.Windows.Forms.Button computeSemSim;
383 | private System.Windows.Forms.Label ss2;
384 | private System.Windows.Forms.Label ss1;
385 | private System.Windows.Forms.GroupBox groupBox4;
386 | }
387 | }
388 |
389 |
--------------------------------------------------------------------------------
/src/TestApplication/TestForm.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Collections.Generic;
3 | using System.ComponentModel;
4 | using System.Data;
5 | using System.Drawing;
6 | using System.Linq;
7 | using System.Text;
8 | using System.Windows.Forms;
9 | using System.IO;
10 | using System.Threading;
11 |
12 | using LAIR.ResourceAPIs.WordNet;
13 | using LAIR.Collections.Generic;
14 |
15 | namespace TestApplication
16 | {
17 | public partial class TestForm : Form
18 | {
19 | private WordNetEngine _wordNetEngine;
20 | private SynSet _semSimSs1;
21 | private SynSet _semSimSs2;
22 | private string _origSsLbl;
23 | private WordNetSimilarityModel _semanticSimilarityModel;
24 |
25 | public TestForm()
26 | {
27 | InitializeComponent();
28 |
29 | // create wordnet engine (use disk-based retrieval by default)
30 | string root = Directory.GetDirectoryRoot(".");
31 | _wordNetEngine = new WordNetEngine(root + @"\dev\wordnetapi\resources\", false);
32 |
33 | if (!_wordNetEngine.InMemory)
34 | test.Text += " (will take a while)";
35 |
36 | // populate POS list
37 | foreach (WordNetEngine.POS p in Enum.GetValues(typeof(WordNetEngine.POS)))
38 | if (p != WordNetEngine.POS.None)
39 | pos.Items.Add(p);
40 |
41 | pos.SelectedIndex = 0;
42 |
43 | // allow scrolling of synset list
44 | synSets.HorizontalScrollbar = true;
45 |
46 | _semSimSs1 = _semSimSs2 = null;
47 | _origSsLbl = ss1.Text;
48 | _semanticSimilarityModel = new WordNetSimilarityModel(_wordNetEngine);
49 | }
50 |
51 | private void getSynSets_Click(object sender, EventArgs e)
52 | {
53 | synSets.Items.Clear();
54 | semanticRelations.Items.Clear();
55 | lexicalRelations.Items.Clear();
56 | getRelatedSynSets.Enabled = false;
57 |
58 | // retrive synsets
59 | Set synSetsToShow = null;
60 | if (synsetID.Text != "")
61 | {
62 | try { synSetsToShow = new Set(new SynSet[] { _wordNetEngine.GetSynSet(synsetID.Text) }); }
63 | catch (Exception)
64 | {
65 | MessageBox.Show("Invalid SynSet ID");
66 | return;
67 | }
68 | }
69 | else
70 | {
71 | // get single most common synset
72 | if (mostCommon.Checked)
73 | {
74 | try
75 | {
76 | SynSet synset = _wordNetEngine.GetMostCommonSynSet(word.Text, (WordNetEngine.POS)pos.SelectedItem);
77 |
78 | if (synset != null)
79 | synSetsToShow = new Set(new SynSet[] { synset });
80 | }
81 | catch (Exception ex) { MessageBox.Show("Error: " + ex); return; }
82 | }
83 | // get all synsets
84 | else
85 | {
86 | try { synSetsToShow = _wordNetEngine.GetSynSets(word.Text, (WordNetEngine.POS)pos.SelectedItem); }
87 | catch (Exception ex) { MessageBox.Show("Error: " + ex); return; }
88 | }
89 | }
90 |
91 | if (synSetsToShow.Count > 0)
92 | foreach (SynSet synSet in synSetsToShow)
93 | synSets.Items.Add(synSet);
94 | else
95 | MessageBox.Show("No synsets found");
96 | }
97 |
98 | private void synSets_SelectedIndexChanged(object sender, EventArgs e)
99 | {
100 | semanticRelations.Items.Clear();
101 | lexicalRelations.Items.Clear();
102 | computeSemSim.Enabled = false;
103 | getRelatedSynSets.Enabled = synSets.SelectedItem != null;
104 |
105 | // select a synset if none is selected and there is one
106 | if (synSets.SelectedItems.Count == 0)
107 | {
108 | if (synSets.Items.Count > 0)
109 | synSets.SelectedIndex = 0;
110 | }
111 | else if (synSets.SelectedItems.Count == 1)
112 | {
113 | SynSet selectedSynSet = synSets.SelectedItem as SynSet;
114 |
115 | // populate semantic relation list for the current synset
116 | semanticRelations.Items.Clear();
117 | foreach (WordNetEngine.SynSetRelation synSetRelation in selectedSynSet.SemanticRelations)
118 | semanticRelations.Items.Add(synSetRelation + ": " + selectedSynSet.GetRelatedSynSetCount(synSetRelation));
119 |
120 | // populate list of lexically related words for the current synset
121 | lexicalRelations.Items.Clear();
122 | Dictionary>> lexicallyRelatedWords = selectedSynSet.GetLexicallyRelatedWords();
123 | foreach (WordNetEngine.SynSetRelation lexicalRelation in lexicallyRelatedWords.Keys)
124 | foreach (string word1 in lexicallyRelatedWords[lexicalRelation].Keys)
125 | foreach (string word2 in lexicallyRelatedWords[lexicalRelation][word1])
126 | lexicalRelations.Items.Add(word1 + " -- " + lexicalRelation + " --> " + word2);
127 |
128 | // show id
129 | synsetID.Text = selectedSynSet.ID;
130 | }
131 | }
132 |
133 | private void getRelatedSynSets_Click(object sender, EventArgs e)
134 | {
135 | SynSet selectedSynSet = synSets.SelectedItem as SynSet;
136 |
137 | if (selectedSynSet == null || semanticRelations.SelectedIndex == -1)
138 | return;
139 |
140 | synSets.Items.Clear();
141 |
142 | // get relations
143 | string relationStr = semanticRelations.SelectedItem.ToString();
144 | relationStr = relationStr.Split(':')[0].Trim();
145 | WordNetEngine.SynSetRelation relation = (WordNetEngine.SynSetRelation)Enum.Parse(typeof(WordNetEngine.SynSetRelation), relationStr);
146 |
147 | // add related synset
148 | foreach (SynSet relatedSynset in selectedSynSet.GetRelatedSynSets(relation, false))
149 | synSets.Items.Add(relatedSynset);
150 |
151 | // selected synset
152 | if (synSets.Items.Count > 0)
153 | synSets.SelectedIndex = 0;
154 | }
155 |
156 | private void synSetRelations_DoubleClick(object sender, EventArgs e)
157 | {
158 | getRelatedSynSets_Click(sender, e);
159 | }
160 |
161 | private void word_KeyDown(object sender, KeyEventArgs e)
162 | {
163 | if (e.KeyCode == Keys.Enter)
164 | getSynSets_Click(sender, e);
165 | }
166 |
167 | private void test_Click(object sender, EventArgs e)
168 | {
169 | Thread t = new Thread(new ThreadStart(delegate()
170 | {
171 | Invoke(new MethodInvoker(delegate() { Enabled = false; }));
172 |
173 | // test all words
174 | Dictionary> words = _wordNetEngine.AllWords;
175 | foreach (WordNetEngine.POS pos in words.Keys)
176 | foreach (string word in words[pos])
177 | {
178 | // get synsets
179 | Set synsets = _wordNetEngine.GetSynSets(word, pos);
180 | if (synsets.Count == 0)
181 | if (MessageBox.Show("Failed to get synset for " + pos + ": " + word + ". Quit?", "Quit?", MessageBoxButtons.YesNo) == DialogResult.Yes)
182 | return;
183 |
184 | // make sure there's a most common synset
185 | if (_wordNetEngine.GetMostCommonSynSet(word, pos) == null)
186 | throw new NullReferenceException("Failed to find most common synset");
187 |
188 | // check each synset
189 | foreach (SynSet synset in synsets)
190 | {
191 | // check lexically related words
192 | synset.GetLexicallyRelatedWords();
193 |
194 | // check relations
195 | foreach (WordNetEngine.SynSetRelation relation in synset.SemanticRelations)
196 | synset.GetRelatedSynSets(relation, false);
197 |
198 | // check lex file name
199 | if (synset.LexicographerFileName == WordNetEngine.LexicographerFileName.None)
200 | throw new Exception("Invalid lex file name");
201 | }
202 | }
203 |
204 | MessageBox.Show("Test completed. Everything looks okay.");
205 |
206 | Invoke(new MethodInvoker(delegate() { Enabled = true; }));
207 | }));
208 |
209 | t.Start();
210 | }
211 |
212 | private void exitToolStripMenuItem_Click(object sender, EventArgs e)
213 | {
214 | Close();
215 | }
216 |
217 | private void word_TextChanged(object sender, EventArgs e)
218 | {
219 | synsetID.TextChanged -= new EventHandler(synsetID_TextChanged);
220 | synsetID.Text = "";
221 | synsetID.TextChanged += new EventHandler(synsetID_TextChanged);
222 | }
223 |
224 | private void synsetID_TextChanged(object sender, EventArgs e)
225 | {
226 | word.TextChanged -= new EventHandler(word_TextChanged);
227 | word.Text = "";
228 | word.TextChanged += new EventHandler(word_TextChanged);
229 | }
230 |
231 | private void synsetID_KeyDown(object sender, KeyEventArgs e)
232 | {
233 | if (e.KeyCode == Keys.Enter)
234 | getSynSets_Click(sender, e);
235 | }
236 |
237 | private void computeSemSim_Click(object sender, EventArgs e)
238 | {
239 | if (_semSimSs1.POS != _semSimSs2.POS)
240 | {
241 | MessageBox.Show("Selected synsets must have the same part-of-speech.");
242 | return;
243 | }
244 |
245 | string result = "";
246 | foreach (WordNetSimilarityModel.Strategy strategy in Enum.GetValues(typeof(WordNetSimilarityModel.Strategy)))
247 | {
248 | float sim = _semanticSimilarityModel.GetSimilarity(_semSimSs1, _semSimSs2, strategy, WordNetEngine.SynSetRelation.Hypernym);
249 | result += strategy + ": " + sim + Environment.NewLine;
250 | }
251 |
252 | MessageBox.Show(result);
253 | }
254 |
255 | private void synSets_MouseDoubleClick(object sender, MouseEventArgs e)
256 | {
257 | if (synSets.SelectedItem == null)
258 | return;
259 |
260 | SynSet s = (SynSet)synSets.SelectedItem;
261 | if (_semSimSs1 == null)
262 | {
263 | _semSimSs1 = s;
264 | ss1.Text = _semSimSs1.ToString() + " (double-click to remove)";
265 | }
266 | else if (_semSimSs2 == null)
267 | {
268 | _semSimSs2 = s;
269 | ss2.Text = _semSimSs2.ToString() + " (double-click to remove)";
270 | }
271 | else
272 | MessageBox.Show("Please remove one of the synsets selected below (double-click it)");
273 |
274 | computeSemSim.Enabled = _semSimSs1 != null && _semSimSs2 != null;
275 | }
276 |
277 | private void ss1_DoubleClick(object sender, EventArgs e)
278 | {
279 | ss1.Text = _origSsLbl;
280 | _semSimSs1 = null;
281 | computeSemSim.Enabled = false;
282 | }
283 |
284 | private void ss2_DoubleClick(object sender, EventArgs e)
285 | {
286 | ss2.Text = _origSsLbl;
287 | _semSimSs2 = null;
288 | computeSemSim.Enabled = false;
289 | }
290 | }
291 | }
292 |
--------------------------------------------------------------------------------
/src/TestApplication/TestForm.resx:
--------------------------------------------------------------------------------
1 |
2 |
3 |
62 |
63 |
64 |
65 |
66 |
67 |
68 |
69 |
70 |
71 |
72 |
73 |
74 |
75 |
76 |
77 |
78 |
79 |
80 |
81 |
82 |
83 |
84 |
85 |
86 |
87 |
88 |
89 |
90 |
91 |
92 |
93 |
94 |
95 |
96 |
97 |
98 |
99 |
100 |
101 |
102 |
103 |
104 |
105 |
106 |
107 |
108 |
109 | text/microsoft-resx
110 |
111 |
112 | 2.0
113 |
114 |
115 | System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
116 |
117 |
118 | System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
119 |
120 |
121 | 17, 17
122 |
123 |
--------------------------------------------------------------------------------
/src/WordNet.sln:
--------------------------------------------------------------------------------
1 |
2 | Microsoft Visual Studio Solution File, Format Version 11.00
3 | # Visual Studio 2010
4 | Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "WordNet", "WordNet\WordNet.csproj", "{F4C6C48C-90EF-445D-B8F8-AD9B6767D9A8}"
5 | EndProject
6 | Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "TestApplication", "TestApplication\TestApplication.csproj", "{4CE87CD7-26B9-46AD-B192-C53096B7427D}"
7 | EndProject
8 | Global
9 | GlobalSection(SolutionConfigurationPlatforms) = preSolution
10 | Debug|Any CPU = Debug|Any CPU
11 | Release|Any CPU = Release|Any CPU
12 | EndGlobalSection
13 | GlobalSection(ProjectConfigurationPlatforms) = postSolution
14 | {F4C6C48C-90EF-445D-B8F8-AD9B6767D9A8}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
15 | {F4C6C48C-90EF-445D-B8F8-AD9B6767D9A8}.Debug|Any CPU.Build.0 = Debug|Any CPU
16 | {F4C6C48C-90EF-445D-B8F8-AD9B6767D9A8}.Release|Any CPU.ActiveCfg = Release|Any CPU
17 | {F4C6C48C-90EF-445D-B8F8-AD9B6767D9A8}.Release|Any CPU.Build.0 = Release|Any CPU
18 | {4CE87CD7-26B9-46AD-B192-C53096B7427D}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
19 | {4CE87CD7-26B9-46AD-B192-C53096B7427D}.Debug|Any CPU.Build.0 = Debug|Any CPU
20 | {4CE87CD7-26B9-46AD-B192-C53096B7427D}.Release|Any CPU.ActiveCfg = Release|Any CPU
21 | {4CE87CD7-26B9-46AD-B192-C53096B7427D}.Release|Any CPU.Build.0 = Release|Any CPU
22 | EndGlobalSection
23 | GlobalSection(SolutionProperties) = preSolution
24 | HideSolutionNode = FALSE
25 | EndGlobalSection
26 | EndGlobal
27 |
--------------------------------------------------------------------------------
/src/WordNet/Docs/README.txt:
--------------------------------------------------------------------------------
1 | *********************************************
2 | * *
3 | * WordNet 3.0 API in C# *
4 | * Date: August 20, 2009 *
5 | * Author: Matt Gerber (gerberm2@msu.edu) *
6 | * *
7 | *********************************************
8 |
9 |
10 | LICENSE
11 |
12 | Free. Do whatever you want with it.
13 |
14 |
15 | WARNING
16 |
17 | This API will modify the index.* files that are distributed
18 | with WordNet. These files will be re-sorted for use by the .NET
19 | runtime, whose string sort order differs from that of the Java
20 | runtime. As a result, the Java (and other) APIs/applications might not
21 | function correctly when used with the re-sorted index.* files. You
22 | should create multiple copies of the WordNet data (one for each
23 | runtime) to avoid such problems.
24 |
25 |
26 | COMPILATION
27 |
28 | 1) The WordNet API depends on some libraries that are distributed
29 | separately. To get them, perform a Subversion checkout from the
30 | following URL:
31 |
32 | https://ptl.sys.virginia.edu/msg8u/NLP/Libraries/Public
33 |
34 | 2) Right-click on the WordNet project, select "Properties", and go to
35 | "Build". Change "Output path" to the Public directory that was
36 | checked out in the previous step. Check the box next to "XML
37 | documentation file".
38 |
39 | 3) Right-click on the WordNet project and select "Build".
40 |
41 |
42 | FAQ
43 |
44 | 1) Which version of the WordNet data should I use?
45 |
46 | This software is designed for version 3.0 of the WordNet data
47 | distribution. The Windows tools (e.g., browser) that come with
48 | WordNet are only compatible with version 2.1 of the data. Don't let
49 | this confuse you: you still need to download version 3.0 of the
50 | data in order to use this software. Here's a link:
51 |
52 | http://wordnetcode.princeton.edu/3.0/WNdb-3.0.tar.gz
53 |
54 | The index.* and data.* files should be unzipped to the directory
55 | that is passed to the WordNetEngine constructor.
56 |
57 |
58 | BUGS REPORTS
59 |
60 | Send to gerber.matthew@gmail.com
61 |
--------------------------------------------------------------------------------
/src/WordNet/Properties/AssemblyInfo.cs:
--------------------------------------------------------------------------------
1 | using System.Reflection;
2 | using System.Runtime.CompilerServices;
3 | using System.Runtime.InteropServices;
4 |
5 | // General Information about an assembly is controlled through the following
6 | // set of attributes. Change these attribute values to modify the information
7 | // associated with an assembly.
8 | [assembly: AssemblyTitle("WordNet")]
9 | [assembly: AssemblyDescription("")]
10 | [assembly: AssemblyConfiguration("")]
11 | [assembly: AssemblyCompany("")]
12 | [assembly: AssemblyProduct("WordNet")]
13 | [assembly: AssemblyCopyright("Copyright © 2009")]
14 | [assembly: AssemblyTrademark("")]
15 | [assembly: AssemblyCulture("")]
16 |
17 | // Setting ComVisible to false makes the types in this assembly not visible
18 | // to COM components. If you need to access a type in this assembly from
19 | // COM, set the ComVisible attribute to true on that type.
20 | [assembly: ComVisible(false)]
21 |
22 | // The following GUID is for the ID of the typelib if this project is exposed to COM
23 | [assembly: Guid("3c1df4dc-990a-437c-b735-0beebefaa536")]
24 |
25 | // Version information for an assembly consists of the following four values:
26 | //
27 | // Major Version
28 | // Minor Version
29 | // Build Number
30 | // Revision
31 | //
32 | // You can specify all the values or you can default the Build and Revision Numbers
33 | // by using the '*' as shown below:
34 | // [assembly: AssemblyVersion("1.0.*")]
35 | [assembly: AssemblyVersion("1.0.0.0")]
36 | [assembly: AssemblyFileVersion("1.0.0.0")]
37 |
--------------------------------------------------------------------------------
/src/WordNet/WordNet.csproj:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | Debug
5 | AnyCPU
6 | 9.0.21022
7 | 2.0
8 | {F4C6C48C-90EF-445D-B8F8-AD9B6767D9A8}
9 | Library
10 | Properties
11 | LAIR.ResourceAPIs.WordNet
12 | LAIR.ResourceAPIs.WordNet
13 | v4.0
14 | 512
15 |
16 |
17 | 3.5
18 |
19 | publish\
20 | true
21 | Disk
22 | false
23 | Foreground
24 | 7
25 | Days
26 | false
27 | false
28 | true
29 | 0
30 | 1.0.0.%2a
31 | false
32 | false
33 | true
34 |
35 |
36 |
37 | true
38 | full
39 | false
40 | bin\Debug\
41 | DEBUG;TRACE
42 | prompt
43 | 4
44 | AllRules.ruleset
45 |
46 |
47 | pdbonly
48 | true
49 | ..\..\..\..\Libraries\
50 | TRACE
51 | prompt
52 | 4
53 | ..\..\..\..\Libraries\LAIR.ResourceAPIs.WordNet.XML
54 | AllRules.ruleset
55 |
56 |
57 |
58 | ..\..\lib\LAIR.Collections.dll
59 |
60 |
61 | ..\..\lib\LAIR.Extensions.dll
62 |
63 |
64 | ..\..\lib\LAIR.IO.dll
65 |
66 |
67 |
68 | 3.5
69 |
70 |
71 | 3.5
72 |
73 |
74 | 3.5
75 |
76 |
77 |
78 |
79 |
80 |
81 |
82 |
83 |
84 |
85 |
86 |
87 |
88 |
89 |
90 | False
91 | .NET Framework 3.5 SP1 Client Profile
92 | false
93 |
94 |
95 | False
96 | .NET Framework 3.5 SP1
97 | true
98 |
99 |
100 | False
101 | Windows Installer 3.1
102 | true
103 |
104 |
105 |
106 |
113 |
--------------------------------------------------------------------------------
/src/WordNet/WordNetSimilarityModel.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Collections.Generic;
3 | using System.Linq;
4 | using System.Text;
5 | using LAIR.ResourceAPIs.WordNet;
6 | using LAIR.Collections.Generic;
7 |
8 | namespace LAIR.ResourceAPIs.WordNet
9 | {
10 | ///
11 | /// Provides WordNet-based semantic similarity measures
12 | ///
13 | public class WordNetSimilarityModel
14 | {
15 | #region static members
16 | ///
17 | /// Similarity strategies
18 | ///
19 | public enum Strategy
20 | {
21 | ///
22 | /// Follow the method described by Wu and Palmer (1994): 2 * depth(lcs) / (depth(s1) + depth(s2)). When multiple
23 | /// synsets are available, the most common sense are used.
24 | ///
25 | WuPalmer1994MostCommon,
26 |
27 | ///
28 | /// Follow the method described by Wu and Palmer (1994): 2 * depth(lcs) / (depth(s1) + depth(s2)). When multiple
29 | /// synsets are available, the ones resulting in minimum similarity are used.
30 | ///
31 | WuPalmer1994Minimum,
32 |
33 | ///
34 | /// Follow the method described by Wu and Palmer (1994): 2 * depth(lcs) / (depth(s1) + depth(s2)). When multiple
35 | /// synsets are available, the ones resulting in maximum similarity are used.
36 | ///
37 | WuPalmer1994Maximum,
38 |
39 | ///
40 | /// Follow the method described by Wu and Palmer (1994): 2 * depth(lcs) / (depth(s1) + depth(s2)). When multiple
41 | /// synsets are available, similarity is averaged across all synsets.
42 | ///
43 | WuPalmer1994Average
44 | }
45 | #endregion
46 |
47 | private WordNetEngine _wordNetEngine;
48 |
49 | ///
50 | /// Gets the WordNet engine for this model
51 | ///
52 | public WordNetEngine WordNetEngine
53 | {
54 | get { return _wordNetEngine; }
55 | }
56 |
57 | ///
58 | /// Constructor
59 | ///
60 | /// WordNet engine to use
61 | public WordNetSimilarityModel(WordNetEngine wordNetEngine)
62 | {
63 | _wordNetEngine = wordNetEngine;
64 | }
65 |
66 | ///
67 | /// Gets similarity of two strings using the most common synset for given string/pos pairs
68 | ///
69 | /// First string
70 | /// First POS
71 | /// Second POS
72 | /// Second string
73 | /// Similarity strategy to use
74 | /// Relations to use when computing similarity
75 | /// Similarity
76 | public float GetSimilarity(string string1, WordNetEngine.POS pos1, string string2, WordNetEngine.POS pos2, Strategy strategy, params WordNetEngine.SynSetRelation[] relations)
77 | {
78 | float similarity = 0;
79 |
80 | if (strategy == Strategy.WuPalmer1994Average)
81 | {
82 | // get average similarity across all synsets
83 | int numScores = 0;
84 | foreach (SynSet synset1 in _wordNetEngine.GetSynSets(string1, pos1))
85 | foreach (SynSet synset2 in _wordNetEngine.GetSynSets(string2, pos2))
86 | {
87 | similarity += GetSimilarity(synset1, synset2, strategy, relations);
88 | ++numScores;
89 | }
90 |
91 | if (numScores > 0)
92 | similarity = similarity / (float)numScores;
93 | }
94 | else if (strategy == Strategy.WuPalmer1994Maximum)
95 | {
96 | // get maximum similarity across all synsets
97 | foreach (SynSet synset1 in _wordNetEngine.GetSynSets(string1, pos1))
98 | foreach (SynSet synset2 in _wordNetEngine.GetSynSets(string2, pos2))
99 | {
100 | float currSim = GetSimilarity(synset1, synset2, strategy, relations);
101 | if (currSim > similarity)
102 | similarity = currSim;
103 | }
104 | }
105 | else if (strategy == Strategy.WuPalmer1994Minimum)
106 | {
107 | // get minimum similarity across all synsets
108 | similarity = -1;
109 | foreach (SynSet synset1 in _wordNetEngine.GetSynSets(string1, pos1))
110 | foreach (SynSet synset2 in _wordNetEngine.GetSynSets(string2, pos2))
111 | {
112 | float currSim = GetSimilarity(synset1, synset2, strategy, relations);
113 | if (similarity == -1 || currSim < similarity)
114 | similarity = currSim;
115 | }
116 |
117 | // if we didn't find any synsets, similarity is zero
118 | if (similarity == -1)
119 | similarity = 0;
120 | }
121 | else if (strategy == Strategy.WuPalmer1994MostCommon)
122 | {
123 | // use most common synsets
124 | SynSet synset1 = _wordNetEngine.GetMostCommonSynSet(string1, pos1);
125 | SynSet synset2 = _wordNetEngine.GetMostCommonSynSet(string2, pos2);
126 |
127 | if (synset1 != null && synset2 != null)
128 | similarity = GetSimilarity(synset1, synset2, strategy, relations);
129 | }
130 | else
131 | throw new NotImplementedException("Unimplemented strategy: " + strategy);
132 |
133 | if (similarity < 0 || similarity > 1)
134 | throw new Exception("Invalid similarity: " + similarity);
135 |
136 | return similarity;
137 | }
138 |
139 | ///
140 | /// Gets similarity of two synsets
141 | ///
142 | /// First synset
143 | /// Second synset
144 | /// Strategy to use. All strategies named WuPalmer1994* will produce the same result since only two synsets
145 | /// are available.
146 | /// Synset relations to follow when computing similarity (pass null for all relations)
147 | /// Similarity
148 | public float GetSimilarity(SynSet synset1, SynSet synset2, Strategy strategy, params WordNetEngine.SynSetRelation[] relations)
149 | {
150 | if (relations == null)
151 | relations = Enum.GetValues(typeof(WordNetEngine.SynSetRelation)).Cast().ToArray();
152 |
153 | float similarity = 0;
154 |
155 | if (strategy.ToString().StartsWith("WuPalmer1994"))
156 | {
157 | // get the LCS along the similarity relations
158 | SynSet lcs = synset1.GetClosestMutuallyReachableSynset(synset2, relations);
159 | if (lcs == null)
160 | similarity = 0;
161 | else
162 | {
163 | // get depth of synsets
164 | int lcsDepth = lcs.GetDepth(relations) + 1;
165 | int synset1Depth = synset1.GetShortestPathTo(lcs, relations).Count - 1 + lcsDepth;
166 | int synset2Depth = synset2.GetShortestPathTo(lcs, relations).Count - 1 + lcsDepth;
167 |
168 | // get similarity
169 | similarity = 2 * lcsDepth / (float)(synset1Depth + synset2Depth);
170 | }
171 | }
172 | else
173 | throw new NotImplementedException("Unrecognized strategy");
174 |
175 | if (similarity < 0 || similarity > 1)
176 | throw new Exception("Invalid similarity");
177 |
178 | return similarity;
179 | }
180 | }
181 | }
182 |
--------------------------------------------------------------------------------