This chapter describes how NLG systems can be built using algorithms and rules which explicitly extract insights from texts, structure information into narratives, and create good linguistic expressions of information; this is called rule-based NLG. Rule-based NLG is mainly used for data-to-text.
Building rule-based NLG systems can be expensive, but this approach gives developers complete control over functionality. Rule-based systems will not go ‘off the rails’ and do crazy or inappropriate things (unless they have software bugs, which can be fixed).
This chapter includes the following sections:
- NLG Pipeline
- Examples
- Signal analysis
- Data interpretation
- Document planning
- Microplanning
- Surface realisation
- Template NLG
- Further reading and resources
Resources: Selected blogs
- Challenges of Surface Realisation
- How Should Different NLG Components Add Value?
- NLG vs Templates: Levels of Sophistication in Generating Text
- We Need Robust Ways to Select Content of NLG Texts
- What are the Problems with Rule-Based NLG?
Below blogs are more personal, reflecting on things I have done
Resources: Software
Resources: Surveys
- Gatt and Krahmer 2018 (especially Section 2)