To summarize, I\'m a little confused as to how I would design such a database that allows indefinite badge-rule creation without requiring structu
I apologize for being brief.
To implement a system such as this, I might create a table which stores either stored procedure names or actual queries that would be used to determine whether a particular user has earned a badge.
badge_criteria
badge_key int
badge_criteria varchar(max)
You can extract and execute the queries for badges which the user has not earned from your middle tier, but you would not have to make any code or structural changes to add new badges going forward.