Thursday, May 26, 2011

Handling The Australian Curriculum in Javascript

Since I may be working in the K-12 sector I thought I'd see how machine-readable the Australian K-12 curriculum is when compared to the VET sector. Having dealt with NTIS web services I was plesantly surprised.

Why Do This

A machine readable curriculum is important for tasks like...
  • Entering metadata correctly and aligning electronic resources to the curriculum
  • Helping students build an e-portfolio based on the curriculum

How it Was Done


You can see an example curriculum browser here. It should work in modern web browsers (IE9, Firefox 4, chrome, etc)

In short...

There were several issues that made things tricky.

  • Curriculum elements are available in JSON format but web browsers can't consume this because it violates cross-site scripting rules. That meant the extra effort of using YQL. If they supported JSONP it would have been a lot simpler.
  • The data structure of the curriculum elements wasn't consistent. This required some extra work and testing to pull out the information I needed.

If these were changed on the curriculum site it would make things a lot simpler for web developers.

Feel free to leave any suggestions or comments.