¿Cómo modelar una entidad con muchos hijos en Sorm?

tengo unWorkspace yDocument entidades, con la idea de que un espacio de trabajo puede contener cero, uno o más documentos. Mi primer enfoque para modelar esto fue:

case class Workspace(name: String, documents: Seq[Document])

pero esto no escalará bien ya que mis espacios de trabajo pueden contenermuchos documentos. Afortunadamente, mi requisito comercial me permite tratar los espacios de trabajo y los documentos por separado (en el sentido de que cuando tengo un espacio de trabajo, no hay ninguna razón o invariante que me obligue a considerar todos los documentos que contiene).

Pregunta: Me pregunto: ¿Cómo modelaría?Workspace yDocument enSorm ¿De modo que tengo un enlace entre los dos pero no tengo que cargar todos los documentos de un área de trabajo? Me imagino tener unRepositorio eso me daría acceso a los documentos de un área de trabajo, con soporte de paginación.)

case class Workspace(name: String)
case class Document(name: String, /* ... */)

trait WorkspaceRepository {
  def children(ws: Workspace, offset: Long, limit: Long)
}

Respuestas a la pregunta(1)

Su respuesta a la pregunta