Grid question

Schema

Examples

Basic

{
  "id": "1",
  "type": "application/x.grid+json",
  "content": "Question ?",
  "penalty": 0,
  "cells": [
    {
      "id": "1",
      "input": true,
      "data": "Item A",
      "coordinates": [0, 0],
      "background":  "#fff",
      "color": "#000"
    },
    {
      "id": "2",
      "input": true,
      "coordinates": [1, 0],
      "background":  "#fff",
      "color": "#000",
      "choices": ["lorem", "ipsum", "et", "doloris"]
    },
    {
      "id": "3",
      "input": false,
      "coordinates": [2, 0],
      "background":  "#fff",
      "color": "#000"
    }
  ],
  "rows": 1,
  "cols": 3,
  "border": {
    "width": 1,
    "color": "#00ff00"
  }
}

Extended

{
  "id": "1",
  "type": "application/x.grid+json",
  "content": "Question ?",
  "penalty": 0,
  "meta": {
    "authors": [
      {
        "name": "John Doe",
        "status": "Tutor"
      }
    ],
    "license": "CC",
    "created": "2014-06-23"
  },
  "objects": [
    {
      "id": "1",
      "type": "text/html",
      "data": "<p>Lorem ipsum dolor sit amet</p>",
      "meta": {
        "title": "Lorem sample"
      }
    }
  ],
  "resources": [
    {
      "id": "2",
      "type": "application/pdf",
      "url": "http://domain.com/syllabus.txt"
    }
  ],
  "hints": [
    {
      "id": "3",
      "value": "Lorem",
      "penalty": 1
    },
    {
      "id": "5",
      "value": "Ipsum",
      "penalty": 1.5
    }
  ],
  "cells": [
    {
      "id": "1",
      "input": false,
      "data": "Item A",
      "coordinates": [0, 0],
      "background":  "#fff",
      "color": "#000"
    },
    {
      "id": "2",
      "input": true,
      "coordinates": [1, 0],
      "background":  "#fff",
      "color": "#000",
      "choices": ["lorem", "ipsum", "dolor"]
    },
    {
      "id": "3",
      "input": true,
      "coordinates": [2, 0],
      "background":  "#fff",
      "color": "#000"
    }
  ],
  "rows": 1,
  "cols": 3,
  "border": {
    "width": 1,
    "color": "#00ff00"
  },
  "solutions": [
    {
      "cellId": "2",
      "answers": [
        {
          "text": "lorem",
          "caseSensitive": true,
          "score": 2
        },
        {
          "text": "ipsum",
          "caseSensitive": true,
          "score": 2
        },
        {
          "text": "dolor",
          "caseSensitive": false,
          "score": -2
        }
      ]
    },
    {
      "cellId": "3",
      "answers": [
        {
          "text": "consectetur",
          "score": 2,
          "caseSensitive": true,
          "feedback": "fugiat nulla pariatur."
        }
      ]
    }
  ]
}

Solutions

{
  "id": "1",
  "type": "application/x.grid+json",
  "content": "Question ?",
  "penalty": 0,
  "sumMode": "row",
  "cells": [
    {
      "id": "1",
      "input": false,
      "data": "Item A",
      "coordinates": [0, 0],
      "background":  "#fff",
      "color": "#000"
    },
    {
      "id": "2",
      "input": true,
      "coordinates": [1, 0],
      "background":  "#fff",
      "color": "#000",
      "choices": ["lorem", "ipsum", "dolor"]
    },
    {
      "id": "3",
      "input": true,
      "coordinates": [2, 0],
      "background":  "#fff",
      "color": "#000"
    }
  ],
  "rows": 1,
  "cols": 3,
  "border": {
    "width": 1,
    "color": "#00ff00"
  },
  "solutions": [
    {
      "cellId": "2",
      "answers": [
        {
          "text": "lorem",
          "caseSensitive": true,
          "score": 2
        },
        {
          "text": "ipsum",
          "caseSensitive": true,
          "score": 2
        },
        {
          "text": "dolor",
          "caseSensitive": true,
          "score": -2
        }
      ]
    },
    {
      "cellId": "3",
      "answers": [
        {
          "text": "consectetur",
          "caseSensitive": false,
          "score": 2
        }
      ]
    }
  ]
}

Feedback

{
  "id": "1",
  "type": "application/x.grid+json",
  "content": "Question ?",
  "penalty": 0,
  "cells": [
    {
      "id": "1",
      "input": true,
      "data": "Item A",
      "coordinates": [0, 0],
      "background":  "#fff",
      "color": "#000"
    },
    {
      "id": "2",
      "input": true,
      "coordinates": [1, 0],
      "background":  "#fff",
      "color": "#000",
      "choices": ["lorem", "ipsum", "dolor"]
    },
    {
      "id": "3",
      "input": false,
      "coordinates": [2, 0],
      "background":  "#fff",
      "color": "#000"
    }
  ],
  "rows": 1,
  "cols": 3,
  "border": {
    "width": 1,
    "color": "#00ff00"
  },
  "solutions": [
    {
      "cellId": "2",
      "answers": [
        {
          "text": "lorem",
          "caseSensitive": true,
          "score": 2
        },
        {
          "text": "ipsum",
          "caseSensitive": true,
          "score": 2
        },
        {
          "text": "dolor",
          "caseSensitive": false,
          "score": -2
        }
      ]
    },
    {
      "cellId": "3",
      "answers": [
        {
          "text": "consectetur",
          "score": 2,
          "caseSensitive": true,
          "feedback": "fugiat nulla pariatur."
        }
      ]
    }
  ]
}