Wie modelliere ich eine Entität mit vielen Kindern in Sorm?

Ich habe einWorkspace undDocument Entitäten mit der Idee, dass ein Arbeitsbereich kein, ein oder mehrere Dokumente enthalten kann. Mein erster Ansatz, dies zu modellieren, war:

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

Dies lässt sich jedoch nicht gut skalieren, da meine Arbeitsbereiche möglicherweise enthaltenviele Unterlagen. Glücklicherweise kann ich aufgrund meiner geschäftlichen Anforderungen Arbeitsbereiche und Dokumente separat behandeln (in dem Sinne, dass es keinen Grund oder keine Invariante gibt, die mich zwingen, alle darin enthaltenen Dokumente zu berücksichtigen, wenn ich über einen Arbeitsbereich verfüge).

Frage: Ich frage mich: Wie würde ich modellieren?Workspace undDocument imSorm Damit ich eine Verknüpfung zwischen den beiden habe, aber nicht alle Dokumente eines Arbeitsbereichs laden muss? Ich stelle mir vor, einen zu habenRepository das würde mir Zugang zu den Dokumenten eines Arbeitsbereichs verschaffen, mit Paginierungsunterstützung.)

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

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

Antworten auf die Frage(1)

Ihre Antwort auf die Frage