This is the command link-parser that can be run in the OnWorks free hosting provider using one of our multiple free online workstations such as Ubuntu Online, Fedora Online, Windows online emulator or MAC OS online emulator
link-parser - parses natural language sentences
link-parser [language] [-pp pp_knowledge_file] [-c constituent_knowledge_file] [-a
affix_file] [-ppoff] [-coff] [-aoff] [-batch] [-<special "!" command>]
In Selator, D. and Temperly, D. "Parsing English with a Link Grammar" (1991), the authors
defined a new formal grammatical system called a "link grammar". A sequence of words is in
the language of a link grammar if there is a way to draw "links" between words in such a
way that the local requirements of each word are satisfied, the links do not cross, and
the words form a consistent connected graph. The authors encoded English grammar into such
a system, and wrote link-parser to parse English using this grammar.
This package can be used for linguistic parsing for information retrieval or extraction
from natural language documents. Abiword also uses it as a grammar checker.
-<special ! command>
link-parser, when invoked manually, will take control of the terminal; link-parser will
then attempt to analyze the grammar of all input, unless escaped with an exclamation mark,
according to the dictionary file provided as an argument. If escaped, the input will be
treated as a "special command"; "!help" lists all special commands available.
link-parser depends on a link-grammar dictionary which contains lists of words and
associated metadata about their grammatical properties in order to analyze sentences. A
link-grammar dictionary provided by the authors of link-grammar is usually included with
the link-grammar package, and can often be found somewhere in the /usr/share/link-grammar/
hierarchy. When this is the case, only the two-letter language code needs to be specified
on the command-line. Alternatively, a user can provide their own dictionary as an
argument, in which case the dictionary's directory should be specified. Hence, either of
will run link-parser using the english dictionary included with the parser.
While in a link-parser session, some example output could be:
linkparser> Reading a man page is informative.
++++Time 0.00 seconds (0.01 total)
Found 1 linkage (1 had no P.P. violations)
Unique linkage, cost vector = (UNUSED=0 DIS=0 AND=0 LEN=12)
| +---------Ss*g---------+ |
| +-------Os-------+ | |
| | +----Ds----+ | |
+----Wd---+ | +--AN--+ +---Pa---+ |
| | | | | | | |
LEFT-WALL reading.g a man.n page.n is.v informative.a .
A P.P. violation is a post-processing violation; it is a post-linkage step used to reject
invalid parses. The link types shown are specific to English; other langauges will have
different link types.
link-parser can also be used non-interactively, either through its API, or via the -batch
option. When used with the -batch option, link-parser passively receives input from
standard input, and when the stream finishes, it then outputs its analysis. So one could
construct an ad-hoc grammar checker by piping text through link-parser with a batch
option, and seeing what sentences fail to parse as valid:
cat thesis.txt | link-parser /usr/share/link-grammar/en/4.0.dict -batch
Use link-parser online using onworks.net services