User:Firespeaker/PSG transfer

From Apertium
Jump to navigation Jump to search

An example[edit]

two example sentences[edit]

телескоп жұмыс істейді = the telescope works = telescopio funciona

адам сауда орталығында жұмыс істейді = the man works at the mall = el hombre trabaja en el centro comercial

current morph[edit]

Actual output of apertium-kaz (with newlines added for legibility):

^телескоп/телескоп<n><nom>/телескоп<n><attr>/телескоп<n><nom>+е<cop><aor><p3><pl>/телескоп<n><nom>+е<cop><aor><p3><sg>$
^жұмыс істейді/жұмыс істе<v><iv><aor><p3><pl>/жұмыс істе<v><iv><aor><p3><sg>$^./.<sent>$
^адам/адам<n><nom>/адам<n><attr>/адам<n><nom>+е<cop><aor><p3><pl>/адам<n><nom>+е<cop><aor><p3><sg>$
^сауда орталығында/сауда орталық<n><loc>/сауда орталық<n><px3sp><loc>/сауда орталық<n><loc>+е<cop><aor><p3><pl>/сауда орталық<n><loc>+е<cop><aor><p3><sg>/сауда орталық<n><px3sp><loc>+е<cop><aor><p3><pl>/сауда орталық<n><px3sp><loc>+е<cop><aor><p3><sg>$
^жұмыс істейді/жұмыс істе<v><iv><aor><p3><pl>/жұмыс істе<v><iv><aor><p3><sg>$^./.<sent>$

proposed morph[edit]

^телескоп/телескоп<n><nom>/телескоп<n><attr>/телескоп<n><nom>+е<cop><aor><p3><pl>/телескоп<n><nom>+е<cop><aor><p3><sg>$
^жұмыс істейді/жұмыс істе<v><iv><aor><p3><pl>/жұмыс істе<v><iv><aor><p3><sg>/жұмыс істе<v><ppv><aor><p3><pl>/жұмыс істе<v><ppv><aor><p3><sg>$^./.<sent>$

^адам/адам<n><nom>/адам<n><attr>/адам<n><nom>+е<cop><aor><p3><pl>/адам<n><nom>+е<cop><aor><p3><sg>$
^сауда орталығында/сауда орталық<n><loc>/сауда орталық<n><px3sp><loc>/сауда орталық<n><loc>+е<cop><aor>* <p3><pl>/сауда орталық<n><loc>+е<cop><aor><p3><sg>/сауда орталық<n><px3sp><loc>+е<cop><aor><p3><pl>/сауда орталық<n><px3sp><loc>+е<cop><aor><p3><sg>$
^жұмыс істейді/жұмыс істе<v><iv><aor><p3><pl>/жұмыс істе<v><iv><aor><p3><sg>/жұмыс істе<v><ppv><aor><p3><pl>/жұмыс істе<v><ppv><aor><p3><sg>$^./.<sent>$
  • all I'm doing here is adding another verb (with a new tag) to the lexicon: "жұмыс істе".v.ppv
  • ppv = verb taking PP-like argument (for Kazakh it's actually NP.loc)

simple grammar[edit]

N: n
V: {v.iv, v.ppv}

NP.nom → N.nom
NP.loc → N.loc
VP → V.iv
VP → NP.loc V.ppv
S → NP.nom VP
  • you'd probably want some indication of finite VPs and V forms, optional Adj and Det in the NPs, agreement, and a whole bunch of other stuff...

simple transfer[edit]

I forget how this works exactly, but you'd need to take care of the following at this stage:

  • fix the order of the VP (easy)
  • translate the NP.loc into a PP (maybe not too hard?)
  • somehow add some determiners (??)

output disambiguated sentences[edit]

^телескоп/телескоп<n><nom>$
^жұмыс істейді/жұмыс істе<v><iv><aor><p3><pl>/жұмыс істе<v><iv><aor><p3><sg>$^./.<sent>$
^адам/адам<n><nom>$
^сауда орталығында/сауда орталық<n><loc>/сауда орталық<n><px3sp><loc>$
^жұмыс істейді/жұмыс істе<v><ppv><aor><p3><pl>/жұмыс істе<v><ppv><aor><p3><sg>$^./.<sent>$
  1. note that agreement isn't implemented, but that could be done
  • The main thing here is that because things that didn't parse were discarded, iv/ppv readings were disambiguated, meaning that your bidix can contain the following mapping for use at the biltrans stage—and you wouldn't have to worry about lexical selection (and a lot of disambiguation has been done already too):
    • "жұмыс істе".v.iv = "funcionar".v.iv
    • "жұмыс істе".v.ppv = "trabajar".v.ppv