• I'm with Elliot. I've done lots of programming in and around XML on SQL Server. It's functional. But it's not terribly fast. If you're just talking, writing and reading this stuff in and out of the database as XML and then all parsing is done at the client side, yeah, that'll work. But if you're talking filtering and querying the XML, I think you'll be digging a pretty dark hole for yourself.

    EAV structures can work, although they're hard to set up. I saw a discussion on it recently somewhere (or maybe I was involved in one at an event, I don't remember) where people were able to get EAV to work nicely. But it takes a bit of effort and some careful coding. Take your time and don't do crazy shortcuts around how SQL Server stores and accesses data because those almost never work out well.

    "The credit belongs to the man who is actually in the arena, whose face is marred by dust and sweat and blood"
    - Theodore Roosevelt

    Author of:
    SQL Server Execution Plans
    SQL Server Query Performance Tuning