Participant (участник) — это Edge, указывающий семантическую роль сущности, участвующей в событии предиката.
Event Node (глагол)
├─ PARTICIPANT Edge (role=Agent) ──→ Entity Node
├─ PARTICIPANT Edge (role=Theme) ──→ Entity Node
└─ PARTICIPANT Edge (role=Instrument) ──→ Entity Node
Принципы проектирования
Принцип разделения
| Категория | Принадлежность | Примеры |
|---|
| Участники | Уровень Event | Agent, Theme, Recipient |
| Прагматика | Уровень Context/Claim | Speaker, Listener, Evidentiality |
Speaker (говорящий), Listener (слушающий), Source (источник информации) обрабатываются не как участники, а в семантических квалификаторах или Context/Claim.
Кодирование
- 4 бита (0x0~0xF), максимум 16 семантических ролей
- Возможен паттерн-матчинг через побитовые SIMD-операции
Список семантических ролей (16)
Ключевые участники (Core Participants)
| ID | Код | Роль | Определение | Пример |
|---|
| 0x0 | AGT | Agent (агенс) | Субъект, намеренно совершающий действие | «Иван ударил мяч» |
| 0x1 | EXP | Experiencer (экспериенцер) | Субъект, испытывающий эмоции/восприятие | «Мария грустила» |
| 0x2 | THM | Theme (тема) | Объект, который перемещается или описывается | «Иван ударил мяч» |
| 0x3 | PAT | Patient (пациенс) | Объект, состояние которого изменяется | «Стекло разбилось» |
| 0x4 | RCP | Recipient (реципиент) | Тот, кто получает что-либо | «Дал книгу Марии» |
| 0x5 | BNF | Beneficiary (бенефициар) | Тот, кто получает выгоду от действия | «Сделал для ребёнка» |
Инструменты и средства (Instruments & Means)
| ID | Код | Роль | Определение | Пример |
|---|
| 0x6 | INS | Instrument (инструмент) | Орудие, используемое при действии | «Забил гвоздь молотком» |
| 0x7 | MNR | Manner (образ действия) | Способ выполнения действия | «Бежал быстро» |
Пространственные (Spatial)
| ID | Код | Роль | Определение | Пример |
|---|
| 0x8 | LOC | Location (место) | Место, где происходит событие | «Жил в Москве» |
| 0x9 | SRC | Source (источник) | Начальная точка перемещения | «Выехал из дома» |
| 0xA | DST | Destination (цель) | Конечная точка перемещения | «Поехал в школу» |
| 0xB | PTH | Path (путь) | Промежуточная точка | «Прошёл через парк» |
Причинно-целевые (Causal)
| ID | Код | Роль | Определение | Пример |
|---|
| 0xC | CAU | Cause (причина) | Причина события | «Отменили из-за дождя» |
| 0xD | PRP | Purpose (цель) | Цель действия | «Пошёл заниматься спортом» |
Прочие (Others)
| ID | Код | Роль | Определение | Пример |
|---|
| 0xE | COM | Comitative (комитатив) | Сопровождающий объект | «Пошёл с другом» |
| 0xF | ATR | Attribute (атрибут) | Описание состояния/свойства | «Небо — голубое» |
Структура Participant Edge
PARTICIPANT Edge {
source: Event SIDX // узел глагола
target: Entity SIDX // узел сущности
role: 4-bit // семантическая роль (0x0~0xF)
gram_role: 2-bit (optional) // грамматическая роль (подлежащее/дополнение/предикатив)
focus: 4-bit (optional) // степень акцента (0~15 → 0.0~1.0)
quant_ref: TID (optional) // ссылка на квантификатор
}
| Поле | Бит | Описание |
|---|
| role | 4 | Семантическая роль (обязат.) |
| gram_role | 2 | 0=не задано, 1=подлежащее, 2=дополнение, 3=предикатив |
| focus | 4 | Информационная значимость (0=фон, 15=ключевой акцент) |
| quant_ref | 16 | TID квантификатора «все», «большинство» и т.п. |
Theme vs Patient
| Роль | Изменение состояния | Пример |
|---|
| Theme | Нет (перемещение/описание) | «Бросил мяч» (мяч не изменился) |
| Patient | Да (затронут) | «Разбил стекло» (стекло изменилось) |
На практике можно объединять в Theme и различать по семантике глагола при необходимости.
Примеры
Простое предложение: «Иван дал Марии книгу»
Event: give.v.01
├─ PARTICIPANT (AGT) → Иван
├─ PARTICIPANT (THM) → книга
└─ PARTICIPANT (RCP) → Мария
Сложное предложение: «Из-за дождя с другом быстро бежал из дома в школу»
Event: run.v.01
├─ PARTICIPANT (AGT) → [говорящий]
├─ PARTICIPANT (CAU) → дождь
├─ PARTICIPANT (COM) → друг
├─ PARTICIPANT (SRC) → дом
├─ PARTICIPANT (DST) → школа
└─ PARTICIPANT (MNR) → быстро
Описание состояния: «Небо очень голубое»
Event: be.v.01
├─ PARTICIPANT (THM) → небо
└─ PARTICIPANT (ATR) → голубое (focus=15)
Нормализация актив/пассив
| Поверхностная форма | Agent | Theme |
|---|
| «Apple приобрела Tesla» | Apple | Tesla |
| «Tesla была приобретена Apple» | Apple | Tesla |
На этапе разбора формы нормализуются в единый шаблон.