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.
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.
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.
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.
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