The basic idea, I guess.. creatures (from the raws) have a tile tag in that hierarchical form, such as "humanoid.elf.carpenter".. tilesets contain tiles, specified somehow, which have fully qualified names such as "humanoid", "humanoid.elf" or "humanoid.elf.carpenter". The exact way tilesets specify this has not been defined yet, but is reasonably trivial; I'll come up with something simple.
Conceptually, when trying to display this carpenter, it'd first look for a "humanoid.elf.carpenter" tile. If that's missing, it'd look for a humanoid.elf tile; if that's missing, humanoid... if that's missing too, I guess displaying a question mark would be better than picking some other humanoid or an entirely unrelated tile.
Any questions? Comments? Please comment.
One comment/request. Maybe add one more step between "elf" and "carpenter": "woodworker". Most existing sets have generic "woodworker", "farmer", etc. tiles, after all. It'd keep things nice and organized.
I guess that's more of a request for Ironhand, since I expect Baughn will build it to allow arbitrarily deep hierarchies.
FAKE EDIT: Oh, one question. How do you expect this to interact with multitile creatures in the future? Will they be defined all in one image file, or will we need a separate file for each tile? (I prefer the former.)