Table
of contents
3. Semantic Search facilitation
4. Capturing semantics from
keyword-based search queries
5. Review of WordNet Lexical Database
5.2 General Concepts of Lexical Databases
5.2.1 Lexical and Semantic Data
5.2.2 Synsets as Building Blocks for Semantic Data
5.2.3 Semantic Data for Nouns: Syno-, Anto-, Hypo-
and Mero- Relations
5.2.4 Semantic Data For Adjectives: Clasters,
Gradation
5.4.1 Local and Web Interfaces: Brief Review
5.4.2 PyWordNet Local Interface
6. Integration with Google search engine
via Google WebAPI
6.1 Google Location, History and Main Statistics
7. Description of Semantic Search
Assistant software
7.2. Functionality Description
8. Semantic capturing algorithm and
search query generation
8.1. Generating of the New Query for Single Word
8.1.3. Generating the New Query for Multiword Query
8.1.4. Description of Main Classes and Functions
10. Appendix: work tracing listings
Research within the
project concerns applications of the Semantic Web technology for improving
existing information search systems by adding semantic enabled extensions
(semantic wrappers) that enhance information retrieval from information
systems. Presentation of “semantic-enabled” resources introduces benefits of
the Semantic Web technology: a possibility to perform a semantic search,
integration of heterogeneous data, use of semantically annotated search results
by software.
Some attempts to create a methodology of the semantic
transformation of an initial user’s search query in the form of key words or
key phrases to the resulting query composed of the relevant concepts of the
domain ontology has been already performed in [5]. The methodology was based on
incremental user profiling, which assumes mapping of a user’s keywords to the
concepts of the domain ontology according to the presented transformation
rules. These rules are based on the usage of the rich set of the semantic
relationships comprising subsumption, synonymy, instantiation and meronymy
provided as the DAML+OIL ontology. Transformation algorithm was implemented as
the research prototype as the combined capability of the query transformation
agent and the ontology agent of the intelligent multi-agent information
retrieval mediator.
Semantic
Search Assistant (Facilitator)
is a software, which is an intermediate link between users and internet search
engine. Its purpose is to
Currently, web search is based mainly on matching keywords specified by
users with sought web pages that contain those keywords. Ambiguity of most
word-combinations and phrases, which are used for searching web resources, and
poor linguistic features of available web-content indexing and matching mechanisms
severely affect the results of most internet searchers.
Quality of search results varies greatly depending on quality of the
search query – from too limited set of results (with many important ones
omitted) to a too large number of irrelevant results. For certain cases
specifying a couple of keywords can be enough, if they are really specific and
no ambiguity is possible. On the other hand many web users search for
information that cannot be described easily by a set of keywords, this is due
to wideness of expected results, which cannot be retrieved from existing search
engines just with one search query.
Search Assistant uses
ontologically (WordNet) defined knowledge about words and embedded support of
advanced Google-search query features in order to construct more efficient
queries from formal textual description of searched information. Semantic Search Assistant hides from
users the complexity of query language of concrete search engine and performs
routine actions that most of users do in order to achieve better performance
and get more relevant results.
Figure 1 – Semantic Search Facilitation concept.
While trying to find some information in the Internet through
search engines users are frequently face the problem of getting small percent
of relevant results among irrelevant. The same words can be used in different
senses what leads to outputting search results from unsuitable domain or not in
the meaning that user has in mind. Reformulation the search query sometimes is
not a trivial task, but often it is just enough to make small changes to get
much more accurate answers. Adding other words from the same domain, excluding
the word that is definitely describing the irrelevant part of the results,
replacing words in query by their synonyms – all that can be helpful. But how
to define does the word in query have multiple meanings or not and what are
related words to it? All this information can be extracted from WordNet, a
lexical reference system that was developed by the Cognitive Science Laboratory
at
link: from WN site (http://www.cogsci.princeton.edu/~wn/index.shtml, http://www.cogsci.princeton.edu/~wn/man/wnstats.7WN.html)
and "Introduction to WordNet: An On-line Lexical Database", George A.
Miller ...
WordNet©
is an online lexical reference system whose design is inspired by current psycholinguistic
theories of human lexical memory. WordNet was developed by the Cognitive
Science Laboratory at
Presently
available second version of this lexical database, called WordNet 2.0. It is located
online in the WWW at the website of Princeton University: http://www.cogsci.princeton.edu/~wn
. At the latest version domain specification tools, verb frames, and some other
useful features were added.
WordNet©
is unencumbered, and may be used in commercial applications in accordance with
the included license agreement. WordNet 2.0 is a reserved trademark of a
Current WordNet statistics:
POS |
Unique |
Synsets |
Total Word-Sense Pairs |
Noun Verb Adjective Adverb Totals |
114648 11306 21436 4669 152059 |
79689 13508 18563 3664 115424 |
141690 24632 31015 5808 203145 |
In this section we will briefly
remind some general concepts of building lexical databases, storing lexical and
semantical data, various kinds of associated semantic information depending on
lexical form of the word.
In
the classical dictionaries information about lexical properties and semantic
meaning of the word is given separately in the corresponding places of the word
description. Usually lexical information is given by linking to a normal form
of the word (e.g. singular form for nouns or present tense for verbs, etc.).
The same idea is usually used in the Lexical Databases - the database itself
consists only of normal forms, and also there is some way to get normal form
for any arbitrary word we have.
Semantic
meanings of the word are usually given by natural language description (e.g.
tree _ large, woody, perennial plant with a distinct trunk). Such descriptions
are usually convenient for human reading, but not for machine processing. For
example, we can't automatically find any other thing, what is a plant except
tree. For doing that we must search for the word plant over all definitions,
but there can exist some other meanings of this word (e.g. plant as industry
manufacture). So, in modern computer-based lexical databases semantic data
usually represented by structural relations between words, which have the same
meanings (synonyms), opposite meanings (antonyms), and other kinds of semantic
relations (e.g. "part of"/"consists of" relations,
attribute and functional relations, etc.). One of the main semantic relations
is generality relation. For example, woodpecker is a kind of bird. This
relation means that every structural (consists of beak, wing, tail), attribute
(is a living object) or functional (can fly) properties of the bird is
applicable to woodpecker. Such kind of relations are usually form a
"skeleton", framework for semantic networks, and the same ones are
used for representing semantic data in lexical databases.
Consider
three words with the same meanings, e.g. car, automobile, machine. Every of
these words has some semantic properties, e.g. has wheels. So, if the meanings
of the words are the same, the same is semantics, and we can store semantic
information one time for all this words together. The set of such words is
called synset.
Generally,
synset is a set of synonyms, that is, of words that are interchangeable in some
context. So, words in one synset have the same (or, almost same) semantic properties.
Thats why synsets and semantic relations between synsets are usually used as building
blocks for representing semantics in lexical databases.
link: from "Nouns in WordNet: A Lexical Inheritance System", George
A. Miller
Every
part of speech has its own set of semantic properties. For example, structural relations
("kind of..") is applicable only for nouns, comparative relations
("is more...") only for adjectives, etc.
The
nouns and noun forms are the main framework of every lexical database. E.g. WordNet
v2.0 contains approximately 114,600 noun word forms organized into
approximately 79,600 word meanings (synsets).
This
variety of words usually organized as hierarchy by the structural relations.
One way to construct the hierarchy is to assume that all nouns are stored in a
single tree. If so, the topmost, or most generic level would be semantically
empty. The alternative is to select from all nouns a set of semantic primes - a
(small) number of generic concepts – and to treat each one as a unique beginner
of a separate hierarchy. For example, in WordNet there are 25 such general
groups:
act animal artifact attribute body cognition communication event feeling food group location motive object person phenomenon plant possession process quantity relation shape state substance time |
nouns
denoting acts or actions nouns
denoting animals nouns
denoting man-made objects nouns
denoting attributes of people and objects nouns
denoting body parts nouns
denoting cognitive processes and contents nouns
denoting communicative processes and contents nouns
denoting natural events nouns
denoting feelings and emotions nouns
denoting foods and drinks nouns
denoting groupings of people or objects nouns
denoting spatial position nouns
denoting goals nouns
denoting natural objects (not man-made) nouns
denoting people nouns
denoting natural phenomena nouns
denoting plants nouns
denoting possession and transfer of possession nouns
denoting natural processes nouns
denoting quantities and units of measure nouns
denoting relations between people or things or ideas nouns
denoting two and three dimensional shapes nouns
denoting stable states of affairs nouns
denoting substances nouns
denoting time and temporal relations |
After
choosing such set of basic abstracts we can organize nouns hierarchically using
these abstracts as first-level nodes. Typically depth of hierarchy in WordNet
is 5-6 levels. In terminology of WordNet structural relations are called
Hyponym relations. Hyponymy is transitive and asymmetrical relation between
synsets.
But
besides structural relations there are some other useful semantic
characteristics usually used with nouns. Let’s describe some of them:
·
Synonym relations - similarity of
word meanings. Synonymy is transitive and symmetrical relations. Synonyms form
synsets - basic units of semantic data representation.
·
Antonym relations - opposite
meanings.[1] Antonymy is transitive and symmetrical relations
between synsets.
·
Meronym relations - a "part
of.." relations. The meronymic relation is transitive[2] (with
qualifications) and asymmetrical and can be used to construct a part hierarchy.
Cross-relations
between different parts of speech, such as attributes (noun-to-adjective) or
functional (noun-to-verb), are not considered here.
link: from
"Adjectives in WordNet", Christiane Fellbaum, Derek Gross, and
Katherine Miller
In
every language some linguistic instruments for modifying meaning of nouns are exist.
Usually it's done by special part of speech called adjective. So, lexical
databases must provide a way to store adjectives and their semantic properties.
WordNet v2.0 presently contains approximately 21,400 adjective word forms
organized into approximately 18,500 word meanings (synsets).
WordNet
contains descriptive adjectives (such as big, dry or light) and relational adjectives
(such as wooden, presidential or nuclear). Descriptive adjective is a word that
describes attribute (weight, height, mass, etc.) of a noun word. WordNet
contains pointers between descriptive adjectives and the noun synsets that
refer to the appropriate attributes. Semantic relations between descriptive adjectives
are quite different from ones for nouns. There are no relations like hyponymy
or meronymy, only synonymy and antonymy relations. So, topological structure of
adjectives as a semantic web is not a tree, but rather a set of parallel
hyperplanes.
The
problem here is that the antonymy relations between word forms are not the same
as the conceptual opposition between word meanings. Adjectives that have no
antonyms often have similar meanings to adjectives with antonyms or antonym to
similar adjective is not an antonym to the word itself. So, we can't use
pointers between adjective synsets to represent syn/anto relations. As a tool
for solving this problem, WordNet has different types of antonymy links. There
are direct and indirect antonyms. In WordNet, direct antonyms are represented
by an antonymy pointer, `!->'; indirect antonyms are inherited through
similarity, which is indicated by the similarity pointer, `&->' (e.g.
dirty &-> nasty !-> nice). Finally, a set of all adjectives become a
set of antonymy clusters (Figure 2.1).
Figure 2.1 - Example of Antonymy Clusters for
Adjectives
And
sometimes also there are a whole series of meanings between two antonyms (like astronomical, huge, large, standard, small, tiny, infinitesimal). So, lexical database may
use special marks to store this gradation (in version 2.0 WordNet doesn't
contain such information).
On
the contrary, relational adjectives don't mean an attribute of a noun, but
indicate link to some another noun (like "made of ..", "belongs
to .." etc.). For example, adjective dental makes link to noun tooth, or
adjective wooden makes link to noun wood. Such words are usually stored in
lexical databases via pointers to the corresponding noun. Relational adjectives
have no antonyms, usually have no synonyms and their only semantic property is
a link to the main noun, e.g. astral -> star.
Color adjectives are neither
descriptive nor relational, and usually stored as separate class.
link: from "English Verbs as a Semantic Net", Christiane Fellbaum
Verbs
are very important part of speech, especially in English-like languages, where every
sentence must contain at least one verb (and even may contain no nouns, e.g. “It's raining”). In spite of that,
English language has smaller number of verbs than nouns (as counted in LINK TO
MILLER'S WORK, Collins English Dictionary lists 43,636 different nouns and
14,190 different verbs. Reason of it is a polysemy of verbs: the nouns in
Collins have on the average 1.74 senses, whereas verbs average 2.11 senses.
Currently, WordNet contains over 11,300 verb word forms and approximately
13,500 word meanings (synsets).
Like nouns, all verbs divided
onto some number of separate hierarchy structures. In WordNet they are LINK TO:
Design and Implementation of theWordNet Lexical Database and Searching Softwarey
Richard Beckwith, George A. Miller, and Randee Tengi:
body change cognition communication competition consumption contact creation emotion motion perception possession social stative weather |
verbs
of grooming, dressing and bodily care verbs
of change of size, temperature, intensity, etc. verbs
of thinking, judging, analyzing, doubting, etc. verbs
of telling, asking, ordering, singing, etc. verbs
of fighting, athletic activities, etc. verbs
of eating and drinking verbs
of touching, hitting, tying, digging, etc. verbs
of sewing, baking, painting, performing, etc. verbs
of feeling verbs
of walking, flying, swimming, etc. verbs
of seeing, hearing, feeling, etc. verbs
of buying, selling, owning, and transfer verbs
of political and social activities and events verbs
of being, having, spatial relations verbs
of raining, snowing, thawing, thundering, etc. |
Besides
synonymy and antonymy relations, verbs can have hypernymy and troponymy
relations.
Hypernymy
relation means that one verb describes a way to do something described by
another verb, for example, run is a way to move. Contrary, troponymy relations
have opposite direction: trot, jog, clip, scurry, scamper, skitter, scuttle,
romp, sprint are ways to run. This two kinds of relations help to organize
verbs into tree hierarchy like nouns.
Another
type of relations between verbs is causal relations. These relations take place
if as a result of action described by one verb we take a situation described by
another verb. For example, give implies have, show implies see, etc. WordNet
recognizes only lexicalized causative-resultative pairs. The synonyms of the
members of such pair inherit the causal relation, indicating that this relation
holds between the entire concept rather than between individual word forms
only: the synonyms teach, instruct, educate, for example, are all causative to the concept learn, acquire knowledge.
All
these semantic relations are used in lexical networks likeWordNet for
representing complex semantic information associated with verbs.
“WordNet
is an online lexical reference system whose design is inspired by current psycholinguistic
theories of human lexical memory. English nouns, verbs, adjectives and adverbs
are organized into synonym sets, each representing one underlying lexical
concept. Different relations link the synonym sets”.
So
the basic concept of WordNet is a synonym set (synset). For each word the set of
it's senses is given, in each sense presenting not only this word but also it's
synonyms. So a synset is a list of synonymous words or collocations in defined
sense. Textual description is provided for each synset. For example, there are
two senses for the word “speaker" and each sense has several synonyms:
1.
speaker, talker, utterer, verbalizer, verbaliser - (someone who
expresses in language; someone who talks (especially someone who delivers a
public speech or someone especially garrulous));
2.
loudspeaker, speaker, speaker unit, loudspeaker system, speaker system -
(electro-acoustic transducer that converts electrical signals into sounds loud
enough to be heard at a distance).
Every
word can belong to several syntactic categories (parts of speech) - noun, verb,
adjective or adverb.
Further, depending on syntactic category, each
sense can have different pointers to other synsets:
·
antonym synset
·
hypernym (word is_kind_of smth.)
·
hyponym (smth. is_kind_of word)
·
meronym (smth. is_part_of word)
·
holonym (word is_part_of smth.)
·
etc.
WordNet lexical building blocks
are Word forms - common word orthography, and Word meanings - defined, as was
said, for synsets. Relations can be Lexical – between word forms, and Semantic -
between word meanings. So the pointers are also divided to Lexical _ pertain
only to specific word, and Semantic _ pertain to all of the words in synonym
set (Figure 2.2).
Figure 2.2 - WordNet building blocks
Nouns
and verbs are organized into hierarchies based on the hypernymy / hyponymy relation
between synsets, additional pointers are used to indicate other relations.
Adjectives
arranged in clusters containing head synsets and satellite synsets.
Adverbs
often derived from adjectives, sometimes have antonyms, therefore the synset for
an adverb usually contains a lexical pointer to the adjective from which it is
derived.
Pointers
mainly have a reflection (hyponym to hypernym, holonym to meronym, antonym to
antonym, etc.)
For
now version 2.0 of WordNet is available (for Unix and Windows platforms). It
contains more then 140,000 unique nouns, verbs, adjectives, and adverbs, and
about 115,000 synsets. Also online interface is provided and lots of APIs
designed for different programming languages.
link: from report, WN documentation and Miller's Papers "Introduction to
WordNet" and "Design and Implementation of the WordNet Lexical
Data-base and Searching Software"
WordNet
lexical database itself provides storage of a lexical data. For accessing this data
some kind of WordNet interface should be used[3]. Existing
interfaces can be divided into two different types: Local andWeb interfaces.
Web interfaces are WWW-applications, and provide access to WordNet database via
thin clients technology. So, the user needs to have only web browser to access
such interface. On the contrary, local interfaces are programs that work with
local copies of WordNet data _les and make more speedy and universal access to
WordNet data.
Web
interfaces are more convenient for _one touch_ human use, local ones are more suitable
for large amount of lexical analysis made by computer programs or other
applications with intensive database access.
Local
Interfaces
Let’s
make short review of existing local WordNet interfaces.
.NET
interfaces
·
C# interface to WordNet by Malcolm Crowe.
Located
at http://cis.paisley.ac.uk/crow-ci0/WordNet.zip
COM
interfaces
·
WordNet TreeWalk is COM interface
to WordNet by Bernard Bou.
Located
at http://wncom.sourceforge.net/
dBase/MySQL
interfaces
·
wordnet2sql by Richard Bergmair
is a converter from WordNet files format into MySQL and DB/2 formats.
Located
at http://wordnet2sql.infocity.cjb.net/
Java
interfaces
·
WAP interface to WordNet for use
with mobile phone. Developed by Joris Van den Bogaert.
Located at http://www.esus.com/wapword.html
·
WNJN by Bernard Bou is a
JNI-based Java library for accessing WordNet.
Located at http://wnjn.sourceforge.net/
·
JWNL (Java WordNet Library),
written by John Didion.
Located
at http://sourceforge.net/projects/jwordnet
XML
interfaces
·
Bernard Bou has also written a
Java servlet to be hosted in a Tomcat server container, which delivers XML
output to queries. A DTD is provided to format XML query results.
Located
at http://wnws.sourceforge.net/
PHP
interfaces
·
Simple PHP interface to WordNet
by Mike McDonald.
Located
at http://www.foxsurfer.com/wordnet/
Perl
interfaces
·
Perl extension module for
accessing and manipulating WordNet by Dan Brian.
Located at
http://search.cpan.org/search?dist=Lingua-Wordnet
·
Another Perl interface has been
developed by Jason Rennie at the MIT AI Lab.
Located
at http://www.ai.mit.edu/ jrennie/WordNet/
LISP
interfaces
·
A Common Lisp interface to
WordNet has been developed by Mark Nahabedian at the MIT AI Lab.
Located at http://www.ai.mit.edu/people/naha/ftp/WordNet/WordNet.html
·
Another Lisp interface by Wheeler
Ruml.
Located
at http://www2.parc.com/spl/members/ruml/index.html
Interfaces
for Palm OS
·
PalmPilot reader for WordNet 1.6
was developed by Krzysztof Kowalczyk.
Located at http://www.arslexis.com/
·
A Palm OS electronic dictionary
based on WordNet 1.7 was developed by Alex Hwang.
Located
at http://abstractrd.home.attbi.com/
Interfaces
for OS X
·
A Mac OS X Server and Mac OS X
front end for WordNet 1.6 developed by Erik Doernenburg.
Located at http://www.mulle-kybernetik.com/software/WordNet/
So, you can see that there are a
big variety of WordNet interfaces for different platforms and programming
languages. This allows to use WordNet database in a big diversity of projects.
Web (Remote) Interfaces
Here
we introduce some Web WordNet interfaces.
WEB
Interfaces
·
Frank Hermes has developed a
PHP-based MySQL version of the WordNet database.
Located at http://www.kinxton.com/
·
A "one-touch" interface
to WordNet 2.0 developed by Greg Peterson at Kyoto Notre
Located
at http://poets.notredame.ac.jp/cgi-bin/wn
·
An SQL-based interface developed
by Chris Greaves.
Located at http://vlc.polyu.edu.hk/lexiconindex/
·
Philippe Martin converted WordNet
1.7 nouns into an ontology browsable and exploitable for knowledge
representation and knowledge sharing by the knowledge server WebKB-2.
Located at http://www.webkb.org/
·
A WWW based Python interface to
WordNet developed by Francios Yvon .
Located at http://www.infres.enst.fr/~yvon/Projets/Wapi/
·
A hyper-dictionary, HyperDic
Online, was developed by Eric Kafe.
Located at http://www.hyperdic.net/
And now we present more detailed
review of Python local interfaces for WordNet, one of which was used in SSA
Project.
Programming Language Selection: Python
Python
is interpretation-type programming language, commonly used for cross-platform Web
application with intensive text processing.
PyWordNet vs PyWN
On
the WordNet Website two Python interfaces are now introduced. These are PyWN (a
Python interface to WordNet developed by WordNet employees John Asmuth and
Jesse Fischer) and PyWordNet by Oliver Steele.
PyWordNet
includes both object-oriented and command-line interfaces to the WordNet
database, as well as functions for computing hypernym trees, least common
hypernyms, transitive closures, and other commonly-requested operations.
PyWordNet is a crossplatform interface available for UNIX, Windows and MacOS.
PyWordNet supports version 1.7 of WordNet and also works normally with data files
from WordNet v2.0. So, PyWordNet was choosen as more appropriate for our goals.
PyWordNet
Description
PyWordNet
is a Python interface to the WordNet database of word meanings and lexical
relationships. (A lexical relationship is a relationship between words, such as
synonym, antonym, hypernym, and hyponym).
PyWordNet
is hosted on SourceForge: http://pywordnet.sourceforge.net/. Usage is permitted
under the Artistic License
(http://www.opensource.org/licenses/artistic-license.html).
The
latest version now available is PyWordNet 2.0.
As most users probably know, Google has wide possibilities for
advanced search [4] (like optional searching in title, url, anchor, in
specific file types and so on). However, in this work we will use only basic
enlargements of search query: parentheses and quotation marks for grouping,
logical operators (OR, NOT; AND is used by default) for linking words. The
search string is limited to 10 words. For programmatic using of Google search results
the Google API is available. To access the Google Web APIs service, programmer
must create a Google Account and obtain a license key. This Account and license
key allow 1000 automated queries per day.
Web API has some limitations if to compare with Google online search service (e.g. you cannot get data from Google News, but this limitations has no effect to our work, because we will not use such possibilities.
history
LINK:
http://www.google.com/corporate/tech.html
Google, one of the most powerful full-text[4]
web search engines, nowadays contains information about 4,285,199,000 documents
in the WWW. Web interface for Google can be accessed at http://www.google.com.
Google is not a simple search machine, which takes a set of
keywords and returns a list of relevant web-pages. It has some additional
syntax tools to help user define his search query more precisely. There are:
If Google search engine receives string of keywords to perform
search it takes by default web pages containing all of given words. Thats,
Google boolean default is AND. But Google supports additional tools for
specifying a boolean expression with keywords for additional search
capabilities. Give full description for Google extended syntax, LINK: Google
Hacks, p.3-7.
Google search request strings are not case sensitive. But the
order of keywords in search string is in_uence to the ordering of search
results. Search string is bounded by maximum 10 keywords.
This section describes the main points of Google Web API Service, its functionality and format of returned results.
Picture
4.1 - Exchanging SOAP packets between the client and Google Web Services
As functionality of Google search service is widely used
Google creators decided to produce a legal mechanism for accessing it.
...Developers write software programs that connect remotely to
the Google Web APIs service Communication is performed via the Simple Object
Access Protocol (SOAP), an XML-based mechanism for exchanging typed information.
What Functionality Comes With Google Web APIs?
Developers can issue search requests to Google's index of more
than 4 billion web pages and receive results as structured data.
Google Web APIs support the same search syntax as the
Google.com site.
Limitations of Google APIs:
Requests Search requests submit a query string and a set of
parameters to the Google Web APIs service and receive a set of search results.
Cache requests submit a URL to the Google Web APIs service and
receive the contents of the URL when Google's crawlers last visited the page
(if available).
Spelling requests submit a query to the Google Web APIs
service and receive a suggested spell correction for the query (if available).
Requests: Additional Commands
Search Results Format
Search Response Search response you get each time after search
request
It contains:
Search Results Format: Result Element
<fullViewableName> - Text, containing
the ODP directory name for the current ODP category
<specialEncoding>
- Specifies the encoding scheme of the directory information
ODP - Open Directory Project is the largest, most
comprehensive human-edited directory of the Web It is constructed and
maintained by a vast, global community of volunteer editors.
The purpose of
Semantic Search Assistant (SSA) programming complex is to help user in document
search in the web. It is not the search engine, but the assistant in using another
standard search engines. It helps to specify the semantics of the search query
that fundamentally differ it from others.
All search
engines available in the Internet for now does not take in account the semantic
meaning of the queries. For them words in the query is just a sequence of
letters, that should appear (or not to appear) in the document. Of course,
usually, complex conjunction with logical operators (like AND, OR, NOT), words
grouping and some other (or even lots of) advanced search options are possible,
but still they have nothing common with notional meaning of query.
By using SSA
program user can tune the query in accordance with his needs. Used algorithms
allow to give him smart hints about improving search query to get more relevant
results, to narrow number of obtained documents or, in opposite, to enlarge it.
But the main SSA task is to specify in what exact meaning word in query are
used and formulate the "question" to search engine in the way to
exclude answers from inappropriate domain and also to add semantically similar
results. For example, if user is looking for hotel reservation agency by using
only standard search engine he will get only results that contain exactly these
words, but SSA also will suggest using word booking along with reservation, by
what, as we will see further, omitting of needed links will be avoided.
Programming complex - Semantic Search Assistant - is composed
from six main blocks (Figure 2). They are:
1.
Semantic search User Interface
User interface of
Semantic Search Assistant allows user to enter queries with simple description
of searched resource, to configure search parameters and is used for
interactive specification of the query semantics. As an input data human must
provide context words defining the purpose of his search. It requires filling
some forms, specifying attributes of the concepts defining the search, avoiding
ambiguities through dialog forms, etc. This part of the Semantic Search
Assistant outputs input search query in semantic form, based on ontology.
Semantic query is passed to Google query generator. Results, obtained by Semantic Search
Assistant (received from Search result integrator) are presented to the user.
2.
Google Access (Integration with Google)
Semantic Search
Assistant uses Google API to query Google search engine with supported by it
query language and access programmatically the results of searches.
Implementation of wrapper (adapter) for accessing Google is one of development
tasks.
3.
Google Search Query Generator
Textual descriptions
(query strings) provided to Semantic Search Assistant are processed using
WordNet ontologies that capture word meanings and relations between keywords
and then converted into series of Google-queries taking into account keyword
semantics and using advanced search features provided by Google; generated
should return better results than if keywords are used directly.
4.
Search result integrator
Search results
obtained from search engine can be preprocessed by Semantic Search Assistant
before returned to the user and more relevant results can be selected. Minimal
integration subsumes removing redundant results, grouping results accordingly
their location and/or providing quick navigation through obtained results;
5.
WordNet Access
Set of algorithms to
manipulate and perform most common tasks (search, information extraction) on
ontology used by Semantic Search Assistant;
6.
Sense Processor,
which defines the
sense of words in search query if polysemantic interpretation is possible. This
determination is used for narrowing the choice from plenty of sense
combinations. Combination choice algorithm is based on analyzing the
intersected items for different words in search query. Intersections can be
found, for example, in definition of words, in their synsets, or in definitions
of some pointer type for words (e.g. in upper level hypernym).
7.
Search Preferences Processor,
which interprets user's preferences for the query;
Figure 2 – Structure of Semantic Search Assistant.
The main idea
of changing initial user search query is, from one hand, to add more synonyms
for the search word that characterize the query more precisely, from the other hand
- to exclude such synonyms that characterize another sense of the word. For
example, if user is looking for “mouse” and has in mind “computer mouse”, we
can add synonyms from sense that means “device” and exclude synonyms from sense
“animal”.
To know which
synonyms of initial word should be added to the new query and which have to be
excluded we should have some numeric value for each synonym. Let’s call this value
as Q
- the quality of the synonym.
Assume we have
search query from w words. For the i-th (i = 1;w) word there are pi senses
in WordNet. Let Rij (j = 1; pi) be a measure of relevance of this particular
sense to the query, R = [-1; 1]. Value R = -1 says that this sense has nothing
common with user's query domain, R = 1 - that user has means exactly this sense
of the word. Other intermediate values mean the measure of con_dence for the
sense that this word is used in this sense.
Default values
of R can be de_ned by Sense Processor (by methods described in previous
section) and can be manually customized by user. Through graphical interface user
can see the list of all senses for each word from the search query and chose
relevances using sliders.
Let j-th sense
of i-th word has mij synonyms in synset, and each (k-th) synonym has Nijk
senses (k = 1;mij).
Let Qijk be a
quality for k-th synonym in j-th sense of i-th word.
This is a
heuristic formula with such meaning of components: quality of synonym is directly
proportional to the relevance R for the sense, to which this synonym is
included, and inversely proportional to number of senses N for this synonym,
because the bigger is N, the wider number of documents (from more vague areas)
we will get if we add this synonym to the query. In such way we give preference
to more well-defined synonyms.
If the word was
not found in WordNet database, value of relevance R and value of N for it are
automatically initialized as 1. So the total quality will have maximum possible
value equal to 1. This choice can be explained in such way: if WordNet doesn't
contain some word from user query, it can be some specific term or expression,
and it must be definitely included as is into new query.
For each word
in search query we obtain the set of Q values. For one word some synonyms can
be duplicated (if such synonym is present in several synsets for the word) with
different values of Q. So, for the same synonym we take the average between all
its Q's. In this way initial word (as it is contained in all synsets) can be
included to new generated query or not (if, for example, in result quality
negative (irrelevant) senses of the word will prevail over positive senses).
After that we
sort Q's of synonyms for each word in query by decreasing of |Qijk| value. If
we have a threshold for Q, all synonyms with |Q| < threshold will not be taken into account. Setting the threshold
allows to ignore some synonyms with low value of quality (from both sides close
to zero relevance word has senses that don't characterize query anyhow, neither
like in correct sense, nor like in incorrect, so we should not include such
synonyms to new query, but also should not negate them, just ignore).
If there is
only one word in search query, first 10 words from sorted array of Q's may be
placed in new query. Restriction to 10 words is caused by Google limitation to query
length; this number can be changed as a parameter and widely used when we have multiword
query. If there are several words in synonym (collocation as a synonym) they
all are counted, so in the result query we have not 10 different synonyms but
set of synonyms with total number of single separate words equal to 10.
Synonyms with positive value of Q are delimited in query by OR sign, with
negative Q - by AND NOT sign (in Google negation signed by putting minus before
negated word). At least one synonym with positive Q must be included to the
formed query, because query with only negated words doesn't make any sense and
even not processed by Google (Google returns empty result for such query).
If there are
several words in the initial query, we create such an array of Q's for each word
and then select synonyms with top Q's in total number of 10 words
(approximately equal number for each initial word).
Synonym sets of
different initial words are delimited by AND sign.
User can
correct parameters and refresh query to get more relevant results. Each refreshing
is changing the synonym with lowest |Q| (in query) from previous query with synonym
that has next value of |Q| from all set.
This work is
still in progress and efficiency of presented approach is now studied.
The main
classes of programm are WordFunc and SeveralWordsFunc (they are determined in files
WordFunc.py and SeveralWordsFunc.py correspondingly).
Class WordFunc
is used for creating an object that represents a single query word.
It has the
following fields:
Class
SeveralWordsFunc is used for creating an object that represents a multiword search
query. It has the following fields:
Main functions
of class WordFunc and their descriptions are listed below. Parameter self is always present as first argument
of Python class functions and points to passed object.
Sets new value to word, syntcategory and synsets_offsets
Returns value of field word.
Returns value of field syntcategory.
Returns value of field synsets_offsets.
Returns list of possible syntactic categories for the word, e.g.
['noun','verb'].
Returns list of possible syntactic categories for the
word, given in parameters, e.g. ['noun', 'adj']
Returns all synsets for the word in predefined
syntcategory in format list of lists, e.g. for word dog as noun, we will get
[['dog', 'domestic dog', 'Canis familiaris'], ['frump', 'dog'], ['dog'],
['cad', 'bounder', 'blackguard', 'dog', 'hound', 'heel'], ['frank', 'frankfurter',
'hotdog', 'hot dog', 'dog', 'wiener', 'wienerwurst', 'weenie'], ['pawl', 'detent',
'click', 'dog'], ['andiron', 'firedog', 'dog', 'dog-iron']].
Gets number of synsets for the word (integer), based on WordNet database.
Gets only one concrete synset (with number
synset_number) from all possible synsets (of this word), returns result in list
of strings (e.g. ['dog', 'domestic dog', 'Canis familiaris'] )
Gets all possible pointers of word (concrete) sense,
returns result in structured dictionary
{pointer_type1:
[['w1','w2','w3'],[...],[...]],
pointer_type2:
[['w1','w2','w3'],[...],[...]],
...
},
e.g.
{'hypernym': [['canine', 'canid']], 'part holonym': [['_ag']], 'member
meronym': [['Canis', 'genus Canis'], ['pack']], 'hyponym': [['pooch', 'doggie',
'doggy', 'barker', 'bow-wow'], ['cur', 'mongrel', 'mutt'], ['lapdog'], ['toy
dog', 'toy'], ['hunting dog'], ['working dog'], ['dalmatian', 'coach dog',
'carriage dog'], ['basenji'], ['pug', 'pug-dog'], ['Leonberg'],
['Newfoundland'], ['Great Pyrenees'], ['spitz'], ['griffon', 'Brussels griffon',
'Belgian griffon'], ['corgi', 'Welsh corgi'], ['poodle', 'poodle dog'],
['Mexican hairless']]}
Gets for concrete word sense lists of words, that are
related to word sense with pointer_type relation, returns list of lists:
[['w1','w2','w3'],[...],[...]]
Returns description of word sense (number of sense is
given in parameters) in string format. Description includes gloss (definition)
and examples for the word (with sense number sense_number).
Gets definition of word (with sense number
sense_number). Returns list from one element: ['string'] (strange returning
type is for universal type of word relation).
Gets definitions for all word senses, returns result in format list of
lists.
Gets all examples for the word sense (with number sense_number) in one
string:
'"example1"; "example2"; "example3"; ...'.
Counts, how many times each key word (kword) is
present in extended_pointer_type relation (e.g. in definition) of the word.
Returns dictionary: {'kword0':num0, 'kword1':num1, ...}.
Finds values of quality for all word synonyms (in all
senses). Parameters:
relevance_list - list with numbers in range [-1,1],
values are captured from user interface, len(relevance_list) should be equal to
number of senses for word. Returns list of lists. E.g. [[abs(q1), 'cat', q1,
n1], [abs(q2), 'big lion', q2, n2], [abs(q3), 'animal', q3, n3]], where q is a float
number, n is integer - number of words in collocation (for single word =1).
Forms the search query string for Google from q_list.
Parameters:
q_list in format [[abs(q1), 'syn1', q1], [abs(q2),
'syn2', q2], ..., [abs(qn), 'synn', qn]]; q is a float number;
selecting_num - how many words should be selected
from q_list to be included in query string;
Step - is needed for refreshment, set the offset from
the beginning of q_list.
Accessory
functions of class WordFunc are used by main functions. They are listed below.
They have private access.
Class constructor. Initializes field word of class by
its basic form based on given parameter, sets syntactic category and synsets' offsets.
Finds base form of given word (on the grounds of
WordNet database) and syntcategory for it.
Finds and sets synsets offsets for the word (from
WordNet database). If word is not in WordNet Data base, synsets offsets is
empty.
Check if syntcategory is defined properly. Valid values are 'noun',
'adj', 'verb', 'adv'.
Chooses from all possible syntcategories of the word first
one by priorities. Order of priorities is following: noun has the biggest
priority, then adjective, then verb, and adverb is the last one. Priorities are
given in global variable sc_names_dict_priority.
Sets new value to syntcategory from given parameter.
Converts unformated_synset from string raw format to
list. E.g. one synset from getSynset(pos,o_set): {noun: dog, domestic dog,
Canis familiaris} to ['dog', 'domestic dog', 'Canis familiaris'], or: {verb:
consume, ingest, take in, take, have} to ['consume', 'ingest', 'take in',
'take', 'have'].
Converts unformatted_pointer from raw string to name
of pointer and list. Returns two values: pointer type as string and list. E.g.
from 'member meronym -> {noun: pack}' to 'member meronym' and ['pack'];
from' hyponym -> {noun: dalmatian, coach dog, carriage dog}' to 'hyponym'
and ['dalmatian', 'coach dog', 'carriage dog']
Appends new pointer type to the list or other words
to presenting in list pointer type.
Parameters:
word_sense_pointers - dictionary of lists:
{pointer_type1: [['w1','w2','w3'],[...],[]],
pointer_type2: [[],[],[]], ...}
new_pointer - string (or predefined constant, e.g.
HYPONYM)
new_pointer_list - list of strings.
Output for command print obj, where obj is
object of WordFunc class. Produces formatted text - word description.
Returns synset with number synset_number not in formatted list, but just
as string.
1)
set all string str to lower case;
2)
eliminate punctuation marks (defined
in punctuation_list);
3)
split string by ' ' (space);
4)
eliminate all words with less then
3 letters.
Returns list of strings (with result words).
Counts, how many times each key word (kword) is
present in list. List contains strings (words). Returns dictionary:
{'kword0':num0, 'kword1':num1, ...}.
Finds number of senses for the word.
Finds number of senses for single word wrd. Returns integer value.
Transforms list of words and collocations to
dictionary with value of senses number for each word/collocation in the list.
This number is taken from WordNet. E.g. ['one', 'two', 'three times'] to {'one':
5, 'two': 4, 'three times': 2}.
Transforms all collocations from collist to separate
words, eliminates duplicated words. Returns list of words, e.g. from ['cat',
'Arabian tea', 'African tea'] to ['cat', 'Arabian', 'tea', 'African'].
Deletes from q_list all elements with abs(q)
(quality) < threshold. Returns list of lists. E.g. [[abs(q1), 'cat', q1,
n1], [abs(q2), 'big lion', q2, n2], [abs(q3), 'animal', q3, n3]], where q is a float
number, n is integer - number of words in collocation (for single word =1),
([abs(q2), 'big lion', q2, 2])
Generates combination with number step with selecting_num
words (collocations) from q_list. Parameters:
q_list in format [[abs(q1), 'syn1', q1, n1],
[abs(q2), 'syn2', q2, n2], ..., [abs(qn), 'synn', qn, nn]],
q is a float number;
selecting_num - how many words should be selected
from q_list to be included in query string threshold - float number - minimum
value of q that can be present for word (collocation) in q_list. Returns list
of lists in the same format as q_list.
Serving function for _selectWordsForQuery.
Checks selected subset of synonyms:
1)
to have at least 1 with non
negative q
2)
to have correct number of words
Returns 1 (if correct), 0 - otherwise.
Description of
main functions for class SeveralWordsFunc is following.
Gets value of field wordfunc_objects_list.
Gets value of field
words_full_info_dict.
Gets value of field
words_full_stat_intersection_dict.
Gets value of field
words_reduced_stat_intersection_dict.
Forms the final search query. Parameters:
relevance_lists - list of lists (with relevance
indexes [-1,1]),
step - integer, indicates the number of generated
query (0 is the initial query, 1 is the first reformulated, 2 is the second and
so on),
threshold - float, minimum value of q that can be present for word (collocation)
in q_list,
length_limit is maximum possible number of words in search query.
Returns search query as a string.
Accessory functions of class
SeveralWordsFunc are listed below. They are used only by main functions for
this class and have private access modifier.
Constructor of the class, initializes _elds word_list and
wordfunc_objects_list.
Fills full info about
each word in word_list, is called by constructor.
Finds intersected part
of to variables with type dictionary. If
dict1 = {'w1':num1, 'w2':num2, ...}
dict2
= {'w4':num4, 'w5':num5, ...}
(nums are integer >= 0)
Returns dictionary with keys, that are common in
dict1, dict2, and numbers for that keys are equal to
min(dict1['common_key'],dict2['common_key']).
E.g.
dict1 = {'sea':3, 'boat':1, 'gull':2, 'rain':2}
dict2={'gull':4, 'penguin':8, 'sea':5}
Returns {'gull':2, 'sea':3}.
Finds and returns intersection for senses dictionary
in format of words_full_info_dict[word]. Differences from _dictIntersection:
synset_offset can be integer or tuple.
Fills words_full_stat_intersection_dict with full
statistics about intersection in all word pairs, triplets and so on.
Format: the same as words_full_info_dict, but instead
of w0, w1, ... are tuples (pairs, triplets, ...), synset_offset is a tuple
(with numbers of correspondent sense for the word).
Fills
words_full_stat_intersection_dict (for k words-combination).
Finds and sets new value
for the field words_reduced_stat_intersection_dict.
Representation for printing
of reduced intersection statistics for words in query string.
Representation for printing of class object. Includes
complete information about all object fields in readable form.
Finds how many synonyms (words) has to be included to
the search query for each word. Returns list of integers - each number means
how many synonyms (words) will be included to the search query for the
correspondent word.
[1]. WordNet,
http://www.cogsci.princeton.edu/~wn/
[3]. V. Pallotta, Introduction to
WordNet. 2001. http://santana.unimuenster.de/Seminars/
WordNetHS_WS02/Texte/Pallotta01WordNet.pdf
[4].
T. Galishain, R. Dornfest, Google Hacks: 100 Industrial-Strength Tips
& Tools. O'Reilly, 2003.
[5].
Ermolayev, V., Keberle, N.,
Plaksin, S., Vladimirov, V., Capturing Semantics from Search Phrases:
Incremental User Personification and Ontology-Driven Query Transformation. In:
Proc. of the 2-nd Int. Conf. on Information Systems Technology and its
Applications (ISTA'2003), Kharkiv, Ukraine, June 19-21, 2003, pp. 9-20, LNI
Series, ISBN 3-88579-359-8.
-------------------------------------------------------------------
SEARCH QUERY ['girl', 'boy', 'child', 'man']
girl (noun)
0. ['girl', 'miss', 'missy', 'young lady', 'young woman', 'fille']
Definition: a young woman
Examples: "a young lady of 18"
1. ['female child', 'girl', 'little girl']
Definition: a youthful female person
Examples: "the baby was a girl" ; "the girls were just learning to ride a tricycle"
2. ['daughter', 'girl']
Definition: a female human offspring
Examples: "her daughter cared for her in her old age"
3. ['girlfriend', 'girl', 'lady friend']
Definition: a girl or young woman with whom a man is romantically involved
Examples: "his girlfriend kicked him out"
4. ['girl']
Definition: a friendly informal reference to a grown woman
Examples: "Mrs. Smith was just one of the girls"
boy (noun)
0. ['male child', 'boy']
Definition: a youthful male person
Examples: "the baby was a boy" ; "she made the boy brush his teeth every night" ; "most soldiers are only boys in uniform"
1. ['boy']
Definition: a friendly informal reference to a grown man
Examples: "he likes to play golf with the boys"
2. ['son', 'boy']
Definition: a male human offspring
Examples: "their son became a famous judge" ; "his boy is taller than he is"
3. ['boy']
Definition: (ethnic slur) offensive term for Black man
Examples: "get out of my way, boy"
child (noun)
0. ['child', 'kid', 'youngster', 'minor', 'shaver', 'nipper', 'small fry', 'tiddler', 'tike', 'tyke', 'fry', 'nestling']
Definition: a young person of either sex
Examples: "she writes books for children" ; "they're just kids" ; "`tiddler' is a British term for youngsters"
1. ['child', 'kid']
Definition: a human offspring (son or daughter) of any age
Examples: "they had three children" ; "they were able to send their kids to college"
2. ['child', 'baby']
Definition: an immature childish person
Examples: "he remained a child in practical matters as long as he lived" ; "stop being a baby!"
3. ['child']
Definition: a member of a clan or tribe
Examples:
"the children of
man (noun)
0. ['man', 'adult male']
Definition: an adult male person (as opposed to a woman)
Examples: "there were two women and six men on the bus"
1. ['serviceman', 'military man', 'man', 'military personnel']
Definition: someone who serves in the armed forces ; a member of a military force
Examples: "two men stood sentry duty"
2. ['man']
Definition: the generic use of the word to refer to any human being
Examples: "it was every man for himself"
3. ['world', 'human race', 'humanity', 'humankind', 'human beings', 'humans', 'mankind', 'man']
Definition: all of the inhabitants of the earth
Examples: "all the world loves a lover" ; "she always used `humankind' because `mankind' seemed to slight the women"
4. ['homo', 'man', 'human being', 'human']
Definition: any living or extinct member of the family Hominidae
Examples:
5. ['man']
Definition: a male subordinate
Examples:
"the chief stationed two men outside the building" ; "he awaited
word from his man in
6. ['man']
Definition: an adult male person who has a manly character (virile and courageous competent)
Examples: "the army will make a man of you"
7. ['man']
Definition: a male person who plays a significant role (husband or lover or boyfriend) in the life of a particular woman
Examples: "she takes good care of her man"
8. ['valet', 'valet de chambre', 'gentleman', "gentleman's gentleman", 'man']
Definition: a manservant who acts as a personal attendant to his employer
Examples: "Jeeves was Bertie Wooster's man"
9. ['Man', '
Definition:
one of the
Examples:
10. ['man', 'piece']
Definition: game equipment consisting of an object used in playing certain board games
Examples: "he taught me to set up the men on the chess board" ; "he sacrificed a piece to get a strategic advantage"
INTERSECTIONS for ['girl', 'boy', 'child', 'man']:
('child', 'man')
(3, 1)
definition: {'member': 1}
(3, 4)
definition: {'member': 1}
(0, 0)
definition: {'person': 1}
(0, 6)
definition: {'person': 1}
(0, 7)
definition: {'person': 1}
(2, 6)
definition: {'person': 1}
(2, 7)
definition: {'person': 1}
(2, 0)
definition: {'person': 1}
(1, 2)
definition: {'human': 1}
('girl', 'child')
(1, 2)
synonym: {'child': 1}
definition: {'person': 1}
(2, 1)
definition: {'offspring': 1, 'human': 1}
(1, 1)
synonym: {'child': 1}
(3, 0)
definition: {'young': 1}
(1, 0)
synonym: {'child': 1}
definition: {'person': 1}
(0, 0)
definition: {'young': 1}
(1, 3)
synonym: {'child': 1}
('boy', 'man')
(0, 0)
synonym: {'male': 1}
definition: {'person': 1, 'male': 1}
(0, 6)
definition: {'person': 1, 'male': 1}
(0, 7)
definition: {'person': 1, 'male': 1}
(0, 5)
definition: {'male': 1}
(2, 5)
definition: {'male': 1}
(2, 6)
definition: {'male': 1}
(2, 7)
definition: {'male': 1}
(2, 0)
definition: {'male': 1}
(2, 2)
definition: {'human': 1}
('girl', 'man')
(3, 0)
definition: {'woman': 1}
(3, 7)
definition: {'woman': 1}
(0, 0)
definition: {'woman': 1}
(0, 7)
definition: {'woman': 1}
(4, 7)
definition: {'woman': 1}
(4, 0)
definition: {'woman': 1}
(2, 2)
definition: {'human': 1}
(1, 0)
definition: {'person': 1}
(1, 7)
definition: {'person': 1}
(1, 6)
definition: {'person': 1}
('girl', 'boy', 'child', 'man')
(1, 0, 0, 7)
definition: {'person': 1}
(1, 0, 0, 6)
definition: {'person': 1}
(1, 0, 0, 0)
definition: {'person': 1}
(2, 2, 1, 2)
definition: {'human': 1}
(1, 0, 2, 7)
definition: {'person': 1}
(1, 0, 2, 6)
definition: {'person': 1}
(1, 0, 2, 0)
definition: {'person': 1}
('boy', 'child')
(2, 1)
definition: {'offspring': 1, 'human': 1}
(0, 2)
synonym: {'child': 1}
definition: {'person': 1}
(0, 3)
synonym: {'child': 1}
(0, 0)
synonym: {'child': 1}
definition: {'person': 1}
(0, 1)
synonym: {'child': 1}
('girl', 'boy', 'child')
(1, 0, 2)
synonym: {'child': 1}
definition: {'person': 1}
(1, 0, 3)
synonym: {'child': 1}
(1, 0, 0)
synonym: {'child': 1}
definition: {'person': 1}
(1, 0, 1)
synonym: {'child': 1}
(2, 2, 1)
definition: {'offspring': 1, 'human': 1}
('girl', 'boy')
(3, 3)
definition: {'man': 1}
(3, 1)
definition: {'man': 1}
(4, 1)
definition: {'reference': 1}
(1, 0)
synonym: {'child': 1}
definition: {'person': 1}
(2, 2)
definition: {'offspring': 1, 'human': 1}
('boy', 'child', 'man')
(0, 0, 0)
definition: {'person': 1}
(0, 0, 7)
definition: {'person': 1}
(0, 0, 6)
definition: {'person': 1}
(0, 2, 7)
definition: {'person': 1}
(0, 2, 6)
definition: {'person': 1}
(0, 2, 0)
definition: {'person': 1}
(2, 1, 2)
definition: {'human': 1}
('girl', 'boy', 'man')
(1, 0, 0)
definition: {'person': 1}
(1, 0, 6)
definition: {'person': 1}
(1, 0, 7)
definition: {'person': 1}
(2, 2, 2)
definition: {'human': 1}
('girl', 'child', 'man')
(1, 0, 0)
definition: {'person': 1}
(1, 0, 6)
definition: {'person': 1}
(1, 0, 7)
definition: {'person': 1}
(1, 2, 0)
definition: {'person': 1}
(1, 2, 6)
definition: {'person': 1}
(1, 2, 7)
definition: {'person': 1}
(2, 1, 2)
definition: {'human': 1}
-------------------------------------------------------------------
SEARCH QUERY ['zodiac', 'fish', 'scorpion']
zodiac (noun)
0. ['zodiac']
Definition: a belt-shaped region in the heavens on either side to the ecliptic ; divided into 12 constellations or signs for astrological purposes
Examples:
1. ['zodiac']
Definition: (astrology) a circular diagram representing the 12 zodiacal constellations and showing their signs
Examples:
fish (noun)
0. ['fish']
Definition: any of various mostly cold-blooded aquatic vertebrates usually having scales and breathing through gills
Examples: "the shark is a large fish" ; "in the livingroom there was a tank of colorful fish"
1. ['fish']
Definition: the flesh of fish used as food
Examples:
"in
2. ['Pisces', 'Fish']
Definition: (astrology) a person who is born while the sun is in Pisces
Examples:
3. ['Pisces', 'Pisces the Fishes', 'Fish']
Definition: the twelfth sign of the zodiac ; the sun is in this sign from about February 19 to March 20
Examples:
scorpion (noun)
0. ['Scorpio', 'Scorpion']
Definition: (astrology) a person who is born while the sun is in Scorpio
Examples:
1. ['Scorpio', 'Scorpio the Scorpion', 'Scorpion']
Definition: the eighth sign of the zodiac ; the sun is in this sign from about October 23 to November 21
Examples:
2. ['scorpion']
Definition: arachnid of warm dry regions having a long segmented tail ending in a venomous sting
Examples:
INTERSECTIONS for ['zodiac', 'fish', 'scorpion']:
('zodiac', 'scorpion')
(1, 1)
definition: {'sign': 1}
(0, 2)
definition: {'region': 1}
(1, 0)
definition: {'astrology': 1}
(0, 1)
definition: {'sign': 1}
('zodiac', 'fish', 'scorpion')
(1, 2, 0)
definition: {'astrology': 1}
(1, 3, 1)
definition: {'sign': 1}
(0, 3, 1)
definition: {'sign': 1}
('zodiac', 'fish')
(1, 2)
definition: {'astrology': 1}
(0, 3)
definition: {'sign': 1}
(1, 3)
definition: {'sign': 1}
('fish', 'scorpion')
(3, 1)
definition: {'sun': 1, 'zodiac': 1, 'sign': 2}
(3, 0)
definition: {'sun': 1}
(2, 0)
definition: {'person': 1, 'sun': 1, 'who': 1, 'born': 1, 'while': 1, 'astrology': 1}
(2, 1)
definition: {'sun': 1}
-------------------------------------------------------------------
SEARCH QUERY ['cork', 'mouse', 'pad']
cork (noun)
0. ['cork']
Definition: outer bark of the cork oak ; used for stoppers for bottles etc.
Examples:
1. ['phellem', 'cork']
Definition: (botany) outer tissue of bark ; a protective layer of dead cells
Examples:
2. ['
Definition:
a port city in southern
Examples:
3. ['cork']
Definition: the plug in the mouth of a bottle (especially a wine bottle)
Examples:
4. ['bob', 'bobber', 'cork', 'bobfloat']
Definition: a small float usually made of cork ; attached to a fishing line
Examples:
mouse (noun)
0. ['mouse']
Definition: any of numerous small rodents typically resembling diminutive rats having pointed snouts and small ears on elongated bodies with slender usually hairless tails
Examples:
1. ['mouse', 'computer mouse']
Definition: a hand-operated electronic device that controls the coordinates of a cursor on your computer screen as you move it around on a pad ; on the bottom of the mouse is a ball that rolls on the surface of the pad
Examples: "a mouse takes much more room than a trackball"
pad (noun)
0. ['pad', 'pad of paper', 'tablet']
Definition: a number of sheets of paper fastened together along one edge
Examples:
1. ['pad']
Definition: the large floating leaf of an aquatic plant (as the water lily)
Examples:
2. ['pad', 'inkpad', 'inking pad', 'stamp pad']
Definition: a block of absorbent material saturated with ink ; used to transfer ink evenly to a rubber stamp
Examples:
3. ['pad']
Definition: a usually thin flat mass of padding
Examples:
4. ['launching pad', 'launchpad', 'launch pad', 'launch area', 'pad']
Definition: a platform from which rockets or space craft are launched
Examples:
5. ['diggings', 'digs', 'domiciliation', 'lodgings', 'pad']
Definition: temporary living quarters
Examples:
6. ['pad']
Definition: the foot or fleshy cushion-like underside of the toes of an animal
Examples:
INTERSECTIONS for ['cork', 'mouse', 'pad']:
('cork', 'mouse')
(4, 0)
definition: {'small': 1}
-------------------------------------------------------------------
SEARCH QUERY ['rock', 'music']
rock (noun)
0. ['rock', 'stone']
Definition: a lump or mass of hard consolidated mineral matter
Examples: "he threw a rock at me"
1. ['rock', 'stone']
Definition: material consisting of the aggregate of minerals like those making up the Earth's crust
Examples:
"that mountain is solid rock" ; "stone is abundant in
2. ['Rock', 'John Rock']
Definition:
Examples:
3. ['rock']
Definition: (figurative) someone who is strong and stable and dependable
Examples: "he was her rock during the crisis" ; "Thou art Peter, and upon this rock I will build my church"--Gospel According to Matthew
4. ['rock candy', 'rock']
Definition: hard stick bright-colored stick candy typically peppermint flavored
Examples:
5. ["rock 'n' roll", "rock'n'roll", 'rock-and-roll', 'rock and roll', 'rock', 'rock music']
Definition: a genre of popular music originating in the 1950s ; a blend of Black rhythm-and-blues with White country-and-western
Examples: "rock is a generic term for the range of styles that evolved out of rock'n'roll."
6. ['rock', 'careen', 'sway', 'tilt']
Definition: pitching dangerously to one side
Examples:
music (noun)
0. ['music']
Definition: an artistic form of auditory communication incorporating instrumental or vocal tones in a structured and continuous manner
Examples:
1. ['music', 'euphony']
Definition: any agreeable (pleasing and harmonious) sounds
Examples: "he fell asleep to the music of the wind chimes"
2. ['music']
Definition: musical activity (singing or whistling etc.)
Examples: "his music was his central interest"
3. ['music']
Definition: (music) the sounds produced by singers or musical instruments (or reproductions of such sounds)
Examples:
4. ['music', 'medicine']
Definition: punishment for one's actions
Examples: "you have to face the music" ; "take your medicine"
INTERSECTIONS for ['rock', 'music']:
('rock', 'music')
(5, 1)
synonym: {'music': 1}
(5, 0)
synonym: {'music': 1}
(5, 3)
synonym: {'music': 1}
definition: {'music': 1}
(5, 2)
synonym: {'music': 1}
(5, 4)
synonym: {'music': 1}
-------------------------------------------------------------------
SEARCH QUERY ['hotel', 'reservation', 'agency']
hotel (noun)
0. ['hotel']
Definition: a building where travelers can pay for lodging and meals and other services
Examples:
reservation (noun)
0. ['reservation', 'reserve']
Definition: a district that is reserved for particular purpose
Examples:
1. ['reservation', 'qualification']
Definition: a statement that limits or restricts some claim
Examples: "he recommended her without any reservations"
2. ['mental reservation', 'reservation', 'arriere pensee']
Definition: an unstated doubt that prevents you from accepting something wholeheartedly
Examples:
3. ['booking', 'reservation']
Definition: the act of reserving (a place or passage) or engaging the services of (a person or group)
Examples: "wondered who had made the booking"
4. ['reservation']
Definition: the written record or promise of an arrangement by which accommodations are secured in advance
Examples:
5. ['reservation']
Definition: something reserved in advance (as a hotel accommodation or a seat on a plane etc.)
Examples:
6. ['reservation']
Definition: the act of keeping back or setting aside for some future occasion
Examples:
agency (noun)
0. ['agency', 'federal agency', 'government agency', 'bureau', 'office', 'authority']
Definition: an administrative unit of government
Examples:
"the Central Intelligence Agency" ; "the Census Bureau" ;
"Office of Management and Budget" ; "
1. ['agency']
Definition: a business that serves other businesses
Examples:
2. ['agency']
Definition: the state of being in action or exerting power
Examples: "the agency of providence" ; "she has free agency"
3. ['representation', 'delegacy', 'agency']
Definition: the state of serving as an official and authorized delegate or agent
Examples:
4. ['means', 'agency', 'way']
Definition: how a result is obtained or an end is achieved
Examples: "a means of control" ; "an example is the best agency of instruction" ; "the true way to success"
INTERSECTIONS for ['hotel', 'reservation', 'agency']:
('hotel', 'reservation')
(0, 3)
definition: {'services': 1}
-------------------------------------------------------------------
SEARCH QUERY ['natural', 'text', 'parsing', 'algorithm']
natural (noun)
0. ['natural']
Definition: someone regarded as certain to succeed
Examples: "he's a natural for the job"
1. ['natural', 'cancel']
Definition: a notation cancelling a previous sharp or flat
Examples:
2. ['natural']
Definition: (craps) a first roll of 7 or 11 that immediately wins the stake
Examples:
text (noun)
0. ['text', 'textual matter']
Definition: the words of something written
Examples: "there were more than a thousand words of text" ; "they handed out the printed text of the mayor's speech" ; "he wants to reconstruct the original text"
1. ['text']
Definition: a passage from the Bible that is used as the subject of a sermon
Examples: "the preacher chose a text from Psalms to introduce his sermon"
2. ['textbook', 'text', 'text edition', 'schoolbook', 'school text']
Definition: a book prepared for use in schools or colleges
Examples: "his economics textbook is in its tenth edition" ; "the professor wrote the text that he assigned students to buy"
3. ['text']
Definition: the main body of a written work (as distinct from illustrations or footnotes etc.)
Examples: "pictures made the text easier to understand"
None (noun)
algorithm (noun)
0. ['algorithm', 'algorithmic rule', 'algorithmic program']
Definition: a precise rule (or set of rules) specifying how to solve some problem
Examples:
INTERSECTIONS for ['natural', 'text', 'parsing', 'algorithm']:
-------------------------------------------------------------------
SEARCH QUERY ['text', 'sense', 'extratraction']
text (noun)
0. ['text', 'textual matter']
Definition: the words of something written
Examples: "there were more than a thousand words of text" ; "they handed out the printed text of the mayor's speech" ; "he wants to reconstruct the original text"
1. ['text']
Definition: a passage from the Bible that is used as the subject of a sermon
Examples: "the preacher chose a text from Psalms to introduce his sermon"
2. ['textbook', 'text', 'text edition', 'schoolbook', 'school text']
Definition: a book prepared for use in schools or colleges
Examples: "his economics textbook is in its tenth edition" ; "the professor wrote the text that he assigned students to buy"
3. ['text']
Definition: the main body of a written work (as distinct from illustrations or footnotes etc.)
Examples: "pictures made the text easier to understand"
sense (noun)
0. ['sense']
Definition: a general conscious awareness
Examples: "a sense of security" ; "a sense of happiness" ; "a sense of danger" ; "a sense of self"
1. ['sense', 'signified']
Definition: the meaning of a word or expression ; the way in which a word or expression or situation can be interpreted
Examples: "the dictionary gave several senses for the word" ; "in the best sense charity is really a duty" ; "the signifier is linked to the signified"
2. ['sense', 'sensation', 'sentience', 'sentiency', 'sensory faculty']
Definition: the faculty through which the external world is apprehended
Examples: "in the dark he had to depend on touch and on his senses of smell and hearing"
3. ['common sense', 'good sense', 'gumption', 'horse sense', 'sense', 'mother wit']
Definition: sound practical judgment
Examples: "I can't see the sense in doing it now" ; "he hasn't got the sense God gave little green apples" ; "fortunately she had the good sense to run away"
4. ['sense']
Definition: a natural appreciation or ability
Examples: "a keen musical sense" ; "a good sense of timing"
None (noun)
INTERSECTIONS for ['text', 'sense', 'extratraction']:
-------------------------------------------------------------------
SEARCH QUERY ['similarity', 'of', 'text', 'fragments']
similarity (noun)
0. ['similarity']
Definition: the quality of being similar
Examples:
1. ['similarity', 'law of similarity']
Definition: a Getalt principle of organization holding that (other things being equal) parts of a stimulus field that are similar to each other tend to be perceived as belonging together as a unit
Examples:
None (noun)
text (noun)
0. ['text', 'textual matter']
Definition: the words of something written
Examples: "there were more than a thousand words of text" ; "they handed out the printed text of the mayor's speech" ; "he wants to reconstruct the original text"
1. ['text']
Definition: a passage from the Bible that is used as the subject of a sermon
Examples: "the preacher chose a text from Psalms to introduce his sermon"
2. ['textbook', 'text', 'text edition', 'schoolbook', 'school text']
Definition: a book prepared for use in schools or colleges
Examples: "his economics textbook is in its tenth edition" ; "the professor wrote the text that he assigned students to buy"
3. ['text']
Definition: the main body of a written work (as distinct from illustrations or footnotes etc.)
Examples: "pictures made the text easier to understand"
fragment (noun)
0. ['fragment']
Definition: a piece broken off or cut off of something else
Examples: "a fragment of rock"
1. ['shard', 'sherd', 'fragment']
Definition: a broken piece of a brittle artifact
Examples:
2. ['fragment']
Definition: an incomplete piece
Examples: "fragments of a play"
INTERSECTIONS for ['similarity', 'of', 'text', 'fragments']:
('text', 'fragment')
(0, 0)
definition: {'something': 1}
-------------------------------------------------------------------
SEARCH QUERY ['online', 'dictionary']
None (noun)
dictionary (noun)
0. ['dictionary', 'lexicon']
Definition: a reference book containing an alphabetical list of words with information about them
Examples:
INTERSECTIONS for ['online', 'dictionary']:
-------------------------------------------------------------------
SEARCH QUERY ['programming', 'spider', 'bot']
programming (noun)
0. ['scheduling', 'programming', 'programing']
Definition: setting an order and time for planned events
Examples:
1. ['programming', 'programing', 'computer programming', 'computer programing']
Definition: creating a sequence of instructions to enable the computer to do something
Examples:
spider (noun)
0. ['spider']
Definition: predatory arachnid that usually has silk-spinning organs at the back end of the body ; they spin silk to make cocoons for eggs or traps for prey
Examples:
1. ['spider', 'wanderer']
Definition: a computer program that prowls the internet looking for publicly accessible resources that can be added to a database ; the database can then be searched with a search engine
Examples:
2. ['spider']
Definition: a skillet made of cast iron
Examples:
bot (noun)
0. ['bot']
Definition: botfly larva ; typically develops inside the body of a horse or sheep or human
Examples:
INTERSECTIONS for ['programming', 'spider', 'bot']:
('spider', 'bot')
(0, 0)
definition: {'body': 1}
('programming', 'spider')
(1, 1)
definition: {'computer': 1}
-------------------------------------------------------------------
SEARCH QUERY ['design', 'patterns', 'book']
design (noun)
0. ['design', 'designing']
Definition: the act of working out the form of something (as by making a sketch or outline or plan)
Examples: "he contributed to the design of a new instrument"
1. ['design', 'plan']
Definition: an arrangement scheme
Examples: "the awkward design of the keyboard made operation difficult" ; "it was an excellent design for living" ; "a plan for seating guests"
2. ['blueprint', 'design', 'pattern']
Definition: something intended as a guide for making something else
Examples: "a blueprint for a house" ; "a pattern for a skirt"
3. ['design', 'pattern', 'figure']
Definition: a decorative or artistic work
Examples: "the coach had a design on the doors"
4. ['purpose', 'intent', 'intention', 'aim', 'design']
Definition: an anticipated outcome that is intended or that guides your planned actions
Examples: "his intent was to provide a new translation" ; "good intentions are not enough" ; "it was created with the conscious aim of answering immediate needs" ; "he made no secret of his designs"
5. ['design']
Definition: a preliminary sketch indicating the plan for something
Examples: "the design of a building"
6. ['invention', 'innovation', 'excogitation', 'conception', 'design']
Definition: the creation of something in the mind
Examples:
pattern (noun)
0. ['form', 'shape', 'pattern']
Definition: a perceptual structure
Examples: "the composition presents problems for students of musical form" ; "a visual pattern must include not only objects but the spaces between them"
1. ['practice', 'pattern']
Definition: a customary way of operation or behavior
Examples: "it is their practice to give annual raises" ; "they changed their dietary pattern"
2. ['design', 'pattern', 'figure']
Definition: a decorative or artistic work
Examples: "the coach had a design on the doors"
3. ['convention', 'normal', 'pattern', 'rule', 'formula']
Definition: something regarded as a normative example
Examples: "the convention of not naming the main character" ; "violence is the rule not the exception" ; "his formula for impressing visitors"
4. ['pattern']
Definition: a model considered worthy of imitation
Examples: "the American constitution has provided a pattern for many republics"
5. ['blueprint', 'design', 'pattern']
Definition: something intended as a guide for making something else
Examples: "a blueprint for a house" ; "a pattern for a skirt"
6. ['traffic pattern', 'approach pattern', 'pattern']
Definition: the path that is prescribed for an airplane that is preparing to land at an airport
Examples: "the traffic patterns around O'Hare are very crowded" ; "they stayed in the pattern until the fog lifted"
7. ['radiation pattern', 'radiation diagram', 'pattern']
Definition: graphical representation (in polar or cartesian coordinates) of the spatial distribution of radiation from an antenna as a function of angle
Examples:
book (noun)
0. ['book']
Definition: a written work or composition that has been published (printed on pages bound together)
Examples: "I am reading a good book on economics"
1. ['book', 'volume']
Definition: physical objects consisting of a number of pages bound together
Examples: "he used a large book as a doorstop"
2. ['ledger', 'leger', 'account book', 'book of account', 'book']
Definition: a record in which commercial accounts are recorded
Examples: "they got a subpoena to examine our books"
3. ['book']
Definition: a number of sheets (ticket or stamps etc.) bound together on one edge
Examples: "he bought a book of stamps"
4. ['record', 'record book', 'book']
Definition: a compilation of the known facts regarding something or someone
Examples: "Al Smith used to say, `Let's look at the record'" ; "his name is in all the recordbooks"
5. ['book']
Definition: a major division of a long written composition
Examples: "the book of Isaiah"
6. ['script', 'book', 'playscript']
Definition: a written version of a play or other dramatic composition ; used in preparing for a performance
Examples:
7. ['book', 'rule book']
Definition: a collection of rules or prescribed standards on the basis of which decisions are made
Examples: "they run things by the book around here"
8. ['Koran', 'Quran', "al-Qur'an", 'Book']
Definition:
the sacred writings of Islam revealed by God to the prophet Muhammad during his
life at
Examples:
9. ['Bible', 'Christian Bible', 'Book', 'Good Book', 'Holy Scripture', 'Holy Writ', 'Scripture', 'Word of God', 'Word']
Definition: the sacred writings of the Christian religions
Examples: "he went to carry the Word to the heathen"
INTERSECTIONS for ['design', 'patterns', 'book']:
('pattern', 'book')
(3, 7)
synonym: {'rule': 1}
(3, 4)
definition: {'something': 1}
(2, 0)
definition: {'work': 1}
(5, 4)
definition: {'something': 1}
('design', 'book')
(3, 0)
definition: {'work': 1}
(0, 4)
definition: {'something': 1}
(6, 4)
definition: {'something': 1}
(2, 4)
definition: {'something': 1}
(5, 4)
definition: {'something': 1}
('design', 'pattern', 'book')
(5, 5, 4)
definition: {'something': 1}
(2, 3, 4)
definition: {'something': 1}
(0, 5, 4)
definition: {'something': 1}
(2, 5, 4)
definition: {'something': 1}
(6, 5, 4)
definition: {'something': 1}
(5, 3, 4)
definition: {'something': 1}
(3, 2, 0)
definition: {'work': 1}
(0, 3, 4)
definition: {'something': 1}
(6, 3, 4)
definition: {'something': 1}
('design', 'pattern')
(3, 3)
synonym: {'pattern': 1}
(3, 2)
synonym: {'pattern': 1, 'design': 1, 'figure': 1}
definition: {'work': 1}
(3, 1)
synonym: {'pattern': 1}
(3, 0)
synonym: {'pattern': 1}
(3, 7)
synonym: {'pattern': 1}
(3, 6)
synonym: {'pattern': 1}
(3, 5)
synonym: {'pattern': 1, 'design': 1}
(3, 4)
synonym: {'pattern': 1}
(5, 3)
definition: {'something': 1}
(5, 2)
synonym: {'design': 1}
(2, 4)
synonym: {'pattern': 1}
(2, 5)
synonym: {'blueprint': 1, 'pattern': 1, 'design': 1}
definition: {'making': 1, 'something': 2, 'guide': 1}
(2, 0)
synonym: {'pattern': 1}
(2, 1)
synonym: {'pattern': 1}
(2, 2)
synonym: {'pattern': 1, 'design': 1}
(2, 3)
synonym: {'pattern': 1}
definition: {'something': 1}
(4, 5)
synonym: {'design': 1}
definition: {'guide': 1}
(4, 2)
synonym: {'design': 1}
(6, 2)
synonym: {'design': 1}
(6, 3)
definition: {'something': 1}
(6, 5)
synonym: {'design': 1}
definition: {'something': 1}
(0, 2)
synonym: {'design': 1}
(5, 5)
synonym: {'design': 1}
definition: {'something': 1}
(0, 3)
definition: {'something': 1}
(0, 5)
synonym: {'design': 1}
definition: {'making': 1, 'something': 1}
(2, 6)
synonym: {'pattern': 1}
(2, 7)
synonym: {'pattern': 1}
(1, 2)
synonym: {'design': 1}
(1, 5)
synonym: {'design': 1}
-------------------------------------------------------------------
SEARCH QUERY ['sewing', 'tutorial']
sewing (noun)
0. ['sewing', 'stitching']
Definition: joining or attaching by stitches
Examples:
1. ['sewing', 'stitchery']
Definition: needlework that involves sewing
Examples: "she put her sewing back in the basket"
tutorial (noun)
0. ['tutorial']
Definition: a session of intensive tuition given by a tutor to an individual or to a small number of students
Examples:
INTERSECTIONS for ['sewing', 'tutorial']:
-------------------------------------------------------------------
SEARCH QUERY ['RDF', 'software', 'tools']
None (noun)
software (noun)
0. ['software', 'software system', 'software package', 'package']
Definition: (computer science) written programs or procedures or rules and associated documentation pertaining to the operation of a computer system and that are stored in read/write memory
Examples: "the market for software is expected to expand"
tool (noun)
0. ['tool']
Definition: an implement used in the practice of a vocation
Examples:
1. ['instrument', 'tool']
Definition: the means whereby some act is accomplished
Examples: "my greed was the instrument of my destruction" ; "science has given us new tools to fight disease"
2. ['creature', 'tool', 'puppet']
Definition: a person who is controlled by others and is used to perform unpleasant or dishonest tasks for someone else
Examples:
3. ['cock', 'prick', 'dick', 'shaft', 'pecker', 'peter', 'tool', 'putz']
Definition: obscene terms for penis
Examples:
INTERSECTIONS for ['RDF', 'software', 'tools']:
-------------------------------------------------------------------
SEARCH QUERY ['image', 'description', 'technology']
image (noun)
0. ['image',
'mental image']
Definition: an iconic mental representation
Examples: "her imagination forced images upon her too awful to contemplate"
1. ['picture', 'image', 'icon', 'ikon']
Definition: a visual representation (of an object or scene or person or abstraction) produced on a surface
Examples: "they showed us the pictures of their wedding" ; "a movie is a series of images projected so rapidly that the eye integrates them"
2. ['persona', 'image']
Definition: (Jungian psychology) a personal facade that one presents to the world
Examples: "a public image is as fragile as Humpty Dumpty"
3. ['prototype', 'paradigm', 'epitome', 'image']
Definition: a standard or typical example
Examples:
"he is the prototype of good breeding" ; "he provided
4. ['trope', 'figure of speech', 'figure', 'image']
Definition: language used in a figurative or nonliteral sense
Examples:
5. ['double', 'image', 'look-alike']
Definition: someone who closely resembles a famous person (especially an actor)
Examples: "he could be Gingrich's double" ; "she's the very image of her mother"
6. ['effigy', 'image', 'simulacrum']
Definition: a representation of a person (especially in the form of sculpture)
Examples:
"the coin bears an effigy of
description
(noun)
0.
['description', 'verbal description']
Definition: a statement that represents something in words
Examples:
1. ['description']
Definition: the act of describing something
Examples:
2. ['description']
Definition: sort or variety
Examples: "every description of book was there"
technology (noun)
0. ['technology', 'engineering']
Definition: the practical application of science to commerce or industry
Examples:
1. ['engineering', 'engineering science', 'applied science', 'technology']
Definition: the discipline dealing with the art or science of applying scientific knowledge to practical problems
Examples: "he had trouble deciding which branch of engineering to study"
INTERSECTIONS for ['image', 'description', 'technology']:
-------------------------------------------------------------------
SEARCH QUERY ['web', 'programming', 'tutorial']
web (noun)
0. ['web']
Definition: an intricate network suggesting something that was formed by weaving or interweaving
Examples: "the trees cast a delicate web of shadows over the lawn"
1. ['web', 'entanglement']
Definition: an intricate trap that entangles or ensnares its victim
Examples:
2. ['vane', 'web']
Definition: the flattened weblike part of a feather consisting of a series of barbs on either side of the shaft
Examples:
3. ['network', 'web']
Definition: an interconnected system of things or people
Examples: "he owned a network of shops" ; "retirement meant dropping out of a whole network of people who had been part of my life" ; "tangled in a web of cloth"
4. ['World Wide Web', 'WWW', 'web']
Definition: computer network consisting of a collection of internet sites that offer text and graphics and sound and animation resources through the hypertext transfer protocol
Examples:
5. ['web']
Definition: a fabric (especially a fabric in the process of being woven)
Examples:
6. ['web']
Definition: membrane connecting the toes of some aquatic birds and mammals
Examples:
programming (noun)
0. ['scheduling', 'programming', 'programing']
Definition: setting an order and time for planned events
Examples:
1. ['programming', 'programing', 'computer programming', 'computer programing']
Definition: creating a sequence of instructions to enable the computer to do something
Examples:
tutorial (noun)
0. ['tutorial']
Definition: a session of intensive tuition given by a tutor to an individual or to a small number of students
Examples:
INTERSECTIONS for ['web', 'programming', 'tutorial']:
('web', 'programming')
(4, 1)
definition: {'computer': 1}
(0, 1)
definition: {'something': 1}
-------------------------------------------------------------------
SEARCH QUERY ['biggest', 'computer', 'shop']
None (noun)
computer (noun)
0. ['computer', 'computing machine', 'computing device', 'data processor', 'electronic computer', 'information processing system']
Definition: a machine for performing calculations automatically
Examples:
1. ['calculator', 'reckoner', 'figurer', 'estimator', 'computer']
Definition: an expert at calculation (or at operating calculating machines)
Examples:
shop (noun)
0. ['shop', 'store']
Definition: a mercantile establishment for the retail sale of goods or services
Examples:
"he bought it at a shop on
1. ['workshop', 'shop']
Definition: small workplace where handcrafts or manufacturing are done
Examples:
2. ['shop class', 'shop']
Definition: a course of instruction in a trade (as carpentry or electricity)
Examples: "I built a birdhouse in shop"
INTERSECTIONS for ['biggest', 'computer', 'shop']:
-------------------------------------------------------------------
SEARCH QUERY ['flowers', 'present', 'shop']
flower (noun)
0. ['flower']
Definition: a plant cultivated for its blooms or blossoms
Examples:
1. ['flower', 'bloom', 'blossom']
Definition: reproductive organ of angiosperm plants especially one having showy or colorful parts
Examples:
2. ['flower', 'prime', 'peak', 'heyday', 'bloom', 'blossom', 'efflorescence', 'flush']
Definition: the period of greatest prosperity or productivity
Examples:
present (noun)
0. ['present', 'nowadays']
Definition: the period of time that is happening now ; any continuous stretch of time including the moment of speech
Examples: "that is enough for the present" ; "he lives in the present with no thought of tomorrow"
1. ['present']
Definition: something presented as a gift
Examples: "his tie was a present from his wife"
2. ['present', 'present tense']
Definition: a verb tense that expresses actions or states at the time of speaking
Examples:
shop (noun)
0. ['shop', 'store']
Definition: a mercantile establishment for the retail sale of goods or services
Examples:
"he bought it at a shop on
1. ['workshop', 'shop']
Definition: small workplace where handcrafts or manufacturing are done
Examples:
2. ['shop class', 'shop']
Definition: a course of instruction in a trade (as carpentry or electricity)
Examples: "I built a birdhouse in shop"
INTERSECTIONS for ['flowers', 'present', 'shop']:
('flower', 'present')
(2, 0)
definition: {'period': 1}
-------------------------------------------------------------------
SEARCH QUERY ['bus', 'schedule', 'price']
bus (noun)
0. ['bus', 'autobus', 'coach', 'charabanc', 'double-decker', 'jitney', 'motorbus', 'motorcoach', 'omnibus']
Definition: a vehicle carrying many passengers ; used for public transport
Examples: "he always rode the bus to work"
1. ['bus topology', 'bus']
Definition: the topology of a network whose components are connected by a busbar
Examples:
2. ['busbar', 'bus']
Definition: an electrical conductor that makes a common connection between several circuits
Examples: "the busbar in this computer can transmit data either way between any two components of the system"
3. ['bus', 'jalopy', 'heap']
Definition: a car that is old and unreliable
Examples: "the fenders had fallen off that old bus"
schedule (noun)
0. ['agenda', 'docket', 'schedule']
Definition: a temporally organized plan for matters to be attended to
Examples:
1. ['schedule']
Definition: an ordered list of times at which things are planned to occur
Examples:
price (noun)
0. ['price', 'terms', 'damage']
Definition: the amount of money needed to purchase something
Examples: "the price of gasoline" ; "he got his new car on excellent terms" ; "how much is the damage?"
1. ['monetary value', 'price', 'cost']
Definition: the property of having material worth (often indicated by the amount of money something would bring if sold)
Examples: "the fluctuating monetary value of gold and silver" ; "he puts a high price on his services" ; "he couldn't calculate the cost of the collection"
2. ['price', 'cost', 'toll']
Definition: value measured by what must be given or done or undergone to obtain something
Examples: "the cost in human life was enormous" ; "the price of success is hard work" ; "what price glory?"
3. ['price']
Definition: the high value or worth of something
Examples: "her price is far above rubies"
4. ['price']
Definition: a reward for helping to catch a criminal
Examples: "the cattle thief has a price on his head"
5. ['price']
Definition: cost of bribing someone
Examples: "they say that every politician has a price"
6. ['Price', 'Leontyne Price', 'Mary Leontyne Price']
Definition:
Examples:
INTERSECTIONS for ['bus', 'schedule', 'price']:
('bus', 'schedule')
(1, 1)
definition: {'are': 1}
-------------------------------------------------------------------
SEARCH QUERY ['coin', 'animals']
coin (noun)
0. ['coin']
Definition: a metal piece (usually a disc) used as money
Examples:
animal (noun)
0. ['animal', 'animate being', 'beast', 'brute', 'creature', 'fauna']
Definition: a living organism characterized by voluntary movement
Examples:
INTERSECTIONS for ['coin', 'animals']:
-------------------------------------------------------------------
SEARCH QUERY ['metal', 'coins', 'animals']
metal (noun)
0. ['metallic element', 'metal']
Definition: any of several chemical elements that are usually shiny solids that conduct heat or electricity and can be formed into sheets etc.
Examples:
1. ['alloy', 'metal']
Definition: a mixture containing two or more metallic elements or metallic and nonmetallic elements usually fused together or dissolving into each other when molten
Examples: "brass is an alloy of zinc and copper"
coin (noun)
0. ['coin']
Definition: a metal piece (usually a disc) used as money
Examples:
animal (noun)
0. ['animal', 'animate being', 'beast', 'brute', 'creature', 'fauna']
Definition: a living organism characterized by voluntary movement
Examples:
INTERSECTIONS for ['metal', 'coins', 'animals']:
-------------------------------------------------------------------
SEARCH QUERY ['finnish', 'cases']
finnish (noun)
0. ['Finnish', 'Suomi']
Definition:
the official language of
Examples:
case (noun)
0. ['lawsuit', 'suit', 'case', 'cause', 'causa']
Definition: a comprehensive term for any proceeding in a court of law whereby an individual seeks a legal remedy
Examples: "the family brought suit against the landlord"
1. ['case', 'instance', 'example']
Definition: an occurrence of something
Examples: "it was a case of bad judgment" ; "another instance occurred yesterday" ; "but there is always the famous example of the Smiths"
2. ['event', 'case']
Definition: a special set of circumstances
Examples: "in that event, the first possibility is excluded" ; "it may rain in which case the picnic will be canceled"
3. ['case']
Definition: a problem requiring investigation
Examples: "Perry Mason solved the case of the missing heir"
4. ['case']
Definition: the actual state of things
Examples: "that was not the case"
5. ['case']
Definition: a statement of facts and reasons used to support an argument
Examples: "he stated his case clearly"
6. ['case']
Definition: a portable container for carrying several objects
Examples: "the musicians left their instrument cases backstage"
7. ['subject', 'case', 'guinea pig']
Definition: a person who is subjected to experimental or other observational procedures ; someone who is an object of investigation
Examples: "the subjects for this investigation were selected randomly" ; "the cases that we studied were drawn from two different communities"
8. ['case']
Definition: a person requiring professional services
Examples: "a typical case was the suburban housewife described by a marriage counselor"
9. ['case', 'caseful']
Definition: the quantity contained in a case
Examples:
10. ['case', 'display case', 'showcase']
Definition: a glass container used to store and display items in a shop or museum or home
Examples:
11. ['case']
Definition: a specific state of mind that is temporary
Examples: "a case of the jitters"
12. ['case', 'grammatical case']
Definition: nouns or pronouns or adjectives (often marked by inflection) related in some way to other words in a sentence
Examples:
13. ['shell', 'case', 'casing']
Definition: the housing or outer covering of something
Examples: "the clock has a walnut case"
14. ['character', 'eccentric', 'type', 'case']
Definition: a person of a specified kind (usually with many eccentricities)
Examples: "a real character" ; "a strange character" ; "a friendly eccentric" ; "the capable type" ; "a mental case"
15. ['sheath', 'case']
Definition: an enveloping structure or covering enclosing an animal or plant organ or part
Examples:
16. ['casing', 'case']
Definition: the enclosing frame around a door or window opening
Examples: "the casings had rotted away and had to be replaced"
17. ['case', 'pillowcase', 'slip', 'pillow slip']
Definition: bed linen consisting of a cover for a pillow
Examples: "the burglar carried his loot in a pillowcase"
INTERSECTIONS for ['finnish', 'cases']:
[1] Antonyms turns out to be surprisingly difficult to define. The antonym
of a word x is sometimes not-x, but not always. For example, black and white
are antonyms, but to say something is not black does not imply that it is
white, it can be e.g. green.
[2] Transitivity of meronym relations is not so obvious as it can seem. For
example, a door has a handle, a room has a door, but no one says that the room
has a handle.
[3] WordNet storage file formats are open, so anyone is welcome to make his
own interface for accessing WordNet. For file formats description see WordNet
manuals, LINK.
[4] This mean that Google indexes not only titles of
pages, but whole page text