XSaiga: An implementation of a polynomial-time top-down parser suitable for NLP

[ attribute-grammars, bsd3, library, memoization, natural-language-processing, parser-combinators, parsing, program, text ] [ Propose Tags ]

This package contains a Haskell implementation of the X-SAIGA project's parser combinators. The combinators enable fully-general attribute grammars to be implemented as executable specifications. Although the parser is top-down, and therefore highly modular, left-recursive productions are allowed and fully-general synthesized and inherited attribute dependencies are also allowed. The parse tree, which is decorated with attribute values, is built as a compact Tomita-style graph. Lazy evaluation enables attribute values to be evaluated only as needed. Time and space complexity are both O(n^4) where n is the length of the input. An example natural-language interface (called Solarman) to a semantic-web style RDF triplestore with approximately 3,000 facts about the solar system has been built as an executable specification of an attribute grammar. Solarman is included in this archive. Solarman computes answers to queries using an event-based denotational semantics which is based on Montague and Davidsonian semantics. A web site [3] has been created so that readers can enter queries and find out more about Solarman.

[1] http://cs.uwindsor.ca/~richard/PUBLICATIONS/PADL_08.pdf

[2] http://cs.uwindsor.ca/~richard/PUBLICATIONS/PADL_10.pdf

[3] http://speechweb2.cs.uwindsor.ca/solarman4/demo_sparql.html

Versions [RSS] [faq] 1.0.0.0, 1.1.0.0, 1.2.0.0, 1.3.0.0, 1.3.0.1, 1.4.0.0, 1.4.0.1, 1.5.0.0, 1.6.0.0, 1.7.0.0 (info)
Dependencies aeson, base (>=4.6 && <5), bifunctors, bytestring, cgi, containers (>=0.5), data-constructors, fastcgi, generic-data, hashable, hsparql (>=0.3.6), mtl, network, pretty (>=1.1), random, rdf4h (>=1.2), text (>=0.11), unordered-containers, vector, XSaiga [details]
License BSD-3-Clause
Author Dr. Rahmatullah Hafiz, Dr. Richard Frost <rfrost@cogeco.ca>, Shane Peelar, Paul Callaghan, Eric Matthews
Maintainer Shane Peelar <peelar@uwindsor.ca>
Category Parsing, Natural Language Processing, Memoization, Parser Combinators, Attribute Grammars, Text
Home page http://speechweb2.cs.uwindsor.ca/solarman4/demo_sparql.html
Bug tracker https://github.com/InBetweenNames/Solarman/issues
Source repo head: git clone https://github.com/InBetweenNames/Solarman
Uploaded by InBetweenNames at 2020-10-07T00:05:27Z
Distributions NixOS:1.7.0.0
Executables solarman.cgi
Downloads 6686 total (68 in the last 30 days)
Rating 2.0 (votes: 1) [estimated by Bayesian average]
Your Rating
  • λ
  • λ
  • λ
Status Hackage Matrix CI
Docs not available [build log]
All reported builds failed as of 2021-05-30 [all 2 reports]

Modules

  • XSaiga
    • XSaiga.AGParser2
    • XSaiga.CGI
    • XSaiga.Getts
    • XSaiga.LocalData
    • XSaiga.SolarmanTriplestore
    • XSaiga.TypeAg2

Flags

NameDescriptionDefaultType
asterius

Use when building for Asterius -- sets up hooks for querying triplestores via XMLHttpRequest

DisabledManual
instore

Use built-in triplestore (no network access)

DisabledManual

Use -f <flag> to enable a flag, or -f -<flag> to disable that flag. More info

Downloads

Maintainer's Corner

For package maintainers and hackage trustees

Candidates