ChronoSynth: Constraint-Aware Question Synthesis over Temporal Knowledge Graphs
Organizations: National Key Laboratory of Big Data and Decision, National University of Defense Technology, China · Beijing University of Posts and Telecommunications, China
Abstract
Knowledge graph question generation (KGQG) generates natural-language questions from structured graph evidence and a target answer. When the input graph is temporal, a valid question must also preserve the answer field, time condition, reference event, and temporal order that determine the answer set. Existing KGQG methods and prompting baselines can produce fluent questions that alter these conditions, causing temporal semantic drift. This paper studies temporal KGQG as a constraint-preserving graph-to-question problem and proposes ChronoSynth, a memory-augmented and constraint-aware generation framework. ChronoSynth first constructs a Temporal Intent State to make the intended question semantics explicit. It then retrieves compatible typed question patterns from an indexed pattern memory, adapts them to the input graph, and validates the generated question. Validation feedback guides revisions when a supported inconsistency is detected. Experiments on CRONQUESTIONS and MultiTQ demonstrate state-of-the-art generation performance, with ablations supporting the contributions of its components.
Figures & tables
| CRONQUESTIONS | |||||||
|---|---|---|---|---|---|---|---|
| Setting | Method | BLEU-1 | BLEU-2 | BLEU-3 | BLEU-4 | ROUGE-L | CIDEr |
| Trained | G2S-AE | 0.5011 | 0.3873 | 0.3102 | 0.2577 | 0.4799 | 0.2480 |
| G2S-AE-RL | 0.3852 | 0.2628 | 0.1792 | 0.1261 | 0.3850 | 0.0625 | |
| RoleAgentQG-G2S | 0.3743 | 0.2771 | 0.2123 | 0.1703 | 0.3686 | 0.1037 | |
| RoleAgentQG-G2S-AE-RL | 0.3842 | 0.2861 | 0.2205 | 0.1778 | 0.3772 | 0.1110 | |
| Training-free | Qwen3.5-9B | 0.4237 | 0.3122 | 0.2417 | 0.1952 | 0.4029 | 1.8729 |
| Method | Fluency | Temporal faithfulness | Answerability |
|---|---|---|---|
| CRONQUESTIONS | |||
| GPT-4o-mini | 2.313 | 2.287 | 2.340 |
| KQG-CoT | 2.413 | 2.360 | 2.433 |
| Retrieval prompting | 2.380 | 2.360 | 2.373 |
| ChronoSynth | 2.987 | 2.973 | 2.967 |
| MultiTQ | |||
| Training data | CRON- QUESTIONS | MultiTQ |
|---|---|---|
| Gold Reference | ||
| GPT-4o-mini | ||
| KQG-CoT | ||
| Vanilla RAG | ||
| ChronoSynth |
Appendix figures & tables12 assets
Supplementary material from the paper’s appendix.
Appendix
| Temporal rule | Trigger condition | Semantics |
|---|---|---|
| plain | entity answer, no explicit temporal comparison | ask a non-extremum factual question |
| when | time answer, no explicit reference | ask for the event timestamp |
| first | focus edge has the earliest time in its same-relation family | ask for the earliest event or participant |
| last | focus edge has the latest time in its same-relation family | ask for the latest event or participant |
| before | later reference exists | ask for an answer before a reference event |
| before_last | later reference and latest valid answer before it | ask for the last answer before a reference event |
| Field | Meaning | Main use |
|---|---|---|
| answer field | decides whether the question asks for the source, target, or time field | |
| answer type | constrains the wh-word and surface form | |
| temporal rule | controls temporal semantics such as before , after , and last | |
| time granularity | distinguishes year-, month-, and day-level realization | |
| focus edge | identifies the fact to verbalize | |
| reference entity/event | provides the reference point for retrieval and drafting |
| Dataset | Train | Dev | Test |
|---|---|---|---|
| CRONQUESTIONS | 212,259 | 19,014 | 19,122 |
| MultiTQ | 257,687 | 39,128 | 36,318 |
| Resource | Use | Source |
|---|---|---|
| CRONQUESTIONS | temporal benchmark | CronKGQA Saxena et al. (2021) |
| MultiTQ | temporal benchmark | MultiTQ Chen et al. (2023) |
| Qwen3.5-9B | local generation | Qwen model card |
| Qwen3.5-0.8B | downstream reader | Qwen model card |
| GPT-4o-mini | generation and interpretation | OpenAI |
| GPT-4.1-mini | supplementary judge | OpenAI |
| Group | Count | BLEU-4 | ROUGE-L |
|---|---|---|---|
| Temporal rule | |||
| after_first | 1,494 | +0.2253 | +0.3688 |
| before | 27 | +0.2256 | +0.2837 |
| before_last | 1,907 | +0.1861 | +0.1670 |
| first | 1,030 | +0.0928 | +0.1244 |
| last | 879 | +0.1095 | +0.1355 |
| Group | Count | BLEU-4 | ROUGE-L |
|---|---|---|---|
| Temporal rule | |||
| after | 675 | +0.1627 | +0.1454 |
| after_first | 2,784 | +0.1168 | +0.1160 |
| after_time | 1,331 | +0.1152 | +0.0948 |
| before_last | 8,620 | +0.0898 | +0.0699 |
| before_time | 1,441 | +0.1162 | +0.0906 |
| Score | Fluency | Temporal faithfulness | Answerability |
|---|---|---|---|
| 5 | Natural, clear, and grammatical | All required temporal conditions are preserved | Clear question with the correct complete target answer set |
| 4 | Minor language issues | Minor issue that does not materially change the temporal meaning | Minor ambiguity |
| 3 | Understandable but noticeably awkward | Temporal intent is recognizable but incomplete or ambiguous | Meaningful ambiguity |
| 2 | Major language problems | An important temporal component is wrong or missing | Poorly answerable or likely to yield another answer |
| 1 | Incoherent or invalid question | Core temporal meaning is reversed, lost, or replaced | Unanswerable, wrong target, or invalid question |
| Source subset | Train | Test |
|---|---|---|
| Cron-S | 4,172 | 1,041 |
| Cron-M | 1,290 | 309 |
| Event-S | 4,955 | 1,236 |
| Event-M | 1,742 | 441 |
| Total | 12,159 | 3,027 |
| Method | BLEU-1 | BLEU-2 | BLEU-3 | BLEU-4 | ROUGE-L | CIDEr |
|---|---|---|---|---|---|---|
| Direct Prompting | 0.4710 | 0.3836 | 0.3220 | 0.2761 | 0.4625 | 2.3437 |
| KQG-CoT | 0.3987 | 0.3339 | 0.2892 | 0.2557 | 0.4339 | 2.6055 |
| Vanilla RAG | 0.5625 | 0.4832 | 0.4271 | 0.3834 | 0.5711 | 3.4138 |
| ChronoSynth | 0.6201 | 0.5495 | 0.4979 | 0.4562 | 0.6472 | 4.3373 |
| Method | Time (min) | Tokens /question | Questions /second |
|---|---|---|---|
| Direct Prompting | 2.53 | 1,333 | 19.91 |
| KQG-CoT | 37.82 | 14,106 | 1.33 |
| Vanilla RAG | 6.49 | 3,682 | 7.77 |
| ChronoSynth | 51.65 | 5,012 | 0.98 |
Knowledge Graphs
Knowledge graphs represent entities and relationships as structured, queryable networks for integrating data and supporting reasoning.
See all 232 papers