This case study demonstrates how to build Internet applications using AppML.
Part I: Accessing Internet Files
- Accessing a TEXT file
- Accessing an XML file
- Accessing a JSON file
Part II: Accessing Internet Databases
- Listing database data
- Filtering database data
- Editing database data
AppML Browser and AppML Server
In this case study, AppML runs both in the browser (appml.js) and on the server (appml.php).
We will use a web server located at http://www.w3ii.com.
All the files and databases are located on the server.
Later in this tutorial you will learn how to simulate a web server in the browser.
Text Files
To demonstrate how to access text files, we have used file much like this:
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
.
.
Try It Yourself »
XML Files
To demonstrate how to access XML files, we have used a file much like this:
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>
.
.
Try It Yourself »
JSON Files
To demonstrate how to access JSON files, we have used a file much like this:
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" },
.
.
Try It Yourself »
Databases
Our test database contains several tables like this:
Customers
Customer | Address | City | Country |
---|---|---|---|
Around the Horn | 120 Hanover Sq. | London | UK |
Berglunds snabbkjop | Berguvsvagen 8 | Lulea | Sweden |
Blauer See Delikatessen | Forsterstr. 57 | Mannheim | Germany |
Blondel pere et fils | 24, place Kleber | Strasbourg | France |
Bolido Comidas preparadas | C/ Araquil, 67 | Madrid | Spain |
Bottom-Dollar Markets | 23 Tsawassen Blvd. | Tsawassen | Canada |
Suppliers
Supplier | Address | City | Country |
---|---|---|---|
Exotic Liquid | 49 Gilbert St. | London | UK |
New Orleans Cajun Delights | P.O. Box 78934 | New Orleans | USA |
Grandma Kelly's Homestead | 707 Oxford Rd. | Ann Arbor | USA |
Tokyo Traders | 9-8 SekimaiMusashino-shi | Tokyo | Japan |
Cooperativa de Quesos 'Las Cabras' | Calle del Rosal 4 | Oviedo | Spain |
Mayumi's | 92 Setsuko Chuo-ku | Osaka | Japan |
Pavlova, Ltd. | 74 Rose St. Moonie Ponds | Melbourne | Australia |
Specialty Biscuits, Ltd. | 29 King's Way | Manchester | UK |
PB Kn ckebr d AB | Kaloadagatan 13 | G teborg | Sweden |
Refrescos Americanas LTDA | Av. das Americanas 12.890 | S o Paulo | Brazil |
Products
Product | Quantity Per Unit | Unit Price | Units In Stock |
---|---|---|---|
Chai | 10 boxes x 20 bags | 18 | 39 |
Chang | 24 - 12 oz bottles | 19 | 17 |
Aniseed Syrup | 12 - 550 ml bottles | 10 | 13 |
Chai | 10 boxes x 20 bags | 18 | 39 |
Chef Anton's Gumbo Mix | 36 boxes | 21 | 0 |
Grandma's Boysenberry Spread | 12 - 8 oz jars | 25 | 120 |
Uncle Bob's Organic Dried Pears | 12 - 1 lb pkgs. | 30 | 15 |
Northwoods Cranberry Sauce | 12 - 12 oz jars | 40 | 6 |
Mishi Kobe Niku | 18 - 500 g pkgs. | 97 | 29 |
Ikura | 12 - 200 ml jars | 31 | 31 |