Here is my original sentence that I was told needs correction.
For instance, the provided metadata and types are sufficient for the automatic construction of the application user interface.
The intent is to say that the "metadata and types", which are provided by someone, are sufficient to achieve a certain goal, automatic construction of the application user interface.
A native-English-speaking person (my native language is Ukrainian) who helped me proofread my article suggested changing this sentence to
For instance, the metadata and types that are provided are sufficient for the automatic construction of the application user interface.
and explained as follows.
"Provided" in this instance seems to mean "on the condition that", especially when the word "provided" precedes the object. "For instance, provided metadata and type are sufficient for the automatic construction of the user interface, then ... something can happen", but the ending of the sentence is missing, so the reader must start again and mentally rearrange the words. This is a fairly consistent (but incorrect) approach to this type of syntactic expression, and possibly results from an equivalent syntactic construct in Ukrainian. Yes, the suggestions tend to be slightly more verbose, but upon re-reading they are more clear and less ambiguous than the originals.
A resource at diclib.com suggests that such meaning of the word provide is only the fourth possible meaning. Constructs like attached documents instead of documents that are attached, or implemented program instead of programs that are implemented are common in English.
Is provide (as in provided program, provided document) really so different from attach and implement? Is the suggestion to always say object that is provided instead of provided object correct?