I think your last query (which is pretty much like the one I suggested) makes more sense than the first one.

The first one, using the subquery X3 and the ORDERBY column, is just ordering by a constant string, which actually means no ordering at all.

@OP :

I am very sorry, I am not sure whats the use of Timing Data. I am new to SQL server & I havent worked on XML's.

Well, you'd better know what's the use of it if you intend to make a correct migration.
Some constructs are really close to Oracle syntax hence easily ported, others need the knowledge of business rules.