Categories
Internet Application Development

FIT5032: Week 3

Internet Application development week 3 extended on the subject of XML from last week. As we learned the basics in week 1 and the XML schema (.xsd) in week 2, next up was stylesheets (XSLT). Stylesheet start to give evidence to the value of XML in dynamic web design. HTML code can be generated through the ‘transformation of XML files and XSLT files.

source: http://walkabout.infotech.monash.edu.au/walkabout/fit5032/index.html

Initially this is not very exciting but when considering that style sheet processing can be done on the fly, it present a wide range of possibilities.

Some simple processing can be done in the XSLT, although it must be noted that it is certainly not a fully fledged programming language and is not enjoyable to write in!

A snippet of code from an XSLT doc illustrates this fact:

<td>
 <xsl:variable name="assTot" select="sum(assignments/assignment)"/>
 <xsl:variable name="unitTot" select="sum(assignments/unitTest)"/>
 <xsl:variable name="count" select="count(assignments/assignment) + count(assignments/unitTest)"/>
 
 <xsl:value-of select="format-number((($assTot + $unitTot) div $count), '##0.00')" />
 </td>
 <td>
 <xsl:variable name="assTot" 
 select="sum(/units/unit[unitCode='FIT5432']/class/studentMarks/student[@id=$curID]/assignments/assignment)"/>
 <xsl:variable name="unitTot" 
 select="sum(/units/unit[unitCode='FIT5432']/class/studentMarks/student[@id=$curID]/assignments/unitTest)"/>
 <xsl:variable name="count2" select="count(/units/unit[unitCode='FIT5432']/class/studentMarks/student[@id=$curID]/assignments/assignment) + 
 count(/units/unit[unitCode='FIT5432']/class/studentMarks/student[@id=$curID]/assignments/unitTest)"/>                
 <xsl:value-of select="format-number((($assTot + $unitTot) div $count2), '##0.00')" />
 </td>

After spending a lot of time this week working on the first assignment I feel quite comfortable with the topics covered in the first 3 weeks:

Leave a Reply

Your email address will not be published. Required fields are marked *