I personally like to do groups.
Code
<group name="dps" default="yes">
<set name="Engaged">....</set>
<set name="Idle">...</set>
<set name="WS">...</set>
</group>
<group name="pdt" inherit="dps">
<!--Creating a set named engaged will overwrite dps' engaged, so you ahve to redefine each piece of the set. Because I named it Engaged|Idle, it overwrites both Engaged and Idle.--->
<set name="Engaged|Idle">...</set>
<!--I didn't create a WS set, so it's inherited from the dps group-->
</group>
<group name="mdt" inherit="dps">
<set name="Engaged|Idle">...</set>
</group>
Your macros to switch need to look like this
Code
DPS:
//sc group DPS
//sc set %Status
PDT
//sc group dt
//sc set %Status
(Some people have to use /sc rather than //sc. For some reason, I can't use /sc, so I use //sc. Same result though, once you find one that works)
After that, when you ws, it will switch to your full ws gear and then back to Engaged for the set you want to be in, as long as you have the rules set..
Frankly, I don't even use %Status, I just use Engaged. Sometimes spellcast screws up with the initial load (of the dll) and can't read Status. Also, after SE udpates the game, that issue can arise.