Corpus A
Paste a text, choose a language, and compute corpus-style statistics. Up to 100k words: no problem. Above: Your own risk...
Plain-text files are imported directly. PDF files are converted to text in the browser. Word files are not supported.
Ready.
Document Stats
Core counts, lemma frequencies, and a Zipf view of the corpus.
run for run, runs, and running. The type/token ratio is types divided by tokens. In simple words, it is a measure of lexical richness: higher values usually mean a more varied vocabulary.
| Measure | Value |
|---|---|
| Analyze corpus A to see document statistics. | |
Frequency is the raw count, and Rel % shows how much of the whole text this lemma makes up. Use the switch to compare the list with stopwords included or with stopwords removed.
| Lemma | Frequency | Rel % |
|---|---|---|
| Analyze corpus A to see lemma frequencies. | ||
Analyze corpus A to compare the observed lemma distribution with an ideal Zipf line.
Lemma Search
Inspect one normalized search term with collocates and KWIC output.
| Collocate | Frequency |
|---|---|
| Run a lemma search to see collocates. | |
| Collocate | Frequency |
|---|---|
| Run a lemma search to see collocates without stopwords. | |
Run a lemma search to see hit positions across the text.
| # | Left Context | Keyword | Right Context |
|---|---|---|---|
| Run a lemma search to see KWIC rows. | |||
N-Grams
Inspect repeated token sequences of length 3 to 6.
| Analyze corpus A to see repeated n-grams. | ||
Stopwords
Edit the stopword list for the selected language. Use one word per line.
Using the built-in stopword list.
Corpus B
Paste a text, choose a language, and compute corpus-style statistics.
Plain-text files are imported directly. PDF files are converted to text in the browser. Word files are not supported.
Ready.
Document Stats
Core counts, lemma frequencies, and a Zipf view of the corpus.
run for run, runs, and running. The type/token ratio is types divided by tokens. In simple words, it is a measure of lexical richness: higher values usually mean a more varied vocabulary.
| Measure | Value |
|---|---|
| Analyze corpus B to see document statistics. | |
Frequency is the raw count, and Rel % shows how much of the whole text this lemma makes up. Use the switch to compare the list with stopwords included or with stopwords removed.
| Lemma | Frequency | Rel % |
|---|---|---|
| Analyze corpus B to see lemma frequencies. | ||
Analyze corpus B to compare the observed lemma distribution with an ideal Zipf line.
Lemma Search
Inspect one normalized search term with collocates and KWIC output.
| Collocate | Frequency |
|---|---|
| Run a lemma search to see collocates. | |
| Collocate | Frequency |
|---|---|
| Run a lemma search to see collocates without stopwords. | |
Run a lemma search to see hit positions across the text.
| # | Left Context | Keyword | Right Context |
|---|---|---|---|
| Run a lemma search to see KWIC rows. | |||
N-Grams
Inspect repeated token sequences of length 3 to 6.
| Analyze corpus B to see repeated n-grams. | ||
Stopwords
Edit the stopword list for the selected language. Use one word per line.
Using the built-in stopword list.
Comparison
Compare summary values, keyword profiles, and collocates across corpus A and corpus B.
Analyze corpus A and corpus B to populate the comparison view.
Summary Values
Side-by-side document statistics for both corpora.
| Measure | A | B |
|---|---|---|
| No comparison data yet. | ||
Keyword List
Sortable lemma-level frequencies, relative frequencies, and keyness scores.
| Analyze both corpora to compare keyword profiles. | |||||
Collocate Comparison
Side-by-side collocate counts for the currently compared lemma.
| Search for a lemma in corpus A or corpus B to compare collocates. | ||||
Collocate Comparison Without Stopwords
Side-by-side collocate counts without stopwords for the currently compared lemma.
| Search for a lemma in corpus A to compare collocates without stopwords. | ||||
Grammar Builder
Define rules and a vocabulary. Open syntax help.
Grammar not prepared yet.
Sentence Generator
Generate all valid sentences from the current grammar.
Sentence Checker
Syntax Trees
Digital Poet
D-Gram Help
Short English summary of the main syntax rules from the D-Gram documentation. Open the German PDF.
1. Basic rule format
Each syntax rule has the form Parent -> Child1 Child2. The left side contains exactly one element. The right side contains one or more elements separated by spaces.
2. Naming
You can choose category names freely, but they must be used consistently. D-Gram is case-sensitive. A common convention is uppercase for phrases or sentence parts and initial capitals for word classes, for example NP, VP, Noun, Verb.
3. Vocabulary entries
The vocabulary uses the same arrow syntax, but words appear on the right side in quotes, for example Noun -> "dog" | "cat". Use | to list alternatives on one line. Double quotes are preferred.
4. Features and agreement
You can add features in square brackets, for example NP[case=?c, num=?n]. Features are separated by commas. Wildcards such as ?c or ?n force matching values across elements and are useful for agreement.
5. Example with agreement
NP[case=?c, num=?n] -> Article[case=?c, num=?n] Noun[case=?c, num=?n]
Lexicon entries can also carry features, for example Article[case=nom, num=sg] -> "the".
6. Important separators
Use spaces between elements in rules, | between lexical alternatives, and commas between features inside square brackets.
7. Important limitations
D-Gram does not automatically add capitalization at the beginning of a sentence. It does not automatically add punctuation. It also inserts spaces between all elements, so punctuation or affixes must be modeled explicitly if needed.
About DILAITS
DILAITS stands for DIgital LAnguage InsighTS. It brings together browser-based tools for exploring language data and working with grammar.
Anna-Liza supports corpus-style text analysis with document statistics, lemma search, collocates, KWIC, n-grams, and corpus comparison.
D-Gram supports rule-based grammar work, including sentence generation, sentence checking, syntax trees, and poem generation.
Creators: Bojan Peric and Noah Bubenhofer.
Software version: 2.2, May 9, 2026.