GenI- A natural language generator (specifically, an FB-LTAG surface realiser)

Safe HaskellNone



This module provides basic datatypes specific to Tree Adjoining Grammar tree schemata.



data Ttree a Source



root :: Tree a -> aSource

rootUpd :: Tree a -> a -> Tree aSource

setLexeme :: [Text] -> Tree (GNode a) -> Tree (GNode a)Source

Given a lexical item l and a tree node n (actually a subtree with no children), return the same node with the lexical item as its unique child. The idea is that it converts terminal lexeme nodes into preterminal nodes where the actual terminal is the given lexical item

setAnchor :: FullList Text -> Tree (GNode a) -> Tree (GNode a)Source

Given a lexical item s and a Tree GNode t, returns the tree t' where l has been assigned to the anchor node in t'

lexemeAttributes :: [Text]Source

Attributes recognised as lexemes, in order of preference

data GNode gv Source

A single node of a TAG tree.




gnname :: NodeName
gup :: Flist gv

top feature structure

gdown :: Flist gv

bottom feature structure

ganchor :: Bool

False for na nodes

glexeme :: [Text]

[] for na nodes

gtype :: GType
gaconstr :: Bool
gorigin :: Text

for TAG, this would be the elementary tree that this node originally came from


Typeable1 GNode 
Loadable Macros 
Eq gv => Eq (GNode gv) 
Data gv => Data (GNode gv) 
Binary gv => Binary (GNode gv) 
NFData gv => NFData (GNode gv)

A single node of a TAG tree.

Pretty (GNode GeniVal)

The default show for GNode tries to be very compact; it only shows the value for cat attribute and any flags which are marked on that node.

This is one the places where the pretty representation of a GenI object is different from its GenI-format one

GeniShow (GNode GeniVal) 
DescendGeniVal v => DescendGeniVal (GNode v) 
Collectable gv => Collectable (GNode gv) 

gCategory :: Flist GeniVal -> Maybe GeniValSource

Return the value of the cat attribute, if available