This hands-on course is aimed at Java programmers who have not completed COMP 2899, which has similar topics. Those who have completed COMP 2899 are not required to complete this entire course, please contact the department for more details. On top of the face to face lessons each week, there is a mandatory online component in D2L specifically for Java programmers. This course starts with an introduction to the Extensible Markup Language (XML) and how to incorporate XML into Java web-based applications. Topics include XML syntax, DTD and XML Schema validation, namespaces, XSLT, XPath, and web technologies such as RSS, Java XML parser & validation APIs, Java transforming APIs, Atom and XML-RPC. Labs cover various parser technologies, declarative XML UI languages, data-modelling with XML, and using XML in AJAX-enabled web applications. Successful participants in this course will be able to develop XML formats and be able to apply XML technologies to various web based applications.