The EventAttribute class, which realizes one single attribute belonging to exactly one event. An EventAttribute encapsulates the attribute's value and provides an interface for serialization, de-serialization, and accessing type information. All methods are private and can just be accessed through the interface of friend class Event.