Hi,
I have created an online knowledge testing system, for a client. It has been running very smoothly for quite a long time. Now, I need to add a new feature to the system called "question bank". The client wants to be able to select questions from a pool of available questions and create a new test.
My initial idea was to make the client create a new XML file, for every new question he wants add to the question bank.
<?xml version="1.0" encoding="iso-8859-1"?>
<question_details>
<points>3</points>
<answer_type>radiobutton</answer_type>
<options>2</options>
<correct_option_number>1</correct_option_number>
<true_false>yes</true_false>
</question_details>
Note: HTML for the question is stored in a seperate file
I parsed one of these sample XML files and could generate a sample test (required in a particular format), that can be easily plugged into my system.
Now here is the PROBLEM with this approach. Say, I have 400 questions (xml files) in the question bank and tommorow the client wants to add a new feature (beleive me, this is going to happen for sure) which involves adding/editing/deleting element(s) all xml files. Changing the XML parser is not a problem, but changing all the files (manualy or even through a script) is not an elegant solution.
This led me to wonder if there is a better approach to tackle my problem?
I am interested in knowing, how others would implement this.
Thanks for reading this long post. All ideas are welcome.
Regards,
Rushabh.