A fundamental assumption of the non-incremental version described so far is that it is often possible to change an ambiguous utterance locally to obtain an unambiguous utterance with the same meaning. Based on this local view it seems plausible to integrate parsing and generation more tightly in the following way: During generation already produced partial strings are parsed to determine the degree of ambiguity. If necessary an ambiguous partial string is revised in order to produce an unambiguous paraphrase of that ambiguous partial string. The successive application of this incremental generate, parse and revise technique will end up in an utterance which is unambiguously as possible.
Such a strategy works for an example like:
Here, the relevant ambiguity of the whole utterance is forced by the partial string `Removing the folder with the system tools'. This ambiguity can be solved by restating the partial string, e.g., as `Removing the folder by means of the system tools' independently from the rest of the string.
However, consider the ambiguous string `visiting relatives' which can mean `relatives who are visiting someone' or `someone is visiting relatives'. If this string is part of the utterance
then a local disambiguation of `visiting relatives' is helpful in order to express the meaning of the whole utterance clearly. But if this string is part of the utterance
then it is not necessary to disambiguate `visiting relatives' because the specific form of the auxiliary forces the first reading `relatives who are visiting someone'.
This phenomenon is not only restricted on the phrasal level but occurs also on lexical level. For example, `ball' has at least two meanings, namely `social assembly for dancing' and `sphere used in games'. If this word occurs in the utterance
then the preposition `during' forces the first meaning of `ball'. Therefore it is not necessary to disambiguate `ball' locally. But, for the utterance
`ball' cannot be disambiguated by means of grammatical relations of the utterance.