Skip to content

Transition to xAPI 2.0 #537

@bmtcril

Description

@bmtcril

The xAPI specification is now owned by the IEEE and undergoing an overhaul to make the spec more rigid explicit. The expected benefits are:

  • LRSs should be able to provide a profile of what events it will accept
  • Providers can expose profiles that the LRS can reference to add their events and custom objects to the LRS profile
  • Ability to cryptographically sign statements to validate the sender's authenticity
  • In testing, production, and consumption it should be possible to validate that statements against the given profile, ensuring not only proper formatting but also consistency in the use of different pieces of statements

We will eventually want to transition event-routing-backends to the new standard, and should consider a major refactor as part of that work. Some things we may wish to pursue as part of that work:

  1. Move away from TinCan
  2. Automate xAPI profile creation for Open edX and documentation for how to extend with custom profiles
  3. Profile creation / extension / validation / serving for Ralph
  4. Adopting a more rigid system for statement generation. Perhaps something like Ralph's Pydantic statement generation along with something like pydantic-jsonld to enable profile generation and templating of statements directly in our statement generation code
  5. Moving testing away from static files to schema / profile validation
  6. Ensure backward compatibility with at least our own 1.x statements

References:

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    Status

    No status

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions