udapi.block.ud.ru.fixedeprels module

Block to fix case-enhanced dependency relations in Russian.

class udapi.block.ud.ru.fixedeprels.FixEdeprels(zones='all', if_empty_tree='process', **kwargs)[source]

Bases: Block

copy_case_from_adposition(node, adposition)[source]

In some treebanks, adpositions have the Case feature and it denotes the valency case that the preposition’s nominal must be in.

outermost = {'более_чем': [], 'будто': [], 'ведь': [], 'ежели': [], 'если': [], 'как': ['как_только'], 'когда': [], 'кроме_как': [], 'менее_чем': [], 'минус': [], 'нежели': [], 'плюс': [], 'пока': [], 'поскольку': [], 'потому_что': [], 'пусть': [], 'равно_как': [], 'раз': [], 'словно': [], 'так_что': [], 'хоть': [], 'хотя': [], 'чем': [], 'что': [], 'чтобы': [], 'яко': []}
process_node(node)[source]

Occasionally the edeprels automatically derived from the Russian basic trees do not match the whitelist. For example, the noun is an abbreviation and its morphological case is unknown.

set_basic_and_enhanced(node, parent, deprel, edeprel)[source]

Modifies the incoming relation of a node both in the basic tree and in the enhanced graph. If the node does not yet depend in the enhanced graph on the current basic parent, the new relation will be added without removing any old one. If the node already depends multiple times on the current basic parent in the enhanced graph, all such enhanced relations will be removed before adding the new one.

unambiguous = {'loc': 'в:loc', 'versus': 'версус:nom', 'в_вид': 'в_виде:gen', 'в_во_глава': 'в:acc', 'в_для': 'в:acc', 'в_качество': 'в_качестве:gen', 'в_отношение': 'в_отношении:gen', 'в_с': 'в:loc', 'в_связь_с': 'в_связи_с:ins', 'в_случай_если': 'в_случае_если', 'в_случай_когда': 'в_случае_когда', 'в_соответствие_с': 'в_соответствии_с:ins', 'в_течение': 'в_течение:gen', 'в_то_быть': 'в:loc', 'в_тот_время_как': 'в_то_время_как', 'в_угода': 'в_угоду:dat', 'в_ход': 'в_ходе:gen', 'вблизи': 'вблизи:gen', 'взамен': 'взамен:gen', 'вместо': 'вместо:gen', 'во_глава': 'во_главе_с:ins', 'во_глава_с': 'во_главе_с:ins', 'во_избежание': 'во_избежание:gen', 'возле': 'возле:gen', 'вокруг': 'вокруг:gen', 'вплоть_до': 'вплоть_до:gen', 'вроде': 'вроде:gen', 'выше': 'выше:gen', 'для': 'для:gen', 'для_в': 'для:gen', 'до_то_как': 'до:gen', 'за_исключение': 'за_исключением:gen', 'из_более_чем': 'из:gen', 'к': 'к:dat', 'ко': 'ко:dat', 'коли_скоро': 'коль_скоро', 'кроме': 'кроме:gen', 'между_во_глава': 'между:ins', 'на_вперед': 'на:acc', 'над': 'над:ins', 'насчет': 'насчет:gen', 'несмотря_на': 'несмотря_на:acc', 'ниже': 'ниже:gen', 'около': 'около:gen', 'от_до': 'от:gen', 'от_от': 'от:gen', 'от_с': 'от:gen', 'относительно': 'относительно:gen', 'перед': 'перед:ins', 'по_мера': 'по_мере:gen', 'по_мера_то_как': 'по_мере_того_как', 'по_отношение_ко?': 'по_отношению_к:dat', 'по_повод': 'по_поводу:gen', 'по_сравнение_с': 'по_сравнению_с:ins', 'помимо': 'помимо:gen', 'порядка': 'порядка:gen', 'после': 'после:gen', 'посредством_как': 'посредством:gen', 'при': 'при:loc', 'при_помощь': 'при_помощи:gen', 'при_условие_что': 'при_условии_что', 'про': 'про:acc', 'против': 'против:gen', 'с_более_чем': 'с:gen', 'с_во_глава': 'с:ins', 'с_на': 'с:par', 'с_помощь': 'с_помощью:gen', 'с_тем': 'с:ins', 'с_тот_пора_как': 'с_тех_пор_как', 'с_что': 'с:ins', 'свыше': 'свыше:gen', 'со_сторона': 'со_стороны:gen', 'согласно': 'согласно:dat', 'спустя': 'спустя:acc', 'среди': 'среди:gen', 'среди_в': 'среди:gen', 'так_чтобы': 'чтобы', 'тем_между': 'между:ins', 'у': 'у:gen', 'у_без': 'у:gen', 'через': 'через:acc', 'чтоб': 'чтобы'}