graphannis-root

This is a prototype for a new backend implementation of the ANNIS linguistic search and visualization system.

License

License

GroupId

GroupId

org.corpus-tools
ArtifactId

ArtifactId

graphannis-root
Last Version

Last Version

0.8.1
Release Date

Release Date

Type

Type

pom
Description

Description

graphannis-root
This is a prototype for a new backend implementation of the ANNIS linguistic search and visualization system.
Project URL

Project URL

https://github.com/corpus-tools/graphANNIS
Project Organization

Project Organization

Thomas Krause
Source Code Management

Source Code Management

https://github.com/corpus-tools/graphANNIS

Download graphannis-root

How to add to project

<!-- https://jarcasting.com/artifacts/org.corpus-tools/graphannis-root/ -->
<dependency>
    <groupId>org.corpus-tools</groupId>
    <artifactId>graphannis-root</artifactId>
    <version>0.8.1</version>
    <type>pom</type>
</dependency>
// https://jarcasting.com/artifacts/org.corpus-tools/graphannis-root/
implementation 'org.corpus-tools:graphannis-root:0.8.1'
// https://jarcasting.com/artifacts/org.corpus-tools/graphannis-root/
implementation ("org.corpus-tools:graphannis-root:0.8.1")
'org.corpus-tools:graphannis-root:pom:0.8.1'
<dependency org="org.corpus-tools" name="graphannis-root" rev="0.8.1">
  <artifact name="graphannis-root" type="pom" />
</dependency>
@Grapes(
@Grab(group='org.corpus-tools', module='graphannis-root', version='0.8.1')
)
libraryDependencies += "org.corpus-tools" % "graphannis-root" % "0.8.1"
[org.corpus-tools/graphannis-root "0.8.1"]

Dependencies

There are no dependencies for this project. It is a standalone project that does not depend on any other jars.

Project Modules

  • java-api
  • graphannis-utils

graphANNIS DOI Automated tests

This is a new backend implementation of the ANNIS linguistic search and visualization system (http://corpus-tools.org/annis/).

While there are test cases, this project is still in a pre-release beta phase. Only a sub-set of the ANNIS Query Langugage (AQL) is supported yet (full support is planned). Integration with ANNIS is currently implemented in the development version and released as a beta version. There is a tutorial in the Developer Guide on how to embedd graphANNIS in your own application.

The basic design ideas and data models are described in detail in the PhD-thesis "ANNIS: A graph-based query system for deeply annotated text corpora". The thesis describes a prototype implementation in C++ and not Rust, but the design ideas are the same. Noteable differences/enhancements compared to the thesis are:

  • Graph storages implement querying inverse edges and finding reachable nodes based on them: this allows to implement inverse operators (e.g. for precedence) and switching operands in situations where it was not possible before.
  • The data model has been simplified: the inverse coverage component and inverse edges in the left-/right-most token component have been removed.
  • Additional query language features are now supported.

How to compile

graphANNIS is written in the Rust programming language (https://www.rust-lang.org). You can install Rust from https://www.rust-lang.org/tools/install. After you have installed Rust, you can can build the complete project with

cargo build --release

Documentation

3rd party dependencies

This software depends on several 3rd party libraries. These are documented in the "third-party-licenses.html" file in this folder.

Language bindings

Author(s)

How to cite

@phdthesis{Krause2019ANNIS:,
author = {Krause, Thomas},
title = {ANNIS: A graph-based query system for deeply annotated text corpora},
school = {Humboldt-Universität zu Berlin, Mathematisch-Naturwissenschaftliche Fakultät},
year = {2019},
doi = {http://dx.doi.org/10.18452/19659}
}
org.corpus-tools

Versions

Version
0.8.1
0.6.0
0.5.0
0.4.0
0.3.0
0.2.0
0.1.0