adlnet / xapi-profiles

A set of documents addressing the structure of and supporting services for xAPI Profiles.

Home Page:https://adlnet.gov/projects/xapi/

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Proposed new text for LRP extension requirements

garemoko opened this issue · comments

Current text:

Learning Record Providers MUST, for xAPI Statements using Extensions defined here, follow the following rules:

  • a ContextExtension MUST only be used in context
  • a ResultExtension MUST only be used in result
  • an ActivityExtension MUST only be used in an Activity Definition.

Proposed text:

Learning Record Provider Requirements

  • Extensions conforming to a profile MUST be used within the part of xAPI statements they are intended for use within:
    • Extensions defined with @type ContextExtension MUST only be used in context
    • Extensions defined with @type ResultExtension MUST only be used in result
    • Extensions defined with @type ActivityExtension MUST only be used in an Activity Definition

Markdown:

#### Learning Record Provider Requirements

* Extensions conforming to a profile MUST be used within the part of xAPI statements they are intended for use within:
      * Extensions defined with @type `ContextExtension` MUST only be used in context
      * Extensions defined with @type `ResultExtension` MUST only be used in result
      * Extensions defined with @type `ActivityExtension` MUST only be used  in an Activity Definition

This phrasing is extremely awkward:

Extensions conforming to a profile MUST be used within the part of xAPI statements they are intended for use within

I also think using "a Type" is much easier to read (and is a broad standard for how to talk about things in the JSON-LD and RDF worlds) than "defined with @type Type".

What about:

Learning Record Providers MUST only use:

  • a ContextExtension in a Statement's context
  • a ResultExtension in a Statement's result
  • an ActivityExtension in an Activity Definition in a Statement

This actually ended up being somewhat different in-text due to some other changes, go ahead and take a look there to see if that works for you