Martin Smith gave a great answer on StackOverflow - as he often does - when someone was looking to get a table name from the information in sys.dm_tran_locks.
Here's my take at an answer - trying to cut down on the rows returned to keep the list short in busy databases.
Let's give it a test.
Good enough for now.
So let's commit the transaction in order to release the locks. And I'll have more for you another day...