Verb Page Examples

Worked examples of the verb page content model, one per language (appendix to the verb feature docs).

English go

1. verb_lemmas

id language lemma common regular_overall english_translation
4 en go true false to go

English uses the base form (“go”) as the lemma.


2. tenses

id language mood tense_name common_tense
40 en Indicative Present simple true
41 en Indicative Past simple true
42 en Indicative Future simple true
43 en Indicative Present perfect true
44 en Indicative Past perfect true
45 en Indicative Future perfect true
46 en Imperative Imperative true

3. infinitives

id verb_lemma_id form search_form variant sentences_matched language lemma
130 4 go go default false en go

English infinitives have no variants, but the UI can render “to go” using the lemma. search_form strips special characters for efficient matching.


4. verbals (participles and gerunds)

id verb_lemma_id type_key gender number form language lemma
230 4 present_participle NULL NULL going en go
231 4 past_participle NULL NULL gone en go

English does not inflect participles for gender or number.


5. conjugations

id verb_lemma_id tense_id person_seq person_label form full_form search_form regular negative sentences_matched language lemma mood tense_name
360 4 40 1 I go I go I go false false false en go Indicative Present simple
361 4 40 3 he/she/it goes he goes he goes false false false en go Indicative Present simple
362 4 41 1 I went I went I went false false false en go Indicative Past simple
363 4 42 1 I will go I will go I will go false false false en go Indicative Future simple
364 4 43 1 I have gone I have gone I have gone false false false en go Indicative Present perfect
365 4 44 1 I had gone I had gone I had gone false false false en go Indicative Past perfect
366 4 45 1 I will have gone I will have gone I will have gone false false false en go Indicative Future perfect
367 4 46 2 (you) go go go false false false en go Imperative Imperative

Notes

  • English marks tense largely via auxiliaries (have, will) and irregular past forms (went).
  • These auxiliaries appear in full_form for the surface display, but may be tokenized separately if you later model auxiliary verbs.
  • Negation (“don’t go”, “won’t go”) could be handled as variants (negative=true) if desired, or left to a parsing layer.

6. sentences

id language sentence verb_matched
1030 en I go to work every day. true
1031 en He went home. true
1032 en I have gone to London twice. true
1033 en I will go tomorrow. true

7. sentence_conjugations

id sentence_id conjugation_id language lemma mood tense_name person_seq person_label conj_form
1530 1030 360 en go Indicative Present simple 1 I I go
1531 1031 362 en go Indicative Past simple 3 he/she/it he went
1532 1032 364 en go Indicative Present perfect 1 I I have gone
1533 1033 363 en go Indicative Future simple 1 I I will go

Cached fields enable fast queries without joins. See sentence_matching.md for matching details.


8. sentence_infinitives

id sentence_id infinitive_id language lemma
1630 (none in these) (—) (—) (—)

Would appear for sentences like “I want to go now.” where the infinitive appears explicitly.


9. Explanation

Linguistic element Example Table representation
Base form go verb_lemmas
Infinitive go (displayed as to go) infinitives
Present participle going verbals(type_key='present_participle')
Past participle gone verbals(type_key='past_participle')
Present simple forms I go, he goes conjugations (tense_name='Present simple')
Past simple form went conjugations (tense_name='Past simple')
Perfect forms have gone, had gone conjugations + optional join to verbals('past_participle')
Sentence usage I went home. sentence_conjugations linking went to lemma go

10. Queries

-- All present-tense forms of "go"
SELECT full_form, person_label
FROM conjugations
WHERE language='en' AND lemma='go' AND tense_name='Present simple';

-- All sentences containing "went"
SELECT s.sentence
FROM sentences s
JOIN sentence_conjugations sc ON sc.sentence_id = s.id
WHERE sc.language='en' AND sc.lemma='go' AND sc.tense_name='Past simple';

-- All participle forms
SELECT form FROM verbals WHERE language='en' AND lemma='go';

How English fits the shared model

Feature Implementation
Infinitive (“to go”) infinitives.form='go', rendered with “to”.
Irregular past Stored in conjugations.form='went'.
Past participle verbals.form='gone'.
Continuous forms Built from auxiliary be + verbals('present_participle').
Perfect forms Built from auxiliary have + verbals('past_participle').
Negation (“don’t go”) Optional negative flag or handled via parsing layer.

French aller

Perfect — here’s a worked French example showing exactly how each table (from lemma down to sentence link) would store data for aller, using realistic sample rows. You can drop this section into your documentation after §5 or use it as a test fixture.


Example: French aller

Below we walk through how the single verb aller (“to go”) is represented in the database.


