Find this page online at: http://developers.evrsoft.com/article/web-development/mobile-wireless-computing/wml-simple-steps-to-a-wireless-wap-site.shtml

WML: Simple Steps to a Wireless Site

By William J. Tolson
Posted Friday, June 25, 2004

WML: Getting Your Wireless Site Online

Three Simple Steps
How To View Wireless Sites Using a PC's Browser
WAP Search Engines
WML Validators

The presence of the wireless / mobile / hand-held world is becoming more apparent daily. With the introduction of WML (wire less markup language) and the creation of WAP (wireless application protocol) several years ago, the ability of having not only a web site, but also a wireless web site is a reality. Actually, with the never ending advances in wireless technology, having a wireless web site is really not an option, especially in the business world.

Mobile devices provide access to basic information coupled with freedom from the restraints of the static desktop or the less than always convenient, laptop. Innovations are allowing mobile devices, i.e. cellular phones, PDAs (personal digital assistants), and hand-held devices (pocket PCs, Palm Pilots, Blackberrys etc) to become increasingly more compact. To compensate for their small sizes, these devices are becoming more powerful with a variety of screen sizes and improved display and color capabilities. This is not to mention the other wireless 'smart devices/appliances' that are also on the horizon.

Because of their limited dimensions, wireless devices contain a special micro-browser which has limited capacities and is not able to present web sites written in HTML. Wireless web sites are written in WML, which is similar to and simpler than HTML. Understand that though simpler than HTML, WML is part of XML and as such the syntax and rules are much stricter.

A wireless site is called a deck and 'pages' are referred to as cards. The particulars of writing the code for a mobile device in WML is another subject. Rather let's focus on now that you have created a wireless web site, how to get it online so that it can be accessed by those using hand-held devices. So let's go.

Three Simple Steps

1. Adding a small amount of information to your current sever
2. Making a file called - .htaccess - and uploading it
3. Including one other line

As with HTML, there are WML editors and hosting companies that are available to put a wireless web site together and get it online. Some of the hype tends to make it seem that only the special hosting companies are capable of handling a site written in WML.

In fact, any service capable of hosting a web site host can also host a wireless web site, i.e. your current web site's host!

1. Adding Information to your Server

First, as you are aware, there are a number of different servers in use. The following steps apply to those whose host is using an Apache server or another NCSA-based server. A Windows server is another story and has different requirements to contend with. (see Openwave for specific information regarding Windows server). This step, as well as the following steps, apply to Apache servers.

A few simple lines of information need to be added to your Apache server. They include;

DirectoryIndex index.wml
addtype text/vnd.wap.wml wml
addtype application/vnd.wap.wmlc wmlc
addtype text/vnd.wap.wmlscript wmls
addtype application/vnd.wap.wmlscriptc wmlsc
addtype image/vnd.wap.wbmp wbmp

These line allow your server to 'tell' a browser what type of document to expect. The 'wml' addtype lines refer to wml text, scripts, and applications. The 'wbmp' addtype line includes the special image format that must be used for images on a wireless site, file extension of .wbmp.

2. Making the - .htaccess - File

Using your favorite HTML editor or something like Notepad, create a file that contains the above lines of information. This file is designated as .htaccess, it must have the dot in front of the h! A simple way of doing this would be to initially name your new file something like 'abc.htm'. Upload it into your HTML directory and once there simply rename it to .htaccess. You have now added a file called .htaccess to your HTML directory where you can now also place your WML files. Of course, the .htaccess file can be placed in any directory where you will place your WML files.

3. Adding The Extra Line

This last step can actually be included with Step 2. I am not an expert concerning MIME, servers, and .htaccess files, but I want share with you a 'glitch' that I encountered after the first time I followed the steps above. Using a WAP simulator/emulator (see below), I was able to access and begin to modify the two wireless sites that I had created.

Shortly afterwards, after feeling that I had accomplished something, I went to visit one of my site's, (actually the home page from which this article originates, estOnto.com) and I discovered that entering either (http://estonto.com) or (http://estonto.com/index.html) resulted in an error message that access was forbidden! The same thing happened with my other web site. I could access the new wireless sites, but neither home page would open on the desktop!

After continued searching and reviewing many online resources I did not encounter any mention of this situation. I repeated and retraced my steps, and I still had the same result. Therefore, I attempted to correct this on my own and with some persistence realized that the solution was simple. By adding this one extra line to Step 2 above

DirectoryIndex index.html

now - (http://estonto.com)

once again opens my home page and the wireless web site is also accessible!

So the final lines that I added to my Apache server via the .htaccess file were;

DirectoryIndex index.html

DirectoryIndex index.wml
addtype text/vnd.wap.wml wml
addtype application/vnd.wap.wmlc wmlc
addtype text/vnd.wap.wmlscript wmls
addtype application/vnd.wap.wmlscriptc wmlsc
addtype image/vnd.wap.wbmp wbmp

How To View Wireless Sites Using a PC's Browser

Obviously, one method of viewing wireless web sites is by using a mobile device. During the construction and testing phases of building a wireless site this is not a very practical nor economical approach.

Yet if desktop and laptop browsers can not 'read' WML, at first glance there appears to be a problem then with being able to view a wireless site via a desktop machine.

But just as there are editors and browsers for viewing web pages 'under construction', and using a localhost Apache server along with a Perl console for reviewing Perl scripts before going online, there are a number of different wireless simulators / emulators available. Some can be downloaded for use on your machine, or your web site, or there are sites that offer access to a simulator / emulator for free.

Some sources, a search will easily bring up others;

YoSpace, multiple simulators, life size and enlarged

WapMore, multiple emulators

Wapsilon, several simulators

A WML editor, available free for download, can be found at WAPDrive

WAP Search Engines
As on the 'regular' web, the wireless web has search engines which can be used to search for wireless sites by inputting keywords. Just as important though, is that these search engines accept submission of wireless sites for review and inclusion into their listings. Even though regular and wireless web sites are both on the Internet, remember that they are different protocols so SEO and promotion needs attention on both fronts.

Some examples of wireless search engines;

WapTiger
WapDrive, many sites listed

WAP Validators
Here are a few WAP validators for checking your WML coding for errors. As part of XML, WML must be correct.

WAPuSeek
WapTiger
W3C WapForum

This is only but a few of the wireless resources that are available on the Internet. Searching will bring up many related results.


About the Author
After being a practicing dental specialist for twenty-five years, William Tolson became intrigued with the Internet and web/wap page design. Self-taught and initially designing and hand coding his own personal web sites, he now devotes all his time as an independent contractor focusing on web/wap page design, optimization and accessibility for all.