Parte da persistência dos dados no projeto (em especial dentro do núcleo) é feita através de uma implementação da especificação JDO (Java Data Objects), que consiste numa especificação de um conjunto de interfaces para fácil persistência e recuperação de modelos de objetos.
Uma das maiores vantagens da especificação JDO é que ela é independente de base de dados; isto é, existem implementações bastante estáveis disponíveis para a maior parte das bases de dados mais importantes. Optou-se pela implementação JPOX, que é livre e que fornece a maior parte das funcionalidades adicionais das quais necessitamos. Além disso, a JPOX pode ser utilizada em conjunto com MySQL ou o Postgres, que são os bancos de dados relacionais livres mais difundidos no momento.
A especificação JDO define inúmeras facilidades que permitem persistência quase transparente do modelo de objetos. Dentre elas, podemos destacar:
JDO ainda fornece algumas outras facilidades, mas essas são as principais.