Assignment 04

Due Date:

Friday, 10/30 11:59pm

User Interaction Software

  • Fall 2012
  • Department of Informatics
  • Donald Bren School of Information and Computer Sciences

Assignment #4: Goal: Gain experience with the real-time web, XML, JSON and Javascript

  • This is a solo assignment
    • Identify 5 JSON/XML data sources (URLs) that have geo-data in them. They must come from different domains.
      • For full credit the source of the data that you pull from should be dynamic. Not a static XML or JSON file sitting on a server somewhere. By "dynamic" I mean it should give you different data from the same URL depending on when you request it *or* it should be constructed from the parameters of the URL that you give it.
      • If you use things that are completely static there will be a 3 point penalty per static source.
      • If you put the static feed in your table then there will be an additional 5 point penalty
    • Create a web-page that loads one of the 5 data-sources using AJAX, parses it and presents the data as a table on the webpage.
      • You must deal with cross-site data requests (you need a proxy or JSONP),
      • You must pick a library to parse and manipulate the data
      • You must insert/modify a javascript structure into a web-page
      • For the dynamic table:
        • It must have one row for every entry in the feed
        • Each row must have a description of the feed entry and the associated geo-data (at least)
        • The number of rows must *not* be hardcoded into the HTML. It must be dynamically loaded from the remote URL
    • Turn in a link to your web-page using the EEE Quiz Mechanism Turn in here
      • The web-page should list the 5 data sources (by URL) and your written description of what they are
      • Also on the web page should be a description of how you accomplished your data-parsing
      • Also on the web page is the table that is the result of your parsing (it should generate itself from a live AJAX call)
    • For bonus points do this three times: load one XML AJAX example, one JSON AJAX example and one JSONP example.
    • While graphic design is not the focus of this assignment, feel free to make your webpage look good.
  • Resources:
    • a proxy program which will get around the cross-site data restrictions:
      • Please note that this file must be on a machine that has both php and curl installed (students.ics.uci.edu is one such machine). The myProxy.php file must be on the same domain as the one that is executing the javascript. That's the whole point of why you need it.
      • When it is called with a url like this:
        • http://www.mydomain.com/myProxy.php?http://www.yourdomain.com/file.xml
      • It will use php and curl to load www.yourdomain.com/file.xml and send it back as if it were on the local machine