This ontology provides a FAIR, interoperable vocabulary for grammatical error annotation and correction, integrating the English-focused ERRANT taxonomy with Czech-specific extensions from ERRANT-CZ and fine-grained categories derived from Czech proofreading and correction rules (Opravidlo). The ontology formalizes error types, subtypes, and correction operations in RDF, aligns linguistic properties with the LexInfo ontology, and supports multilingual grammatical error correction research, annotation interoperability, and data reuse.
Grammatical Error Correction (GEC) relies on well-defined error taxonomies to ensure consistent annotation, evaluation, and comparability across datasets. ERRANT has become a widely used framework for English GEC, while subsequent work extended it to other languages, including Czech.
In parallel, Czech proofreading and correction tools have developed detailed rule-based classifications that are not fully covered by standard GEC taxonomies. This ontology bridges these approaches by unifying ERRANT, ERRANT-CZ, and Czech proofreading rules into a single, formally defined RDF vocabulary.
The ontology is organized as a hierarchical system of error categories and correction operations. It consists of three main layers: the core ERRANT taxonomy, Czech-specific ERRANT-CZ extensions, and an extended layer based on Czech proofreading rules (Opravidlo).
All error categories are modeled as RDF classes organized using rdfs:subClassOf relations.
Correction operations are represented as explicit resources and linked to error types.
The ontology covers multiple linguistic dimensions, including morphology (inflection and agreement), lexical choice, orthography and typography, syntax, style, and phonology. Czech-specific phenomena such as rich inflection, agreement mismatches, diacritics, and quotation conventions are explicitly modeled.
Where relevant, error categories are enriched with LexInfo properties (e.g. tense, aspect, case, number), allowing integration with lexical and morphosyntactic resources.
IRI: https://nlp.fi.muni.cz/errant#ADJ
IRI: https://nlp.fi.muni.cz/errant#ADJ_INFL
IRI: https://nlp.fi.muni.cz/errant#ADV
IRI: https://nlp.fi.muni.cz/errant#CONJ
IRI: https://nlp.fi.muni.cz/errant#CONTR
IRI: https://nlp.fi.muni.cz/errant#CS_ADJ_INFL
IRI: https://nlp.fi.muni.cz/errant#CS_NOUN_INFL
IRI: https://nlp.fi.muni.cz/errant#CS_NUM_INFL
IRI: https://nlp.fi.muni.cz/errant#CS_OTHER
IRI: https://nlp.fi.muni.cz/errant#CS_PRON_INFL
IRI: https://nlp.fi.muni.cz/errant#CS_PROPN_INFL
IRI: https://nlp.fi.muni.cz/errant#CS_QUOTATION
IRI: https://nlp.fi.muni.cz/errant#CS_VERB_INFL
IRI: https://nlp.fi.muni.cz/errant#CS_WO
IRI: https://nlp.fi.muni.cz/errant#CS_ErrorType
IRI: https://nlp.fi.muni.cz/errant#DET
IRI: https://nlp.fi.muni.cz/errant#Operation
IRI: https://nlp.fi.muni.cz/errant#ErrorType
IRI: https://nlp.fi.muni.cz/errant#LEX
IRI: https://nlp.fi.muni.cz/errant#LEX_MISUSE_BAD_EXPR
Datumy jeho dalších návštěv zatím nejsou známé. → Data jeho dalších návštěv zatím nejsou známé.
IRI: https://nlp.fi.muni.cz/errant#LEX_MISUSE_BAD_PRON
IRI: https://nlp.fi.muni.cz/errant#LEX_MISUSE_BAD_WORD
Člověk si mohl vybrat jakékoli ze čtyřiadvaceti okének. → Člověk si mohl vybrat kterékoli ze čtyřiadvaceti okének.
IRI: https://nlp.fi.muni.cz/errant#LEX_MISUSE_HYPERCORRECT_EXPR
Demonstranté se sešli na náměstí. → Demonstranti se sešli na náměstí.
IRI: https://nlp.fi.muni.cz/errant#LEX_MISUSE_INCORR_EXPR
Šlo mu jen o vřelé obětí. → Šlo mu jen o vřelé objetí.
IRI: https://nlp.fi.muni.cz/errant#LEX_MISUSE_INCORRECT_DRUHAK
Jednak se mi líbí a druhak je chytrá. → Jednak se mi líbí a jednak je chytrá.
IRI: https://nlp.fi.muni.cz/errant#LEX_MISUSE_POTENTIAL_BAD_EXPR
Včera jsem ti poslal email. → Včera jsem ti poslal e-mail.
IRI: https://nlp.fi.muni.cz/errant#LEX_MISUSE_VIZ
"viz. strany 172–174" (incorrect) → "viz strany 172–174" (preferred form)
IRI: https://nlp.fi.muni.cz/errant#Missing
IRI: https://nlp.fi.muni.cz/errant#MORPH_FORM_BAD_FORM
IRI: https://nlp.fi.muni.cz/errant#MORPH_INFL
IRI: https://nlp.fi.muni.cz/errant#MORPH_INFL_BAD_EXPR
IRI: https://nlp.fi.muni.cz/errant#MORPH_INFL_BAD_FORM
IRI: https://nlp.fi.muni.cz/errant#MORPH_INFL_BAD_FORM_JENZ
IRI: https://nlp.fi.muni.cz/errant#MORPH_INFL_BAD_PRON
IRI: https://nlp.fi.muni.cz/errant#MORPH_INFL_BAD_VERB_BE
IRI: https://nlp.fi.muni.cz/errant#MORPH_INFL_BAD_VERB_FORM
IRI: https://nlp.fi.muni.cz/errant#MORPH_INFL_BAD_VERB_SE
Aby jsi se dostal na místo. → Aby ses dostal na místo.
IRI: https://nlp.fi.muni.cz/errant#MORPH_INFL_MISMATCH_ADJ
IRI: https://nlp.fi.muni.cz/errant#MORPH_INFL_MISMATCH_ATTR_MOD
IRI: https://nlp.fi.muni.cz/errant#MORPH_INFL_MISMATCH_SUBJ_VERB
IRI: https://nlp.fi.muni.cz/errant#MORPH_INFL_SWAPPED_ME_MNE
IRI: https://nlp.fi.muni.cz/errant#MORPH_INFL_SWAPPED_YI
Pálí je dobré bidlo. → Pálí je dobré bydlo.
IRI: https://nlp.fi.muni.cz/errant#MORPH_MISUSE
IRI: https://nlp.fi.muni.cz/errant#MORPH_MISUSE_BAD_NEGATION
Včera nikdo zůstal doma. → Včera nikdo nezůstal doma.
IRI: https://nlp.fi.muni.cz/errant#MORPH_MISUSE_SWAPPED_MI_MY
Lucka se my podívala do očí. → Lucka se mi podívala do očí.
IRI: https://nlp.fi.muni.cz/errant#MORPH_MISUSE_SWAPPED_SEBOU
Nesl si sebou batoh. → Nesl si s sebou batoh.
IRI: https://nlp.fi.muni.cz/errant#MORPH
IRI: https://nlp.fi.muni.cz/errant#NOUN
IRI: https://nlp.fi.muni.cz/errant#NOUN_INFL
IRI: https://nlp.fi.muni.cz/errant#NOUN_NUM
IRI: https://nlp.fi.muni.cz/errant#NOUN_POSS
IRI: https://nlp.fi.muni.cz/errant#ORTH_CASING_MAKE_CASE_CAPITAL
Země obíhá kolem slunce. → Země obíhá kolem Slunce.
IRI: https://nlp.fi.muni.cz/errant#ORTH_CASING_MAKE_CASE_LOWER
Hlásil se ke Křesťanství. → Hlásil se ke křesťanství.
IRI: https://nlp.fi.muni.cz/errant#ORTH_CASING_MAKE_CASE_SENT_START
vařili jsme oběd. → Vařili jsme oběd.
IRI: https://nlp.fi.muni.cz/errant#ORTH_CASING_PHRASE_CAPITAL_CAPITAL
Šli jsme na velký Javorník. → Šli jsme na Velký Javorník.
IRI: https://nlp.fi.muni.cz/errant#ORTH_CASING_PHRASE_CAPITAL_LOWER
Pracuji na Masarykově Univerzitě. → Pracuji na Masarykově univerzitě.
IRI: https://nlp.fi.muni.cz/errant#ORTH_CASING_PHRASE_CAPITAL_LOWER_CAPITAL
Jedeme do teplic nad metují. → Jedeme do Teplic nad Metují.
IRI: https://nlp.fi.muni.cz/errant#ORTH_CASING_PHRASE_CAPITAL_LOWER_CAPITAL_LOWER
Albrechtice v jizerských horách jsou krásná obec. → Albrechtice v Jizerských horách jsou krásná obec.
IRI: https://nlp.fi.muni.cz/errant#ORTH_CASING_PHRASE_LOWER_CAPITAL
Pocházím z Východního Slezska. → Pocházím z východního Slezska.
IRI: https://nlp.fi.muni.cz/errant#ORTH_CASING_PHRASE_LOWER_LOWER
Hlásil se k Pravoslavné církvi. → Hlásil se k pravoslavné církvi.
IRI: https://nlp.fi.muni.cz/errant#ORTH_WSPACE_EXTRA_SPACE
přes to → přesto
IRI: https://nlp.fi.muni.cz/errant#ORTH
IRI: https://nlp.fi.muni.cz/errant#OTHER
IRI: https://nlp.fi.muni.cz/errant#PART
IRI: https://nlp.fi.muni.cz/errant#PHON
IRI: https://nlp.fi.muni.cz/errant#PHON_VOCAL_BAD_PREP
Zavřel ho v sklepě. → Zavřel ho ve sklepě.
IRI: https://nlp.fi.muni.cz/errant#PREP
IRI: https://nlp.fi.muni.cz/errant#PRON
IRI: https://nlp.fi.muni.cz/errant#PRON_INFL
IRI: https://nlp.fi.muni.cz/errant#PROPN
IRI: https://nlp.fi.muni.cz/errant#PROPN_INFL
IRI: https://nlp.fi.muni.cz/errant#PUNCT
IRI: https://nlp.fi.muni.cz/errant#Replacement
IRI: https://nlp.fi.muni.cz/errant#SPELL_DICT_CONFUSION
IRI: https://nlp.fi.muni.cz/errant#SPELL_DICT_NOT_FOUND
IRI: https://nlp.fi.muni.cz/errant#SPELL
IRI: https://nlp.fi.muni.cz/errant#STYLE
IRI: https://nlp.fi.muni.cz/errant#STYLE_MISUSE_ARCHAIC_TERM
Musíš tu budovu objeti. → Musíš tu budovu objet.
IRI: https://nlp.fi.muni.cz/errant#STYLE_MISUSE_BAD_HONORIFIC
Pane Novák, pojďte dovnitř. → Pane Nováku, pojďte dovnitř.
IRI: https://nlp.fi.muni.cz/errant#STYLE_MISUSE_PLEONASM
IRI: https://nlp.fi.muni.cz/errant#STYLE_MISUSE_PLEONASM_OBA
Četl jsem obě dvě knihy. → Četl jsem obě knihy.
IRI: https://nlp.fi.muni.cz/errant#STYLE_MISUSE_REPEATED_EXPR
… prostě přehodnotil, že se mu prostě nezdají. → … přehodnotil, že se mu nezdají.
IRI: https://nlp.fi.muni.cz/errant#STYLE_MISUSE_REPEATED_PRON
IRI: https://nlp.fi.muni.cz/errant#STYLE_MISUSE_TOO_MANY_PREPS
IRI: https://nlp.fi.muni.cz/errant#SYNTAX
IRI: https://nlp.fi.muni.cz/errant#SYNTAX_MISUSE_BAD_PRON_POS
IRI: https://nlp.fi.muni.cz/errant#SYNTAX_MISUSE_BAD_SENT_CONN
IRI: https://nlp.fi.muni.cz/errant#SYNTAX_MISUSE_BAD_SENT_STRUCTURE
IRI: https://nlp.fi.muni.cz/errant#SYNTAX_MISUSE_COLLOQ_CO
IRI: https://nlp.fi.muni.cz/errant#SYNTAX_MISUSE_ZEUGMA
IRI: https://nlp.fi.muni.cz/errant#SYNTAX_OMM_MISSING_VERB
IRI: https://nlp.fi.muni.cz/errant#TYPO
IRI: https://nlp.fi.muni.cz/errant#TYPO_PUNCT_GENERAL
IRI: https://nlp.fi.muni.cz/errant#UNK
IRI: https://nlp.fi.muni.cz/errant#Unnecessary
IRI: https://nlp.fi.muni.cz/errant#VERB
IRI: https://nlp.fi.muni.cz/errant#VERB_SVA
IRI: https://nlp.fi.muni.cz/errant#VERB_FORM
IRI: https://nlp.fi.muni.cz/errant#VERB_INFL
IRI: https://nlp.fi.muni.cz/errant#VERB_TENSE
IRI: https://nlp.fi.muni.cz/errant#WO
IRI: https://nlp.fi.muni.cz/errant#allowedOperation
IRI: http://www.w3.org/2004/02/skos/core#altLabel
IRI: http://www.w3.org/2004/02/skos/core#definition
IRI: http://www.w3.org/2004/02/skos/core#example
IRI: http://purl.org/dc/terms/language
IRI: http://purl.org/dc/terms/license
IRI: http://www.w3.org/2004/02/skos/core#prefLabel
IRI: http://purl.org/dc/terms/source
IRI: https://nlp.fi.muni.cz/errant#ADJ
IRI: https://nlp.fi.muni.cz/errant#ADJ_INFL
IRI: https://nlp.fi.muni.cz/errant#ADV
IRI: https://nlp.fi.muni.cz/errant#CONJ
IRI: https://nlp.fi.muni.cz/errant#CONTR
IRI: https://nlp.fi.muni.cz/errant#CS_ADJ_INFL
IRI: https://nlp.fi.muni.cz/errant#CS_NOUN_INFL
IRI: https://nlp.fi.muni.cz/errant#CS_NUM_INFL
IRI: https://nlp.fi.muni.cz/errant#CS_OTHER
IRI: https://nlp.fi.muni.cz/errant#CS_PRON_INFL
IRI: https://nlp.fi.muni.cz/errant#CS_PROPN_INFL
IRI: https://nlp.fi.muni.cz/errant#CS_QUOTATION
IRI: https://nlp.fi.muni.cz/errant#CS_VERB_INFL
IRI: https://nlp.fi.muni.cz/errant#CS_WO
IRI: https://nlp.fi.muni.cz/errant#DET
IRI: https://nlp.fi.muni.cz/errant#MORPH_INFL_BAD_EXPR
IRI: https://nlp.fi.muni.cz/errant#MORPH_INFL_BAD_FORM
IRI: https://nlp.fi.muni.cz/errant#MORPH_INFL_BAD_PRON
IRI: https://nlp.fi.muni.cz/errant#MORPH_INFL_BAD_VERB_BE
IRI: https://nlp.fi.muni.cz/errant#MORPH_INFL_BAD_VERB_FORM
IRI: https://nlp.fi.muni.cz/errant#MORPH_INFL_MISMATCH_ADJ
IRI: https://nlp.fi.muni.cz/errant#MORPH_INFL_MISMATCH_ATTR_MOD
IRI: https://nlp.fi.muni.cz/errant#MORPH_INFL_MISMATCH_SUBJ_VERB
IRI: https://nlp.fi.muni.cz/errant#MORPH_INFL_SWAPPED_ME_MNE
IRI: https://nlp.fi.muni.cz/errant#MORPH
IRI: https://nlp.fi.muni.cz/errant#NOUN
IRI: https://nlp.fi.muni.cz/errant#NOUN_INFL
IRI: https://nlp.fi.muni.cz/errant#NOUN_NUM
IRI: https://nlp.fi.muni.cz/errant#NOUN_POSS
IRI: https://nlp.fi.muni.cz/errant#ORTH
IRI: https://nlp.fi.muni.cz/errant#OTHER
IRI: https://nlp.fi.muni.cz/errant#PART
IRI: https://nlp.fi.muni.cz/errant#PREP
IRI: https://nlp.fi.muni.cz/errant#PRON
IRI: https://nlp.fi.muni.cz/errant#PRON_INFL
IRI: https://nlp.fi.muni.cz/errant#PROPN
IRI: https://nlp.fi.muni.cz/errant#PROPN_INFL
IRI: https://nlp.fi.muni.cz/errant#PUNCT
IRI: https://nlp.fi.muni.cz/errant#SPELL_DICT_CONFUSION
IRI: https://nlp.fi.muni.cz/errant#SPELL_DICT_NOT_FOUND
IRI: https://nlp.fi.muni.cz/errant#SPELL
IRI: https://nlp.fi.muni.cz/errant#VERB
IRI: https://nlp.fi.muni.cz/errant#VERB_SVA
IRI: https://nlp.fi.muni.cz/errant#VERB_FORM
IRI: https://nlp.fi.muni.cz/errant#VERB_INFL
IRI: https://nlp.fi.muni.cz/errant#VERB_TENSE
IRI: https://nlp.fi.muni.cz/errant#WO
The authors would like to thank Silvio Peroni for developing LODE, a Live OWL Documentation Environment, which is used for representing the Cross Referencing Section of this document and Daniel Garijo for developing Widoco, the program used to create the template used in this documentation.