これはオブジェクトモデリングの問題です。Realm.ioと "参照整合性"
私のモデルには、1つ以上の "GenreTag"オブジェクトに関連付けられた "ソング"オブジェクトがあります。
GenreTagは音楽の種類(「ロック」、「ポップ」)だけでなく、他のディスクリプタの種類(「80s」)でもかまいません。
ソングオブジェクトは、1対多の関係でGenreTagオブジェクトに関連付けられています。これをモデル化するために、SongオブジェクトにGenreTagオブジェクトのリストであるフィールドが含まれているはずです。
私の質問:特定のGenreTagの定義を変更すると、タグのリストにこのアイテムを持つすべてのSongオブジェクトを通じて変更がどのように伝播されますか?つまり、「ロック」タグを定義しているGenreTagオブジェクトのテキストを「ロック」に変更すると、この文字列への変更は、GenreTagアイテムのリストに「ロック」しているすべてのソングオブジェクトに適用されますか?
このタイプの「参照整合性」を保証するベストプラクティスは何ですか?
Genreタグオブジェクトのマスターリストがあることが明確でない場合は、追加する必要があります。このマスターリストのサブセットは、特定のソングオブジェクトに関連付けられるものです。 SQL世界では、SongとGenreテーブルの間にマッピングするためのエントリを持つ多対多テーブルを使用しました。リレーショナル・ワールドにおける本質的に標準的なモデリングであり、実行時に完全なオブジェクトをアセンブルするためにORMツールを使用しました。 – tfrysinger
しかし、真のオブジェクトデータベースでは、GenreTagオブジェクトの更新が、それを参照している可能性のあるさまざまなSongインスタンスにどのように伝播するかはわかりません。 – tfrysinger