Skip to main content

Erzya morphological analyzer

This is a rule-based morphological analyzer for Erzya (myv; Uralic > Mordvinic). It is based on a formalized description of literary Erzya morphology, which also includes a number of dialectal elements, and uses uniparser-morph for parsing. It performs full morphological analysis of Erzya words (lemmatization, POS tagging, grammatical tagging, glossing).

How to use

Python package

The analyzer is available as a Python package. If you want to analyze Erzya texts in Python, install the module:

pip3 install uniparser-erzya

Import the module and create an instance of ErzyaAnalyzer class. Set mode='strict' if you are going to process text in standard orthography, or mode='nodiacritics' if you expect some words to lack the diacritics (which often happens in social media). After that, you can either parse tokens or lists of tokens with analyze_words(), or parse a frequency list with analyze_wordlist(). Here is a simple example:

from uniparser_erzya import ErzyaAnalyzer
a = ErzyaAnalyzer(mode='strict')

analyses = a.analyze_words('Морфологиянть')
# The parser is initialized before first use, so expect
# some delay here (usually several seconds)

# You will get a list of Wordform objects
# The analysis attributes are stored in its properties
# as string values, e.g.:
for ana in analyses:
        print(ana.wf, ana.lemma, ana.gramm, ana.gloss)

# You can also pass lists (even nested lists) and specify
# output format ('xml' or 'json')
# If you pass a list, you will get a list of analyses
# with the same structure
analyses = a.analyze_words([['А'], ['Мон', 'тонь', 'вечктян', '.']],
	                       format='xml')
analyses = a.analyze_words(['Морфологиянть', [['А'], ['Мон', 'тонь', 'вечктян', '.']]],
	                       format='json')

Refer to the uniparser-morph documentation for the full list of options.

Disambiguation

Disambiguation is not yet available for this language.

Word lists

Alternatively, you can use a preprocessed word list. The wordlists directory contains a list of words from a 2.3-million-word Erzya corpus (wordlist_main.csv), list of analyzed tokens (wordlist_analyzed.txt; each line contains all possible analyses for one word in an XML format), and list of tokens the parser could not analyze (wordlist_unanalyzed.txt). The recall of the analyzer is 93.6% on literary texts and 90.7% on social media texts.

Description format

The description is carried out in the uniparser-morph format and involves a description of the inflection (paradigms.txt), a grammatical dictionary (kpv_lexemes_XXX.txt files), a list of rules that annotate combinations of lexemes and grammatical values with additional Russian translations (lex_rules.txt), and a short list of analyses that should be avoided (bad_analyses.txt). The dictionary contains descriptions of individual lexemes, each of which is accompanied by information about its stem, its part-of-speech tag and some other grammatical/borrowing information, its inflectional type (paradigm), and Russian translation. See more about the format in the uniparser-morph documentation.

Metadata

Release files for uniparser-erzya 1.1.3

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for uniparser-erzya 1.1.3
File Size Uploaded
uniparser-erzya-1.1.3.tar.gz 1.1 MB Details

Built distribution (wheel)

Table of built distributions (wheels) for uniparser-erzya 1.1.3
File Interpreter ABI Platform
uniparser_erzya-1.1.3-py3-none-any.whl Python 3 none any Details

Total release size: 2.1 MB

Release files / uniparser-erzya-1.1.3.tar.gz

Download URL uniparser-erzya-1.1.3.tar.gz
Size 1.1 MB
Tags Source
SHA-256 checksum
How to use checksums
c438d39bc1de15eb42a62962c11ef09c01f3f8371dbe50434fb582ca040357f4
BLAKE2b-256 checksum
How to use checksums
026682b0c7254c40954e7121854b4d81381c560b8e617e76d9ba42d64934bd3c
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.4.1 importlib_metadata/4.6.1 pkginfo/1.7.0 requests/2.28.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.9.1

Release files / uniparser_erzya-1.1.3-py3-none-any.whl

Download URL uniparser_erzya-1.1.3-py3-none-any.whl
Size 1.1 MB
Tags Python 3
SHA-256 checksum
How to use checksums
1d8006b49c701dc9612c1cf58f59da1a59c7d7376ddbfb4609591ac1b2ce58f3
BLAKE2b-256 checksum
How to use checksums
bae6b95c4945f6c44e603291d642289ec67ce9e7cfd0232b5f71580e4276a6f6
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.4.1 importlib_metadata/4.6.1 pkginfo/1.7.0 requests/2.28.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.9.1

Release history Release notifications | RSS feed

This release

1.1.3 This release

2 release files

1.1.2

2 release files

1.1.1

2 release files

1.1.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page