Создание WAP сайта. Часть 1. Немного теории
WAP (Wireless Application Protocol-протокол беспроводных приложений). Протокол WAP определяет набор правил, которому должны следовать как WAP-приложения, так и браузеры, работающие на переносных устройствах.
Рассмотрим в кратце архитектуру WAP. Она очень похожа на WWW. В WAP используется тот же самый способ адресации ресурсов, что и в WWW, те же обозначения типов данных. В качестве клиента выступает мобильное устройство с WAP-браузером. Запросы от него идут на WAP-шлюз (это тот адрес, что вы указываете в настройках WAP своего телефона), который получив данные от сервера, отправляет их клиенту. В качестве сервера может выступать самый обычный Web-сервер. В этом случае между WAP-шлюзом и сервером используется протокол HTTP. В функции WAP-шлюза входят преобразование запросов из формата WAP-протокола и обратно. Чтобы уменьшить объем передаваемых данных, текстовые ресурсы, пришедшие от сервера, передаются клиенту в бинарной форме.
WML (Wireless Markup Language)- язык разметки для беспроводных устройств. Выполняет те же задачи, что HTML в Web. WML ориентирован на мобильные устройства, которые имеют ограниченные возможности по выводу и вводу данных.
Создавать свои WAP странички можно в любом текстовом редакторе, в том же Блокноте. Можно воспользоваться специализированными редакторами, предназначенными для WML.
Приступим к изучению WML. Он основан на расширяемом языке разметки XML. Любой документ WML начинается с инструкции <?xml version="1.0"?>. Она говорит о том, что данный текстовый файл содержит документ в формате XML версии 1.0. Обратите внимание, что перед этой инструкцией не должно быть никаких дополнительных символов, пробелов, переводов строки и т.д. В эту инструкцию можно добавить указание, в какой кодировке данный документ. Строчка будет выглядеть так <?xml version="1.0" encoding="UTF-8"?>
XML документ состоит из текста, окруженного специальными метками- тегами (tags), размещаемыми в угловых скобках. Основной структурной единицей языка XML является элемент (element). Элементы могут содержать внутри себя текст, а также другие элементы. Элементы записываются с помощью открывающего и закрывающего тегов:
<tag> текст и другие элементы </tag>
Если элемент ничего не содержит, он называется пустым и записывается так: <tag/>
Вот несколько правил. Все открывающие теги должны быть закрыты, и элементы не должны пересекаться. Также должен существовать корневой элемент, содержащий все остальные теги.
Элемент может иметь свойства, которые описываются с помощью атрибутов. Атрибуты находятся внутри открывающего тега и представляют собой набор пар "имя=значение". Значения атрибутов заключается в кавычки(") или апострофы(').
В тексте документа можно делать комметарии. Они начинаются символами <!-- и заканчиваются -->. Могут быть однострочными и многострочными.
Вся информация в WML содержится в деках. Дек-это минимальный блок данных, который может быть передан сервером. Т.е. дек- это ваш файл с расширением .wml . Дек содержит в себе набор карт. Карта- основная структурная единица WML. Пользователь WAP-браузера видит в каждый момент времени только одну карту. Карта содержит в себе текст, изображения и элементы управления. Взаимодействуя с элементами управления, расположенными в карте, пользователь переходит от одной карты к другой. Поясню. На вашем телефоне вы видите на экране одновременно несколько строк. Чтобы просмотреть еще, вы пользуетесь перемоткой. Это все пока одна карта. Выполняя какое-то действие, например активировав ссылку, вы переходите на другую карту (или другой дек). Закачка изображения, мелодии, игры -не обязательно переход на другую карту. Немного непонятно? Не переживайте, через небольшое время вы все поймете. Мобильные телефоны ограничивают размер дека. Например, в телефонах Nokia 40 серии это 2.5kb. Но не забывайте, что ваши текстовые файлы передаются телефону в бинарном виде. Некоторые редакторы WML показывают размер, который будет в бинарном виде. А реально ваш wml файл можно делать до 4kb. Не забывайте об этом. Дек (т.е файл wml) полностью загружается в телефон, а потом переход по картам происходит мгновенно в самом телефоне. Иногда удобнее делать вместо нескольких карт- разные деки, чтобы пользователь не загружал не нужные для него данные.
Итак ваш файл wml должен содержать в себе несколько обязательных элементов:
<?xml version="1.0"?> <!-- 1 -->
<!DOCTYPE wml PUBLIC "-//WAPFORUM//DTD WML 1.1//EN" "http://www.wapforum.org/DTD/wml_1.1.xml"><!-- 2 -->
<wml><!-- 3 -->
<card id="hi" title="WELCOME!"><!-- 4 -->
<p><!-- 5 -->
Privet!<!-- 6 -->
</p><!-- 7 -->
</card> <!-- 8 -->
</wml><!-- 9 -->
Строка 1 содержит стандартную инструкцию, указывающую, что перед нами XML документ. Вторая строка объявляет тип документа -WML и адрес, по которому расположен файл с определениями документа (правила, грамматика языка). Третья строка открывает описание дека. Тег, закрывающий дек, расположен в последней, девятой строке. В строке 4 объявляется первая карта, которая имеет идентификатор (id) hi и заголовок (title) WELCOME!. Карта содержит элемент p (строки 5-7), который описывает параграф. Внутри параграфа содержится текст (строка 6). Восьмая строка закрывает карту. Если мы загрузим этот wml файл в телефон, то на экране увидим в самом верху WELCOME! (title карты) и на экране телефона Privet! (текст)
02-05-2005