Hi Ronald,
The precise function of AC and AY is not very clear in XCSoar.
By coincidence, I am currently looking at XCSoar's "type" and "class" in the source code to try to figure out why some of my airspaces are showing up as "Unclassified" and "Unknown". FWIW, below is an excerpt from AirspaceParser.cpp. These are the strings that you can use on the AY and AC lines in airspace.txt. The AY line is only processed if the AC line has a valid ICAO class (A, B, C, D, E, F, G) or "Unclassified". So you can have class E and type TMZ (AC E, AY TMZ), or class G and type TMZ (AC G, AY TMZ), or any other combination of a valid ICAO class and a type. What you *can't* have is (say) AC Q, AY TMZ... in this case the AY is ignored. Possibly AC TMZ, AY TMZ might work, where you're setting the *class* to the non-ICAO class TMZ, which I think would probably generate warnings, etc.
But my advice would be to use the AC line only for ICAO classes, and Unclassified if there is no ICAO class. Then use the AY line for all the different types of airspace like Restricted, TMZ, etc.
To answer your question about alerting... in XCSoar you can set up alerting based on either the class *or* the type. So you in Map Display/Airspace you can click "Filter" and then enable "Warn" on "Transponder Mandatory Zone" and disable it for Class E, F, G, which I think should achieve what you want. But do try it out first, because I haven't actually tested it yet.
{ "R", RESTRICTED },
{ "Q", DANGER },
{ "P", PROHIBITED },
{ "CTR", CTR },
{ "A", CLASSA },
{ "B", CLASSB },
{ "C", CLASSC },
{ "D", CLASSD },
{ "GP", NOGLIDER },
{ "W", WAVE },
{ "E", CLASSE },
{ "F", CLASSF },
{ "TMZ", TMZ },
{ "G", CLASSG },
{ "RMZ", RMZ },
{ "MATZ", MATZ },
{ "GSEC", WAVE },
{ "UNCLASSIFIED", UNCLASSIFIED },
{ "RESTRICTED", RESTRICTED },
{ "TMA", TMA },
{ "TRA", TRA },
{ "TSA", TSA },
{ "FIR", FIR },
{ "UIR", UIR },
{ "ADIZ", ADIZ },
{ "ATZ", ATZ },
{ "AWY", AWY },
{ "MTR", MTR },
{ "ALERT", ALERT },
{ "WARNING", WARNING },
{ "DANGER", DANGER },
{ "PROHIBITED", PROHIBITED },
{ "PROTECTED", PROTECTED },
{ "HTZ", HTZ },
{ "GLIDING_SECTOR", GLIDING_SECTOR },
{ "TRP", TRP },
{ "TIZ", TIZ },
{ "TIA", TIA },
{ "MTA", MTA },
{ "CTA", CTA },
{ "ACC_SECTOR", ACC_SECTOR },
{ "AERIAL_SPORTING_RECREATIONAL", AERIAL_SPORTING_RECREATIONAL },
{ "OVERFLIGHT_RESTRICTION", OVERFLIGHT_RESTRICTION },
{ "MRT", MRT },
{ "TFR", TFR },
{ "VFR_SECTOR", VFR_SECTOR },
{ "FIS_SECTOR", FIS_SECTOR },
{ "LTA", LTA },
{ "UTA", UTA },
{ "AIRSPACECLASSCOUNT", AIRSPACECLASSCOUNT }
Frank