Les quelques exemples précédent permettent de relativement bien comprendre l'utilité des éléments WML. Le programme suivant n'est qu'une mise en commun de diverses informations de ces exemples :
FICHIER CONVERTISSEUR.WML
<?xml version="1.0"?>
<!DOCTYPE wml PUBLIC "-//WAPFORUM//DTD WML 1.1//EN" "http://www.wapforum.org/DTD/wml_1.1.xml">
<!-- Ce fichier est une modification du fichier source anglais pouvant être trouvé sur
http://www.oanda.com/converter/classic?user=phone-->
<wml>
<!-- Chaque carte utilise le modèle de page précédente-->
<template>
<do type="accept" label="Retour">
<prev/>
</do>
</template>
extern function convert (varname,de, vers, montant){
var multiplier=0.0;
var chaine_retour="Non disponible";
var result;
if (de="DEM"){
/* Deutsche Mark */
var DEM_FRF=0.2983;
var DEM_USD=1.6535;
var DEM_EUR=1.9567;
var DEM_GBP=2.2670;
if (vers=="DEM") multiplier=1.0;
else if (vers=="USD") multiplier= DEM_USD;
else if (vers=="FRF") multiplier=DEM_FRF;
else if (vers=="GBP") multiplier=DEM_GBP;
else if (vers=="EUR") multiplier=DEM_EUR;
}
else if (de="USD"){
/* Dollar americain */
var USD_FRF=0.1804;
var USD_DEM=0.6047;
var USD_EUR=1.1835;
var USD_GBP=1.3712;
if (vers=="USD") multiplier=1.0;
else if (vers=="DEM") multiplier= USD_DEM;
else if (vers=="FRF") multiplier=USD_FRF;
else if (vers=="GBP") multiplier=USD_GBP;
else if (vers=="EUR") multiplier=USD_EUR;
}
else if (de="EUR"){
/* Euro*/
var EUR_FRF=0.1524;
var EUR_USD=0.8449;
var EUR_DEM=0.5110;
var EUR_GBP=1.1586;
if (vers=="EUR") multiplier=1.0;
else if (vers=="USD") multiplier= EUR_USD;
else if (vers=="FRF") multiplier=EUR_FRF;
else if (vers=="GBP") multiplier=EUR_GBP;
else if (vers=="DEM") multiplier=EUR_DEM;
}
else if (de="FRF"){
/* FRANC */
var FRF_DEM=3.3520;
var FRF_USD=5.5425;
var FRF_EUR=6.5596;
var FRF_GBP=7.6121;
if (vers=="FRF") multiplier=1.0;
else if (vers=="USD") multiplier= FRF_USD;
else if (vers=="DEM") multiplier=FRF_DEM;
else if (vers=="GBP") multiplier=FRF_GBP;
else if (vers=="EUR") multiplier=FRF_EUR;
}
else if (de="GBP"){
/* Livre Sterling*/
var GBP_FRF=0.1315;
var GBP_USD=0.7289;
var GBP_EUR=0.8631;
var GBP_DEM=0.4410;
if (vers=="GBP") multiplier=1.0;
else if (vers=="USD") multiplier= GBP_USD;
else if (vers=="FRF") multiplier=GBP_FRF;
else if (vers=="DEM") multiplier=GBP_DEM;
else if (vers=="EUR") multiplier=GBP_EUR;
}
if (multiplier != 0.0){
result=montant/multiplier;
chaine_retour=String.toString(result);
chaine_retour=String.format("%.2f", chaine_retour);
}