>>>>That's the only reasonable assumption... but the readers of the converted text will soon try to push it in the direction of the impossible, as soon as they start discovering uncovered cases. Once one starts heading in that direction, there's no end to it.
>>
>>Haha! Ok, Dragan, have you been talking to my client? ... You are absolutely right, that is exactly what they are going to do.
>
>Kevin, if that is the case, then I recommend you accomplish as much as is possible, and then allow the users to setup the criteria for post-processing sentence components which contain unique needs.
>
>My advice is don't try to create the rules for all cases, because you never will be able to do so. Instead, setup a framework which allows the rules to be addressed. Add initial cases that are known like:
>
>(0) Word X appears, replace with word Y
>(1) Word X appears before word Y (or words Y), then do this
>(2) Word X appears after word Y (or words Y), then do this
>(3) Word X appears in a sentence with word Y, then do this
>(4) Word X is used after a pronoun, do this,
>(5) Word X is used after an action verb, do this.
>(6) Word X is used after a verb of being, do this.
And for all the cases 4 to 6, you must first have a rule to distinguish whether a word is used as a verb or as a noun or as something else (action is now a verb, speed is if followed by "up", slow if followed by "down" etc etc)... artificial intelligence lurking behind the corner :).
But for cases like this, what you propose is the right approach. Let the users make the rules, and let them bang their heads. Eventually, all those flimsy Ikea desks will be replaced with something solid.