id: https://w3id.org/xapi/video
type: Profile
conforms to: https://w3id.org/xapi/profiles#1.0
pref label:
  en: Video Profile
definition:
  en: The video profile of the xAPI was created to identify and standardize the common types of interactions that can be tracked in any video player.
see also: https://github.com/liveaspankaj/xapi-video-cop
versions:
  id: https://w3id.org/xapi/video/v/2
  was revision of: https://w3id.org/xapi/video/v1.0.2
  generated at time: 2023-03-23T21:39:08.401Z
versions:
  id: https://w3id.org/xapi/video/v1.0.2
  was revision of: https://w3id.org/xapi/video/v1.0.1
  generated at time: 2020-11-05T18:40:02.945Z
author:
  type: Organization
  name: Video
  url: https://github.com/adlnet/xapi-authored-profiles
concepts:
  id: https://w3id.org/xapi/video/verbs/paused
  type: Verb
  in scheme: https://w3id.org/xapi/video/v/2
  pref label:
    en: paused
  definition:
    en: Indicates the actor paused the video being played at a specific point.
  exact match: http://id.tincanapi.com/verb/paused
concepts:
  id: https://w3id.org/xapi/video/verbs/played
  type: Verb
  in scheme: https://w3id.org/xapi/video/v/2
  pref label:
    en: played
  definition:
    en: Indicates that the actor started experiencing the recorded media object.
  exact match: http://activitystrea.ms/schema/1.0/play
concepts:
  id: https://w3id.org/xapi/video/verbs/seeked
  type: Verb
  in scheme: https://w3id.org/xapi/video/v/2
  pref label:
    en: seeked
  definition:
    en: Indicates the actor changed the progress towards a specific point.
concepts:
  id: https://w3id.org/xapi/video/activity-type/video
  type: ActivityType
  in scheme: https://w3id.org/xapi/video/v/2
  pref label:
    en: video
  definition:
    en: A recording of both the visual and audible components made available on a display screen.
  exact match: http://activitystrea.ms/schema/1.0/video
concepts:
  id: https://w3id.org/xapi/video/extensions/completion-threshold
  type: ContextExtension
  in scheme: https://w3id.org/xapi/video/v/2
  pref label:
    en: completion-threshold
  definition:
    en: Used to specify the percentage of media that should be consumed to trigger a completion. Value MUST be between 0 and with maximum 3 decimals. If Completion Threshold is not included, it is assumed to be 1, i.e. 100%. If Completion Threshold is not 1, it MUST be included in Video Profile statements with these verbs: initialized, paused, completed, and terminated.
  inline schema: { "type": "number" }
concepts:
  id: https://w3id.org/xapi/video/extensions/cc-subtitle-enabled
  type: ContextExtension
  in scheme: https://w3id.org/xapi/video/v/2
  pref label:
    en: cc-subtitle-enabled
  definition:
    en: Used to expresses whether subtitle or closed captioning is enabled.
  inline schema: { "type": "boolean" }
concepts:
  id: https://w3id.org/xapi/video/extensions/cc-subtitle-lang
  type: ContextExtension
  in scheme: https://w3id.org/xapi/video/v/2
  pref label:
    en: cc-subtitle-lang
  definition:
    en: Used to express the language of subtitle or closed captioning. The lexical and value spaces of xsd:language are the set of language codes defined by RFC 5646. For example, 'en' for English or 'en-US' for American English.
  inline schema: { "type": "string" }
concepts:
  id: https://w3id.org/xapi/video/extensions/frame-rate
  type: ContextExtension
  in scheme: https://w3id.org/xapi/video/v/2
  pref label:
    en: frame-rate
  definition:
    en: Used to express the frame rate or frames per second of a video (or average rate of frames per second in the case of variable frame-rate).
  inline schema: { "type": "number" }
concepts:
  id: https://w3id.org/xapi/video/extensions/full-screen
  type: ContextExtension
  in scheme: https://w3id.org/xapi/video/v/2
  pref label:
    en: full-screen
  definition:
    en: Used to expresses that the video is played in full screen mode.
  inline schema: { "type": "boolean" }
