study_problem_keywords
+ spk_id : serial primary key
# spk_keyword : int
# spk_study_problem : int
topic_list
+ tl_id : serial primary key
# tl_base : int
~ tl_is_tlt : bool
~ tl_version : int
~ tl_updated : datetime
+ topic_create()
+ topic_delete()
+ topic_create_version()
person_list
+ pl_id : serial primary key
# pl_preferred_language : int
~ pl_first_name : varchar(20)
~ pl_last_name : varchar(20)
~ pl_street_address : varchar(40)
~ pl_city : varchar(20)
~ pl_state : varchar(20)
~ pl_zip : varchar(10)
~ pl_country : int
~ pl_email : varchar(40)
~ pl_phone : varchar(20)
~ pl_login : varchar(20)
~ pl_password : varchar(20)
+ person_create()
+ person_delete()
+ person_modify()
+ person_grant()
+ person_revoke()
topic_explanations
+ te_id : serial primary key
# tb_base : int
# te_topic : int
~ te_version : int
~ te_updated : datetime
+ explanation_create()
+ explanation_delete()
+ explanation_modify()
+ explanation_create_version()
study_problems
+ sp_id : serial primary key
# sp_base : int
# sp_topic : int
~ sp_version : int
~ sp_updated : datetime
# sp_solution_type : int
+ study_problem_create()
+ study_problem_modify()
+ study_problem_delete()
+ study_problem_create_version()
problem_solutions
~ ps_id : serial primary key
# ps_problem : int
# ps_submitted_by : int
~ ps_solution_text : text
~ ps_grade : int
+ problem_solution_create()
+ problem_solution_modify()
+ problem_solution_sign()
+ problem_solution_delete()
solution_types
+ st_id : serial primary key
~ st_name : varchar(40)
dialog_of_texts
+ dot_id : serial primary key
# dot_base : int
~ dot_version : int
~ dot_updated : datetime
+ dialog_create()
+ dialog_delete()
+ dialog_create_version()
text_keywords
+ tk_id : serial primary key
# tk_keyword : int
# tk_text : int
keywords_list
+ kl_id : serial primary key
~ kl_keyword : varchar(40)
+ keyword_create()
+ keyword_delete()
topic_keywords
tk_id : serial primary key
tk_keyword : int
tk_topic : int
text_in_dialog
+ tid_id : serial primary key
# tid_base : int
~ tid_version : int
~ tid_updated : datetime
+ text_create()
+ text_delete()
+ text_create_version()
course_server
+ cs_id : serial primary key
~ cs_name : varchar(80)
~ cs_version : int
+ course_server_create()
+ course_server_delete()
topic_list_acl
+ tla_id : serial primary key
# tla_person : int
# tla_topic : int
~ tla_access : int
+ topic_grant()
+ topic_revoke()
problem_solution_acl
+ psa_id : serial primary key
# psa_person : int
# psa_solution : int
~ psa_access : int
+ solution_grant()
+ solution_revoke()
person_problem_acl
+ ppa_id : serial primary key
# ppa_person : int
# ppa_problem : int
~ ppa_access : int
+ problem_grant()
+ problem_revoke()
topic_explanation_acl
+ tea_id : serial primary key
# tea_person : int
# tea_explanation : int
~ tea_access : int
+ explanation_grant()
+ explanation_revoke()
dialog_of_text_acl
+ dta_id : serial primary key
# dta_person : int
# dta_dialog : int
~ dta_access : int
+ dialog_grant()
+ dialog_revoke()
texts_in_dialog_acl
+ tda_id : serial primary key
# tda_person : int
# tda_text_object : int
~ tda_access : int
+ text_grant()
+ text_revoke()
topic_to_dialog
+ ttd_id : serial primary key
# ttd_course : int
# ttd_dialog : int
~ ttd_difficulty : int
dialog_to_text
+ dtt_id : serial primary key
# dtt_dialog : int
# dtt_text : int
~ dtt_difficuty : int
server_to_tlt
+ stc_id : serial primary key
# stc_server : int
# stc_course : int
topic_to_problem
+ ttp_id : serial primary key
# ttp_topic : int
# ttp_problem : int
~ ttp_difficulty : int
Legend:
Yellow background - primary objects
Green background - objects relations tables
Pink background - ACL tables
Blue background - system dictionaries
Teal background - root version objects
course_server_type
+ cst_id : serial primary key
~ cst_name : varchar(80)
~ cst_isopen : bool
text_text_reference
+ ttr_id : serial primary key
# ttr_source_text : int
# ttr_reference_text : int
~ ttr_relation_type : int
texts_relation_type
+ trt_id : serial primary key
~ trt_name : int
topic_group
+ tg_id : serial primary key
# tg_parent_topic : int
# tg_child_topic : int
difficulty_level
+ dl_id : serial primary key
~ dl_name : int
~ dl_level : int
topic_to_explanation
+ tte_id : serial primary key
# tte_topic : int
# tte_explanation : int
~ tte_sequence_number : int
~ tte_difficulty : int
topic_explanation_base
+ teb_id : serial primary key
# teb_based_on : int
# teb_proto_version : int
# teb_primary_language : int
topic_base
+ tb_id : serial primary key
# tb_based_on : int
# tb_proto_version : int
dialog_base
+ db_id : serial primary key
# db_based_on : int
# db_proto_version : int
text_base
+ tb_id : serial primary key
# tb_based_on : int
# tb_proto_version : int
# tb_primary_language : int
study_problem_base
+ spb_id : serial primary key
+ spb_based_on : int
# spb_proto_version : int
language_list
+ ll_id : serial primary key
~ ll_name : varchar(40)
+ language_create()
+ language_modify()
+ language_delete()
text_in_dialog_content
+ tdc_id : serial primary key
# tdc_text_object : int
# tdc_language : int
~ tdc_title : varchar(80)
~ tdc_description : text
+ text_content_create()
+ text_content_modify()
+ text_content_delete()
topic_explanation_content
+ tec_id : serial primary key
# tec_topic_explanation : int
# tec_language : int
~ tec_title : varchar(80)
~ tec_description : text
+ explanation_content_create()
+ explanation_content_modify()
+ explanation_content_delete()
study_problems_content
+ spc_id : serial primary key
# spc_study_problem : int
# spc_language : int
~ spc_title : varchar(80)
~ spc_description : text
~ spc_solution_template : text
+ study_problem_content_create()
+ study_problem_content_modify()
+ study_problem_content_delete()
topic_list_content
+ tlc_id : serial primary key
# tlc_topic : int
# tl_language : int
~ tlc_title : varchar(80)
~ tlc_description : text
+ topic_content_create()
+ topic_content_modify()
+ topic_content_delete()
dialog_of_text_content
+ dtc_id : serial primary key
# dtc_dialog : int
# dtc_language : int
~ dtc_title : varchar(80)
~ dtc_description : text
+ dialog_content_create()
+ dialog_content_modify()
+ dialog_content_delete()
notification_list
+ nl_id : serial primary key
# nl_person : int
# nl_object_type : int
~ nl_object_id : int
# nl_event_types : int
+ notification_create()
+ notification_modify()
+ notification_delete()
event_type
+ et_id : serial primary key
~ et_value : int
~ et_name : varchar(40)
user_object_type
+ uot_id : serial primary key
~ uot_name : varchar(40)
solution_signature
+ ss_id : serial primary key
# ss_person : int
# ss_solution : int
# ss_date : datetime
+ solution_signature_create()
+ solution_signature_delete()
topic_explanation_keywords
+ tek_id : serial primary key
# tek_keyword : int
# tek_explanation : int