Open mashbourne opened 6 years ago
With the current model (widget relationship to epub):
DigitalResource.isPartOf\<AssignableDigitalResource>
I think the strongest arguments for adding AssignableItem are 1) Symmetry with Assessment Profile 2) AssignableItem Event implies via semantics that parent child relationship is expected. And makes it obvious how to represent student actions where Assignable contains interactive digital resources.
As someone who has been dealing with caliper for a while, it wasn't immediately obvious to just use AssignableEvent for everything and model the relationship via isPartOf. My brain was looking for something that explicitly mapped to the use case. I think very flexible semantics will lead to implementations where same interaction is captured differently.
@arwhyte @ViktorHaag here is the proposed flow. Interested in how could be modeled differently
Action | Event | |
---|---|---|
1a | Student launches epub that contains interactive widgets | NavigationEvent#NavigatedTo (the epub) |
1b | AssignableEvent#Started (the epub) | |
2a | Student clicks on interactive widget | NavigationEvent#NavigatedTo (the widget) |
2b | ToolUseEvent#Used (the widget) | |
3 | Student interacts with widget | ToolUseEvent#Used (the widget) |
4 | Student clicks "check my work" | AssignableItemEvent#Completed (the widget, part of Assignable epub, attempt N) |
4b | GradeEvent#Graded (the widget, part of Assignable epub, attempt N) | |
5 | repeat 3-4b for several attempts | |
6 | repeat 2a-4b for several widgets included in the assigned epub | |
7 | Student finishes the assigned epub with "Submit" button | AssignableEvent#Submitted (the epub) |
Given that AssignableEvent can be used to model this flow, the question is more around whether symmetry with Assessment Profile is desired. I think it makes it more clear when event type encodes that value isPartOf is expected
I agree that an AssignableEvent would be useful (and seems to have been added to the spec). We would have use cases for it, e.g. we'd often assign curriculum content. I think it would be useful to have a CREATED event for the assignment, though that might be modelled with a generic Event which creates an AssignableDigitalObject. The above events for interaction with the assignment are fine, though it might be an idea to align them with the activityProgress statuses in the LTI Assignment & Grade service ([https://github.com/IMSGlobal/caliper-spec]). What I don't see and I think would be useful is an Assigned action, and the event supporting an array of Actors that were assigned the assignment.
So we just ran into reporting use case for interactive widgets within an ePub
they look like an assessment to the user, but are not within an assessment engine and can not and should not use Assessment Profile
The javascript interactive widgets within an epub can be authored to have multiple items, and there isn’t a AssignableItem Event
I believe this is a use case for creating AssignableItem entity and events.
Open question: are epub widgets or other interactive elements common enough that they should have their own entity? DigitalResource with mediaType application/javascript is a bit vague and doesn’t give much context to what the interaction was