Difference between revisions of "Math4Team/RIT/Projects/Question Support API/Data Model"
< Math4Team | RIT | Projects | Question Support API
Jump to navigation
Jump to search
(highlight recursive entities) |
|||
(2 intermediate revisions by the same user not shown) | |||
Line 1: | Line 1: | ||
− | |||
===Data Model=== | ===Data Model=== | ||
− | + | Here is a potential data model: (It was built for a corporate medical department's medical records. I've already renamed Clinic and Provider to School and Teacher.) | |
− | [[Image:QuestionERDiagram.PNG|left]] | + | |
− | + | [[Image:QuestionERDiagram.PNG|left]]<br clear="all"> | |
− | |||
====Table Dictionary==== | ====Table Dictionary==== | ||
{{Definition_table | {{Definition_table | ||
− | |Questionnaire |A collection of questions that might be used in a Survey, Quiz, Exam, etc. | + | |Questionnaire |A collection of questions that might be used in a Survey, Quiz, Exam, etc., or when its key appears in the Category field, a group, class, or category of Questionnaires (a recursive entity) |
|Question | A problem seeking an answer | |Question | A problem seeking an answer | ||
|Answer | A potential solution to the problem | |Answer | A potential solution to the problem | ||
|AnswerType | The class of answer suitable for the problem or question | |AnswerType | The class of answer suitable for the problem or question | ||
− | |Survey | An event instance | + | |Survey | An event in time instance, at which Answers to Questions or problems are gathered. Survey events can reference other surveys, such as follow-up Surveys (a recursive entity). |
− | |Response | An event instance | + | |Response | An event in time instance, at which the Student provides an answer to a question on a Survey or Quiz, etc. |
|School | An organization | |School | An organization | ||
|Person | An individual, such as a Teacher, Student, etc. | |Person | An individual, such as a Teacher, Student, etc. | ||
}} | }} | ||
====Questionnaire==== | ====Questionnaire==== | ||
+ | : '''''A collection of questions that might be used in a Survey, Quiz, Exam, etc.''''', | ||
+ | :: or when its key appears in the Category field making a recursive entity, | ||
+ | : '''''a group, class, or category of Questionnaires''''' | ||
{{Definition_table | {{Definition_table | ||
|ID | primary key | |ID | primary key | ||
|Title | Short name for questionnaire | |Title | Short name for questionnaire | ||
− | |Category | | + | |Category | Category ID, the ID of a Questionnaire group, class, or category of Questionnaire (the parent of a recursive relationship with other Questionnaire records) |
|Notes | Description, Image link, rich format data | |Notes | Description, Image link, rich format data | ||
|StartDate | Effective date for this instance of the Questionnaire | |StartDate | Effective date for this instance of the Questionnaire | ||
Line 27: | Line 28: | ||
====Question==== | ====Question==== | ||
+ | : '''''A problem seeking an answer''''' | ||
{{Definition_table | {{Definition_table | ||
|ID | primary key | |ID | primary key | ||
Line 39: | Line 41: | ||
}} | }} | ||
====Answer==== | ====Answer==== | ||
+ | : '''''A potential solution to the problem''''' | ||
{{Definition_table | {{Definition_table | ||
|ID | primary key | |ID | primary key | ||
Line 49: | Line 52: | ||
}} | }} | ||
====AnswerType==== | ====AnswerType==== | ||
+ | : '''''The class of answer suitable for the problem or question''''' | ||
{{Definition_table | {{Definition_table | ||
|ID | primary key | |ID | primary key | ||
Line 55: | Line 59: | ||
}} | }} | ||
====Survey==== | ====Survey==== | ||
+ | : '''''An event in time instance, at which Answers to Questions or problems are gathered. Survey events can reference other surveys, such as follow-up Surveys''''' (a recursive entity). | ||
{{Definition_table | {{Definition_table | ||
|ID | primary key | |ID | primary key | ||
Line 67: | Line 72: | ||
}} | }} | ||
====Response==== | ====Response==== | ||
+ | : '''''An event in time instance, at which the Student provides an answer to a question on a Survey or Quiz, etc.''''' | ||
{{Definition_table | {{Definition_table | ||
|ID | primary key | |ID | primary key | ||
Line 81: | Line 87: | ||
====School==== | ====School==== | ||
+ | : '''''An organization''''' | ||
{{Definition_table | {{Definition_table | ||
|ID | primary key | |ID | primary key | ||
Line 86: | Line 93: | ||
}} | }} | ||
====Person==== | ====Person==== | ||
+ | : '''''An individual, such as a Teacher, Student, etc.''''' | ||
{{Definition_table | {{Definition_table | ||
|ID | primary key | |ID | primary key | ||
Line 91: | Line 99: | ||
|First Name | Primary name for Person | |First Name | Primary name for Person | ||
}} | }} | ||
+ | |||
+ | == Comments == | ||
+ | Authorship and history attributes for Questions could be provided through a new Person ID field in Questionnaire and recursive links. | ||
+ | :: For reference, here is the Moodle [http://docs.moodle.org/en/Development:Question_database_structure Question database structure]. |
Latest revision as of 21:40, 7 June 2012
Data Model
Here is a potential data model: (It was built for a corporate medical department's medical records. I've already renamed Clinic and Provider to School and Teacher.)
Table Dictionary
Questionnaire | A collection of questions that might be used in a Survey, Quiz, Exam, etc., or when its key appears in the Category field, a group, class, or category of Questionnaires (a recursive entity) | |
Question | A problem seeking an answer | |
Answer | A potential solution to the problem | |
AnswerType | The class of answer suitable for the problem or question | |
Survey | An event in time instance, at which Answers to Questions or problems are gathered. Survey events can reference other surveys, such as follow-up Surveys (a recursive entity). | |
Response | An event in time instance, at which the Student provides an answer to a question on a Survey or Quiz, etc. | |
School | An organization | |
Person | An individual, such as a Teacher, Student, etc. |
Questionnaire
- A collection of questions that might be used in a Survey, Quiz, Exam, etc.,
- or when its key appears in the Category field making a recursive entity,
- a group, class, or category of Questionnaires
ID | primary key | |
Title | Short name for questionnaire | |
Category | Category ID, the ID of a Questionnaire group, class, or category of Questionnaire (the parent of a recursive relationship with other Questionnaire records) | |
Notes | Description, Image link, rich format data | |
StartDate | Effective date for this instance of the Questionnaire | |
EndDate | Expiry date of this instance |
Question
- A problem seeking an answer
ID | primary key | |
Questionnaire | ID of parent questionnaire | |
Sequence | number to order question among questions on questionnaire | |
Question | text problem statement | |
AnswerType | ID of the suitable answer type | |
Jump | conditional number to redirect survey question sequence | |
Notes | Description, images, rich format data | |
StartDate | Effective date of this question instance | |
EndDate | Expiry date of this instance |
Answer
- A potential solution to the problem
ID | primary key | |
Question_ID | ID of parent question | |
Sequence | number to order answer among answer choices for question | |
Answer | text of solution or answer | |
Notes | Description, images, rich format data | |
StartDate | Effective date of this answer instance | |
EndDate | Expiry date of this instance |
AnswerType
- The class of answer suitable for the problem or question
ID | primary key | |
AnswerType | text for the class of answer. Example, text, numeric, multiple choice, tabular, yes/no, etc. | |
Category | ID for class of answer type |
Survey
- An event in time instance, at which Answers to Questions or problems are gathered. Survey events can reference other surveys, such as follow-up Surveys (a recursive entity).
ID | primary key | |
BaseID | ID of parent Survey. Used to identify families of Surveys, such as version | |
School | ID of the School or organization sponsoring this Survey instance | |
Teacher | ID of Person extending this instance of the survey or quiz | |
Student | ID of the Person taking this instance of the survey or quiz | |
Notes | Description, images, rich format data for this instance of the survey or quiz | |
DateTime | DateTime that this Survey instance was taken | |
ReviewDate | Date that this Survey instance was reviewed by the Teacher | |
ChangeDate | Date that this instance of the Survey was changed (reasons are provided in the Response record). |
Response
- An event in time instance, at which the Student provides an answer to a question on a Survey or Quiz, etc.
ID | primary key | |
Answer_ID | ID of selected answer (when one of a choice) | |
Question_ID | ID of the Question instance for this Response instance | |
Survey_ID | ID of the parent Survey or Quiz instance for this Response | |
Response | text of Response | |
ResponseValue | numerical Response | |
Notes | Description, images, rich format data for this Response | |
ChangeDate | DateTime that this instance of the Survey was changed, i.e., initial response, update by Student, override by Teacher, etc. | |
ChangePerson | ID of Person who changed this Response instance, i.e., Student, Teacher | |
ChangeReason | text reason this Response instance was changed, i.e., initial response, update by Student, override reason |
School
- An organization
ID | primary key | |
School | School or organizational name |
Person
- An individual, such as a Teacher, Student, etc.
ID | primary key | |
Last Name | Family name for Person | |
First Name | Primary name for Person |
Comments
Authorship and history attributes for Questions could be provided through a new Person ID field in Questionnaire and recursive links.
- For reference, here is the Moodle Question database structure.