olski.odniesienia¶
Zaimek, który wskazuje na dwie rzeczy naraz.
Wieloznaczność, którą liczy werdykt, kończy się na kropce:
mówi ona, ile kształtów ma jedno zdanie (olski/werdykt/zdanie.py).
Zaimek trzeciej osoby wychodzi poza tę granicę,
bo rzecz, na którą wskazuje, nazywa czasem dopiero zdanie wcześniejsze,
a rozbiór zdania z zaimkiem o tamtym zdaniu nic nie wie.
Werdykt nad Są one czerwone. jest przez to ten sam po Widzimy pole maków.
i po Maki rosną w garnkach.,
choć po pierwszym z nich czytelnik ma jedną rzecz do wyboru, a po drugim dwie.
Umowa olskiego jest o tekście właśnie z tego powodu
(docs/roadmap.md#podzbiór-jest-umową-a-nie-zasięgiem),
a ta warstwa jest tym kawałkiem umowy, którego rozbiór jednego zdania nie obejmuje.
Zaimek dostaje zgłoszenie wtedy, gdy zdanie obok nazywa dwie rzeczy albo więcej, a każda z nich zgadza się z nim liczbą i rodzajem. Co to znalezisko mówi autorowi i jakie zaimki bierze, trzyma docs/subset.md#zaimek-wskazujący-na-dwie-rzeczy-jest-drugim-znaleziskiem. Tutaj stoją trzy warunki, których z kodu nie widać, cena każdego z nich oraz rozszerzenie, które czeka za flagą.
Rzecz nazywa najszersza grupa imienna, a nie każdy rzeczownik pod nią.
duże pole maków nazywa pole, a maków jest w nim określeniem.
Bez tego zawężenia kandydatów jest tylu, ile zdanie ma rzeczowników:
Ogrodnik ogląda pole maków w doniczce bratków. nazywa dwie rzeczy,
a wydałoby czterech kandydatów, wśród nich maków i bratków,
więc Są one czerwone. dostałoby po nim zgłoszenie.
Tu widać, czego ta warstwa żąda od rozbioru:
morfologia mówi, że pole i maków są rzeczownikami,
a która z tych dwóch form jest głową grupy, mówi dopiero drzewo.
Drzewo wskazuje czasem dwie głowy jednej grupy naraz,
a rzecz jest wtedy dalej jedna (_Rzecz).
Rzeczy podaje pierwszy kawałek tekstu przed zaimkiem, który cokolwiek nazywa.
Kawałkiem jest zdanie składowe: najpierw własne, w części stojącej przed zaimkiem,
potem składowe stojące przed nim w tym samym zdaniu, jedno po drugim wstecz,
a na końcu zdanie obok.
Kawałek własnego zdania rozstrzyga milczeniem, a nie listą rzeczy,
i to jest wstrzymanie się nad zaimkiem rozstrzygniętym na miejscu:
Pierwsze ma jedno odczytanie, więc autor nie ma w nim czego wybierać.
nie odsyła czytelnika do zdania obok, bo autor stoi przed nim i zgadza się z nim,
a sięganie dalej byłoby zgadywaniem, którego czytelnik nie wykonuje.
Wstrzymanie się jest tu odpowiedzią pełnoprawną
(docs/linter.md#abstention-is-allowed) i płaci się je milczeniem:
wśród zdjętych zgłoszeń jest Olski go nie czyta i o jego polszczyźnie milczy.,
gdzie kandydatem miejscowym jest sam podmiot zdania,
a rzecz podejmowana stoi w zdaniu obok.
Zawężenia, po którym Olski przestaje być kandydatem, nikt nie napisał.
Granicą sięgania wstecz jest zdanie obok, a nie akapit.
Bierzemy ją stamtąd, skąd bierze ją druga strona:
olski/skład/opowieść.py opuszcza podmiot tylko wtedy,
gdy o rzeczy była mowa w zdaniu obok.
Kandydaci z całego akapitu byliby przez to szersi niż to,
co druga strona uznaje za rzecz podaną czytelnikowi.
Wszystkie trzy warunki mylą się w jedną stronę: zdejmują kandydatów, a nie dokładają ich, i tak samo myli się zdanie obok, którego gramatyka nie wyprowadza wcale. Na tej asymetrii stoi decyzja o zaimku bez ani jednego kandydata.
Za flagą w_zdaniu kawałek własnego zdania wydaje rzeczy zamiast milczeć.
Zaimek dostaje wtedy zgłoszenie i tam, gdzie dwie rzeczy nazywa składowe obok —
Pies gonił kota, a on uciekł. —
i tam, gdzie nazywa je własne składowe zaimka dzierżawczego —
Jan poprosił Piotra o jego samochód.
Rozszerzenie stoi za flagą, bo sądy czytelnika go nie awansowały:
przeczytane trafienia nad NKJP są w większości fałszywe
(docs/subset.md#rzeczy-z-tego-samego-zdania-czekają-za-flagą).
Zgłoszenie spod flagi nosi własną nazwę
(olski.werdykt.ODNIESIENIE_W_ZDANIU), więc baza sądów ocenia dwie reguły
osobno, a kod wyjścia tej nazwy nie liczy;
przebieg, który tych trafień żąda, jest sondą oceniającą (harness/sądy.py).
ZAIMEK = 'ppron3'
module-attribute
¶
IMIENNE = frozenset({'subst', 'depr'})
module-attribute
¶
ZGODNE = ('number', 'gender')
module-attribute
¶
Odniesienie
dataclass
¶
Zaimek wraz z rzeczami, na które może wskazywać.
Rzeczy nazwane są formą, tak jak olski.parse.Przyłączenie nazywa
gospodarzy: autor ma je odszukać w tekście, a stoją tam właśnie w tej formie.
Source code in olski/odniesienia.py
103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 | |
niejasne_odniesienia(text, wyniki, w_zdaniu=False)
¶
Zgłoszenia o zaimkach, po jednej krotce na zdanie i w kolejności zdań.
Tekstem, a nie samym podziałem, bo tak bierze go druga warstwa tekstowa
(olski.rozstrzyganie.sąsiedztwa), i tak samo buduje sobie dokument.
Zdanie obok wskazuje ostatni z numerów, które podaje
olski.document.Document.wcześniejsze.
w_zdaniu jest flagą rozszerzenia, którego sądy czytelnika nie awansowały;
co za nią stoi i czemu domyślnie milczy, trzyma docstring modułu.
Rozbiór, a nie werdykt nad nim: i zaimki, i kandydatów wyjmuje się z czytań,
a werdykt czyta stąd (olski.werdykt.nad_tekstem), więc import
w tamtą stronę zamykałby krąg.
Source code in olski/odniesienia.py
157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 | |