Skip to content

Understanding User Submissions

mlent edited this page Oct 1, 2014 · 9 revisions

A typical submission to the Phaidra API contains the following information:

{
   "response": "num=pl&person=3rd",
   "task": "identify_without_context_morph_number_person",
   "slideType": "slide_direct_select",

   "accuracy": 100,
   "starttime": "2014-09-22T16:44:46.351Z",
   "encounteredWords": ["urn:cts:greekLit:tlg0003.tlg001.perseus-grc1:1.090.4:13"],
   "smyth": "s537",

   "timestamp": "2014-09-22T16:44:50.954Z",
   "user": "molly",
   "event_id": 8345
}

Explanation of the fields

Specific details about what the user was presented with.

  • response : Serialized version of their exact response to the question.
  • task : Describes the task that the user is performing.

Representing knowledge.

  • accuracy : Used to determine how strong a user is overall in this skill (as defined by the smyth category).
  • starttime : Time the user loaded the exercise.
  • encounteredWords : The CTS or CITE identifier which indicates which words they have seen. This is used to visualize how much of the text a user has interacted with, both directly and indirectly.
  • smyth : Reference to the smyth section that deals with this particular grammatical topic. This is used so that a user can get hints while working on an exercise, and so we can measure how well they know different grammar topics.
  • slideType : So we know in which format the user was presented with this question.
  • timestamp : Measure progress over time, know which topics users take the longest to learn, which they need to refresh, etc.

Misc

  • user : Connection to the user who submitted this in the first place.
  • event_id : In the case of multi-part submissions (see below for details), this number helps tie together these events.

Multi-Part Submissions

Some tasks that users perform require more data than others to record exactly how the user performed in the task. Our prime example is treebanking, though this could also apply to alignment exercises.

Tasks

The various kinds of "tasks" that users can perform in the eLearning environment are described below.

These are used to generate exercises by the front end. Each task

  • identify_morph:* - [* = person, number, tense, voice, mood, gender, case ] - Asks the user to identify one component of the morphology of a word.

  • provide_article_agreement:* [* = word in greek] Asks user to provide the article which agrees with a given noun.

  • provide_vocab_in_context:* [* = word in greek]- Asks user to type the Greek word as it belongs in the sentence.

Developer Guide

Backend

Frontend

Content Guide

What did you break?

  • Postgres Database
  • Neo4j
  • Django
  • "The server"
  • Git
  • UI
Clone this wiki locally