Added case insensitivity and de/serialize from/to attributes or elements.