jqjacobs.net/edu/xml

MCC logo linked to MCC Home Page
CIS 234 — XML Application Development
HOME  |   Syllabus   |  Assignments  |  Links   |  Help  |  WebCT  |  WebBoard

Final Project

You are a team of code warriors and would-be code warriors seeking a new project. A genealogy project, Family GEM (Genealogy Extensible Markup), is available. The object of the project is to create an environment to display XML genealogy data and navigate family relationships.

If your team successfully creates a non-proprietary, cross-platform foundation and solves the display problems, the developer will spin off a new product line and your team will have a substantial development contract and get shares in the proposed startup company, Family GEM, a software and genealogy-focused Web hosting venture.

Several individuals previously worked on parts of this project and presented ideas. The project developer assembled their reports for your team. Your team has decided to examine the previous GEM work. First, you will need to be critical about the feasibility of implementing the concept. Your team is more knowledgable about XML and Web authoring languages than the concept team, and several of you are programmers. And your team possesses a variety of skills, education, and experience.

One of the previous developers assembled a Proposed GEM Data Structure Model in a Word file. The original concept envisions being able to navigate genealogy records somewhat like the World Wide Web is navigated. Given this goal, the author of the data structrure model decided to create terse element names. She envisioned often-overlapping, inter-referenced family trees and many millions of persoanl records. Therefore, the team decided to keep files as small as possible using terse code. The end product is intended for world-wide use, so terminology in a particular language is not necessary.

The developer has already specified that data and styling remain separate. The application will be widely distributed, and each end user should be allowed as wide a range of creativity as possible in styling their own displays, incorporating data into their display documents, or creating different displays.

A GEM Display Concept was created by another member of the previous development team. Your team is being asked to implement this concept. You will decide how to display and navigate records. However, a solution for data navigation was not clearly elucidated.

Your team will research previous genealogy XML projects and make recommendations with reference to the previous GEM proposal. Then you will create standardized XML documents to store data about an individual and a family tree. Your team will also create schema to validate the two documents. You must keep your application as widely accessible (interoperable) as possible while attempting to implement the GEM features previously conceptualized by less experienced programmers.

Each team member will then test the documents using their own data (real or fictitious persons) and style their own display document.

DUE DATES:  The Final Project collaborative phase must be completed on May 6.  Each student must submit their own version on or before May 9.

Separator line

Final Project Links:

MCC logo linked to MCC Home Page
CIS 234 — XML Application Development
HOME  |   Syllabus   |  Assignments  |  Links   |  Help  |  WebCT  |  WebBoard