concepts:
  id: https://w3id.org/xapi/video/extensions/length
  type: ContextExtension
  in scheme: https://w3id.org/xapi/video/v/2
  pref label:
    en: length
  definition:
    en: The actual length of the media in seconds. Value MUST be a float value with maximum 3 decimals.
  inline schema: { "type": "number" }
concepts:
  id: https://w3id.org/xapi/video/extensions/quality
  type: ContextExtension
  in scheme: https://w3id.org/xapi/video/v/2
  pref label:
    en: quality
  definition:
    en: Used to express the video resolution or quality. Integer Value (e.g., 360, 480, 720, 1080, etc.).
  inline schema: { "type": "number" }
concepts:
  id: https://w3id.org/xapi/video/extensions/session-id
  type: ContextExtension
  in scheme: https://w3id.org/xapi/video/v/2
  pref label:
    en: session-id
  definition:
    en: Used to provide the session identifier associated with the activity.
  inline schema: { "type": "string", "pattern": "^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-4[0-9a-fA-F]{3}-[8-9a-bA-B][0-9a-fA-F]{3}-[0-9a-fA-F]{12}" }
concepts:
  id: https://w3id.org/xapi/video/extensions/screen-size
  type: ContextExtension
  in scheme: https://w3id.org/xapi/video/v/2
  pref label:
    en: screen-size
  definition:
    en: Used to express the total available screen size for Video playback.
  inline schema: { "type": "string" }
concepts:
  id: https://w3id.org/xapi/video/extensions/speed
  type: ContextExtension
  in scheme: https://w3id.org/xapi/video/v/2
  pref label:
    en: speed
  definition:
    en: Used to express the play-back speed (e.g., 1x,2x,0,-1x,-2x).
  inline schema: { "type": "string" }
concepts:
  id: https://w3id.org/xapi/video/extensions/track
  type: ContextExtension
  in scheme: https://w3id.org/xapi/video/v/2
  pref label:
    en: track
  definition:
    en: Used to identify the name of the audio track in a media object.
  inline schema: { "type": "string" }
concepts:
  id: https://w3id.org/xapi/video/extensions/user-agent
  type: ContextExtension
  in scheme: https://w3id.org/xapi/video/v/2
  pref label:
    en: user-agent
  definition:
    en: Used to identify the User Agent string of the browser, if the video is launched in browser.
  inline schema: { "type": "string" }
concepts:
  id: https://w3id.org/xapi/video/extensions/volume
  type: ContextExtension
  in scheme: https://w3id.org/xapi/video/v/2
  pref label:
    en: volume
  definition:
    en: Used to identify the loudness of sound specified for a media object.
  inline schema: { "type": "number" }
concepts:
  id: https://w3id.org/xapi/video/extensions/video-playback-size
  type: ContextExtension
  in scheme: https://w3id.org/xapi/video/v/2
  pref label:
    en: video-playback-size
  definition:
    en: Used to identify the current video size in Width x Height as viewed by the user.
  inline schema: { "type": "string" }
concepts:
  id: https://w3id.org/xapi/video/extensions/played-segments
  type: ResultExtension
  in scheme: https://w3id.org/xapi/video/v/2
  pref label:
    en: played-segments
  definition:
    en: Played segments reveals potential heat map data for showing parts of the video the actor watched during current registration in chronological order (e.g., 0.000[.]12.000[,]14.000[.]21.000[,]18.000[.]30.000).
  inline schema: { "type": "string" }
concepts:
  id: https://w3id.org/xapi/video/extensions/progress
  type: ResultExtension
  in scheme: https://w3id.org/xapi/video/v/2
  pref label:
    en: progress
  definition:
    en: Used to expresses the percentage of media consumed by the actor.
  inline schema: { "type": "number" }
