v rámečku jsou moduly, které se na fázi podílejí
všechny fáze pracují na $sentRoot
- potomek technického kořene
(až na finální sestavení sekvence slov - )
translation - transfer
- u překladu navíc adjectivize: pták → ptačí
preprocess
Preprocess NumeralsWrapper
- (sádlo), (máslo), (olej) → (sádlo, máslo, olej)
undef($this→{tag})
- nastav
$this→{ord}
podle zobrazení v tredu - correct_numbers
- číselná t-lemmata
- změna zavěšení nepatri prilis do preprocessu, pozdeji?
formémy
prochází se do hloubky
Processing Vallex Diathesis Derivation
- pro klauze (top-level a verba): setClauseType
coap
: technickénv-denom|vocat|partl
: neslovesné top-levelv-vn
: verbonominálnív-imp
: rozkazovacív-compl
: func COMPLv-pred
: ostatní-
: infinitivy
- pro VP:
- nastav fragment xml do
vallexFrame
- normalizace framu - jen jeden (teď beru první) form pro functor a form type (kriteria pro výběr?)
- zvol diatezi
setDiathesis
- B: base - ACT subjektem
- D1: PAT subjektem
- D2: PAT subjektem + být + participium trpné
- D3: má ustláno od
- uprav frame, aby odpovídal diatezi
Agreement::getSb($node)
podle diateze- derivuj - nastav
synPOS, m_lemma
- projdi děti:
- identifikuj agreement šipky
- nastav
frame_element
- xml formy pro jeden functor
- pro obecný člen:
- derivace pokud už neproběhla
- mám
frame_element
nebo dostanu default - nastav fragment xml do
vallexFrame
- normalizace framu - jen jeden (teď beru první) form pro functor a form type (kriteria pro výběr?)
- projdi děti:
- identifikuj agreement šipky
- nastav
frame_element
- xml formy pro jeden functor
morfo kategorie
Vallex
- realize_frame_elements (vybere jednu realizaci z framu a nastaví dětem morfo kategorie)
- m_case
- m_number
- m_negative
- pokud je v rámci určené i něco víc → píšu rovnou do tagu
- nastaví
assigned_form
- už jen jedna forma pro tento functor
agreement
Agreement Processing - hledání šipek
compounds
Compounds
předložky podle assigned_form
složené slovesné tvary podle
isDiathesis()
isTrTense()
getDeontmod()
getVerbmod()
pozor: spojky až později
conjugation + declination
Morphology NumeralsWrapper
pro numerické se volá assignNumForm()
- derivuje podle
numerType
- shoda uvnitř víceslovných číslených číslovek
- flexe
pro ostatní uzly
assignTag()
assignForm()
první reorder
PreReorder
- RSTR.adj pod n vlevo
- MANN.adj pod n vlevo
- complex RSTR.adj vpravo
- RSTR.v připojené pomocí vztažného
který
vpravo - lokace a časové určení pod n vpravo
- APP.n <latex>\neq</latex>
#PersPron
vpravo - EXT <latex>\neq</latex>
n.quant
<latex>\lor</latex> complex vlevo - REG.(not v) pod adj|adv vlevo
- DIFF.(not v) pod adj|adv vlevo
- CPR.v.(not inf) rodiče vpravo od děda
- ID vpravo
- adj/adv/n.pron.indef.inter vlevo za případné
a/i/ale
Reorder
- ty, co už mají nastavené příznaky, kde se tam ale vzaly Processing
reorderLeftLeftmostParent
reorderRightLeftmostParent
reorderRhem
reorderCprLeftTo
isPossessive()
- vlevo před rodiče a rstr bratryisGenitiveNoun()
- ihned vpravo za rodiče
punctuation + spojky
Processing2 Connectors
průchod do hloubky
$context
obsahuje informace o pořadí uvnitř skupiny, případně carry bit - oddělit předchozí zleva
zpracování sentencí, klauzí a obecných členů
pouze vytvoření seznamů levých konektorů - čárek a spojek
druhý reorder
druhý průchod do šířky mohl objednat dalsi presuny pro autosemanticke konektory doleva
příznak reorderLeftLeftmostParent
punctuation + spojky
vyrobit uzly pro čárky a spojky
až po reordru, takže reorder nepřehazuje čárky
reorder klitik
až po spojkách, počítají se do pozic