¿Cuál es AppML?
AppML es una herramienta para traer los datos del servidor de aplicaciones HTML.
w3data.php es un subconjunto de AppML.
El propósito de w3data.php es proporcionar w3data.js con datos de un servidor web.
Modelos de solicitud
AppML utiliza modelos de aplicaciones (escritas en notación de objetos JavaScript) para describir las aplicaciones de servidor.
Este sencillo modelo describe una aplicación completa para recuperar datos de una base de datos:
model_customers.js
{
"database" : {
"connection" : "localmysql",
"sql" : "SELECT * FROM Customers"}
}
Los modelos se almacenan en el servidor y no pueden ser editados por un usuario de la web.
Tiene que ser un administrador del servidor o un usuario dado los derechos para editar archivos en el servidor.
El uso de un modelo de aplicación es fácil, sólo tiene que añadir el nombre del modelo de w3data.php cuando se llama a w3Http ():
Ejemplo
<script>
w3Http("w3data.php?model=model_customers", function () {
if (this.readyState == 4 && this.status == 200) {
var myObject = JSON.parse(this.responseText);
w3DisplayData("id01", myObject);
}
});
</script>
Inténtalo tú mismo " Viendo desde un archivo de texto
Ejemplo
<script>
w3Http("w3data.php?model=model_cd_from_txt", function () {
if (this.readyState == 4 && this.status == 200) {
var myObject = JSON.parse(this.responseText);
w3DisplayData("id01", myObject);
}
});
</script>
Inténtalo tú mismo " Este es el modelo utilizado en la aplicación:
model_cd_from_txt
{
"data" : {
"type" : "csvfile",
"filename" : "cd_catalog.txt",
"items" : [
{"name" : "title", "index"
: 1},
{"name" : "artist", "index" :
2},
{"name" : "price", "index" : 5}
]
}
}
Este es el archivo de texto separado por comas:
cd_catalog.txt
Empire Burlesque,Bob Dylan,USA,Columbia,10.90,1985
Hide your heart,Bonnie Tyler,UK,CBS Records,9.90,1988
Greatest Hits,Dolly Parton,USA,RCA,9.90,1982
Still got the blues,Gary Moore,UK,Virgin records,10.20,1990
Eros,Eros Ramazzotti,EU,BMG,9.90,1997
One night only,Bee Gees,UK,Polydor,10.90,1998
Sylvias Mother,Dr.Hook,UK,CBS,8.10,1973
Maggie May,Rod Stewart,UK,Pickwick,8.50,1990
Viendo desde un archivo JSON
Ejemplo
<script>
w3Http("w3data.php?model=model_cd_from_json", function () {
if (this.readyState == 4 && this.status == 200) {
var myObject = JSON.parse(this.responseText);
w3DisplayData("id01", myObject);
}
});
</script>
Inténtalo tú mismo " Este es el modelo utilizado en la aplicación:
model_cd_from_json.js
{
"data" : {
"type" : "jsonfile",
"filename" : "cd_catalog.js",
"record" : "cd"
"items" : [
{"name" : "title", "nodename"
: "title"},
{"name" : "artist", "nodename" :
"title"},
{"name" : "price", "nodename" :
"title"}
]
}
}
Este es el archivo JSON:
cd_catalog.js
{
"cd" : [
{ "title" : "Empire Burlesque",
"artist" : "Bob Dylan", "price" : "10.90" },
{ "title" :
"Hide your heart", "artist" : "Bonnie Tyler", "price" : "9.90" },
{ "title" : "Greatest Hits", "artist" : "Dolly Parton", "price" : "9.90" },
{ "title" : "Still got the blues", "artist" : "Gary Moore", "price" : "10.20"
},
{ "title" : "Eros", "artist" : "Eros Ramazzotti",
"price" : "9.90" },
{ "title" : "One night only",
"artist" : "Bee Gees", "price" : "10.90" },
{ "title" : "Sylvias
Mother", "artist" : "Dr.Hook", "price" : "8.10" }
]
}
Viendo desde un archivo XML
Ejemplo
<script>
w3Http("w3data.php?model=model_cd_from_xml", function () {
if (this.readyState == 4 && this.status == 200) {
var myObject = JSON.parse(this.responseText);
w3DisplayData("id01", myObject);
}
});
</script>
Inténtalo tú mismo " Este es el modelo utilizado en la aplicación:
model_cd_from_xml
{
"data" : {
"type" : "xmlfile",
"filename" : "cd_catalog.xml",
"record" : "CD",
"items" : [
{"name" : "artist", "nodename"
: "ARTIST"},
{"name" : "title", "nodename"
: "TITLE"},
{"name" : "country", "nodename"
: "COUNTRY"}
]
}
}
TThis es el archivo XML:
cd_catalog.xml
<?xml version="1.0" encoding="ISO-8859-1"?>
<CATALOG>
<CD>
<TITLE>Empire Burlesque</TITLE>
<ARTIST>Bob Dylan</ARTIST>
<COUNTRY>USA</COUNTRY>
<COMPANY>Columbia</COMPANY>
<PRICE>10.90</PRICE>
<PUBLISHED>1985</PUBLISHED>
</CD>
<CD>
<TITLE>Hide your heart</TITLE>
<ARTIST>Bonnie Tyler</ARTIST>
<COUNTRY>UK</COUNTRY>
<COMPANY>CBS
Records</COMPANY>
<PRICE>9.90</PRICE>
<PUBLISHED>1988</PUBLISHED>
</CD>
<CD>
<TITLE>Greatest Hits</TITLE>
<ARTIST>Dolly Parton</ARTIST>
<COUNTRY>USA</COUNTRY>
<COMPANY>RCA</COMPANY>
<PRICE>9.90</PRICE>
<PUBLISHED>1982</PUBLISHED>
</CD>
<CD>
<TITLE>Still got the
blues</TITLE>
<ARTIST>Gary Moore</ARTIST>
<COUNTRY>UK</COUNTRY>
<COMPANY>Virgin records</COMPANY>
<PRICE>10.20</PRICE>
<PUBLISHED>1990</PUBLISHED>
</CD>
<CD>
<TITLE>Eros</TITLE>
<ARTIST>Eros Ramazzotti</ARTIST>
<COUNTRY>EU</COUNTRY>
<COMPANY>BMG</COMPANY>
<PRICE>9.90</PRICE>
<PUBLISHED>1997</PUBLISHED>
</CD>
<CD>
<TITLE>One night only</TITLE>
<ARTIST>Bee Gees</ARTIST>
<COUNTRY>UK</COUNTRY>
<COMPANY>Polydor</COMPANY>
<PRICE>10.90</PRICE>
<PUBLISHED>1998</PUBLISHED>
</CD>
<CD>
<TITLE>Sylvias Mother</TITLE>
<ARTIST>Dr.Hook</ARTIST>
<COUNTRY>UK</COUNTRY>
<COMPANY>CBS</COMPANY>
<PRICE>8.10</PRICE>
<PUBLISHED>1973</PUBLISHED>
</CD>
</CATALOG>