It seems that the constants behave strangely in Flex.
Here is why:
public const X:String = "X";
public const Y:int = 101;
public const NotSoConstant:XML = …some random xml…
Now here comes the fun part:
var x:string = X;
x = "aaa";
trace(X + ":" + x); // X:aaa
var y:int = Y;
y = 10;
trace(Y +":" + y); //101:10
var constantOrNot:XML = NotSoConstant;
constantOrNot = …another [...]