  Despite being an essential step in software development, writing requirements
specifications is frequently performed in natural language, leading to issues
like inconsistency, incompleteness, or ambiguity. The ITLingo initiative has
introduced a requirements specification language named RSL to enhance the rigor
and consistency of technical documentation. On the other hand, natural language
processing (NLP) is a field that has been supporting the automatic analysis of
requirements by helping to detect issues that may be difficult to see during a
manual review. Once the requirements specifications are validated, it is
important to automate the generation of documents for these specifications to
reduce manual work, reduce errors, and to produce documentation in multiple
formats that are more easily reusable or recognized by the different
stakeholders. This paper reviews existing research and tools in the fields of
requirements validation and document automation. We propose to extend RSL with
validation of specifications based on customized checks, and on linguistic
rules dynamically defined in the RSL itself. In addition, we also propose the
automatic generation of documents from these specifications to JSON, TXT, or
other file formats using template files. We use a fictitious business
information system to support the explanation and to demonstrate how these
validation checks can assist in writing better requirements specifications and
then generate documents in multiple formats based on them. Finally, we evaluate
the usability of the proposed validation and document automation approach
through a user session.