concepts:
  id: https://w3id.org/xapi/video/extensions/time
  type: ResultExtension
  in scheme: https://w3id.org/xapi/video/v/2
  inline schema: { "type": "number" }

en: time

en: Used to express the time into the video. (e.g., “00000.000” in seconds and milliseconds).

id: https://w3id.org/xapi/video/extensions/time-from
type: ResultExtension
in scheme: https://w3id.org/xapi/video/v/2
pref label:
  en: time-from
definition:
  en: Used to identify the point in time the actor changed from in a media object (eg: “200.000” in seconds and milliseconds).
inline schema: { "type": "number" }

id: https://w3id.org/xapi/video/extensions/time-to
type: ResultExtension
in scheme: https://w3id.org/xapi/video/v/2
pref label:
  en: time-to
definition:
  en: Used to identify the point in time the actor changed to in a media object (eg: “300.000” in seconds and milliseconds).
inline schema: { "type": "number" }

id: https://w3id.org/xapi/video/templates#played
type: StatementTemplate
in scheme: https://w3id.org/xapi/video/v/2
pref label:
  en: Played
definition:
  en: The statement template and rules associated with a video being played.
verb: https://w3id.org/xapi/video/verbs/played
object activity type: https://w3id.org/xapi/video/activity-type/video
rules:
  location: $.id
  presence: included
rules:
  location: $.timestamp
  presence: included
rules:
  location: $.result.extensions['https://w3id.org/xapi/video/extensions/time']
  presence: included
rules:
  location: $.result.extensions['https://w3id.org/xapi/video/extensions/played-segments']
  presence: recommended
rules:
  location: $.context.extensions['https://w3id.org/xapi/video/extensions/session-id']
  presence: recommended

id: https://w3id.org/xapi/video/templates#paused
type: StatementTemplate
in scheme: https://w3id.org/xapi/video/v/2
pref label:
  en: Paused
definition:
  en: The statement template and rules associated with a video being paused.
verb: https://w3id.org/xapi/video/verbs/paused
object activity type: https://w3id.org/xapi/video/activity-type/video
rules:
  location: $.id
  presence: included
rules:
  location: $.timestamp
  presence: included
rules:
  location: $.context.extensions['https://w3id.org/xapi/video/extensions/length']
  presence: included
rules:
  location: $.result.extensions['https://w3id.org/xapi/video/extensions/time']
  presence: included
rules:
  location: $.context.extensions['https://w3id.org/xapi/video/extensions/completion-threshold']
  presence: recommended
rules:
  location: $.result.extensions['https://w3id.org/xapi/video/extensions/played-segments']
  presence: recommended
rules:
  location: $.result.extensions['https://w3id.org/xapi/video/extensions/progress']
  presence: recommended
rules:
  location: $.context.extensions['https://w3id.org/xapi/video/extensions/session-id']
  presence: recommended

id: https://w3id.org/xapi/video/templates#seeked
type: StatementTemplate
in scheme: https://w3id.org/xapi/video/v/2
pref label:
  en: Seeked
definition:
  en: The statement template and rules associated with a video seekbar being moved from and to a specific position in the video.
verb: https://w3id.org/xapi/video/verbs/seeked
object activity type: https://w3id.org/xapi/video/activity-type/video
rules:
  location: $.id
  presence: included
rules:
  location: $.timestamp
  presence: included
rules:
  location: $.result.extensions['https://w3id.org/xapi/video/extensions/time-to']
  presence: included
rules:
  location: $.result.extensions['https://w3id.org/xapi/video/extensions/time-from']
  presence: included
rules:
  location: $.context.extensions['https://w3id.org/xapi/video/extensions/session-id']
  presence: recommended

id: https://w3id.org/xapi/video/templates#completed
type: StatementTemplate
in scheme: https://w3id.org/xapi/video/v/2
pref label:
  en: Completed
definition:
  en: The statement template and rules associated with a video being completed.
verb: http://adlnet.gov/expapi/verbs/completed
object activity type: https://w3id.org/xapi/video/activity-type/video
rules:
  location: $.id
  presence: included
