These tabs are not really part of the content, but rather just there
for formatting reasons.
Well, the best answer is not to put them in for formatting, but to
format for humans at the time when humans want to read the data.
However, assuming that you're stuck with them...
<xsl:value-of select='translate(somenode,"	", "")'/>
No, that won't work; translate is strictly a replacement operation, and
can't be used to remove characters.
If you know there's only a single tab, you could use
concat(substring-before(somenode,"	"),
substring-after(somenode,"	"))
If there may be multiple tabs, you need to repeat that until all tabs
have been dealt with -- which in XSLT 1.0 means writing a recursive
named template and invoking it via call-template. (XSLT 2.0 has a
slightly more elegant syntax for writing and calling functions.) I'm
sure there are examples of this approach in the XSLT FAQ, or in many
decent XSLT tutorials.
Or you could invoke a non-XSLT extension function, if your processor
supports that.
--
() ASCII Ribbon Campaign | Joe Kesselman
/\ Stamp out HTML e-mail! | System architexture and kinetic poetry