// lang-ru.el - Russian NLG tests: assertion, question (intonation), description. // // Russian has free word order (profiled as "free") and uses the intonation // question strategy — questions look identical to assertions except for "?". // Fusional morphology: кошка (nominative), рыбу (accusative). // // Expected outputs (approximate): // assert: "Кошка ест рыбу." // question: "Кошка ест рыбу?" (intonation — same order, different punctuation) // description: "Кошка большая." fn test_assert() -> String { let frame: [String] = sem_frame_lang("assert", "кошка", "есть", "", "ru") return sem_realize(frame) } fn test_question() -> String { // Russian intonation question: statement order + "?" let frame: [String] = sem_frame_lang("query", "кошка", "есть", "", "ru") return sem_realize(frame) } fn test_description() -> String { let frame: [String] = sem_frame_lang("describe", "кошка", "большая", "", "ru") return sem_realize(frame) } println(test_assert()) println(test_question()) println(test_description())