Considering such an enumeration :
type
TTypeOfData = (
[XmlName(\'ABC\')] todABC,
[XmlName(\'DEF\')] todDEF,
[XmlName(\'GHI\')] todGHI
);
Attributes associated with elements in enumerations are not currently stored in Win32 RTTI data in the executable. RTTI is already responsible for a fair increase in the size of executables, so some lines had to be drawn somewhere. Attributes in Delphi Win32 are supported on types, on fields of records, and fields, methods, their parameters, and properties of classes.
The attribute declarations don't cause errors because of backward compatibility with Delphi for .NET.