【发布时间】:2018-10-04 15:29:43
【问题描述】:
【问题讨论】:
标签: tin-can-api lrs learning-locker
【问题讨论】:
标签: tin-can-api lrs learning-locker
通常答案是,不。 xAPI 语句数据旨在是不可变的。但就它是一个数据流而言,它实际上取决于语句使用者来指示值如何为它的目的而改变。所以有几种方法可以实现相同的概念...
1) 根据消费系统的不同,它可能就像发送另一个带有新分数的语句一样简单。一些消费系统会看到新的分数(通常对于相同的活动,object 和/或registration)并认为它是更新。在这种情况下,会有多个语句指示分数,但根据timestamp,我们可以知道哪个是最后收到的分数。
2) 更类似于“更新”或“编辑”的另一种方式是通过取消原始语句来表明最初不应该存在。无效的声明有效地将其从数据流中取出,因此消费系统不应该认为它曾经存在过。作废后,您将发送一份包含更新分数的新声明,并可能保持其他所有内容相同,尤其是 timestamp 值。重要的是要意识到更简单的系统(例如 #1 中描述的那些)可能无法正确处理 voiding case,因为我们在野外看到它的使用相对较少(迄今为止)。此外,了解timestamp 和stored 属性值之间差异的细微差别以及消费系统处理数据的顺序也很重要。有关作废的更多信息,请参阅:https://www.ht2labs.com/void-xapi-statement/
【讨论】: