データ構造を検証したかっただけです。
私には少し複雑に思えますが、単純化できますか?
- 質問は章にグループ化されています。
- 各質問について、セッションごとに 1 つの回答のみが可能です。
- 目的は、同じ質問に対する回答を比較/分析できるようにすることです (異なるユーザーまたは同じユーザーによる異なる時間、つまり異なるセッションで)。
- チャプターと質問のコレクションであるテンプレートは、チャプターと質問が同じ場合、複製する必要はありません。
- (これは、Answer が Session と関係を持っていない場合に必要です。)
- Answer back から Session への関係は正しい戦略ですか?
- モデルを単純化するために他に何を改善しますか?
ありがとうございました!
編集
フォローアップの説明:
- 回答は静的ではなく (「正しい」回答、「解決策」など)、ユーザーが入力したテキストです。「クイズ」というよりは「アンケート」のようなものです。答えには、分析可能な定量的な属性があります。
- 前述のように、1 つの質問は、セッション内で 1 つの回答しか持つことができません。質問は ( 経由で) 複数のセッションに間接的に属することができるため
(NSSet*) question.chapter.template.sessions
、複数の回答を持つことができるため、対多の関係が必要になります。 - 典型的なシナリオ: ユーザーが特定のテンプレートを使用して新しいセッションを開始し、回答を入力します。次に、結果の分析を見て、同じテンプレートを使用する他のセッションの結果と比較できます。
編集2
属性を含むデータ モデルのスナップショット