linkparser

This module is a Ruby binding for the link-grammar library, a syntactic parser of English.

Authors

Requirements

Example Usage

  require 'linkparser'

  dict = LinkParser::Dictionary.new( :screen_width => 100 )
  sent = dict.parse( "People use Ruby for all kinds of nifty things." )
  # => #<LinkParser::Sentence:0xcf8eb "LEFT-WALL people use Ruby for all kinds
  #      of nifty things . RIGHT-WALL"/2 linkages/0 nulls>

  sent.subject        # => "people"
  sent.verb           # => "use"
  sent.object         # => "Ruby"

  puts sent.constituent_tree_string
  # =>
  # (S (NP People)
  #    (VP use
  #        (NP Ruby)
  #        (PP for
  #            (NP (NP all kinds)
  #                (PP of
  #                    (NP nifty things)))))
  #    .)

  puts sent.diagram
  # =>
  #     +-------------------------------Xp------------------------------+
  #     |                +----MVp---+----Jp----+     +------Jp-----+    |
  #     +----Wd---+--Sp--+--Os-+    |    +-Dmc-+--Mp-+    +----A---+    |
  #     |         |      |     |    |    |     |     |    |        |    |
  # LEFT-WALL people.p use.v Ruby for.p all kinds.n of nifty.a things.n .

Legal

For licensing information, see the LICENSE file.

For copyright and licensing information for link-grammar itself, see the LICENSE file in that distribution.

 $Id$

Files

Classes/Modules

Methods

[Validate]

Generated with the Darkfish Rdoc Generator 1.1.6.