dnode

Назначение

Функция позволяет извлекать аргументы, связанные определенным синтаксическим отношением.

Синтаксис

dnode([label], term1, [dnode([label2], term2, [dnode(…)])], [dnode(…)])

Аргументы

В качестве аргументов функция принимает термины, а также специальные метки типа зависимости (labels), список которых представлен ниже.

Тип зависимости

Значение

Пример

acl

Clausal modifier

Россия готовит иски против ограничений, установленных третьим энергопакетом

\(\text {ограничений} \overset{acl}{\rightarrow} \text {установленных}\)

acl_relcl

Relative clause

в число банков, к которым относится предупреждение, входят клиенты компании

\(\text {банков} \overset{acl\_relcl}{\rightarrow} \text {относится}\)

advmod

Adverbial modifier

продавать ее мы будем напрямую, а не через посредников

\(\text {продавать} \overset{advmod}{\rightarrow} \text {напрямую}\)

\(\text {посредников} \overset{advmod}{\rightarrow} \text {не}\)

amod

Adjectival modifier

недостаток рыбы возник из-за ответных продовольственных санкций

\(\text {санкций } \overset{amod}{\rightarrow} \text {ответных}\)

\(\text {санкций } \overset{amod}{\rightarrow} \text {продовольственных}\)

appos

Apposition

генеральным директором автоконцерна General Motors назначена Мэри Барра

\(\text {автоконцерна} \overset{appos}{\rightarrow} \text {General}\)

aux

Auxilary

Точные данные будут зависеть от оценщиков.

\(\text {зависеть} \overset{aux}{\rightarrow} \text {будут}\)

case

Preposition dependent on a noun

пишет газета "Ведомости" со ссылкой на знакомого Ноготкова

\(\text {ссылкой} \overset{case}{\rightarrow} \text {со}\)

\(\text {знакомого} \overset{case}{\rightarrow} \text {на}\)

cc

Coordination

генеральный директор и основной владелец

\(\text {владелец} \overset{cc}{\rightarrow} \text {и}\)

ccomp

Clausal complement of a verb or adjective

признал, что в стране не решена задача устойчивого экономического развития

\(\text {признал} \overset{ccomp}{\rightarrow} \text {решена}\)

conj

Conjunction

возглавлял "Независимость", а сейчас принял решение покинуть компанию и сосредоточиться на собственных проектах

\(\text {возглавлял} \overset{conj}{\rightarrow} \text {принял}\)

\(\text {покинуть} \overset{conj}{\rightarrow} \text {сосредоточиться}\)

cop

Copula

было бы большой ошибкой сегодня замкнуться

\(\text {ошибкой} \overset{cop}{\rightarrow} \text {было}\)

мы должны быть готовы и к другому варианту

\(\text {готовы} \overset{cop}{\rightarrow} \text {быть}\)

dep

Unspecified dependency

det

Determiner

выплачивается вкладчику в размере 100% суммы всех его счетов

\(\text {счетов} \overset{det}{\rightarrow} \text {всех}\)

\(\text {счетов} \overset{det}{\rightarrow} \text {его}\)

fixed

Fixed grammaticized expression

в России и за рубежом, в частности, в штаб-квартире Audi AG

\(\text {за} \overset{fixed}{\rightarrow} \text {рубежом}\)

\(\text {в} \overset{fixed}{\rightarrow} \text {частности}\)

flat

Multi-word names of places, organizations, people or dates

генеральным директором автоконцерна General Motors назначена Мэри Барра

\(\text {General} \overset{flat}{\rightarrow} \text {Motors}\)

\(\text {Мэри} \overset{flat}{\rightarrow} \text {Барра}\)

iobj

Indirect object

данный прогноз подвержен существенным рискам

\(\text {подвержен} \overset{iobj}{\rightarrow} \text {рискам}\)

mark

Marker (clause subordinating conjunction)

это третий раз за последние три недели, когда евро становится дороже 48 руб

\(\text {становится} \overset{mark}{\rightarrow} \text {когда}\)

nmod

Nominal modifier

копии писем опубликованы профсоюзом московских авиадиспетчеров

