English

English is available at dumling.en, getLanguageApi("en"), and schemasFor.en.

Supported Lemma Families

English supports the same public lemma families as the other implemented language packs:

lemmaKindlemmaSubKind values
LexemeADJ, ADP, ADV, AUX, CCONJ, DET, INTJ, NOUN, NUM, PART, PRON, PROPN, PUNCT, SCONJ, SYM, VERB, X
MorphemeCircumfix, Clitic, Duplifix, Infix, Interfix, Prefix, Root, Suffix, Suffixoid, ToneMarking, Transfix
PhrasemeAphorism, DiscourseFormula, Idiom, Proverb
ConstructionFusion, PairedFrame

Construction is part of the shared public ontology even though the English examples here focus on lexemes, morphemes, and phrasemes. Construction entries are citation-only and currently featureless.

Common Feature Areas

English feature schemas are intentionally narrower than the abstract ontology.

SubkindInherent examplesInflectional examples
NOUNabbr, foreign, numForm, numType, stylenumber
VERBhasGovPrep, phrasal, stylemood, number, person, tense, verbForm, voice
ADJabbr, numForm, numType, styledegree

English noun number supports Sing, Plur, and Ptan. English verb tense supports Past and Pres, and verbForm supports Fin, Ger, Inf, and Part.

Attestation Files

English attestation source files live in src/to-generate/attestations/en. Each file exports exactly one attested dumling object and generates exactly one Markdown attestation.

Lemma and surface attestations are generated from files under lemma/ and surface/ with base64url ID basenames. Selection fixtures under selection/{sentence}/ use a sentence directory normalized from sentenceMarkdown without brackets plus a semantic filename that keeps the bracketed selection span, which allows multiple selections for the same sentence. Generated Markdown attestations are written to src/generated/entities/en/{entityKind}/ and published at /{lang}/{entityKind}/{base64urlId}/.

Example

import { dumling } from "dumling";

const runLemma = dumling.en.create.lemma({
	canonicalLemma: "run",
	lemmaKind: "Lexeme",
	lemmaSubKind: "VERB",
	inherentFeatures: {},
	meaningInEmojis: "🏃",
});

const ranSurface = dumling.en.create.surface.inflection({
	lemma: runLemma,
	normalizedFullSurface: "ran",
	inflectionalFeatures: {
		tense: "Past",
		verbForm: "Fin",
	},
});

const ranSelection = dumling.en.convert.surface.toSelection(ranSurface, {
	spelledSelection: "ran",
});

dumling.en.parse.selection(ranSelection);

Schema Access

schemasFor.en.entity.Lemma.Lexeme.VERB();
schemasFor.en.entity.Surface.Inflection.Lexeme.VERB();
schemasFor.en.entity.Selection.Inflection.Lexeme.VERB();