rules:
  location: $.timestamp
  presence: included
rules:
  location: $.context.extensions['https://w3id.org/xapi/video/extensions/length']
  presence: included
rules:
  location: $.result.extensions['https://w3id.org/xapi/video/extensions/time']
  presence: included
rules:
  location: $.result.extensions['https://w3id.org/xapi/video/extensions/progress']
  presence: included
rules:
  location: $.context.extensions['https://w3id.org/xapi/video/extensions/completion-threshold']
  presence: recommended
rules:
  location: $.result.extensions['https://w3id.org/xapi/video/extensions/played-segments']
  presence: recommended
rules:
  location: $.context.extensions['https://w3id.org/xapi/video/extensions/session-id']
  presence: recommended

id: https://w3id.org/xapi/video/templates#terminated
type: StatementTemplate
in scheme: https://w3id.org/xapi/video/v/2
pref label:
  en: Terminated
definition:
  en: The statement template and rules associated with a terminating the player.
verb: http://adlnet.gov/expapi/verbs/terminated
object activity type: https://w3id.org/xapi/video/activity-type/video
rules:
  location: $.id
  presence: included
rules:
  location: $.timestamp
  presence: included
rules:
  location: $.context.extensions['https://w3id.org/xapi/video/extensions/length']
  presence: included
rules:
  location: $.result.extensions['https://w3id.org/xapi/video/extensions/time']
  presence: included
rules:
  location: $.result.extensions['https://w3id.org/xapi/video/extensions/progress']
  presence: included
rules:
  location: $.context.extensions['https://w3id.org/xapi/video/extensions/completion-threshold']
  presence: recommended
rules:
  location: $.result.extensions['https://w3id.org/xapi/video/extensions/played-segments']
  presence: recommended
rules:
  location: $.context.extensions['https://w3id.org/xapi/video/extensions/session-id']
  presence: recommended

id: https://w3id.org/xapi/video/templates#closed-captioning
type: StatementTemplate
in scheme: https://w3id.org/xapi/video/v/2
pref label:
  en: Enable Closed Captioning
definition:
  en: Volume Change Interaction
verb: http://adlnet.gov/expapi/verbs/interacted
object activity type: https://w3id.org/xapi/video/activity-type/video
rules:
  location: $.id
  presence: included
rules:
  location: $.timestamp
  presence: included
rules:
  location: $.result.extensions['https://w3id.org/xapi/video/extensions/time']
  presence: included
rules:
  location: $.result.extensions['https://w3id.org/xapi/video/extensions/cc-enabled']
  presence: included
rules:
  location: $.context.extensions['https://w3id.org/xapi/video/extensions/cc-subtitle-lang']
  presence: included
rules:
  location: $.context.extensions['https://w3id.org/xapi/video/extensions/session-id']
  presence: recommended

id: https://w3id.org/xapi/video/templates#volumechange
type: StatementTemplate
in scheme: https://w3id.org/xapi/video/v/2
pref label:
  en: Volume Change Interaction
definition:
  en: Volume Change Interaction
verb: http://adlnet.gov/expapi/verbs/interacted
object activity type: https://w3id.org/xapi/video/activity-type/video
rules:
  location: $.id
  presence: included
rules:
  location: $.timestamp
  presence: included
rules:
  location: $.result.extensions['https://w3id.org/xapi/video/extensions/time']
  presence: included
rules:
  location: $.context.extensions['https://w3id.org/xapi/video/extensions/volume']
  presence: included
rules:
  location: $.context.extensions['https://w3id.org/xapi/video/extensions/session-id']
  presence: recommended

id: https://w3id.org/xapi/video/templates#screenchange
type: StatementTemplate
in scheme: https://w3id.org/xapi/video/v/2
pref label:
  en: Screen Change Interaction
definition:
  en: Screen Change Interaction
verb: http://adlnet.gov/expapi/verbs/interacted
object activity type: https://w3id.org/xapi/video/activity-type/video
rules:
  location: $.id
  presence: included
