LRS 和 Tincan API 中的自定义 属性
custom property in LRS & Tincan API
是否可以通过 Tincan API 将自定义 属性 添加到 "Actor" 以保存它
在 LRS 中。
详情:
我正在使用 Learning Locker 作为 LRS 系统和 Drupal 的 Tincan API,众所周知,保存在 LRS 中的语句记录中有 3 个对象,它们是 [Actor - Verb - Object]
现在 Actor 有 2 个属性,它们是 [name - mbox]
我试图修改 Tincan 模块以添加自定义 属性,即 [country],但 LRS API "Learning Locker" 拒绝了它。
那么是否有一种自定义的方式来获取额外的属性,以便我以后可以像 [age - gender - country] 或其标准 API 严格定义的属性
{
"version": "1.0.0",
"actor": {
"objectType": "Agent",
"name": "Creative User",
"mbox": "mailto:register@example.com"
},
"verb": {
"id": "http://adlnet.gov/expapi/verbs/action_custom_verb",
"display": {
"en-US": "action_custom_verb"
}
},
"object": {
"objectType": "Activity",
"id": "http://localhost",
"definition": {
"name": {
"en-US": "master"
}
}
},
"authority": {
"objectType": "Agent",
"name": "drupaladmin",
"mbox": "mailto:hello@learninglocker.net"
},
"stored": "2017-02-06T16:58:23.625600+00:00",
"timestamp": "2017-02-06T16:58:23.625600+00:00",
"id": "9c1d552b-c825-4403-9c89-a9381b8d5320"
}
标准 API 对属性的添加非常严格。 Agent/Group 对象(actor
可以包含的对象)不包括扩展其范围的能力。
可以在称为 extensions
的特殊属性中添加额外的数据点,这些属性在语句对象的几个地方可用。在这种情况下,您可以在 context
属性 的值中使用扩展名来包含有关 actor
的附加信息。您可以将此作为单个离散信息片段来执行,其中每个片段都有自己的扩展键,或者您可以使用一个键,该键使用一个对象作为其值,并在该对象的属性中包含各个信息片段。有关扩展的更多信息,请参阅:http://tincanapi.com/deep-dive-extensions/
请注意,扩展键无法通过 /statements
流资源进行过滤,因此任何基于其键或值的查询都必须通过规范 API 以外的其他方式完成。
是否可以通过 Tincan API 将自定义 属性 添加到 "Actor" 以保存它 在 LRS 中。
详情: 我正在使用 Learning Locker 作为 LRS 系统和 Drupal 的 Tincan API,众所周知,保存在 LRS 中的语句记录中有 3 个对象,它们是 [Actor - Verb - Object] 现在 Actor 有 2 个属性,它们是 [name - mbox] 我试图修改 Tincan 模块以添加自定义 属性,即 [country],但 LRS API "Learning Locker" 拒绝了它。 那么是否有一种自定义的方式来获取额外的属性,以便我以后可以像 [age - gender - country] 或其标准 API 严格定义的属性
{
"version": "1.0.0",
"actor": {
"objectType": "Agent",
"name": "Creative User",
"mbox": "mailto:register@example.com"
},
"verb": {
"id": "http://adlnet.gov/expapi/verbs/action_custom_verb",
"display": {
"en-US": "action_custom_verb"
}
},
"object": {
"objectType": "Activity",
"id": "http://localhost",
"definition": {
"name": {
"en-US": "master"
}
}
},
"authority": {
"objectType": "Agent",
"name": "drupaladmin",
"mbox": "mailto:hello@learninglocker.net"
},
"stored": "2017-02-06T16:58:23.625600+00:00",
"timestamp": "2017-02-06T16:58:23.625600+00:00",
"id": "9c1d552b-c825-4403-9c89-a9381b8d5320"
}
标准 API 对属性的添加非常严格。 Agent/Group 对象(actor
可以包含的对象)不包括扩展其范围的能力。
可以在称为 extensions
的特殊属性中添加额外的数据点,这些属性在语句对象的几个地方可用。在这种情况下,您可以在 context
属性 的值中使用扩展名来包含有关 actor
的附加信息。您可以将此作为单个离散信息片段来执行,其中每个片段都有自己的扩展键,或者您可以使用一个键,该键使用一个对象作为其值,并在该对象的属性中包含各个信息片段。有关扩展的更多信息,请参阅:http://tincanapi.com/deep-dive-extensions/
请注意,扩展键无法通过 /statements
流资源进行过滤,因此任何基于其键或值的查询都必须通过规范 API 以外的其他方式完成。