I was originally going to make this a PM to Putnam, but it will affect raw modders also, so I'm making it public. Really it's to anyone who scans through raws to get extra information like autoSyndrome does with SYN_CLASSes, but I think that's just me and Putnam.
As DFHack modder interfaces get more numerous and complicated, it will get harder for modders to keep track of the naming conventions that signal data to scripts like itemsyndrome, autoSyndrome, syndromeTrigger, etc. The natural solution is to standardize the way that modders pass this extra information to DFHack. I think we should use XML. XML is inherently extensible, so scripters and dfhackers could easily design their own structure for tags that are relevant to whatever script/plugin they're writing without a new DFHack release. The DFHack parser will expose the parsed files as a tree of XML tags with a list of key/value arguments. All you'd have to do as a scripter is walk through the tree and extract the information you need instead of walking through raw files in your script.
Would you be willing to change the way itemsyndrome works to cooperate with this? So far (I think) it's only you and me that do this sort of thing, so if this is ever going to get done, now is the time. It's too hard to convince large numbers of people to change their stuff even if it's a better way of doing things. If we switch over now then we can keep it nice and standardized. Putting weird raw tags into the game is awkward at best from a design point of view anyway. I would greatly appreciate it if you'd be willing to switch over. If there's a better way of doing things, the sooner you switch over to it, the easier it will be and the less people will have to change their stuff.
I do think the old interface should be removed entirely, but I might be persuaded to leave it for a release or two to help the transition for modders. It would break backward compatibility, but only once and for the better in the long run. DF itself can change without regard to backward compatibility, so it comes with the territory.
TL;DR:
1. I'm going to make the XML parser. Would you be willing to use it the new format once I make a nice interface?
2. I could be persuaded to use a different format, but I really think XML is the way to go.
3. I could be persuaded to maintain backward compatibility, but this really is a much better way of doing things in the long run. It seems like a bad design to have two completely different ways of doing the same thing, especially if they might conflict.