EINDPRESENTATIE XML RECEPTENSPELER Léon de Jong, Vincent Mei, Florus Blankespoor.

Post on 24-May-2015

214 views 2 download

Transcript of EINDPRESENTATIE XML RECEPTENSPELER Léon de Jong, Vincent Mei, Florus Blankespoor.

EINDPRESENTATIE XML RECEPTENSPELERLéon de Jong, Vincent Mei, Florus Blankespoor

Debriefing

Keuzeopdracht 3 – Receptenspeler

Ontwerp een ReceptenMarkUpLanguage Presenteer de recepten in zowel een

HTML en een Flashpagina

Architectuur van de XML

<?xml version="1.0" encoding="UTF-8"?>

<?xml-stylesheet type="text/xsl" href="receptenstylesheet.xslt"?>

<recepten>

<recept>

<gerecht>Toscaanse roodbaarsfilet met cherrytomaatjes, kappertjes en olijven</gerecht>

<afbeelding>images/1.jpg</afbeelding>

<personen>4 personen</personen>

<tijd>20 minuten</tijd>

<ingredienten>

<ingredient>

<aantal>4</aantal>

<eenheid>stuks</eenheid>

<naam>roodbaarsfilets van 125 gram</naam>

</ingredient>

<ingredient>

<aantal>1</aantal>

<eenheid>el</eenheid>

<naam>Bertolli Gentile Extra Vergine olijfolie</naam>

</ingredient>

Architectuur Xpath vs DOM AS 2.0 XPath:

count[i] = mx.xpath.XPathAPI.selectNodeList(xmlNode.childNodes[i], "recept/ingredienten/*/aantal/*");

DOM van AS 2.0:

_global.count = [];

for(t=0; t < xmlNode.childNodes[i].childNodes[4].childNodes.length; t++){count[i][t] = xmlNode.childNodes[i].childNodes[4].childNodes[t].childNodes[0].firstChild.nodeValue;

}

(variabele ‘I’ is in een for loop gedefinieerd)

Architectuur van de Flashapplicatiefor(t=0; t <

xmlNode.childNodes[p].childNodes[4].childNodes.length; t++){

ingredients_txt.text += count[p][t]+" "+unit[p][t]+" "+name[p][t]+"\n";

}

Architectuur van de XSLT applicatie<xsl:template match="ingredient">

<ul type="square">

<li><xsl:apply-templates select="aantal"/><xsl:text>

</xsl:text><xsl:apply-templates select="eenheid"/><xsl:text>

</xsl:text><xsl:apply-templates select="naam"/></li>

</ul>

</xsl:template>

Demonstratie

Flashapplicatie XSLT applicatie

Tips en truuks

XPath werkt beter dan DOM AS 2.0

XML benaderen met AS3 (E4X) ipv AS2

Eerder beginnen met de Keuzeopdracht

Einde

Vragen?