A student can access multiple SCOs, and a SCO can be accessed by multiple students. So I start with a many-to-many relationship like this.
The two boxes correspond to tables that are likely to be in the LMS in some form or another – actual implementation will be LMS-specific.
Many-to-many relationships are a bad thing in database design. So I introduce an intermediate database table to reduce the many-to-many relationship to a pair of one-to-many relationships.
Again, the precise implementation of this table is going to be LMS-specific. But there’s almost certainly going to be a table somewhere in the LMS database that serves this purpose. Note that I’ve identified some of the data that might be stored in such tables – again, the exact implementation details are going to be LMS-specific.
Finally, I need to link the “Instance” table to the “scormvars” table that I’m using as part of the VS SCORM RTE noting that a single Student/SCO instance will have multiple entries in the scormvars table – one for each data element. And this is what I get.
So what does this all mean for my RTE code? More next time.