olski.żądania¶
Czego czasownik żąda od słowa stojącego w jego pozycji: leksykon nad plikiem żądań.
Leksykon walencyjny mówi, co czasownik bierze, a nie mówi, czego od tego żąda:
zażądać bierze dopełnienie w dopełniaczu, a w podmiocie żąda człowieka.
To drugie stoi w olski/żądania.txt, który wychodzi z wydania TEI Walentego
(harness/żądania.py), a czemu jest plikiem osobnym od leksykonu, mówi
docs/walencja.md#żądanie-pozycji-jest-osobnym-plikiem-a-nie-kolumną-leksykonu.
Moduł ten czyta sam plik i odpowiada na pytanie o jedno słowo w jednej pozycji.
Które słowo w zdaniu jest czasownikiem i którą pozycję obsadza które wypełnienie,
rozstrzyga warstwa nad czytaniem (Verdict.żądania w olski/werdykt.py);
tam też stoi wiersz, którym werdykt to nazywa.
Podział jest ten sam co przy leksykonie walencyjnym: plik czyta moduł, który nie
ogląda ani gramatyki, ani rozbioru, więc czyta się go bez analizatora morfologicznego
i bez niego działa też przekład, który ten plik pisze.
Odpowiedź jest połową pytania i drugiej połowy tu nie ma.
Warstwa nazywa żądanie i nie pyta, czy słowo stojące w pozycji je spełnia;
orzekłby o tym wordnet, którego to repozytorium nie ma
(docs/open-questions.md#shared-questions).
Wyjątkiem są klasy osobowe (OSOBOWE), bo tam odpowiada projekt sam,
deklaracją swoich osób (olski/osoby.py); żądanie i tam wychodzi stąd,
a spełnienie stamtąd.
Milczenie jest odpowiedzią pełnoprawną, tak samo jak w warstwie
rozstrzygającej (olski/rozstrzyganie.py), i jest odpowiedzią domyślną
(żądane).
Główną jego przyczyną jest zasięg samego pliku: warstwę semantyczną ma w tym
wydaniu część czasowników leksykonu, i nie ma jej ani jeden z tych, którymi
ten rejestr orzeka najczęściej (docs/prior-art.md#polish-language-resources).
PLIK = Path(__file__).parent / 'żądania.txt'
module-attribute
¶
DOWOLNA = 'ALL'
module-attribute
¶
SYNSETY = 'synsety'
module-attribute
¶
RELACJA = 'relacja'
module-attribute
¶
NIENAZWANE = frozenset({SYNSETY, RELACJA})
module-attribute
¶
OSOBOWE = frozenset({'LUDZIE', 'ISTOTY', 'PODMIOTY'})
module-attribute
¶
PRZYPADKI = (BIERNIK, CELOWNIK, DOPEŁNIACZ)
module-attribute
¶
żądane(słowa, pozycja)
¶
Klasy, których te słowa żądają w tej pozycji; zbiór pusty jest milczeniem.
Powody milczenia są trzy i rozdzielać ich nie ma po co,
bo autorowi mówią jedno: nie ma tu czego przeczytać.
Plik o tym słowie w tej pozycji nie mówi nic;
albo mówi, że w którymś znaczeniu nie żąda ono niczego (DOWOLNA);
albo żąda samych klas, których nie nazywa (NIENAZWANE).
Znacznik klasy nienazwanej zostaje w odpowiedzi obok klasy nazwanej i wychodzi stąd do wydruku, bo kolumna klas jest alternatywą: pozycja żądająca w jednym znaczeniu ludzi, a w drugim zbioru synsetów, ludzi nie żąda, więc przemilczana połowa tej alternatywy czytałaby się jak żądanie ostrzejsze, niż Walenty stawia.
Słów jest kilka tam, gdzie formę licencjonuje w jednym kształcie kilka
odczytań, a odpowiedź jest wtedy sumą i żąda milczenia od każdego z nich:
czytanie nie mówi, którym z tych słów forma stoi
(olski.parse.Node.signature),
więc żądanie jednego z nich byłoby żądaniem postawionym pod monetę.
Source code in olski/żądania.py
104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 | |
żąda_osoby(klasy)
¶
Czy tej alternatywy nie spełnia nic poza kimś (OSOBOWE).
Odpowiedź jest połową pytania także tutaj: mówi ona o żądaniu, a o słowie
stojącym w pozycji orzeka deklaracja projektu (olski/osoby.py).
Klasa nienazwana znosi żądanie w całości, tak samo jak DOWOLNA
w żądane, i tym ta odpowiedź jest węższa od wiersza, który klasy
wypisuje: pozycja żądająca w jednym znaczeniu ludzi, a w drugim zbioru
synsetów, bywa obsadzona rzeczą i o tej rzeczy plik nie mówi nic.
Source code in olski/żądania.py
133 134 135 136 137 138 139 140 141 142 143 144 145 | |