;;; -*- Mode: TDL; Coding: utf-8 -*- ;;; HAG (Hausa Grammar) ;;; Author: Berthold Crysmann ;;; 2009 ; A sample start symbol: Accept fully-saturated verbal ; projections only; if a grammar makes use of the head-subject and ; head-complement types as provided by the Matrix, this should be a ; good starting point. Note that it is legal to have multiple start ; symbols, but they all need to be listed as the value of ; `*start-symbol' (see `lkb/user-fns.lsp'). root := sign & [ ROBUST -, SUPRA [TM.LIST unify-list & [FIRST #tone], TONES.LIST #tone, LM.LIST unify-list & [FIRST #len], LENGTHS.LIST #len], SYNSEM [LOCAL [COORD -, CAT [ VAL [ SUBJ < >, COMPS < > ], MC +, HEAD verb & [VFORM indep]] ], NON-LOCAL norm-non-local & [SLASH & [LAST null], REL ] ] ]. sat-phrase := phrase & [ ROBUST -, SUPRA [TM.LIST unify-list & [FIRST #tone], TONES.LIST #tone, LM.LIST unify-list & [FIRST #len], LENGTHS.LIST #len], SYNSEM [LOCAL [COORD -, CAT [ VAL [ SUBJ < >, COMPS < >, SPEC <>, SPR <>], MC +, HEAD +njp & [MOD <>]] ], NON-LOCAL norm-non-local & [SLASH & [LAST null], REL ] ] ]. root_supra_robust := sign & [ ROBUST -, SYNSEM [LOCAL [COORD -, CAT [ VAL [ SUBJ < >, COMPS < > ], MC +, HEAD verb & [VFORM indep]] ], NON-LOCAL norm-non-local & [SLASH & [LAST <>], REL ]]]. root_spelling_supra_robust := sign & [ ROBUST +, SYNSEM [LOCAL [COORD -, CAT [ VAL [ SUBJ < >, COMPS < > ], MC +, HEAD verb & [VFORM indep]] ], NON-LOCAL norm-non-local & [SLASH & [LAST <>], REL ]]]. root_spelling_robust := sign & [ ROBUST +, SUPRA [TM.LIST unify-list & [FIRST #tone], TONES.LIST #tone, LM.LIST unify-list & [FIRST #len], LENGTHS.LIST #len], SYNSEM [LOCAL [COORD -, CAT [ VAL [ SUBJ < >, COMPS < > ], MC +, HEAD verb & [VFORM indep]] ], NON-LOCAL norm-non-local & [SLASH & [LAST <>], REL ]]]. ; This start symbol allows you to parse single words as stand-alone ; utterances. This can be useful for grammar debugging purposes. sat-phrase-root := sign & [SYNSEM.LOCAL.CAT.VAL [SPR <>, COMPS <>, SUBJ <>]]. lex-root := lex-max & [INFLECTED infl-word, SYNSEM.NON-LOCAL.SLASH ].