Too uncharted waters
Well, someone's got to go through them to chart them, right?
I've used derived castes for complicated creatures, as well as heavily using the select caste/select additional caste tags. It's a good way of cutting down on space, though you do need to keep track of which castes are copying details from others and possibly rearrange your raws according to... something I can't articulate. For instance, if you have a lot of castes and the no-argument tags spread out in such a way that all castes have several of them but no two castes share the same arrangement, then it may be helpful to have a separate section for the bits that go something like:
[SELECT_CASTE:A]
[NOPAIN]
[SELECT_ADDITIONAL_CASTE:B]
[NONAUSEA]
[SELECT_ADDITIONAL_CASTE:C]
[NOBLEED]
[SELECT_CASTE:D]
[NO_EAT]
[NO_SLEEP]
[NO_DRINK]
[SELECT_ADDITIONAL_CASTE:A]
[SELECT_ADDITIONAL_CASTE:B]
[EXTRAVISION]
That results in the following, with all the tags in the same section of the raws instead of being spread throughout the castes:
Caste A: no pain, no nausea, no bleed, extravision
Caste B: no nausea, no bleed, extravision
Caste C: no bleed
Caste D: no eat, no sleep, no drink, extravision
'Course, layering caste selection like that is more an exercise in tidying up than writing the creature raw, since tying the castes together like that means that making changes to one caste is rather tricky.
In the same way that you can group caste selection, you can group caste deriviation since each derived caste has only a few lines of tags (most of the creation having been done in the base caste). This grouping works for me because I find it easier to form a mental map of a raw when it's made up like this, with visually-distinct sections being connected to other visually distinct sections, but other people might find arranging a raw by caste alone to be easier.