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.