One of the stated design goals of XML is to promote pass information between programs while still being human-readable. An XML document (providing it is well-formed) can be produced, parsed and analysed by one of the many XML-DOM libraries available to users regardless of source. This assessment is designed to demonstrate the use of XML tools to manipulate XML documents.
The Greenvale Police Department (GVP) is intending to improve their crime-reporting system, and wish to design a data transfer system for this purpose. They wish for their officers to have a system for recording the details of a reported crime, such as victims, witnesses and evidence. This system must be able to store crime-specific information - items stolen in theft, building address for graffiti, and similar. In addition, these reports are going to be viewable by the court system, as part of the judiciary process.
For this assignment, you are required to produce TWO short programs.
Programs 1 and 2 must be able to produce/read an XML document for three distinct types of crime, i.e. three crimes with largely different data storage requirements. Both programs may be written in the language of your choice; Python or C# are recommended. The majority of marks will be awarded for proper use of the XML DOM and related libraries. Although an XML schema is not required for this project, you may find one useful; include it in the report if used.
You will submit a short report demonstrating the functionality of these programs and examining design choices made. This report should consist of an introduction, an explanation of the XML data format used and a demonstration and explanation of your two programs functionality, including examples of the XML files. It is recommended that you focus on the use of XML in the project; you are not required to detail the design of user interfaces, file IO (unless it relates to XML), etc. Please include appropriate snippets of code and example output from both programs. In addition, please upload a zipped folder with your University username as a name containing your code to Blackboard by the hand-in date for moderation.