\(\text{копии}\overset{nmod}{\rightarrow}\text{писем}\)

\(\text{профсоюзом}\overset{nmod}{\rightarrow}\text{авиадиспетчеров}\)

nsubj

Nominal subject

мы ведем очень консервативную политику

\(\text {ведем} \overset{nsubj}{\rightarrow} \text {мы}\)

нет проблем с просроченными кредитами

\(\text {нет} \overset{nsubj}{\rightarrow} \text {проблем}\)

nummod

Numeric modifier

объединяет 34 наиболее развитые страны мира

\(\text {страны} \overset{nummod}{\rightarrow} \text {34}\)

за несколько лет инициировало различные программы

\(\text {лет} \overset{nummod}{\rightarrow} \text {несколько}\)

obj

Direct object

Совет федерации одобрил закон, вводящий невозвратные тарифы на авиаперевозки

\(\text {одобрил} \overset{obj}{\rightarrow} \text {закон}\)

\(\text {вводящий} \overset{obj}{\rightarrow} \text {тарифы}\)

obl

Oblique nominal dependent of a clausal predicate

курс евро к рублю в ходе торгов вырос более чем на 50 копеек

\(\text{вырос}\overset{obl}{\rightarrow}\text{торгов}\)

\(\text{вырос}\overset{obl}{\rightarrow}\text{копеек}\)

obl_agent

Agent of a passive verb

cоздание премии было инициировано дирекцией фестиваля анимационного кино

\(\text{инициировано}\overset{obl\_agent}{\rightarrow}\text{дирекцией}\)

orphan

Non-standard attachment in case of ellipsis

фьючерс на S&P500 падает на 0,05%, а фьючерс на Brent - на 0,1 %

\(\text{фьючерс} \overset{orphan}{\rightarrow} \text{%}\)

parataxis

Parataxis (link to expression in brackets or clause attached with : or ;)

Тувинская энергетическая промышленная корпорация (ТЭПК)

\(\text{корпорация}\overset{parataxis}{\rightarrow}\text{ТЭПК}\)

punct

Punctuation

Покупка состоялась 17 января .

\(\text{состоялась}\overset{punct}{\rightarrow}\text{.}\)

ROOT

Root of the sentence

Сегодня ровно в полночь начались продажи новых смартфонов компании Apple

\(\text{[ROOT]}\overset{ROOT}{\rightarrow}\text{начались}\)

xcomp

Open clausal complement

таможня готова упростить правила оформления грузов

\(\text{готова}\overset{xcomp}{\rightarrow}\text{упростить}\)

это позволит российской продукции конкурировать с импортными товарами

\(\text{позволит}\overset{xcomp}{\rightarrow}\text{конкурировать}\)

Параметр label является необязательным. Если он не указан, функция находит аргумент с любой меткой.

Более одной метки типа зависимости можно указать через знак |:

dnode(nsubj|obj, lemma(noun))

Функция может принимать в качестве аргумента более одного токена, например,

dnode(nsubj, phrase(lemma(noun), lemma(adjective)))

В таком случае проверяется, является ли аргумент фрагментом дерева с одной входящей стрелкой. Если это так, то функция рассматривает связи вершины данного фрагмента дерева с другими аргументами функции. В приведенном примере будет проверяться, входит ли стрелка со связью nsubj в вершину группы phrase(lemma(noun),lemma(adjective))).

Если же аргумент из нескольких токенов не является фрагментом дерева, функция выдает нулевой результат.

Также используются вложенные функции. Вложенные функции dnode() позволяют определить аргументы, которые должны зависеть от текущего аргумента в дереве зависимостей. Используя вложенные функции dnode(), в дереве зависимостей можно найти произвольный шаблон.

Возвращаемое значение

Документы, соответствующие запросу.

Примеры

Запрос dnode() помогает извлекать "разреженные" шаблоны, т.е. шаблоны, в которых целевые слова могут быть разделены большим количеством других слов

dnode(dnode(ROOT,вырастать), dnode(nsubj, продажи), "%") позволяет извлечь шаблон продажи выросли на %, даже если аргументы разделены большим количеством других слов.