The Artemis framework inherits the concept of Entities representing bags of Components, but it does away with the OO concept of encapsulating behaviour within the components. Instead, it adopts a data-driven design involving the separation of the data and logic of each component. In essence, the Components serve as little more than bags of data. They have no update function, no internal logic, just getter and setter functions to expose their current values. The logic is instead encapsulated in the Systems that accompany the entities and components.