Inglise keele lihtlaused

See juhend on koostatud Emily M. Benderi kursust Grammatical Engineering eeskujuks võttes. Ka Grammar Matrixi fail on E. Benderi koostatud ja kasutusel tema lahkel loal.


Koostame grammatika, mis analüüsib lauseid:
The dog barks.
The dog chased the cat.

Tehniline sissejuhatus

  1. Käivitage LKB (juhend)
  2. Laadige grammar matrix: Load:CompleteGrammar:471matrix/lkb/script
  3. Avage redaktoris oma ümbernimetatud reeglitefail.

Tüübikirjeldused

noun := head.
verb := head.
det := head.
noun-lex := basic-noun-lex & basic-one-arg &
[ SYNSEM.LOCAL [ CAT [ HEAD noun,
VAL [ SPR < #spr >,
COMPS < >,
SUBJ < >,
SPEC < > ]],
ARG-S < #spr > ]].

tdet-lex := basic-determiner-lex &
  [ SYNSEM.LOCAL [CAT [HEAD det]]].

Leksikon



Märgendid

n-label := label &
[ SYNSEM.LOCAL.CAT [ HEAD noun,
VAL.SPR < synsem > ],
LABEL-NAME "N"].
N: HEAD noun, non-empty SPR list
NP: HEAD noun, empty SPR list
V: HEAD verb, non-empty COMPS list
VP: HEAD verb, empty COMPS list, non-empty SUBJ list
D: HEAD det,
S: HEAD verb, empty COMPS and empty SUBJ

Juurtipp

Määrake ära analüüsipuu juurtipp, selleks kommenteerige välja reegel failist roots.tdl

Reeglid

head-subj-phrase := basic-head-subj-phrase & head-final.

mis ütleb, kuidas moodustada konstruktsioon põhjast ja alusest nii, et põhi on tagapool.

Lisage selle reegli deklaratsioon faili rules.tdl:
head-subj := head-subj-phrase.
Tehke samasugune reegel põhja ja laiendite jaoks.
Ning põhja ja määratleja jaoks.

Katsetamine
Taaslaadige grammatika
Proovige analüüsida lauset the dog barks
Proovige analüüsida lauset the dog chased the cat
Kui tuleb liiga palju analüüse, siis tuleb ilmselt reegleid kuidagi kitsendada. Kuidas?

Testimine


Tehke nimekiri lausetest (kasutades neid 5 sõna), mida grammatika peab suutma analüüsida.
Tehke nimekiri lausetest, mida grammatika ei tohi aktsepteerida.
Pange need nimekirjad faili test.items. Grammatiliselt mittekorrektsete lausete ette pange *.

Kasutades LKB batch test moodulit:
määrake ära test.items kui sisend, test.out kui väljund.
Pärast analüüsi lõppu on test.out failis analüüsitud laused märgitud 1-ga, analüüsimata 0-ga.