26.12.2013 Views

A computational grammar and lexicon for Maltese

A computational grammar and lexicon for Maltese

A computational grammar and lexicon for Maltese

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

The noun phrase also carries in<strong>for</strong>mation about its agreement features which is needed when<br />

combining with verb phrases, as well as whether it is a pronoun <strong>and</strong>/or in the definite <strong>for</strong>m.<br />

The CPrep constructor of the NPCase parameter is used to h<strong>and</strong>le cases where the noun phrase<br />

is preceded by a preposition. In such cases the preposition may join with the definite article in<br />

the NP, or completely assimilate with the phrase if it is a pronoun. This implementation builds<br />

on that developed in (Zammit, 2012).<br />

Verb phrase<br />

The verb phrase is arguably the most complex aspect of the <strong>Maltese</strong> resource <strong>grammar</strong>. A lot<br />

of in<strong>for</strong>mation needs to be propagated up to the VP level <strong>and</strong> potentially affixed to the main<br />

verb. The verb phrase is composed of the following parts:<br />

oper<br />

VerbPhrase : Type = {<br />

v : {<br />

s : VForm => VerbStems ;<br />

hasPresPart : Bool ;<br />

hasPastPart : Bool ;<br />

} ;<br />

s2 : Agr => Str ;<br />

dir : Maybe Agr ;<br />

ind : Maybe Agr ;<br />

} ;<br />

The v field essentially holds an entire verb record (without the VerbInfo which is no longer<br />

needed at this point). See section 2.2.2 above <strong>for</strong> a description of the verb record type. s2 is<br />

the complement to the verb phrase with is typically a non-pronominal object. The dir <strong>and</strong> ind<br />

fields are used to indicate whether there are direct <strong>and</strong>/or indirect objects which need to be<br />

joined to the main verb. These fields can encode potentially non-existent in<strong>for</strong>mation by using<br />

the Maybe type, which is modelled on the Haskell equivalent.<br />

Adjectival phrase<br />

The adjectival phrases are quite simple, containing a simple string which inflects <strong>for</strong> gender-<br />

/number <strong>and</strong> a boolean field isPre to indicate if the AP should go be<strong>for</strong>e or after a noun phrase.<br />

lincat<br />

AP = {<br />

s : GenNum => Str ;<br />

isPre : Bool<br />

} ;<br />

37

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!