Thank you for your response.
The reason that method is not appropriate is that I am not actually trying to return results from a custom table. The client wants to return products that are associated with the custom table data. So in my example, I have a specification custom table and a product document type. The content editor can associate multiple specifications with a given product document. There is an existing search that uses a standard smart search index for direct query of the product documents. What I am creating is a specification search that allows the user to enter a specification name, grabs the guid from the custom table, then queries the product documents specification field for a match and returns a list of products that are associated with any relevant specifications.
Smart Search does not allow for custom queries(as far as I can tell).
My ultimate solution was to add standard ASP controls to my template and use a function to pass parameters into a datasource webpart connected to a universal viewer as my result set. This allows both my product specific and specification search to exist on the same page and function independently.
The reason I am not using a filter is the requirement that user entered text be free form and not a selection from an available list of specifications.