What's the preferred way to do XSL transformations?

Is their a reliable Ruby tool out there for the task? Or is there a fairly 
standard unix tool one uses?

Thanks,
T.