Assessment DB Schema

UCI uses postgreSQL for storing data of conversations. ODK transformer uses this database to store its assessment data for each question & answer.

Schema

Assessment data consists of 4 tables, which are listed below.

Question

This table keeps the details of question asked to user.

FieldTypeDescription

id

uuid

form_id

varchar(100)

odk form id

form_version

varchar(10)

odk form version

x_path

varchar(500)

odk question xpath

question_type

varchar(500)

meta

jsonb

extra meta data in form of json

created

timestamp

updated

timestamp

Assessment

This table keeps the details of answer submitted by user for a specific question.

FieldTypeDescription

id

uuid

question

uuid

id of table question

answer

text

answer given by user for question

bot_id

uuid

bot id

user_id

uuid

fusion auth returned user id

device_id

uuid

fusion auth returned user id

meta

jsondb

extra meta data in form of json

created

timestamp

updated

timestamp

Xmessage

This table keeps the records of messages sent to user against his/her phone number.

FieldTypeDescription

id

bigint

phone_no

varchar(15)

phone number of user

updated_at

timestamp

message

varchar(1000)

message sent to user

is_last_message

boolean

XMessage State

This table keeps the odk instance xml state against the user phone number and form name.

FieldTypeDescription

id

bigint

phone_no

varchar(15)

phone number of user

state

text

current xml state of form

previous_path

varchar(100)

previous question xpath

bot_form_name

varchar(50)

odk form name

updated_at

timestamp

Last updated