rules:
  location: $.timestamp
  presence: included
rules:
  location: $.result.extensions['https://w3id.org/xapi/video/extensions/time']
  presence: included
rules:
  location: $.context.extensions['https://w3id.org/xapi/video/extensions/full-screen']
  presence: included
rules:
  location: $.context.extensions['https://w3id.org/xapi/video/extensions/screen-size']
  presence: included
rules:
  location: $.context.extensions['https://w3id.org/xapi/video/extensions/video-playback-size']
  presence: included
rules:
  location: $.context.extensions['https://w3id.org/xapi/video/extensions/session-id']
  presence: recommended

id: https://w3id.org/xapi/video/templates#initialized-video
type: StatementTemplate
in scheme: https://w3id.org/xapi/video/v/2
pref label:
  en: Initialized
definition:
  en: The statement template and rules associated with a video being initialized.
verb: http://adlnet.gov/expapi/verbs/initialized
object activity type: https://w3id.org/xapi/video/activity-type/video
rules:
  location: $.id
  presence: included
rules:
  location: $.timestamp
  presence: included
rules:
  location: $.context.extensions['https://w3id.org/xapi/video/extensions/length']
  presence: included
rules:
  location: $.context.extensions['https://w3id.org/xapi/video/extensions/completion-threshold']
  presence: recommended
rules:
  location: $.context.extensions['https://w3id.org/xapi/video/extensions/volume']
  presence: recommended
rules:
  location: $.context.extensions['https://w3id.org/xapi/video/extensions/video-playback-size']
  presence: recommended
rules:
  location: $.context.extensions['https://w3id.org/xapi/video/extensions/user-agent']
  presence: recommended
rules:
  location: $.context.extensions['https://w3id.org/xapi/video/extensions/cc-enabled']
  presence: recommended
rules:
  location: $.context.extensions['https://w3id.org/xapi/video/extensions/cc-subtitle-lang']
  presence: recommended
rules:
  location: $.context.extensions['https://w3id.org/xapi/video/extensions/screen-size']
  presence: recommended
rules:
  location: $.context.extensions['https://w3id.org/xapi/video/extensions/screen-size']
  presence: recommended
rules:
  location: $.context.extensions['https://w3id.org/xapi/video/extensions/full-screen']
  presence: recommended
rules:
  location: $.context.extensions['https://w3id.org/xapi/video/extensions/session-id']
  presence: recommended

id: https://w3id.org/xapi/video/patterns#generalpattern
type: Pattern
primary: true
in scheme: https://w3id.org/xapi/video/v/2
pref label:
  en: General Pattern
definition:
  en: The general pattern and sequence of Statement templates using the Video Profile.
sequence: https://w3id.org/xapi/video/templates#initialized
sequence: https://w3id.org/xapi/video/patterns#optionalmiddlestatements
sequence: https://w3id.org/xapi/video/templates#terminated

id: https://w3id.org/xapi/video/patterns#all-activities-pattern
type: Pattern
in scheme: https://w3id.org/xapi/video/v/2
pref label:
  en: All Activities Pattern
definition:
  en: All of the Video Profile statement templates.
alternates: https://w3id.org/xapi/video/templates#played
alternates: https://w3id.org/xapi/video/templates#paused
alternates: https://w3id.org/xapi/video/templates#seeked
alternates: https://w3id.org/xapi/video/templates#volumechange
alternates: https://w3id.org/xapi/video/templates#screenchange
alternates: https://w3id.org/xapi/video/templates#closed-captioning
alternates: https://w3id.org/xapi/video/templates#completed

id: https://w3id.org/xapi/video/patterns#optionalmiddlestatements
type: Pattern
in scheme: https://w3id.org/xapi/video/v/2
pref label:
  en: Optional Middle Statements
definition:
  en: A combined pattern of zero or more Video Profile standard statement templates that can be used with the general pattern.
zero or more: https://w3id.org/xapi/video/patterns#all-activities-pattern