Skip to main content

Data

Data objects hold the state that services and systems operate on.

Why data is separated out

Separating state from behavior makes the system easier to reason about.

It allows the project to keep:

  • reusable models
  • clearer service boundaries
  • lower coupling between systems

What data usually represents

Depending on the feature area, data can describe things such as:

  • current world state
  • authored behavior content
  • configuration values
  • runtime values that change as agents act

How to think about it

As a user, you usually configure or author data and let services interpret it.

As a maintainer or integrator, this separation helps you see which classes store state and which classes perform actions.