If this is using a scripting language, like PHP, the query string can be built several ways -
By concatenating the pieces together using a loop.
If the terms x1 = ..., x2 = ... were in an array and they always used one type of condition (OR in your example) you could implode() them and than concatenate that with the rest of the query.
If the column is actually always the same WHERE x1 = 123 OR x1 = 456..., then you can use a mysql IN() function (similar to a php in_array() function) in the WHERE clause.
So, short answer, yes. A scripting language can dynamically build any valid query string using a variable number of items to put in the WHERE clause.
Your example is a bit vague. For example, if you really have a number of columns in a row - x1, x2, x3, ... holding similar data, that would be a bad table design and would require a lot more code to insert, find, modify, and retrieve any piece of data.
If you could show at least two different actual queries to clarify what is actually occurring, someone can provide some specific code.