WML базируется на XML, языке разметки получившем
невероятную поддержку благодаря своей способности описывать данные (HTML,
кстати, используется для описания представления данных). HTML - предопределяет
те тэги, которые могут быть использованы для описания страницы так, чтобы ее
смог правильно понять и обработать броузер. XML, в свою очередь, позволяет
создателю документа определять такой набор тэгов, которой он считает
необходимым. Этот набор тэгов группируется затем в набор грамматических
"правил", называемых по-другому Определение Типа Документа или проще DTD. Как
уже упоминалось ранее, DTD, используемый для описания WML, расположен по адресу:
http://www.wapforum.org/DTD/wml_1.1.xml
В телефоне или в любом другом
коммуникационном устройстве, заявленном как WAP-совместимое, загружено
специальное программное обеспечение (известное как микроброузер), которое
полностью понимает, как обрабатывать все вариации WML 1.1 DTD.
Самая
первая фраза внутри любого XML-документа называется пролог. Поскольку
стандартен, он содержит две строчки кода: определение версии XML и DTD
(указатель на файл, содержащий DTD)
Пролог выглядит следующим образом.
<?xml version="1.0"?> <!DOCTYPE wml PUBLIC "-//WAPFORUM//DTD WML
1.1//EN" "http://www.wapforum.org/DTD/wml_1.1.xml">
Следом за прологом, в каждом
XML-документе содержится один единственный элемент, который содержит в себе
остальные подэлементы и entities. Так же как и в HTML этими элементами являются
угловые скобки: <> и </>. Например: <element>data</element>. В документе должен
содержаться только один элемент описывающий сам документ. В WML этим элементом
является <wml>. Все остальные элементы содержатся
уже внутри него.
Два самых распространенных способа хранения информации
внутри XML-документа это элементы и их атрибуты. Элементы определяют структурную
разметку внутри документа открытием и закрытием определенных тэгов. Элементы, в
свою очередь могут содержать подэлементы. Атрибуты в основном используются для
описания элементов. В качестве примера можно привести следующий кусочек кода:
<!-- This is the Login Card --> <card id="LoginCard"
title="Login"> Please select your user name. </card>
В этом примере элемент card содержит
атрибуты id и title. Комментарий в WML, также как и в HTML заключается между
тэгами <!-- и -->. В дальнейшем мы будем
использовать элементы и их атрибуты для написания примеров.