Looks like you want to group workorders having the same ID. Grouping in XSLT 1.0 is a bit of a black art: see http://www.jenitennison.com/xslt/grouping
. In XSLT 2.0 it's much easier, there's an xsl:for-each-group instruction.
You're showing the template that's activated to process a single workorder at a time. Clearly any grouping or concatenation has to happen at the next level up, when you process a collection of workorders. You haven't shown what the next level up in your XML looks like.
You can concatenate elements using concat() or using a sequence of xsl:value-of elements as you tried. But clearly if you select the same Description element twice then it's going to select the same one each time.
Author, XSLT Programmer's Reference and XPath 2.0 Programmer's Reference