That would work, but then, why don't we reduce this to an existing technology and use the templates:
Templates don't yet handle true parameters. For instance, in a species definition we have things like "endangered", which, when they exist, cause an entirely new row to appear in the table. For this to work it seems we would need tables to act as miniature scripts.