• The trigger is guarenteed to fire for each insert, once. It does not fire for each row.

    you need to use the inserted and deleted tables to access the rows that were inserted/updated/deleted.

    The suser_sname() or user_name() can be used to grab the ID of the person changing the data.

    The XML schema and querying are really up to you. It's not that hard to query XML in SQL Server 2005, but it does take some skills.