Skip to main content

Moksha morphological analyzer

This is a rule-based morphological analyzer for Moksha (mdf; Uralic > Mordvinic). It is based on a formalized description of literary Moksha morphology, which also includes a number of dialectal elements, and uses uniparser-morph for parsing. It performs full morphological analysis of Moksha 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 Moksha texts in Python, install the module:

pip3 install uniparser-moksha

Import the module and create an instance of MokshaAnalyzer 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_moksha import MokshaAnalyzer
a = MokshaAnalyzer(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 1.7-million-word Moksha 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 91% on literary texts and 79% 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.

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

uniparser-moksha-1.1.0.tar.gz (1.2 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

uniparser_moksha-1.1.0-py3-none-any.whl (1.2 MB view details)

Uploaded Python 3

File details

Details for the file uniparser-moksha-1.1.0.tar.gz.

File metadata

  • Download URL: uniparser-moksha-1.1.0.tar.gz
  • Upload date:
  • Size: 1.2 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.3.0 pkginfo/1.7.0 requests/2.22.0 setuptools/45.2.0 requests-toolbelt/0.9.1 tqdm/4.58.0 CPython/3.8.5

File hashes

Hashes for uniparser-moksha-1.1.0.tar.gz
Algorithm Hash digest
SHA256 1f8ab46ab09d4e7a86a190de6b0ccc40afcaeaf1c60d9e85182253a71b99644b
MD5 15a2f91a2c157e04c07e00fc78e5374b
BLAKE2b-256 21ff02f378756e3b3a0338eff4d6c07809f26266bf5c527c0d9aef09c11d7d20

See more details on using hashes here.

File details

Details for the file uniparser_moksha-1.1.0-py3-none-any.whl.

File metadata

  • Download URL: uniparser_moksha-1.1.0-py3-none-any.whl
  • Upload date:
  • Size: 1.2 MB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.3.0 pkginfo/1.7.0 requests/2.22.0 setuptools/45.2.0 requests-toolbelt/0.9.1 tqdm/4.58.0 CPython/3.8.5

File hashes

Hashes for uniparser_moksha-1.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 6ef70f53179b14a41906d4c86e40404f524fbd2f56d76e4ec6f89a2b0eb6bbbe
MD5 1887f572de2b353fb21302c0f2ade950
BLAKE2b-256 b76e4a39d172726ee1554d304cbef413712281422faf0f2340df3e9e3a8a405f

See more details on using hashes here.

Release history Release notifications | RSS feed

This release

1.1.0 This release

2 files

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page