| WAP - Wireless Application Protocol | |
|
ContentsWhat is WAP ?How to use WAP How do I create a WML page ? Problems with WML page development Is it worth creating WAP pages ? Real life problems encountered Trademark Acknowledgements and Legal Notices WAP Resources
As with a computer connection to the internet, there are a number of things
involved, some are visible to the users whilst others are hidden away in the
background. From the user's perspective, using WAP is much like surfing the net on
a personal computer; the mobile device is fitted with a small, or not so small,
display which can be used just like a desktop browser.
Information sources can be selected which are then downloaded and their content is
displayed. Hyper Text links and buttons can then be pressed to move around from
page to page. Simple. In this respect, there is very little difference between WAP browsing and
desktop surfing, but, behind the scenes there are considerable differences
because of the medium through which the information must travel, over radio
waves rather than along hard-wired or telephone lines.
Most of the technology involved is of little importance to the average user,
how information is taken from a server, how it is translated into packets, how
it actually gets transmitted to the phone and received and how it is decoded
has little bearing upon how the pages are created by an information provider
and seen by a viewer. Most people will probably not even be concerned with where their data comes
from and will be happy to select from a list of available information sources
and look at the information they receive; stock market movements, weather
forecasts, news and other such things commonly found on the internet today.
A number of people are however interested in being able to provide information
which these people, using their mobile devices, can receive. These will be the
sort of people who already have their own web pages and want to cater for the
growing market of mobile users. As those who have web pages know, what one can do with their web pages depends
on what facilities they have; most home users have their pages hosted by an
Internet Service Provider ( ISP ), the lucky few, and many companies, run their
own servers, permanently connected to the internet, and are able to perform a
lot of tricks which ISP hosted users usually can't.
If you don't run your own server you are generally limited to providing static
pages which can only be changed by editing them on a local PC and uploading
them via FTP to the ISP. Those with servers can run software which allows them
to create pages which continually update, can respond to viewer's button
pushes and can deliver, what is known as, real time information.
Whilst these later users will be able, like they are on the internet now,
to provide the most dynamic, and up-to-date, content there is no reason that
those of us with static sites ( like the Happy Hippy's Home Pages are ) cannot
also provide content for mobile users. There may be less of a scope to provide useful information to the mobile phone
user than there is compared to that which PC surfers want. Mobile phone users
are likely to be after quick, short, shots of information rather than long
essays like this; the small screen sizes of some devices can make anything
even slightly complex look rather poor or completely useless and it costs
money to download large pages. There are however areas where information for WAP users can usefully be
provided, either for your own use, when out on the streets, or for other
members of the public. The humble 'Christmas/Birthday Present List' can be browsed by those
who stumble upon, what they think is, an ideal present whilst out shopping and
can instantly check if it's on your 'Wanted' or 'Not Wanted' lists.
Full film reviews may be over the top but a list of film ratings may prove
useful for someone trying to weigh up which film to see.
Even recipes may prove handy when shopping for the ingredients of your favourite
dish and you've forgotten what you need. And there are probably many more ideas which you'll have along the way, lists
of birthdays, lists of holidays even travel directions.
At the receiving end, inside the mobile phone, there will be a browser which
will format the information sent, like a desktop browser does and there will
be a lot of technical wizardry and magic which gets the information from where
it's stored to the display screen; all this is provided by the phone manufacturer
and the phone companies and can be ignored.
Providing information content, which will be displayed on the mobile, is what
we're interested in. To create information which can be viewed by desktop surfers we produce a number
of HTML ( Hyper Text Markup Language ) files which contains the information we want to show and all the links
we need to tie our various pages of information together.
It is exactly the same for WAP information except we use WML ( Wireless Markup
Language ) instead of HTML. WML is very similar to HTML but also different. WML information must be formatted
much more rigidly than HTML is and some of the markup language tokens, the words
inside the < and > chevrons are different, however, the style of each is
very broadly similar. Indeed, WML is actually XML ( Extensible Markup Language ) forced to use a
particular format, HTML is also derived from XML, however, its parentage has
been hidden away, and it is not commonly thought of as being related to XML.
WML is used in a similar way to HTML; pages are created using a text editor,
using the formatting and tokens available and then these files are placed on
a server just as the HTML pages were. The only differences being the formatting and tokens within the file and the
fact that WML files have the file extension .wml, not .htm or
.html. These files can then be downloaded by a mobile user by specifying the URL,
that is the address, using the standard www dot something dot something,
etc format. Viewing the WML files you have created is a bit of a problem, unless you want
to keep uploading them to the server and then call them up using a WAP enabled
mobile phone. This is, of course, totally impractical, especially as there should be no
reason that a WAP content provider should even need to own a WAP enabled
phone, which are still pretty rare on the ground, and not cheap.
WML files cannot be viewed using a normal browser, they are not HTML files
and the browser will probably just show you what's in the file you typed, as
you typed it, without applying any formatting.
Browsers which understand XML ( like Microsoft Internet Explorer 5.0 ) will be
able to show the WML file, but will display the contents formatted by the XML
rules it applies and, again, will not show the contents formatted as it will
appear on a WAP device. This will change in time as WAP becomes more common place, but in the meantime
it is necessary to use a separate WML browser which runs on your PC much like
your internet browser does. Unfortunately these are also few and far between and either only show what the
WML content would look like on a generic WAP enabled device or only
show what it would look like on a particular mobile phone.
This too will also change as WAP becomes more widespread and more people take
an interest in delivering WAP content.
A common misconception is that you must have a WAP server, or have a
permanent connection to the internet, to publish WML
pages; this is not true. Whilst many commercial WAP content providers may
establish WAP servers for that purpose, WML files can be delivered from a
standard HTTP server, the same server which your ISP uses to deliver your HTML
pages to the desktop, providing it has been correctly configured.
The main difference between creating a HTML file and a WML file is that the
contents of a WML file are different from an HTML file. If you have used
Front Page, other HTML editors or even generated HTML by saving your word
processor pages in HTML format you will need to find a WML editor or use a
simple text editor to create the WML files; HTML is not compatible with
WML. There are also WML Script files which serve the same purpose as JavaScript and
VB Script files, again, there are differences between WML Script files and the
later. WML files can also be compacted ( compiled ), making them much smaller to
send over the air waves but this is not a compulsory step to take.
To create a page successfully you need to be aware of the syntax of the WML
file contents, just as you needed to learn HTML programming and JavaScript
programming you will need to learn WML programming and WML Script programming.
This subject is too complex to be tackled in this brief introduction and I am
only just learning WML myself so I cannot provide a comprehensive tutorial on
the subject. O'Reilly and Que, plus others, will undoubtedly release comprehensive books
and manuals on WAP and WML in the future and there is information available
on the web from a variety of sources.
The best way to learn of course is by example; the following is the contents
of a simple, but complete, WML file ( demo.wml ). It
contains two pages ( cards in WAP parlance ) which can be jumped
between and also links to another WML file ...
As you have probably noticed, the syntax is very similar to HTML but there
are many differences ... Being XML, the WML file has to be formatted for XML and, what is known as, a
DTD must be provided; this is standard and is represented by the first few
lines. Multiple pages can be held in a single WML file, the <do ...> token
replaces the <input ...> token, most <tokens> have a corresponding
</token>, especially note the, now compulsory <p> ... </p>
pairing and the familiar <br> has now become <br/>.
Most of the syntax will be familiar to those of you who have used HTML and is
very easy to learn. The above file can be cut and pasted to form the basis of
your first WML page if you so wish. Looking at the contents of WML pages delivered by other content providers is
also a good way to get a feel for what WML can do and how those pages are
constructed. The definitive documents though are the WAP Specifications which can be found,
online, at the WAP Forum Ltd's site.
Firstly there is the problem of suitable tools, both for creating the pages
and for viewing them on-line and on the development PC. Whilst there are a
limited number of WML browsers available, these can be used and, although it
is a pain, the WML files themselves can be created using nothing more than a
simple text editor. As WAP becomes more commonplace we can expect the range of tools to become
greatly extended, indeed, many of the mobile phone manufacturers themselves
have, or are working on, Software Development Kits ( SDK's ) which will make
WAP development much easier in the future.
The second problem is one which will also be resolved with time; HTTP servers
which do not properly understand WML pages. When a page requested is
delivered from an HTTP server, the type of file ( text, HTML, executable and
so on ) is sent along with the delivered file. WML files should be delivered
with their MIME type set to "text/vnd.wap.wml", however, not all servers are
configured to handle WML files as they should. Some WML browsers do not care what
type of file it is processing, others are very picky. If your ISP does not
handle WML files correctly, you will need to contact their Web Master to get
them to update their server configuration. The third problem is one which is inherent in the specification of the WML
pages themselves, but it is one which can, never the less, be overcome.
Because each WML page is actually XML data, formatted accordingly, the WML page
must contain information which explains the formatting of the XML file. This is
itself an XML file and its location is specified as the last part of the
<!DOCTYPE wml PUBLIC "-//WAPFORUM//DTD WML 1.1//EN"
"http://www.wapforum.org/DTD/wml.xml"> line found within each WML page.
When a WML browser opens the WML file it can get the description of how the file
is formatted by reading the data in the other file, which is where the problem
arises. If you are connected to the internet then there is no problem, the
http://www.wapforum.org/DTD/wml.xml
file, known as a DTD ( Data Type Definition ), is simply downloaded and used.
If you are not connected, the browser will not be able to
access the DTD file and it is likely that the browser will abort with an error.
The required DTD file can be manually downloaded and stored in a local
file ( wml10.dtd, version 1.0, or
wml11.dtd, version 1.1 ) and the WML file modified so it
uses the local copy not the on-line one.
This is fine until the WML files under development are uploaded to the server;
anyone accessing your WML pages over the internet will be unable to find the
DTD file specified unless you have also loaded this to the same directory in
which your WML files can be found. Whilst this approach works, allowing WML pages to be used both locally and from
a server, there is a downside; the proliferation of DTD files is to be greatly
frowned upon, filling huge amounts of online disk space with identical files.
There is an alternative trick; changing the location and name of the DTD file
in each WML page as it is uploaded. This is how the Happy Hippy's WML files
are handled, but it does require a program to change the WML files and an
automated system in place to reduce effort and prevent errors occurring.
WAP has the support of a lot of big industry names, including Microsoft ( but
they haven't yet joined the WAP Forum, who control the WAP specifications ),
it has been well defined and documented and WAP compliant mobile phones and
other portable devices are starting to appear in the shops.
WAP content is already available from many sources and, as you've seen, the
capability to create WAP pages is in the hands of everyone. WAP has been
designed as a global, open source concept ( much like Linux and Java ) which
means there are no restrictions on its use and there should be few surprises
around the corner. We have seen that there are some problems when developing WML pages at the
present time, but these should soon be overcome and others can be worked
around. Europe is well ahead of the rest of the world in the mobile technology arena,
it is one of the few areas in which the USA lags noticeably behind, it is
therefore unlikely that any serious, or proprietary, alternatives to WAP are
likely to push it to one side. Whilst Microsoft's embracing of Sun's Java led it to corrupt the true
platform independence of the language, incorporating their own platform
specific extensions, WAP is likely to be well established and implemented
before Microsoft, or anyone else so inclined, could fragment the market with
their own similar, but slightly different, interpretations of what WAP is.
The WAP Forum appears to be solidly supported by the major mobile phone
companies in the world and the major information providers and it looks
very unlikely that they would move away from vanilla WAP and go it
alone. With the Big Four mobile device manufacturers, Nokia, Ericsson, Motorola
and Panasonic, investing heavily in Symbian, who look destined to
provide their Epoc operating system for use in their future devices, it looks
like WAP will have a stable, and cross-platform compatible, future.
From the scale of support behind WAP it would seem that there is nothing
standing in its way of becoming a protocol as common as HTML in the near
future. The dissenting voice is 3 Com who maintain that it would have been better
to extend the HTML specification rather than develop the new WML, and
associated, specifications. They do have a very good point. WML has to be learned almost from scratch, as
does WML Script, and it is necessary to convert current HTML pages into WML
for them to be used over the air waves. This is probably harder to do than
extending the HTML specification, and corresponding HTML pages, to be usable
with mobile devices and there is a dearth of tools available for WML page
creation at present. There is also the argument that, as displays on mobile devices become larger,
users will want to be able to access traditional HTML pages as well as WAP
pages; this will mean providing two sets of browsers ( a problem we already
have whilst developing WML pages at the present time on a PC ) which increases
development costs and component costs within the mobile devices themselves.
On the other hand, WML is packaged up within XML which has been touted as the
universal format for data interchange of the future and it is probably fair
to say that, even if WAP is not perfect, or even ideal, it will be brought
into widespread use anyway, objections or not.
There are proposed changes to the WAP specification; version 1.2 is already
under discussion and version 1.0 has fallen by the wayside as version 1.1
has become the latest standard. Mobile phone browsers, and emulators, which support Version 1.0 WAP only, will
probably be unable to understand version 1.1 content and it is highly likely
that those supporting version 1.1 won't understand all version 1.2 content.
The situation is therefore less than stable and, unlike the situation with
desktop PC's, it may not be easy to upgrade a mobile phone as later versions of
WAP become available and used. There are therefore compelling reasons to hold off entry into both supporting
WAP and providing WAP content until the specification has been finalised, but,
it does look likely that many mobile devices supporting version 1.1 will be out
shortly and those wishing to offer WAP content may need to start now and cater
for later versions as they arise, leaving mobile phone manufacturers to take any
flack generated by users who are unable to access the later content versions.
Those producing the specifications, along with those implementing it and
supporting it, are undoubtedly well aware of the problems that WAP version
changes will have and stability should be forthcoming if they don't want to
damage their reputations, their profit margins and the takeup of WAP.
3 Com may well have to adopt WML anyhow. Nokia have publicly announced that
they will be producing mobile devices supporting 3 Com's Palm OS running
on top of Symbian's Epoc; it seems unlikely that Nokia, a supporter of WAP
will not specify WAP capabilities even on a device running Palm OS.
Perhaps the biggest question of WAP's usefulness is on mobile phones which
have very small displays or limited interaction facilities.
WAP allows actions to be invoked from button pushes, screen tapping and even
voice commands, however, every device is different and it is hard to see
how a WML page can be designed for the great variety of devices which will
exist in the future. Trying to design a WAP page which looks good and interacts well on both a
1" x 1" display on a mobile phone and the much larger formats of PDA's,
like the Palm Pilot or Psion 5's. could prove to be difficult as there appears
to be no standardisation on user interface functionality.
Imagine how badly Teletext would have fared if the TV industry had not adopted
the familiar four coloured FastText links interface on the bottom of
each page and had each provided a different number of buttons and methods to
select the required links. For the content provider, the prospect of having to try and produce
content which is compatible with many versions of WAP and various devices
will not be enthralling, having suffered similar problems in making HTML files
compatible with Microsoft Internet Explorer, Netscape Navigator and numerous
other, popular, browsers. The issue is however a compatibility and standardisation one; it may well need
to be tightened up and better defined in the future and mobile phone
manufacturers may have to put their differences to one side in order to
achieve a unified and workable means of interaction.
Only time will tell how useful WAP becomes. The mobile phone companies and the
service providers who are knocking up WAP content services at present appear
to be backing it and, whether it is tweaked in the future or not, it looks
like WAP is here, like it or not. And if WAP is the only means to deliver content to a mobile phone user, and
that is what you want to do, then it looks like there is no alternative to
getting on the bandwagon. Within the next year or so, WAP skills listed on your CV will probably become
just as important as HTML skills.
Having got all my pages working perfectly, as far as I could tell, when I got my
hands on a WAP enabled mobile phone I was looking forward to seeing my pages
appear, magically, over the airwaves. Unfortunately this was not to be. My Internet Service Provider,
Freeserve, delivers WML pages with the
correct MIME type but the in-phone WAP Browser has complained about a number
of things, and I'm yet to see a page displayed in its full glory.
Firstly, it appears that tags ( <wml> etc ), and so on, must all be
specified in lowercase for the in-phone browser to work. This wasn't so when I
first started developing and none of the PC based tools I've used since have
complained. Secondly, the "<!DOCTYPE wml PUBLIC ..." line must also have the "wml" in
lowercase, another problem which hadn't appeared before.
With problems using the mobile phone company's WAP Gateway persisting over the
last few days, I am still not sure if I've solved all the problems yet, but I
am keeping my fingers crossed and will update the information to reflect any
changes which need to be made to my examples.
The Happy Hippy is proud to say that he has played no small part in helping to
develop the WAP specifications. Having spotted that the "WAP-Based" phrase in the above acknowledgement,
required as part of the strict adherence to the WAP Trademark and
Logo Usage Requirements, was in conflict with another part of the same
requirements, Do not hyphenate the WAP Trademark or combine it with other
words. For example; use "based on the WAP Specification"; not "WAP-based",
I reported the problem to WAP Forum Ltd who, I am pleased to say, have now
changed the specification. I am still a little concerned that none of the multi-million pound companies and
their heavily financed research teams who are members of the WAP Forum had
noticed this themselves. Did any of them send me buckets of cash, fast cars or
buy me a Mayfair appartment in thanks for my efforts ? No. Oh, well. WAP Specifications
The WAP Specifications are controlled by the
Wireless Application Forum Ltd. and the
latest, and proposed, WAP Specifications can be found on their official site;
www.wapforum.org.
Development Tools
The Wapalizer is not able to handle pages delivered from a server as
normal text pages ( the error message generated will clearly explain when
this is the case ); the server needs to be configured to send WML as the
correct MIME type.
The Happy Hippy's WAP Pages Other WAP Content Providers
mmm.aktiesidan.com | ||||||||||||||||||||||||||
|
|
|
First published sometime before Saturday the 13th of May, 2000
Last upload was on Tuesday the 23rd of September, 2003 at 19:22:21 |