verb_lemmas

id language lemma common regular_overall english_translation
1 fr aller true false to go

One record per base verb per language.


tenses

id language mood tense_name common_tense
10 fr Indicatif Présent true
11 fr Indicatif Imparfait true
12 fr Indicatif Passé composé true
13 fr Subjonctif Présent true

Each language/mood/tense pair appears once and is shared by many verbs.


infinitives

id verb_lemma_id form search_form variant sentences_matched language lemma
100 1 aller aller default false fr aller

Only one infinitive for aller. German verbs would have multiple variants (default, perfect). search_form strips special characters for efficient matching.


verbals (participles and gerunds)

id verb_lemma_id type_key gender number form language lemma
200 1 present_participle NULL NULL allant fr aller
201 1 past_participle m sg allé fr aller
202 1 past_participle f sg allée fr aller
203 1 past_participle m pl allés fr aller
204 1 past_participle f pl allées fr aller

Gender and number allow correct agreement display in compound tenses.


conjugations (finite forms)

id verb_lemma_id tense_id person_seq person_label form full_form search_form regular sentences_matched language lemma mood tense_name
300 1 10 1 je vais je vais je vais false false fr aller Indicatif Présent
301 1 10 2 tu vas tu vas tu vas false false fr aller Indicatif Présent
302 1 10 3 il/elle/on va il va il va false false fr aller Indicatif Présent
303 1 10 4 nous allons nous allons nous allons false false fr aller Indicatif Présent
304 1 10 5 vous allez vous allez vous allez false false fr aller Indicatif Présent
305 1 10 6 ils/elles vont ils vont ils vont false false fr aller Indicatif Présent
306 1 11 1 je allais j’allais j allais false false fr aller Indicatif Imparfait
307 1 12 1 je suis je suis je suis false false fr aller Indicatif Passé composé
  • form = raw morphological stem (e.g. suis),
  • full_form = surface with pronoun/elision (j'allais, je suis),
  • search_form = stripped for matching (e.g. j allais without apostrophe),
  • sentences_matched = has this conjugation been processed for sentence matching?

Compound forms like je suis allé(e) are composed dynamically:

  • conjugation.form = finite aux. (suis)
  • verbal.form = past participle (allé)
  • combined = je suis allé(e).

sentences

id language sentence verb_matched
1000 fr Je vais à l’école. true
1001 fr Nous sommes allés au cinéma. true

sentence_conjugations

id sentence_id conjugation_id language lemma mood tense_name person_seq person_label conj_form
1500 1000 300 fr aller Indicatif Présent 1 je je vais
1501 1001 307 fr aller Indicatif Passé composé 1 je je suis

Cached fields enable fast queries without joins. See sentence_matching.md for matching details.


sentence_infinitives

id sentence_id infinitive_id language lemma
1600 (none in example) (—) (—) (—)

Used for sentences like “Il veut aller à Paris.” where the infinitive appears explicitly.


Summary of Relationships

VerbLemma (aller)
 ├── Infinitives → aller
 ├── Verbals → allant, allé/allée/allés/allées
 └── Conjugations → vais, vas, va, allais, suis, ...
Sentences → linked via SentenceConjugations or SentenceInfinitives

Spanish ir

1. verb_lemmas

id language lemma common regular_overall english_translation
5 es ir true false to go

The lemma is the base dictionary form, identical to the infinitive.


2. tenses

id language mood tense_name common_tense
50 es Indicativo Presente true
51 es Indicativo Pretérito imperfecto true
52 es Indicativo Pretérito perfecto simple true
53 es Indicativo Futuro simple true
54 es Subjuntivo Presente true
55 es Subjuntivo Pretérito imperfecto true
56 es Imperativo Afirmativo true
57 es Indicativo Pretérito perfecto compuesto true

Each row represents a unique (mood + tense) combination.


3. infinitives

id verb_lemma_id form search_form variant sentences_matched language lemma
140 5 ir ir default false es ir

Spanish infinitives have only one variant. search_form strips special characters for efficient matching.


4. verbals (participles and gerunds)

id verb_lemma_id type_key gender number form language lemma
240 5 present_participle NULL NULL yendo es ir
241 5 past_participle NULL NULL ido es ir

The participles are invariable — no gender or number agreement for ido, unlike French allé(e)(s).


5. conjugations

id verb_lemma_id tense_id person_seq person_label form full_form search_form regular negative sentences_matched language lemma mood tense_name
380 5 50 1 yo voy voy voy false false false es ir Indicativo Presente
381 5 50 2 vas vas vas false false false es ir Indicativo Presente
382 5 50 3 él/ella/usted va va va false false false es ir Indicativo Presente
383 5 50 4 nosotros vamos vamos vamos false false false es ir Indicativo Presente
384 5 50 5 vosotros vais vais vais false false false es ir Indicativo Presente
385 5 50 6 ellos/ellas/ustedes van van van false false false es ir Indicativo Presente
386 5 52 1 yo fui fui fui false false false es ir Indicativo Pretérito perfecto simple
387 5 51 1 yo iba iba iba false false false es ir Indicativo Pretérito imperfecto
388 5 53 1 yo iré iré ire false false false es ir Indicativo Futuro simple
389 5 54 1 yo vaya vaya vaya false false false es ir Subjuntivo Presente
390 5 55 1 yo fuera fuera fuera false false false es ir Subjuntivo Pretérito imperfecto
391 5 56 2 ve ve ve false false false es ir Imperativo Afirmativo
392 5 57 1 yo he ido he ido he ido false false false es ir Indicativo Pretérito perfecto compuesto

Notes

  • form = bare finite or auxiliary form; full_form = displayed text.
  • Compound tenses (e.g., he ido, había ido) are represented as a conjugation with the auxiliary haber; the participle ido is retrieved from verbals.
  • The irregularity of ir is reflected by regular=false.

6. sentences

id language sentence verb_matched
1040 es Voy al trabajo todos los días. true
1041 es Fui a Madrid el año pasado. true
1042 es He ido muchas veces. true
1043 es Espero que vaya mañana. true

7. sentence_conjugations

id sentence_id conjugation_id language lemma mood tense_name person_seq person_label conj_form
1540 1040 380 es ir Indicativo Presente 1 yo voy
1541 1041 386 es ir Indicativo Pretérito perfecto simple 1 yo fui
1542 1042 392 es ir Indicativo Pretérito perfecto compuesto 1 yo he ido
1543 1043 389 es ir Subjuntivo Presente 1 yo vaya

Cached fields enable fast queries without joins. See sentence_matching.md for matching details.


8. sentence_infinitives

id sentence_id infinitive_id language lemma
1640 (none in these) (—) (—) (—)

Would appear for sentences like “Quiero ir ahora.” where the infinitive appears explicitly.


9. verbals in compound tenses

Type Form Usage
present_participle yendo Estoy yendo al supermercado.
past_participle ido He ido muchas veces.
  • These forms are referenced during rendering of compound tenses.
  • Estoy yendo (I am going) = conjugation for estar (present) + verbal(type_key='present_participle', form='yendo').

10. Queries

-- All indicative present forms of "ir"
SELECT full_form, person_label
FROM conjugations
WHERE language='es' AND lemma='ir'
  AND mood='Indicativo' AND tense_name='Presente';

-- All sentences containing a past simple form
SELECT s.sentence, sc.matched_text
FROM sentence_conjugations sc
JOIN sentences s ON s.id = sc.sentence_id
WHERE sc.language='es' AND sc.lemma='ir'
  AND sc.tense_name='Pretérito perfecto simple';

11. How Spanish fits the shared model

Feature Implementation
Regular/irregular distinction conjugations.regular=false for ir
Reflexive variants (irse) future extension via lemma_variant or features JSONB
Compound tenses (he ido, había ido) auxiliary in conjugations.full_form, participle in verbals('past_participle')
Subjunctive mood separate tenses rows under mood='Subjuntivo'
Imperatives mood='Imperativo', person_seq for second-person forms
Continuous forms (estoy yendo) auxiliary verb (estar) + verbals('present_participle')
Infinitive clauses (Quiero ir) handled by sentence_infinitives

Italian andare

1. verb_lemmas

id language lemma common regular_overall english_translation
6 it andare true false to go

Irregular verb; motion verb that takes auxiliary essere in compound tenses.


2. tenses

id language mood tense_name common_tense
60 it Indicativo Presente true
61 it Indicativo Imperfetto true
62 it Indicativo Passato prossimo true
63 it Indicativo Futuro semplice true
64 it Congiuntivo Presente true
65 it Imperativo Afirmativo true

(Extend as needed: Trapassato prossimo, Futuro anteriore, Congiuntivo imperfetto, etc.)


3. infinitives

id verb_lemma_id form search_form variant sentences_matched language lemma
150 6 andare andare default false it andare

4. verbals (participles and gerunds)

id verb_lemma_id type_key gender number form language lemma
250 6 present_participle NULL NULL andando it andare
251 6 past_participle m sg andato it andare
252 6 past_participle f sg andata it andare
253 6 past_participle m pl andati it andare
254 6 past_participle f pl andate it andare

Italian past participles agree in gender/number with the subject when the auxiliary is essere.


5. conjugations (finite forms)

id verb_lemma_id tense_id person_seq person_label form full_form search_form regular negative sentences_matched language lemma mood tense_name
400 6 60 1 io vado io vado io vado false false false it andare Indicativo Presente
401 6 60 2 tu vai tu vai tu vai false false false it andare Indicativo Presente
402 6 60 3 lui/lei va lui va lui va false false false it andare Indicativo Presente
403 6 60 4 noi andiamo noi andiamo noi andiamo false false false it andare Indicativo Presente
404 6 60 5 voi andate voi andate voi andate false false false it andare Indicativo Presente
405 6 60 6 loro vanno loro vanno loro vanno false false false it andare Indicativo Presente
406 6 61 1 io andavo io andavo io andavo false false false it andare Indicativo Imperfetto
407 6 62 1 io sono io sono io sono false false false it andare Indicativo Passato prossimo
408 6 63 1 io andrò io andrò io andro false false false it andare Indicativo Futuro semplice
409 6 64 1 che io vada che io vada che io vada false false false it andare Congiuntivo Presente
410 6 65 2 tu vai / va’ vai / va’ vai va false false false it andare Imperativo Afirmativo

Notes

  • form is the finite piece; full_form is the display with the subject label.
  • For compound tenses (Passato prossimo), form is the finite auxiliary (sono/sei/è/siamo/siete/sono); the participle comes from verbals and agrees with gender/number.

6. sentences

id language sentence verb_matched
1050 it Io vado al lavoro. true
1051 it Siamo andati al cinema. true
1052 it Domani andrò a Roma. true
1053 it Spero che tu vada bene. true

7. sentence_conjugations

id sentence_id conjugation_id language lemma mood tense_name person_seq person_label conj_form
1550 1050 400 it andare Indicativo Presente 1 io io vado
1551 1051 407 it andare Indicativo Passato prossimo 4 noi noi siamo
1552 1052 408 it andare Indicativo Futuro semplice 1 io io andrò
1553 1053 409 it andare Congiuntivo Presente 1 che io che io vada

Cached fields enable fast queries without joins. See sentence_matching.md for matching details.


8. sentence_infinitives

id sentence_id infinitive_id language lemma
1650 (none in these) (—) (—) (—)

Would appear for sentences like “Voglio andare a casa.” where the infinitive appears explicitly.


10. How the compound forms assemble

  • Passato prossimo: conjugations.full_form (aux) + verbals.past_participle with agreement Examples:

    • io sono andato / io sono andata
    • noi siamo andati / noi siamo andate

The auxiliary for andare is essere, so agreement is required. For verbs that take avere, agreement is usually not required unless a clitic object precedes.


11. Queries

-- All present-tense forms of "andare"
SELECT full_form, person_label
FROM conjugations
WHERE language='it' AND lemma='andare'
  AND mood='Indicativo' AND tense_name='Presente'
ORDER BY person_seq;

-- Sentences with "andare" in Passato prossimo (aux match)
SELECT s.sentence, sc.matched_text
FROM sentence_conjugations sc
JOIN sentences s ON s.id = sc.sentence_id
WHERE sc.language='it' AND sc.lemma='andare'
  AND sc.tense_name='Passato prossimo';

-- Participles for agreement rendering
SELECT gender, number, form
FROM verbals
WHERE language='it' AND lemma='andare' AND type_key='past_participle';

12. How Italian fits the shared model

Feature Implementation
Irregular present forms (vado, vai, va, vanno) conjugations.form values, regular=false
Compound tenses with essere conjugations finite aux + verbals(past_participle)
Participial agreement verbals(gender, number) rows
Subjunctive tenses under mood='Congiuntivo'
Imperative (tu) forms including va’ stored in conjugations for mood='Imperativo'
Gerundio (andando) verbals(type_key='present_participle') and combined with auxiliary in progressive constructions

Portuguese ir

1. verb_lemmas

id language lemma common regular_overall english_translation
7 pt ir true false to go

Irregular verb; forms are partly suppletive (vou, fui, ido).


2. tenses

id language mood tense_name common_tense
70 pt Indicativo Presente true
71 pt Indicativo Pretérito imperfeito true
72 pt Indicativo Pretérito perfeito true
73 pt Indicativo Futuro do presente true
74 pt Subjuntivo Presente true
75 pt Subjuntivo Pretérito imperfeito true
76 pt Imperativo Afirmativo true
77 pt Indicativo Pretérito perfeito composto true

3. infinitives

id verb_lemma_id form search_form variant sentences_matched language lemma
160 7 ir ir default false pt ir

Portuguese infinitives may also appear as infinitivo pessoal (“irmos”, “irem”), but these can be modeled as conjugations under mood='Infinitivo pessoal' later if desired.


4. verbals (participles and gerunds)

id verb_lemma_id type_key gender number form language lemma
260 7 present_participle NULL NULL indo pt ir
261 7 past_participle NULL NULL ido pt ir

The participle ido is invariable; Portuguese does not mark gender/number here.


5. conjugations

id verb_lemma_id tense_id person_seq person_label form full_form search_form regular negative sentences_matched language lemma mood tense_name
420 7 70 1 eu vou eu vou eu vou false false false pt ir Indicativo Presente
421 7 70 2 tu vais tu vais tu vais false false false pt ir Indicativo Presente
422 7 70 3 ele/ela vai ele vai ele vai false false false pt ir Indicativo Presente
423 7 70 4 nós vamos nós vamos nos vamos false false false pt ir Indicativo Presente
424 7 70 5 vós ides vós ides vos ides false false false pt ir Indicativo Presente
425 7 70 6 eles/elas vão eles vão eles vao false false false pt ir Indicativo Presente
426 7 71 1 eu ia eu ia eu ia false false false pt ir Indicativo Pretérito imperfeito
427 7 72 1 eu fui eu fui eu fui false false false pt ir Indicativo Pretérito perfeito
428 7 73 1 eu irei eu irei eu irei false false false pt ir Indicativo Futuro do presente
429 7 74 1 eu eu vá eu va false false false pt ir Subjuntivo Presente
430 7 75 1 eu fosse eu fosse eu fosse false false false pt ir Subjuntivo Pretérito imperfeito
431 7 76 2 tu vai vai vai false false false pt ir Imperativo Afirmativo
432 7 77 1 eu tenho ido eu tenho ido eu tenho ido false false false pt ir Indicativo Pretérito perfeito composto

Notes

  • Tenho ido (I have gone) is a compound tense: auxiliary ter in conjugations.form, participle ido in verbals.
  • Negation is handled at the sentence level or, optionally, by setting negative=true for não vou, não fui, etc.
  • Vou, vais, vai, etc., are irregular; regular=false.

6. sentences

id language sentence verb_matched
1060 pt Eu vou para casa. true
1061 pt Nós fomos ao mercado. true
1062 pt Eu tenho ido ao ginásio. true
1063 pt Espero que ela vá amanhã. true

7. sentence_conjugations

id sentence_id conjugation_id language lemma mood tense_name person_seq person_label conj_form
1560 1060 420 pt ir Indicativo Presente 1 eu eu vou
1561 1061 427 pt ir Indicativo Pretérito perfeito 4 nós nós fomos
1562 1062 432 pt ir Indicativo Pretérito perfeito composto 1 eu eu tenho ido
1563 1063 429 pt ir Subjuntivo Presente 3 ela

Cached fields enable fast queries without joins. See sentence_matching.md for matching details.


8. sentence_infinitives

id sentence_id infinitive_id language lemma
1660 (none in these) (—) (—) (—)

Would appear for sentences like “Quero ir agora.” where the infinitive appears explicitly.


10. How the compound forms assemble

Pretérito perfeito composto: conjugations.full_form (aux tenho) + verbals.past_participle (ido) → eu tenho ido

Futuro composto (not shown here): terei + idoeu terei ido


11. Queries

-- All indicative present forms of "ir"
SELECT full_form, person_label
FROM conjugations
WHERE language='pt' AND lemma='ir'
  AND mood='Indicativo' AND tense_name='Presente'
ORDER BY person_seq;

-- All compound tense forms (aux + participle)
SELECT full_form
FROM conjugations
WHERE language='pt' AND lemma='ir'
  AND tense_name LIKE 'Pretérito perfeito composto';

-- All participle or gerund forms
SELECT type_key, form
FROM verbals
WHERE language='pt' AND lemma='ir';

12. How Portuguese fits the shared model

Feature Implementation
Suppletive irregular forms (vou, fui, ido) regular=false; each form stored as-is in conjugations.form.
Compound tenses Auxiliary (ter, haver) as form, participle from verbals('past_participle').
Subjunctive forms Separate tenses with mood='Subjuntivo'.
Imperative Stored in mood='Imperativo'.
Continuous (estou indo) Auxiliary estar + verbals('present_participle').
Infinitivo pessoal Future extension; can be stored as extra tenses if needed.

This site uses Just the Docs, a documentation theme for Jekyll.