adlnet/xAPI-Spec

Clarification needed on a voided statement requirement

Closed this issue · 1 comments

Under the voided statement requirements there's a requirement as follows:

Upon receiving a Statement that voids another, the LRS SHOULD NOT* reject the request on the grounds of the Object of that voiding Statement not being present.

I could see this interpreted as 2 ways:

  • A statement with a http://adlnet.gov/expapi/verbs/voided verb should not be rejected on the basis that it does not have an Object property.
  • A statement with a http://adlnet.gov/expapi/verbs/voided verb should not be rejected on the basis that the statement it refers to in the id property of its Object does not exist.

The 2nd interpretation seems more logical to me (the first just seeming like a malformed statement), but I just wanted some clarification.

The 2nd is the intended meaning. I can see how it could be read in the first way if read in isolation from the rest of the specification though.

I like your wording "that the statement it refers to in the id property of its Object does not exist." too. We should update this in the next (patch or otherwise) version.