The following sections describe common structures used across several of the Statement templates. Wherever a Statement template refers to a "common entity identifier", the example given in the Statement template follows or extends 1 of the structures on this page.
Common entity identifier: ActorA
This entity is required across all Statements in the Jisc Profile.
The Actor entity describes the individual that is the subject of the Statement.
Property [cardinality] | Description | Value information |
---|---|---|
actor.objectType [1] | Must have the value "Agent". Actors of type "Group" are not supported in the Jisc Profile. | Must have the value "Agent" |
actor.name [0..1] | Full name of user. | string |
actor.account [1] | Account details of Agent. | JSON Object |
actor.account.name [1] | Login id for the subject | string |
actor.account.homepage [1] | URL of the home page of the application for which the login id applies. | url |
"actor": {
"objectType": "Agent",
"name": "John Smith",
"account": {
"name": "jsmith12",
"homePage": "https://courses.alpha.jisc.ac.uk/moodle"
}
}
Common entity identifier: VerbA
This entity is required across all Statements in the Jisc Profile.
The Verb structure indicates the action which the Statement expresses. The Verbs used in the Jisc Profile are listed on the vocabularies page.
Property [cardinality] | Description | Value information |
---|---|---|
verb.id [1] | An IRI that identifies the Verb. Valid IRIs depend on the Statement and are given on the relevant Statement page. | IRI |
verb.display [1] | A human readable representation of Verb, takes a RFC 5646 Language Tag. | string |
"verb": {
"id": "https://brindlewaye.com/xAPITerms/verbs/loggedin",
"display": {
"en" : "logged in to"
}
}
The significance of data in a Statement can be more clearly understood if we describe the circumstances surrounding the Statement. These circumstances are described in a Statement's Context entity.
Common entity identifier: ContextA
This pattern is used across many Statements in the Jisc Profile, but there may be additional data elements required for some Statements. Four extensions are provided, with IRIs as defined on the vocabularies page.
Property [cardinality] | Description | Value information |
---|---|---|
context.platform [1] | The platform used in the experience of this learning activity. The value used should not change between platform upgrades and version changes, and should typically be a concise name by which the application is commonly known, for example "Moodle" or "Blackboard" | string |
context.extensions.version [0..1] | Recommended. Identifies the version of the Jisc xAPI Profile found on the ReadMe page. |
decimal |
context.extension.sessionId [0..1] | The VLE session ID, or a suitably hashed version of it. A value should be provided if this information is available. | string |
context.extension.ip-address [1] | Client's IP address. An IPv4 address is recommended. | ip address |
context.extension.courseArea [0..1] | The academic context in which this Activity is situated (e.g. umbrella course, or parent area). The properties in courseArea must be a UDD Module Instance ID or a VLE Module ID or both. More information can be found on the vocabularies page. | JSON object |
"context": {
"platform": "Moodle",
"extensions": {
"http://xapi.jisc.ac.uk/courseArea": {
"http://xapi.jisc.ac.uk/vle_mod_id": "LA101",
"http://xapi.jisc.ac.uk/uddModInstanceID": "LA101-200-2016S1-0"
},
"http://xapi.jisc.ac.uk/sessionId": "32456891" ,
"http://id.tincanapi.com/extension/ip-address": "10.3.3.48"
"http://xapi.jisc.ac.uk/version" : "1.0"
}
}
Common entity identifier: ContextB (Deprecated)
The ContextB pattern is similar to ContextA, but with the addition of a contextActivities property with a ‘grouping’ property. This allows Statements to be associated to the Activity described in the Object entities as part of a larger whole.
Property [cardinality] | Description | Value information |
---|---|---|
context.contextActivities [0..1] | An optional property that holds a mandatory ‘grouping’ property. It allows Statements to be associated with the Object entity's Activity as part of a larger whole. The example shows a course within the VLE. | The 'grouping' property has an ObjectA as its value. |
context.platform [1] | The platform used in the experience of this learning activity. The value used should not change between platform upgrades and version changes and should typically be a concise name by which the application is commonly known, for example "Moodle" or "Blackboard" | string |
context.extensions.version [0..1] | Recommended, identifies the version of the Jisc xAPI Profile found on the ReadMe page. |
decimal |
context.extension.sessionId [0..1] | The VLE session ID, or a suitably hashed version of it. A value should be provided if this information is available. | string |
context.extension.ip-address [1] | Client's IP address. An IPv4 address is recommended. | ip address |
context.extension.courseArea [0..1] | Umbrella course/parent area by its an UDD Module Instance ID or VLE Module ID. More information can be found on the vocabularies page.. | JSON object |
"context": {
"contextActivities":{
"grouping":[
{
"objectType":"Activity",
"id":"http://moodle.data.alpha.jisc.ac.uk/course/view.php?id=4",
"definition":{
"type":"http://xapi.jisc.ac.uk/courseArea",
"name":{
"en":"xAPI Basics"
},
"description":{
"en":"xAPI Basics course for Learning Analytics enthusiasts"
}
}
}
]
},
"platform": "Moodle",
"extensions": {
"http://xapi.jisc.ac.uk/courseArea": {
"http://xapi.jisc.ac.uk/vle_mod_id": "LA101",
"http://xapi.jisc.ac.uk/uddModInstanceID": "LA101-200-2016S1-0",
},
"http://xapi.jisc.ac.uk/sessionId":"32456891",
"http://id.tincanapi.com/extension/ip-address": "10.3.3.48"
"http://xapi.jisc.ac.uk/version" : "1.0"
}
}
Depending on the Statement, different patterns apply to express the Object of a Statement.
Common entity identifier: ObjectA
This Object pattern describes the core attributes of Object as used in the Jisc Profile.
Property [cardinality] | Description | Value information |
---|---|---|
object.objectType [1] | The value must be "Activity". | String, value must be "Activity". |
object.id [1] | An identifier for the object of the xAPI Statement. This must be unique (within a given platform) across all Object types. | iri |
object.definition.type [1] | Indicates the type of the Object of the Statement. It is required and valid values are listed on the vocabulary page | iri |
object.definition.name [0..1] | Optional Object name | string |
object.definition.extensions.http://xapi.jisc.ac.uk/subType [0..1] | May be used to indicate the sub-type of this Activity, if applicable for the recipe being used to create the Statement. This qualifies the object.objectType, and is described on the [vocabularies](vocabulary.md#object-definition-extensions) page. | iri |
"object": {
"objectType": "Activity",
"id": "https://courses.alpha.jisc.ac.uk/moodle",
"definition": {
"type": "http://activitystrea.ms/schema/1.0/application",
"name": {
"en": "University of Jisc VLE"
},
"extensions": {
"http://xapi.jisc.ac.uk/subType": "http://id.tincanapi.com/activitytype/lms"
}
}
}
Common entity identifier: ObjectB
This Object pattern describes an Activity with a due date.
Property [cardinality] | Description | Value information |
---|---|---|
object.objectType [1] | The value must be "Activity". | String, value must be "Activity". |
object.id [1] | An identifier for the Object of the xAPI Statement. This must be unique (within a given platform) across all Object types. | iri |
object.definition.type [1] | Indicates the type of the Object of the Statement. It is required and valid values are listed on the vocabulary page | iri |
object.definition.name [0..1] | Optional Object name | string |
object.definition.extensions.http://xapi.jisc.ac.uk/dueDate [0..1] | Indicates when an assignment is due | ISO 8601 date time |
"object":{
"objectType":"Activity",
"id":"http://moodle.data.alpha.jisc.ac.uk/course/view.php?id=4",
"definition":{
"type":"http://adlnet.gov/expapi/activities/assessment",
"name":{
"en":"Course Assignment"
},
"description":{
"en":"Course Assignment description"
}
},
"extensions":{
"http://xapi.jisc.ac.uk/dueDate": "2016-02-05T17:59:45.000Z"
}
}